{"version":3,"sources":["config.js","store/authReducer.js","store/customizationReducer.js","store/menuReducer.js","store/breadcrumbReducer.js","store/signalrReducer.js","store/reducer.js","store/index.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","assets/images/csvIcon.png","qubCommon/Inputs/Checkbox.jsx","context/settingsContext.js","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","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/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"],"names":["config","basename","defaultPath","fontFamily","language","borderRadius","initialState","isLoggedIn","isEmailVerified","token","authReducer","state","action","type","actionTypes","payload","capitalizeInputFields","opened","theme","customizationReducer","isOpen","lockMenu","menuItems","loading","menuReducer","id","breadcrumbs","info","breadcrumbReducer","isDevicePaired","signalrReducer","reducer","combineReducers","customization","auth","menu","signalr","persistConfig","key","storage","whitelist","persistedReducer","persistReducer","store","createStore","window","__REDUX_DEVTOOLS_EXTENSION__","persistor","persistStore","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","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","variant","className","displayName","personApi","post","path","params","options","cancelToken","axiosInstance","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","moment","getState","headers","Authorization","originalRequest","message","errorObject","status","Promise","reject","_retry","dispatch","LOGOUT","refreshToken","refreshResponse","REFRESH_TOKEN","LoaderContext","LoaderProvider","useState","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","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","name","rules","rowDirection","innerRef","blurFn","tooltip","autoCapitalize","changeFn","startAdornment","endAdornment","other","Tooltip","inputProps","toLocaleUpperCase","replace","toLocaleLowerCase","toUppercase","InputProps","disableUnderline","InputAdornment","onBlur","helperText","required","InputLabelProps","FormCheckbox","control","useController","fieldState","checked","userSelect","SettingsContext","SettingsProvider","setData","fetchData","generic","getSettings","UserContext","UserProvider","memo","meQuery","useQuery","person","organization","formatedPermissions","dbPermission","subject","abilities","defineAbility","can","element","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","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","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","setAvatar","fetch","recordGuid","divider","flexItem","fathersName","gender","dob","errorMain","useBreadcrumbs","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","original_name","disableElevation","BreadcrumbSection","pathname","useLocation","matchDownMd","FullNameSection","Header","handleLeftDrawerToggle","md","NavItem","matchesSM","Icon","Loadable","lazy","icon","itemIcon","findIndex","itemTarget","listItemProps","external","py","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","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","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.0d199956.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","// 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","// 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","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 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","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 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","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/Help.f55b29c1.pdf\";","var map = {\n\t\"./AthletesHelp.pdf\": 751,\n\t\"./ClubsHelp.pdf\": 752,\n\t\"./GDPR_TKD.pdf\": 678,\n\t\"./Help.pdf\": 683,\n\t\"./OfficialsHelp.pdf\": 753,\n\t\"./PaymentsHelp.pdf\": 754,\n\t\"./Terms.pdf\": 755,\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\": 756,\n\t\"./images/auth/auth-pattern-dark.svg\": 757,\n\t\"./images/auth/auth-pattern.svg\": 758,\n\t\"./images/auth/auth-purple-card.svg\": 759,\n\t\"./images/auth/auth-signup-blue-card.svg\": 760,\n\t\"./images/auth/auth-signup-white-card.svg\": 761,\n\t\"./images/csvIcon.png\": 409,\n\t\"./images/default-user-image.png\": 400,\n\t\"./images/excelIcon.png\": 325,\n\t\"./images/icons/earning.svg\": 762,\n\t\"./images/icons/social-google.svg\": 763,\n\t\"./images/logo copy.png\": 764,\n\t\"./images/logo-dark.svg\": 765,\n\t\"./images/logo-white.svg\": 766,\n\t\"./images/logo.png\": 767,\n\t\"./images/logo.svg\": 768,\n\t\"./images/no-image-icon.png\": 487,\n\t\"./images/pdf.png\": 347,\n\t\"./images/qb.png\": 258,\n\t\"./images/users/user-round.svg\": 769,\n\t\"./main.css\": 623,\n\t\"./scss/_themes-vars.module.scss\": 152,\n\t\"./scss/style.scss\": 624,\n\t\"./tailwind.css\": 770\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 = 750;","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"],"sourceRoot":""}