{"version":3,"sources":["config.js","store/constant.js","views/PageUnderConstruction/index.jsx","qubCommon/wijmoHelpers/columnMethods.js","assets/scss/_themes-vars.module.scss","qubCommon/Inputs/CssTextField.jsx","qubCommon/Inputs/RowLabel.jsx","qubCommon/Inputs/ColumnLabel.jsx","qubCommon/helperMethods/dateHelper.js","context/permissionContext.js","hooks/useSettings.jsx","ui-component/cards/MainCard.js","apis/controllers/person.js","common/Conditional/index.jsx","assets/images/qb.png","assets/images/excelIcon.png","apis/axiosInstance.js","assets/images/pdf.png","context/loaderContext.js","hooks/useLoading.js","hooks/bringValue/useBringValue.jsx","context/BringValueContext/components/BringValueToolbar.jsx","context/BringValueContext/components/BringValueGrid.jsx","context/BringValueContext/components/BringValueRejectDialog.jsx","context/BringValueContext/bringValueContext.jsx","utils/decode-token.js","apis/controllers/auth.js","hooks/useLogOut.js","assets/images/default-user-image.png","qubCommon/Inputs/TextInput.jsx","qubCommon/helperMethods/inputHelper.js","context/settingsContext.js","assets/images/csvIcon.png","qubCommon/Inputs/Checkbox.jsx","context/userContext.js","store/actions.js","utils/greetings.js","utils/data-url-to-file.js","utils/imgSizesCalc.js","utils/grk2Latin/replaceText.js","utils/grk2Latin/index.js","enums/signalrConnection.js","ui-component/cards/ExplorerCard.js","qubCommon/helperMethods/formatRequest.js","assets/images/no-image-icon.png","qubCommon/Inputs/BringValueInput.jsx","qubCommon/Inputs/DateInput.jsx","qubCommon/Inputs/DateTimeInput.jsx","enums/index.js","ui-component/FullName.js","ui-component/Dialog.js","ui-component/Logo.js","ui-component/PageTitle.jsx","ui-component/cards/CasualCard.js","ui-component/cards/AvatarCard.js","ui-component/cards/StackedBarChartCard.js","context/dialogContext.js","apis/controllers/apiEntities.js","context/SignalR/mobileActionsConnection.jsx","qubCommon/Grids/QubGroupGrid.jsx","qubCommon/wijmoHelpers/convertToMobile.js","qubCommon/qubStyles.js","qubCommon/context/modalContext.jsx","common/BringValueInput/useBringValueInput.jsx","common/BringValueInput/BringValueInput.jsx","common/BringValueInput/index.jsx","constants/appUrls.js","qubCommon/ExplorerToolbar/components/FilesMenu.jsx","qubCommon/helperMethods/fileHelper.js","qubCommon/ExplorerToolbar/components/Criteria/FieldSearchGrid.jsx","qubCommon/ExplorerToolbar/components/Criteria/ValueListGrid.jsx","qubCommon/ExplorerToolbar/components/Criteria/index.jsx","qubCommon/ExplorerToolbar/index.js","ui-component/cards/OptionCard.js","qubCommon/ExplorerToolbar/components/TreeParent/index.jsx","qubCommon/ExplorerToolbar/components/ColumnPicker.jsx","views/dashboard/Users/hooks/usePerson.jsx","utils/date-translate.js","views/dashboard/Search/index.jsx","apis/controllers/club.js","qubCommon/Inputs/Dropdown.jsx","apis/controllers/qform.js","apis/controllers/backoffice.js","apis/controllers/user.js","apis/controllers/transaction.js","apis/controllers/admin.js","apis/controllers/applications.js","apis/controllers/generic.js","apis/controllers/emailTool.js","apis/controllers/dashboard.js","apis/controllers/validator.js","apis/controllers/notifications.js","apis/controllers/common.js","apis/controllers/translation.js","apis/controllers/devices.js","apis/reportsAxiosInstance.js","apis/controllers/reports.js","apis/controllers/payment.js","apis/accessAxiosInstance.js","apis/controllers/access.js","assets/TermsOfUse.pdf","ui-component/person/PersonInfo.jsx","hoc/components/PermissionDenied.js","hooks/useBreadcrumbs.js","assets/GDPR_TKD.pdf","ui-component/cards/AuthFooter.js","assets/images/msaccess.png","assets/Help.pdf","assets sync /^/.*$","assets/AthletesHelp.pdf","assets/ClubsHelp.pdf","assets/OfficialsHelp.pdf","assets/PaymentsHelp.pdf","assets/Terms.pdf","assets/images/auth/auth-blue-card.svg","assets/images/auth/auth-pattern-dark.svg","assets/images/auth/auth-pattern.svg","assets/images/auth/auth-purple-card.svg","assets/images/auth/auth-signup-blue-card.svg","assets/images/auth/auth-signup-white-card.svg","assets/images/icons/earning.svg","assets/images/icons/social-google.svg","assets/images/logo copy.png","assets/images/logo-dark.svg","assets/images/logo-white.svg","assets/images/logo.png","assets/images/logo.svg","assets/images/users/user-round.svg","themes/palettes/light.module.scss","themes/palettes/dark.module.scss","themes/palettes/warm.module.scss","themes/palettes/relax.module.scss","serviceWorker.js","layout/MainLayout/LogoSection/index.js","layout/MainLayout/Header/ProfileSection/index.js","layout/MainLayout/Header/LanguageSection/Wrapper.js","layout/MainLayout/Header/LanguageSection/index.js","layout/MainLayout/Header/ImpersonationSection/index.js","layout/MainLayout/Header/BreadcrumbSection/index.js","layout/MainLayout/Header/FullNameSection/index.jsx","layout/MainLayout/Header/index.js","layout/MainLayout/Sidebar/MenuList/NavItem/index.js","layout/MainLayout/Sidebar/MenuList/NavCollapse/index.js","layout/MainLayout/Sidebar/MenuList/NavGroup/index.js","layout/MainLayout/Sidebar/MenuList/index.js","ui-component/CustomNavItem.jsx","layout/MainLayout/Sidebar/index.js","layout/MainLayout/index.js","views/verification/index.js","hooks/useMenu.js","hoc/index.js","ui-component/wrappers/index.js","ui-component/layouts/index.js","layout/MinimalLayout/index.js","common/CommonIndex.jsx","routes/MainRoutes.js","layout/PublicLayout/components/LanguageSelector.jsx","layout/PublicLayout/components/PublicFooter.jsx","layout/PublicLayout/PublicLayout.jsx","layout/PublicLayout/index.jsx","routes/AuthenticationRoutes.js","routes/index.js","themes/palette.js","themes/typography.js","themes/presets.js","themes/index.js","themes/compStyleOverride.js","layout/NavigationScroll.js","i18n/index.js","views/splashScreen/index.jsx","App.js","index.js","hooks/useMe.js","store/authReducer.js","store/customizationReducer.js","store/menuReducer.js","store/breadcrumbReducer.js","store/signalrReducer.js","store/reducer.js","store/index.js"],"names":["config","basename","defaultPath","fontFamily","language","borderRadius","gridSpacing","drawerWidth","PageUnderConstruction","t","useTranslation","justifyContent","alignItems","container","sx","height","item","xs","sm","boxShadow","background","width","p","display","direction","size","paragraph","marginLeft","fontSize","color","colors","grey700","fontWeight","mb","wijmoDateFormat","panel","r","c","cell","dateColumn","time","dateFormat","format","columns","binding","cellType","innerHTML","date","Date","console","log","wijmoExtendLastColumn","flex","groups","formatedColumns","onInit","rowHeaderChange","columnWidths","forEach","column","group","children","fldName","Number","isNaN","parseInt","colWidth","includes","maxRealIndex","maxVisibleIndex","colWidthSum","col","visibleIndex","index","visible","clientSize","wijmoStyleGrid","columnStyles","cellStyles","style","colCss","getColumn","cssClass","rows","dataItem","rowCss","addClass","module","exports","CssTextField","styled","TextField","shouldForwardProp","prop","fixedPadding","disabledStyling","hasBackground","focusedStyling","hoverStyling","theme","darkMode","palette","mode","backgroundColor","default","borderColor","grey","hoverBorderColor","primary","main","focusedBackgroundColor","focusedBorderColor","disabledBackgroundColor","paper","disabledBorderColor","errorBackgroundColor","errorBorderColor","labelColor","text","secondary","focusedTextColor","common","black","padding","WebkitTextFillColor","disabled","border","RowLabel","label","labelWidth","marginRight","align","fontStyle","ColumnLabel","containsOnlyNumbers","str","test","dateValuesArray","string","array","error","split","value","isValidDate","year","month","day","d","getFullYear","getMonth","getDate","decideYear","length","formatToShowDate","m","y","defaultValue","dateInUse","dateFrom","dateTo","dateParsed","yearParsed","toString","inDateRange","validTime","timeArray","formatToShowDateTime","datePart","timePart","dateTimeFormat","defaultDate","defaultTime","dateTimeValuesArray","timeParsed","setHours","match","Context","createContext","PermissionProvider","whoami","useMe","Provider","permissions","Ability","Can","createContextualCan","Consumer","useSettings","res","useSettingsContext","headerSX","mr","MainCard","forwardRef","ref","content","contentClass","contentSX","darkTitle","shadow","title","stickyTitle","others","useTheme","position","top","zIndex","action","variant","className","displayName","personApi","post","path","params","options","cancelToken","axiosInstance","token","then","data","catch","err","response","get","updateAvatar","a","getAvatar","getFiles","downloadFile","removeAvatar","getPerson","getPersonFromUser","getRecommendedRoles","inviteUser","reinvite","activateUserFromInvitation","createTempUser","createOrUpdateFunctions","deleteFunction","validateB4Submit","submitRecord","approveRecord","rejectRecord","removeFile","getUserClub","getFunctions","getPersonByFunctionId","savePerson","adminSavePerson","getUserPersonFunction","updateUserPersonFunction","Conditional","condition","hide","hidden","axios","create","withCredentials","baseURL","process","interceptors","request","use","Object","keys","key","moment","state","store","getState","headers","Authorization","auth","originalRequest","message","errorObject","status","Promise","reject","_retry","dispatch","type","LOGOUT","refreshToken","refreshResponse","REFRESH_TOKEN","payload","LoaderContext","LoaderProvider","useState","loading","setLoading","useLoading","useContext","useBringValue","openDialog","setOpenDialog","dataKey","setDataKey","setTitle","filters","setFilters","restData","setRestData","searchFieldOptions","setSearchFieldOptions","operatorsOptions","setOperatorsOptions","searchField","setSearchField","searchValue","setSearchValue","searchOperator","setSearchOperator","searchSecondaryValue","setSearchSecondaryValue","secondValueField","setSecondValueField","openRejectDialog","setOpenRejectDialog","rejectReason","setRejectReason","setColumns","groupColumns","setGroupColumns","gridData","setGridData","itemCount","setItemCount","dataLoading","setDataLoading","showRowHeader","setShowRowHeader","showColHeaderGroup","setShowColHeaderGroup","pageSizeOptions","setPageSizeOptions","pageSize","setPageSize","cellCssMapping","setCellCssMapping","operators","id","operator","useOperators","useRef","gridRef","getOperators","selectedItem","find","field","fldSearchName","dataType","availableOptions","filter","option","useEffect","onSubmit","fieldSearchParams","value1","value2","apiEntities","getData","parameters","bringValueKey","critFldsSearch","ReturnedRecords","TotalRecords","gridInitialized","stickyHeaders","selectionMode","keyActionEnter","isReadOnly","current","hostElement","addEventListener","e","ht","hitTest","pageX","pageY","view","grid","collectionView","currentItem","IsBvDisabled","BvDisabledReason","onSelect","code","preventDefault","stopPropagation","resizedColumn","addHandler","s","fldWidth","formatItem","row","selectItem","select","criteria","rejectDialog","BringValueToolbar","originalToolbarProps","Grid","Select","onChange","event","target","map","MenuItem","onKeyDown","Button","onClick","BringValueGrid","props","rest","gridColumns","setGridColumns","helpCols","push","gridLoadedRows","child","columnStyle","object","fldNameCss","itemFormatter","focus","Box","QubGroupGrid","minHeight","initialized","loadedRows","headersVisibility","itemsSource","autoSizeMode","alternatingRowStep","header","BringValueRejectDialog","open","setOpen","Dialog","fullWidth","DialogTitle","DialogContent","Stack","spacing","Typography","whiteSpace","DialogActions","BringValueContext","BringValueProvider","enqueueSnackbar","useSnackbar","openBringValue","resParams","fieldSearch","fldTitle","isVisible","fldFormat","colAlign","onClose","maxWidth","gap","webPageKey","excelHandleClick","FlexGridXlsxConverter","saveAsync","includeColumnHeaders","includeStyles","hideCriteria","setToolbarLoading","toolbarProps","csvFiles","pdfFiles","excelFiles","rptId","rptTitle","hideAddNew","mx","useQubBringValue2","bringValueContext","Error","jwt","authApi","login","username","password","register","resetPasswordEmail","email","resetPassword","newPassword","sendVerificationEmail","emailTo","ValidateVerificationPin","userIdentifier","getUserHasRoles","updateUserHasRoles","getUserPermissionTree","updateUserPermissionTree","getRolePermissionTree","updateRolePermissionTree","getMe","logout","changeUsernameRequest","verifyUsernameRequest","changePasswordRequest","useLogout","useDispatch","queryClient","useQueryClient","authState","useSelector","navigate","useNavigate","useCallback","RESET_MENU","cancelQueries","TextInput","useFormContext","errors","formState","setValue","fieldsVariant","customization","name","rules","rowDirection","innerRef","blurFn","tooltip","autoCapitalize","changeFn","startAdornment","endAdornment","other","Tooltip","inputProps","toLocaleUpperCase","replace","toLocaleLowerCase","toUppercase","InputProps","disableUnderline","InputAdornment","onBlur","helperText","required","InputLabelProps","SettingsContext","SettingsProvider","setData","fetchData","generic","getSettings","FormCheckbox","control","useController","fieldState","checked","userSelect","UserContext","UserProvider","memo","isLoggedIn","meQuery","useQuery","person","organization","formatedPermissions","dbPermission","subject","abilities","defineAbility","can","element","info","retry","refetchInterval","minutes","refetch","SET_MENU","MENU_OPEN","SET_FONT_FAMILY","SET_BORDER_RADIUS","SET_LANGUAGE","SET_CAPITALIZE_INPUT_FIELDS","SET_THEME","LOGIN","VERIFY_EMAIL","LOCK_MENU","STORE_MENU","SET_BREADCRUMBS","RESET_BREADCRUMBS","SIGNALR_DEVICE_PAIRED","SIGNALR_DEVICE_UNPAIRED","greetings","getHours","propTypes","dataURLtoFile","dataurl","filename","arr","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","imgSizesCalc","aspect","imgWidth","imgHeight","cropWidth","cropHeight","defaultImg","require","stringToSet","o","i","charAt","grCaps","replacements","greek","greeklish","fivi","bi","fixCase","mirror","toUpperCase","substr","grk2Latin","pop","replacement","grLetters","expression","RegExp","join","greekSet","viSet","$0","toLowerCase","c1","c2","toGreeklish","toUpper","ON","invalidateQuery","actionResponse","devicePaired","deviceUnpaired","ExplorerCard","maxHeight","overflowY","flexGrow","flexDirection","formatCritFldSearch","helpData","defaultOperator","result","parse","formatValuesListSearch","parent","isSelected","containsTrue","helpResult","parentWithChildren","parentId","BringValueInput","onClear","getValues","handleSelect","Id","hanleBringValue","onKeyPress","handleKeyPress","placeholder","IconButton","tabIndex","Search","CircularProgress","cursor","preventExecOnAutocomplete","nativeEvent","inputType","handleAutocomplete","DateInput","locked","cmpyrsValidation","hasReset","input","setInput","datePickerValue","setDatePickerValue","dateRef","createRef","CustomDatePicker","DateRangeSharp","shouldDirty","datePicked","popperProps","strategy","selected","eValid","eFormatted","handleDatePickerChange","customInput","showYearDropdown","DateTimeInput","ThemeProvider","dateTimePicked","margin","slice","ProjectTables","Organization","Person","OrganizationCouncil","TransHeader","Application","PersonFunction","EmailMessages","Competition","CompetitionDetails","AthletesParticiaption","Sites","FileTypes","png","pdf","jpg","FileTypesConfigDataKeys","FunctionId","EntityTypeId","ApplicationTypeId","Competitions","ApplicationTypeId_FunctionId","EmailFilters","Sent","Drafts","EntityType","Federation","RegionalCommittee","Union","Club","Department","Athletes","Coach","Refereed","Administration","Stuff","ApplicationType","AthleteNew","AthleteClubRenewal","AthleteTransfer","AthleteNewHealthCertificate","AthleteNewBooklet","AthleteNewCard","OfficalNew","ContractRenewal","ClubNew","ClubUpdate","ClubCertificates","Renewal","OfficalNewDegree","AppTypeAdditionalTransfers","AthleteTransfer2","AthleteTransfer3","AthleteTransfer4","AthleteTransfer5","AthleteTransfer6","AthleteTransfer7","AthleteTransfer8","AthleteTransfer9","AthleteTransfer10","AthleteTransfer11","AthleteTransfer12","QueryStatus","idle","success","TransactionStatus","submitted","paid","canceled","rechecked","pendingPayment","pending","PaymentMethod","card","bank","FullNameBaseComponent","firstName","lastName","matchUpMd","useMediaQuery","breakpoints","up","textVariant","withSkeleton","Skeleton","CustomDialog","onAccept","meta","btnDisableOnClick","buttonsDisabled","setButtonsDisabled","debouncedOnAccept","useMemo","debounce","debouncedOnClose","handleClose","DialogContentText","description","autoFocus","cancel","Logo","dimensions","logo","link","styles","backgroundImage","backgroundSize","defaultProps","PageTitle","CasualCard","handleClick","Label","MenuList","Data","pl","pr","Value","Datakey","AvatarCard","avatar","handleViewProfile","overflow","mt","Avatar","src","bgcolor","userName","userId","Divider","orientation","ml","personFunction","organizationName","flexWrap","roles","Chip","StackedBarChartCard","chartInitialized","dataset","setDataset","classes","setClasses","maxObject","reduce","b","labels","undefined","translatedDataset","datum","navUrl","nav","chartType","bindingX","stacking","elem","wjProperty","reversed","DialogContext","useDialog","dialogContext","handleSubmit","form","reset","acceptButtonTitle","cancelButtonTitle","validationSchema","render","watchField","setDescription","setAcceptButtonTitle","setCancelButtonTitle","setFormJSON","setValidationSchema","watch","mutateOnClose","watchersUnsubscribe","mutateRender","mutateOnAccept","setForm","formJSON","DialogProvider","setRender","watchers","watcher","unsubscribe","resolver","useYupValidationResolver","useForm","methods","callBack","watchFunction","apiEntitiesApi","MobileConnectionContext","MobileConnectionProvider","url","SIGNALR_PATH","connection","HubConnectionBuilder","configureLogging","LogLevel","Information","withUrl","accessTokenFactory","withAutomaticReconnect","build","client","handleOnInvalidateQuery","invalidateQueries","handleOnDeviceUnpaired","start","on","stop","useMobileConnection","mobileConnectionContext","editableColumns","allowResizing","itemsSourceChanged","columnGroup","grpDescr","grpId","cellTemplates","ct","template","ctx","convertGridToMobile","visibleColumns","formatColumns","mobileData","formatedMobileGridData","newObj","allData","htmlString","formatedRow","supportLine","styleExplorer","marginTop","ModalImages","Warning","Question","Info","ModalButtons","OkCancel","YesNo","YesNoCancel","OK","Yes","No","Cancel","ModalContext","ModalImage","imageType","ModalProvider","setMessage","setImageType","defaultButton","setDefaultButton","isGrid","setIsGrid","popupRef","buttons","setButtons","openModal","callback","buttonsArray","command","getbuttonsArray","show","offsetHeight","left","offsetWidth","openGrid","centerPopup","popup","isDraggable","isResizable","fadeOut","fadeIn","hideTrigger","marginBottom","autoSizeColumns","overflowWrap","useModal","modalContext","useBringValueInput","runOnInit","defaultIdValue","defaultDescriptionValue","additionalFilters","onSelected","onNotFound","paramsRef","handleBringValue","backoffice","itemsCount","items","isFunction","handleSelectBringValue","primaryKeyName","bringValue","getParams","initialFetch","idValue","operation","registerProps","descriptionRegisterProps","clear","gridProps","getGrid","handleOnEnter","autoComplete","shrink","React","FilesMenu","anchorEl","setAnchorEl","files","fileMenuType","handleFilePick","Boolean","FileMenuIcon","excel","alt","csv","Menu","MenuListProps","file","ListItemIcon","openPdf","blob","Blob","document","createElement","href","window","URL","createObjectURL","setAttribute","body","appendChild","click","FieldSearchGrid","gridRefs","handleDirtyCheck","operatorMap","wjcGrid","getDisplayValues","rowDataItem","el","showMarquee","onSelectionChanged","isRowEditable","isEmptyOrNull","onCellEditEnded","editingCol","setCellData","extraRow","allowMerging","columnHeaders","splice","colIndex","toggleClass","rowHeaders","textContent","getCellData","prepareCellForEdit","rootEl","wjInput","activeEditor","parentCell","parentElement","insertBefore","wjcCore","cellEditEnding","cellEditEndHandler","s2","args","removeHandler","dispose","autoSizeRows","fieldSearchLoadedRows","Cell","dataMap","minWidth","isRequired","ValueListGrid","finishEditing","level","dirtyChildren","hasChildren","curRowIdx","childRow","cells","classToRemove","isCollapsed","classToAdd","span","querySelector","collapseGroupsToLevel","refreshCells","ListBox","childItemsPath","Criteria","tab","setTab","popupInitialized","criteriaRef","submit","dirtyValuesList","dirtyFieldSearch","opacity","critValuesList","crit","ButtonGroup","dark","light","ToolbarExplorer","menuFiles","setMenuFiles","filesMenu","setFilesMenu","setFileMenuType","setDirtyValuesList","setDirtyFieldSearch","mobileGridRef","rptRequestVars","newTitle","newUrl","colPopupRef","criteriaPopupRef","initRef","dirty","mapHeaders","wordWrap","useImperativeHandle","filterParams","reports","getQubReport","ReportId","DBKey","CONFIG","dbKey","UserId","ReportParams","responseType","getQubReportExcel","handleMenuOpen","fileType","currentTarget","ColumnPicker","my","FilterAlt","ViewColumnTwoTone","OptionCard","clickAction","additionalInfo","TreeParent","category","extendLastColumn","mobileColumnChange","categoryCheck","setCategoryCheck","TreeItem","nodeId","FormControlLabel","Checkbox","checkbox","headerChange","alterHeaders","saveColumnPickerSettings","columnsHelp","submitJSON","submitJSON2","fldId","entries","GridVisibleColIds","lostFocus","TreeView","defaultCollapseIcon","defaultExpandIcon","defaultExpanded","multiSelect","defaultChecked","fetchPerson","queryKey","personId","fetchPersonFromUser","defaultOptions","fromUser","usePerson","useDateTranslatorHelper","isNil","f","hasUser","ListItem","function","lblRegNumber","regNumber","functionId","isActive","personFunctionId","PersonFunctionsPretty","showTitle","functions","setFunctions","func","isOfficial","useWatch","personQuery","showAll","isSuccess","paddingBottom","PersonInfo","clubApi","createOrUpdateClub","getClub","saveClub","adminSaveClub","BaseComponent","valueName","labelName","menuAnchorRef","optionAll","SelectProps","MenuProps","anchorOrigin","vertical","horizontal","transformOrigin","displayEmpty","Array","isArray","Dropdown","qformApi","getWithConfiguration","backofficeApi","getLookups","commitChanges","getForm","getExplorer","transactionApi","gettransaction","createOrUpdateTransactionRequest","changeStatus","getTransactionRequiredFiles","uploadFiles","deleteFile","paymentEmail","splitMerge","getClubAdminsEmails","submitPayment","manage","getTransactionSettings","paymentLink","newTransactionOptions","adminApi","impersonate","exitImpersonation","qubTablesBackOffice","applicationsApi","getApplicationsType","getApplicationById","createApplication","approval","updateApplication","getAllByGuid","getSettingsByApplicationType","genericApi","downloadFileAsBase64","getAssets","getFilesDataKeyByAppTypeId","emailToolApi","getOrganizations","dashboardApi","statistics","validatorApi","validateAmka","validateAfm","notificationsApi","getNotifications","commonApi","lookupDefaultValue","translationApi","getResources","devicesApi","getRegisteredDevices","registerDevice","issueActivationToken","requestAction","unpairDevice","localStorage","getItem","JSON","urlAPI","reportsAxiosInstance","qubiteqSubKey","qubSubKey","reportsApi","saveFile","getFile","paymentApi","pay","AccessDbAPI","accessAxiosInstance","accessApi","Accept","downloadMDB","setAvatar","fetch","recordGuid","divider","flexItem","fathersName","gender","dob","errorMain","useBreadcrumbs","breadcrumbs","PropTypes","AuthFooter","qb","component","Link","location","origin","underline","webpackContext","req","webpackContextResolve","__webpack_require__","resolve","hostname","LogoSection","projectLogo","ButtonBase","disableRipple","to","ProfileSection","selectedIndex","setSelectedIndex","anchorRef","dashboard","fetchAvatar","projectTableId","recordId","contains","handleToggle","prevOpen","borderWidth","borderStyle","substring","Popper","placement","role","transition","disablePortal","popperOptions","modifiers","offset","TransitionProps","in","Paper","ClickAwayListener","onClickAway","elevation","shadows","List","down","ListItemButton","route","handleListItemClick","stroke","ListItemText","languageToString","Wrapper","matchesXs","typography","commonAvatar","mediumAvatar","textAlign","LanguageSection","selectedLanguage","setLanguage","i18n","handleLanguageChange","changeLanguage","LanguageRadioGroup","FormControl","RadioGroup","Radio","ImpersonationSection","decodeToken","admin","menuItems","menu","original_name","disableElevation","BreadcrumbSection","pathname","useLocation","matchDownMd","FullNameSection","Header","handleLeftDrawerToggle","md","NavItem","matchesSM","Icon","Loadable","lazy","icon","itemIcon","isOpen","findIndex","itemTarget","listItemProps","external","py","opened","Trans","i18nKey","caption","subMenuCaption","gutterBottom","chip","NavCollapse","menuState","setSelected","openedId","menus","permission","I","passThrough","allowed","menuIcon","Collapse","timeout","unmountOnExit","disablePadding","NavGroup","menuItem","subheader","menuCaption","NavGroupWithSkeleton","_","navItems","CustomNavItem","setHelp","Help","Sidebar","drawerOpen","drawerToggle","drawer","paddingLeft","paddingRight","tabindex","px","flexShrink","Drawer","anchor","white","borderRight","ModalProps","keepMounted","Main","mainContent","borderBottomLeftRadius","borderBottomRightRadius","transitions","easing","sharp","duration","leavingScreen","paddingTop","easeOut","enteringScreen","MainLayout","menuItemId","leftDrawerOpened","CssBaseline","AppBar","enableColorOnDark","Toolbar","boxSizing","Verification","primaryMain","inputStyle","onComplete","pin","recursiveSearch","matchArray","searchArray","useMenu","pathArray","shift","activeItem","acc","concat","useStyles","makeStyles","root","withPermission","Component","unrestricted","isLoading","isError","isEmailVerified","hasPermission","withLayout","Layout","setMenuItem","LoadingDialog","PaperProps","BackdropProps","MinimalWrapper","MinimalLayout","CommonIndex","choices","setChoices","findByPathname","idx","newChildren","PaymentSubmittion","PaymentResultPage","HomeView","AccountSettings","UsersView","TransactionOptions","View","UsersManage","Manage","UsersCreate","Create","RolesView","RolesManage","ClubsView","ClubManage","AthletesView","AthletesManage","OfficialsView","OfficialsManage","PaymentIndexManage","PaymentCardView","PaymentPendingView","ApplicationsAthletesView","ApplicationsAthletesManage","ApplicationsAthletesCertificates","Certificates","ApplicationsAthletesBatchRenewal","BatchRenewal","ApplicationsAthletesSelfInsurance","BatchSelfInsurance","ApplicationsAthletesFedInsurance","BatchFedInsurance","ApplicationsOfficialsBatchRenewal","Batch","ApplicationsOfficialsCertificates","ApplicationsClubsCertificates","EmailToolView","EmailToolCreate","MergesView","MergeManage","NewMerge","New","ApplicationsClubsView","ApplicationsClubsManage","ApplicationsOfficialsView","ApplicationsOfficialsManage","NewApplicationView","CompetitionsDetailsView","CompetitionDetailsManage","CompetitionParticipationsView","ParticipationsExplorer","Participations","CompetitionsParticipationsManage","ParticipationsListCompetitions","CompetitionsView","ParticipationsListParticipations","ParticipationsView","SitesView","SitesManage","FaqView","FaqManage","FaqEdit","Edit","ImpersonationView","GridManage","GridView","FormsView","FormsManage","FormsPreview","Preview","PageNotFound","ServerError","GDPR","TermsOfUse","UserDetails","UserRoles","UserPermissions","RolesDetails","RolesPermissions","AthleteDetails","AthleteFunctions","AthleteNfcCard","ClubDetails","OfficialDetails","OfficialFunctions","TransactionHeaders","TransactionDetails","MainRoutes","LanguageSelector","PublicFooter","desktop","PublicLayout","projectFullTitle","address","phone","lgUp","mdUp","handleNavLogin","handleNavFederation","handleNavMenu","prev","pt","overflowX","Accordion","AccordionSummary","expandIcon","borderTop","AccordionDetails","AuthLogin3","ResetPassword","UserInvitation","CompetitionsCalendar","Calendar","Details","AuthenticationRoutes","project_public_enabled","search","Routes","routes","useRoutes","themePalette","primaryLight","primaryDark","primary200","primary800","secondaryLight","secondaryMain","secondaryDark","secondary200","secondary800","errorLight","errorDark","orange","orangeLight","orangeMain","orangeDark","warning","warningLight","warningMain","warningDark","successLight","success200","successMain","successDark","grey50","grey100","darkTextSecondary","heading","darkTextPrimary","textDark","darkLevel1","darkLevel2","darkBackground","darkPaper","hint","backgroundDefault","themeTypography","h6","h5","h4","h3","h2","h1","subtitle1","textDarkPrimary","subtitle2","body1","lineHeight","body2","letterSpacing","button","textTransform","grey500","smallAvatar","largeAvatar","THEME_PRESETS","warm","relax","themeOption","grey900","menuSelected","menuSelectedBack","grey200","themeOptions","mixins","toolbar","themes","createTheme","components","MuiButton","styleOverrides","MuiPaper","rounded","MuiCardHeader","MuiCardContent","MuiCardActions","MuiListItemButton","MuiListItemIcon","MuiListItemText","MuiInputBase","MuiSlider","grey300","mark","valueLabel","MuiDivider","MuiAvatar","MuiChip","MuiTooltip","MuiDialogContentText","grey800","componentStyleOverrides","NavigationScroll","scrollTo","behavior","node","lazyLoadTranslations","translation","lang","addResourceBundle","ln","namespace","datavalues","LanguageDetector","initReactI18next","init","debug","partialBundledLanguages","transSupportBasicHtmlNodes","fallbackLng","defaultNS","interpolation","escapeValue","resources","SplashScreen","projectIcon","favicon","getElementById","QueryClient","queries","refetchOnWindowFocus","App","setLicenseKey","WIJMO_LICENSE_KEY","StyledEngineProvider","injectFirst","translationNs","rootElement","createRoot","maxSnack","TransitionComponent","Slide","persistor","navigator","serviceWorker","ready","registration","unregister","initialState","authReducer","actionTypes","capitalizeInputFields","customizationReducer","lockMenu","menuReducer","breadcrumbReducer","isDevicePaired","signalrReducer","reducer","combineReducers","signalr","persistConfig","storage","whitelist","persistedReducer","persistReducer","createStore","__REDUX_DEVTOOLS_EXTENSION__","persistStore"],"mappings":"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","file":"static/js/main.fa539767.chunk.js","sourcesContent":["const config = {\r\n basename: '',\r\n defaultPath: '/',\r\n fontFamily: `'Roboto', sans-serif`,\r\n language: 'en',\r\n borderRadius: 4\r\n};\r\n\r\nexport default config;\r\n","// theme constant\r\nexport const gridSpacing = 3;\r\nexport const drawerWidth = 260;\r\nexport const appDrawerWidth = 320;\r\n","import { Box, Typography, Stack, Grid } from '@mui/material';\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { IconTrafficCone } from '@tabler/icons';\r\nimport { useEffect } from 'react';\r\n\r\nconst PageUnderConstruction = () => {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('PageUnderConstruction')}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default PageUnderConstruction;\r\n","import format from 'date-fns/format';\r\nimport { store } from 'store';\r\nimport * as wjcCore from '@grapecity/wijmo';\r\nimport { addClass } from '@grapecity/wijmo';\r\n\r\nexport const wijmoHideColumns = (flex, columnNames) => {\r\n flex.columns.forEach((c) => {\r\n if (columnNames.includes(c.binding)) c.visible = false;\r\n });\r\n};\r\n\r\nexport const wijmoAggregateColumns = (flex, columnNames, aggFunction) => {\r\n flex.columns.forEach((c) => {\r\n if (columnNames.includes(c.binding)) c.aggregate = aggFunction;\r\n });\r\n};\r\n\r\nexport const wijmoMergeColumns = (flex, columnNames) => {\r\n flex.columns.forEach((c) => {\r\n if (columnNames.includes(c.binding)) c.allowMerging = true;\r\n });\r\n};\r\n\r\nexport const wijmoDateFormat = (panel, r, c, cell, dateColumn, time = false, dateFormat = { format: 'dd/MM/yyyy' }) => {\r\n if (panel.columns[c]?.binding === dateColumn && panel.cellType === 1 && cell.innerHTML !== '') {\r\n try {\r\n const date = new Date(cell.innerHTML);\r\n if (time) cell.innerHTML = format(date, `${dateFormat?.format} HH:mm`);\r\n else {\r\n cell.innerHTML = format(date, `${dateFormat?.format}`);\r\n }\r\n } catch {\r\n console.log('wrong value format', cell.innerHTML, panel.columns[c]?.binding);\r\n }\r\n }\r\n};\r\n\r\nexport const wijmoCurrencyFormat = (panel, r, c, cell, currencyColumns) => {\r\n const currDecimals = 2;\r\n const currDecimalSep = ',';\r\n\r\n if (currencyColumns.includes(panel.columns[c]?.binding) && panel.cellType === 1 && cell.innerHTML !== '') {\r\n /* eslint-disable */\r\n const commasRemoved = cell.innerHTML.replace(/\\,/g, '');\r\n const value = parseFloat(commasRemoved).toFixed(currDecimals);\r\n const formatValue = parseFloat(value);\r\n const formatter = new Intl.NumberFormat(currDecimalSep === ',' ? 'el-GR' : 'el-GR', {\r\n minimumFractionDigits: currDecimals,\r\n maximumFractionDigits: currDecimals\r\n });\r\n cell.innerHTML = formatter.format(formatValue);\r\n }\r\n};\r\n\r\nexport const wijmoExtendLastColumn = (flex, groups, formatedColumns = false, onInit = false, rowHeaderChange = '') => {\r\n try {\r\n const columnWidths = {};\r\n if (formatedColumns) {\r\n groups.forEach((column) => {\r\n columnWidths[column?.binding] = column?.width;\r\n });\r\n } else {\r\n groups.forEach((group) => {\r\n group.children.forEach((column) => {\r\n columnWidths[column?.fldName] =\r\n Number.isNaN(parseInt(column?.colWidth, 10)) || column?.colWidth?.includes('*')\r\n ? column?.colWidth\r\n : parseInt(column?.colWidth, 10);\r\n });\r\n });\r\n }\r\n\r\n let maxVisibleIndex = -2;\r\n let maxRealIndex;\r\n let colWidthSum = 0;\r\n if (onInit) colWidthSum = 7;\r\n if (rowHeaderChange === 'enable' && !onInit) {\r\n colWidthSum = 43;\r\n }\r\n if (rowHeaderChange === 'disable' && !onInit) {\r\n colWidthSum = -43;\r\n }\r\n flex.columns.forEach((col) => {\r\n if (col?.visibleIndex > maxVisibleIndex) {\r\n maxVisibleIndex = col?.visibleIndex;\r\n maxRealIndex = col?.index;\r\n }\r\n if (col?.visible) {\r\n col.width = columnWidths[col?.binding];\r\n colWidthSum += col?.width;\r\n }\r\n });\r\n // if (flex.headersVisibility === 3) colWidthSum += flex.rowHeaders.width;\r\n\r\n if (flex.clientSize.width - colWidthSum > 0) flex.columns[maxRealIndex].width += flex.clientSize.width - colWidthSum;\r\n } catch {}\r\n};\r\n\r\nexport const wijmoStyleGrid = (panel, r, c, cell, columnStyles, cellStyles, flex) => {\r\n try {\r\n columnStyles.forEach((style) => {\r\n if (style?.colCss) {\r\n const col = flex.getColumn(style?.binding);\r\n col.cssClass = style?.colCss;\r\n }\r\n });\r\n } catch {\r\n console.log('column css not applied');\r\n }\r\n try {\r\n // let rowCssBinding;\r\n // flex.columns.forEach(c=> {\r\n // if (c?.binding.toLowerCase() === 'rowcss') rowCssBinding = c?.binding;\r\n // })\r\n if (panel?.rows?.[r]?.dataItem?.rowCss) panel.rows[r].cssClass = panel.rows[r].dataItem.rowCss;\r\n } catch {\r\n console.log('row css not applied');\r\n }\r\n try {\r\n if (cellStyles?.[panel?.columns?.[c]?.binding])\r\n addClass(cell, panel?.rows?.[r]?.dataItem?.[cellStyles?.[panel?.columns?.[c]?.binding]]);\r\n } catch {\r\n console.log('cell css not applied');\r\n }\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"background\":\"#f0f0f0\",\"primaryLight\":\"#e3f2fd\",\"primary200\":\"#90caf9\",\"primaryMain\":\"#2196f3\",\"primaryDark\":\"#1e88e5\",\"primary800\":\"#1565c0\",\"secondaryLight\":\"#ede7f6\",\"secondary200\":\"#b39ddb\",\"secondaryMain\":\"#673ab7\",\"secondaryDark\":\"#5e35b1\",\"secondary800\":\"#4527a0\",\"successLight\":\"#4caf50\",\"success200\":\"#69f0ae\",\"successMain\":\"#2e7d32\",\"successDark\":\"#1b5e20\",\"errorLight\":\"#ef5350\",\"errorMain\":\"#d32f2f\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#ff9800\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey800\":\"#3e3e3e\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e3f2fd\",\"darkPrimaryMain\":\"#2196f3\",\"darkPrimaryDark\":\"#1e88e5\",\"darkPrimary200\":\"#90caf9\",\"darkPrimary800\":\"#1565c0\",\"darkSecondaryLight\":\"#d1c4e9\",\"darkSecondaryMain\":\"#7c4dff\",\"darkSecondaryDark\":\"#651fff\",\"darkSecondary200\":\"#b39ddb\",\"darkSecondary800\":\"#6200ea\"};","import { styled } from '@mui/material/styles';\r\nimport { TextField } from '@mui/material';\r\n\r\nexport const CssTextField = styled(TextField, {\r\n shouldForwardProp: (prop) =>\r\n prop !== 'fixedPadding' &&\r\n prop !== 'hasBackground' &&\r\n prop !== 'disabledStyling' &&\r\n prop !== 'focusedStyling' &&\r\n prop !== 'hoverStyling'\r\n})(({ fixedPadding, hasBackground, disabledStyling, focusedStyling, hoverStyling, theme }) => {\r\n const darkMode = theme.palette.mode === 'dark';\r\n const backgroundColor = darkMode ? theme.palette.background.default : '#EDF2F8';\r\n const boxShadow = '0px 4px 10px rgba(0, 0, 0, 0.2)';\r\n const borderColor = darkMode ? theme.palette.grey[500] : '#EDF2F8';\r\n const hoverBorderColor = darkMode ? theme.palette.primary.main : '#EDF2F8';\r\n const focusedBackgroundColor = darkMode ? '#FFD78A' : '#FFECBA';\r\n const focusedBorderColor = darkMode ? '#E0B34A' : '#FFD35E';\r\n const disabledBackgroundColor = darkMode ? theme.palette.background.paper : '#EAEAEA';\r\n const disabledBorderColor = darkMode ? theme.palette.grey[700] : '#D9D9D9';\r\n const errorBackgroundColor = '#FFF2F2';\r\n const errorBorderColor = '#D10029';\r\n const labelColor = darkMode ? theme.palette.text.secondary : 'gray';\r\n const textColor = theme.palette.text.primary;\r\n const focusedTextColor = theme.palette.common.black;\r\n\r\n return {\r\n '& .MuiInput-input': {\r\n padding: 0,\r\n ':focus': {\r\n color: 'black'\r\n }\r\n },\r\n '& .MuiInputBase-input.Mui-disabled': {\r\n WebkitTextFillColor: darkMode ? theme.palette.text.disabled : 'rgba(0, 0, 0, 1)'\r\n },\r\n '& .MuiInput-root': {\r\n backgroundColor,\r\n boxShadow,\r\n borderRadius: '10px',\r\n padding: fixedPadding ?? 10,\r\n border: `2px solid ${borderColor}`,\r\n '&:hover': {\r\n boxShadow,\r\n border: `2px solid ${hoverBorderColor}`,\r\n ...hoverStyling\r\n },\r\n '&.Mui-focused': {\r\n background: focusedBackgroundColor,\r\n boxShadow,\r\n border: `2px solid ${focusedBorderColor}`, // Using adjusted focused color,\r\n ...focusedStyling\r\n },\r\n '&.Mui-disabled': {\r\n background: disabledBackgroundColor,\r\n border: `2px solid ${disabledBorderColor}`,\r\n boxShadow,\r\n ...disabledStyling\r\n },\r\n '&.Mui-error': {\r\n background: errorBackgroundColor,\r\n border: `2px solid ${errorBorderColor}`\r\n },\r\n '&.Mui-focused fieldset': {\r\n borderColor: focusedBorderColor // Using adjusted focused color,\r\n },\r\n '&:.Mui-focused': {\r\n color: focusedTextColor\r\n }\r\n },\r\n '& .MuiOutlinedInput-root': {\r\n backgroundColor,\r\n boxShadow,\r\n borderRadius: '10px',\r\n padding: fixedPadding ?? 0,\r\n '& label': {\r\n color: labelColor\r\n },\r\n '& > fieldset': {\r\n borderColor\r\n },\r\n '&:hover': {\r\n boxShadow,\r\n ...hoverStyling,\r\n '& > fieldset': {\r\n border: `2px solid ${hoverBorderColor}`\r\n }\r\n },\r\n '&.Mui-focused': {\r\n background: focusedBackgroundColor,\r\n boxShadow,\r\n ...focusedStyling,\r\n '& > fieldset': {\r\n border: `2px solid ${focusedBorderColor}` // Using adjusted focused color\r\n }\r\n },\r\n '&.Mui-error': {\r\n background: errorBackgroundColor,\r\n '& > fieldset': {\r\n border: `2px solid ${errorBorderColor}`\r\n }\r\n },\r\n '&.Mui-disabled': {\r\n background: disabledBackgroundColor,\r\n '& > fieldset': {\r\n border: `2px solid ${disabledBorderColor}`,\r\n ...disabledStyling\r\n },\r\n boxShadow\r\n }\r\n }\r\n };\r\n});\r\n","import { Box, Typography } from '@mui/material';\r\n\r\nconst RowLabel = ({ label, labelWidth = 120 }) => {\r\n if (typeof label === 'string')\r\n return (\r\n \r\n {`${label}:`}\r\n \r\n );\r\n return `${label}:`;\r\n};\r\n\r\nexport default RowLabel;\r\n","import { Typography } from '@mui/material';\r\n\r\nconst ColumnLabel = ({ label }) => {\r\n if (typeof label === 'string') return {label};\r\n return label;\r\n};\r\n\r\nexport default ColumnLabel;\r\n","/* eslint-disable */\r\nimport format from 'date-fns/format';\r\n\r\nfunction containsOnlyNumbers(str) {\r\n return /^\\d+$/.test(str);\r\n}\r\n\r\nfunction dateValuesArray(string) {\r\n let array = [];\r\n let error = false;\r\n if (string.includes('/')) array = string.split('/');\r\n else if (string.includes('-')) array = string.split('-');\r\n else if (string.includes('.')) array = string.split('.');\r\n else if (string.includes(',')) array = string.split(',');\r\n else error = true;\r\n\r\n array.forEach((value) => {\r\n if (!containsOnlyNumbers(value)) {\r\n error = true;\r\n }\r\n });\r\n if (error) return 'error';\r\n else return array;\r\n}\r\n\r\nfunction isValidDate(year, month, day) {\r\n var d = new Date(year, month, day);\r\n if (d.getFullYear() === Number(year) && d.getMonth() === Number(month) && d.getDate() === Number(day)) {\r\n return true;\r\n }\r\n return false;\r\n}\r\n\r\nfunction decideYear(year) {\r\n if (year?.length === 4) return year;\r\n else if (year?.length === 2)\r\n if (year < 50) return '20' + year;\r\n else return '19' + year;\r\n else return false;\r\n}\r\n\r\nfunction formatToShowDate(\r\n string,\r\n dateFormat = { format: 'dd/MM/yyyy', d: 0, m: 1, y: 2 },\r\n defaultValue,\r\n dateInUse = false,\r\n dateFrom,\r\n dateTo\r\n) {\r\n const dateParsed = dateValuesArray(string);\r\n let year;\r\n let yearParsed = dateParsed[dateFormat?.y] ?? new Date().getFullYear().toString();\r\n if (decideYear(yearParsed)) year = decideYear(yearParsed);\r\n else {\r\n if (defaultValue) return format(new Date(defaultValue), dateFormat?.format);\r\n else return null;\r\n }\r\n let month = dateParsed[dateFormat?.m] - 1;\r\n let day = dateParsed[dateFormat?.d];\r\n if (dateParsed === 'error') {\r\n if (defaultValue) return format(new Date(defaultValue), dateFormat?.format);\r\n else return null;\r\n }\r\n if (isValidDate(year, month, day)) {\r\n if (dateInUse) return inDateRange(year, month, day, dateFrom, dateTo, dateFormat?.format);\r\n else return format(new Date(year, month, day), dateFormat?.format);\r\n } else if (isValidDate(year, day - 1, month + 1))\r\n if (dateInUse) return inDateRange(year, day - 1, month + 1, dateFrom, dateTo, dateFormat?.format);\r\n else return format(new Date(year, day - 1, month + 1), dateFormat?.format);\r\n else {\r\n if (defaultValue) return format(new Date(defaultValue), dateFormat?.format);\r\n else return null;\r\n }\r\n}\r\n\r\nfunction inDateRange(year, month, day, dateFrom, dateTo, dateFormat = 'dd/MM/yyyy') {\r\n if (new Date(year, month, day) >= new Date(dateFrom) && new Date(year, month, day) <= new Date(dateTo))\r\n return format(new Date(year, month, day), dateFormat);\r\n else if (new Date(year, month, day) < new Date(dateFrom)) return format(new Date(dateFrom), dateFormat);\r\n else if (new Date(year, month, day > new Date(dateTo))) return format(new Date(dateTo), dateFormat);\r\n else return null;\r\n}\r\n\r\nfunction validTime(timeArray) {\r\n if (containsOnlyNumbers(timeArray[0]) && containsOnlyNumbers(timeArray[1]))\r\n if (timeArray[0] < 0 || timeArray[0] > 23 || timeArray[1] < 0 || timeArray[1] > 59) return 'errorTime';\r\n else return true;\r\n else return 'errorTime';\r\n}\r\n\r\nfunction formatToShowDateTime(\r\n string,\r\n dateFormat = { format: 'dd/MM/yyyy', d: 0, m: 1, y: 2 },\r\n dateTimeFormat = 'dd/MM/yyyy HH:mm',\r\n defaultDate,\r\n defaultTime\r\n) {\r\n const dateParsed = dateTimeValuesArray(string)?.date;\r\n const timeParsed = dateTimeValuesArray(string)?.time;\r\n let datePart, timePart;\r\n\r\n let year, month, day;\r\n let yearParsed = dateParsed[dateFormat?.y] ?? new Date().getFullYear().toString();\r\n\r\n // check year, if year is ok and store month and day\r\n if (decideYear(yearParsed)) {\r\n year = decideYear(yearParsed);\r\n month = dateParsed[dateFormat?.m] - 1;\r\n day = dateParsed[dateFormat?.d];\r\n }\r\n // if year is not okay then date is error\r\n else {\r\n if (defaultDate) datePart = new Date(defaultDate);\r\n else datePart = null;\r\n }\r\n // check if date was wrong from the beggining\r\n if (dateParsed === 'error') {\r\n if (defaultDate) datePart = new Date(defaultDate);\r\n else datePart = null;\r\n }\r\n // check if date is valid\r\n if (isValidDate(year, month, day)) datePart = new Date(year, month, day);\r\n // check if day and month were written opposite\r\n else if (isValidDate(year, day - 1, month + 1)) datePart = new Date(year, day - 1, month + 1);\r\n // invalid Date\r\n else {\r\n if (defaultDate) datePart = new Date(defaultDate);\r\n else datePart = null;\r\n }\r\n if (timeParsed) {\r\n if (validTime(timeParsed)) timePart = timeParsed;\r\n else if (defaultTime) timePart = defaultTime?.split(':');\r\n else timePart = null;\r\n } else if (defaultTime) timePart = defaultTime?.split(':');\r\n else timePart = null;\r\n\r\n if (datePart && timePart) {\r\n datePart.setHours(timePart[0], timePart[1]);\r\n return format(datePart, dateTimeFormat);\r\n } else return format(datePart ?? new Date(), dateTimeFormat);\r\n}\r\n\r\nfunction dateFormatDetails(format) {\r\n let array = [];\r\n let d, m, y, seperator;\r\n if (format.includes('/')) {\r\n array = format.split('/');\r\n seperator = '/';\r\n } else if (format.includes('-')) {\r\n array = format.split('-');\r\n seperator = '-';\r\n } else if (format.includes('.')) {\r\n array = format.split('.');\r\n seperator = '.';\r\n }\r\n if (array?.indexOf('d') > -1) d = array?.indexOf('d');\r\n if (array?.indexOf('dd') > -1) d = array?.indexOf('dd');\r\n if (array?.indexOf('M') > -1) m = array?.indexOf('M');\r\n if (array?.indexOf('MM') > -1) m = array?.indexOf('MM');\r\n if (array?.indexOf('yyyy') > -1) y = array?.indexOf('yyyy');\r\n if (array?.indexOf('yy') > -1) y = array?.indexOf('yy');\r\n let formatArray = [];\r\n formatArray[d] = 'day';\r\n formatArray[m] = 'month';\r\n formatArray[y] = 'year';\r\n\r\n return {\r\n format,\r\n d,\r\n m,\r\n y,\r\n seperator,\r\n formatArray\r\n };\r\n}\r\n\r\nfunction dateTimeValuesArray(string) {\r\n let array = [],\r\n date,\r\n time;\r\n if (string.includes(' ')) {\r\n array = string.split(' ');\r\n date = array[0];\r\n time = array[1];\r\n } else return { date: dateValuesArray(string), time: null };\r\n date = dateValuesArray(array[0]);\r\n if (array[1].includes(':')) time = array[1].split(':');\r\n else if (array[1].includes('.')) time = array[1].split('.');\r\n else if (array[1]?.length === 4) time = array[1].match(/.{1,2}/g);\r\n else time = null;\r\n return {\r\n date,\r\n time\r\n };\r\n}\r\n\r\nexport function calculate(startDateOfUse, endDateOfUse) {\r\n let yearOfStartDate = new Date(startDateOfUse).getFullYear();\r\n let yearOfEndDate = new Date(endDateOfUse).getFullYear();\r\n let yearOfCurrentDate = new Date().getFullYear();\r\n\r\n //let yearOfStartDate = StartDate.getfullYear();\r\n //let yearOfEndDate = EndDate.getfullYear();\r\n // let yearOfCurrentDate = CurrentDate.getfullYear();\r\n\r\n let monthOfStartDate = new Date(startDateOfUse).getMonth();\r\n let monthOfEndDate = new Date(endDateOfUse).getMonth();\r\n let monthOfCurrentDate = new Date().getMonth();\r\n\r\n let dayOfEndDate = new Date(endDateOfUse).getDate();\r\n let dayOfCurrentDate = new Date().getDate();\r\n\r\n let firstDate;\r\n let lastDate;\r\n let resultMonth;\r\n\r\n if (yearOfStartDate !== yearOfEndDate) {\r\n if (yearOfStartDate <= yearOfCurrentDate <= yearOfEndDate) {\r\n if (monthOfStartDate !== monthOfEndDate) {\r\n if (monthOfStartDate <= monthOfCurrentDate <= monthOfEndDate) {\r\n if (monthOfCurrentDate === 0) {\r\n firstDate = new Date(yearOfCurrentDate, monthOfCurrentDate, 1);\r\n lastDate = new Date(yearOfCurrentDate, monthOfCurrentDate, dayOfEndDate);\r\n } else {\r\n resultMonth = monthOfCurrentDate - 1;\r\n firstDate = new Date(yearOfCurrentDate, resultMonth, 1);\r\n lastDate = new Date(yearOfCurrentDate, resultMonth + 1, 0);\r\n }\r\n }\r\n } else {\r\n if (monthOfStartDate >= monthOfCurrentDate) {\r\n if (monthOfCurrentDate === 0) {\r\n firstDate = new Date(yearOfCurrentDate, monthOfCurrentDate, 1);\r\n lastDate = new Date(yearOfCurrentDate, monthOfCurrentDate, dayOfEndDate);\r\n } else {\r\n resultMonth = monthOfCurrentDate - 1;\r\n firstDate = new Date(yearOfCurrentDate, resultMonth, 1);\r\n lastDate = new Date(yearOfCurrentDate, resultMonth + 1, 0);\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n if (yearOfStartDate >= yearOfCurrentDate) {\r\n if (monthOfStartDate !== monthOfEndDate) {\r\n if (monthOfStartDate <= monthOfCurrentDate <= monthOfEndDate) {\r\n if (monthOfCurrentDate === 0) {\r\n firstDate = new Date(yearOfCurrentDate, monthOfCurrentDate, 1);\r\n lastDate = new Date(yearOfCurrentDate, monthOfCurrentDate, dayOfCurrentDate);\r\n } else {\r\n resultMonth = monthOfCurrentDate - 1;\r\n firstDate = new Date(yearOfCurrentDate, resultMonth, 1);\r\n lastDate = new Date(yearOfCurrentDate, resultMonth + 1, 0);\r\n }\r\n }\r\n } else {\r\n if (monthOfStartDate >= monthOfCurrentDate) {\r\n if (monthOfCurrentDate === 0) {\r\n firstDate = new Date(yearOfCurrentDate, monthOfCurrentDate, 1);\r\n lastDate = new Date(yearOfCurrentDate, monthOfCurrentDate, dayOfEndDate);\r\n } else {\r\n resultMonth = monthOfCurrentDate - 1;\r\n firstDate = new Date(yearOfCurrentDate, resultMonth, 1);\r\n lastDate = new Date(yearOfCurrentDate, resultMonth + 1, 0);\r\n }\r\n } else {\r\n firstDate = new Date(yearOfStartDate, monthOfStartDate, 1);\r\n lastDate = new Date(yearOfStartDate, monthOfStartDate, dayOfEndDate);\r\n }\r\n }\r\n } else {\r\n firstDate = new Date(yearOfStartDate, 11, 1);\r\n lastDate = new Date(yearOfStartDate, 11 + 1, 0);\r\n }\r\n }\r\n firstDate = format(firstDate, 'yyyy-MM-dd');\r\n lastDate = format(lastDate, 'yyyy-MM-dd');\r\n return { firstDate, lastDate };\r\n}\r\n\r\nexport function validDate(startDateOfUse, endDateOfUse, currentDate) {\r\n let yearOfStartDate = new Date(startDateOfUse).getFullYear();\r\n let yearOfEndDate = new Date(endDateOfUse).getFullYear();\r\n let yearOfCurrentDate = new Date(currentDate).getFullYear();\r\n\r\n let monthOfStartDate = new Date(startDateOfUse).getMonth();\r\n let monthOfEndDate = new Date(endDateOfUse).getMonth();\r\n let monthOfCurrentDate = new Date(currentDate).getMonth();\r\n\r\n let dayOfStartDate = new Date(startDateOfUse).getDate();\r\n let dayOfEndDate = new Date(endDateOfUse).getDate();\r\n let dayOfCurrentDate = new Date(currentDate).getDate();\r\n\r\n let valid = false;\r\n\r\n if (yearOfStartDate !== yearOfEndDate) {\r\n if (yearOfStartDate <= yearOfCurrentDate <= yearOfEndDate) {\r\n valid = true;\r\n }\r\n } else {\r\n if (yearOfStartDate > yearOfCurrentDate) {\r\n valid = true;\r\n } else if (yearOfStartDate === yearOfCurrentDate) {\r\n if (monthOfStartDate !== monthOfEndDate) {\r\n if (monthOfStartDate <= monthOfCurrentDate <= monthOfEndDate) {\r\n valid = true;\r\n }\r\n } else if (monthOfStartDate > monthOfCurrentDate) {\r\n valid = true;\r\n } else if (monthOfStartDate === monthOfCurrentDate) {\r\n if (dayOfStartDate < dayOfCurrentDate && dayOfCurrentDate <= dayOfEndDate) {\r\n valid = true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return valid;\r\n}\r\n\r\nexport function lastDayofMonth(givenDay) {\r\n let yearofGivenDay = new Date(givenDay).getFullYear();\r\n let monthofGivenDay = new Date(givenDay).getMonth();\r\n\r\n let lastDateofMonth = new Date(yearofGivenDay, monthofGivenDay + 1, 0);\r\n\r\n lastDateofMonth = format(lastDateofMonth, 'yyyy-MM-dd');\r\n return lastDateofMonth;\r\n}\r\n\r\nexport function firstDayofMonth(givenDay) {\r\n let yearofGivenDay = new Date(givenDay).getFullYear();\r\n let monthofGivenDay = new Date(givenDay).getMonth();\r\n\r\n let firstDateofMonth = new Date(yearofGivenDay, monthofGivenDay, 1);\r\n\r\n firstDateofMonth = format(firstDateofMonth, 'yyyy-MM-dd');\r\n return firstDateofMonth;\r\n}\r\n\r\nexport function previousMonthsDetails(givenDay) {\r\n let yearofGivenDay = new Date(givenDay).getFullYear();\r\n let monthofGivenDay = new Date(givenDay).getMonth();\r\n\r\n let previousMonth = monthofGivenDay - 1;\r\n\r\n let previousFirstDateofMonth = new Date(yearofGivenDay, previousMonth, 1);\r\n let previousLastDateofMonth = new Date(yearofGivenDay, previousMonth + 1, 0);\r\n\r\n previousFirstDateofMonth = format(previousFirstDateofMonth, 'yyyy-MM-dd');\r\n previousLastDateofMonth = format(previousLastDateofMonth, 'yyyy-MM-dd');\r\n\r\n return { previousFirstDateofMonth, previousLastDateofMonth };\r\n}\r\n\r\nexport {\r\n containsOnlyNumbers,\r\n isValidDate,\r\n dateValuesArray,\r\n decideYear,\r\n formatToShowDate,\r\n formatToShowDateTime,\r\n dateFormatDetails,\r\n inDateRange\r\n};\r\n","import React, { createContext } from 'react';\r\nimport { Ability } from '@casl/ability';\r\nimport { createContextualCan, useAbility } from '@casl/react';\r\nimport propTypes from 'prop-types';\r\nimport { useMe } from 'hooks/useMe';\r\n\r\nconst Context = createContext();\r\n\r\nfunction usePermissions() {\r\n const permissions = useAbility(Context);\r\n if (permissions === undefined) {\r\n throw new Error('usePermissions should be used within a PermissionProvider');\r\n }\r\n return permissions;\r\n}\r\n\r\nconst PermissionProvider = ({ children }) => {\r\n const { whoami } = useMe();\r\n return {children};\r\n};\r\n\r\nPermissionProvider.propTypes = {\r\n children: propTypes.node\r\n};\r\n\r\nexport { usePermissions, PermissionProvider };\r\nexport const Can = createContextualCan(Context.Consumer);\r\n","import { useEffect, useContext } from 'react';\r\nimport { useSettingsContext } from 'context/settingsContext';\r\n\r\nexport const useSettings = () => {\r\n const res = useSettingsContext();\r\n return { ...res };\r\n};\r\n\r\nexport default useSettings;\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Card, CardContent, CardHeader, Divider, Typography } from '@mui/material';\r\n\r\n// constant\r\nconst headerSX = {\r\n '& .MuiCardHeader-action': { mr: 0 }\r\n};\r\n\r\n// ==============================|| CUSTOM MAIN CARD ||============================== //\r\n\r\nconst MainCard = forwardRef(\r\n (\r\n {\r\n border = true,\r\n boxShadow,\r\n children,\r\n content = true,\r\n contentClass = '',\r\n contentSX = {},\r\n darkTitle,\r\n secondary,\r\n shadow,\r\n sx = {},\r\n title,\r\n stickyTitle,\r\n ...others\r\n },\r\n ref\r\n ) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n {/* card header and action */}\r\n {!darkTitle && title && (\r\n \r\n )}\r\n {darkTitle && title && (\r\n {title}} action={secondary} />\r\n )}\r\n\r\n {/* content & header divider */}\r\n {title && }\r\n\r\n {/* card content */}\r\n {content && (\r\n \r\n {children}\r\n \r\n )}\r\n {!content && children}\r\n \r\n );\r\n }\r\n);\r\n\r\nMainCard.propTypes = {\r\n border: PropTypes.bool,\r\n boxShadow: PropTypes.bool,\r\n children: PropTypes.node,\r\n content: PropTypes.bool,\r\n contentClass: PropTypes.string,\r\n contentSX: PropTypes.object,\r\n darkTitle: PropTypes.bool,\r\n secondary: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\r\n shadow: PropTypes.string,\r\n sx: PropTypes.object,\r\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\r\n stickyTitle: PropTypes.bool\r\n};\r\n\r\nMainCard.displayName = 'MainCard';\r\n\r\nexport default MainCard;\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const personApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/person${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/person${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\nexport const updateAvatar = async (params) => personApi.post('/uploadavatar', params);\r\n\r\nexport const getAvatar = async (params) => personApi.post('/getavatar', params);\r\n\r\nexport const getFiles = async (params) => personApi.post('/getfiles', params);\r\n\r\nexport const downloadFile = async (params, options) => personApi.post('/downloadfile', params, options);\r\n\r\nexport const removeAvatar = async (params) => personApi.post('/removeavatar', params);\r\n\r\nexport const getPerson = async (params) => personApi.get('/getperson', { params });\r\n\r\nexport const getPersonFromUser = async (params) => personApi.get('/getpersonfromuser', { params });\r\n\r\nexport const getRecommendedRoles = async (params) => personApi.get('/getrecommendedroles', { params });\r\n\r\nexport const inviteUser = async (params) => personApi.post('/invite', params);\r\n\r\nexport const reinvite = async (params) => personApi.post('/reinvite', params);\r\n\r\nexport const activateUserFromInvitation = async (params) => personApi.post('/activateUserFromInvitation', params);\r\n\r\nexport const createTempUser = async (params) => personApi.post('/createtempuser', params);\r\n\r\nexport const createOrUpdateFunctions = async (params) => personApi.post('/createorupdatefunctions', params);\r\n\r\nexport const deleteFunction = async (params) => personApi.post('/deletefunction', params);\r\n\r\nexport const validateB4Submit = async (params) => personApi.post('/validateb4submit', params);\r\n\r\nexport const submitRecord = async (params) => personApi.post('/SubmitPersonRecord', params);\r\n\r\nexport const approveRecord = async (params) => personApi.post('/Approveforverperson', params);\r\n\r\nexport const rejectRecord = async (params) => personApi.post('/RejectPerson', params);\r\n\r\nexport const removeFile = async (params) => personApi.post('/removefile', params);\r\n\r\nexport const getUserClub = async (params) => personApi.get('/getUserClub');\r\n\r\nexport const getFunctions = async (params) => personApi.get('/getpersonfunctions', { params });\r\n\r\nexport const getPersonByFunctionId = async (params) => personApi.get('/getPersonByFunctionId', { params });\r\n\r\nexport const savePerson = async (params) => personApi.post('/save', params);\r\n\r\nexport const adminSavePerson = async (params) => personApi.post('/adminSave', params);\r\n\r\nexport const getUserPersonFunction = async (params) => personApi.post('/GetUserPersonFunction', params);\r\n\r\nexport const updateUserPersonFunction = async (params) => personApi.post('/UpdateUserPersonFunction', params);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst Conditional = ({ condition, children, hide }) => {\r\n if (hide) {\r\n return ;\r\n }\r\n return condition ? <>{children} : null;\r\n};\r\n\r\nConditional.propTypes = {\r\n condition: PropTypes.bool.isRequired,\r\n children: PropTypes.node\r\n};\r\n\r\nexport default Conditional;\r\n","export default __webpack_public_path__ + \"static/media/qb.7ddda2f8.png\";","export default __webpack_public_path__ + \"static/media/excelIcon.c0340b70.png\";","import axios from 'axios';\r\nimport { store } from 'store';\r\nimport { LOGOUT, REFRESH_TOKEN } from 'store/actions';\r\nimport moment from 'moment';\r\n/* eslint-disable import/no-cycle */\r\n/* eslint-disable no-underscore-dangle */\r\nimport { refreshToken } from 'apis/controllers/auth';\r\n\r\nconst axiosInstance = axios.create({\r\n withCredentials: true,\r\n baseURL: process.env.REACT_APP_BASE_URL\r\n});\r\n\r\naxiosInstance.interceptors.request.use((config) => {\r\n if (config.data) {\r\n Object.keys(config.data).forEach(async (key) => {\r\n // Find a valid date object and format it\r\n if (config.data[key] instanceof Date && !Number.isNaN(config.data[key])) {\r\n config.data[key] = moment(config.data[key]).format('YYYY-MM-DDTHH:mm:ss.SSS');\r\n }\r\n });\r\n }\r\n const state = store.getState();\r\n if (!config.headers.Authorization) {\r\n config.headers = {\r\n ...config.headers,\r\n Authorization: `Bearer ${state.auth.token}`\r\n };\r\n }\r\n return config;\r\n});\r\n\r\naxiosInstance.interceptors.response.use(\r\n (response) => {\r\n return response;\r\n },\r\n async (error) => {\r\n console.log('error', error);\r\n const originalRequest = error.config;\r\n if (error?.message === 'Network Error') {\r\n const errorObject = {\r\n response: {\r\n message: error.message,\r\n status: 503\r\n }\r\n };\r\n return Promise.reject(errorObject);\r\n }\r\n if (error?.response?.status === 453 && !originalRequest._retry) {\r\n const { dispatch } = store;\r\n dispatch({ type: LOGOUT });\r\n }\r\n if (error?.response?.status === 401 && !originalRequest._retry) {\r\n const state = store.getState();\r\n const { dispatch } = store;\r\n originalRequest._retry = true;\r\n try {\r\n if (state.auth.refreshToken) {\r\n const refreshResponse = await refreshToken({\r\n refreshToken: state.auth.refreshToken\r\n });\r\n dispatch({ type: REFRESH_TOKEN, payload: refreshResponse });\r\n originalRequest.headers.Authorization = `Bearer ${refreshResponse?.token}`;\r\n return axiosInstance(originalRequest);\r\n }\r\n dispatch({ type: LOGOUT });\r\n } catch (ex) {\r\n return Promise.reject(error);\r\n }\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\nexport default axiosInstance;\r\n","export default __webpack_public_path__ + \"static/media/pdf.ea368c58.png\";","import { createContext, useState } from 'react';\r\n\r\nexport const LoaderContext = createContext(null);\r\n\r\nexport const LoaderProvider = ({ children }) => {\r\n const [loading, setLoading] = useState(false);\r\n\r\n return {children};\r\n};\r\n","import { LoaderContext } from 'context/loaderContext';\r\nimport { useContext } from 'react';\r\n\r\nexport const useLoading = () => useContext(LoaderContext);\r\n","import { useState, useRef, useEffect } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { apiEntities } from 'apis';\r\n\r\nconst useOperators = () => {\r\n const { t } = useTranslation();\r\n const operators = [\r\n { id: 'beginsWith', operator: t('Begins') },\r\n { id: 'contains', operator: t('Contains') },\r\n { id: 'endsWith', operator: t('Ends') },\r\n { id: '=', operator: '=' },\r\n { id: '>', operator: '>' },\r\n { id: '>=', operator: '>=' },\r\n { id: '<', operator: '<' },\r\n { id: '<=', operator: '<=' },\r\n { id: '<>', operator: '<>' },\r\n { id: 'between', operator: t('Between') },\r\n { id: 'isNull', operator: 'NULL' },\r\n { id: 'isEmpty', operator: t('Empty') }\r\n ];\r\n return operators;\r\n};\r\n\r\nconst useBringValue = () => {\r\n const { t } = useTranslation();\r\n const [openDialog, setOpenDialog] = useState(false);\r\n const [dataKey, setDataKey] = useState(null);\r\n const [title, setTitle] = useState('');\r\n\r\n const [filters, setFilters] = useState([]);\r\n const [restData, setRestData] = useState([]);\r\n\r\n const [searchFieldOptions, setSearchFieldOptions] = useState([]);\r\n const [operatorsOptions, setOperatorsOptions] = useState([]);\r\n\r\n const [searchField, setSearchField] = useState('');\r\n const [searchValue, setSearchValue] = useState('');\r\n const [searchOperator, setSearchOperator] = useState('');\r\n const [searchSecondaryValue, setSearchSecondaryValue] = useState('');\r\n\r\n const [secondValueField, setSecondValueField] = useState(false);\r\n\r\n const [openRejectDialog, setOpenRejectDialog] = useState(false);\r\n const [rejectReason, setRejectReason] = useState('');\r\n\r\n const [columns, setColumns] = useState([]);\r\n const [groupColumns, setGroupColumns] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [itemCount, setItemCount] = useState('');\r\n const [dataLoading, setDataLoading] = useState(false);\r\n const [showRowHeader, setShowRowHeader] = useState(true);\r\n const [showColHeaderGroup, setShowColHeaderGroup] = useState(true);\r\n const [pageSizeOptions, setPageSizeOptions] = useState([]);\r\n const [pageSize, setPageSize] = useState(null);\r\n const [cellCssMapping, setCellCssMapping] = useState([]);\r\n const operators = useOperators();\r\n\r\n const ref = useRef();\r\n const gridRef = useRef();\r\n\r\n const getOperators = () => {\r\n const selectedItem = searchFieldOptions?.find((field) => field?.fldSearchName === searchField);\r\n const dataType = selectedItem?.dataType;\r\n let availableOptions = operators;\r\n if (dataType === 'date' || dataType === 'datetime')\r\n availableOptions = availableOptions.filter((option) =>\r\n ['=', '>', '>=', '<', '<=', '<>', 'between', 'isNull'].includes(option.id)\r\n );\r\n else if (dataType === 'boolean') availableOptions = availableOptions.filter((option) => ['='].includes(option.id));\r\n else if (dataType === 'int' || dataType === 'decimal')\r\n availableOptions = availableOptions.filter((option) =>\r\n ['=', '>', '>=', '<', '<=', '<>', 'between', 'isNull'].includes(option.id)\r\n );\r\n\r\n return availableOptions;\r\n };\r\n\r\n useEffect(() => {\r\n setOperatorsOptions(getOperators());\r\n setSearchOperator(getOperators()[0]?.id);\r\n }, [searchField]);\r\n\r\n useEffect(() => {\r\n if (searchOperator === 'between') setSecondValueField(true);\r\n else {\r\n setSecondValueField(false);\r\n setSearchSecondaryValue('');\r\n }\r\n }, [searchOperator]);\r\n\r\n const gridInitialized = (flex) => {\r\n flex.stickyHeaders = true;\r\n flex.selectionMode = 'Row';\r\n flex.keyActionEnter = 'None';\r\n flex.isReadOnly = true;\r\n gridRef.current = flex;\r\n flex.hostElement.addEventListener('dblclick', (e) => {\r\n const ht = flex.hitTest(e.pageX, e.pageY);\r\n const view = ht?.grid?.collectionView;\r\n const currentItem = view.currentItem;\r\n if (currentItem && ht.cellType === 1) {\r\n if (currentItem?.IsBvDisabled) {\r\n setRejectReason(currentItem?.BvDisabledReason);\r\n setOpenRejectDialog(true);\r\n } else {\r\n ref.current.onSelect(view.currentItem);\r\n setOpenDialog(false);\r\n setDataKey(null);\r\n setGridData([]);\r\n }\r\n }\r\n });\r\n\r\n flex.hostElement.addEventListener('keydown', (e) => {\r\n const view = flex.collectionView;\r\n if (e.code === 'Enter' && view.currentItem) {\r\n if (view.currentItem?.IsBvDisabled) {\r\n setRejectReason(view?.currentItem?.BvDisabledReason);\r\n setOpenRejectDialog(true);\r\n } else {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n ref.current.onSelect(view.currentItem);\r\n setOpenDialog(false);\r\n setDataKey(null);\r\n setGridData([]);\r\n }\r\n }\r\n });\r\n\r\n flex.resizedColumn.addHandler((s, e) => {\r\n const col = e.panel.columns[e.col];\r\n apiEntities.getData({ dataKey: 'Qub-ColsWidth-Save', parameters: { fldName: col.binding, fldWidth: col.width, dataKey } });\r\n });\r\n\r\n flex.formatItem.addHandler((flex, e) => {\r\n const row = flex.rows[e.row];\r\n if (row?.dataItem?.IsBvDisabled) {\r\n row.cssClass = 'bv-disabled-row';\r\n }\r\n if (e.panel.cellType === 3) {\r\n e.cell.innerHTML = `
${e.panel.rows[e.row]?.index + 1}
`;\r\n }\r\n });\r\n };\r\n\r\n const selectItem = (select) => {\r\n if (select) {\r\n if (!gridRef.current?.collectionView?.currentItem?.IsBvDisabled) {\r\n ref?.current?.onSelect(gridRef.current?.collectionView?.currentItem);\r\n setOpenDialog(false);\r\n setDataKey(null);\r\n setGridData([]);\r\n } else {\r\n setRejectReason(gridRef.current?.collectionView?.currentItem?.BvDisabledReason);\r\n setOpenRejectDialog(true);\r\n }\r\n } else {\r\n ref?.current?.onSelect(t('NoItemSelected'));\r\n setOpenDialog(false);\r\n setDataKey(null);\r\n setGridData([]);\r\n }\r\n };\r\n\r\n // set criteria here\r\n const onSubmit = async () => {\r\n const fieldSearchParams = [\r\n { fldName: searchField, operator: searchOperator, value1: searchValue, value2: searchSecondaryValue },\r\n ...filters\r\n ];\r\n setDataLoading(true);\r\n setGridData([]);\r\n const res = await apiEntities.getData({\r\n dataKey: 'QUB-BringValue-DataGet',\r\n parameters: {\r\n bringValueKey: dataKey,\r\n critFldsSearch: fieldSearchParams,\r\n pageSize\r\n }\r\n });\r\n setItemCount(`${res?.ReturnedRecords}/${res?.TotalRecords} ${t('Rows')}` ?? '');\r\n setGridData(res?.data);\r\n setDataLoading(false);\r\n };\r\n\r\n return {\r\n openDialog,\r\n setOpenDialog,\r\n gridInitialized,\r\n ref,\r\n gridRef,\r\n dataKey,\r\n setDataKey,\r\n title,\r\n setTitle,\r\n columns,\r\n itemCount,\r\n setItemCount,\r\n setColumns,\r\n groupColumns,\r\n setGroupColumns,\r\n gridData,\r\n setGridData,\r\n selectItem,\r\n onSubmit,\r\n dataLoading,\r\n setDataLoading,\r\n showRowHeader,\r\n showColHeaderGroup,\r\n setShowRowHeader,\r\n setShowColHeaderGroup,\r\n pageSizeOptions,\r\n setPageSizeOptions,\r\n cellCssMapping,\r\n setCellCssMapping,\r\n criteria: {\r\n searchField,\r\n setSearchField,\r\n searchValue,\r\n setSearchValue,\r\n searchOperator,\r\n setSearchOperator,\r\n searchSecondaryValue,\r\n setSearchSecondaryValue,\r\n secondValueField,\r\n setSecondValueField,\r\n searchFieldOptions,\r\n setSearchFieldOptions,\r\n operatorsOptions,\r\n setFilters,\r\n restData,\r\n setRestData,\r\n setPageSize,\r\n pageSizeOptions,\r\n setPageSizeOptions\r\n },\r\n rejectDialog: {\r\n openRejectDialog,\r\n setOpenRejectDialog,\r\n rejectReason,\r\n setRejectReason\r\n }\r\n };\r\n};\r\n\r\nexport default useBringValue;\r\n","/* eslint-disable*/\r\nimport { Accordion, AccordionDetails, AccordionSummary, Typography, Select, MenuItem, Stack, TextField, Button, Grid } from '@mui/material';\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\r\nimport { useTranslation } from 'react-i18next';\r\nimport ToolbarExplorer from 'qubCommon/ExplorerToolbar';\r\n\r\nconst BringValueToolbar = (params) => {\r\n const { operators, onSubmit, criteria, originalToolbarProps } = params;\r\n const { t } = useTranslation();\r\n\r\n const handleFieldChange = (event) => {\r\n criteria.setSearchField(event.target.value);\r\n };\r\n\r\n const handleOperatorChange = (event) => {\r\n criteria.setSearchOperator(event.target.value);\r\n };\r\n\r\n const handleValueChange = (event) => {\r\n criteria.setSearchValue(event.target.value);\r\n };\r\n\r\n const handleSecondaryValueChange = (event) => {\r\n criteria.setSearchSecondaryValue(event.target.value);\r\n };\r\n\r\n const handlePageSizeChange = (event) => {\r\n criteria.setPageSize(event.target.value);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {/* */}\r\n {/* {t('Field')} */}\r\n \r\n {criteria.searchFieldOptions?.length > 0 &&\r\n criteria.searchFieldOptions.map((option) => (\r\n \r\n {option?.title}\r\n \r\n ))}\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n {/* {t('Operation')} */}\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n {/* {t('Value')} */}\r\n \r\n {\r\n if (e.key === 'Enter') onSubmit();\r\n }}\r\n defaultValue={criteria.searchValue ?? ''}\r\n sx={{ width: 200 }}\r\n />\r\n {/* */}\r\n \r\n \r\n {criteria.secondValueField && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {criteria.pageSizeOptions?.length > 0 && (\r\n \r\n {criteria.pageSizeOptions.map((option) => (\r\n \r\n {option?.label}\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default BringValueToolbar;\r\n","import { FlexGrid, FlexGridColumn } from '@grapecity/wijmo.react.grid';\r\nimport { FlexGridFilter } from '@grapecity/wijmo.react.grid.filter';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useEffect, useState } from 'react';\r\nimport { Box } from '@mui/material';\r\nimport QubGroupGrid from 'qubCommon/Grids/QubGroupGrid';\r\nimport { wijmoDateFormat, wijmoStyleGrid } from 'qubCommon/wijmoHelpers/columnMethods';\r\nimport 'assets/css/explorer.css';\r\n\r\nconst BringValueGrid = (props) => {\r\n const { columns, groupColumns, data, gridInitialized, showRowHeader, showColHeaderGroup, cellCssMapping, ...rest } = props;\r\n const [gridColumns, setGridColumns] = useState([]);\r\n const { t } = useTranslation();\r\n\r\n useEffect(() => {\r\n const helpCols = [];\r\n columns.forEach((column) =>\r\n helpCols.push({\r\n ...column,\r\n width: column?.width ?? '*'\r\n })\r\n );\r\n setGridColumns(helpCols);\r\n }, [columns]);\r\n\r\n const gridLoadedRows = (flex) => {\r\n const columnStyles = [];\r\n groupColumns?.forEach((group) => {\r\n group?.children.forEach((child) => {\r\n const columnStyle = {};\r\n columnStyle.binding = child?.fldName;\r\n columnStyle.colCss = child?.colCss;\r\n columnStyles.push(columnStyle);\r\n });\r\n });\r\n const cellStyles = {};\r\n cellCssMapping?.forEach((object) => {\r\n cellStyles[object?.fldName] = object?.fldNameCss;\r\n });\r\n flex.itemFormatter = (panel, r, c, cell) => {\r\n wijmoStyleGrid(panel, r, c, cell, columnStyles, cellStyles, flex);\r\n flex.columns.forEach((col) => {\r\n if (col?.format === 'date') {\r\n // console.log(c, 'MelloAngelos', c.binding);\r\n wijmoDateFormat(panel, r, c, cell, col.binding, false, { format: 'dd/MM/yyyy' });\r\n }\r\n if (col?.format === 'datetime') {\r\n // console.log(c, 'MelloAngelos', c.binding);\r\n wijmoDateFormat(panel, r, c, cell, col.binding, true, { format: 'dd/MM/yyyy' });\r\n }\r\n });\r\n };\r\n flex.focus();\r\n };\r\n\r\n return (\r\n \r\n {showColHeaderGroup ? (\r\n \r\n ) : (\r\n \r\n \r\n {gridColumns.length > 0 &&\r\n gridColumns.map((c, index) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default BringValueGrid;\r\n","import { Dialog, DialogActions, DialogContent, DialogTitle, Grid, Stack, Button, Typography } from '@mui/material';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst BringValueRejectDialog = (props) => {\r\n const { open, setOpen, rejectReason } = props;\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n Rejection reason\r\n \r\n \r\n \r\n \r\n \r\n {rejectReason}\r\n \r\n \r\n \r\n \r\n \r\n \r\n setOpen(false)}\r\n sx={{ background: '#4d79bc', ':hover': { background: '#79AEC9', color: '#fff' } }}\r\n >\r\n {t('Close')}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default BringValueRejectDialog;\r\n","/* eslint-disable */\r\nimport { createContext, useContext, useState } from 'react';\r\nimport { Button, Typography, Grid, Dialog, DialogTitle, DialogContent, DialogActions, Stack, Box } from '@mui/material';\r\nimport useBringValue from 'hooks/bringValue/useBringValue';\r\nimport { useSnackbar } from 'notistack';\r\nimport { apiEntities } from 'apis';\r\nimport BringValueToolbar from './components/BringValueToolbar';\r\nimport BringValueGrid from './components/BringValueGrid';\r\nimport BringValueRejectDialog from './components/BringValueRejectDialog';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { FlexGridXlsxConverter } from '@grapecity/wijmo.grid.xlsx';\r\n\r\nconst BringValueContext = createContext({});\r\n\r\nconst BringValueProvider = (props) => {\r\n const { children } = props;\r\n const { t } = useTranslation();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const {\r\n openDialog,\r\n setOpenDialog,\r\n gridInitialized,\r\n ref,\r\n gridRef,\r\n dataKey,\r\n setDataKey,\r\n title,\r\n setTitle,\r\n columns,\r\n itemCount,\r\n setItemCount,\r\n groupColumns,\r\n setGroupColumns,\r\n setColumns,\r\n showRowHeader,\r\n showColHeaderGroup,\r\n setShowRowHeader,\r\n setShowColHeaderGroup,\r\n cellCssMapping,\r\n setCellCssMapping,\r\n\r\n gridData,\r\n setGridData,\r\n selectItem,\r\n onSubmit,\r\n dataLoading,\r\n setDataLoading,\r\n criteria,\r\n rejectDialog\r\n } = useBringValue();\r\n\r\n const openBringValue = async (props) => {\r\n const { dataKey, searchValue, searchField, title, onSelect, filters = [], restData = [] } = props;\r\n ref.current = { onSelect };\r\n\r\n setGridData([]);\r\n setDataKey(dataKey);\r\n criteria.setFilters(filters);\r\n criteria.setRestData(restData);\r\n criteria.setSearchValue(searchValue);\r\n criteria.setSearchField(searchField);\r\n setDataLoading(true);\r\n\r\n const resParams = await apiEntities.getData({\r\n dataKey: 'QUB-BringValue-ParamsGet',\r\n parameters: { bringValueKey: dataKey }\r\n });\r\n const pageSize = resParams?.data?.pageSize?.[0]?.value;\r\n criteria.setPageSize(pageSize);\r\n criteria.setPageSizeOptions(resParams?.data?.pageSize);\r\n const gridColumns = resParams?.data?.gridColumns ?? [];\r\n const fieldSearch = resParams?.data?.critFldsSearch;\r\n const cellCssMapping = resParams?.data?.cellCssMapping ?? [];\r\n setCellCssMapping(cellCssMapping);\r\n setShowRowHeader(resParams?.data?.showRowHeader);\r\n setShowColHeaderGroup(resParams?.data?.showColHeaderGroup);\r\n\r\n const helpCols = [];\r\n setGroupColumns(gridColumns);\r\n gridColumns.forEach((column) =>\r\n column.children.forEach((child) =>\r\n helpCols.push({\r\n binding: child.fldName,\r\n header: child.fldTitle,\r\n visible: child.isVisible,\r\n format: child.fldFormat,\r\n width: child.colWidth ?? '*',\r\n align: child?.colAlign ?? 'justify'\r\n })\r\n )\r\n );\r\n\r\n criteria.setSearchFieldOptions(fieldSearch);\r\n setColumns(helpCols);\r\n setTitle(resParams?.data?.title ?? title);\r\n\r\n const res = await apiEntities.getData({\r\n dataKey: 'QUB-BringValue-DataGet',\r\n parameters: {\r\n bringValueKey: dataKey,\r\n critFldsSearch: [{ fldName: searchField, operator: 'beginsWith', value1: searchValue }, ...filters],\r\n restData,\r\n pageSize\r\n }\r\n });\r\n\r\n setItemCount(`${res?.ReturnedRecords}/${res?.TotalRecords} ${t('Rows')}` ?? '');\r\n setDataLoading(false);\r\n\r\n setGridData(res?.data ?? []);\r\n if (!res?.data) {\r\n selectItem(false);\r\n enqueueSnackbar(t('NoDataFound'), { variant: 'warning' });\r\n } else if (res?.data?.length === 1) {\r\n if (res?.data[0].IsBvDisabled) {\r\n rejectDialog?.setRejectReason(res?.data[0]?.BvDisabledReason);\r\n rejectDialog?.setOpenRejectDialog(true);\r\n } else ref.current.onSelect(res?.data[0]);\r\n } else setOpenDialog(true);\r\n };\r\n\r\n const excelHandleClick = (gridRef, webPageKey) => {\r\n FlexGridXlsxConverter.saveAsync(\r\n gridRef.current,\r\n {\r\n includeColumnHeaders: true,\r\n includeStyles: false\r\n },\r\n `${webPageKey}_BringValue.xlsx`\r\n );\r\n };\r\n\r\n return (\r\n \r\n setOpenDialog(false)} maxWidth=\"xl\" fullWidth sx={{ height: 'max-content' }}>\r\n \r\n \r\n {t(title)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n excelHandleClick(gridRef, dataKey),\r\n hideCriteria: true,\r\n setToolbarLoading: setDataLoading,\r\n toolbarProps: {\r\n csvFiles: [],\r\n pdfFiles: [],\r\n showRowHeader,\r\n excelFiles: [{ rptId: 'default', rptTitle: 'Προεπιλογή' }],\r\n columns: groupColumns,\r\n status: true,\r\n hideAddNew: true\r\n }\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {itemCount}\r\n \r\n selectItem(true)}\r\n >\r\n {t('OK')}\r\n \r\n selectItem(false)}\r\n >\r\n {t('Cancel')}\r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nconst useQubBringValue2 = () => {\r\n const bringValueContext = useContext(BringValueContext);\r\n if (!bringValueContext) {\r\n throw new Error('useBringValue must be used within a BringValueProvider');\r\n }\r\n return bringValueContext;\r\n};\r\n\r\n// when all bvs are migrated this has to change to useQubBringValue :)\r\nexport { BringValueProvider, useQubBringValue2 };\r\n","import jwt from 'jwt-decode';\r\n\r\nexport default (token) => {\r\n try {\r\n return jwt(token);\r\n } catch (error) {\r\n return undefined;\r\n }\r\n};\r\n","/* eslint-disable import/no-cycle */\r\nimport axiosInstance from '../axiosInstance';\r\n\r\nexport const authApi = {\r\n post: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/auth${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n console.log('err', err);\r\n throw err.error ? err : err?.response;\r\n }),\r\n get: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/auth${path}`,\r\n { params },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response;\r\n })\r\n};\r\n\r\nexport const login = async ({ username, password }) => authApi.post('/login', { username, password });\r\n\r\nexport const register = async (params) => authApi.post('/register', params);\r\n\r\nexport const resetPasswordEmail = async (email) => authApi.post('/passwordResetEmail', email);\r\n\r\nexport const resetPassword = async (newPassword) => authApi.post('/passwordReset', newPassword);\r\n\r\nexport const sendVerificationEmail = async ({ emailTo }) => authApi.post('/sendverificationmail', { emailTo });\r\n\r\nexport const ValidateVerificationPin = async ({ userIdentifier, value }) => authApi.post('/verifyEmail', { userIdentifier, value });\r\n\r\nexport const getUserHasRoles = async (params) => authApi.post('/userhasroles', params);\r\n\r\nexport const updateUserHasRoles = async (params) => authApi.post('/updateuserhasroles', params);\r\n\r\nexport const getUserPermissionTree = async (params) => authApi.post('/userPermissionTree', params);\r\n\r\nexport const updateUserPermissionTree = async (params) => authApi.post('/updateuserPermissionTree', params);\r\n\r\nexport const getRolePermissionTree = async (params) => authApi.post('/RolePermissionTree', params);\r\n\r\nexport const updateRolePermissionTree = async (params) => authApi.post('/updateRolePermissionTree', params);\r\n\r\nexport const getMe = async () => authApi.get('/getUserDetails');\r\n\r\nexport const logout = async (params) => authApi.post('/logout', params);\r\n\r\nexport const refreshToken = async (params) => authApi.post('/refresh', params);\r\n\r\nexport const changeUsernameRequest = async (params) => authApi.post('/changeusernamerequest', params);\r\n\r\nexport const verifyUsernameRequest = async (params) => authApi.post('/verifyusernamerequest', params);\r\n\r\nexport const changePasswordRequest = async (params) => authApi.post('/changepassword', params);\r\n","import { useCallback } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useQueryClient } from 'react-query';\r\nimport axiosInstance from 'apis/axiosInstance';\r\nimport { RESET_MENU, LOGOUT } from 'store/actions';\r\nimport { store } from 'store';\r\nimport { auth } from 'apis';\r\nimport { useNavigate } from 'react-router-dom';\r\n\r\nexport const useLogout = () => {\r\n const dispatch = useDispatch();\r\n const queryClient = useQueryClient();\r\n const authState = useSelector((state) => state.auth);\r\n const navigate = useNavigate();\r\n const logout = useCallback(async () => {\r\n const refreshToken = authState.refreshToken;\r\n // notify backend to blacklist token\r\n await auth.logout({ refreshToken }).catch((err) => console.error(err));\r\n // reset store\r\n dispatch({ type: RESET_MENU });\r\n dispatch({ type: LOGOUT });\r\n // reset axios interceptors\r\n axiosInstance.interceptors.request.use((config) => {\r\n const state = store.getState();\r\n config.headers = {\r\n ...config.headers,\r\n Authorization: `Bearer ${state.auth.token}`\r\n };\r\n return config;\r\n });\r\n // cancel queries\r\n queryClient.cancelQueries('me');\r\n navigate('/');\r\n }, [authState, dispatch, queryClient]);\r\n\r\n return { logout };\r\n};\r\n","export default \"data:image/png;base64,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\"","/* eslint-disable */\r\nimport React, { useState, useEffect } from 'react';\r\n// mui\r\nimport { Stack, Tooltip, Typography, InputAdornment } from '@mui/material';\r\n\r\n// hook forms\r\nimport { useFormContext } from 'react-hook-form';\r\n\r\nimport { CssTextField } from './CssTextField';\r\nimport RowLabel from './RowLabel';\r\nimport ColumnLabel from './ColumnLabel';\r\nimport HelpIcon from '@mui/icons-material/HelpOutline';\r\nimport { useSelector } from 'react-redux';\r\nimport { toUppercase } from 'qubCommon/helperMethods/inputHelper';\r\nimport HelpOutlineIcon from '@mui/icons-material/HelpOutline';\r\n\r\nconst TextInput = (props) => {\r\n const {\r\n register,\r\n formState: { errors },\r\n setValue\r\n } = useFormContext();\r\n // const { errors } = formState;\r\n const { fieldsVariant } = useSelector((state) => state.customization);\r\n\r\n const {\r\n name,\r\n rules,\r\n rowDirection = false,\r\n label,\r\n labelWidth,\r\n variant = fieldsVariant ?? 'standard',\r\n defaultValue,\r\n innerRef,\r\n blurFn,\r\n tooltip,\r\n autoCapitalize = false,\r\n changeFn = () => {},\r\n startAdornment,\r\n endAdornment,\r\n ...other\r\n } = props;\r\n\r\n useEffect(() => {\r\n setValue(name, defaultValue);\r\n }, [setValue, name, defaultValue]);\r\n // const [helpColor, setHelpColor] = useState(\"black\");\r\n\r\n const handleChange = (e) => {\r\n const { value } = e.target;\r\n setValue(name, autoCapitalize ? toUppercase(value) : value);\r\n changeFn();\r\n };\r\n\r\n return (\r\n \r\n {variant === 'standard' && (\r\n <>\r\n {rowDirection ? ( // variant = 'standard'\r\n \r\n ) : (\r\n \r\n \r\n {tooltip && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n \r\n {startAdornment}\r\n \r\n ) : (\r\n startAdornment\r\n ),\r\n endAdornment:\r\n typeof endAdornment === 'string' ? (\r\n \r\n {endAdornment}\r\n \r\n ) : (\r\n endAdornment\r\n )\r\n // endAdornment: (\r\n // \r\n // \r\n // \r\n // )\r\n }}\r\n error={!!errors[name]}\r\n // onFocus={() => setHelpColor(\"orange\")}\r\n onBlur={() => {\r\n if (blurFn) blurFn();\r\n }}\r\n helperText={errors[name]?.message}\r\n required={rules?.required}\r\n size=\"small\"\r\n InputLabelProps={{ fontSize: '1.25em' }}\r\n fullWidth\r\n {...other}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default TextInput;\r\n","export const toUppercase = (value) => {\r\n return value.toLocaleUpperCase('el').replace(/([ΆΈΉΊΪΌΎΫΏ])/g, (match) => match.toLocaleLowerCase());\r\n};\r\n","import React, { createContext, useContext, useState, useEffect } from 'react';\r\nimport { generic } from 'apis';\r\n\r\nconst SettingsContext = createContext({});\r\n\r\n// eslint-disable-next-line react/prop-types\r\nconst SettingsProvider = ({ children }) => {\r\n const [data, setData] = useState(null);\r\n\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n await generic\r\n .getSettings()\r\n .then((res) => {\r\n setData(res.data);\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n };\r\n fetchData();\r\n }, []);\r\n\r\n return {children};\r\n};\r\n\r\nconst useSettingsContext = () => {\r\n const context = useContext(SettingsContext);\r\n return context;\r\n};\r\n\r\nexport { SettingsProvider, SettingsContext, useSettingsContext };\r\n","export default __webpack_public_path__ + \"static/media/csvIcon.bd5ee057.png\";","import React from 'react';\r\nimport { Checkbox, FormControlLabel, Typography, Stack } from '@mui/material';\r\nimport { useFormContext, useController } from 'react-hook-form';\r\n\r\nconst FormCheckbox = ({ name, label, defaultValue, ...other }) => {\r\n const { control } = useFormContext();\r\n const { field, fieldState } = useController({ name, control, defaultValue });\r\n\r\n return (\r\n \r\n \r\n }\r\n label={{label}}\r\n />\r\n {!!fieldState.error && {fieldState.error?.message}}\r\n \r\n );\r\n};\r\n\r\nexport default FormCheckbox;\r\n","import { memo, createContext, useEffect } from 'react';\r\nimport propTypes from 'prop-types';\r\nimport { useQuery } from 'react-query';\r\nimport { useSelector } from 'react-redux';\r\nimport { auth, person } from 'apis';\r\nimport { useLogout } from 'hooks/useLogOut';\r\nimport { useSnackbar } from 'notistack';\r\nimport { defineAbility } from '@casl/ability';\r\nimport { createContextualCan } from '@casl/react';\r\nimport { useNavigate } from 'react-router';\r\n\r\nconst UserContext = createContext();\r\n\r\nconst minutesToMSeconds = ({ minutes }) => minutes * 60 * 1000;\r\n\r\nconst UserProvider = memo(({ children }) => {\r\n const { isLoggedIn } = useSelector((state) => state.auth);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const navigate = useNavigate();\r\n const { logout } = useLogout();\r\n\r\n const meQuery = useQuery(\r\n 'me',\r\n async () => {\r\n try {\r\n const res = await auth.getMe();\r\n const organization = await person.getUserClub().catch((error) => console.error('org error', error));\r\n const formatedPermissions = res.permissions.map((dbPermission) => {\r\n const [subject, action] = dbPermission.split('.');\r\n return {\r\n action,\r\n subject\r\n };\r\n });\r\n const abilities = defineAbility((can) => {\r\n formatedPermissions.forEach((element) => {\r\n can(element.action, element.subject);\r\n });\r\n });\r\n return { ...res, organization, permissions: abilities };\r\n } catch (error) {\r\n console.info('res', error);\r\n if (error?.status === 400) {\r\n enqueueSnackbar('Your connection has expired, please login again', {\r\n variant: 'error'\r\n });\r\n logout();\r\n }\r\n if (error?.status === 503) {\r\n navigate('site-is-temporarily-unavailable');\r\n }\r\n throw error;\r\n }\r\n },\r\n {\r\n retry: 1,\r\n refetchInterval: minutesToMSeconds({ minutes: 120 })\r\n /// enabled: isLoggedIn\r\n }\r\n );\r\n\r\n useEffect(() => {\r\n if (isLoggedIn) {\r\n meQuery.refetch();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isLoggedIn]);\r\n return {children};\r\n});\r\n\r\nUserProvider.propTypes = {\r\n children: propTypes.node\r\n};\r\n\r\nexport { UserProvider, UserContext };\r\nexport const Can = createContextualCan(UserContext.Consumer);\r\n","// action - customization reducer\r\nexport const SET_MENU = '@customization/SET_MENU';\r\nexport const MENU_TOGGLE = '@customization/MENU_TOGGLE';\r\nexport const MENU_OPEN = '@customization/MENU_OPEN';\r\nexport const SET_FONT_FAMILY = '@customization/SET_FONT_FAMILY';\r\nexport const SET_BORDER_RADIUS = '@customization/SET_BORDER_RADIUS';\r\nexport const SET_LANGUAGE = '@customization/SET_LANGUAGE';\r\nexport const SET_CAPITALIZE_INPUT_FIELDS = '@customization/SET_CAPITALIZE_INPUT_FIELDS';\r\nexport const SET_THEME = '@customization/SET_THEME';\r\nexport const LOGIN = '@authentication/LOGIN';\r\nexport const LOGOUT = '@authentication/LOGOUT';\r\nexport const REFRESH_TOKEN = '@authentication/REFRESH_TOKEN';\r\nexport const VERIFY_EMAIL = '@authentication/VERIFY_EMAIL';\r\nexport const LOCK_MENU = '@menu/SET_MENU_LOCKED';\r\nexport const STORE_MENU = '@menu/STORE_MENU';\r\nexport const RESET_MENU = '@menu/RESET_MENU';\r\nexport const SET_BREADCRUMBS = '@breadcrumbs/SET_BREADCRUMBS';\r\nexport const RESET_BREADCRUMBS = '@breadcrumbs/RESET_BREADCRUMBS';\r\nexport const SIGNALR_DEVICE_PAIRED = '@signalr/DEVICE_PAIRED';\r\nexport const SIGNALR_DEVICE_UNPAIRED = '@signalr/DEVICE_UNPAIRED';\r\n","import propTypes from 'prop-types';\r\n\r\nconst greetings = (time) => (time.getHours() >= 12 ? 'GoodEvening' : 'GoodMorning');\r\n\r\ngreetings.propTypes = {\r\n time: propTypes.time\r\n};\r\n\r\nexport default greetings;\r\n","import propTypes from 'prop-types';\r\n\r\nconst dataURLtoFile = (dataurl, filename) => {\r\n const arr = dataurl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n\r\n // eslint-disable-next-line no-plusplus\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new File([u8arr], filename, { type: mime });\r\n};\r\n\r\ndataURLtoFile.propTypes = {\r\n dataurl: propTypes.File,\r\n filename: propTypes.string\r\n};\r\n\r\nexport default dataURLtoFile;\r\n","const imgSizesCalc = (aspect) => {\r\n let imgWidth = 0;\r\n let imgHeight = 0;\r\n let cropWidth = 0;\r\n let cropHeight = 0;\r\n let defaultImg = require('assets/images/default-user-image.png').default;\r\n if (aspect === 4 / 5) {\r\n imgWidth = 120;\r\n imgHeight = 150;\r\n cropWidth = 200;\r\n cropHeight = 250;\r\n defaultImg = require('assets/images/default-user-image.png').default;\r\n } else if (aspect === 16 / 9) {\r\n imgWidth = 200;\r\n imgHeight = 112.5;\r\n cropWidth = 320;\r\n cropHeight = 180;\r\n defaultImg = require('assets/images/no-image-icon.png').default;\r\n } else if (aspect === 1 / 1) {\r\n imgWidth = 150;\r\n imgHeight = 150;\r\n cropWidth = 150;\r\n cropHeight = 150;\r\n defaultImg = require('assets/images/no-image-icon.png').default;\r\n }\r\n\r\n return { imgWidth, imgHeight, cropWidth, cropHeight, defaultImg };\r\n};\r\n\r\nexport default imgSizesCalc;\r\n","const stringToSet = (s) => {\r\n const o = {};\r\n // eslint-disable-next-line no-plusplus\r\n for (let i = 0; i < s.length; i++) {\r\n o[s.charAt(i)] = 1;\r\n }\r\n return o;\r\n};\r\n\r\nconst grCaps = stringToSet('ΑΆΒΓΔΕΈΖΗΉΘΙΊΪΚΛΜΝΞΟΌΠΡΣΤΥΎΫΦΧΨΩΏ');\r\nconst replacements = [\r\n { greek: 'αι', greeklish: 'ai' },\r\n { greek: 'αί', greeklish: 'ai' },\r\n { greek: 'οι', greeklish: 'oi' },\r\n { greek: 'οί', greeklish: 'oi' },\r\n { greek: 'ου', greeklish: 'ou' },\r\n { greek: 'ού', greeklish: 'ou' },\r\n { greek: 'ει', greeklish: 'ei' },\r\n { greek: 'εί', greeklish: 'ei' },\r\n { greek: 'αυ', fivi: 1 },\r\n { greek: 'αύ', fivi: 1 },\r\n { greek: 'ευ', fivi: 1 },\r\n { greek: 'εύ', fivi: 1 },\r\n { greek: 'ηυ', fivi: 1 },\r\n { greek: 'ηύ', fivi: 1 },\r\n { greek: 'ντ', greeklish: 'nt' },\r\n { greek: 'μπ', bi: 1 },\r\n { greek: 'τσ', greeklish: 'ts' },\r\n { greek: 'τς', greeklish: 'ts' },\r\n { greek: 'ΤΣ', greeklish: 'ts' },\r\n { greek: 'τζ', greeklish: 'tz' },\r\n { greek: 'γγ', greeklish: 'ng' },\r\n { greek: 'γκ', greeklish: 'gk' },\r\n { greek: 'θ', greeklish: 'th' },\r\n { greek: 'χ', greeklish: 'ch' },\r\n { greek: 'ψ', greeklish: 'ps' }\r\n];\r\n\r\nconst fixCase = (text, mirror) => {\r\n if (grCaps[mirror.charAt(0)]) {\r\n if (mirror.length === 1 || grCaps[mirror.charAt(1)]) {\r\n return text.toUpperCase();\r\n // eslint-disable-next-line no-else-return\r\n } else {\r\n return text.charAt(0).toUpperCase() + text.substr(1);\r\n }\r\n // eslint-disable-next-line no-else-return\r\n } else {\r\n return text;\r\n }\r\n};\r\n\r\nexport const toGreeklish = (text) => {\r\n // Remove extraneus array element\r\n if (!replacements[replacements.length - 1]) replacements.pop();\r\n // Enchance replacements\r\n // eslint-disable-next-line no-cond-assign, no-plusplus\r\n for (let i = 0, replacement; (replacement = replacements[i]); i++) {\r\n replacements[replacement.greek] = replacement;\r\n }\r\n // Append single letter replacements\r\n const grLetters = 'αάβγδεέζηήθιίϊΐκλμνξοόπρσςτυύϋΰφχψωώ';\r\n const engLetters = 'aavgdeezii.iiiiklmnxooprsstyyyyf..oo';\r\n // eslint-disable-next-line no-plusplus\r\n for (let i = 0; i < grLetters.length; i++) {\r\n if (!replacements[grLetters.charAt(i)]) {\r\n replacements.push({ greek: grLetters.charAt(i), greeklish: engLetters.charAt(i) });\r\n }\r\n }\r\n // Enchance replacements, build expression\r\n let expression = [];\r\n // eslint-disable-next-line no-cond-assign, no-plusplus\r\n for (let i = 0, replacement; (replacement = replacements[i]); i++) {\r\n replacements[replacement.greek] = replacement;\r\n expression[i] = replacement.greek;\r\n }\r\n expression = new RegExp(expression.join('|'), 'gi');\r\n // Replace greek with greeklsh\r\n const greekSet = stringToSet(grLetters);\r\n const viSet = stringToSet('αβγδεζηλιmμνορω');\r\n text = text.replace(expression, function ($0, index) {\r\n const replacement = replacements[$0.toLowerCase()];\r\n if (replacement.bi) {\r\n const bi = greekSet[text.charAt(index - 1).toLowerCase()] && greekSet[text.charAt(index + 2).toLowerCase()] ? 'mp' : 'b';\r\n return fixCase(bi, $0);\r\n // eslint-disable-next-line no-else-return\r\n } else if (replacement.fivi) {\r\n const c1 = replacements[$0.charAt(0).toLowerCase()].greeklish;\r\n const c2 = viSet[text.charAt(index + 2).toLowerCase()] ? 'v' : 'f';\r\n return fixCase(c1 + c2, $0);\r\n } else {\r\n return fixCase(replacement.greeklish, $0 + text.charAt(index + $0.length));\r\n }\r\n });\r\n return text;\r\n};\r\n","import { toGreeklish } from './replaceText';\r\nimport { toUpper } from 'lodash';\r\n\r\n// based on https://www.passport.gov.gr/passports/GrElotConverter/GrElotConverter.html\r\nexport const grk2Latin = (text) => {\r\n // Convert a modern Greek characters text to ELOT743 (letter mapping).\r\n\r\n text = toGreeklish(text);\r\n\r\n // convert to uppercase\r\n text = toUpper(text);\r\n\r\n return text;\r\n};\r\n","export const ON = {\r\n invalidateQuery: 'invalidateQuery',\r\n actionResponse: 'actionResponse',\r\n devicePaired: 'devicePaired',\r\n deviceUnpaired: 'deviceUnpaired'\r\n};\r\n","import { Grid } from '@mui/material';\r\n\r\nconst ExplorerCard = ({ children }) => {\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nexport default ExplorerCard;\r\n","import format from 'date-fns/format';\r\nimport parse from 'date-fns/parse';\r\n\r\nfunction formatRequestObject(object) {\r\n /* eslint-disable */\r\n let formattedObject = [];\r\n for (const property in object) {\r\n formattedObject.push({ dataKey: property, dataValue: object[property] });\r\n }\r\n return formattedObject;\r\n}\r\n\r\nconst formatCritFldSearch = (data) => {\r\n const helpData = data?.filter((field) => field?.value1 || field?.defaultOperator === 'isNull' || field?.defaultOperator === 'isEmpty');\r\n\r\n return helpData?.map((field) => {\r\n const result = {};\r\n\r\n result.fldName = field?.fldSearchName;\r\n result.operator = field?.defaultOperator;\r\n if (field?.value1) result.value1 = field?.value1;\r\n if (field?.value2) result.value2 = field?.value2;\r\n if (field?.dataType === 'datetime') {\r\n if (field?.value1)\r\n try {\r\n result.value1 = format(parse(field?.value1, 'dd/MM/yyyy HH:mm', new Date()), 'yyyy-MM-dd HH:mm');\r\n } catch {\r\n console.log('comes from db');\r\n }\r\n if (field?.value2)\r\n try {\r\n result.value2 = format(parse(field?.value2, 'dd/MM/yyyy HH:mm', new Date()), 'yyyy-MM-dd HH:mm');\r\n } catch {\r\n console.log('comes from db');\r\n }\r\n }\r\n if (field?.dataType === 'date') {\r\n if (field?.value1)\r\n try {\r\n result.value1 = format(parse(field?.value1, 'dd/MM/yyyy', new Date()), 'yyyy-MM-dd');\r\n } catch {\r\n console.log('comes from db');\r\n }\r\n if (field?.value2)\r\n try {\r\n result.value2 = format(parse(field?.value2, 'dd/MM/yyyy', new Date()), 'yyyy-MM-dd');\r\n } catch {\r\n console.log('comes from db');\r\n }\r\n }\r\n return result;\r\n });\r\n};\r\n\r\n// format CriteriaValue List it is Generic\r\nconst formatValuesListSearch = (data) => {\r\n function containsTrue(array) {\r\n let result = false;\r\n array?.forEach((item) => {\r\n if (item?.isSelected) result = true;\r\n });\r\n return result;\r\n }\r\n const helpData = data?.filter((parent) => containsTrue(parent?.children));\r\n const result = helpData?.map((parent) => {\r\n const helpResult = parent?.children?.filter((child) => child.isSelected);\r\n const parentWithChildren = {};\r\n parentWithChildren.parentId = parent?.value;\r\n parentWithChildren.children = helpResult\r\n .map((child) => {\r\n return child?.value;\r\n })\r\n ?.toString();\r\n return parentWithChildren;\r\n });\r\n return result;\r\n};\r\n\r\nexport { formatRequestObject, formatCritFldSearch, formatValuesListSearch };\r\n","export default __webpack_public_path__ + \"static/media/no-image-icon.20c5b2e7.png\";","/* eslint-disable */\r\nimport { InputAdornment, CircularProgress, Tooltip, IconButton } from '@mui/material';\r\nimport { Search } from '@mui/icons-material';\r\nimport ClearIcon from '@mui/icons-material/Clear';\r\nimport { useQubBringValue2 } from 'context/BringValueContext/bringValueContext';\r\nimport { useFormContext } from 'react-hook-form';\r\nimport TextInput from './TextInput';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst BringValueInput = (props) => {\r\n const { dataKey, onClear, onSelect, name, searchField = 'searchValue', filters, ...other } = props;\r\n const { t } = useTranslation();\r\n const { openBringValue, dataLoading } = useQubBringValue2();\r\n const { getValues, setValue } = useFormContext();\r\n\r\n const handleSelect = (value) => {\r\n if (onSelect && typeof onSelect === 'function') onSelect(value);\r\n setValue(name, value[searchField]);\r\n setValue(`${name}Id`, value.Id);\r\n };\r\n\r\n const handleClear = () => {\r\n if (onClear && typeof onClear === 'function') onClear();\r\n setValue(name, null);\r\n setValue(`${name}Id`, null);\r\n };\r\n\r\n const hanleBringValue = () => {\r\n if (!other.disabled)\r\n openBringValue({\r\n dataKey,\r\n searchField,\r\n filters,\r\n searchValue: getValues(name),\r\n title: 'Sample',\r\n onSelect: (value) => {\r\n handleSelect(value);\r\n }\r\n });\r\n };\r\n\r\n const handleAutocomplete = (e) => {\r\n if (!e.nativeEvent?.inputType) hanleBringValue();\r\n };\r\n\r\n const handleChange = (e) => {\r\n if (!other.preventExecOnAutocomplete) {\r\n handleAutocomplete(e);\r\n }\r\n if (other.onChange && typeof other.onChange === 'function') other.onChange(e);\r\n };\r\n\r\n const handleKeyPress = (e) => {\r\n if (e.key === 'Enter') hanleBringValue();\r\n };\r\n\r\n return (\r\n handleKeyPress(e)}\r\n placeholder={t('TypeAndHitEnter')}\r\n fullWidth\r\n InputProps={{\r\n disableUnderline: true,\r\n startAdornment: (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ),\r\n endAdornment: !props?.disabled && (\r\n \r\n {dataLoading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )\r\n }}\r\n name={name}\r\n {...other}\r\n onChange={handleChange}\r\n />\r\n );\r\n};\r\n\r\nexport default BringValueInput;\r\n","// React Imports\r\nimport { useState, forwardRef, createRef, useEffect } from 'react';\r\n\r\n// MUI Imports\r\nimport { InputAdornment, IconButton, Stack, Tooltip } from '@mui/material';\r\nimport HelpOutlineIcon from '@mui/icons-material/HelpOutline';\r\nimport { DateRangeSharp } from '@mui/icons-material';\r\n\r\n// Other Libraries\r\nimport format from 'date-fns/format';\r\nimport { useSelector } from 'react-redux';\r\nimport DatePicker from 'react-datepicker';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\n\r\n// Project Imports\r\nimport { formatToShowDate, inDateRange } from 'qubCommon/helperMethods/dateHelper';\r\nimport { CssTextField } from './CssTextField';\r\nimport { parse } from 'date-fns';\r\nimport RowLabel from './RowLabel';\r\nimport ColumnLabel from './ColumnLabel';\r\nimport { useFormContext, useController } from 'react-hook-form';\r\n\r\nconst DateInput = ({\r\n defaultValue = '',\r\n dateInUse = false,\r\n locked = false,\r\n label = '',\r\n labelWidth = 120,\r\n variant = 'standard',\r\n cmpyrsValidation = false,\r\n rowDirection = false,\r\n name,\r\n blurFn,\r\n tooltip,\r\n hasReset = false,\r\n changeFn = () => {},\r\n ...other\r\n}) => {\r\n const dateFormat = {\r\n format: 'dd/MM/yyyy',\r\n d: 0,\r\n m: 1,\r\n y: 2\r\n };\r\n\r\n const dateFrom = '2022-01-01';\r\n const dateTo = '2022-12-31';\r\n const { control, setValue, getValues } = useFormContext();\r\n const { field, fieldState } = useController({ name, control, defaultValue });\r\n const [input, setInput] = useState(defaultValue ? format(new Date(defaultValue), dateFormat?.format) : '');\r\n const [datePickerValue, setDatePickerValue] = useState(\r\n defaultValue ? format(new Date(defaultValue), dateFormat?.format) : format(new Date(), dateFormat?.format)\r\n );\r\n const dateRef = createRef();\r\n\r\n const CustomDatePicker = forwardRef(({ value, onClick }, ref) => (\r\n \r\n \r\n \r\n ));\r\n\r\n useEffect(() => {\r\n if (defaultValue) {\r\n setValue(name, defaultValue, { shouldDirty: true });\r\n setInput(format(new Date(defaultValue), dateFormat?.format));\r\n }\r\n }, [defaultValue]);\r\n\r\n useEffect(() => {\r\n if (hasReset)\r\n try {\r\n setInput(format(new Date(getValues(name)), dateFormat?.format));\r\n } catch (e) {\r\n setInput('');\r\n console.log(e);\r\n }\r\n }, [getValues(name)]);\r\n\r\n const handleDatePickerChange = (e) => {\r\n let eValid;\r\n if (dateInUse) eValid = inDateRange(e.getFullYear(), e.getMonth(), e.getDate(), dateFrom, dateTo, dateFormat?.format);\r\n else eValid = format(new Date(e.getFullYear(), e.getMonth(), e.getDate()), dateFormat?.format);\r\n const eFormatted = parse(eValid, dateFormat?.format, new Date());\r\n setInput(format(eFormatted, dateFormat?.format));\r\n setValue(name, format(eFormatted, 'yyyy-MM-dd'), {\r\n shouldDirty: true\r\n });\r\n setDatePickerValue(format(eFormatted, dateFormat?.format));\r\n };\r\n\r\n return (\r\n \r\n {variant === 'standard' && !other.hidden && (\r\n <>\r\n {rowDirection ? ( // variant = 'standard'\r\n \r\n ) : (\r\n \r\n \r\n {tooltip && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n {\r\n if (input) {\r\n const datePicked = formatToShowDate(input, dateFormat, defaultValue, dateInUse, dateFrom, dateTo);\r\n setInput(datePicked ?? '');\r\n setValue(name, datePicked ? format(parse(datePicked, dateFormat.format, new Date()), 'yyyy-MM-dd') : null, {\r\n shouldDirty: true\r\n });\r\n setDatePickerValue(datePicked ?? format(new Date(), dateFormat?.format));\r\n }\r\n\r\n if (blurFn) blurFn();\r\n }}\r\n value={input}\r\n error={!!fieldState.error}\r\n helperText={fieldState.error?.message}\r\n onChange={(e) => {\r\n setInput(e?.target?.value);\r\n changeFn(e?.target?.value);\r\n }}\r\n InputProps={\r\n locked\r\n ? { disableUnderline: true }\r\n : {\r\n disableUnderline: true,\r\n endAdornment: (\r\n \r\n handleDatePickerChange(e)}\r\n customInput={}\r\n showYearDropdown\r\n />\r\n \r\n )\r\n }\r\n }\r\n {...other}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default DateInput;\r\n","/* eslint-disable */\r\n// React Imports\r\nimport { useState, forwardRef, createRef, useEffect } from 'react';\r\nimport { useFormContext } from 'react-hook-form';\r\n\r\n// MUI Imports\r\nimport { InputAdornment, IconButton, ThemeProvider, Stack, Tooltip } from '@mui/material';\r\nimport HelpOutlineIcon from '@mui/icons-material/HelpOutline';\r\nimport { DateRangeSharp } from '@mui/icons-material';\r\n\r\n// Other Libraries\r\nimport format from 'date-fns/format';\r\nimport { useSelector } from 'react-redux';\r\nimport DatePicker from 'react-datepicker';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\n\r\n// Project Imports\r\nimport { formatToShowDateTime } from 'qubCommon/helperMethods/dateHelper';\r\nimport { CssTextField } from './CssTextField';\r\nimport { parse } from 'date-fns';\r\nimport RowLabel from './RowLabel';\r\nimport ColumnLabel from './ColumnLabel';\r\n\r\nconst DateTimeInput = (props) => {\r\n const { dateFormat } = useSelector((state) => state.auth);\r\n const dateTimeFormat = dateFormat?.format + ' HH:mm';\r\n const { setValue } = useFormContext();\r\n const { fieldsVariant } = useSelector((state) => state.customization);\r\n\r\n const {\r\n defaultDate = '',\r\n defaultTime = '',\r\n locked = false,\r\n label = '',\r\n cmpyrsValidation = false,\r\n variant = fieldsVariant ?? 'standard',\r\n name,\r\n labelWidth = 120,\r\n rowDirection = false,\r\n tooltip,\r\n ...other\r\n } = props;\r\n\r\n const [input, setInput] = useState(defaultDate ? format(new Date(defaultDate + ' ' + defaultTime), dateTimeFormat) : '');\r\n const [datePickerValue, setDatePickerValue] = useState(\r\n defaultDate ? format(new Date(defaultDate), dateFormat?.format) : format(new Date(), dateFormat?.format)\r\n );\r\n const dateRef = createRef();\r\n\r\n const CustomDatePicker = forwardRef(({ value, onClick }, ref) => (\r\n \r\n \r\n \r\n ));\r\n\r\n useEffect(() => {\r\n if (defaultDate && defaultTime) setValue(name, defaultDate + ' ' + defaultTime);\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n {variant === 'standard' && (\r\n <>\r\n {rowDirection ? ( // variant = 'standard'\r\n \r\n ) : (\r\n \r\n \r\n {tooltip && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n {\r\n let dateTimePicked = formatToShowDateTime(input, dateFormat, dateTimeFormat, defaultDate, defaultTime);\r\n setInput(dateTimePicked ?? '');\r\n setValue(name, format(parse(dateTimePicked, dateFormat.format + ' HH:mm', new Date()), 'yyyy-MM-dd HH:mm'));\r\n setDatePickerValue(\r\n format(parse(dateTimePicked, dateTimeFormat, new Date()), dateFormat?.format) ??\r\n format(new Date(), dateFormat?.format)\r\n );\r\n }}\r\n style={{ margin: 1 }}\r\n value={input}\r\n onChange={(e) => setInput(e?.target?.value)}\r\n InputProps={\r\n locked\r\n ? { disableUnderline: true }\r\n : {\r\n disableUnderline: true,\r\n endAdornment: (\r\n \r\n {\r\n setInput(format(e, dateFormat?.format) + ' ' + input?.slice(-5));\r\n setValue(name, format(e, dateFormat?.format) + ' ' + input?.slice(-5));\r\n setDatePickerValue(format(e, dateFormat?.format));\r\n }}\r\n customInput={}\r\n showYearDropdown\r\n />\r\n \r\n )\r\n }\r\n }\r\n {...other}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default DateTimeInput;\r\n","export const ProjectTables = {\r\n Organization: 1,\r\n Person: 2,\r\n OrganizationCouncil: 3,\r\n TransHeader: 4,\r\n Application: 6,\r\n PersonFunction: 7,\r\n EmailMessages: 8,\r\n Competition: 9,\r\n CompetitionDetails: 10,\r\n AthletesParticiaption: 11,\r\n Sites: 12\r\n};\r\n\r\nexport const FileTypes = {\r\n png: 'image/png',\r\n pdf: 'application/pdf',\r\n jpg: 'image/jpeg'\r\n};\r\n\r\nexport const DBFileTypes = {\r\n Certificate: 1,\r\n Avatar: 2,\r\n Id: 4,\r\n AthleteId: 5,\r\n HealthId: 8,\r\n DanCup: 10,\r\n Contract: 11,\r\n Recruitment: 12,\r\n JobLicense: 13,\r\n PaymentReceipt: 14,\r\n Council: 15,\r\n ETU: 16,\r\n AssistantCoachDocument: 17\r\n};\r\n\r\nexport const FileTypesConfigDataKeys = {\r\n FunctionId: 'FunctionId',\r\n EntityTypeId: 'EntityTypeId',\r\n ApplicationTypeId: 'ApplicationTypeId',\r\n Competitions: 'Competitions',\r\n ApplicationTypeId_FunctionId: 'ApplicationTypeId-FunctionId'\r\n};\r\n\r\nexport const FilesMetaDataFields = {\r\n lblDateFrom: 'lblDateFrom',\r\n lblDateTo: 'lblDateTo',\r\n lblIssuedAt: 'lblIssuedAt',\r\n lblIssuedBy: 'lblIssuedBy',\r\n lblNumber: 'lblNumber',\r\n lblComments: 'lblComments',\r\n lkCommon: 'lkCommon'\r\n};\r\n\r\nexport const EmailFilters = {\r\n Sent: 600,\r\n Drafts: 610\r\n};\r\n\r\nexport const OptionDataKey = {\r\n Organizations: 'Organizations',\r\n Functions: 'Functions',\r\n Roles: 'Roles'\r\n};\r\n\r\nexport const EntityType = {\r\n Federation: 100,\r\n RegionalCommittee: 110,\r\n Union: 120,\r\n Club: 130,\r\n Department: 140,\r\n Athletes: 200,\r\n Coach: 210,\r\n Refereed: 220,\r\n Administration: 230,\r\n Stuff: 250\r\n};\r\n\r\nexport const ApplicationType = {\r\n AthleteNew: 100,\r\n AthleteClubRenewal: 101,\r\n AthleteTransfer: 102,\r\n AthleteNewHealthCertificate: 103,\r\n AthleteNewBooklet: 104,\r\n AthleteNewCard: 105,\r\n OfficalNew: 200,\r\n ContractRenewal: 201,\r\n ClubNew: 300,\r\n ClubUpdate: 301,\r\n ClubCertificates: 302,\r\n Renewal: 500,\r\n OfficalNewDegree: 501\r\n};\r\n\r\nexport const AppTypeAdditionalTransfers = {\r\n AthleteTransfer2: 113,\r\n AthleteTransfer3: 114,\r\n AthleteTransfer4: 115,\r\n AthleteTransfer5: 116,\r\n AthleteTransfer6: 117,\r\n AthleteTransfer7: 118,\r\n AthleteTransfer8: 119,\r\n AthleteTransfer9: 120,\r\n AthleteTransfer10: 121,\r\n AthleteTransfer11: 123,\r\n AthleteTransfer12: 124\r\n};\r\n\r\nexport const QubDataTypes = {\r\n object: 0,\r\n string: 1,\r\n number: 2,\r\n boolean: 3,\r\n date: 4,\r\n array: 5,\r\n price: 6,\r\n percentage: 7,\r\n status: 8,\r\n url: 9,\r\n dropdown: 10,\r\n guid: 11\r\n};\r\nexport const QueryStatus = {\r\n idle: 'idle',\r\n loading: 'loading',\r\n success: 'success',\r\n error: 'error'\r\n};\r\n\r\nexport const TransactionStatus = {\r\n submitted: 420,\r\n paid: 430,\r\n canceled: 490,\r\n rechecked: 500,\r\n pendingPayment: 425,\r\n pending: 410\r\n};\r\n\r\nexport const PaymentMethod = {\r\n card: {\r\n id: 1,\r\n name: 'PaymentByCard'\r\n },\r\n bank: {\r\n id: 2,\r\n name: 'PaymentByBank'\r\n }\r\n};\r\n","import { memo } from 'react';\r\n\r\n// mui\r\nimport { Stack, Typography, useMediaQuery, useTheme, Skeleton } from '@mui/material';\r\n\r\n// project impors\r\nimport { withSkeleton, Spice } from '@qubiteq/qublib';\r\n\r\n// utils\r\nimport { greetings } from 'utils';\r\n\r\n// i18n\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nimport PropTypes from 'prop-types';\r\n\r\nexport const FullNameBaseComponent = memo((props) => {\r\n const { firstName, lastName } = props;\r\n const theme = useTheme();\r\n const matchUpMd = useMediaQuery(theme.breakpoints.up('sm'));\r\n const date = new Date();\r\n const { t } = useTranslation();\r\n\r\n // Responsive Text Size\r\n const textVariant = () => (matchUpMd ? 'h2' : 'h4');\r\n return (\r\n \r\n \r\n {`${t(greetings(date), greetings(date))},`}\r\n \r\n {`${firstName} ${lastName}`}\r\n \r\n \r\n );\r\n});\r\n\r\nFullNameBaseComponent.propTypes = {\r\n firstName: PropTypes.string,\r\n lastName: PropTypes.string\r\n};\r\n\r\nexport const FullNameSkeleton = () => (\r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst FullName = withSkeleton(FullNameBaseComponent, FullNameSkeleton);\r\n\r\nexport default FullName;\r\n","import { Button, DialogTitle, Dialog, DialogContent, DialogActions, DialogContentText } from '@mui/material';\r\nimport 'react-image-crop/dist/ReactCrop.css';\r\nimport propTypes from 'prop-types';\r\nimport { useEffect, useMemo, useState } from 'react';\r\nimport { debounce } from 'lodash';\r\n\r\nconst CustomDialog = ({ open, onClose, onAccept, meta, content, btnDisableOnClick = true, ...props }) => {\r\n const [buttonsDisabled, setButtonsDisabled] = useState(false);\r\n\r\n useEffect(() => {\r\n setButtonsDisabled(false);\r\n }, [open]);\r\n\r\n const debouncedOnAccept = useMemo(onAccept && typeof onAccept === 'function' ? () => debounce(onAccept, 300) : () => {}, [onAccept]);\r\n\r\n const debouncedOnClose = useMemo(onClose && typeof onClose === 'function' ? () => debounce(onClose, 300) : () => {}, [onClose]);\r\n\r\n const handleAccept = () => {\r\n setButtonsDisabled(true);\r\n debouncedOnAccept();\r\n };\r\n\r\n const handleClose = async () => {\r\n setButtonsDisabled(true);\r\n debouncedOnClose();\r\n };\r\n\r\n return (\r\n
\r\n \r\n {meta.title}\r\n \r\n {meta.description}\r\n {content}\r\n {props.children}\r\n \r\n \r\n \r\n \r\n {meta.cancel}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nCustomDialog.propTypes = {\r\n open: propTypes.bool,\r\n onClose: propTypes.func,\r\n onAccept: propTypes.func,\r\n meta: propTypes.object,\r\n content: propTypes.element,\r\n props: propTypes.any\r\n};\r\n\r\nexport default CustomDialog;\r\n","import { useNavigate } from 'react-router-dom';\r\nimport { Box } from '@mui/material';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst Logo = ({ dimensions, logo, link, styles }) => {\r\n const navigate = useNavigate();\r\n return (\r\n {\r\n if (link) {\r\n navigate(link);\r\n }\r\n }}\r\n sx={{\r\n width: dimensions.width,\r\n height: dimensions.height,\r\n backgroundImage: `url(${logo})`,\r\n backgroundSize: 'cover',\r\n cursor: link ? 'pointer' : 'default',\r\n ...styles\r\n }}\r\n />\r\n );\r\n};\r\n\r\nLogo.propTypes = {\r\n dimensions: PropTypes.object,\r\n logo: PropTypes.string,\r\n link: PropTypes.string,\r\n styles: PropTypes.object\r\n};\r\n\r\nLogo.defaultProps = {\r\n dimensions: { width: 200, height: 200 }\r\n};\r\n\r\nexport default Logo;\r\n","import { Stack, Typography } from '@mui/material';\r\nimport PropTypes from 'prop-types';\r\nimport { Spice } from '@qubiteq/qublib';\r\n\r\nconst PageTitle = ({ title }) => (\r\n \r\n \r\n \r\n {title}\r\n \r\n \r\n);\r\n\r\nPageTitle.propTypes = {\r\n title: PropTypes.string\r\n};\r\n\r\nexport default PageTitle;\r\n","// mui\r\nimport { Stack, Grid, Typography, Box, MenuItem, MenuList, ListItemIcon } from '@mui/material';\r\n\r\nimport { useTranslation } from 'react-i18next';\r\nimport CircleIcon from '@mui/icons-material/Circle';\r\nimport { useTheme } from '@emotion/react';\r\n\r\nconst CasualCard = ({ props, handleClick }) => {\r\n const { t } = useTranslation();\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n \r\n \r\n {t(`${props?.Label}`)}\r\n \r\n \r\n \r\n \r\n {props?.Data?.map((value, index) => (\r\n handleClick(value)}>\r\n {/* \r\n \r\n */}\r\n \r\n {value.child[1].Value} / {value.child[0].Value}\r\n \r\n {t(`${value.Datakey}`)}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n {t(`Confirmed`)} / {t(`Total`)}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default CasualCard;\r\n","// mui\r\nimport { Grid, Typography, Box, Avatar, Chip, Button, Stack, IconButton, Divider, useTheme } from '@mui/material';\r\nimport ArrowCircleRightIcon from '@mui/icons-material/ArrowCircleRight';\r\nimport { useTranslation } from 'react-i18next';\r\nimport Conditional from 'common/Conditional';\r\nimport { useMe } from 'hooks/useMe';\r\nimport { useSnackbar } from 'notistack';\r\n\r\nconst AvatarCard = ({ props, avatar, handleViewProfile }) => {\r\n const { t } = useTranslation();\r\n const { whoami } = useMe();\r\n const theme = useTheme();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n return (\r\n \r\n \r\n \r\n {t(`${props?.Label}`)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* {props?.Data && (\r\n \r\n {`${props?.Data[0]?.userName?.split(' ')[props?.Data[0]?.userName?.split(' ').length - 1][0]}\r\n ${props?.Data[0]?.userName?.split(' ')[0][0]}`}\r\n \r\n )} */}\r\n \r\n {whoami?.firstName[0]} {whoami?.lastName[0]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props?.Data && (\r\n {`${props?.Data[0]?.userName.split(' ')[1]} ${\r\n props?.Data[0]?.userName.split(' ')[0]\r\n }`}\r\n )}\r\n {whoami?.email}\r\n {\r\n try {\r\n handleViewProfile(props?.Data[0]?.userId);\r\n } catch {\r\n enqueueSnackbar(t('AvatarUserError'), {\r\n variant: 'error'\r\n });\r\n }\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {whoami?.personFunction[0]?.description}\r\n {whoami?.organization?.organizationName}\r\n \r\n \r\n \r\n \r\n \r\n {whoami?.roles.map((item, index) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AvatarCard;\r\n\r\n// ${props?.Data[0]?.userOrganization}\r\n","// mui\r\nimport { Grid, Typography, Box, MenuItem, Icon, Select, FormControl, useTheme } from '@mui/material';\r\nimport { useEffect, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport OutlinedInput from '@mui/material/OutlinedInput';\r\nimport NumbersRoundedIcon from '@mui/icons-material/NumbersRounded';\r\n\r\nimport '@grapecity/wijmo.styles/wijmo.css';\r\n//\r\nimport * as wjChart from '@grapecity/wijmo.react.chart';\r\nimport * as wjChartAnimate from '@grapecity/wijmo.react.chart.animation';\r\nimport { Palettes } from '@grapecity/wijmo.chart';\r\nimport { BreakfastDining } from '@mui/icons-material';\r\nimport { useNavigate } from 'react-router';\r\n\r\nconst StackedBarChartCard = ({ props, palette, chartInitialized }) => {\r\n const { t } = useTranslation();\r\n const theme = useTheme();\r\n const [dataset, setDataset] = useState();\r\n const [classes, setClasses] = useState();\r\n\r\n useEffect(() => {\r\n const maxObject = props?.Data?.reduce((a, b) => (a.length > b.length ? a : b));\r\n const labels =\r\n maxObject === undefined ? [] : Object?.keys(maxObject)?.filter((key) => key !== 'Datakey' && key !== 'LoggingDatakey');\r\n setClasses(labels);\r\n\r\n const translatedDataset = props?.Data?.map((datum) => {\r\n let navUrl = null;\r\n switch (datum?.Datakey) {\r\n case 'Athletes':\r\n navUrl = '/applications/athletes/view';\r\n break;\r\n case 'Officials':\r\n navUrl = '/applications/officials';\r\n break;\r\n case 'Clubs':\r\n navUrl = '/applications/clubs';\r\n break;\r\n default:\r\n break;\r\n }\r\n return {\r\n ...datum,\r\n Datakey: t(`${datum?.Datakey}`),\r\n nav: navUrl\r\n };\r\n });\r\n\r\n setDataset(translatedDataset);\r\n }, [t]);\r\n\r\n return (\r\n \r\n \r\n \r\n {t(`${props?.Label}`)}\r\n \r\n \r\n \r\n {value}`}\r\n style={{ border: '0px' }}\r\n initialized={chartInitialized}\r\n >\r\n \r\n {classes?.map((elem, index) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default StackedBarChartCard;\r\n","import React, { createContext, useRef, useState, useContext, useEffect, useCallback } from 'react';\r\nimport { Dialog, DialogContent, DialogContentText, DialogActions, DialogTitle, Button, Stack } from '@mui/material';\r\nimport propTypes from 'prop-types';\r\nimport { useForm } from 'react-hook-form';\r\nimport { DynamicForm, useYupValidationResolver } from '@qubiteq/qublib';\r\n\r\nconst DialogContext = createContext();\r\n\r\nfunction useDialog() {\r\n const dialogContext = useContext(DialogContext);\r\n const handleSubmit = dialogContext.form?.handleSubmit;\r\n const reset = dialogContext.form?.reset;\r\n\r\n const openDialog = (props) => {\r\n const { title, description, acceptButtonTitle, cancelButtonTitle, onClose, onAccept, form, validationSchema, render, watchField } =\r\n props;\r\n\r\n dialogContext.setOpen(true);\r\n dialogContext.setTitle(title);\r\n dialogContext.setDescription(description);\r\n dialogContext.setAcceptButtonTitle(acceptButtonTitle);\r\n dialogContext.setCancelButtonTitle(cancelButtonTitle);\r\n dialogContext.setFormJSON(form);\r\n dialogContext.setValidationSchema(validationSchema);\r\n if (watchField) {\r\n dialogContext.watch(watchField);\r\n }\r\n dialogContext.mutateOnClose(() => {\r\n if (onClose) {\r\n onClose();\r\n }\r\n dialogContext.watchersUnsubscribe();\r\n dialogContext.mutateRender(null);\r\n dialogContext.setOpen(false);\r\n if (reset !== undefined || reset !== null) {\r\n dialogContext.setFormJSON([]);\r\n reset({});\r\n }\r\n });\r\n if (onAccept) {\r\n dialogContext.mutateOnAccept(\r\n handleSubmit((data) => {\r\n onAccept(data);\r\n dialogContext.setOpen(false);\r\n if (reset !== undefined || reset !== null) {\r\n reset({});\r\n }\r\n })\r\n );\r\n }\r\n if (render) {\r\n dialogContext.mutateRender(render);\r\n }\r\n };\r\n // dialogContext.onClose.current();\r\n return { openDialog, form: dialogContext.form, setForm: dialogContext.setFormJSON, formJSON: dialogContext.formJSON };\r\n}\r\n\r\nconst DialogProvider = ({ children }) => {\r\n const [open, setOpen] = useState(false);\r\n const [title, setTitle] = useState('');\r\n const [description, setDescription] = useState('');\r\n const [acceptButtonTitle, setAcceptButtonTitle] = useState('');\r\n const [cancelButtonTitle, setCancelButtonTitle] = useState('');\r\n const [formJSON, setFormJSON] = useState([]);\r\n const [validationSchema, setValidationSchema] = useState(null);\r\n const [render, setRender] = useState(null);\r\n const onAccept = useRef(() => setOpen(false));\r\n const onClose = useRef(() => setOpen(false));\r\n const watchers = useRef([]);\r\n\r\n const mutateOnAccept = (callBack) => {\r\n onAccept.current = callBack;\r\n };\r\n\r\n const mutateOnClose = (callBack) => {\r\n onClose.current = callBack;\r\n };\r\n\r\n const mutateRender = useCallback((render) => {\r\n setRender(render);\r\n }, []);\r\n\r\n const watchersUnsubscribe = () => {\r\n watchers.current.forEach((watcher) => watcher.unsubscribe());\r\n };\r\n\r\n const resolver = useYupValidationResolver(validationSchema);\r\n\r\n const form = useForm({ resolver: validationSchema ? resolver : null });\r\n\r\n const watch = (watchFunction) => {\r\n const watcher = form.watch(watchFunction);\r\n watchers.current.push(watcher);\r\n };\r\n\r\n useEffect(() => {\r\n return watchersUnsubscribe;\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {title}\r\n \r\n {description}\r\n \r\n {formJSON && }\r\n \r\n {render}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n\r\nDialogProvider.propTypes = {\r\n children: propTypes.node\r\n};\r\n\r\nconst DialogConsumer = DialogContext.Consumer;\r\n\r\nexport { DialogProvider, DialogConsumer, useDialog };\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const apiEntitiesApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/apiEntities${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n // if (res?.data?.error || res?.data?.status === 'error') throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/apiEntities${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getData = async (params) => apiEntitiesApi.post('/getData', params);\r\n","import { createContext, useContext, useEffect } from 'react';\r\nimport { HubConnectionBuilder, LogLevel } from '@microsoft/signalr';\r\nimport { SIGNALR_PATH } from 'constants/appUrls';\r\nimport { useDispatch } from 'react-redux';\r\nimport { store } from 'store';\r\nimport { useQueryClient } from 'react-query';\r\nimport { ON } from 'enums/signalrConnection';\r\nimport { SIGNALR_DEVICE_UNPAIRED } from 'store/actions';\r\n\r\nconst MobileConnectionContext = createContext({});\r\n\r\nconst MobileConnectionProvider = (props) => {\r\n const { children } = props;\r\n const url = `${process.env.REACT_APP_BASE_URL}${SIGNALR_PATH}`;\r\n const state = store.getState();\r\n const dispatch = useDispatch();\r\n // const signalrState = useSelector((state) => state.signalr);\r\n const connection = new HubConnectionBuilder()\r\n .configureLogging(LogLevel.Information)\r\n .withUrl(url, { accessTokenFactory: () => state.auth.token })\r\n .withAutomaticReconnect()\r\n .build();\r\n\r\n const client = useQueryClient();\r\n\r\n const handleOnInvalidateQuery = (data) => {\r\n client.invalidateQueries(data);\r\n };\r\n\r\n /* const handleOnDevicePaired = () => {\r\n console.log('device paired');\r\n }; */\r\n\r\n const handleOnDeviceUnpaired = () => {\r\n dispatch({ type: SIGNALR_DEVICE_UNPAIRED });\r\n };\r\n\r\n useEffect(() => {\r\n if (connection && connection.state === 'Disconnected') {\r\n connection.start();\r\n }\r\n\r\n // connection.on(ON.devicePaired, handleOnDevicePaired);\r\n connection.on(ON.deviceUnpaired, handleOnDeviceUnpaired);\r\n connection.on(ON.invalidateQuery, handleOnInvalidateQuery);\r\n\r\n return () => {\r\n connection.stop();\r\n };\r\n }, [connection]);\r\n\r\n return {children};\r\n};\r\n\r\nconst useMobileConnection = () => {\r\n const mobileConnectionContext = useContext(MobileConnectionContext);\r\n if (!mobileConnectionContext) {\r\n throw new Error('useMobileConnection must be used within a MobileConnectionProvider');\r\n }\r\n return mobileConnectionContext;\r\n};\r\n\r\nexport { MobileConnectionProvider, useMobileConnection };\r\n","import { FlexGrid, FlexGridColumnGroup, FlexGridCellTemplate } from '@grapecity/wijmo.react.grid';\r\nimport { FlexGridFilter } from '@grapecity/wijmo.react.grid.filter';\r\nimport { wijmoExtendLastColumn } from 'qubCommon/wijmoHelpers/columnMethods';\r\n\r\nconst QubGroupGrid = (props) => {\r\n const { gridColumns, gridData, initialized, editableColumns = [], children, gridLoadedRows } = props;\r\n return (\r\n wijmoExtendLastColumn(flex, gridColumns, false, true)}\r\n itemsSource={gridData}\r\n autoSizeMode={1}\r\n alternatingRowStep={0}\r\n {...props}\r\n className=\"explorer-grid\"\r\n >\r\n {children}\r\n \r\n {gridColumns?.length > 0 &&\r\n gridColumns.map((columnGroup, index) => {\r\n if (columnGroup?.children?.length > 0)\r\n return (\r\n \r\n {columnGroup?.children?.map((child) => (\r\n \r\n {child.cellTemplates?.map((ct, i) => (\r\n ct.template(ctx, child)}\r\n />\r\n ))}\r\n \r\n ))}\r\n \r\n );\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport default QubGroupGrid;\r\n","import format from 'date-fns/format';\r\n\r\nexport const convertGridToMobile = (gridRef, flex, columns) => {\r\n const groups = {};\r\n const visibleColumns = {};\r\n const formatColumns = {};\r\n try {\r\n if (gridRef.current) {\r\n gridRef.current.columns.forEach((c) => {\r\n visibleColumns[c?.binding] = c?.visible;\r\n if (c?.format) formatColumns[c?.binding] = c?.format;\r\n });\r\n /* eslint-disable */\r\n columns.forEach((group) => {\r\n groups[`group${group?.grpId}`] = group?.children\r\n .map((child) => {\r\n if (visibleColumns[child?.fldName]) return child?.fldName;\r\n })\r\n .filter((element) => element !== undefined);\r\n });\r\n const mobileData = gridRef.current.itemsSource;\r\n Object.keys(groups).forEach((group) => {\r\n if (groups[group]?.length === 0) delete groups[group];\r\n });\r\n const mobileGridData = mobileData.map((item) => {\r\n const newObj = {};\r\n\r\n Object.keys(groups).forEach((group) => {\r\n newObj[group] = groups[group]\r\n .filter((key) => {\r\n if (key in item) {\r\n return item[key];\r\n }\r\n })\r\n .map((key) => {\r\n if (key in item) {\r\n try {\r\n if (formatColumns?.[key] === 'date') {\r\n return format(new Date(item[key]), 'dd/MM/yyyy');\r\n }\r\n if (formatColumns?.[key] === 'datetime') return format(new Date(item[key]), 'dd/MM/yyyy HH:mm');\r\n } catch {\r\n return item[key];\r\n }\r\n return item[key];\r\n } else {\r\n return null;\r\n }\r\n });\r\n });\r\n newObj.allData = item;\r\n return newObj;\r\n });\r\n const formatedMobileGridData = mobileGridData.map((row) => {\r\n let htmlString = '';\r\n let allData = {};\r\n const formatedRow = {};\r\n Object.keys(row).forEach((group, index) => {\r\n if (group !== 'allData') {\r\n if (index !== 0) htmlString += `

${row[group].join(', ')}


`;\r\n else\r\n htmlString += `

${row[group]\r\n .slice(0, 2)\r\n .join(', ')}, ${row[group]\r\n .slice(2, row[group]?.length)\r\n .join(', ')}


`;\r\n }\r\n if (group === 'allData') allData = row[group];\r\n });\r\n formatedRow.htmlString = htmlString;\r\n formatedRow.allData = allData;\r\n formatedRow.supportLine = 'Support';\r\n return formatedRow;\r\n });\r\n flex.itemsSource = formatedMobileGridData;\r\n }\r\n } catch {\r\n console.log('error not ready yet');\r\n }\r\n flex.columns.forEach((col) => {\r\n col.visible = col.index === 0;\r\n col.width = '*';\r\n });\r\n};\r\n","export const styleExplorer = {\r\n main: { height: '100%', padding: 2.5 },\r\n content: {\r\n display: 'flex',\r\n flex: 1,\r\n overflowY: 'auto',\r\n flexDirection: 'column',\r\n padding: 0,\r\n marginTop: 2\r\n }\r\n};\r\n","import { createContext, useContext, useState, useRef } from 'react';\r\nimport { Stack, Box, Typography, Button } from '@mui/material';\r\nimport ErrorIcon from '@mui/icons-material/Error';\r\nimport WarningIcon from '@mui/icons-material/Warning';\r\nimport InfoIcon from '@mui/icons-material/Info';\r\nimport QuestionMarkOutlinedIcon from '@mui/icons-material/QuestionMarkOutlined';\r\nimport { Popup } from '@grapecity/wijmo.react.input';\r\nimport { styleExplorer } from 'qubCommon/qubStyles';\r\nimport '@grapecity/wijmo.styles/wijmo.css';\r\nimport { FlexGrid } from '@grapecity/wijmo.react.grid';\r\n\r\nconst ModalImages = {\r\n Warning: 1,\r\n Question: 2,\r\n Error: 3,\r\n Info: 4\r\n};\r\n\r\nconst ModalButtons = {\r\n OkCancel: 1,\r\n YesNo: 2,\r\n YesNoCancel: 3,\r\n OK: 4,\r\n Yes: 5,\r\n No: 6,\r\n Cancel: 7\r\n};\r\n\r\nconst ModalContext = createContext({});\r\n\r\nconst ModalImage = ({ imageType }) => {\r\n if (imageType === ModalImages.Error) return ;\r\n if (imageType === ModalImages.Warning) return ;\r\n if (imageType === ModalImages.Info) return ;\r\n if (imageType === ModalImages.Question) return ;\r\n return <>;\r\n};\r\n\r\nfunction getbuttonsArray(buttons) {\r\n let buttonsArray;\r\n switch (buttons) {\r\n case ModalButtons.YesNo:\r\n buttonsArray = [\r\n { label: 'Ναι', command: ModalButtons.Yes },\r\n { label: 'Οχι', command: ModalButtons.No }\r\n ];\r\n break;\r\n case ModalButtons.OK:\r\n buttonsArray = [{ label: 'OK', command: ModalButtons.OK }];\r\n break;\r\n case ModalButtons.OkCancel:\r\n buttonsArray = [\r\n { label: 'OK', command: ModalButtons.OK },\r\n { label: 'Cancel', command: ModalButtons.Cancel }\r\n ];\r\n break;\r\n case ModalButtons.YesNoCancel:\r\n buttonsArray = [\r\n { label: 'Ναι', command: ModalButtons.Yes },\r\n { label: 'Οχι', command: ModalButtons.No },\r\n { label: 'Ακύρωση', command: ModalButtons.Cancel }\r\n ];\r\n break;\r\n default:\r\n buttonsArray = [{ label: 'OK', command: ModalButtons.OK }];\r\n break;\r\n }\r\n\r\n return buttonsArray;\r\n}\r\n\r\nfunction ModalProvider({ children }) {\r\n const [title, setTitle] = useState(null);\r\n const [message, setMessage] = useState('');\r\n const [imageType, setImageType] = useState(null);\r\n const [defaultButton, setDefaultButton] = useState(null);\r\n const [isGrid, setIsGrid] = useState(false);\r\n const [gridData, setGridData] = useState(null);\r\n const popupRef = useRef();\r\n\r\n const popupInitialized = (popup) => {\r\n popup.isDraggable = true;\r\n popup.isResizable = true;\r\n popup.fadeOut = false;\r\n popup.fadeIn = false;\r\n\r\n popupRef.current = popup;\r\n };\r\n\r\n const gridLoadedRows = (flex) => {\r\n flex.autoSizeColumns();\r\n };\r\n\r\n const [buttons, setButtons] = useState([]);\r\n const ref = useRef();\r\n\r\n function openGrid(props) {\r\n setIsGrid(true);\r\n const { title, gridData } = props;\r\n setTitle(title);\r\n setGridData(gridData);\r\n\r\n popupRef.current.show(true);\r\n popupRef.current.centerPopup();\r\n }\r\n function openModal(props) {\r\n const { title, message, imageType, buttons, callback, defaultButton } = props;\r\n\r\n ref.current = {\r\n callback\r\n };\r\n setIsGrid(false);\r\n setDefaultButton(defaultButton);\r\n setButtons(getbuttonsArray(buttons));\r\n popupRef.current.show(true);\r\n\r\n setTitle(title);\r\n setMessage(message);\r\n setImageType(imageType);\r\n popupRef.current.hostElement.style.top = `calc(50% - ${popupRef.current.hostElement.offsetHeight / 2}px)`;\r\n popupRef.current.hostElement.style.left = `calc(50% - ${popupRef.current.hostElement.offsetWidth / 2}px)`;\r\n }\r\n\r\n const handleButtonClick = (command) => {\r\n setTitle(null);\r\n popupRef.current.hide();\r\n ref.current.callback(command);\r\n setIsGrid(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n
\r\n
\r\n
{title}
\r\n
\r\n \r\n
\r\n {!isGrid ? (\r\n <>\r\n \r\n \r\n \r\n \r\n {message}\r\n \r\n
\r\n \r\n\r\n \r\n {buttons.map((b) => {\r\n return (\r\n handleButtonClick(b.command)}\r\n variant=\"outlined\"\r\n >\r\n {b.label}\r\n \r\n );\r\n })}\r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nfunction useModal() {\r\n const modalContext = useContext(ModalContext);\r\n if (!modalContext) {\r\n throw new Error('useModal must be used within LoadingProvider');\r\n }\r\n\r\n return modalContext;\r\n}\r\n\r\nexport { ModalProvider, useModal, ModalButtons, ModalImages };\r\n","import { useEffect, useState, useCallback, useRef, useImperativeHandle } from 'react';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useFormContext } from 'react-hook-form';\r\nimport { backoffice } from 'apis';\r\nimport { useBringValue } from '@qubiteq/datagrid';\r\nimport { isFunction } from 'lodash';\r\n\r\nconst useBringValueInput = ({ props, ref, runOnInit }) => {\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { register, formState, setValue, getValues } = useFormContext();\r\n const { errors } = formState;\r\n const { name, rules, defaultIdValue, defaultDescriptionValue, dataKey, searchField, additionalFilters, onSelected, onNotFound } = props;\r\n const paramsRef = useRef(null);\r\n\r\n const handleBringValue = useCallback(\r\n async ({ dataKey, filters, ...rest }) => {\r\n try {\r\n const result = await backoffice\r\n .getData({\r\n dataKey,\r\n pageSize: 20,\r\n filters,\r\n additionalFilters,\r\n ...rest\r\n })\r\n .catch((err) => {\r\n throw err;\r\n });\r\n\r\n if (!result) {\r\n throw new Error('No data');\r\n }\r\n\r\n const { itemsCount, items } = result;\r\n if (itemsCount === 0) {\r\n if (onNotFound && isFunction(onNotFound)) onNotFound();\r\n enqueueSnackbar('Δεν βρέθηκε εγγραφή', {\r\n variant: 'warning'\r\n });\r\n setValue(name, null);\r\n setValue(`${name}Description`, '');\r\n }\r\n\r\n return {\r\n itemsCount,\r\n items\r\n };\r\n } catch (err) {\r\n console.error(err);\r\n return {};\r\n }\r\n },\r\n [additionalFilters]\r\n );\r\n\r\n const handleSelectBringValue = ({ item }) => {\r\n setValue(name, item[paramsRef.current.primaryKeyName]);\r\n setValue(`${name}Description`, item[searchField]);\r\n if (onSelected) {\r\n onSelected(item);\r\n }\r\n };\r\n\r\n const bringValue = useBringValue(handleBringValue, backoffice.getParams, handleSelectBringValue);\r\n\r\n useEffect(() => {\r\n const initialFetch = async () => {\r\n const filters = [];\r\n const idValue = getValues()[name] || defaultIdValue;\r\n\r\n const params = await backoffice.getParams({ dataKey });\r\n paramsRef.current = params.params;\r\n if (idValue) {\r\n if (params?.params) {\r\n filters.push({\r\n filter: idValue,\r\n operation: 'custom',\r\n searchField: paramsRef.current.primaryKeyName\r\n });\r\n }\r\n }\r\n const result = await handleBringValue({ dataKey, filters });\r\n if (result?.itemsCount === 1 && runOnInit) {\r\n handleSelectBringValue({ item: result.items[0] });\r\n }\r\n };\r\n\r\n initialFetch();\r\n }, [handleBringValue]);\r\n\r\n useEffect(() => {\r\n setValue(name, defaultIdValue);\r\n }, [setValue, name, defaultIdValue]);\r\n\r\n useEffect(() => {\r\n setValue(`${name}Description`, defaultDescriptionValue);\r\n }, [defaultDescriptionValue]);\r\n\r\n const onChange = (e) => {\r\n // setValue(`${name}Description`, e.target.value);\r\n if (e.target.value === '') {\r\n setValue(name, null);\r\n }\r\n };\r\n\r\n const onKeyDown = async (e) => {\r\n if (e.key === 'Enter') {\r\n const filter = [\r\n {\r\n searchField,\r\n filter: `${e.target.value}*`,\r\n operation: 'custom'\r\n }\r\n ];\r\n await bringValue.bringValue({ e }, dataKey, filter);\r\n }\r\n };\r\n\r\n const clear = () => {\r\n setValue(name, null);\r\n setValue(`${name}Description`, '');\r\n if (onNotFound && isFunction(onNotFound)) onNotFound();\r\n };\r\n\r\n return {\r\n bringValue,\r\n registerProps: register(name, rules),\r\n descriptionRegisterProps: register(`${name}Description`, rules),\r\n errors,\r\n onKeyDown,\r\n onChange,\r\n clear\r\n };\r\n};\r\n\r\nexport default useBringValueInput;\r\n","import React, { useEffect, useRef } from 'react';\r\nimport { Stack, TextField, Typography, InputAdornment } from '@mui/material';\r\nimport PropTypes from 'prop-types';\r\nimport { BringValueView, GridPropsProvider } from '@qubiteq/datagrid';\r\nimport { IconSearch, IconX } from '@tabler/icons';\r\n\r\nimport useBringValueInput from './useBringValueInput';\r\n/* eslint-disable react/jsx-no-duplicate-props */\r\n\r\nconst BringValueInput = (props, ref) => {\r\n const { name, rules, runOnInit = true, label, ...other } = props;\r\n const { registerProps, descriptionRegisterProps, errors, bringValue, onKeyDown, onChange, clear } = useBringValueInput({\r\n props,\r\n ref,\r\n runOnInit\r\n });\r\n\r\n delete other.defaultDescriptionValue;\r\n delete other.defaultIdValue;\r\n delete other.searchField;\r\n delete other.dataKey;\r\n delete other.additionalFilters;\r\n delete other.onNotFound;\r\n delete other.onSelected;\r\n\r\n return (\r\n <>\r\n {/* Temporary fix */}\r\n null }}>\r\n \r\n \r\n \r\n \r\n {typeof label === 'string' ? {label} : label}\r\n \r\n \r\n \r\n ),\r\n // eslint-disable-next-line react/destructuring-assignment\r\n endAdornment: !props?.disabled && (\r\n \r\n \r\n \r\n )\r\n }}\r\n InputLabelProps={{ shrink: true }}\r\n error={!!errors[name]}\r\n helperText={errors[name]?.message}\r\n required={rules?.required}\r\n size=\"small\"\r\n fullWidth\r\n {...other}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\n// BringValueInput.propTypes = {\r\n// name: PropTypes.string,\r\n// rules: PropTypes.any,\r\n// label: PropTypes.string\r\n// };\r\n\r\nexport default React.forwardRef(BringValueInput);\r\n","import BringValueInput from './BringValueInput';\r\n\r\nexport default BringValueInput;\r\n","export const SIGNALR_PATH = '/hub/notificationhub';\r\n","import { ListItemIcon, Menu, MenuItem } from '@mui/material';\r\nimport excel from 'assets/images/excelIcon.png';\r\nimport csv from 'assets/images/csvIcon.png';\r\nimport pdf from 'assets/images/pdf.png';\r\nimport React from 'react';\r\n\r\nconst FilesMenu = ({ anchorEl, setAnchorEl, files, fileMenuType, handleFilePick }) => {\r\n const open = Boolean(anchorEl);\r\n\r\n const handleClose = (file) => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const FileMenuIcon = () => {\r\n if (fileMenuType === 'Excel') return \"excel\";\r\n if (fileMenuType === 'Csv') return \"excel\";\r\n if (fileMenuType === 'Pdf') return \"excel\";\r\n return null;\r\n };\r\n\r\n return (\r\n setAnchorEl(null)}\r\n MenuListProps={{\r\n 'aria-labelledby': 'basic-button'\r\n }}\r\n >\r\n {files?.map((file) => {\r\n return (\r\n handleFilePick(file)}>\r\n \r\n \r\n \r\n {file?.rptTitle}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport default FilesMenu;\r\n","function openPdf(res) {\r\n const blob = new Blob([res], { type: 'application/pdf' });\r\n const link = document.createElement('a');\r\n link.href = window.URL.createObjectURL(blob);\r\n window.open(link.href);\r\n}\r\n\r\nfunction downloadFile(res) {\r\n // const blob = new Blob([res]);\r\n\r\n // const link = document.createElement('a');\r\n // link.href = window.URL.createObjectURL(blob);\r\n // link.setAttribute('download', `Report.xlsx`);\r\n // link.click();\r\n const url = URL.createObjectURL(new Blob([res]));\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.setAttribute('download', 'report.xlsx');\r\n document.body.appendChild(link);\r\n link.click();\r\n}\r\n\r\nexport { openPdf, downloadFile };\r\n","/* eslint-disable */\r\nimport { FlexGrid, FlexGridColumn } from '@grapecity/wijmo.react.grid';\r\nimport * as wjcGrid from '@grapecity/wijmo.grid';\r\nimport { useEffect, memo } from 'react';\r\nimport './criteria.css';\r\nimport * as wjInput from '@grapecity/wijmo.input';\r\nimport * as wjcCore from '@grapecity/wijmo';\r\nimport { toggleClass } from '@grapecity/wijmo';\r\nimport { formatToShowDate, formatToShowDateTime } from 'qubCommon/helperMethods/dateHelper';\r\n\r\nconst FieldSearchGrid = memo((props) => {\r\n const { gridRefs, name, handleDirtyCheck } = props;\r\n\r\n const operators = [\r\n { id: 'contains', operator: 'Περιέχει' },\r\n { id: 'beginsWith', operator: 'Αρχίζει' },\r\n { id: 'endsWith', operator: 'Τελειώνει' },\r\n { id: '=', operator: '=' },\r\n { id: '>', operator: '>' },\r\n { id: '>=', operator: '>=' },\r\n { id: '<', operator: '<' },\r\n { id: '<=', operator: '<=' },\r\n { id: '<>', operator: '<>' },\r\n { id: 'between', operator: 'Μεταξύ' },\r\n { id: 'isNull', operator: 'NULL' },\r\n { id: 'isEmpty', operator: 'ΚΕΝΟ' }\r\n ];\r\n\r\n var operatorMap = new wjcGrid.DataMap(operators, 'id', 'operator');\r\n\r\n operatorMap.getDisplayValues = function (rowDataItem) {\r\n const { dataType } = rowDataItem;\r\n let availableOptions = operators;\r\n if (dataType === 'date' || dataType === 'datetime')\r\n availableOptions = operators.filter((operator) => ['=', '>', '>=', '<', '<=', '<>', 'between', 'isNull'].includes(operator.id));\r\n if (dataType === 'boolean') operators.filter((operator) => ['='].includes(operator.id));\r\n if (dataType === 'int' || dataType === 'decimal')\r\n operators.filter((operator) => ['=', '>', '>=', '<', '<=', '<>', 'between', 'isNull'].includes(operator.id));\r\n\r\n return availableOptions.map((option) => option.operator);\r\n };\r\n\r\n const fieldSearchGridInit = (flex) => {\r\n function isRowEditable(row) {\r\n var item = row?.dataItem.defaultOperator;\r\n return item === 'between';\r\n }\r\n\r\n function isEmptyOrNull(row) {\r\n var item = row?.dataItem.defaultOperator;\r\n return ['isEmpty', 'isNull'].includes(item);\r\n }\r\n\r\n flex.onSelectionChanged = (e) => {\r\n var row = flex.rows[e.row];\r\n if (flex?.columns[e.col]) {\r\n if (e.col === 2) flex.columns[e.col].isReadOnly = !isRowEditable(row);\r\n }\r\n if (flex?.columns[e.col]) {\r\n if (e.col === 1) flex.columns[e.col].isReadOnly = isEmptyOrNull(row);\r\n }\r\n };\r\n\r\n flex.onCellEditEnded = (e) => {\r\n handleDirtyCheck();\r\n const grid = e.panel.grid;\r\n const editingCol = grid.columns[e.col]?.binding;\r\n const currentItem = grid.rows[e.row].dataItem;\r\n const value = currentItem?.defaultOperator;\r\n if (e.col === 0 && currentItem.value2 && value !== 10) {\r\n flex.setCellData(e.row, e.col + 2, undefined);\r\n }\r\n if (e.col === 0 && currentItem.value1 && ['isEmpty', 'isNull'].includes(value)) {\r\n flex.setCellData(e.row, e.col + 1, undefined);\r\n }\r\n\r\n const { dataType, value1, value2, defaultOperator } = currentItem;\r\n\r\n if (dataType === 'date') {\r\n if (editingCol === 'value1') flex.setCellData(e.row, e.col, formatToShowDate(value1));\r\n else if (editingCol === 'value2') flex.setCellData(e.row, e.col, formatToShowDate(value2));\r\n }\r\n if (dataType === 'datetime') {\r\n if (editingCol === 'value1') flex.setCellData(e.row, e.col, formatToShowDateTime(value1));\r\n else if (editingCol === 'value2')\r\n flex.setCellData(\r\n e.row,\r\n e.col,\r\n formatToShowDateTime(value2, { format: 'dd/MM/yyyy', d: 0, m: 1, y: 2 }, 'dd/MM/yyyy HH:mm', null, '23:59')\r\n );\r\n }\r\n };\r\n\r\n const extraRow = new wjcGrid.Row();\r\n extraRow.allowMerging = true;\r\n var panel = flex.columnHeaders;\r\n\r\n panel.rows.splice(0, 0, extraRow);\r\n panel.rows.forEach((r) => {\r\n if (r?.index === 1) r.visible = false;\r\n });\r\n for (let colIndex = 0; colIndex <= 2; colIndex++) {\r\n panel?.setCellData(0, colIndex, 'Αναζήτηση');\r\n }\r\n\r\n // flex.onSelectionChanging.addHandler((s, e) => {\r\n // var row = s.rows[e.row];\r\n // });\r\n\r\n flex.itemFormatter = (panel, r, c, cell) => {\r\n toggleClass(cell, 'cell-custom', true);\r\n if (panel === flex.rowHeaders && c === 0) {\r\n cell.textContent = flex.rows[r].dataItem.title;\r\n flex.rowHeaders.columns[0].width = 140;\r\n }\r\n if (c === 2) {\r\n if (flex.getCellData(r, c - 2) === 'between') toggleClass(cell, 'cell-custom', true);\r\n else toggleClass(cell, 'cell-country', true);\r\n }\r\n if (c === 1) {\r\n if (flex.getCellData(r, c - 1) === 'isNull' || flex.getCellData(r, c - 1) === 'isEmpty')\r\n toggleClass(cell, 'cell-country', true);\r\n else toggleClass(cell, 'cell-custom', true);\r\n }\r\n };\r\n\r\n flex.prepareCellForEdit.addHandler((s, e) => {\r\n if (e.col === 1) {\r\n const rootEl = document.createElement('div');\r\n rootEl.style.width = '100%';\r\n rootEl.style.height = '100%';\r\n let control;\r\n const inputType = s.rows[e.row].dataItem['dataType'];\r\n const lineId = s.rows[e.row].dataItem['fieldId'];\r\n switch (inputType) {\r\n case 'bool':\r\n control = new wjInput.ComboBox(rootEl, {\r\n itemsSource: ['ΝΑΙ', 'ΟΧΙ', '‎']\r\n });\r\n break;\r\n case 'text':\r\n control = document.createElement('TextArea');\r\n control.value = s.getCellData(e.row, e.col, false);\r\n rootEl.appendChild(control);\r\n break;\r\n default:\r\n return;\r\n }\r\n if (s.activeEditor) {\r\n const parentCell = s.activeEditor.parentElement;\r\n parentCell.style.padding = '0';\r\n parentCell.insertBefore(rootEl, s.activeEditor);\r\n control.focus();\r\n\r\n if (!wjcCore.isUndefined(control['text'])) {\r\n control['text'] = s.activeEditor.value;\r\n }\r\n }\r\n const cellEditEndHandler = (s2, args) => {\r\n s2.cellEditEnding.removeHandler(cellEditEndHandler);\r\n if (!args.cancel) {\r\n args.cancel = true;\r\n\r\n switch (inputType) {\r\n case 'number':\r\n case 'string':\r\n case 'date':\r\n s2.setCellData(args.row, args.col, control.value, false);\r\n break;\r\n case 'bool':\r\n s2.setCellData(args.row, args.col, control.selectedItem, false);\r\n break;\r\n default:\r\n }\r\n if (control.dispose) {\r\n control.dispose();\r\n }\r\n }\r\n };\r\n s.cellEditEnding.addHandler(cellEditEndHandler);\r\n }\r\n });\r\n flex.autoSizeColumns(0, flex.columns.length);\r\n flex.autoSizeColumns(0, flex.columns.length, true);\r\n flex.autoSizeRows(0, flex.rows.length);\r\n flex.autoSizeRows(0, flex.rows.length, true);\r\n };\r\n\r\n const fieldSearchLoadedRows = (flex) => {\r\n flex.autoSizeColumns(0, flex.columns.length);\r\n flex.autoSizeColumns(0, flex.columns.length, true);\r\n flex.autoSizeRows(0, flex.rows.length);\r\n flex.autoSizeRows(0, flex.rows.length, true);\r\n };\r\n\r\n return (\r\n {\r\n if (!gridRefs?.current?.find((r) => r.name === name)) gridRefs.current.push({ grid: el, name });\r\n }}\r\n alternatingRowStep={0}\r\n showMarquee={true}\r\n initialized={fieldSearchGridInit}\r\n fieldSearchLoadedRows={fieldSearchLoadedRows}\r\n itemsSource={props?.data}\r\n selectionMode={wjcGrid.SelectionMode.Cell}\r\n allowMerging=\"ColumnHeaders\"\r\n isReadOnly={false}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default FieldSearchGrid;\r\n","/* eslint-disable */\r\nimport { FlexGrid, FlexGridColumn } from '@grapecity/wijmo.react.grid';\r\nimport * as wjcGrid from '@grapecity/wijmo.grid';\r\nimport { useEffect, memo } from 'react';\r\nimport * as wjInput from '@grapecity/wijmo.input';\r\nimport * as wjcCore from '@grapecity/wijmo';\r\nimport { toggleClass } from '@grapecity/wijmo';\r\nimport './criteria.css';\r\n\r\nconst ValueListGrid = memo((props) => {\r\n const { gridRefs, name, handleDirtyCheck } = props;\r\n\r\n const valueListGridInit = (flex) => {\r\n //collapse everything\r\n flex.hostElement.addEventListener('dblclick', function (e) {\r\n flex.finishEditing();\r\n });\r\n\r\n //hide id\r\n flex.columns?.forEach((c) => {\r\n if (c.binding === 'id') c.visible = false;\r\n });\r\n\r\n flex.itemFormatter = (panel, r, c, cell) => {\r\n toggleClass(cell, 'criteria', true);\r\n if (flex.rows[r]?.level === 0) {\r\n toggleClass(cell, 'criteriaBold', true);\r\n const children = flex?.rows[r]?.dataItem?.children;\r\n let dirtyChildren = 0;\r\n children?.forEach((child) => {\r\n if (child.isSelected) dirtyChildren += 1;\r\n });\r\n if (dirtyChildren && dirtyChildren < children?.length) toggleClass(cell, 'criteriaRed', true);\r\n }\r\n };\r\n //handle cell edit and check all\r\n\r\n flex.onCellEditEnded = (e) => {};\r\n\r\n flex.formatItem.addHandler((s, e) => {\r\n flex.onCellEditEnded = (e) => {\r\n const grid = e.panel.grid;\r\n const row = s.rows[e.row];\r\n const editingCol = grid.columns[e.col];\r\n const currentItem = grid.rows[e.row].dataItem;\r\n const value = currentItem?.isSelected;\r\n handleDirtyCheck();\r\n // if (currentItem?.children) {\r\n // currentItem?.children.forEach((child) => {\r\n // const rows = flex.rows;\r\n // const updateRow = rows.find((r) => r.dataItem.value == child.value);\r\n // flex.setCellData(updateRow.index, editingCol.index, value);\r\n // });\r\n // }\r\n if (row.hasChildren) {\r\n var curRowIdx = row.index + 1,\r\n childRow = s.rows[curRowIdx++];\r\n while (childRow && childRow.level > row.level) {\r\n flex.setCellData(childRow.index, editingCol.index, value);\r\n childRow = s.rows[curRowIdx++];\r\n }\r\n }\r\n flex.collectionView.items.forEach((item, index) => {\r\n if (item.children) {\r\n let dirtyChildren = 0;\r\n item.children.forEach((child) => {\r\n if (child.isSelected) {\r\n dirtyChildren += 1;\r\n }\r\n });\r\n }\r\n });\r\n };\r\n flex.rows.forEach((r) => {\r\n r.isReadOnly = false;\r\n });\r\n flex.columns.forEach((c) => {\r\n if (c.binding !== 'isSelected') c.isReadOnly = true;\r\n });\r\n // replace collapse button with | + | AND | - |\r\n var row = s.rows[e.row];\r\n if (s.cells === e.panel && row instanceof wjcGrid.GroupRow) {\r\n // remove this class to remove the icons\r\n var classToRemove = 'wj-glyph-' + (row.isCollapsed ? 'right' : 'down-right');\r\n // change icon according to font awsome icons\r\n var classToAdd = row?.isCollapsed ? 'fa-sharp fa-plus boldim' : 'fa-minus boldim';\r\n var span = e.cell.querySelector('span.' + classToRemove);\r\n if (span) {\r\n wjcCore.removeClass(span, classToRemove);\r\n wjcCore.createElement(``, span);\r\n }\r\n }\r\n });\r\n flex.autoSizeColumns(0, flex.columns.length);\r\n flex.autoSizeColumns(0, flex.columns.length, true);\r\n flex.autoSizeRows(0, flex.rows.length);\r\n flex.autoSizeRows(0, flex.rows.length, true);\r\n flex.collapseGroupsToLevel(0);\r\n };\r\n\r\n // Make checkboxes editable (Wijmo treegrid makes rows ReadOnly)\r\n const valueListGridLoadedRows = (flex) => {\r\n flex.collapseGroupsToLevel(0);\r\n flex.autoSizeColumns(0, flex.columns.length);\r\n flex.autoSizeColumns(0, flex.columns.length, true);\r\n flex.autoSizeRows(0, flex.rows.length);\r\n flex.autoSizeRows(0, flex.rows.length, true);\r\n flex.refreshCells();\r\n };\r\n\r\n const dataLines1 = [\r\n {\r\n id: 0,\r\n selected: false,\r\n name: 'Κριτήριο23',\r\n children: [{ id: 2, selected: false, name: 'λαλαλα' }]\r\n },\r\n { id: 3, selected: false, name: 'Κριτήριο2' },\r\n { id: 4, selected: false, name: 'Κριτήριο3' },\r\n {\r\n id: 5,\r\n selected: false,\r\n name: 'Κριτήριο23'\r\n }\r\n ];\r\n\r\n return (\r\n {\r\n if (!gridRefs?.current?.find((r) => r.name === name)) gridRefs.current.push({ grid: el, name });\r\n }}\r\n initialized={valueListGridInit}\r\n loadedRows={valueListGridLoadedRows}\r\n itemsSource={props?.data}\r\n selectionMode={wjcGrid.SelectionMode.ListBox}\r\n headersVisibility={0}\r\n childItemsPath=\"children\"\r\n isReadOnly={false}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default ValueListGrid;\r\n","/* eslint-disable */\r\n\r\n// Material & React\r\nimport { Stack, Typography, Tooltip, Box, IconButton, ButtonGroup, Button } from '@mui/material';\r\nimport ListIcon from '@mui/icons-material/List';\r\nimport TextFieldsIcon from '@mui/icons-material/TextFields';\r\nimport SearchIcon from '@mui/icons-material/Search';\r\nimport ClearIcon from '@mui/icons-material/Clear';\r\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\r\nimport { useState } from 'react';\r\n\r\n// Wijmo\r\nimport { Popup } from '@grapecity/wijmo.react.input';\r\n\r\n// Project Imports\r\nimport FieldSearchGrid from './FieldSearchGrid';\r\nimport ValueListGrid from './ValueListGrid';\r\nimport './criteria.css';\r\nimport { useTheme } from '@emotion/react';\r\n\r\nconst Criteria = (props) => {\r\n const [tab, setTab] = useState(0);\r\n\r\n const theme = useTheme();\r\n\r\n const { popupInitialized, criteriaRef, submit, handleDirtyCheck, dirtyValuesList, dirtyFieldSearch } = props;\r\n\r\n const reset = () => {\r\n let dirty = false;\r\n criteriaRef?.current?.critFldsSearch?.forEach((crit) => {\r\n crit.value1 = null;\r\n crit.value2 = null;\r\n\r\n if (crit.defaultOperator === 'isNull' || crit.defaultOperator === 'isEmpty') {\r\n if (['date', 'datetime', 'int', 'decimal', 'boolean'].includes(crit.dataType)) crit.defaultOperator = '=';\r\n else crit.defaultOperator = 'contains';\r\n }\r\n });\r\n criteriaRef?.current?.critValuesList?.forEach((crit) => {\r\n crit.isSelected = false;\r\n crit?.children?.forEach((child, index) => {\r\n child.isSelected = false;\r\n });\r\n });\r\n props.gridRefs.current.forEach((gridRef) => gridRef.grid.control.refreshCells());\r\n handleDirtyCheck();\r\n };\r\n\r\n if (criteriaRef?.current)\r\n return (\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Κριτήρια /\r\n \r\n  \r\n \r\n {tab === 0 && criteriaRef?.current?.critValuesList ? 'Λίστα Τιμών' : 'Πεδία Αναζήτησης'}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {criteriaRef?.current?.critValuesList && (\r\n \r\n \r\n setTab(0)}>\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n setTab(1)}>\r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n OK\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n else return null;\r\n};\r\n\r\nexport default Criteria;\r\n","/*eslint-disable*/\r\n// mui- imports\r\nimport Box from '@mui/material/Box';\r\nimport IconButton from '@mui/material/IconButton';\r\nimport Tooltip from '@mui/material/Tooltip';\r\nimport excel from 'assets/images/excelIcon.png';\r\nimport csv from 'assets/images/csvIcon.png';\r\nimport pdf from 'assets/images/pdf.png';\r\nimport { useEffect, useState, forwardRef, useImperativeHandle, useRef, useContext } from 'react';\r\nimport { ArrowBack, FilterAlt, ViewColumnTwoTone, Refresh, BarChart } from '@mui/icons-material';\r\nimport { useNavigate } from 'react-router-dom';\r\n// import { authorizedGenApiCall, authorizedReportApiCall } from \"api/genApiCalls\";\r\n// import { apiDataKeyExplorerToolbarData } from \"api/ApiDatakeys\";\r\nimport { Stack } from '@mui/material';\r\n\r\nimport ColumnPicker from './components/ColumnPicker';\r\nimport { useForm } from 'react-hook-form';\r\nimport FilesMenu from './components/FilesMenu';\r\nimport { downloadFile, openPdf } from 'qubCommon/helperMethods/fileHelper';\r\nimport Criteria from './components/Criteria';\r\nimport { formatCritFldSearch, formatValuesListSearch } from 'qubCommon/helperMethods/formatRequest';\r\nimport { reports } from 'apis';\r\nimport { useMe } from 'hooks/useMe';\r\nimport NoteAddIcon from '@mui/icons-material/NoteAdd';\r\nimport { LoaderContext } from 'context/loaderContext';\r\nimport { useLoading } from 'hooks/useLoading';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Dropdown } from 'qubCommon/Inputs';\r\n\r\nconst ToolbarExplorer = forwardRef((props, ref) => {\r\n const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n const { whoami } = useMe();\r\n /* Report Files Excel,CSV,PDF States */\r\n\r\n // Objects describing files : {id,title etc}\r\n const [menuFiles, setMenuFiles] = useState([]);\r\n // open,setOpen(anchorEl)\r\n const [filesMenu, setFilesMenu] = useState(null);\r\n // 3 Menus have the same Component so in order to open the correct one we have to set fileMenuType before openning\r\n const [fileMenuType, setFileMenuType] = useState(null);\r\n\r\n // Criteria Dirty Check\r\n const [dirtyValuesList, setDirtyValuesList] = useState(false);\r\n const [dirtyFieldSearch, setDirtyFieldSearch] = useState(false);\r\n\r\n // Redux variables\r\n\r\n // props\r\n const {\r\n excelHandleClick,\r\n webPageKey,\r\n title,\r\n gridRef,\r\n mobileGridRef,\r\n form,\r\n rptRequestVars,\r\n submit,\r\n toolbarProps,\r\n children,\r\n setToolbarLoading,\r\n hideCriteria = false\r\n } = props;\r\n // const { csvFiles, pdfFiles, excelFiles, columns, criteriaRef } = useToolbarProps({ webPageKey }); migrated to parent component\r\n const { csvFiles, pdfFiles, excelFiles, columns, criteriaRef, newTitle, newUrl, hideAddNew, showRowHeader, pageSize } = toolbarProps;\r\n\r\n // methods are used for ColumnPicker visibleFields\r\n const methods = useForm();\r\n\r\n // Criteria and ColumnPicker Popup Refs\r\n const colPopupRef = useRef();\r\n const criteriaPopupRef = useRef();\r\n\r\n // GridRefs is an array of refs used for Dynamic Criteria Component\r\n const gridRefs = useRef([]);\r\n\r\n const { setLoading } = useLoading();\r\n\r\n const handleDirtyCheck = (initRef) => {\r\n if (initRef) {\r\n let dirty = false;\r\n initRef?.current?.critFldsSearch?.forEach((crit) => {\r\n if (crit.value1 || crit.value2) {\r\n dirty = 'fs';\r\n }\r\n });\r\n initRef?.current?.critValuesList?.forEach((crit) => {\r\n let dirtyChildren = 0;\r\n crit?.children?.forEach((child, index) => {\r\n if (child?.isSelected) {\r\n dirtyChildren += 1;\r\n }\r\n if (dirtyChildren && dirtyChildren !== crit?.children?.length && index === crit?.children?.length - 1)\r\n if (dirty === 'fs' || dirty === 'fsvl') dirty = 'fsvl';\r\n else dirty = 'vl';\r\n });\r\n });\r\n if (dirty === 'fsvl') {\r\n setDirtyFieldSearch(true);\r\n setDirtyValuesList(true);\r\n } else if (dirty === 'fs') {\r\n setDirtyFieldSearch(true);\r\n setDirtyValuesList(false);\r\n } else if (dirty === 'vl') {\r\n setDirtyFieldSearch(false);\r\n setDirtyValuesList(true);\r\n } else {\r\n setDirtyFieldSearch(false);\r\n setDirtyValuesList(false);\r\n }\r\n } else {\r\n let dirty = false;\r\n criteriaRef?.current?.critFldsSearch?.forEach((crit) => {\r\n if (crit.value1 || crit.value2) {\r\n dirty = 'fs';\r\n }\r\n });\r\n criteriaRef?.current?.critValuesList?.forEach((crit) => {\r\n let dirtyChildren = 0;\r\n crit?.children?.forEach((child, index) => {\r\n if (child?.isSelected) {\r\n dirtyChildren += 1;\r\n }\r\n if (dirtyChildren && dirtyChildren !== crit?.children?.length && index === crit?.children?.length - 1)\r\n if (dirty === 'fs' || dirty === 'fsvl') dirty = 'fsvl';\r\n else dirty = 'vl';\r\n });\r\n });\r\n if (dirty === 'fsvl') {\r\n setDirtyFieldSearch(true);\r\n setDirtyValuesList(true);\r\n } else if (dirty === 'fs') {\r\n setDirtyFieldSearch(true);\r\n setDirtyValuesList(false);\r\n } else if (dirty === 'vl') {\r\n setDirtyFieldSearch(false);\r\n setDirtyValuesList(true);\r\n } else {\r\n setDirtyFieldSearch(false);\r\n setDirtyValuesList(false);\r\n }\r\n }\r\n };\r\n\r\n // !!! ΕΙΤ 2023.06.01 - Το κλεινω προσωρινα\r\n // set Tab Title\r\n useEffect(() => {\r\n // document.title = webPageKey;\r\n handleDirtyCheck(criteriaRef);\r\n }, [criteriaRef?.current?.critValuesList]);\r\n\r\n // populating methods based on fetched data\r\n useEffect(() => {\r\n if (columns?.length >= 1) {\r\n columns?.forEach((c) => {\r\n c?.children?.forEach((child) => {\r\n methods.setValue(`${child.fldName}`, Boolean(child.isVisible));\r\n });\r\n });\r\n }\r\n }, [columns, methods]);\r\n\r\n // function used to map data to grid (binding,header,visible) for unbound grids\r\n const mapHeaders = (flex) => {\r\n flex.columns.forEach((c) => {\r\n c.visible = false;\r\n });\r\n flex.columns.forEach((c) => {\r\n c.wordWrap = true;\r\n\r\n columns.forEach((column) => {\r\n const res = column.children.find((item) => item.fldName === c.binding);\r\n if (res && methods.getValues(res?.fldName)) {\r\n c.visible = true;\r\n // flex.autoSizeColumn(c.index);\r\n }\r\n if (res?.fldTitle) {\r\n c.header = res?.fldTitle;\r\n }\r\n });\r\n });\r\n };\r\n\r\n // imperative handler, our Ref comes from our Components Hook. Px. ParastatikaExplorer(Component), useParastatikaExplorer(MainHook): ref is created in useParastatikaExplorer\r\n useImperativeHandle(ref, () => ({\r\n mapHeaders,\r\n criteriaRef\r\n }));\r\n\r\n // columnPickerPopUP initialization\r\n const colPopupInitialized = (popup) => {\r\n popup.isDraggable = true;\r\n popup.isResizable = false;\r\n popup.fadeOut = false;\r\n popup.fadeIn = false;\r\n\r\n colPopupRef.current = popup;\r\n };\r\n\r\n // criteriaPopUP initialization\r\n const criteriaPopupInitialized = (popup) => {\r\n popup.isDraggable = true;\r\n popup.isResizable = true;\r\n popup.fadeOut = false;\r\n popup.fadeIn = false;\r\n criteriaPopupRef.current = popup;\r\n };\r\n\r\n // Pick File, this function will be probided to FilesMenu\r\n const handleFilePick = async (file) => {\r\n setToolbarLoading(true);\r\n const filterParams = form?.getValues();\r\n if (file?.rptId === 'default') {\r\n excelHandleClick();\r\n setLoading(false);\r\n } else if (fileMenuType === 'Pdf') {\r\n // let params;\r\n // const formValues = formatRequestObject(form?.getValues());\r\n // if (rptRequestVars && form?.getValues()) {\r\n // params = [...rptRequestVars, ...formValues, { dataKey: 'rptId', dataValue: file?.rptId }];\r\n // } else if (rptRequestVars && !form?.getValues()) {\r\n // params = [...rptRequestVars, { dataKey: 'rptId', dataValue: file?.rptId }];\r\n // } else if (!rptRequestVars && form.getValues()) {\r\n // params = [...formValues, { dataKey: 'rptId', dataValue: file?.rptId }];\r\n // } else params = [{ dataKey: 'rptId', dataValue: file?.rptId }];\r\n\r\n filterParams.critFldsSearch = formatCritFldSearch(criteriaRef?.current?.critFldsSearch);\r\n filterParams.critValuesList = formatValuesListSearch(criteriaRef?.current?.critValuesList);\r\n\r\n try {\r\n const res = await reports.getQubReport(\r\n {\r\n ReportId: file?.rptId,\r\n DBKey: window.CONFIG.dbKey,\r\n UserId: whoami?.userId,\r\n ReportParams: filterParams\r\n },\r\n {\r\n responseType: 'blob'\r\n }\r\n );\r\n openPdf(res);\r\n } catch {\r\n console.log('error on get QubReport');\r\n }\r\n } else if (fileMenuType === 'Excel') {\r\n try {\r\n const res = await reports.getQubReportExcel(\r\n {\r\n ReportId: file?.rptId,\r\n DBKey: window.CONFIG.dbKey,\r\n UserId: whoami?.userId,\r\n ReportParams: filterParams\r\n },\r\n {\r\n responseType: 'blob'\r\n }\r\n );\r\n downloadFile(res);\r\n } catch {\r\n console.log('error on getQubReport');\r\n }\r\n } else if (fileMenuType === 'Csv') {\r\n try {\r\n const res = await reports.getQubReportExcel(\r\n {\r\n ReportId: file?.rptId,\r\n DBKey: window.CONFIG.dbKey,\r\n UserId: whoami?.userId,\r\n ReportParams: filterParams\r\n },\r\n {\r\n responseType: 'blob'\r\n }\r\n );\r\n downloadFile(res);\r\n } catch {\r\n console.log('error on getQubReport');\r\n }\r\n }\r\n setToolbarLoading(false);\r\n setFilesMenu(null);\r\n };\r\n\r\n // Open Menu based on Icon (xls,csv,pdf)\r\n const handleMenuOpen = (event, fileType) => {\r\n switch (fileType) {\r\n case 'xls':\r\n if (excelFiles?.length > 0) {\r\n setMenuFiles(excelFiles);\r\n setFileMenuType('Excel');\r\n setFilesMenu(event.currentTarget);\r\n }\r\n break;\r\n case 'csv':\r\n if (csvFiles?.length > 0) {\r\n setMenuFiles(csvFiles);\r\n setFileMenuType('Csv');\r\n setFilesMenu(event.currentTarget);\r\n }\r\n break;\r\n case 'pdf':\r\n if (pdfFiles?.length > 0) {\r\n setMenuFiles(pdfFiles);\r\n setFileMenuType('Pdf');\r\n setFilesMenu(event.currentTarget);\r\n }\r\n break;\r\n default:\r\n console.log('provide a valid file type');\r\n }\r\n };\r\n\r\n const handleFilterSubmit = () => {\r\n submit();\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {columns?.length >= 1 && (\r\n \r\n )}\r\n \r\n {!hideCriteria && (\r\n \r\n )}\r\n\r\n \r\n \r\n {!hideCriteria && (\r\n \r\n criteriaPopupRef.current.show(true)} sx={{}}>\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {columns?.length !== 0 && (\r\n \r\n \r\n colPopupRef.current.show(true)}>\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n handleMenuOpen(e, 'xls')}>\r\n \r\n \r\n \r\n \r\n \r\n {!hideAddNew && (\r\n \r\n navigate(newUrl)}>\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {children}\r\n \r\n \r\n \r\n {pageSize?.length > 0 && (\r\n \r\n )}\r\n \r\n {/* \r\n {title ?? webPageKey}\r\n */}\r\n \r\n \r\n );\r\n});\r\n\r\nexport default ToolbarExplorer;\r\n","// material-ui\r\nimport { Card, Divider, Typography, useTheme } from '@mui/material';\r\n\r\n// ==============================|| SKELETON - EARNING CARD ||============================== //\r\n\r\nconst OptionCard = ({ description, clickAction, selected, additionalInfo }) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n
\r\n \r\n {null}\r\n
\r\n
\r\n {description}\r\n
\r\n \r\n {selected ?
{additionalInfo}
: null}\r\n \r\n );\r\n};\r\n\r\nexport default OptionCard;\r\n","import { useState } from 'react';\r\nimport { Box, FormControlLabel, Checkbox, Typography } from '@mui/material';\r\nimport { TreeItem } from '@mui/lab';\r\nimport QubCheckbox from 'qubCommon/Inputs/Checkbox';\r\n\r\nconst TreeParent = ({ category, methods, gridRef, extendLastColumn, mobileColumnChange = () => {} }) => {\r\n const { children } = category;\r\n const [categoryCheck, setCategoryCheck] = useState(false);\r\n\r\n // const fetchData = (id) => {\r\n // if (data === null) {\r\n // children?.forEach((checkbox) => {\r\n // checkbox.defaultValue = categoryCheck;\r\n // });\r\n // }\r\n // return dataLines[id];\r\n // };\r\n\r\n const handleCheckAll = () => {\r\n children?.forEach((checkbox) => {\r\n methods.setValue(`${checkbox.fldName}`, !categoryCheck);\r\n const c = gridRef.current.getColumn(checkbox.fldName);\r\n if (c) c.visible = !categoryCheck;\r\n });\r\n setCategoryCheck(!categoryCheck);\r\n mobileColumnChange();\r\n extendLastColumn();\r\n };\r\n\r\n const alterHeaders = (name) => {\r\n const headerChange = methods.getValues(name);\r\n {\r\n const c = gridRef.current.getColumn(name);\r\n if (c) c.visible = !headerChange;\r\n }\r\n extendLastColumn();\r\n mobileColumnChange();\r\n };\r\n\r\n return (\r\n {\r\n // if (data === null) setData(() => fetchData(category.id));\r\n // }}\r\n label={\r\n event.stopPropagation()}>\r\n {category.grpDescr}}\r\n control={\r\n \r\n }\r\n />\r\n \r\n }\r\n >\r\n <>\r\n {category?.children?.map((child) => {\r\n return (\r\n alterHeaders(child?.fldName)}\r\n label={child?.fldTitle}\r\n defaultValue={Boolean(child?.isVisible) || false}\r\n size=\"small\"\r\n style={{\r\n width: '20px',\r\n marginLeft: 19,\r\n marginRight: 5,\r\n padding: 0\r\n }}\r\n />\r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default TreeParent;\r\n","import { FormProvider } from 'react-hook-form';\r\nimport { TreeView } from '@mui/lab';\r\nimport TreeParent from './TreeParent';\r\nimport { Popup } from '@grapecity/wijmo.react.input';\r\nimport { Stack, Button, Typography, Checkbox, FormControlLabel } from '@mui/material';\r\nimport Add from '@mui/icons-material/Add';\r\nimport Remove from '@mui/icons-material/Remove';\r\nimport { useEffect } from 'react';\r\n// import { authorizedGenApiCall } from 'api/genApiCalls';\r\n// import { apiDataKeyCOLSUserStateSave } from \"api/ApiDatakeys\";\r\nimport { useSelector } from 'react-redux';\r\nimport { apiEntities } from 'apis';\r\n\r\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\r\nimport { wijmoExtendLastColumn } from 'qubCommon/wijmoHelpers/columnMethods';\r\nimport { convertGridToMobile } from 'qubCommon/wijmoHelpers/convertToMobile';\r\n\r\nconst ColumnPicker = (props) => {\r\n const { columns, popupInitialized, gridRef, mobileGridRef, methods, webPageKey, showRowHeader } = props;\r\n const onSubmit = (data) => {\r\n // saveColumnPickerSettings();\r\n };\r\n\r\n const saveColumnPickerSettings = async () => {\r\n const columnsHelp = [];\r\n columns.forEach((column) => column?.children?.forEach((col) => columnsHelp.push(col)));\r\n const data = methods?.getValues();\r\n let submitJSON = '';\r\n const submitJSON2 = [];\r\n /* eslint-disable */ for (const [key, value] of Object.entries(data)) {\r\n const res = columnsHelp.find((item) => item.fldName === key);\r\n\r\n if (res) submitJSON2.push({ fldId: res.fldId, isSelected: value });\r\n if (res && value) submitJSON += `${res?.fldId},`;\r\n if (key === 'wijmoRowHeader' && value) submitJSON += `${-999}`;\r\n }\r\n const res = await apiEntities.getData({\r\n dataKey: 'Qub-ColsUserState-Save',\r\n parameters: {\r\n webPageKey: webPageKey,\r\n GridVisibleColIds: submitJSON\r\n }\r\n });\r\n };\r\n\r\n // useEffect(() => {\r\n // const handleTabClose = (event) => {\r\n // event.preventDefault();\r\n // saveColumnPickerSettings();\r\n // };\r\n\r\n // window.addEventListener('beforeunload', handleTabClose);\r\n\r\n // return () => {\r\n // window.removeEventListener('beforeunload', handleTabClose);\r\n // };\r\n // }, []);\r\n const extendLastColumn = () => {\r\n wijmoExtendLastColumn(gridRef.current, columns, false);\r\n };\r\n\r\n const mobileColumnChange = () => {\r\n try {\r\n convertGridToMobile(gridRef, mobileGridRef.current, columns);\r\n } catch {\r\n console.log('no mobile grid here yet');\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Στήλες\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n }\r\n defaultExpandIcon={}\r\n defaultExpanded={columns?.map((c) => c.grpDescr)}\r\n multiSelect\r\n sx={{}}\r\n >\r\n {\r\n if (e.target.checked) {\r\n gridRef.current.headersVisibility = 'All';\r\n methods.setValue('wijmoRowHeader', true);\r\n wijmoExtendLastColumn(gridRef.current, columns, false, false, 'enable');\r\n } else {\r\n methods.setValue('wijmoRowHeader', false);\r\n gridRef.current.headersVisibility = 'Column';\r\n wijmoExtendLastColumn(gridRef.current, columns, false, false, 'disable');\r\n }\r\n mobileColumnChange();\r\n }}\r\n defaultChecked={showRowHeader}\r\n size=\"small\"\r\n style={{\r\n width: '20px',\r\n marginLeft: 5,\r\n marginRight: 5,\r\n padding: 0\r\n }}\r\n />\r\n }\r\n label={A/A}\r\n />\r\n {columns?.map((category) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {!hasUser && f?.functionId > 200 && f?.isActive && (\r\n navigate(`/users/create/${personId}/${f?.personFunctionId}`)}\r\n sx={{ margin: 1 }}\r\n >\r\n {t('CreateNewUser')}\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n//\r\n\r\nPersonFunction.propTypes = {\r\n f: PropTypes.object.isRequired,\r\n onClick: PropTypes.func.isRequired\r\n};\r\n\r\nexport const PersonFunctionsPretty = ({ personId, showTitle = true, hasUser }) => {\r\n const [functions, setFunctions] = useState(null);\r\n\r\n const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n\r\n useEffect(() => {\r\n const getFunctions = async () => {\r\n const result = await person.getFunctions({ personId });\r\n setFunctions(result);\r\n };\r\n if (!isNil(personId)) getFunctions();\r\n else setFunctions(null);\r\n }, [personId]);\r\n\r\n const onClick = (func) => {\r\n if (func.isOfficial) {\r\n navigate(`/officials/manage/${func.personFunctionId}/details`);\r\n } else if (func.dataKey === '@Athlete') {\r\n navigate(`/athletes/manage/${func.personFunctionId}/details`);\r\n }\r\n };\r\n\r\n return functions ? (\r\n \r\n {functions.map((f) => (\r\n \r\n ))}\r\n \r\n ) : null;\r\n};\r\n\r\nconst Search = () => {\r\n const form = useForm();\r\n const { t } = useTranslation();\r\n\r\n const personId = useWatch({ control: form.control, name: 'Id' });\r\n const personQuery = usePerson(personId);\r\n\r\n return (\r\n \r\n \r\n form.setValue('Id', null)}\r\n />\r\n \r\n {personQuery.isSuccess && personQuery.data.id && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Search;\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const clubApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/club${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/club${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const createOrUpdateClub = async (params) => clubApi.post('/createorupdateclub', params);\r\n\r\nexport const updateAvatar = async (params) => clubApi.post('/uploadavatar', params);\r\n\r\nexport const getAvatar = async (params) => clubApi.post('/getavatar', params);\r\n\r\nexport const removeAvatar = async (params) => clubApi.post('/removeavatar', params);\r\n\r\nexport const getClub = async (params) => clubApi.get('/getclub', { params });\r\n\r\nexport const saveClub = async (params) => clubApi.post('/save', params);\r\n\r\nexport const adminSaveClub = async (params) => clubApi.post('/adminsave', params);\r\n","import React from 'react';\r\nimport { Typography, TextField, Tooltip, MenuItem, Stack } from '@mui/material';\r\nimport { useFormContext, Controller } from 'react-hook-form';\r\nimport RowLabel from './RowLabel';\r\nimport ColumnLabel from './ColumnLabel';\r\nimport { CssTextField } from './CssTextField';\r\nimport { useSelector } from 'react-redux';\r\nimport HelpOutlineIcon from '@mui/icons-material/HelpOutline';\r\n\r\nconst BaseComponent = (props) => {\r\n const { formState, getValues } = useFormContext();\r\n const { fieldsVariant } = useSelector((state) => state.customization);\r\n const {\r\n name,\r\n field,\r\n options,\r\n isReadOnly,\r\n defaultValue,\r\n label,\r\n valueName,\r\n labelName,\r\n disabled,\r\n menuAnchorRef,\r\n rowDirection = false,\r\n optionAll = false,\r\n inputProps,\r\n tooltip,\r\n changeFn = () => {},\r\n variant = fieldsVariant ?? 'standard',\r\n ...other\r\n } = props;\r\n const { onChange, value } = field;\r\n const { errors } = formState;\r\n return (\r\n \r\n {variant === 'standard' && (\r\n <>\r\n {rowDirection ? ( // variant = 'standard'\r\n \r\n ) : (\r\n \r\n \r\n {tooltip && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n {\r\n onChange(e);\r\n changeFn();\r\n },\r\n value: value || '',\r\n MenuProps: {\r\n anchorOrigin: {\r\n vertical: 'bottom',\r\n horizontal: 'center'\r\n },\r\n transformOrigin: {\r\n vertical: 'top',\r\n horizontal: 'center'\r\n }\r\n },\r\n defaultValue,\r\n displayEmpty: true\r\n }}\r\n fullWidth\r\n label={variant === 'standard' ? null : label}\r\n variant={variant}\r\n disabled={isReadOnly || disabled}\r\n >\r\n {optionAll && (\r\n \r\n Όλα\r\n \r\n )}\r\n {Array.isArray(options) ? (\r\n options.map((option) => (\r\n \r\n {labelName ? option[labelName] : option?.label}\r\n \r\n ))\r\n ) : (\r\n
No options available...
\r\n )}\r\n \r\n
\r\n );\r\n};\r\n\r\nconst Dropdown = (props) => {\r\n const { control } = useFormContext();\r\n const { name, rules, changeFn, ...other } = props;\r\n\r\n return (\r\n }\r\n />\r\n );\r\n};\r\n\r\nexport default Dropdown;\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const qformApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/qform${path}/getwithconfiguration`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/qform${path}/getwithconfiguration`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getWithConfiguration = async (dataKey, params) => qformApi.post(`/${dataKey}`, params);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const backofficeApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/backoffice${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/backoffice${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getParams = async (params) => backofficeApi.post('/getparams', params);\r\n\r\nexport const getData = async (params) => backofficeApi.post('/getdata', params);\r\n\r\nexport const getLookups = async (params) => backofficeApi.post('/getlookups', params);\r\n\r\nexport const commitChanges = async (params) => backofficeApi.post('/commitchanges', params);\r\n\r\nexport const getForm = async (params) => backofficeApi.post('/getform', params);\r\n\r\nexport const getExplorer = async (params) =>\r\n axiosInstance\r\n .post(`/qexplorer/${params.dataKey}/get`, params)\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n });\r\n","/* eslint-disable import/no-cycle */\r\nimport axiosInstance from '../axiosInstance';\r\n\r\nexport const userApi = {\r\n post: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/user${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n console.log('err', err);\r\n throw err.error ? err : err?.response;\r\n }),\r\n get: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/user${path}`,\r\n { params },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response;\r\n })\r\n};\r\n\r\nexport const search = async (params) => userApi.post('/search', params);\r\nexport const data = async (params) => userApi.get('/data', { personId: params?.personId, userId: params?.userId });\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const transactionApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/transaction${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/transaction${path}`,\r\n { ...params, ...options },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const gettransaction = async (params, options) => transactionApi.get('/gettransaction', { params }, options);\r\n\r\nexport const createOrUpdateTransactionRequest = async (params) => transactionApi.post('/createorupdatetransactionrequest', params);\r\n\r\nexport const changeStatus = async (params) => transactionApi.post('/changeStatus', params);\r\nexport const getTransactionRequiredFiles = async (params) => transactionApi.get('/GetTransactionRequiredFiles', { params });\r\nexport const uploadFiles = async (params, options) => transactionApi.post('/UploadFile', params, options);\r\nexport const deleteFile = async (params, options) => transactionApi.post('/RemoveFile', params, options);\r\nexport const getFiles = async (params) => transactionApi.post('/GetFiles', params);\r\nexport const downloadFile = async (params, options) => transactionApi.post('/DownloadFile', params, options);\r\nexport const removeFile = async (params) => transactionApi.post('/RemoveFile', params);\r\nexport const paymentEmail = async (params) => transactionApi.post('/PaymentEmail', params);\r\n// export const transactionDetails = async (params) => transactionApi.post('/GetTransactionDetails', params);\r\nexport const splitMerge = async (params) => transactionApi.post('/SplitMerge', params);\r\nexport const getClubAdminsEmails = async (params) => transactionApi.get('/GetClubAdmisEmails', { params });\r\nexport const submitPayment = async (params, options) => transactionApi.post('/PaymentSubmittion', params, options);\r\nexport const manage = async (params) => transactionApi.get('/ManageTransaction', { params });\r\nexport const getTransactionSettings = async (params) => transactionApi.get('/GetTransactionSettings', { params });\r\nexport const paymentLink = async (params) => transactionApi.get('/CreatePaymentLink', { params });\r\nexport const newTransactionOptions = async (params) => transactionApi.get('/NewTransactionOptions', { params });\r\n","/* eslint-disable import/no-cycle */\r\nimport axiosInstance from '../axiosInstance';\r\n\r\nexport const adminApi = {\r\n post: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/admin${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n console.log('err', err);\r\n throw err.error ? err : err?.response;\r\n }),\r\n get: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/admin${path}`,\r\n { params },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response;\r\n })\r\n};\r\n\r\nexport const impersonate = async (params) => adminApi.post('/impersonate', params);\r\nexport const exitImpersonation = async () => adminApi.post('/exitImpersonation');\r\nexport const qubTablesBackOffice = async () => adminApi.get('/qubTablesBackOffice');\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const applicationsApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/applications${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/applications${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getApplicationsType = async (params) => applicationsApi.post('/getapplicationstypes', params);\r\n\r\nexport const getApplicationById = async (params) => applicationsApi.get('/getbyid', { params });\r\n\r\nexport const createApplication = async (params) => applicationsApi.post('/save', params);\r\n\r\nexport const changeStatus = async (params) => applicationsApi.post('/changestatus', params);\r\n\r\nexport const approval = async (params) => applicationsApi.post('/approval', params);\r\n\r\nexport const updateApplication = async (params) => applicationsApi.post('/update', params);\r\n\r\nexport const getSettings = async (params) => applicationsApi.get('/getSettings', { params });\r\n\r\nexport const getAllByGuid = async (params) => applicationsApi.get('/getallbyguid', { params });\r\n\r\nexport const getSettingsByApplicationType = async (params) => applicationsApi.get('/settingsByApplicationType', { params });\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const genericApi = {\r\n post: (path, params, options, cancelToken) => {\r\n return axiosInstance\r\n .post(`/generic${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n });\r\n },\r\n get: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .get(`/generic${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getFiles = async (params, options) => genericApi.post('/getFiles', params, options);\r\n\r\nexport const downloadFile = async (params, options) => genericApi.post('/downloadfile', params, options);\r\n\r\nexport const downloadFileAsBase64 = async (params) => genericApi.get('/downloadfileasbase64', { params });\r\n\r\nexport const removeFile = async (params, options) => genericApi.post('/removefile', params, options);\r\n\r\nexport const getAssets = async () => genericApi.post('/getassets');\r\n\r\nexport const getFilesDataKeyByAppTypeId = async (params) => genericApi.get('/filesDataKeyByAppTypeId', { params });\r\n\r\nexport const uploadFiles = async (params, options) => genericApi.post('/uploadfiles', params, options);\r\n\r\nexport const getAvatar = async (params) => genericApi.post('/getavatar', params);\r\n\r\nexport const removeAvatar = async (params) => genericApi.post('/removeavatar', params);\r\n\r\nexport const getSettings = async (params) => genericApi.post('/getsettings', params);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const emailToolApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/emailTool${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/emailTool${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getOrganizations = async (params) => emailToolApi.get('/getOrganizations', { params });\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const dashboardApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/dashboard${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/dashboard${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const statistics = async (params) => dashboardApi.post('/statistics', params);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const validatorApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/validator${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/validator${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const validateAmka = async (params) => validatorApi.post('/validateAmka', params);\r\nexport const validateAfm = async (params) => validatorApi.post('/validateAfm', params);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const notificationsApi = {\r\n post: (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/notifications${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(`/notifications${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getNotifications = async (params) => notificationsApi.get('/getnotifications', { params });\r\n","/* eslint-disable import/no-cycle */\r\nimport axiosInstance from '../axiosInstance';\r\n\r\nexport const commonApi = {\r\n post: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/common${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n console.log('err', err);\r\n throw err.error ? err : err?.response;\r\n }),\r\n get: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/common${path}`,\r\n { params },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response;\r\n })\r\n};\r\n\r\nexport const lookupDefaultValue = async (params) => commonApi.get('/GetLookupDefaultValue', params);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const translationApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/translation${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/translation${path}`,\r\n { ...params, ...options },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getResources = async (params) => translationApi.get('/GetTranslationResources', { params });\r\n","/* eslint-disable import/no-cycle */\r\nimport axiosInstance from '../axiosInstance';\r\n\r\nexport const devicesApi = {\r\n post: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .post(`/CloudMessaging${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n console.log('err', err);\r\n throw err.error ? err : err?.response;\r\n }),\r\n get: async (path, params, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/CloudMessaging${path}`,\r\n { params },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response;\r\n })\r\n};\r\n\r\nexport const getRegisteredDevices = async () => devicesApi.get('/GetRegisteredDevices'); // dont use it\r\n\r\nexport const registerDevice = async (params) => devicesApi.post('/PairDevice', params);\r\n\r\nexport const issueActivationToken = async (params) => devicesApi.get('/IssueActivationToken', params);\r\n\r\nexport const requestAction = async (params) => devicesApi.post('/RequestAction', params);\r\n\r\nexport const unpairDevice = async (params) => devicesApi.post('/UnpairDevice', params);\r\n","import axios from 'axios';\r\n\r\nconst config = window.localStorage.getItem('CONFIG');\r\nwindow.CONFIG = JSON.parse(config);\r\nconst baseURL = window.CONFIG?.urlAPI;\r\nconst reportsAxiosInstance = axios.create({\r\n baseURL\r\n});\r\n\r\nexport default reportsAxiosInstance;\r\n","import reportsAxiosInstance from 'apis/reportsAxiosInstance';\r\n\r\nconst qubiteqSubKey = window.CONFIG?.qubSubKey;\r\n\r\nexport const reportsApi = {\r\n post: (path, params, options, cancelToken) =>\r\n reportsAxiosInstance\r\n .post(`${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token,\r\n headers: {\r\n 'qubiteq-subscription-key': qubiteqSubKey,\r\n 'Access-Control-Allow-Origin': '*'\r\n }\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, cancelToken) =>\r\n reportsAxiosInstance\r\n .get(`/event${path}`, params, {\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const getQubReport = async (params, options) => reportsApi.post('/Report/GetPDF', params, options);\r\n\r\nexport const getQubReportExcel = async (params, options) => reportsApi.post('/Report/GetExcel', params, options);\r\n\r\nexport const saveFile = async (params, options) => reportsApi.post('/File/UploadFile', params, options);\r\n\r\nexport const getFile = async (params, options) => reportsApi.post('/File/GetFile', params, options);\r\n","import axiosInstance from '../axiosInstance';\r\n\r\nexport const paymentApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`/payment${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .get(\r\n `/payment${path}`,\r\n { ...params, ...options },\r\n {\r\n cancelToken: cancelToken?.token\r\n }\r\n )\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const pay = async (params) => paymentApi.post('/pay', params);\r\n","import axios from 'axios';\r\nimport moment from 'moment';\r\nimport { store } from 'store';\r\n\r\nconst config = window.localStorage.getItem('CONFIG');\r\nwindow.CONFIG = JSON.parse(config);\r\nconst baseURL = window.CONFIG?.AccessDbAPI;\r\nconst accessAxiosInstance = axios.create({\r\n baseURL\r\n});\r\n\r\naccessAxiosInstance.interceptors.request.use((config) => {\r\n if (config.data) {\r\n Object.keys(config.data).forEach(async (key) => {\r\n // Find a valid date object and format it\r\n if (config.data[key] instanceof Date && !Number.isNaN(config.data[key])) {\r\n config.data[key] = moment(config.data[key]).format('YYYY-MM-DDTHH:mm:ss.SSS');\r\n }\r\n });\r\n }\r\n const state = store.getState();\r\n if (!config.headers.Authorization) {\r\n config.headers = {\r\n ...config.headers,\r\n Authorization: `Bearer ${state.auth.token}`\r\n };\r\n }\r\n return config;\r\n});\r\n\r\nexport default accessAxiosInstance;\r\n","import { store } from 'store';\r\nimport axiosInstance from '../accessAxiosInstance';\r\n\r\nconst state = store.getState();\r\n\r\nexport const accessApi = {\r\n post: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .post(`${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token,\r\n headers: {\r\n Authorization: `Bearer ${state.auth.token}`,\r\n Accept: 'application/msaccess'\r\n }\r\n })\r\n .then((res) => {\r\n // if (res?.data?.error || res?.data?.status === 'error') throw res.data;\r\n return res?.data;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n }),\r\n get: (path, params, options, cancelToken) =>\r\n axiosInstance\r\n .get(`${path}`, params, {\r\n ...options,\r\n cancelToken: cancelToken?.token,\r\n headers: {\r\n Authorization: `Bearer ${state.auth.token}`,\r\n Accept: 'application/msaccess'\r\n }\r\n })\r\n .then((res) => {\r\n if (res?.data?.error) throw res.data;\r\n return res;\r\n })\r\n .catch((err) => {\r\n throw err.error ? err : err?.response?.data;\r\n })\r\n};\r\n\r\nexport const downloadMDB = async (params, options) => accessApi.get('/Export/DownloadMDB', params, options);\r\n","export default __webpack_public_path__ + \"static/media/TermsOfUse.f0bf4bc2.pdf\";","import { Box, Typography, Stack, Divider, Chip, Avatar, Button } from '@mui/material';\r\nimport { useTranslation } from 'react-i18next';\r\nimport PropTypes from 'prop-types';\r\nimport { format } from 'date-fns';\r\nimport { useEffect, useState } from 'react';\r\nimport { getAvatar } from 'apis/controllers/person';\r\nimport { useNavigate } from 'react-router';\r\n\r\nconst PersonInfo = ({ person }) => {\r\n const { t } = useTranslation();\r\n const navigate = useNavigate();\r\n const [avatar, setAvatar] = useState('');\r\n\r\n useEffect(() => {\r\n const fetch = async () => {\r\n const result = await getAvatar({ recordGuid: person.id });\r\n setAvatar(result);\r\n };\r\n\r\n fetch();\r\n }, [person.id]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n } spacing={1}>\r\n <>\r\n {`${person.firstName} ${person.lastName}`}\r\n {person.fathersName && {`του ${person.fathersName}`}}\r\n \r\n {person.gender.description}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {person.dob && (\r\n \r\n {format(new Date(person.dob), 'dd/MM/yyyy')}\r\n \r\n )}\r\n \r\n {person.hasUser ? (\r\n navigate(`/users-and-access/users/manage/${person?.id}/details`)}\r\n >\r\n {t('ViewUser')}\r\n \r\n ) : (\r\n navigate(`/users-and-access/users/create/${person?.id}`)}\r\n >\r\n {t('CreateNewUser')}\r\n \r\n )}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nPersonInfo.propTypes = {\r\n person: PropTypes.object\r\n};\r\n\r\nexport default PersonInfo;\r\n","// mui\r\nimport { Grid, Stack, Typography } from '@mui/material';\r\n\r\n// icons\r\nimport { IconLockAccess } from '@tabler/icons';\r\n\r\n// colors\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\n\r\nexport default () => {\r\n return (\r\n \r\n \r\n \r\n \r\n Restricted permission\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n","import { useDispatch } from 'react-redux';\r\nimport { SET_BREADCRUMBS, RESET_BREADCRUMBS } from 'store/actions';\r\nimport PropTypes from 'prop-types';\r\nimport { useEffect } from 'react';\r\n\r\nexport const useBreadcrumbs = (payload) => {\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n dispatch({ type: SET_BREADCRUMBS, payload });\r\n return () => {\r\n dispatch({ type: RESET_BREADCRUMBS });\r\n };\r\n }, [payload, dispatch]);\r\n};\r\n\r\nuseBreadcrumbs.propTypes = {\r\n breadcrumbs: PropTypes.array\r\n};\r\n","export default __webpack_public_path__ + \"static/media/GDPR_TKD.d3b3bb05.pdf\";","// material-ui\r\nimport { Link, Typography, Stack } from '@mui/material';\r\nimport qb from 'assets/images/qb.png';\r\nimport PDF from 'assets/TermsOfUse.pdf';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useQuery } from 'react-query';\r\nimport { generic } from 'apis';\r\n\r\n// ==============================|| FOOTER - AUTHENTICATION 2 & 3 ||============================== //\r\n\r\nconst AuthFooter = () => {\r\n const { t } = useTranslation();\r\n // const assetsQuery = useQuery(['assets'], async () => {\r\n // const assets = await generic.getAssets();\r\n // return assets;\r\n // });\r\n\r\n return (\r\n
\r\n
\r\n \r\n \"Qb\"\r\n \r\n
\r\n\r\n {/* window.open(assetsQuery?.data?.termsOfUse)}\r\n sx={{ cursor: 'pointer' }}\r\n underline=\"hover\"\r\n > */}\r\n
\r\n window.open(PDF)}\r\n onClick={() => window.open(`${window.location.origin}/TermsOfUse`, '_blank')}\r\n sx={{ cursor: 'pointer' }}\r\n underline=\"hover\"\r\n >\r\n {t('TermsOfUse')}\r\n \r\n
\r\n\r\n
\r\n
\r\n NFC Sports || Powered by \r\n \r\n QUBITEQ\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default AuthFooter;\r\n","export default __webpack_public_path__ + \"static/media/msaccess.8547f034.png\";","export default __webpack_public_path__ + \"static/media/Help.f55b29c1.pdf\";","var map = {\n\t\"./AthletesHelp.pdf\": 752,\n\t\"./ClubsHelp.pdf\": 753,\n\t\"./GDPR_TKD.pdf\": 678,\n\t\"./Help.pdf\": 684,\n\t\"./OfficialsHelp.pdf\": 754,\n\t\"./PaymentsHelp.pdf\": 755,\n\t\"./Terms.pdf\": 756,\n\t\"./TermsOfUse.pdf\": 608,\n\t\"./css/explorer.css\": 539,\n\t\"./css/mobile-explorer.css\": 675,\n\t\"./css/qubStyles.css\": 622,\n\t\"./css/wj-treegrid.css\": 680,\n\t\"./css/wj-viewonly.css\": 674,\n\t\"./images/auth/auth-blue-card.svg\": 757,\n\t\"./images/auth/auth-pattern-dark.svg\": 758,\n\t\"./images/auth/auth-pattern.svg\": 759,\n\t\"./images/auth/auth-purple-card.svg\": 760,\n\t\"./images/auth/auth-signup-blue-card.svg\": 761,\n\t\"./images/auth/auth-signup-white-card.svg\": 762,\n\t\"./images/csvIcon.png\": 412,\n\t\"./images/default-user-image.png\": 402,\n\t\"./images/excelIcon.png\": 327,\n\t\"./images/icons/earning.svg\": 763,\n\t\"./images/icons/social-google.svg\": 764,\n\t\"./images/logo copy.png\": 765,\n\t\"./images/logo-dark.svg\": 766,\n\t\"./images/logo-white.svg\": 767,\n\t\"./images/logo.png\": 768,\n\t\"./images/logo.svg\": 769,\n\t\"./images/msaccess.png\": 681,\n\t\"./images/no-image-icon.png\": 487,\n\t\"./images/pdf.png\": 349,\n\t\"./images/qb.png\": 258,\n\t\"./images/users/user-round.svg\": 770,\n\t\"./main.css\": 623,\n\t\"./scss/_themes-vars.module.scss\": 152,\n\t\"./scss/style.scss\": 624,\n\t\"./tailwind.css\": 771\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 751;","export default __webpack_public_path__ + \"static/media/AthletesHelp.ca535a40.pdf\";","export default __webpack_public_path__ + \"static/media/ClubsHelp.7c4e7e42.pdf\";","export default __webpack_public_path__ + \"static/media/OfficialsHelp.008fa613.pdf\";","export default __webpack_public_path__ + \"static/media/PaymentsHelp.b306bd8e.pdf\";","export default __webpack_public_path__ + \"static/media/Terms.128b3b81.pdf\";","export default __webpack_public_path__ + \"static/media/auth-blue-card.21877993.svg\";","export default __webpack_public_path__ + \"static/media/auth-pattern-dark.df61463d.svg\";","export default __webpack_public_path__ + \"static/media/auth-pattern.d80b0e94.svg\";","export default __webpack_public_path__ + \"static/media/auth-purple-card.f8fb8b2f.svg\";","export default __webpack_public_path__ + \"static/media/auth-signup-blue-card.cae8da7b.svg\";","export default __webpack_public_path__ + \"static/media/auth-signup-white-card.245f388a.svg\";","export default __webpack_public_path__ + \"static/media/earning.00f461a5.svg\";","export default __webpack_public_path__ + \"static/media/social-google.a57081bd.svg\";","export default __webpack_public_path__ + \"static/media/logo copy.602048df.png\";","export default __webpack_public_path__ + \"static/media/logo-dark.67cadf22.svg\";","export default __webpack_public_path__ + \"static/media/logo-white.54072849.svg\";","export default __webpack_public_path__ + \"static/media/logo.eb3ce198.png\";","export default __webpack_public_path__ + \"static/media/logo.74a2ce07.svg\";","export default __webpack_public_path__ + \"static/media/user-round.27fe79b1.svg\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mode\":\"light\",\"paper\":\"#fff\",\"background\":\"#f0f0f0\",\"primaryLight\":\"#e3f2fd\",\"primary200\":\"#90caf9\",\"primaryMain\":\"#2196f3\",\"primaryDark\":\"#1e88e5\",\"primary800\":\"#1565c0\",\"secondaryLight\":\"#ede7f6\",\"secondary200\":\"#b39ddb\",\"secondaryMain\":\"#673ab7\",\"secondaryDark\":\"#5e35b1\",\"secondary800\":\"#4527a0\",\"successLight\":\"#4caf50\",\"success200\":\"#69f0ae\",\"successMain\":\"#2e7d32\",\"successDark\":\"#1b5e20\",\"errorLight\":\"#ef5350\",\"errorMain\":\"#d32f2f\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#ff9800\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey800\":\"#3e3e3e\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e3f2fd\",\"darkPrimaryMain\":\"#2196f3\",\"darkPrimaryDark\":\"#1e88e5\",\"darkPrimary200\":\"#90caf9\",\"darkPrimary800\":\"#1565c0\",\"darkSecondaryLight\":\"#d1c4e9\",\"darkSecondaryMain\":\"#7c4dff\",\"darkSecondaryDark\":\"#651fff\",\"darkSecondary200\":\"#b39ddb\",\"darkSecondary800\":\"#6200ea\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mode\":\"dark\",\"paper\":\"#111936\",\"background\":\"#1a223f\",\"primaryLight\":\"#e3f2fd\",\"primary200\":\"#90caf9\",\"primaryMain\":\"#2196f3\",\"primaryDark\":\"#1e88e5\",\"primary800\":\"#1565c0\",\"secondaryLight\":\"#d1c4e9\",\"secondary200\":\"#b39ddb\",\"secondaryMain\":\"#7c4dff\",\"secondaryDark\":\"#651fff\",\"secondary800\":\"#6200ea\",\"successLight\":\"#4caf50\",\"success200\":\"#69f0ae\",\"successMain\":\"#2e7d32\",\"successDark\":\"#1b5e20\",\"errorLight\":\"#ef5350\",\"errorMain\":\"#d32f2f\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#ff9800\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#3e3e3e\",\"grey100\":\"#424242\",\"grey200\":\"#454545\",\"grey300\":\"#757575\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#bdbdbd\",\"grey700\":\"#e0e0e0\",\"grey800\":\"#eee\",\"grey900\":\"#f5f5f5\",\"lightPaper\":\"#fff\",\"lightBackground\":\"#f0f0f0\",\"lightLevel1\":\"#3e3e3e\",\"lightLevel2\":\"#454545\",\"lightTextTitle\":\"#d7dcec\",\"lightTextPrimary\":\"#bdc8f0\",\"lightTextSecondary\":\"#8492c4\",\"lightPrimaryLight\":\"#e3f2fd\",\"lightPrimaryMain\":\"#2196f3\",\"lightPrimaryDark\":\"#1e88e5\",\"lightPrimary200\":\"#90caf9\",\"lightPrimary800\":\"#1565c0\",\"lightSecondaryLight\":\"#ede7f6\",\"lightSecondaryMain\":\"#673ab7\",\"lightSecondaryDark\":\"#5e35b1\",\"lightSecondary200\":\"#b39ddb\",\"lightSecondary800\":\"#4527a0\",\"white\":\"#fff\",\"black\":\"#000\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"background\":\"#f0f0f0\",\"primaryLight\":\"#e3f2fd\",\"primary200\":\"#90caf9\",\"primaryMain\":\"#2196f3\",\"primaryDark\":\"#1e88e5\",\"primary800\":\"#1565c0\",\"secondaryLight\":\"#ede7f6\",\"secondary200\":\"#b39ddb\",\"secondaryMain\":\"#673ab7\",\"secondaryDark\":\"#5e35b1\",\"secondary800\":\"#4527a0\",\"successLight\":\"#4caf50\",\"success200\":\"#69f0ae\",\"successMain\":\"#2e7d32\",\"successDark\":\"#1b5e20\",\"errorLight\":\"#ef5350\",\"errorMain\":\"#d32f2f\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#ff9800\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey800\":\"#3e3e3e\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e3f2fd\",\"darkPrimaryMain\":\"#2196f3\",\"darkPrimaryDark\":\"#1e88e5\",\"darkPrimary200\":\"#90caf9\",\"darkPrimary800\":\"#1565c0\",\"darkSecondaryLight\":\"#d1c4e9\",\"darkSecondaryMain\":\"#7c4dff\",\"darkSecondaryDark\":\"#651fff\",\"darkSecondary200\":\"#b39ddb\",\"darkSecondary800\":\"#6200ea\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"background\":\"#fff\",\"primaryLight\":\"#a6b5a6\",\"primary200\":\"#b8bfa6\",\"primaryMain\":\"#a6b5a6\",\"primaryDark\":\"#3f4531\",\"primary800\":\"#525940\",\"secondaryLight\":\"#a6b5a6\",\"secondary200\":\"#dedede\",\"secondaryMain\":\"#a6b5a6\",\"secondaryDark\":\"#dedede\",\"secondary800\":\"#c09c3f\",\"successLight\":\"#81c784\",\"success200\":\"#4caf50\",\"successMain\":\"#388e3c\",\"successDark\":\"#1b5e20\",\"errorLight\":\"#e57373\",\"errorMain\":\"#f44336\",\"errorDark\":\"#d32f2f\",\"orangeLight\":\"#ffcc80\",\"orangeMain\":\"#ff5722\",\"orangeDark\":\"#e64a19\",\"warningLight\":\"#ffb74d\",\"warningMain\":\"#ff9800\",\"warningDark\":\"#f57c00\",\"grey50\":\"#f5f5f5\",\"grey100\":\"#eee\",\"grey200\":\"#bdbdbd\",\"grey300\":\"#9e9e9e\",\"grey500\":\"#616161\",\"grey600\":\"#424242\",\"grey700\":\"#212121\",\"grey800\":\"#191919\",\"grey900\":\"#121212\",\"darkPaper\":\"#191919\",\"darkBackground\":\"#121212\",\"darkLevel1\":\"#212946\",\"darkLevel2\":\"#29314f\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#c5e1a5\",\"darkPrimaryMain\":\"#4caf50\",\"darkPrimaryDark\":\"#388e3c\",\"darkPrimary200\":\"#81c784\",\"darkPrimary800\":\"#2e7d32\",\"darkSecondaryLight\":\"#ffcc80\",\"darkSecondaryMain\":\"#ff9800\",\"darkSecondaryDark\":\"#f57c00\",\"darkSecondary200\":\"#ffb74d\",\"darkSecondary800\":\"#ef6c00\"};","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\r\n);\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then((registration) => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch((error) => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' }\r\n })\r\n .then((response) => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (response.status === 404 || (contentType != null && contentType.indexOf('javascript') === -1)) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then((registration) => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log('No internet connection found. App is running in offline mode.');\r\n });\r\n}\r\n\r\nexport function register(config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then((registration) => {\r\n registration.unregister();\r\n })\r\n .catch((error) => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import { Link } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { ButtonBase } from '@mui/material';\r\n\r\n// project imports\r\nimport config from 'config';\r\nimport { Logo } from '@qubiteq/qublib';\r\n// material-ui\r\n// import logo from 'assets/images/logo.png';\r\nimport { useSettings } from 'hooks/useSettings';\r\n// ==============================|| MAIN LOGO ||============================== //\r\n\r\nconst LogoSection = () => {\r\n const { projectLogo } = useSettings();\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default LogoSection;\r\n","import { useState, useRef, useEffect } from 'react';\r\nimport { useNavigate } from 'react-router-dom';\r\nimport { useSelector } from 'react-redux';\r\n// import { ChangeUsernameDialog } from '../../../../ui-component/change-username/change-username-dialog';\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport {\r\n Box,\r\n Chip,\r\n ClickAwayListener,\r\n Divider,\r\n List,\r\n ListItemButton,\r\n ListItemIcon,\r\n ListItemText,\r\n Paper,\r\n Popper,\r\n Stack,\r\n Typography,\r\n Avatar\r\n} from '@mui/material';\r\nimport MainCard from 'ui-component/cards/MainCard';\r\nimport { Transitions } from '@qubiteq/qublib';\r\nimport { IconLogout, IconSettings, IconUserCircle, IconWriting } from '@tabler/icons';\r\nimport { useMe } from 'hooks/useMe';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useLogout } from 'hooks/useLogOut';\r\nimport { useQuery } from 'react-query';\r\nimport { dashboard, person } from 'apis';\r\nimport Conditional from 'common/Conditional';\r\n\r\n// ==============================|| PROFILE MENU ||============================== //\r\n\r\nconst ProfileSection = () => {\r\n const theme = useTheme();\r\n const { whoami } = useMe();\r\n const { t } = useTranslation();\r\n const customization = useSelector((state) => state.customization);\r\n const navigate = useNavigate();\r\n const [selectedIndex, setSelectedIndex] = useState(-1);\r\n const [open, setOpen] = useState(false);\r\n const { logout } = useLogout();\r\n const [avatar, setAvatar] = useState('');\r\n // const [changeEmailOpen, setChangeEmailOpen] = useState(false);\r\n\r\n const anchorRef = useRef(null);\r\n\r\n const statistics = useQuery(['userId'], async () => {\r\n const result = await dashboard.statistics();\r\n return result;\r\n });\r\n\r\n useEffect(() => {\r\n const fetchAvatar = async () => {\r\n try {\r\n const res = await person.getAvatar({\r\n projectTableId: 2,\r\n recordId: statistics.data[2].Data[0].recordId\r\n });\r\n if (res !== '') {\r\n setAvatar(res);\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n fetchAvatar();\r\n }, [statistics.status]);\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setSelectedIndex(-1);\r\n setOpen(false);\r\n };\r\n\r\n const handleListItemClick = (event, index, route = '') => {\r\n setSelectedIndex(index);\r\n handleClose(event);\r\n\r\n if (route && route !== '') {\r\n navigate(route);\r\n }\r\n };\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n return (\r\n <>\r\n {/* \r\n {`${whoami?.firstName?.substring(0, 1)}${whoami?.lastName?.substring(0, 1)}`}\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n variant=\"outlined\"\r\n ref={anchorRef}\r\n aria-controls={open ? 'menu-list-grow' : undefined}\r\n aria-haspopup=\"true\"\r\n onClick={handleToggle}\r\n color=\"primary\"\r\n /> */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`${whoami?.firstName?.substring(0, 1)}${whoami?.lastName?.substring(0, 1)}`}\r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* {t('GoodMorning')}, */}\r\n \r\n {`${whoami?.firstName} ${whoami?.lastName}`}\r\n \r\n \r\n {`${whoami?.roles?.join(', ')}`}\r\n \r\n \r\n \r\n \r\n \r\n handleListItemClick(event, 0, '/user/settings')}\r\n >\r\n \r\n \r\n \r\n {t('AccountSettings')}} />\r\n \r\n \r\n \r\n \r\n \r\n {t('Logout')}} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default ProfileSection;\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, ButtonBase, ClickAwayListener, Paper, Popper, useMediaQuery, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport { Transitions } from '@qubiteq/qublib';\r\nimport MainCard from 'ui-component/cards/MainCard';\r\n\r\n// propTypes\r\nimport propTypes from 'prop-types';\r\nimport { useSelector } from 'react-redux';\r\n\r\n// ==============================|| NOTIFICATION ||============================== //\r\n\r\nconst languageToString = (language) => {\r\n if (language === 'gre') {\r\n return 'ΕΛ';\r\n }\r\n if (language === 'en') {\r\n return 'EN';\r\n }\r\n return '';\r\n};\r\n\r\nconst Wrapper = ({ children }) => {\r\n const theme = useTheme();\r\n const matchesXs = useMediaQuery(theme.breakpoints.down('md'));\r\n const { language } = useSelector((state) => state.customization);\r\n const [open, setOpen] = useState(false);\r\n /**\r\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\r\n * */\r\n const anchorRef = useRef(null);\r\n\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {languageToString(language)}\r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nWrapper.propTypes = {\r\n children: propTypes.node\r\n};\r\n\r\nexport default Wrapper;\r\n","import { useState } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { SET_LANGUAGE } from 'store/actions';\r\n\r\n// i18next\r\nimport { useTranslation } from 'react-i18next';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Grid, Divider, FormControl, FormControlLabel, Radio, RadioGroup, Stack, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport Wrapper from './Wrapper';\r\n\r\n// ==============================|| LANGUAGE ||============================== //\r\n\r\nconst LanguageSection = () => {\r\n const theme = useTheme();\r\n const dispatch = useDispatch();\r\n const { language } = useSelector((state) => state.customization);\r\n const [selectedLanguage, setLanguage] = useState(language);\r\n const { i18n, t } = useTranslation();\r\n\r\n const handleLanguageChange = (e) => {\r\n setLanguage(e.target.value);\r\n dispatch({ type: SET_LANGUAGE, language: e.target.value });\r\n i18n.changeLanguage(e.target.value);\r\n };\r\n\r\n const LanguageRadioGroup = () => (\r\n \r\n \r\n }\r\n label=\"English\"\r\n sx={{\r\n '& .MuiSvgIcon-root': { fontSize: 28 },\r\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\r\n }}\r\n />\r\n }\r\n label=\"Ελληνικά\"\r\n sx={{\r\n '& .MuiSvgIcon-root': { fontSize: 28 },\r\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\r\n }}\r\n />\r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {t('SelectLanguage')}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default LanguageSection;\r\n","import { useNavigate } from 'react-router';\r\nimport { useSnackbar } from 'notistack';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useState } from 'react';\r\nimport decodeToken from 'utils/decode-token';\r\nimport { Button } from '@mui/material';\r\nimport { useQueryClient } from 'react-query';\r\nimport { LOGIN, STORE_MENU } from '../../../../store/actions';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\n// Apis\r\nimport { admin } from '../../../../apis';\r\n\r\nconst ImpersonationSection = () => {\r\n const navigate = useNavigate();\r\n const dispatch = useDispatch();\r\n const queryClient = useQueryClient();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n const { token } = useSelector((state) => state.auth);\r\n\r\n const data = decodeToken(token);\r\n\r\n const onSubmit = async () => {\r\n await admin\r\n .exitImpersonation()\r\n .then((res) => {\r\n dispatch({ type: STORE_MENU, menuItems: res?.menu });\r\n dispatch({ type: LOGIN, payload: res });\r\n queryClient.invalidateQueries('me');\r\n enqueueSnackbar(t('LoginSuccess'), {\r\n variant: 'success'\r\n });\r\n navigate('/home');\r\n })\r\n .catch((error) => {\r\n enqueueSnackbar(error?.data?.message || t('SomethingWrong'), {\r\n variant: 'error'\r\n });\r\n });\r\n };\r\n\r\n return (\r\n <>\r\n {data?.original_name ? (\r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default ImpersonationSection;\r\n","import Breadcrumbs from '@mui/material/Breadcrumbs';\r\nimport { Box, Typography, Stack, useMediaQuery, useTheme } from '@mui/material';\r\nimport { useSelector } from 'react-redux';\r\nimport { useLocation, useNavigate } from 'react-router-dom';\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\n\r\nconst BreadcrumbSection = () => {\r\n const { breadcrumbs, info } = useSelector((state) => state.breadcrumbs);\r\n const { pathname } = useLocation();\r\n const navigate = useNavigate();\r\n const theme = useTheme();\r\n const matchDownMd = useMediaQuery(theme.breakpoints.up('sm'));\r\n return (\r\n \r\n {matchDownMd && (\r\n \r\n \r\n {breadcrumbs?.map((item, key) => {\r\n const name = item.name ? item.name : '';\r\n const path = item.path ? item.path : pathname;\r\n return (\r\n \r\n navigate(path)}\r\n >\r\n {name}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n {info}\r\n \r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default BreadcrumbSection;\r\n","import { Typography } from '@mui/material';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst FullNameSection = ({ firstName = '', lastName = '' }) => {\r\n return {`${firstName} ${lastName}`};\r\n};\r\n\r\nexport default FullNameSection;\r\n\r\nFullNameSection.propTypes = {\r\n firstName: PropTypes.string.isRequired,\r\n lastName: PropTypes.string.isRequired\r\n};\r\n","import PropTypes from 'prop-types';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Avatar, Box, ButtonBase, Stack } from '@mui/material';\r\n\r\n// project imports\r\nimport LogoSection from '../LogoSection';\r\n// import SearchSection from './SearchSection';\r\nimport ProfileSection from './ProfileSection';\r\n// import NotificationSection from './NotificationSection';\r\nimport LanguageSection from './LanguageSection';\r\n\r\nimport ImpersonationSection from './ImpersonationSection';\r\n\r\n// assets\r\nimport { IconMenu2 } from '@tabler/icons';\r\n\r\nimport BreadcrumbSection from './BreadcrumbSection';\r\nimport FullNameSection from './FullNameSection';\r\nimport { useMe } from 'hooks/useMe';\r\n// ==============================|| MAIN NAVBAR / HEADER ||============================== //\r\n\r\nconst Header = ({ handleLeftDrawerToggle }) => {\r\n const theme = useTheme();\r\n const { whoami } = useMe();\r\n\r\n return (\r\n \r\n {/* logo & toggler button */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* header search */}\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nHeader.propTypes = {\r\n handleLeftDrawerToggle: PropTypes.func\r\n};\r\n\r\nexport default Header;\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef, lazy, useEffect, useMemo } from 'react';\r\nimport { Link, useLocation } from 'react-router-dom';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Avatar, Chip, ListItemButton, ListItemIcon, ListItemText, Typography, useMediaQuery } from '@mui/material';\r\n\r\n// project imports\r\nimport { MENU_OPEN, SET_MENU } from 'store/actions';\r\nimport config from 'config';\r\n\r\n// assets\r\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\r\n\r\n// i18n\r\nimport { Trans } from 'react-i18next';\r\n\r\nimport { Loadable } from '@qubiteq/qublib';\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\n\r\n// ==============================|| SIDEBAR MENU LIST ITEMS ||============================== //\r\n\r\nconst NavItem = ({ item, level }) => {\r\n const theme = useTheme();\r\n const dispatch = useDispatch();\r\n const menu = useSelector((state) => state.menu);\r\n const customization = useSelector((state) => state.customization);\r\n const matchesSM = useMediaQuery(theme.breakpoints.down('lg'));\r\n const location = useLocation();\r\n\r\n const Icon = Loadable(\r\n useMemo(\r\n () =>\r\n lazy(() =>\r\n import('@tabler/icons').then((module) => {\r\n return {\r\n default: module[item.icon]\r\n };\r\n })\r\n ),\r\n [item.icon]\r\n )\r\n );\r\n const itemIcon = item?.icon ? (\r\n \r\n ) : (\r\n id === item?.id) > -1 ? 8 : 6,\r\n height: menu.isOpen.findIndex((id) => id === item?.id) > -1 ? 8 : 6\r\n }}\r\n fontSize={level > 0 ? 'inherit' : 'medium'}\r\n />\r\n );\r\n\r\n let itemTarget = '_self';\r\n if (item.target) {\r\n itemTarget = '_blank';\r\n }\r\n\r\n let listItemProps = {\r\n component: forwardRef((props, ref) => )\r\n };\r\n if (item?.external) {\r\n listItemProps = { component: 'a', href: item.url, target: itemTarget };\r\n }\r\n\r\n /* useEffect(() => {\r\n if (item?.url.includes(location?.pathname?.split('/')[1])) {\r\n dispatch({ type: MENU_OPEN, id: item.id });\r\n }\r\n }, [location, dispatch, item.id, item?.url]); */\r\n\r\n const itemHandler = (id) => {\r\n if (matchesSM) dispatch({ type: SET_MENU, opened: false });\r\n };\r\n\r\n return (\r\n 1 ? 1 : 1.25,\r\n pl: `${level * 24}px`\r\n }}\r\n selected={menu.isOpen.findIndex((id) => id === item.id) > -1}\r\n onClick={() => itemHandler(item.id)}\r\n tabIndex={-1}\r\n >\r\n {itemIcon}\r\n \r\n {item.title}\r\n \r\n }\r\n secondary={\r\n item.caption && (\r\n \r\n {item.caption}\r\n \r\n )\r\n }\r\n />\r\n {item.chip && (\r\n {item.chip.avatar}}\r\n />\r\n )}\r\n \r\n );\r\n};\r\n\r\nNavItem.propTypes = {\r\n item: PropTypes.object,\r\n level: PropTypes.number\r\n};\r\n\r\nexport default NavItem;\r\n","import PropTypes from 'prop-types';\r\nimport { useState, lazy, useEffect, forwardRef, useMemo } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Collapse, List, ListItemButton, ListItemIcon, ListItemText, Typography, Link } from '@mui/material';\r\n\r\n// project imports\r\nimport NavItem from '../NavItem';\r\n\r\n// assets\r\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\r\nimport { IconChevronDown, IconChevronUp } from '@tabler/icons';\r\n\r\nimport { Loadable } from '@qubiteq/qublib';\r\nimport { MENU_OPEN } from 'store/actions';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\n\r\nimport config from 'config';\r\nimport { useLocation, useNavigate } from 'react-router';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Can } from 'context/permissionContext';\r\n\r\n// ==============================|| SIDEBAR MENU LIST COLLAPSE ITEMS ||============================== //\r\n\r\nconst NavCollapse = ({ menu, level }) => {\r\n const theme = useTheme();\r\n const dispatch = useDispatch();\r\n const customization = useSelector((state) => state.customization);\r\n const menuState = useSelector((state) => state.menu);\r\n const navigate = useNavigate();\r\n const location = useLocation();\r\n const { t } = useTranslation();\r\n\r\n const [open, setOpen] = useState(false);\r\n const [selected, setSelected] = useState(null);\r\n\r\n useEffect(() => {\r\n const [openedId] = menuState.isOpen;\r\n if (openedId === menu.id || (openedId > -1 && menu?.children.findIndex((child) => child.id === openedId) > -1)) {\r\n setOpen(true);\r\n setSelected(menu.id);\r\n } else {\r\n setOpen(false);\r\n setSelected(null);\r\n }\r\n }, [menu, menuState]);\r\n\r\n /* useEffect(() => {\r\n if (menu?.url.includes(location?.pathname?.split('/')[1])) {\r\n dispatch({ type: MENU_OPEN, id: menu.id });\r\n }\r\n menu?.children.forEach((item) => {\r\n if (item?.url.includes(location?.pathname?.split('/')[1])) {\r\n dispatch({ type: MENU_OPEN, id: item.id });\r\n }\r\n });\r\n }, [location, dispatch, menu]); */\r\n\r\n const handleClick = () => {\r\n setOpen(!open);\r\n setSelected(menu.id);\r\n if (location.pathname !== `${config.basename}${menu.url}`) navigate(`${config.basename}${menu.url}`);\r\n };\r\n\r\n // menu collapse & item\r\n const menus = menu.children?.map((item) => {\r\n const [subject, action] = item.permission?.split('.') ?? [];\r\n switch (item.type) {\r\n case 'collapse':\r\n return ;\r\n case 'item':\r\n return (\r\n \r\n {(allowed) => (allowed || (!subject && !action)) && }\r\n \r\n );\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n const Icon = Loadable(\r\n useMemo(\r\n () =>\r\n lazy(() =>\r\n import('@tabler/icons').then((module) => {\r\n return {\r\n default: module[menu.icon]\r\n };\r\n })\r\n ),\r\n [menu]\r\n )\r\n );\r\n\r\n const menuIcon = menu?.icon ? (\r\n \r\n ) : (\r\n id === menu?.id) > -1 ? 8 : 6,\r\n height: menu.isOpen.findIndex((id) => id === menu?.id) > -1 ? 8 : 6\r\n }}\r\n fontSize={level > 0 ? 'inherit' : 'medium'}\r\n />\r\n );\r\n\r\n return (\r\n <>\r\n 1 ? 'transparent !important' : 'inherit',\r\n py: level > 1 ? 1 : 1.25,\r\n pl: `${level * 24}px`\r\n }}\r\n selected={selected === menu.id}\r\n // onClick={() => itemHandler(item.id)}\r\n onClick={handleClick}\r\n tabIndex={-1}\r\n >\r\n {menuIcon}\r\n \r\n {t(menu.title)}\r\n \r\n }\r\n secondary={\r\n menu.caption && (\r\n \r\n {menu.caption}\r\n \r\n )\r\n }\r\n />\r\n {open ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n {menus}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nNavCollapse.propTypes = {\r\n menu: PropTypes.object,\r\n level: PropTypes.number\r\n};\r\n\r\nexport default NavCollapse;\r\n","import PropTypes from 'prop-types';\r\n\r\n// i18n\r\nimport { Trans } from 'react-i18next';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Divider, List, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport NavItem from '../NavItem';\r\nimport NavCollapse from '../NavCollapse';\r\n\r\n// permissions\r\nimport { Can } from 'context/permissionContext';\r\n\r\n// ==============================|| SIDEBAR MENU LIST GROUP ||============================== //\r\n\r\nconst NavGroup = ({ item }) => {\r\n const theme = useTheme();\r\n // menu list collapse & items\r\n const [subject, action] = item.permission?.split('.') ?? [];\r\n\r\n const items = item.children?.map((menuItem) => {\r\n const [subject, action] = menuItem.permission?.split('.') ?? [];\r\n switch (menuItem.type) {\r\n case 'collapse':\r\n return (\r\n \r\n {(allowed) => (allowed || (!subject && !action)) && }\r\n \r\n );\r\n case 'item':\r\n return (\r\n \r\n {(allowed) => (allowed || (!subject && !action)) && }\r\n \r\n );\r\n\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n return (\r\n \r\n {(allowed) =>\r\n allowed || (!subject && !action) ? (\r\n <>\r\n \r\n {item.title}\r\n {item.caption && (\r\n \r\n {item.caption}\r\n \r\n )}\r\n \r\n )\r\n }\r\n >\r\n {items}\r\n \r\n\r\n {/* group divider */}\r\n \r\n \r\n ) : null\r\n }\r\n \r\n );\r\n};\r\n\r\nNavGroup.propTypes = {\r\n item: PropTypes.object\r\n};\r\n\r\nexport default NavGroup;\r\n","// material-ui\r\nimport { Skeleton, Stack, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport NavGroup from './NavGroup';\r\nimport { useSelector } from 'react-redux';\r\n// import menuItems from 'menu-items';\r\nimport { withSkeleton } from '@qubiteq/qublib';\r\nimport { useMe } from 'hooks/useMe';\r\n\r\n// ==============================|| SIDEBAR MENU LIST ||============================== //\r\n\r\nconst NavGroupSkeleton = () => {\r\n return (\r\n \r\n \r\n {[1, 2, 3, 4, 5].map((_, index) => (\r\n \r\n ))}\r\n \r\n );\r\n};\r\n\r\nconst NavGroupWithSkeleton = withSkeleton(NavGroup, NavGroupSkeleton);\r\n\r\nconst MenuList = () => {\r\n const { menuItems } = useSelector((state) => state.menu);\r\n const { status } = useMe();\r\n const navItems = menuItems?.map((item) => {\r\n switch (item.type) {\r\n case 'group':\r\n return ;\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n return <>{navItems};\r\n};\r\n\r\nexport default MenuList;\r\n","import { useDispatch, useSelector } from 'react-redux';\r\nimport { IconHelp } from '@tabler/icons';\r\nimport { useState, useEffect } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { ListItemButton, ListItemIcon, ListItemText, Typography } from '@mui/material';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useNavigate } from 'react-router';\r\nimport { MENU_OPEN } from 'store/actions';\r\n// project imports\r\n\r\nconst CustomNavItem = ({ file }) => {\r\n const customization = useSelector((state) => state.customization);\r\n const theme = useTheme();\r\n const { t } = useTranslation();\r\n const [Help, setHelp] = useState('');\r\n const navigate = useNavigate();\r\n const dispatch = useDispatch();\r\n\r\n /* eslint-disable global-require */\r\n\r\n useEffect(() => {\r\n if (file) {\r\n try {\r\n const Help = require(`assets/${file}`).default; // eslint-disable-line import/no-dynamic-require\r\n setHelp(Help);\r\n } catch {\r\n console.log('No help file found');\r\n }\r\n }\r\n }, [file]);\r\n\r\n /* eslint-enable global-require */\r\n\r\n return (\r\n {\r\n dispatch({ type: MENU_OPEN, id: null });\r\n navigate('/faq/view');\r\n }}\r\n tabIndex={-1}\r\n >\r\n \r\n \r\n \r\n \r\n {t('Help')}\r\n \r\n }\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default CustomNavItem;\r\n","import PropTypes from 'prop-types';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, Drawer, useMediaQuery } from '@mui/material';\r\n\r\n// third-party\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { BrowserView, MobileView } from 'react-device-detect';\r\n\r\n// project imports\r\nimport MenuList from './MenuList';\r\nimport LogoSection from '../LogoSection';\r\n/* import MenuCard from './MenuCard'; */\r\nimport { drawerWidth } from 'store/constant';\r\nimport CustomNavItem from 'ui-component/CustomNavItem';\r\n// ==============================|| SIDEBAR DRAWER ||============================== //\r\n\r\nconst Sidebar = ({ drawerOpen, drawerToggle, window }) => {\r\n const theme = useTheme();\r\n const matchUpMd = useMediaQuery(theme.breakpoints.up('md'));\r\n\r\n const drawer = (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n const container = window !== undefined ? () => window.document.body : undefined;\r\n\r\n return (\r\n \r\n \r\n {drawer}\r\n \r\n \r\n );\r\n};\r\n\r\nSidebar.propTypes = {\r\n drawerOpen: PropTypes.bool,\r\n drawerToggle: PropTypes.func,\r\n window: PropTypes.object\r\n};\r\n\r\nexport default Sidebar;\r\n","import { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Outlet } from 'react-router-dom';\r\nimport AuthFooter from 'ui-component/cards/AuthFooter';\r\n\r\n// material-ui\r\nimport { styled, useTheme } from '@mui/material/styles';\r\nimport { AppBar, Box, CssBaseline, Toolbar, useMediaQuery } from '@mui/material';\r\n\r\n// project imports\r\nimport Breadcrumbs from 'ui-component/extended/Breadcrumbs';\r\nimport Header from './Header';\r\nimport Sidebar from './Sidebar';\r\n// import navigation from 'menu-items';\r\nimport { drawerWidth } from 'store/constant';\r\nimport { SET_MENU } from 'store/actions';\r\n\r\n// assets\r\nimport { IconChevronRight } from '@tabler/icons';\r\n\r\n// styles\r\nconst Main = styled('main', { shouldForwardProp: (prop) => prop !== 'open' })(({ theme, open }) => ({\r\n ...theme.typography.mainContent,\r\n ...(!open && {\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n transition: theme.transitions.create('margin', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen\r\n }),\r\n [theme.breakpoints.up('md')]: {\r\n marginLeft: -drawerWidth,\r\n width: `calc(100% - ${drawerWidth}px)`\r\n },\r\n [theme.breakpoints.down('md')]: {\r\n marginLeft: '0px',\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n padding: '16px',\r\n paddingTop: '8px',\r\n paddingBottom: '8px'\r\n },\r\n [theme.breakpoints.down('sm')]: {\r\n marginLeft: '0px',\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n padding: '16px',\r\n marginRight: '10px',\r\n paddingTop: '8px',\r\n paddingBottom: '8px'\r\n }\r\n }),\r\n ...(open && {\r\n transition: theme.transitions.create('margin', {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen\r\n }),\r\n marginLeft: 0,\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n [theme.breakpoints.down('md')]: {\r\n marginLeft: '20px'\r\n },\r\n [theme.breakpoints.down('sm')]: {\r\n marginLeft: '10px'\r\n }\r\n })\r\n}));\r\n\r\n// ==============================|| MAIN LAYOUT ||============================== //\r\n\r\nconst MainLayout = (props) => {\r\n const { menuItemId } = props;\r\n const theme = useTheme();\r\n const matchDownMd = useMediaQuery(theme.breakpoints.down('lg'));\r\n const { menuItems } = useSelector((state) => state.menu);\r\n\r\n // Handle left drawer\r\n const leftDrawerOpened = useSelector((state) => state.menu.opened);\r\n const dispatch = useDispatch();\r\n const handleLeftDrawerToggle = () => {\r\n dispatch({ type: SET_MENU, opened: !leftDrawerOpened });\r\n };\r\n\r\n useEffect(() => {\r\n dispatch({ type: SET_MENU, opened: !matchDownMd });\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [matchDownMd]);\r\n\r\n return (\r\n \r\n \r\n {/* header */}\r\n \r\n \r\n
\r\n \r\n \r\n\r\n {/* drawer */}\r\n \r\n\r\n {/* main content */}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default MainLayout;\r\n","// mui\r\nimport { Stack, Grid, Typography, Box, Button } from '@mui/material';\r\n\r\n// colors\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\n\r\n// Apis\r\nimport { auth } from 'apis';\r\n\r\n// react-router-dom\r\nimport { useNavigate } from 'react-router-dom';\r\n\r\n// store\r\nimport { VERIFY_EMAIL } from 'store/actions';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { PinInput } from '@qubiteq/qublib';\r\n\r\nimport { useSnackbar } from 'notistack';\r\n\r\nimport { useMe } from 'hooks/useMe';\r\n\r\nimport { useQueryClient } from 'react-query';\r\n\r\nconst Verification = () => {\r\n const dispatch = useDispatch();\r\n const { isLoggedIn } = useSelector((state) => state.auth);\r\n const queryClient = useQueryClient();\r\n const { whoami } = useMe();\r\n const { enqueueSnackbar } = useSnackbar();\r\n const navigate = useNavigate();\r\n const userIdentifier = whoami?.email;\r\n\r\n const onComplete = (pin) => {\r\n auth.ValidateVerificationPin({ userIdentifier, value: Number(pin) })\r\n .then((res) => {\r\n if (res.success === 1) {\r\n if (!isLoggedIn) {\r\n navigate('/login');\r\n }\r\n dispatch({ type: VERIFY_EMAIL });\r\n queryClient.invalidateQueries('me');\r\n enqueueSnackbar('Το email επιβεβαιώθηκε με επιτυχία', {\r\n variant: 'success'\r\n });\r\n }\r\n if (res.success === 0) {\r\n enqueueSnackbar('Το email δεν επιβεβαιώθηκε', {\r\n variant: 'error'\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n console.log('error', error);\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Enter the verification code\r\n \r\n An email with the verification code was sent to your email account\r\n \r\n \r\n {\r\n auth.sendVerificationEmail({ emailTo: userIdentifier })\r\n .then((res) => {\r\n enqueueSnackbar('Το PIN έχει σταλεί στο email σας', {\r\n variant: 'success'\r\n });\r\n })\r\n .catch((error) => {\r\n console.log('error', error);\r\n });\r\n }}\r\n sx={{ mt: 4 }}\r\n >\r\n Επαναποστολή PIN\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Verification;\r\n","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { MENU_OPEN } from 'store/actions';\r\n\r\n/**\r\n * [setMenuItem]\r\n * void function to set the active menu item\r\n * @param {[String]} menuItemId [Menu Item Id]\r\n * @example\r\n * const { setMenuItem } = useMenu();\r\n * setMenuItem(\"HomeMenuItem\");\r\n *\r\n *\r\n */\r\n/* eslint-disable */\r\nfunction recursiveSearch(matchArray, searchArray, index = 0) {\r\n if (index >= matchArray.length) {\r\n return null; // All items have been successfully matched or the matchArray is empty\r\n }\r\n\r\n for (const item of searchArray) {\r\n // Check if the URL part matches the title (or another relevant property)\r\n if (item.url.toLowerCase().split('/').includes(matchArray[index].toLowerCase())) {\r\n if (index === matchArray.length - 1 || !item.children) {\r\n return item.id; // Match found and no further items to match or no children to search into\r\n } else {\r\n // Search in the children\r\n return recursiveSearch(matchArray, item.children, index + 1);\r\n }\r\n }\r\n }\r\n\r\n return null; // No match found\r\n}\r\n\r\nexport const useMenu = () => {\r\n let pathArray = [];\r\n try {\r\n pathArray = window?.location?.pathname.split('/');\r\n pathArray.shift();\r\n } catch (e) {}\r\n const { menuItems } = useSelector((state) => state.menu);\r\n const items = menuItems.reduce((acc, group) => acc.concat(group.children || []), []);\r\n const activeItem = recursiveSearch(pathArray, items);\r\n const dispatch = useDispatch();\r\n React.useEffect(() => {\r\n dispatch({ type: MENU_OPEN, id: activeItem });\r\n }, [dispatch, activeItem]);\r\n};\r\n","// project imports\r\nimport VerificationPrompt from 'views/verification';\r\n\r\nimport { PermissionDenied } from './components';\r\n\r\nimport { useMe } from 'hooks/useMe';\r\nimport { useMenu } from 'hooks/useMenu';\r\nimport propTypes from 'prop-types';\r\nimport React from 'react';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport { CircularProgress, Dialog } from '@mui/material';\r\nimport { useLoading } from 'hooks/useLoading';\r\n\r\nconst useStyles = makeStyles({\r\n root: {\r\n color: '#4D79BC' // Set the desired white color\r\n }\r\n});\r\n\r\nexport const withPermission =\r\n (Component, { action, subject, unrestricted }) =>\r\n (props) => {\r\n const { whoami, isLoading, isError } = useMe();\r\n const isEmailVerified = whoami?.isEmailVerified;\r\n const hasPermission = whoami?.permissions?.can(action, subject);\r\n\r\n if (isLoading || isError) {\r\n return null;\r\n }\r\n if (!isEmailVerified) {\r\n return ;\r\n }\r\n if (!hasPermission && !unrestricted) {\r\n return ;\r\n }\r\n return ;\r\n };\r\n\r\n/**\r\n *\r\n * @param {JSX.Element | null} Layout\r\n * @returns {JSX.Element | null}\r\n * Returns Enhanced React JSX Element which\r\n * sets the active menu item id\r\n */\r\nexport const withLayout = (Layout) => {\r\n /**\r\n *\r\n * @param {any} props\r\n * @returns {JSX.Element | null}\r\n * Returns Enhanced React JSX Element which\r\n * sets the active menu item id\r\n */\r\n const EnhancedLayout = (props) => {\r\n const { menuItemId } = props;\r\n const { setMenuItem } = useMenu();\r\n React.useEffect(() => {\r\n setMenuItem(menuItemId);\r\n }, [menuItemId, setMenuItem]);\r\n return ;\r\n };\r\n\r\n EnhancedLayout.propTypes = {\r\n menuItemId: propTypes.string\r\n };\r\n\r\n return EnhancedLayout;\r\n};\r\n\r\nexport const LoadingDialog = () => {\r\n const classes = useStyles();\r\n const { loading } = useLoading();\r\n\r\n return (\r\n \r\n
\r\n \r\n
\r\n \r\n );\r\n};\r\n","// material-ui\r\nimport { styled } from '@mui/material/styles';\r\n\r\n// ==============================|| WRAPPER ||============================== //\r\n\r\nexport const MinimalWrapper = styled('div')(({ theme }) => ({\r\n backgroundColor: theme.palette.mode === 'light' ? theme.palette.primary.light : theme.palette.background.default,\r\n minHeight: '100vh'\r\n}));\r\n","import { withLayout } from 'hoc';\r\nimport MainLayout from 'layout/MainLayout';\r\n\r\nexport const ClubLayout = withLayout(MainLayout);\r\n\r\nexport const AthletesLayout = withLayout(MainLayout);\r\n","import { MinimalWrapper } from 'ui-component/wrappers';\r\nimport { Stack, Box } from '@mui/material';\r\nimport { Outlet } from 'react-router-dom';\r\nimport LanguageSection from 'layout/MainLayout/Header/LanguageSection';\r\n// ==============================|| MINIMAL LAYOUT ||============================== //\r\n\r\nconst MinimalLayout = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport default MinimalLayout;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Typography } from '@mui/material';\r\nimport OptionCard from 'ui-component/cards/OptionCard';\r\nimport { useNavigate } from 'react-router';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useBreadcrumbs } from 'hooks/useBreadcrumbs';\r\n\r\nconst CommonIndex = () => {\r\n const [choices, setChoices] = useState([]);\r\n const { menuItems } = useSelector((state) => state.menu);\r\n const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n\r\n const findByPathname = (path, children, idx = 0) => {\r\n const item = children[idx];\r\n if (!item) return null;\r\n if (item.url === path) {\r\n return item;\r\n }\r\n\r\n const newChildren = item?.children?.length ? [...children, ...item.children] : children;\r\n\r\n return findByPathname(path, newChildren, idx + 1);\r\n };\r\n\r\n useEffect(() => {\r\n try {\r\n menuItems.forEach((element) => {\r\n // eslint-disable-next-line no-var\r\n var res = findByPathname(window.location.pathname, element.children);\r\n if (res) {\r\n setChoices(res);\r\n }\r\n // setChoices(...choices, x.children);\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n }, [navigate]);\r\n\r\n const navigateTo = (url) => {\r\n navigate(url);\r\n };\r\n\r\n return (\r\n
\r\n \r\n {t(choices?.title ?? '')}\r\n \r\n {choices?.children?.map((option) => (\r\n navigateTo(option.url)} key={option.id} description={t(option.title)} />\r\n ))}\r\n
\r\n );\r\n};\r\n\r\nexport default CommonIndex;\r\n","import { lazy } from 'react';\r\n\r\n// project imports\r\nimport MainLayout from 'layout/MainLayout';\r\nimport { Loadable } from '@qubiteq/qublib';\r\n\r\n// permission\r\nimport { withPermission } from 'hoc';\r\n\r\n// react-router\r\nimport { Navigate, Redirect } from 'react-router-dom';\r\nimport Search from 'views/dashboard/Search';\r\nimport { ClubLayout, AthletesLayout } from 'ui-component/layouts';\r\nimport MinimalLayout from 'layout/MinimalLayout';\r\nimport CommonIndex from 'common/CommonIndex';\r\nimport ExplorerCard from 'ui-component/cards/ExplorerCard';\r\nimport PageUnderConstruction from 'views/PageUnderConstruction';\r\n\r\n// import ApplicationsView from 'views/application/Applications/index';\r\n// import MainCard from 'ui-component/cards/MainCard';\r\n\r\n// dashboard routing\r\n\r\nconst PaymentSubmittion = Loadable(lazy(() => import('views/application/Payments/Submittion')));\r\nconst PaymentResultPage = Loadable(lazy(() => import('views/application/Payments/Submittion/paymentMethod/byCard/form/resultPage')));\r\n\r\nconst HomeView = withPermission(Loadable(lazy(() => import('views/dashboard/Home'))), {\r\n unrestricted: true\r\n});\r\nconst AccountSettings = withPermission(Loadable(lazy(() => import('views/settings/AccountSettings'))), {\r\n unrestricted: true\r\n});\r\nconst ApplicationsView = withPermission(Loadable(lazy(() => import('views/application/Applications'))), {\r\n unrestricted: true\r\n});\r\nconst ToolsView = withPermission(Loadable(lazy(() => import('views/application/Tools'))), {\r\n unrestricted: true\r\n});\r\nconst PaymentsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Transactions').then((module) => ({ default: module.TransactionOptions })))),\r\n {\r\n unrestricted: true\r\n }\r\n);\r\n\r\nconst UsersView = withPermission(Loadable(lazy(() => import('views/dashboard/Users').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'Users'\r\n});\r\n\r\n/* const NewUsersView = withPermission(Loadable(lazy(() => import('views/dashboard/Users').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'Users'\r\n}); */\r\n\r\nconst UsersManage = withPermission(Loadable(lazy(() => import('views/dashboard/Users').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'Users'\r\n});\r\nconst UsersCreate = withPermission(Loadable(lazy(() => import('views/dashboard/Users').then((module) => ({ default: module.Create })))), {\r\n action: 'Create',\r\n subject: 'Users'\r\n});\r\nconst RolesView = withPermission(Loadable(lazy(() => import('views/dashboard/Roles').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'Roles'\r\n});\r\nconst RolesManage = withPermission(Loadable(lazy(() => import('views/dashboard/Roles').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'Roles'\r\n});\r\nconst ClubsView = withPermission(Loadable(lazy(() => import('views/application/Clubs').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'Clubs'\r\n});\r\n\r\nconst ClubManage = withPermission(Loadable(lazy(() => import('views/application/Clubs').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'Clubs'\r\n});\r\nconst AthletesView = withPermission(\r\n Loadable(lazy(() => import('views/application/Athletes').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Athletes'\r\n }\r\n);\r\n\r\nconst AthletesManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Athletes').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst OfficialsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Officials').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Athletes'\r\n }\r\n);\r\n\r\nconst OfficialsManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Officials').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Official'\r\n }\r\n);\r\n\r\nconst PaymentIndexView = withPermission(\r\n Loadable(lazy(() => import('views/application/Transactions').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'Explore',\r\n subject: 'Index'\r\n }\r\n);\r\n\r\nconst PaymentIndexManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Transactions').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Index'\r\n }\r\n);\r\n\r\nconst PaymentCardView = withPermission(\r\n Loadable(lazy(() => import('views/application/Transactions').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Transaction'\r\n }\r\n);\r\n\r\nconst PaymentPendingView = withPermission(\r\n Loadable(lazy(() => import('views/application/Transactions').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'Explore',\r\n subject: 'Pending'\r\n }\r\n);\r\n\r\n// //////////////////////////////////////////// Applications\r\nconst ApplicationsAthletesView = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Athletes'\r\n }\r\n);\r\n\r\nconst ApplicationsAthletesManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsAthletesCertificates = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.Certificates })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsAthletesBatchRenewal = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.BatchRenewal })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsAthletesSelfInsurance = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.BatchSelfInsurance })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsAthletesFedInsurance = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Athletes').then((module) => ({ default: module.BatchFedInsurance })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsOfficialsBatchRenewal = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Officials').then((module) => ({ default: module.Batch })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst ApplicationsOfficialsCertificates = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Officials').then((module) => ({ default: module.Certificates })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Official'\r\n }\r\n);\r\n\r\nconst ApplicationsClubsCertificates = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Clubs').then((module) => ({ default: module.Certificates })))),\r\n {\r\n action: 'Create',\r\n subject: 'Clubs'\r\n }\r\n);\r\n\r\nconst EmailToolView = withPermission(\r\n Loadable(lazy(() => import('views/application/Tools/EmailTool').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'EmailTool'\r\n }\r\n);\r\n\r\nconst EmailToolCreate = withPermission(\r\n Loadable(lazy(() => import('views/application/Tools/EmailTool').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'View',\r\n subject: 'EmailTool'\r\n }\r\n);\r\n\r\nconst MergesView = withPermission(\r\n Loadable(lazy(() => import('views/application/Tools/MergeTool').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'MergeTool'\r\n }\r\n);\r\n\r\nconst MergeManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Tools/MergeTool').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'View',\r\n subject: 'MergeTool'\r\n }\r\n);\r\n\r\nconst NewMerge = withPermission(\r\n Loadable(lazy(() => import('views/application/Tools/MergeTool').then((module) => ({ default: module.New })))),\r\n {\r\n action: 'View',\r\n subject: 'MergeTool'\r\n }\r\n);\r\n\r\nconst ApplicationsClubsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Clubs').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Athletes'\r\n }\r\n);\r\n\r\nconst ApplicationsClubsManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Clubs').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Manage',\r\n subject: 'Clubs'\r\n }\r\n);\r\n\r\nconst ApplicationsOfficialsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Officials').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Athletes'\r\n }\r\n);\r\n\r\nconst ApplicationsOfficialsManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Applications/Officials').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'Create',\r\n subject: 'Athlete'\r\n }\r\n);\r\n\r\nconst NewApplicationView = withPermission(Loadable(lazy(() => import('views/application/Applications/New/Index'))), {\r\n action: 'View',\r\n subject: 'Athletes'\r\n});\r\n\r\nconst Competitions = withPermission(Loadable(lazy(() => import('views/application/Competitions'))), {\r\n unrestricted: true\r\n});\r\n\r\nconst CompetitionsDetailsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Competitions/Details').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst CompetitionDetailsManage = Loadable(\r\n Loadable(lazy(() => import('views/application/Competitions/Details').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst CompetitionParticipationsView = withPermission(\r\n Loadable(lazy(() => import('views/application/Competitions/Participations').then((module) => ({ default: module.View })))),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst ParticipationsExplorer = withPermission(\r\n Loadable(lazy(() => import('views/application/Competitions/Participations').then((module) => ({ default: module.Participations })))),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst CompetitionsParticipationsManage = withPermission(\r\n Loadable(lazy(() => import('views/application/Competitions/Participations').then((module) => ({ default: module.Manage })))),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst ParticipationsListCompetitions = withPermission(\r\n Loadable(\r\n lazy(() => import('views/application/Competitions/ParticipationList').then((module) => ({ default: module.CompetitionsView })))\r\n ),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst ParticipationsListParticipations = withPermission(\r\n Loadable(\r\n lazy(() => import('views/application/Competitions/ParticipationList').then((module) => ({ default: module.ParticipationsView })))\r\n ),\r\n {\r\n action: 'View',\r\n subject: 'Competitions'\r\n }\r\n);\r\n\r\nconst SitesView = withPermission(Loadable(lazy(() => import('views/application/Sites').then((module) => ({ default: module.View })))), {\r\n action: 'Explore',\r\n subject: 'Site'\r\n});\r\n\r\nconst SitesManage = withPermission(Loadable(lazy(() => import('views/application/Sites').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'Site'\r\n});\r\n\r\nconst FaqView = withPermission(Loadable(lazy(() => import('views/application/Faq').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'FAQ'\r\n});\r\n\r\nconst FaqManage = withPermission(Loadable(lazy(() => import('views/application/Faq').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'FAQ'\r\n});\r\n\r\nconst FaqEdit = withPermission(Loadable(lazy(() => import('views/application/Faq').then((module) => ({ default: module.Edit })))), {\r\n action: 'Update',\r\n subject: 'FAQ'\r\n});\r\n// /////////////////////////////////////////////////////////////////////////////////////////////\r\n\r\n// admin routing\r\nconst ImpersonationView = withPermission(Loadable(lazy(() => import('views/admin/Impersonation'))), {\r\n action: 'Impersonation',\r\n subject: 'Admin'\r\n});\r\nconst GridManage = withPermission(Loadable(lazy(() => import('views/admin/ConfigTables').then((module) => ({ default: module.Manage })))), {\r\n action: 'Manage',\r\n subject: 'ConfigTables'\r\n});\r\nconst GridView = withPermission(Loadable(lazy(() => import('views/admin/ConfigTables').then((module) => ({ default: module.View })))), {\r\n action: 'View',\r\n subject: 'ConfigTables'\r\n});\r\n\r\nconst FormsView = withPermission(Loadable(lazy(() => import('views/admin/Forms').then((module) => ({ default: module.View })))), {\r\n action: 'Manage',\r\n subject: 'Forms'\r\n});\r\n\r\nconst FormsManage = withPermission(Loadable(lazy(() => import('views/admin/Forms').then((module) => ({ default: module.Manage })))), {\r\n action: 'Update',\r\n subject: 'Forms'\r\n});\r\n\r\nconst FormsPreview = withPermission(Loadable(lazy(() => import('views/admin/Forms').then((module) => ({ default: module.Preview })))), {\r\n action: 'Manage',\r\n subject: 'Forms'\r\n});\r\n\r\nconst PageNotFound = Loadable(lazy(() => import('views/PageNotFound')));\r\nconst ServerError = Loadable(lazy(() => import('views/ServerError')));\r\nconst GDPR = Loadable(lazy(() => import('views/GDPR')));\r\nconst TermsOfUse = Loadable(lazy(() => import('views/TermsOfUse')));\r\n\r\n// const PageUnderConstruction = Loadable(lazy(() => import('views/PageUnderConstruction')));\r\n\r\n// user manage\r\nconst UserDetails = Loadable(lazy(() => import('views/dashboard/Users/Manage/Details')));\r\nconst UserRoles = Loadable(lazy(() => import('views/dashboard/Users/Manage/Roles')));\r\nconst UserPermissions = Loadable(lazy(() => import('views/dashboard/Users/Manage/Permissions')));\r\n\r\n// role manage\r\nconst RolesDetails = Loadable(lazy(() => import('views/dashboard/Roles/Manage/Details')));\r\nconst RolesPermissions = Loadable(lazy(() => import('views/dashboard/Roles/Manage/Permissions')));\r\n// ==============================|| MAIN ROUTING ||============================== //\r\nconst AthleteDetails = Loadable(lazy(() => import('views/application/Athletes/Manage/Details')));\r\nconst AthleteFunctions = Loadable(lazy(() => import('views/application/Athletes/Manage/Functions')));\r\nconst AthleteNfcCard = Loadable(lazy(() => import('views/application/Athletes/Manage/NfcCard')));\r\n\r\nconst ClubDetails = Loadable(lazy(() => import('views/application/Clubs/Manage/Details')));\r\n\r\nconst OfficialDetails = Loadable(lazy(() => import('views/application/Officials/Manage/Details')));\r\nconst OfficialFunctions = Loadable(lazy(() => import('views/application/Officials/Manage/Functions')));\r\n\r\nconst TransactionHeaders = Loadable(lazy(() => import('views/application/Transactions/View/TransactionHeaders')));\r\nconst TransactionDetails = Loadable(lazy(() => import('views/application/Transactions/View/TransactionDetails')));\r\n\r\nconst StatisticsView = withPermission(Loadable(lazy(() => import('views/dashboard/Statistics'))), {\r\n action: 'View',\r\n subject: 'Statistics'\r\n});\r\n\r\nconst MainRoutes = () => [\r\n {\r\n path: '',\r\n element: ,\r\n children: [\r\n {\r\n path: 'home',\r\n element: \r\n },\r\n\r\n {\r\n path: 'search',\r\n element: \r\n },\r\n {\r\n path: 'user/settings',\r\n element: \r\n },\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'site-is-temporarily-unavailable',\r\n element: \r\n },\r\n {\r\n path: 'GDPR',\r\n element: \r\n },\r\n {\r\n path: 'TermsOfUse',\r\n element: \r\n },\r\n {\r\n path: '/invite',\r\n element: (\r\n
\r\n Παρακαλώ αποσυνδεθείτε για να αποδεχθείτε την πρόσκληση!\r\n
\r\n )\r\n },\r\n {\r\n path: 'configtables',\r\n element: \r\n },\r\n {\r\n path: 'configtables/manage/:dataKey',\r\n element: \r\n },\r\n {\r\n path: 'forms',\r\n element: \r\n },\r\n {\r\n path: 'forms/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'forms/preview',\r\n element: \r\n },\r\n {\r\n path: '*',\r\n element: \r\n },\r\n {\r\n path: 'lookups',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: '',\r\n element: ,\r\n children: [\r\n {\r\n path: 'payment/:token',\r\n element: \r\n },\r\n {\r\n path: 'api/payment/success',\r\n element: \r\n },\r\n {\r\n path: 'api/payment/fail',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'users-and-access',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'users',\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'create',\r\n element: \r\n },\r\n {\r\n path: 'create/:existingPersonId',\r\n element: \r\n },\r\n {\r\n path: 'create/:existingPersonId/:personFunctionId',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: ,\r\n children: [\r\n {\r\n path: 'details',\r\n element: \r\n },\r\n {\r\n path: 'roles',\r\n element: \r\n },\r\n {\r\n path: 'permissions',\r\n element: \r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: 'roles',\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: ,\r\n children: [\r\n {\r\n path: 'details',\r\n element: \r\n },\r\n {\r\n path: 'permissions',\r\n element: \r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: 'impersonation',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'faq-manage',\r\n element: ,\r\n children: [{ path: '', element: }]\r\n },\r\n {\r\n path: 'clubs',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: ,\r\n children: [\r\n {\r\n path: 'details',\r\n element: \r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: 'athletes',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: ,\r\n children: [\r\n {\r\n path: 'details',\r\n element: \r\n },\r\n {\r\n path: 'functions',\r\n element: \r\n },\r\n {\r\n path: 'nfccard',\r\n element: \r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: 'officials',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: ,\r\n children: [\r\n {\r\n path: 'details',\r\n element: \r\n },\r\n {\r\n path: 'functions',\r\n element: \r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n path: 'statistics',\r\n element: ,\r\n children: [\r\n { path: '', element: },\r\n\r\n { path: 'clubs', element: },\r\n { path: 'athletes', element: },\r\n { path: 'officials', element: },\r\n { path: 'competitions', element: }\r\n ]\r\n },\r\n {\r\n path: 'applications',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'clubs',\r\n element: \r\n },\r\n {\r\n path: 'clubs/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'athletes',\r\n element: \r\n },\r\n {\r\n path: 'athletes/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'athletes/certificate/:id',\r\n element: \r\n },\r\n {\r\n path: 'athletes/batch/:id',\r\n element: \r\n },\r\n {\r\n path: 'athletes/selfinsurance/:id',\r\n element: \r\n },\r\n {\r\n path: 'athletes/fedinsurance/:id',\r\n element: \r\n },\r\n {\r\n path: 'officials/certificate/:id',\r\n element: \r\n },\r\n {\r\n path: 'officials/batch/:id',\r\n element: \r\n },\r\n {\r\n path: 'clubs/certificate/:id',\r\n element: \r\n },\r\n {\r\n path: 'officials',\r\n element: \r\n },\r\n {\r\n path: 'officials/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'new/:id',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'tools',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'email',\r\n element: \r\n },\r\n {\r\n path: 'email/new',\r\n element: \r\n },\r\n {\r\n path: 'merge',\r\n element: \r\n },\r\n { path: 'merge/new', element: },\r\n { path: 'merge/manage/:id/details', element: }\r\n ]\r\n },\r\n {\r\n path: 'payments',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: ,\r\n children: []\r\n },\r\n {\r\n path: 'headers',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n path: 'details',\r\n element: (\r\n \r\n \r\n \r\n )\r\n },\r\n\r\n {\r\n path: 'index/:id',\r\n element: \r\n },\r\n {\r\n path: 'card/:id/:type',\r\n element: \r\n },\r\n {\r\n path: 'card/:id',\r\n element: \r\n },\r\n {\r\n path: 'pending',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'payment-reports',\r\n element: ,\r\n children: [{ path: '', element: }]\r\n },\r\n {\r\n path: 'payment-data-transfer',\r\n element: ,\r\n children: [{ path: '', element: }]\r\n },\r\n {\r\n path: '',\r\n element: ,\r\n children: []\r\n },\r\n {\r\n path: 'competitions',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'calendar',\r\n element: \r\n },\r\n {\r\n path: 'details/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'participations',\r\n element: \r\n },\r\n {\r\n path: 'participations/:id',\r\n element: \r\n },\r\n {\r\n path: 'participations/manage/:id',\r\n element: \r\n },\r\n {\r\n path: 'participationslist',\r\n element: \r\n },\r\n {\r\n path: 'participationslist/:id',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'results',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'performance',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'certifications',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n }\r\n ]\r\n },\r\n\r\n {\r\n path: 'sites',\r\n element: ,\r\n children: [\r\n {\r\n path: 'view',\r\n element: \r\n },\r\n {\r\n path: 'manage/:id',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'faq',\r\n element: ,\r\n children: [\r\n {\r\n path: 'view',\r\n element: \r\n },\r\n {\r\n path: 'manage',\r\n element: \r\n },\r\n {\r\n path: 'edit/:id',\r\n element: \r\n }\r\n ]\r\n }\r\n];\r\n\r\nexport default MainRoutes;\r\n","import { ClickAwayListener, FormControl, FormControlLabel, Popper, Radio, RadioGroup } from '@mui/material';\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useDispatch } from 'react-redux';\r\nimport { SET_LANGUAGE } from 'store/actions';\r\n\r\nconst LanguageSelector = (props) => {\r\n const { open, setOpen, anchorRef, language } = props;\r\n const dispatch = useDispatch();\r\n const { i18n } = useTranslation();\r\n const theme = useTheme();\r\n const [selectedLanguage, setLanguage] = useState(language);\r\n\r\n const handleLanguageChange = (value) => {\r\n setLanguage(value);\r\n dispatch({ type: SET_LANGUAGE, language: value });\r\n i18n.changeLanguage(value);\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n handleLanguageChange(e.target.value)}\r\n name=\"row-radio-buttons-group\"\r\n >\r\n }\r\n onClick={() => handleLanguageChange('en')}\r\n label=\"English\"\r\n sx={{\r\n '& .MuiSvgIcon-root': { fontSize: 28 },\r\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\r\n }}\r\n />\r\n }\r\n onClick={() => handleLanguageChange('gre')}\r\n label=\"Ελληνικά\"\r\n sx={{\r\n '& .MuiSvgIcon-root': { fontSize: 28 },\r\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default LanguageSelector;\r\n","import { Box, Stack, Typography, Link } from '@mui/material';\r\nimport qb from 'assets/images/qb.png';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst PublicFooter = (props) => {\r\n const { desktop } = props;\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n {desktop ? (\r\n <>\r\n \r\n \r\n \"Qb\"\r\n \r\n \r\n \r\n window.open(PDF)}\r\n onClick={() => window.open(`${window.location.origin}/TermsOfUse`, '_blank')}\r\n sx={{ cursor: 'pointer' }}\r\n underline=\"hover\"\r\n >\r\n {t('TermsOfUse')}\r\n \r\n \r\n \r\n \r\n NFC Sports || Powered by \r\n \r\n QUBITEQ\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \"Qb\"\r\n \r\n window.open(PDF)}\r\n onClick={() => window.open(`${window.location.origin}/TermsOfUse`, '_blank')}\r\n sx={{ cursor: 'pointer' }}\r\n underline=\"hover\"\r\n >\r\n {t('TermsOfUse')}\r\n \r\n \r\n NFC Sports || Powered by \r\n \r\n QUBITEQ\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default PublicFooter;\r\n","import FacebookIcon from '@mui/icons-material/Facebook';\r\nimport InstagramIcon from '@mui/icons-material/Instagram';\r\nimport {\r\n Accordion,\r\n AccordionDetails,\r\n AccordionSummary,\r\n AppBar,\r\n Box,\r\n Button,\r\n CssBaseline,\r\n Divider,\r\n Grid,\r\n IconButton,\r\n Stack,\r\n Toolbar,\r\n Typography,\r\n useMediaQuery\r\n} from '@mui/material';\r\nimport { styled, useTheme } from '@mui/material/styles';\r\nimport { useSettings } from 'hooks/useSettings';\r\nimport { Outlet, useNavigate } from 'react-router-dom';\r\nimport { Logo } from 'ui-component';\r\n// import XIcon from '@mui/icons-material/X';\r\nimport LanguageIcon from '@mui/icons-material/Language';\r\nimport MailOutlineIcon from '@mui/icons-material/MailOutline';\r\nimport MenuIcon from '@mui/icons-material/Menu';\r\nimport YouTubeIcon from '@mui/icons-material/YouTube';\r\nimport { useRef, useState } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { LanguageSelector, PublicFooter } from './components';\r\nimport { useTranslation, Trans } from 'react-i18next';\r\n\r\nconst languageToString = (language) => {\r\n if (language === 'gre') {\r\n return 'ΕΛ';\r\n }\r\n if (language === 'en') {\r\n return 'EN';\r\n }\r\n return '';\r\n};\r\n\r\nconst Main = styled('main')(({ theme }) => ({\r\n ...theme.typography.mainContent,\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n minHeight: '10vh'\r\n}));\r\n\r\nconst PublicLayout = () => {\r\n const theme = useTheme();\r\n const { t } = useTranslation();\r\n const { projectLogo, url, email, projectFullTitle, address, phone } = useSettings();\r\n const { language } = useSelector((state) => state.customization);\r\n const navigate = useNavigate();\r\n const lgUp = useMediaQuery(theme.breakpoints.up('lg'));\r\n const mdUp = useMediaQuery(theme.breakpoints.up('md'));\r\n const anchorRef = useRef(null);\r\n const [open, setOpen] = useState(false);\r\n\r\n const scrollbarStyles = {\r\n '&::-webkit-scrollbar': {\r\n width: '0.4em',\r\n height: '0.4em'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: '#b8cbd4'\r\n }\r\n };\r\n\r\n const handleNavLogin = () => {\r\n navigate('/login');\r\n };\r\n\r\n const handleNavFederation = () => {\r\n window.open(url, '_blank');\r\n window.focus();\r\n };\r\n\r\n const handleSendEmail = () => {\r\n window.open(`mailto:${email}`, '_blank');\r\n };\r\n\r\n const handleNavMenu = (url) => {\r\n navigate(url);\r\n };\r\n\r\n const handleOpenLanguage = (event) => {\r\n setOpen((prev) => !prev);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {languageToString(language)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {projectFullTitle}\r\n \r\n \r\n \r\n \r\n {address}\r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n {projectFullTitle}\r\n \r\n \r\n {address}\r\n \r\n */}\r\n {/* */}\r\n {lgUp ? (\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n {t('MemberLogin')}\r\n \r\n \r\n \r\n ) : (\r\n \r\n }\r\n sx={{\r\n flexDirection: 'row-reverse',\r\n borderTop: 'none',\r\n '& .MuiAccordionSummary-content': {\r\n marginLeft: 1\r\n },\r\n '& .MuiAccordionSummary-content.Mui-expanded': {\r\n marginLeft: 1\r\n }\r\n }}\r\n >\r\n \r\n Menu\r\n \r\n \r\n \r\n \r\n handleNavMenu('/public/calendar')}>\r\n {t('Calendar')}\r\n \r\n {/* handleNavMenu('/public/athletes')}>\r\n Athletes\r\n \r\n handleNavMenu('/public/officials')}>\r\n Officials\r\n \r\n handleNavMenu('/public/clubs')}>\r\n Clubs\r\n */}\r\n \r\n {t('GoToFederation')}\r\n \r\n \r\n \r\n {t('MemberLogin')}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default PublicLayout;\r\n","import PublicLayout from './PublicLayout';\r\n\r\nexport default PublicLayout;\r\n","import { lazy } from 'react';\r\nimport { Navigate } from 'react-router-dom';\r\n\r\n// project imports\r\nimport { Loadable } from '@qubiteq/qublib';\r\nimport MinimalLayout from 'layout/MinimalLayout';\r\nimport PublicLayout from 'layout/PublicLayout';\r\nimport { useSettings } from 'hooks/useSettings';\r\n\r\n// login option 3 routing\r\nconst AuthLogin3 = Loadable(lazy(() => import('views/authentication/authentication3/Login3')));\r\n// const AuthRegister3 = Loadable(lazy(() => import('views/authentication/authentication3/Register3')));\r\nconst ResetPassword = Loadable(lazy(() => import('views/authentication/forgotPassword')));\r\nconst UserInvitation = Loadable(lazy(() => import('views/authentication/userInvitation')));\r\nconst PaymentSubmittion = Loadable(lazy(() => import('views/application/Payments/Submittion')));\r\nconst TermsOfUse = Loadable(lazy(() => import('views/TermsOfUse')));\r\nconst PaymentResultPage = Loadable(lazy(() => import('views/application/Payments/Submittion/paymentMethod/byCard/form/resultPage')));\r\nconst CompetitionsCalendar = Loadable(lazy(() => import('views/public/Competitions').then((module) => ({ default: module.Calendar }))));\r\nconst CompetitionDetails = Loadable(lazy(() => import('views/public/Competitions').then((module) => ({ default: module.Details }))));\r\n\r\n// ==============================|| AUTHENTICATION ROUTING ||============================== //\r\n\r\nconst AuthenticationRoutes = () => {\r\n // eslint-disable-next-line camelcase\r\n const { project_public_enabled } = useSettings();\r\n\r\n return [\r\n {\r\n path: '/',\r\n element: ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'api/payment/success',\r\n element: \r\n },\r\n {\r\n path: 'api/payment/fail',\r\n element: \r\n },\r\n {\r\n path: '/login',\r\n element: \r\n },\r\n /* {\r\n path: '/register',\r\n element: \r\n }, */\r\n {\r\n path: '/reset/:token',\r\n element: \r\n },\r\n {\r\n path: '/invite',\r\n element: \r\n },\r\n {\r\n path: '/invite',\r\n element: \r\n },\r\n {\r\n path: 'TermsOfUse',\r\n element: \r\n },\r\n {\r\n path: '/payment/:token',\r\n element: \r\n }\r\n ]\r\n },\r\n {\r\n path: 'public',\r\n // eslint-disable-next-line camelcase\r\n element: project_public_enabled === 'true' ? : ,\r\n children: [\r\n {\r\n path: '',\r\n element: \r\n },\r\n {\r\n path: 'calendar',\r\n element: \r\n },\r\n {\r\n path: 'competition',\r\n element: \r\n },\r\n {\r\n path: 'athletes',\r\n element:
Athletes
\r\n },\r\n {\r\n path: 'officials',\r\n element:
Officials
\r\n },\r\n {\r\n path: 'clubs',\r\n element:
Clubs
\r\n }\r\n ]\r\n },\r\n {\r\n path: '*',\r\n element: \r\n }\r\n ];\r\n};\r\nexport default AuthenticationRoutes;\r\n","import { memo } from 'react';\r\nimport { useRoutes } from 'react-router-dom';\r\n\r\n// routes\r\nimport MainRoutes from './MainRoutes';\r\nimport AuthenticationRoutes from './AuthenticationRoutes';\r\nimport config from 'config';\r\n\r\n// store\r\nimport { useSelector } from 'react-redux';\r\nimport { useMenu } from 'hooks/useMenu';\r\n// ==============================|| ROUTING RENDER ||============================== //\r\n\r\nconst Routes = memo(() => {\r\n const { isLoggedIn } = useSelector((state) => state.auth);\r\n const routes = isLoggedIn ? MainRoutes() : AuthenticationRoutes();\r\n useMenu();\r\n\r\n return useRoutes(routes, config.basename);\r\n});\r\n\r\nexport default Routes;\r\n","/**\r\n * Color intention that you want to used in your theme\r\n * @param {JsonObject} theme Theme customization object\r\n */\r\n\r\nexport default function themePalette(theme) {\r\n return {\r\n mode: theme?.mode ?? 'light',\r\n common: {\r\n white: theme.colors.white,\r\n black: theme.colors.black\r\n },\r\n primary: {\r\n light: theme.colors?.primaryLight,\r\n main: theme.colors?.primaryMain,\r\n dark: theme.colors?.primaryDark,\r\n 200: theme.colors?.primary200,\r\n 800: theme.colors?.primary800\r\n },\r\n secondary: {\r\n light: theme.colors?.secondaryLight,\r\n main: theme.colors?.secondaryMain,\r\n dark: theme.colors?.secondaryDark,\r\n 200: theme.colors?.secondary200,\r\n 800: theme.colors?.secondary800\r\n },\r\n error: {\r\n light: theme.colors?.errorLight,\r\n main: theme.colors?.errorMain,\r\n dark: theme.colors?.errorDark\r\n },\r\n orange: {\r\n light: theme.colors?.orangeLight,\r\n main: theme.colors?.orangeMain,\r\n dark: theme.colors?.orangeDark\r\n },\r\n warning: {\r\n light: theme.colors?.warningLight,\r\n main: theme.colors?.warningMain,\r\n dark: theme.colors?.warningDark\r\n },\r\n success: {\r\n light: theme.colors?.successLight,\r\n 200: theme.colors?.success200,\r\n main: theme.colors?.successMain,\r\n dark: theme.colors?.successDark\r\n },\r\n grey: {\r\n 50: theme.colors?.grey50,\r\n 100: theme.colors?.grey100,\r\n 500: theme.darkTextSecondary,\r\n 600: theme.heading,\r\n 700: theme.darkTextPrimary,\r\n 900: theme.textDark\r\n },\r\n dark: {\r\n light: theme.colors?.darkTextPrimary,\r\n main: theme.colors?.darkLevel1,\r\n dark: theme.colors?.darkLevel2,\r\n 800: theme.colors?.darkBackground,\r\n 900: theme.colors?.darkPaper\r\n },\r\n text: {\r\n primary: theme.darkTextPrimary,\r\n secondary: theme.darkTextSecondary,\r\n dark: theme.textDark,\r\n hint: theme.colors?.grey100\r\n },\r\n background: {\r\n paper: theme.paper,\r\n default: theme.backgroundDefault\r\n }\r\n };\r\n}\r\n","/**\r\n * Typography used in theme\r\n * @param {JsonObject} theme theme customization object\r\n */\r\n\r\nexport default function themeTypography(theme) {\r\n return {\r\n fontFamily: theme?.customization?.fontFamily,\r\n h6: {\r\n fontWeight: 600,\r\n color: theme.heading,\r\n fontSize: '0.75rem'\r\n },\r\n h5: {\r\n fontSize: '0.875rem',\r\n color: theme.heading,\r\n fontWeight: 600\r\n },\r\n h4: {\r\n fontSize: '1rem',\r\n color: theme.heading,\r\n fontWeight: 800\r\n },\r\n h3: {\r\n fontSize: '1.25rem',\r\n color: theme.heading,\r\n fontWeight: 800\r\n },\r\n h2: {\r\n fontSize: '1.5rem',\r\n color: theme.heading,\r\n fontWeight: 800\r\n },\r\n h1: {\r\n fontSize: '2.125rem',\r\n color: theme.heading,\r\n fontWeight: 800\r\n },\r\n subtitle1: {\r\n fontSize: '0.875rem',\r\n fontWeight: 400,\r\n color: theme.textDarkPrimary\r\n },\r\n subtitle2: {\r\n fontSize: '0.8rem',\r\n fontWeight: 400,\r\n color: theme.darkTextSecondary\r\n },\r\n caption: {\r\n fontSize: '0.75rem',\r\n color: theme.darkTextSecondary,\r\n fontWeight: 600\r\n },\r\n body1: {\r\n fontSize: '0.875rem',\r\n fontWeight: 400,\r\n lineHeight: '1.334em'\r\n },\r\n body2: {\r\n letterSpacing: '0em',\r\n fontWeight: 400,\r\n lineHeight: '1.5em',\r\n color: theme.darkTextPrimary\r\n },\r\n error: {\r\n color: theme.colors.errorMain\r\n },\r\n button: {\r\n textTransform: 'capitalize'\r\n },\r\n customInput: {\r\n marginTop: 1,\r\n marginBottom: 1,\r\n '& > label': {\r\n top: 23,\r\n left: 0,\r\n color: theme.grey500,\r\n '&[data-shrink=\"false\"]': {\r\n top: 5\r\n }\r\n },\r\n '& > div > input': {\r\n padding: '30.5px 14px 11.5px !important'\r\n },\r\n '& legend': {\r\n display: 'none'\r\n },\r\n '& fieldset': {\r\n top: 0\r\n }\r\n },\r\n mainContent: {\r\n backgroundColor: theme.background,\r\n width: '100%',\r\n minHeight: 'calc(100vh - 120px)',\r\n flexGrow: 1,\r\n padding: '12px',\r\n marginTop: '88px',\r\n marginRight: '20px',\r\n borderRadius: `${theme?.customization?.borderRadius}px`\r\n },\r\n menuCaption: {\r\n fontSize: '0.875rem',\r\n fontWeight: 500,\r\n color: theme.heading,\r\n padding: '6px',\r\n textTransform: 'capitalize',\r\n marginTop: '10px'\r\n },\r\n subMenuCaption: {\r\n fontSize: '0.6875rem',\r\n fontWeight: 500,\r\n color: theme.darkTextSecondary,\r\n textTransform: 'capitalize'\r\n },\r\n commonAvatar: {\r\n cursor: 'pointer',\r\n borderRadius: '8px'\r\n },\r\n smallAvatar: {\r\n width: '22px',\r\n height: '22px',\r\n fontSize: '1rem'\r\n },\r\n mediumAvatar: {\r\n width: '34px',\r\n height: '34px',\r\n fontSize: '1.2rem'\r\n },\r\n largeAvatar: {\r\n width: '44px',\r\n height: '44px',\r\n fontSize: '1.5rem'\r\n }\r\n };\r\n}\r\n","export const THEME_PRESETS = {\r\n light: require('./palettes/light.module.scss'),\r\n dark: require('./palettes/dark.module.scss'),\r\n warm: require('./palettes/warm.module.scss'),\r\n relax: require('./palettes/relax.module.scss')\r\n};\r\n","import { createTheme } from '@mui/material/styles';\r\n\r\n// project imports\r\nimport componentStyleOverrides from './compStyleOverride';\r\nimport themePalette from './palette';\r\nimport themeTypography from './typography';\r\nimport { THEME_PRESETS } from './presets';\r\n\r\n/**\r\n * Represent theme style and structure as per Material-UI\r\n * @param {JsonObject} customization customization parameter object\r\n */\r\n\r\nexport const theme = (customization) => {\r\n const color = THEME_PRESETS[customization?.theme ?? 'light'];\r\n\r\n const themeOption = {\r\n colors: color,\r\n heading: color.grey900,\r\n paper: color.paper,\r\n backgroundDefault: color.background,\r\n background: color.primaryLight,\r\n darkTextPrimary: color.grey700,\r\n darkTextSecondary: color.grey500,\r\n textDark: color.grey900,\r\n menuSelected: color.secondaryDark,\r\n menuSelectedBack: color.primaryMain,\r\n divider: color.grey200,\r\n mode: color?.mode ?? 'light',\r\n white: color.white,\r\n black: color.black\r\n };\r\n\r\n const themeOptions = {\r\n direction: 'ltr',\r\n palette: themePalette(themeOption),\r\n mixins: {\r\n toolbar: {\r\n minHeight: '48px',\r\n padding: '16px',\r\n '@media (min-width: 600px)': {\r\n minHeight: '48px'\r\n }\r\n }\r\n },\r\n typography: themeTypography(themeOption)\r\n };\r\n\r\n const themes = createTheme(themeOptions);\r\n themes.components = componentStyleOverrides(themeOption);\r\n\r\n return themes;\r\n};\r\n\r\nexport default theme;\r\n","export default function componentStyleOverrides(theme) {\r\n const bgColor = theme.colors?.paper;\r\n return {\r\n MuiButton: {\r\n styleOverrides: {\r\n root: {\r\n fontWeight: 500,\r\n borderRadius: '4px'\r\n }\r\n }\r\n },\r\n MuiPaper: {\r\n defaultProps: {\r\n elevation: 0\r\n },\r\n styleOverrides: {\r\n root: {\r\n backgroundImage: 'none'\r\n },\r\n rounded: {\r\n borderRadius: `${theme?.customization?.borderRadius}px`\r\n }\r\n }\r\n },\r\n MuiCardHeader: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.colors?.textDark,\r\n padding: '24px'\r\n },\r\n title: {\r\n fontSize: '1.125rem'\r\n }\r\n }\r\n },\r\n MuiCardContent: {\r\n styleOverrides: {\r\n root: {\r\n padding: '24px'\r\n }\r\n }\r\n },\r\n MuiCardActions: {\r\n styleOverrides: {\r\n root: {\r\n padding: '24px'\r\n }\r\n }\r\n },\r\n MuiListItemButton: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.darkTextPrimary,\r\n paddingTop: '10px',\r\n paddingBottom: '10px',\r\n '&.Mui-selected': {\r\n color: theme.paper,\r\n backgroundColor: theme.menuSelectedBack,\r\n '&:hover': {\r\n backgroundColor: theme.menuSelectedBack\r\n },\r\n '& .MuiListItemIcon-root': {\r\n color: theme.paper\r\n }\r\n },\r\n '&:hover': {\r\n backgroundColor: theme.menuSelectedBack,\r\n color: theme.paper,\r\n '& .MuiListItemIcon-root': {\r\n color: theme.paper\r\n }\r\n }\r\n }\r\n }\r\n },\r\n MuiListItemIcon: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.darkTextPrimary,\r\n minWidth: '36px'\r\n }\r\n }\r\n },\r\n MuiListItemText: {\r\n styleOverrides: {\r\n primary: {\r\n color: theme.textDark\r\n }\r\n }\r\n },\r\n MuiInputBase: {\r\n styleOverrides: {\r\n input: {\r\n color: theme.textDark,\r\n '&::placeholder': {\r\n color: theme.darkTextSecondary,\r\n fontSize: '0.875rem',\r\n fontWeight: 'bold'\r\n }\r\n }\r\n }\r\n },\r\n // MuiOutlinedInput: {\r\n // styleOverrides: {\r\n // root: {\r\n // background: bgColor,\r\n // borderRadius: `${theme?.customization?.borderRadius}px`,\r\n // '& .MuiOutlinedInput-notchedOutline': {\r\n // borderColor: theme.colors?.grey400\r\n // },\r\n // '&:hover $notchedOutline': {\r\n // borderColor: theme.colors?.primaryLight\r\n // },\r\n // '&.MuiInputBase-multiline': {\r\n // padding: 1\r\n // }\r\n // },\r\n // input: {\r\n // fontWeight: 500,\r\n // background: bgColor,\r\n // padding: '15.5px 14px',\r\n // borderRadius: `${theme?.customization?.borderRadius}px`,\r\n // '&.MuiInputBase-inputSizeSmall': {\r\n // padding: '10px 14px',\r\n // '&.MuiInputBase-inputAdornedStart': {\r\n // paddingLeft: 0\r\n // }\r\n // }\r\n // },\r\n // inputAdornedStart: {\r\n // paddingLeft: 4\r\n // },\r\n // notchedOutline: {\r\n // borderRadius: `${theme?.customization?.borderRadius}px`\r\n // }\r\n // }\r\n // },\r\n MuiSlider: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-disabled': {\r\n color: theme.colors?.grey300\r\n }\r\n },\r\n mark: {\r\n backgroundColor: theme.paper,\r\n width: '4px'\r\n },\r\n valueLabel: {\r\n color: theme?.colors?.primaryLight\r\n }\r\n }\r\n },\r\n MuiDivider: {\r\n styleOverrides: {\r\n root: {\r\n borderColor: theme.divider,\r\n opacity: 1\r\n }\r\n }\r\n },\r\n MuiAvatar: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.colors?.primaryDark,\r\n background: theme.colors?.primary200\r\n }\r\n }\r\n },\r\n MuiChip: {\r\n styleOverrides: {\r\n root: {\r\n '&.MuiChip-deletable .MuiChip-deleteIcon': {\r\n color: 'inherit'\r\n }\r\n }\r\n }\r\n },\r\n MuiTooltip: {\r\n styleOverrides: {\r\n tooltip: {\r\n color: theme.paper,\r\n background: theme.colors?.grey700\r\n }\r\n }\r\n },\r\n MuiDialogContentText: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.colors?.grey800\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import PropTypes from 'prop-types';\r\nimport { useEffect } from 'react';\r\nimport { useLocation } from 'react-router-dom';\r\n\r\n// ==============================|| NAVIGATION SCROLL TO TOP ||============================== //\r\n\r\nconst NavigationScroll = ({ children }) => {\r\n const location = useLocation();\r\n const { pathname } = location;\r\n\r\n useEffect(() => {\r\n window.scrollTo({\r\n top: 0,\r\n left: 0,\r\n behavior: 'smooth'\r\n });\r\n }, [pathname]);\r\n\r\n return children || null;\r\n};\r\n\r\nNavigationScroll.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default NavigationScroll;\r\n","import i18n from 'i18next';\r\nimport { initReactI18next } from 'react-i18next';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\nimport { translation } from 'apis';\r\n\r\nexport const lazyLoadTranslations = async () => {\r\n const data = await translation.getResources();\r\n data?.map((lang) => {\r\n i18n.addResourceBundle(lang.ln, lang.namespace, lang.datavalues);\r\n return null;\r\n });\r\n};\r\n\r\ni18n.use(LanguageDetector)\r\n .use(initReactI18next)\r\n .init({\r\n debug: true,\r\n partialBundledLanguages: true,\r\n transSupportBasicHtmlNodes: true,\r\n fallbackLng: 'el',\r\n defaultNS: 'common',\r\n interpolation: {\r\n escapeValue: false\r\n },\r\n resources: {}\r\n });\r\n\r\nexport default i18n;\r\n","import { useEffect } from 'react';\r\nimport { useMe } from '../../hooks/useMe';\r\nimport { Box, CircularProgress } from '@mui/material';\r\nimport { QueryStatus } from 'enums';\r\nimport { lazyLoadTranslations } from 'i18n';\r\nimport { useSettings } from 'hooks/useSettings';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst SplashScreen = ({ children }) => {\r\n const { status } = useMe();\r\n const { projectFullTitle, projectIcon } = useSettings();\r\n\r\n useEffect(() => {\r\n if (projectFullTitle) {\r\n document.title = projectFullTitle;\r\n document.querySelector('meta[name=\"title\"]').setAttribute('content', projectFullTitle);\r\n }\r\n if (projectIcon) {\r\n const favicon = document.getElementById('favicon');\r\n favicon.href = projectIcon;\r\n favicon.setAttribute('type', 'image/x-icon');\r\n }\r\n }, [projectFullTitle, projectIcon]);\r\n\r\n useEffect(() => {\r\n lazyLoadTranslations();\r\n }, []);\r\n\r\n if (status === QueryStatus.loading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return children;\r\n};\r\n\r\nSplashScreen.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default SplashScreen;\r\n","import { useSelector } from 'react-redux';\r\n\r\nimport { ThemeProvider } from '@mui/material/styles';\r\nimport { CssBaseline, StyledEngineProvider, Slide } from '@mui/material';\r\n\r\nimport { QBringValueProvider } from '@qubiteq/datagrid';\r\n\r\n// routing\r\nimport Routes from 'routes';\r\n\r\n// defaultTheme\r\nimport themes from 'themes';\r\n\r\n// project imports\r\nimport NavigationScroll from 'layout/NavigationScroll';\r\n\r\nimport { QueryClient, QueryClientProvider } from 'react-query';\r\n\r\nimport { SettingsProvider } from 'context/settingsContext';\r\n\r\n// permissions\r\nimport { PermissionProvider } from 'context/permissionContext';\r\n\r\nimport { UserProvider } from 'context/userContext';\r\n\r\nimport { DialogProvider } from 'context/dialogContext';\r\n\r\nimport SplashScreen from './views/splashScreen';\r\n\r\nimport { ModalProvider } from 'qubCommon/context/modalContext';\r\n\r\nimport { BringValueProvider } from 'context/BringValueContext/bringValueContext';\r\n\r\nimport { LoaderProvider } from 'context/loaderContext';\r\n\r\nimport { MobileConnectionProvider } from 'context/SignalR/mobileActionsConnection';\r\n\r\nimport { setLicenseKey } from '@grapecity/wijmo';\r\n\r\nimport { LoadingDialog } from './hoc';\r\n\r\nimport 'font-awesome/css/font-awesome.min.css';\r\n\r\nimport './assets/css/qubStyles.css';\r\n\r\nconst queryClient = new QueryClient({\r\n defaultOptions: {\r\n retry: 1,\r\n queries: {\r\n refetchOnWindowFocus: false\r\n }\r\n }\r\n});\r\n\r\n// ==============================|| APP ||============================== //\r\n\r\nconst App = () => {\r\n const customization = useSelector((state) => state.customization);\r\n\r\n // console.log('window', window);\r\n try {\r\n const data = window.localStorage.getItem('CONFIG');\r\n window.CONFIG = JSON.parse(data);\r\n\r\n // console.log(window.CONFIG);\r\n setLicenseKey(window.CONFIG.WIJMO_LICENSE_KEY);\r\n } catch (e) {\r\n console.log(e);\r\n const data = window.localStorage.getItem('CONFIG');\r\n window.CONFIG = JSON.parse(data);\r\n\r\n // console.log(window.CONFIG);\r\n setLicenseKey(window.CONFIG.WIJMO_LICENSE_KEY);\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default App;\r\n","// import ReactDOM from 'react-dom';\r\nimport { createRoot } from 'react-dom/client';\r\n\r\n// third party\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport { Provider } from 'react-redux';\r\nimport { PersistGate } from 'redux-persist/integration/react';\r\n\r\n// project imports\r\nimport * as serviceWorker from 'serviceWorker';\r\nimport App from 'App';\r\nimport { store, persistor } from 'store';\r\nimport './assets/main.css';\r\n\r\n// style + assets\r\nimport 'assets/scss/style.scss';\r\nimport '@grapecity/wijmo.styles/wijmo.css';\r\n\r\n// i18n\r\nimport './i18n';\r\n\r\nimport '@qubiteq/datagrid/dist/datagrid.cjs.development.css';\r\nimport { Helpers } from '@qubiteq/datagrid';\r\nimport { setLicenseKey } from '@grapecity/wijmo';\r\nimport { SnackbarProvider } from 'notistack';\r\nimport { Slide } from '@mui/material';\r\n\r\n// ==============================|| LICENSE WIJMO ||============================== //\r\n\r\n// setLicenseKey(window.CONFIG.WIJMO_LICENSE_KEY);\r\n// Helpers.licenseWj(window.CONFIG.WIJMO_LICENSE_KEY);\r\n\r\n/* eslint-disable */\r\n// ==============================|| REACT DOM RENDER ||============================== //\r\n\r\n// ReactDOM.render(\r\nconst rootElement = document.getElementById('root');\r\nconst root = createRoot(rootElement);\r\nroot.render(\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n // ,\r\n // document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","import { UserContext } from 'context/userContext';\r\nimport { useContext } from 'react';\r\n\r\nexport const useMe = () => {\r\n const { data, ...other } = useContext(UserContext);\r\n return { whoami: data, ...other };\r\n};\r\n","// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nexport const initialState = {\r\n isLoggedIn: false,\r\n isEmailVerified: null,\r\n token: null\r\n};\r\n\r\n// ==============================|| CUSTOMIZATION REDUCER ||============================== //\r\n\r\nconst authReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.LOGIN:\r\n return {\r\n ...state,\r\n ...action.payload,\r\n isLoggedIn: true\r\n };\r\n case actionTypes.VERIFY_EMAIL:\r\n return {\r\n ...state,\r\n isEmailVerified: true\r\n };\r\n\r\n case actionTypes.REFRESH_TOKEN:\r\n return {\r\n ...state,\r\n ...action.payload\r\n };\r\n case actionTypes.LOGOUT:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default authReducer;\r\n","// project imports\r\nimport config from 'config';\r\n\r\n// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nexport const initialState = {\r\n fontFamily: config.fontFamily,\r\n borderRadius: config.borderRadius,\r\n language: config.language,\r\n capitalizeInputFields: true,\r\n opened: true,\r\n theme: 'light'\r\n};\r\n\r\n// ==============================|| CUSTOMIZATION REDUCER ||============================== //\r\n\r\nconst customizationReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.SET_FONT_FAMILY:\r\n return {\r\n ...state,\r\n fontFamily: action.fontFamily\r\n };\r\n case actionTypes.SET_BORDER_RADIUS:\r\n return {\r\n ...state,\r\n borderRadius: action.borderRadius\r\n };\r\n case actionTypes.SET_LANGUAGE:\r\n return {\r\n ...state,\r\n language: action.language\r\n };\r\n case actionTypes.SET_CAPITALIZE_INPUT_FIELDS:\r\n return {\r\n ...state,\r\n capitalizeInputFields: action.capitalizeInputFields\r\n };\r\n case actionTypes.SET_THEME:\r\n return {\r\n ...state,\r\n theme: action.theme\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default customizationReducer;\r\n","// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nexport const initialState = {\r\n isOpen: ['Home.View'], // for active default menu\r\n opened: true,\r\n lockMenu: false,\r\n menuItems: [],\r\n loading: false\r\n};\r\n\r\n// ==============================|| CUSTOMIZATION REDUCER ||============================== //\r\n\r\nconst menuReducer = (state = initialState, action) => {\r\n let id;\r\n switch (action.type) {\r\n case actionTypes.MENU_OPEN:\r\n id = action.id;\r\n return {\r\n ...state,\r\n isOpen: [id]\r\n };\r\n case actionTypes.SET_MENU:\r\n return {\r\n ...state,\r\n opened: action.opened\r\n };\r\n case actionTypes.LOCK_MENU:\r\n return {\r\n ...state,\r\n lockMenu: action.lockMenu\r\n };\r\n case actionTypes.STORE_MENU:\r\n return {\r\n ...state,\r\n menuItems: action.menuItems\r\n };\r\n case actionTypes.RESET_MENU:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default menuReducer;\r\n","// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nexport const initialState = { breadcrumbs: null, info: null };\r\n\r\n// ==============================|| BREADCRUMB REDUCER ||============================== //\r\n\r\nconst breadcrumbReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.SET_BREADCRUMBS:\r\n return {\r\n ...state,\r\n ...action.payload\r\n };\r\n case actionTypes.RESET_BREADCRUMBS:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default breadcrumbReducer;\r\n","import * as actionTypes from './actions';\r\n\r\nexport const initialState = {\r\n isDevicePaired: false\r\n};\r\n\r\nconst signalrReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.SIGNALR_DEVICE_PAIRED:\r\n return {\r\n ...state,\r\n isDevicePaired: true\r\n };\r\n case actionTypes.SIGNALR_DEVICE_UNPAIRED:\r\n return {\r\n ...state,\r\n isDevicePaired: false\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default signalrReducer;\r\n","import { combineReducers } from 'redux';\r\n\r\n// reducer import\r\nimport authReducer from './authReducer';\r\nimport customizationReducer from './customizationReducer';\r\nimport menuReducer from './menuReducer';\r\nimport breadcrumbReducer from './breadcrumbReducer';\r\nimport signalrReducer from './signalrReducer';\r\n// ==============================|| COMBINE REDUCER ||============================== //\r\n\r\nconst reducer = combineReducers({\r\n customization: customizationReducer,\r\n auth: authReducer,\r\n menu: menuReducer,\r\n breadcrumbs: breadcrumbReducer,\r\n signalr: signalrReducer\r\n});\r\n\r\nexport default reducer;\r\n","import { createStore } from 'redux';\r\nimport reducer from './reducer';\r\nimport { persistStore, persistReducer } from 'redux-persist';\r\nimport storage from 'redux-persist/lib/storage';\r\n\r\n// ==============================|| REDUX - MAIN STORE ||============================== //\r\n\r\nconst persistConfig = {\r\n key: 'root',\r\n storage,\r\n whitelist: ['auth', 'menu', 'customization']\r\n};\r\n\r\nconst persistedReducer = persistReducer(persistConfig, reducer);\r\n/* eslint-disable no-underscore-dangle */\r\n\r\nconst store = createStore(persistedReducer, window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__());\r\nconst persistor = persistStore(store);\r\n\r\nexport { store, persistor };\r\n"],"sourceRoot":""}