@asaleh37/ui-base 25.8.10-8 → 25.8.10-9

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/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("react-redux"),i=require("@fortawesome/fontawesome-svg-core"),o=require("@fortawesome/free-brands-svg-icons"),a=require("@fortawesome/free-regular-svg-icons"),r=require("@fortawesome/free-solid-svg-icons");require("react-toastify/dist/ReactToastify.css");var n=require("@mui/material"),d=require("@emotion/react"),l=require("react"),s=require("@mui/material/styles"),p=require("@mui/material/CssBaseline"),c=require("@mui/material/AppBar"),u=require("@mui/material/Toolbar"),m=require("@fortawesome/react-fontawesome"),T=require("@reduxjs/toolkit"),A=require("react-toastify"),_=require("axios"),f=require("i18next"),I=require("react-i18next"),E=require("react-hook-form"),O=require("react-router-dom"),N=require("@hookform/resolvers/zod"),y=require("zod"),h=require("@mui/material/List"),R=require("@mui/material/Card"),L=require("@mui/material/CardHeader"),C=require("@mui/material/ListItemText"),g=require("@mui/material/ListItemIcon"),D=require("@mui/material/Checkbox"),P=require("@mui/material/Button"),x=require("@mui/material/Divider"),M=require("@mui/x-date-pickers"),b=require("@mui/x-date-pickers/AdapterMoment"),S=require("moment"),U=require("@mui/material/CardActions"),w=require("@mui/material/CardContent"),v=require("@mui/material/CardMedia"),F=require("@mui/material/Typography"),B=require("@mui/x-data-grid-premium"),k=require("@mui/x-charts"),j=require("@mui/material/LinearProgress"),G=require("@mui/material/Box"),W=require("@mui/x-charts/PieChart"),Y=require("@mui/material/IconButton"),V=require("@mui/material/Drawer"),q=require("@react-spring/web"),K=require("@mui/material/Collapse"),z=require("@mui/x-tree-view/RichTreeView"),H=require("@mui/x-tree-view/TreeItem"),Q=require("@mui/x-tree-view/useTreeItem2"),Z=require("@mui/x-tree-view/TreeItem2"),$=require("@mui/x-tree-view/TreeItem2Icon"),X=require("@mui/x-tree-view/TreeItem2Provider"),J=require("@mui/x-tree-view/TreeItem2DragAndDropOverlay"),ee=require("stylis-plugin-rtl"),te=require("stylis"),ie=require("@emotion/cache"),oe=require("@emotion/styled"),ae=require("@mui/material/colors"),re=require("@mui/material/SwipeableDrawer"),ne=require("@mui/x-license"),de=require("@mui/lab"),le=require("@mui/x-tree-view/models");function se(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(i){if("default"!==i){var o=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,o.get?o:{enumerable:!0,get:function(){return e[i]}})}}),t.default=e,Object.freeze(t)}var pe=se(l),ce=se(y);!function(e,t){void 0===t&&(t={});var i=t.insertAt;if("undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===i&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}("html,\nbody {\n height: 100vh;\n margin: 0;\n padding: 0;\n}\n\n#root {\n height: 100vh;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n}\n\n.red-row {\n background-color: #f0d8d8;\n}\n");const ue=(e=768)=>{const[t,i]=l.useState(window.innerWidth<e);return l.useEffect(()=>{const t=()=>i(window.innerWidth<e);return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[e]),t},me=350,Te={themeMode:localStorage.getItem("themeMode")||"light",appDirection:"ar"==localStorage.getItem("language")?"rtl":"ltr"},Ae=T.createSlice({name:"AppLayout",initialState:Te,reducers:{setThemeMode:(e,t)=>{e.themeMode=t.payload},setAppDirection:(e,t)=>{e.appDirection=t.payload}}}),_e=Ae.actions;var fe=Ae.reducer;const Ie=T.createSlice({name:"loadingMask",initialState:{value:{isOpened:!1,message:null}},reducers:{showLoadingMask:(e,t)=>{e.value.isOpened=!0,e.value.message=t.payload},hideLoadingMask:e=>{e.value.isOpened=!1,e.value.message=null}}}),{showLoadingMask:Ee,hideLoadingMask:Oe}=Ie.actions;var Ne=Ie.reducer;const ye=()=>{const e=t.useDispatch();return{show:t=>{e(Ee(t))},hide:()=>{e(Oe())}}},he=T.createSlice({name:"UserSession",initialState:{value:{isAuthenticated:null,authorities:[]}},reducers:{setAuthenticated:(e,t)=>{e.value=t.payload},setUnAuthenticated:e=>{e.value={isAuthenticated:!1,authorities:[]}}}}),Re=he.actions;var Le=he.reducer;const Ce=()=>{const e=ye(),i=t.useDispatch(),o=t.useSelector(e=>e.AppInfo.value.apiBaseUrl),a=_.create({baseURL:o,timeout:6e5,withCredentials:!0});a.defaults.withCredentials=!0,a.interceptors.response.use(e=>e,e=>{if(e&&(e.response&&(e.response.status&&401===e.response.status)))i(Re.setUnAuthenticated()),A.toast.error("your session is now expired, you need to login again",{autoClose:!1});else if(e&&(e.response&&(e.response.status&&403===e.response.status)))A.toast.error("you aren't authorized to process this request");else if(e&&(e.response&&(e.response.status&&500===e.response.status)))if(e.response.data instanceof Blob){e.response.data.text().then(e=>{A.toast.error(e)})}else A.toast.error(e.response.data);else A.toast.error("failed to communicate with the server ... try again later");return"ERROR"});return{handleGetRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.get(t.endPointURI,{params:{...t.parameters},withCredentials:!0,headers:t.headers,responseType:t?.responseType});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handlePostRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.post(t.endPointURI,t.data,{params:t.parameters,responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleDeleteRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.delete(t.endPointURI,{params:{...t.parameters},responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},HandleDownloadHTTPPostPDF:async(t={endPointURI:"",parameters:{},data:{}})=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.post(t.endPointURI,t.data,{responseType:"blob"});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleUploadRequest:async t=>{if(null===t.files||0===t.files.length)return A.toast.error("You must add files to upload"),"ERROR";const i=new FormData;for(const e of t.files)i.append("files",e);void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let o=await a.post(t.endPointURI,i,{params:t?.parameters,headers:{"Content-Type":"multipart/form-data"}});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==o?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(o),o):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(o),"ERROR")}}},ge=t=>{const[i,o]=l.useState(!1),{t:a}=I.useTranslation();return{ConfirmationWindow:()=>e.jsxs(n.Dialog,{open:i,children:[e.jsx(n.DialogTitle,{children:t.title}),e.jsx(n.DialogContent,{children:e.jsx(n.DialogContentText,{children:t.body})}),e.jsxs(n.DialogActions,{children:[e.jsx(n.Button,{variant:"contained",sx:{marginRight:2,marginLeft:2},color:"primary",onClick:()=>{o(!1)},children:a("NO_LABEL")}),e.jsx(n.Button,{variant:"contained",sx:{marginRight:2,marginLeft:2},color:"error",onClick:()=>{t.onConfirmationCallBk(),o(!1)},autoFocus:!0,children:a("YES_LABEL")})]})]}),open:i,setOpen:o}},De=()=>{const e=t.useSelector(e=>e.UserSession),i=e.value;return{UserSession:e,isUserAuthorized:t=>{if(e?.value?.authorities)for(let i of e.value.authorities){if("DEVELOPMENT_ADMIN"===t&&("DEVELOPMENT_ADMIN"===i?.authority||"ORGANIZATION_ADMIN"===i?.authority))return!0;if("ORGANIZATION_ADMIN"===t&&"ORGANIZATION_ADMIN"===i?.authority)return!0;if("DEVELOPMENT_ADMIN"!==t&&"ORGANIZATION_ADMIN"!==t&&("ORGANIZATION_ADMIN"===i?.authority||"DEVELOPMENT_ADMIN"===i?.authority||"SYSTEM_ADMIN"===i?.authority||i?.authority===t))return!0}return!1},isCurrentOrganizationAuthorizedToModule:e=>{if(i?.currentOrganization?.systemApplicationModules)for(const t of i.currentOrganization.systemApplicationModules)if(t.toLowerCase()==e.toLowerCase())return!0;return!1},UserInfo:i}},Pe=t=>{const[i,o]=l.useState(!1);return{windowState:i,setWindowState:o,Window:a=>e.jsx(n.Modal,{open:i,sx:{zIndex:e=>e.zIndex.drawer},onClose:()=>{!i&&t?.onCloseCallBack&&t.onCloseCallBack()},children:e.jsxs(n.Box,{sx:{position:"absolute",top:"50%",left:"50%",maxHeight:"90%",transform:"translate(-50%, -50%)",height:t?.height||"80%",width:t?.width||"90%",minWidth:t.minWidth||400,minHeight:t.minHeight||200,overflow:"hidden",bgcolor:"modalBackground.main",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(n.AppBar,{position:"static",children:e.jsxs(n.Toolbar,{variant:"dense",children:[e.jsx(m.FontAwesomeIcon,{icon:t?.windowIcon||"window-maximize",style:{marginRight:5}}),e.jsx(n.Typography,{variant:"h6",color:"inherit",component:"div",children:t?.windowTitle||"window"}),e.jsx("div",{style:{flexGrow:1}}),e.jsx(n.IconButton,{onClick:()=>{o(!1),null!=t.onCloseCallBack&&null!=t.onCloseCallBack&&t.onCloseCallBack()},color:"secondary",children:e.jsx(m.FontAwesomeIcon,{icon:"xmark-square"})})]})}),e.jsx(n.Paper,{sx:{display:"flex",flexDirection:"column",alignItems:"center",width:"100%",height:"100%",padding:1,overflow:"hidden"},children:a?.children})]})})}},xe=T.createSlice({name:"commonStores",initialState:{stores:{},storeKeys:[]},reducers:{setStoresMetaData:(e,t)=>{e.stores=t.payload,e.storeKeys=Object.keys(t.payload)},setStoreData:(e,t)=>{e.stores[t.payload.storeKey].data=t.payload.data}}}),{setStoreData:Me,setStoresMetaData:be}=xe.actions;var Se=xe.reducer;const Ue=e=>{const i=t.useSelector(e=>e.commonStores.stores),o=t.useDispatch(),a=De(),{handleGetRequest:r,handlePostRequest:n,handleDeleteRequest:d}=Ce();return{reloadData:async t=>{if(e?.commonStoreKey){const t=Object.keys(i);for(const n of t)if(n===e.commonStoreKey&&(void 0===i[n]?.authority||null===i[n]?.authority||a.isUserAuthorized(i[n]?.authority))&&""!=i[n]?.url){await r({endPointURI:i[n].url,showMask:!1,successCallBkFn:t=>{o(Me({storeKey:n,data:t.data})),e.setData(t.data)},failureCallBkFn:()=>{o(Me({storeKey:n,data:[]})),e.setData([])}});break}}else e?.findAll&&await r({endPointURI:e.findAll,showMask:!0,parameters:t||{},successCallBkFn:t=>{e.setData(t.data)}})},loadRecordById:async t=>{let i=null;if(e?.findById){const o={};o[e?.findByIdParamName||"id"]=t,await r({endPointURI:e.findById,showMask:!0,parameters:o,successCallBkFn:e=>{i=e.data}})}return i},saveRecord:async t=>{let i=null;return e?.save&&await n({endPointURI:e.save,data:t,showMask:!0,successCallBkFn:e=>{i=e.data}}),i},deleteRecordById:async t=>{let i=!0;if(e?.deleteById){const o={};o[e?.deleteByIdParamName||"id"]=t,await d({endPointURI:e.deleteById,showMask:!0,parameters:o,successCallBkFn:()=>{i=!0},failureCallBkFn:()=>{i=!1}})}return i}}},we=t=>{const{t:i}=I.useTranslation();return e.jsx(n.TextField,{...t,slotProps:{inputLabel:{shrink:!0,sx:{fontWeight:"bold"}}},label:e.jsx(e.Fragment,{children:t?.label?i(t.label):""}),helperText:t?.helperText?i(t.helperText):void 0})};function ve(e,t){return e.filter(e=>-1===t.indexOf(e))}function Fe(e,t){return e.filter(e=>-1!==t.indexOf(e))}const Be=({valueField:t="id",displayField:i="name",options:o=[],selectedOptions:a=[],setSelection:r})=>{const[d,l]=pe.useState([]),[s,p]=pe.useState([]),[c,u]=pe.useState([]),[m,T]=pe.useState(""),[A,_]=pe.useState(""),f=Fe(d,s),I=Fe(d,c);pe.useEffect(()=>{o&&p([...o])},[o]),pe.useEffect(()=>{a&&u([...a])},[a]);const E=e=>()=>{const t=d.indexOf(e),i=[...d];-1===t?i.push(e):i.splice(t,1),l(i)},O=e=>Fe(d,e).length,N=e=>()=>{var t,i;O(e)===e.length?l(ve(d,e)):l((t=d,i=e,[...t,...ve(i,t)]))},y=(o,a,r)=>{const l=a.filter(e=>{if(e[i]){const t=e[i];if("left"===r&&t.toLocaleLowerCase().includes(m.toLocaleLowerCase()))return!0;if("right"===r&&t.toLocaleLowerCase().includes(A.toLocaleLowerCase()))return!0}return!1});return e.jsxs(R,{sx:{height:"100%"},children:[e.jsx(L,{sx:{px:2,py:1},avatar:e.jsx(D,{onClick:N(l),checked:O(l)===l.length&&0!==l.length,indeterminate:O(l)!==l.length&&0!==O(l),disabled:0===l.length,inputProps:{"aria-label":"all items selected"}}),title:o,subheader:`${O(a)} / ${a.length} Selected`}),e.jsx(n.Box,{sx:{width:"100%",padding:1},children:e.jsx(we,{fullWidth:!0,label:"search",value:"left"===r?m:A,onChange:e=>{"left"===r?T(e.target.value):_(e.target.value)}})}),e.jsx(x,{}),e.jsx(h,{sx:{width:"100%",height:"80%",bgcolor:"secondary",overflow:"auto"},dense:!0,component:"div",role:"list",children:l.map(o=>(o[t],e.jsxs(n.ListItemButton,{role:"listitem",onClick:E(o),sx:{cursor:"pointer"},children:[e.jsx(g,{children:e.jsx(D,{checked:-1!==d.indexOf(o),tabIndex:-1,disableRipple:!0})}),e.jsx(C,{id:o[t],primary:o[i]})]},o[t])))})]})};return e.jsxs(n.Grid2,{container:!0,spacing:2,sx:{flexGrow:1,overflow:"auto",margin:1,display:"flex",width:"100%"},justifyContent:"center",alignItems:"center",children:[e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:y("Available Items",s,"left")}),e.jsx(n.Grid2,{children:e.jsxs(n.Grid2,{container:!0,direction:"column",alignItems:"center",children:[e.jsx(P,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{u(e=>{let t=c.concat(f);return r(t),t}),p(ve(s,f)),l(ve(d,f))},disabled:0===f.length,"aria-label":"move selected right",children:">"}),e.jsx(P,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{p(s.concat(I)),u(e=>{let t=ve(c,I);return r(t),t}),l(ve(d,I))},disabled:0===I.length,"aria-label":"move selected left",children:"<"})]})}),e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:y("Currently Selected",c,"right")})]})},ke=t=>{const{t:i}=I.useTranslation();return e.jsx(n.FormControlLabel,{sx:t.sx,hidden:t?.hidden||!1,disabled:t.disabled||!1,required:t.required||!1,control:e.jsx(n.Checkbox,{checked:t?.checkedValue==t.value||"true"===t.value||"1"==t.value,onChange:e=>{void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&(e.target.checked?void 0!==t.checkedValue&&null!=t.checkedValue?t.onChangeCallBack(t.checkedValue):t.onChangeCallBack(!0):void 0!==t.unCheckedValue&&null!=t.unCheckedValue?t.onChangeCallBack(t.unCheckedValue):t.onChangeCallBack(!1))}}),label:i(t.label)})},je=i=>{const o=t.useSelector(e=>e.AppLayout),{t:a}=I.useTranslation();return e.jsx(n.Autocomplete,{sx:i.sx,value:(e=>{for(let t of i.options)if(t[i.valueField]==e)return t;return null})(i.value),options:i.options,disabled:i.disabled,hidden:i?.hidden||!1,onChange:(e,t)=>{if(void 0!==i.onChangeCallBack&&null!=i.onChangeCallBack)if(null!=t){let e=t[i.valueField];i.onChangeCallBack(e,t)}else i.onChangeCallBack(null,null)},clearOnBlur:!0,handleHomeEndKeys:!0,getOptionLabel:e=>null!=e?a(e[i.displayField]):"",renderOption:(t,o)=>e.jsx("li",{...t,children:null!=o?a(o[i.displayField]):""}),slots:{popper:t=>e.jsx(n.Popper,{...t,style:{...t.style,direction:o.appDirection}})},renderInput:t=>e.jsx(n.TextField,{...t,required:i.required||!1,variant:"outlined",slotProps:{inputLabel:{shrink:!0,sx:{fontWeight:"bold"}}},label:a(i.label),error:null!=i.errorMessage&&void 0!==i.errorMessage,helperText:null!=i.errorMessage&&void 0!==i.errorMessage?a(i.errorMessage):""})})},Ge="YYYY-MM-DD",We="YYYY-MM-DD HH:mm:ss",Ye="#37505C",Ve="#ff6d00",qe="#ea690e",Ke="#74776B",ze=t=>{const{t:i}=I.useTranslation();return t?.hidden?e.jsx(e.Fragment,{}):e.jsx(M.LocalizationProvider,{dateAdapter:b.AdapterMoment,children:e.jsx(M.DatePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?S(t.value,t?.format||Ge):null,sx:t.sx,label:i(t.label),format:t?.format||Ge,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||Ge)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0,sx:{fontWeight:"bold"}},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},He=t=>{const{t:i}=I.useTranslation();return t?.hidden?e.jsx(e.Fragment,{}):e.jsx(M.LocalizationProvider,{dateAdapter:b.AdapterMoment,children:e.jsx(M.DateTimePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?S(t.value,t?.format||We):null,label:i(t.label),sx:t.sx,format:t?.format||We,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||We)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0,sx:{fontWeight:"bold"}},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},Qe=i=>{const o=t.useSelector(e=>e.AppLayout),a=De(),[r,n]=l.useState([]),{handleGetRequest:d}=Ce();return l.useEffect(()=>{i.lookupType&&(async()=>{await d({endPointURI:"api/v1/public/system/lookup",showMask:!0,parameters:{lookupType:i.lookupType},successCallBkFn:e=>{n(e.data)},failureCallBkFn:()=>{n([])}})})()},[i.lookupType,a.UserSession]),e.jsx(je,{...i,options:r,displayField:"ltr"===o.appDirection?"lookupEnDisplay":"lookupArDisplay",valueField:"lookupValue"})},Ze=t=>({...t,type:"string",renderEditCell:t=>e.jsx(ze,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=S(e).format(Ge)),o},valueFormatter:(e,t,i)=>t[i.field]}),$e=t=>({...t,type:"string",renderEditCell:t=>e.jsx(He,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=S(e).format(We)),o},valueFormatter:(e,t,i)=>t[i.field]}),Xe=t=>({...t,type:"custom",valueGetter:e=>e?e+"":e,renderCell:t=>{let i=null;try{i=t.colDef.options.find(e=>e[t.colDef.valueField]==t.value)}catch(e){}return e.jsx("div",{children:null!=i?i[t.colDef.displayField]:t.value})},renderEditCell:t=>e.jsx(je,{...t,sx:{width:"100%"},options:t.colDef.options,valueField:t.colDef.valueField,displayField:t.colDef.displayField,onChangeCallBack:(e,i)=>{null===e&&t.api.setEditCellValue({id:t.id,field:t.field,value:null}),t.api.setEditCellValue({id:t.id,field:t.field,value:e+""})}})}),Je=t=>({...t,type:"custom",valueGetter:e=>null==e||null==e?null:e,renderCell:i=>{const o=i?.value;return o===t.checkedValue||"true"===o||1===o||!0===o?e.jsx(m.FontAwesomeIcon,{icon:"check",color:"green"}):e.jsx(m.FontAwesomeIcon,{icon:"xmark",color:"red"})},renderEditCell:i=>e.jsx(ke,{...i,checkedValue:t?.checkedValue||!0,unCheckedValue:t?.unCheckedValue||!1,onChangeCallBack:e=>{i.api.setEditCellValue({id:i.id,field:i.field,value:e})}})}),et=e=>{const t=[];if("field"===e.type&&"props"===e.mode&&e?.props)t.push(e.props);else if("group"===e.type&&e?.props&&e?.props?.elements)for(const i of e.props.elements)t.push(...et(i));return t},tt=e=>{const t=[];for(const i of e)t.push(...et(i));return t},it=(e,t,i)=>{const o=[];for(const a of e)if("text"===a?.fieldType||"number"===a?.fieldType){const e={...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,type:"number"==a?.fieldType?"number":"string",field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200};o.push(e)}else if("date"===a?.fieldType){const e=Ze({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("datetime"===a?.fieldType){const e=$e({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("checkbox"===a?.fieldType){const e=Je({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,checkedValue:a?.checkedValue,unCheckedValue:a?.unCheckedValue,width:150});o.push(e)}else if("combobox"===a?.fieldType){const e=Xe({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,valueField:a?.optionValueField||"value",displayField:a?.optionDisplayField||"display",options:a?.options||[],flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("lookup"===a?.fieldType){const e=Xe({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,lookupType:a?.lookupType,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,valueField:a?.optionValueField||"value",displayField:a?.optionDisplayField||"display",options:a?.options||[],flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else{const e={field:a.fieldName,...a?.gridProps?.muiProps};o.push(e)}return o},ot=e=>{const t={};for(const i of e)if(i?.fieldName){const e=i.fieldName;"number"===i.fieldType?t[e]=!0===i?.required?ce.number({required_error:"This field is required",invalid_type_error:"This field must be a number"}):ce.number().optional().nullable():"checkbox"===i.fieldType?t[e]=!0===i?.required?ce.boolean({required_error:"This field is required"}):ce.boolean().optional().nullable():t[e]=!0===i?.required?ce.string({message:"This field is required"}).min(1,"This field is required"):ce.string().optional().nullable()}return t},at=(e,t,i)=>{const o=[],a=[];if("exclude"===e.type&&0===e.ids.size)for(const e of t)o.push(e),a.push(e[i]);else if(e?.ids)for(const r of e.ids){const e=t.find(e=>e[i]===r);o.push(e),a.push(r)}return{selectedRecords:o,selectedRecordIds:a}};function rt(e,...t){const i=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(e=>i.searchParams.append("args[]",e)),`Minified MUI error #${e}; visit ${i} for the full message.`}function nt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dt,lt={exports:{}},st={exports:{}},pt={};var ct,ut,mt,Tt,At,_t,ft,It,Et,Ot,Nt,yt,ht,Rt,Lt,Ct={};
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("react-redux"),i=require("@fortawesome/fontawesome-svg-core"),o=require("@fortawesome/free-brands-svg-icons"),a=require("@fortawesome/free-regular-svg-icons"),r=require("@fortawesome/free-solid-svg-icons");require("react-toastify/dist/ReactToastify.css");var n=require("@mui/material"),d=require("@emotion/react"),l=require("react"),s=require("@mui/material/styles"),p=require("@mui/material/CssBaseline"),c=require("@mui/material/AppBar"),u=require("@mui/material/Toolbar"),m=require("@fortawesome/react-fontawesome"),T=require("@reduxjs/toolkit"),A=require("react-toastify"),_=require("axios"),f=require("i18next"),I=require("react-i18next"),E=require("react-hook-form"),O=require("react-router-dom"),N=require("@hookform/resolvers/zod"),y=require("zod"),h=require("@mui/material/List"),R=require("@mui/material/Card"),L=require("@mui/material/CardHeader"),C=require("@mui/material/ListItemText"),g=require("@mui/material/ListItemIcon"),D=require("@mui/material/Checkbox"),P=require("@mui/material/Button"),x=require("@mui/material/Divider"),M=require("@mui/x-date-pickers"),b=require("@mui/x-date-pickers/AdapterMoment"),S=require("moment"),U=require("@mui/material/CardActions"),w=require("@mui/material/CardContent"),v=require("@mui/material/CardMedia"),F=require("@mui/material/Typography"),B=require("@mui/x-data-grid-premium"),k=require("@mui/x-charts"),j=require("@mui/material/LinearProgress"),G=require("@mui/material/Box"),W=require("@mui/x-charts/PieChart"),Y=require("@mui/material/IconButton"),V=require("@mui/material/Drawer"),q=require("@react-spring/web"),K=require("@mui/material/Collapse"),z=require("@mui/x-tree-view/RichTreeView"),H=require("@mui/x-tree-view/TreeItem"),Q=require("@mui/x-tree-view/useTreeItem2"),Z=require("@mui/x-tree-view/TreeItem2"),$=require("@mui/x-tree-view/TreeItem2Icon"),X=require("@mui/x-tree-view/TreeItem2Provider"),J=require("@mui/x-tree-view/TreeItem2DragAndDropOverlay"),ee=require("stylis-plugin-rtl"),te=require("stylis"),ie=require("@emotion/cache"),oe=require("@emotion/styled"),ae=require("@mui/material/colors"),re=require("@mui/material/SwipeableDrawer"),ne=require("@mui/x-license"),de=require("@mui/lab"),le=require("@mui/x-tree-view/models");function se(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(i){if("default"!==i){var o=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,o.get?o:{enumerable:!0,get:function(){return e[i]}})}}),t.default=e,Object.freeze(t)}var pe=se(l),ce=se(y);!function(e,t){void 0===t&&(t={});var i=t.insertAt;if("undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===i&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}("html,\nbody {\n height: 100vh;\n margin: 0;\n padding: 0;\n}\n\n#root {\n height: 100vh;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n}\n\n.red-row {\n background-color: #f0d8d8;\n}\n");const ue=(e=768)=>{const[t,i]=l.useState(window.innerWidth<e);return l.useEffect(()=>{const t=()=>i(window.innerWidth<e);return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[e]),t},me=350,Te={themeMode:localStorage.getItem("themeMode")||"light",appDirection:"ar"==localStorage.getItem("language")?"rtl":"ltr"},Ae=T.createSlice({name:"AppLayout",initialState:Te,reducers:{setThemeMode:(e,t)=>{e.themeMode=t.payload},setAppDirection:(e,t)=>{e.appDirection=t.payload}}}),_e=Ae.actions;var fe=Ae.reducer;const Ie=T.createSlice({name:"loadingMask",initialState:{value:{isOpened:!1,message:null}},reducers:{showLoadingMask:(e,t)=>{e.value.isOpened=!0,e.value.message=t.payload},hideLoadingMask:e=>{e.value.isOpened=!1,e.value.message=null}}}),{showLoadingMask:Ee,hideLoadingMask:Oe}=Ie.actions;var Ne=Ie.reducer;const ye=()=>{const e=t.useDispatch();return{show:t=>{e(Ee(t))},hide:()=>{e(Oe())}}},he=T.createSlice({name:"UserSession",initialState:{value:{isAuthenticated:null,authorities:[]}},reducers:{setAuthenticated:(e,t)=>{e.value=t.payload},setUnAuthenticated:e=>{e.value={isAuthenticated:!1,authorities:[]}}}}),Re=he.actions;var Le=he.reducer;const Ce=()=>{const e=ye(),i=t.useDispatch(),o=t.useSelector(e=>e.AppInfo.value.apiBaseUrl),a=_.create({baseURL:o,timeout:6e5,withCredentials:!0});a.defaults.withCredentials=!0,a.interceptors.response.use(e=>e,e=>{if(e&&(e.response&&(e.response.status&&401===e.response.status)))i(Re.setUnAuthenticated()),A.toast.error("your session is now expired, you need to login again",{autoClose:!1});else if(e&&(e.response&&(e.response.status&&402===e.response.status)))i(Re.setUnAuthenticated()),A.toast.error("Your license is missing or has expired,Please reach out to your vendor for assistance.");else if(e&&(e.response&&(e.response.status&&403===e.response.status)))A.toast.error("you aren't authorized to process this request");else if(e&&(e.response&&(e.response.status&&500===e.response.status)))if(e.response.data instanceof Blob){e.response.data.text().then(e=>{A.toast.error(e)})}else A.toast.error(e.response.data);else A.toast.error("failed to communicate with the server ... try again later");return"ERROR"});return{handleGetRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.get(t.endPointURI,{params:{...t.parameters},withCredentials:!0,headers:t.headers,responseType:t?.responseType});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handlePostRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.post(t.endPointURI,t.data,{params:t.parameters,responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleDeleteRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.delete(t.endPointURI,{params:{...t.parameters},responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},HandleDownloadHTTPPostPDF:async(t={endPointURI:"",parameters:{},data:{}})=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.post(t.endPointURI,t.data,{responseType:"blob"});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleUploadRequest:async t=>{if(null===t.files||0===t.files.length)return A.toast.error("You must add files to upload"),"ERROR";const i=new FormData;for(const e of t.files)i.append("files",e);void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let o=await a.post(t.endPointURI,i,{params:t?.parameters,headers:{"Content-Type":"multipart/form-data"}});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==o?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(o),o):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(o),"ERROR")}}},ge=t=>{const[i,o]=l.useState(!1),{t:a}=I.useTranslation();return{ConfirmationWindow:()=>e.jsxs(n.Dialog,{open:i,children:[e.jsx(n.DialogTitle,{children:t.title}),e.jsx(n.DialogContent,{children:e.jsx(n.DialogContentText,{children:t.body})}),e.jsxs(n.DialogActions,{children:[e.jsx(n.Button,{variant:"contained",sx:{marginRight:2,marginLeft:2},color:"primary",onClick:()=>{o(!1)},children:a("NO_LABEL")}),e.jsx(n.Button,{variant:"contained",sx:{marginRight:2,marginLeft:2},color:"error",onClick:()=>{t.onConfirmationCallBk(),o(!1)},autoFocus:!0,children:a("YES_LABEL")})]})]}),open:i,setOpen:o}},De=()=>{const e=t.useSelector(e=>e.UserSession),i=e.value;return{UserSession:e,isUserAuthorized:t=>{if(e?.value?.authorities)for(let i of e.value.authorities){if("DEVELOPMENT_ADMIN"===t&&("DEVELOPMENT_ADMIN"===i?.authority||"ORGANIZATION_ADMIN"===i?.authority))return!0;if("ORGANIZATION_ADMIN"===t&&"ORGANIZATION_ADMIN"===i?.authority)return!0;if("DEVELOPMENT_ADMIN"!==t&&"ORGANIZATION_ADMIN"!==t&&("ORGANIZATION_ADMIN"===i?.authority||"DEVELOPMENT_ADMIN"===i?.authority||"SYSTEM_ADMIN"===i?.authority||i?.authority===t))return!0}return!1},isCurrentOrganizationAuthorizedToModule:e=>{if(i?.currentOrganization?.systemApplicationModules)for(const t of i.currentOrganization.systemApplicationModules)if(t.toLowerCase()==e.toLowerCase())return!0;return!1},UserInfo:i}},Pe=t=>{const[i,o]=l.useState(!1);return{windowState:i,setWindowState:o,Window:a=>e.jsx(n.Modal,{open:i,sx:{zIndex:e=>e.zIndex.drawer},onClose:()=>{!i&&t?.onCloseCallBack&&t.onCloseCallBack()},children:e.jsxs(n.Box,{sx:{position:"absolute",top:"50%",left:"50%",maxHeight:"90%",transform:"translate(-50%, -50%)",height:t?.height||"80%",width:t?.width||"90%",minWidth:t.minWidth||400,minHeight:t.minHeight||200,overflow:"hidden",bgcolor:"modalBackground.main",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(n.AppBar,{position:"static",children:e.jsxs(n.Toolbar,{variant:"dense",children:[e.jsx(m.FontAwesomeIcon,{icon:t?.windowIcon||"window-maximize",style:{marginRight:5}}),e.jsx(n.Typography,{variant:"h6",color:"inherit",component:"div",children:t?.windowTitle||"window"}),e.jsx("div",{style:{flexGrow:1}}),e.jsx(n.IconButton,{onClick:()=>{o(!1),null!=t.onCloseCallBack&&null!=t.onCloseCallBack&&t.onCloseCallBack()},color:"secondary",children:e.jsx(m.FontAwesomeIcon,{icon:"xmark-square"})})]})}),e.jsx(n.Paper,{sx:{display:"flex",flexDirection:"column",alignItems:"center",width:"100%",height:"100%",padding:1,overflow:"hidden"},children:a?.children})]})})}},xe=T.createSlice({name:"commonStores",initialState:{stores:{},storeKeys:[]},reducers:{setStoresMetaData:(e,t)=>{e.stores=t.payload,e.storeKeys=Object.keys(t.payload)},setStoreData:(e,t)=>{e.stores[t.payload.storeKey].data=t.payload.data}}}),{setStoreData:Me,setStoresMetaData:be}=xe.actions;var Se=xe.reducer;const Ue=e=>{const i=t.useSelector(e=>e.commonStores.stores),o=t.useDispatch(),a=De(),{handleGetRequest:r,handlePostRequest:n,handleDeleteRequest:d}=Ce();return{reloadData:async t=>{if(e?.commonStoreKey){const t=Object.keys(i);for(const n of t)if(n===e.commonStoreKey&&(void 0===i[n]?.authority||null===i[n]?.authority||a.isUserAuthorized(i[n]?.authority))&&""!=i[n]?.url){await r({endPointURI:i[n].url,showMask:!1,successCallBkFn:t=>{o(Me({storeKey:n,data:t.data})),e.setData(t.data)},failureCallBkFn:()=>{o(Me({storeKey:n,data:[]})),e.setData([])}});break}}else e?.findAll&&await r({endPointURI:e.findAll,showMask:!0,parameters:t||{},successCallBkFn:t=>{e.setData(t.data)}})},loadRecordById:async t=>{let i=null;if(e?.findById){const o={};o[e?.findByIdParamName||"id"]=t,await r({endPointURI:e.findById,showMask:!0,parameters:o,successCallBkFn:e=>{i=e.data}})}return i},saveRecord:async t=>{let i=null;return e?.save&&await n({endPointURI:e.save,data:t,showMask:!0,successCallBkFn:e=>{i=e.data}}),i},deleteRecordById:async t=>{let i=!0;if(e?.deleteById){const o={};o[e?.deleteByIdParamName||"id"]=t,await d({endPointURI:e.deleteById,showMask:!0,parameters:o,successCallBkFn:()=>{i=!0},failureCallBkFn:()=>{i=!1}})}return i}}},we=t=>{const{t:i}=I.useTranslation();return e.jsx(n.TextField,{...t,slotProps:{inputLabel:{shrink:!0,sx:{fontWeight:"bold"}}},label:e.jsx(e.Fragment,{children:t?.label?i(t.label):""}),helperText:t?.helperText?i(t.helperText):void 0})};function ve(e,t){return e.filter(e=>-1===t.indexOf(e))}function Fe(e,t){return e.filter(e=>-1!==t.indexOf(e))}const Be=({valueField:t="id",displayField:i="name",options:o=[],selectedOptions:a=[],setSelection:r})=>{const[d,l]=pe.useState([]),[s,p]=pe.useState([]),[c,u]=pe.useState([]),[m,T]=pe.useState(""),[A,_]=pe.useState(""),f=Fe(d,s),I=Fe(d,c);pe.useEffect(()=>{o&&p([...o])},[o]),pe.useEffect(()=>{a&&u([...a])},[a]);const E=e=>()=>{const t=d.indexOf(e),i=[...d];-1===t?i.push(e):i.splice(t,1),l(i)},O=e=>Fe(d,e).length,N=e=>()=>{var t,i;O(e)===e.length?l(ve(d,e)):l((t=d,i=e,[...t,...ve(i,t)]))},y=(o,a,r)=>{const l=a.filter(e=>{if(e[i]){const t=e[i];if("left"===r&&t.toLocaleLowerCase().includes(m.toLocaleLowerCase()))return!0;if("right"===r&&t.toLocaleLowerCase().includes(A.toLocaleLowerCase()))return!0}return!1});return e.jsxs(R,{sx:{height:"100%"},children:[e.jsx(L,{sx:{px:2,py:1},avatar:e.jsx(D,{onClick:N(l),checked:O(l)===l.length&&0!==l.length,indeterminate:O(l)!==l.length&&0!==O(l),disabled:0===l.length,inputProps:{"aria-label":"all items selected"}}),title:o,subheader:`${O(a)} / ${a.length} Selected`}),e.jsx(n.Box,{sx:{width:"100%",padding:1},children:e.jsx(we,{fullWidth:!0,label:"search",value:"left"===r?m:A,onChange:e=>{"left"===r?T(e.target.value):_(e.target.value)}})}),e.jsx(x,{}),e.jsx(h,{sx:{width:"100%",height:"80%",bgcolor:"secondary",overflow:"auto"},dense:!0,component:"div",role:"list",children:l.map(o=>(o[t],e.jsxs(n.ListItemButton,{role:"listitem",onClick:E(o),sx:{cursor:"pointer"},children:[e.jsx(g,{children:e.jsx(D,{checked:-1!==d.indexOf(o),tabIndex:-1,disableRipple:!0})}),e.jsx(C,{id:o[t],primary:o[i]})]},o[t])))})]})};return e.jsxs(n.Grid2,{container:!0,spacing:2,sx:{flexGrow:1,overflow:"auto",margin:1,display:"flex",width:"100%"},justifyContent:"center",alignItems:"center",children:[e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:y("Available Items",s,"left")}),e.jsx(n.Grid2,{children:e.jsxs(n.Grid2,{container:!0,direction:"column",alignItems:"center",children:[e.jsx(P,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{u(e=>{let t=c.concat(f);return r(t),t}),p(ve(s,f)),l(ve(d,f))},disabled:0===f.length,"aria-label":"move selected right",children:">"}),e.jsx(P,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{p(s.concat(I)),u(e=>{let t=ve(c,I);return r(t),t}),l(ve(d,I))},disabled:0===I.length,"aria-label":"move selected left",children:"<"})]})}),e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:y("Currently Selected",c,"right")})]})},ke=t=>{const{t:i}=I.useTranslation();return e.jsx(n.FormControlLabel,{sx:t.sx,hidden:t?.hidden||!1,disabled:t.disabled||!1,required:t.required||!1,control:e.jsx(n.Checkbox,{checked:t?.checkedValue==t.value||"true"===t.value||"1"==t.value,onChange:e=>{void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&(e.target.checked?void 0!==t.checkedValue&&null!=t.checkedValue?t.onChangeCallBack(t.checkedValue):t.onChangeCallBack(!0):void 0!==t.unCheckedValue&&null!=t.unCheckedValue?t.onChangeCallBack(t.unCheckedValue):t.onChangeCallBack(!1))}}),label:i(t.label)})},je=i=>{const o=t.useSelector(e=>e.AppLayout),{t:a}=I.useTranslation();return e.jsx(n.Autocomplete,{sx:i.sx,value:(e=>{for(let t of i.options)if(t[i.valueField]==e)return t;return null})(i.value),options:i.options,disabled:i.disabled,hidden:i?.hidden||!1,onChange:(e,t)=>{if(void 0!==i.onChangeCallBack&&null!=i.onChangeCallBack)if(null!=t){let e=t[i.valueField];i.onChangeCallBack(e,t)}else i.onChangeCallBack(null,null)},clearOnBlur:!0,handleHomeEndKeys:!0,getOptionLabel:e=>null!=e?a(e[i.displayField]):"",renderOption:(t,o)=>e.jsx("li",{...t,children:null!=o?a(o[i.displayField]):""}),slots:{popper:t=>e.jsx(n.Popper,{...t,style:{...t.style,direction:o.appDirection}})},renderInput:t=>e.jsx(n.TextField,{...t,required:i.required||!1,variant:"outlined",slotProps:{inputLabel:{shrink:!0,sx:{fontWeight:"bold"}}},label:a(i.label),error:null!=i.errorMessage&&void 0!==i.errorMessage,helperText:null!=i.errorMessage&&void 0!==i.errorMessage?a(i.errorMessage):""})})},Ge="YYYY-MM-DD",We="YYYY-MM-DD HH:mm:ss",Ye="#37505C",Ve="#ff6d00",qe="#ea690e",Ke="#74776B",ze=t=>{const{t:i}=I.useTranslation();return t?.hidden?e.jsx(e.Fragment,{}):e.jsx(M.LocalizationProvider,{dateAdapter:b.AdapterMoment,children:e.jsx(M.DatePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?S(t.value,t?.format||Ge):null,sx:t.sx,label:i(t.label),format:t?.format||Ge,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||Ge)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0,sx:{fontWeight:"bold"}},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},He=t=>{const{t:i}=I.useTranslation();return t?.hidden?e.jsx(e.Fragment,{}):e.jsx(M.LocalizationProvider,{dateAdapter:b.AdapterMoment,children:e.jsx(M.DateTimePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?S(t.value,t?.format||We):null,label:i(t.label),sx:t.sx,format:t?.format||We,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||We)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0,sx:{fontWeight:"bold"}},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},Qe=i=>{const o=t.useSelector(e=>e.AppLayout),a=De(),[r,n]=l.useState([]),{handleGetRequest:d}=Ce();return l.useEffect(()=>{i.lookupType&&(async()=>{await d({endPointURI:"api/v1/public/system/lookup",showMask:!0,parameters:{lookupType:i.lookupType},successCallBkFn:e=>{n(e.data)},failureCallBkFn:()=>{n([])}})})()},[i.lookupType,a.UserSession]),e.jsx(je,{...i,options:r,displayField:"ltr"===o.appDirection?"lookupEnDisplay":"lookupArDisplay",valueField:"lookupValue"})},Ze=t=>({...t,type:"string",renderEditCell:t=>e.jsx(ze,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=S(e).format(Ge)),o},valueFormatter:(e,t,i)=>t[i.field]}),$e=t=>({...t,type:"string",renderEditCell:t=>e.jsx(He,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=S(e).format(We)),o},valueFormatter:(e,t,i)=>t[i.field]}),Xe=t=>({...t,type:"custom",valueGetter:e=>e?e+"":e,renderCell:t=>{let i=null;try{i=t.colDef.options.find(e=>e[t.colDef.valueField]==t.value)}catch(e){}return e.jsx("div",{children:null!=i?i[t.colDef.displayField]:t.value})},renderEditCell:t=>e.jsx(je,{...t,sx:{width:"100%"},options:t.colDef.options,valueField:t.colDef.valueField,displayField:t.colDef.displayField,onChangeCallBack:(e,i)=>{null===e&&t.api.setEditCellValue({id:t.id,field:t.field,value:null}),t.api.setEditCellValue({id:t.id,field:t.field,value:e+""})}})}),Je=t=>({...t,type:"custom",valueGetter:e=>null==e||null==e?null:e,renderCell:i=>{const o=i?.value;return o===t.checkedValue||"true"===o||1===o||!0===o?e.jsx(m.FontAwesomeIcon,{icon:"check",color:"green"}):e.jsx(m.FontAwesomeIcon,{icon:"xmark",color:"red"})},renderEditCell:i=>e.jsx(ke,{...i,checkedValue:t?.checkedValue||!0,unCheckedValue:t?.unCheckedValue||!1,onChangeCallBack:e=>{i.api.setEditCellValue({id:i.id,field:i.field,value:e})}})}),et=e=>{const t=[];if("field"===e.type&&"props"===e.mode&&e?.props)t.push(e.props);else if("group"===e.type&&e?.props&&e?.props?.elements)for(const i of e.props.elements)t.push(...et(i));return t},tt=e=>{const t=[];for(const i of e)t.push(...et(i));return t},it=(e,t,i)=>{const o=[];for(const a of e)if("text"===a?.fieldType||"number"===a?.fieldType){const e={...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,type:"number"==a?.fieldType?"number":"string",field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200};o.push(e)}else if("date"===a?.fieldType){const e=Ze({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("datetime"===a?.fieldType){const e=$e({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("checkbox"===a?.fieldType){const e=Je({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,checkedValue:a?.checkedValue,unCheckedValue:a?.unCheckedValue,width:150});o.push(e)}else if("combobox"===a?.fieldType){const e=Xe({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,valueField:a?.optionValueField||"value",displayField:a?.optionDisplayField||"display",options:a?.options||[],flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else if("lookup"===a?.fieldType){const e=Xe({...a?.gridProps?.muiProps,editable:null!=a?.gridProps?.muiProps?.editable?a?.gridProps?.muiProps?.editable:t,lookupType:a?.lookupType,field:a?.fieldName,headerName:i(a?.fieldLabel||a?.fieldName),headerAlign:"center",align:"center",hidden:a?.hidden,searchable:a?.gridProps?.searchable,valueField:a?.optionValueField||"value",displayField:a?.optionDisplayField||"display",options:a?.options||[],flex:a?.gridProps?.muiProps?.width?void 0:1,minWidth:200});o.push(e)}else{const e={field:a.fieldName,...a?.gridProps?.muiProps};o.push(e)}return o},ot=e=>{const t={};for(const i of e)if(i?.fieldName){const e=i.fieldName;"number"===i.fieldType?t[e]=!0===i?.required?ce.number({required_error:"This field is required",invalid_type_error:"This field must be a number"}):ce.number().optional().nullable():"checkbox"===i.fieldType?t[e]=!0===i?.required?ce.boolean({required_error:"This field is required"}):ce.boolean().optional().nullable():t[e]=!0===i?.required?ce.string({message:"This field is required"}).min(1,"This field is required"):ce.string().optional().nullable()}return t},at=(e,t,i)=>{const o=[],a=[];if("exclude"===e.type&&0===e.ids.size)for(const e of t)o.push(e),a.push(e[i]);else if(e?.ids)for(const r of e.ids){const e=t.find(e=>e[i]===r);o.push(e),a.push(r)}return{selectedRecords:o,selectedRecordIds:a}};function rt(e,...t){const i=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(e=>i.searchParams.append("args[]",e)),`Minified MUI error #${e}; visit ${i} for the full message.`}function nt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dt,lt={exports:{}},st={exports:{}},pt={};var ct,ut,mt,Tt,At,_t,ft,It,Et,Ot,Nt,yt,ht,Rt,Lt,Ct={};
2
2
  /** @license React v16.13.1
3
3
  * react-is.development.js
4
4
  *