{"version":3,"sources":["shared/consts/CookieNames.ts","shared/consts/CsrfNames.ts","shared/consts/RouteNames.ts","shared/consts/LanguageNames.ts","shared/consts/ThemeNames.ts","components/shared/DatePicker.tsx","components/shared/Dropdown.tsx","components/shared/FilePicker.tsx","AppSettings.ts","themes/Themes.ts","shared/providers/PersonalizationProvider.tsx","components/shared/LanguagePicker.tsx","components/shared/Loader.tsx","components/shared/ThemePicker.tsx","components/shared/MeControl.tsx","components/shared/PeoplePicker.tsx","components/shared/TagPicker.tsx","components/shared/TextField.tsx","components/shared/Tile.tsx","components/admin/AdminNav.tsx","shared/api/Api.ts","shared/models/Thesis.ts","shared/providers/AuthenticationProvider.tsx","shared/hooks/AuthHooks.ts","shared/hooks/CourseHooks.ts","shared/hooks/DeadlineHooks.ts","shared/utils/mappers/KeywordMappers.ts","shared/utils/mappers/UserMappers.ts","shared/utils/mappers/GradeMappers.ts","shared/utils/Utils.ts","shared/utils/mappers/TermMappers.ts","shared/hooks/KeywordHooks.ts","shared/hooks/QuestionHooks.ts","shared/hooks/ReviewHooks.ts","shared/hooks/TermsHooks.ts","shared/hooks/ThesisHooks.ts","shared/hooks/UserHooks.ts","components/admin/AdminPanel.tsx","components/nav/NavActions.tsx","components/nav/NavSeparator.tsx","components/nav/NavHeaderLink.tsx","components/nav/NavHeader.tsx","components/nav/NavLink.tsx","components/nav/NavLinks.tsx","components/review/ReviewModal.tsx","components/thesis/ThesisActions.tsx","components/review/ReviewFormConfirmDialog.tsx","shared/models/Auth/AccessType.ts","shared/models/components/FilePicker.ts","shared/models/Grades.ts","components/review/ReviewFormQnA.tsx","components/review/ReviewForm.tsx","components/thesis/ThesisFormValidationRules.ts","components/thesis/ThesisFormConfirmDialog.tsx","components/thesis/ThesisForm.tsx","components/thesis/ThesisGradeConfirmDialog.tsx","components/thesis/ThesisList.tsx","components/auth/AuthenticatedWrapper.tsx","components/thesis/ThesisHistoryLog.tsx","components/thesis/ThesisHideConfirmDialog.tsx","components/shared/Card.tsx","components/search/SearchResultList.tsx","components/search/SearchPagination.tsx","components/search/MultiSearch.tsx","components/thesis/ThesisCancelGradeDialog.tsx","components/review/CancelReviewDialog.tsx","components/shared/Link.tsx","components/thesis/ThesisFileUploadDialog.tsx","components/thesis/ThesisFileUploadDialogValidationRules.ts","components/thesis/ThesisAdditionalFilesForm.tsx","shared/hooks/FilesHooks.ts","components/shared/SpinButton.tsx","components/shared/Checkbox.tsx","layout/Nav.tsx","layout/Main.tsx","layout/Footer.tsx","layout/Layout.tsx","pages/home/HomeSignIn.tsx","pages/home/HomeSignUp.tsx","pages/home/Home.tsx","pages/home/HomeContainer.tsx","pages/auth/SignIn.tsx","pages/auth/SignOut.tsx","pages/auth/Authorize.tsx","pages/thesis/ThesisDetails.tsx","pages/thesis/ThesisCreateForm.tsx","pages/thesis/ThesisEditForm.tsx","pages/review/ReviewCreateForm.tsx","pages/review/ReviewEditForm.tsx","pages/NotFound.tsx","pages/Forbidden.tsx","pages/Error.tsx","pages/Privacy.tsx","pages/About.tsx","pages/Search.tsx","pages/admin/AdminPanelAdministrators.tsx","pages/admin/AdminPanelUsers.tsx","pages/admin/AdminPanelDeadline.tsx","pages/admin/AdminPanelCourse.tsx","pages/admin/AdminPanelExport.tsx","shared/hooks/ExportHooks.ts","pages/admin/AdminPanelQuestions.tsx","routes/Routes.tsx","shared/localization/i18n.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["DatePicker","props","useState","value","date","setDate","name","control","rules","defaultValue","render","field","onChange","onBlur","fieldName","error","fieldState","onSelectDate","key","errorMessage","message","DatePickerWrapper","theme","useTheme","validationErrorStyles","mergeStyles","color","semanticColors","errorText","fontSize","FontSizes","size12","marginTop","calloutProps","styles","root","button","palette","black","isRequired","required","firstDayOfWeek","DayOfWeek","Monday","formatDate","toLocaleDateString","strings","placeholder","className","days","shortDays","months","shortMonths","goToToday","Dropdown","e","option","selectedKey","FilePicker","fileList","CustomFilePickerWrapper","Label","label","Stack","horizontal","tokens","childrenGap","StackItem","grow","Array","from","map","v","join","readOnly","CustomFilePicker","inputElement","setInputElement","useEffect","document","getElementById","id","hiddenInputButton","type","accept","options","allowedExtensions","multiple","event","persist","files","currentTarget","style","display","hidden","PrimaryButton","text","onClick","click","iconButton","ActionButton","iconProps","iconName","icon","iconOnlyButton","IconButton","iconOnly","CookieNames","CsrfNames","details","editThesis","guid","replace","addReview","editReview","thesisGuid","adminPanel","reviewGuid","RouteNames","LanguageNames","ThemeNames","AvailableThemes","light","themePrimary","themeLighterAlt","themeLighter","themeLight","themeTertiary","themeSecondary","themeDarkAlt","themeDark","themeDarker","neutralLighterAlt","neutralLighter","neutralLight","neutralQuaternaryAlt","neutralQuaternary","neutralTertiaryAlt","neutralTertiary","neutralSecondary","neutralPrimaryAlt","neutralPrimary","neutralDark","white","dark","lightHighContrast","darkHighContrast","PersonalizationContext","React","createContext","themeName","switchTheme","languageName","Polish","switchLanguage","PersonalizationProvider","useCookies","language","cookies","setCookie","defaultCookieOptions","expires","Date","getTime","httpOnly","secure","sameSite","saveThemeSettings","saveLanguageSettings","setTheme","i18n","useTranslation","setLanguage","changeLanguage","ThemeProvider","Provider","children","English","margin","Loader","Spinner","labelPosition","size","ThemePicker","context","useContext","isDarkMode","setIsDarkMode","isHighContrast","setIsHighContrast","currentTheme","setCurrentTheme","getThemeName","useDropdown","dropdownWidth","dropdownOptions","item","data","stackTokens","verticalAlign","Icon","iconStyles","Toggle","toggleStyles","defaultChecked","size18","AppSettings","UMK","process","USOS","InstituteOfPsychology","Auth","Authenticate","Authorize","SignOut","Keywords","Base","Terms","Current","CurrentYear","All","Users","Students","Employees","Custom","Admins","Default","Theses","Promoted","Reviewed","Authored","Grade","Confirm","Cancel","Hide","Unhide","Search","Questions","Active","Reviews","ValidateQuestions","UpdateQuestions","Files","Thesis","Deadline","Course","Export","Validate","MeControl","useBoolean","isCalloutVisible","toggleCalloutIsVisible","toggle","meButtonId","useId","calloutButton","DefaultButton","user","Persona","imageUrl","avatarUrl","imageInitials","split","s","charAt","PersonaSize","size40","calloutContent","href","Urls","signOut","Item","secondaryText","email","size56","calloutComponent","Callout","directionalHint","DirectionalHint","bottomAutoEdge","onDismiss","target","isBeakVisible","gapSpace","setInitialFocus","PeoplePicker","people","selectedPeople","PeoplePickerWrapper","onEmptyResolveSuggestions","selectedItems","filter","p","i","includes","sort","p1","p2","localeCompare","slice","maxSuggestions","onResolveSuggestions","onFilterChanged","filterPeople","pickerSuggestionsProps","suggestionProps","itemLimit","peopleLimit","defaultSelectedItems","resolveDelay","onInputChange","suggestionsHeaderText","mostRecentlyUsedHeaderText","noResultsFoundText","loadingText","showRemoveButtons","suggestionsAvailableAlertText","suggestionsContainerAriaLabel","toLowerCase","some","u","TagPicker","tags","selectedTags","TagPickerWrapper","t","endsWith","separator","length","tag","TextField","Tile","elevation","effects","elevation4","elevation8","elevation16","elevation64","containerStyles","width","tileStyles","padding","backgroundColor","boxShadow","title","titleSize","size24","AdminNav","history","useHistory","navStyles","height","boxSizing","border","overflowY","onLinkClick","ev","preventDefault","push","url","ariaLabel","groups","Api","axios","create","xsrfCookieName","csrfCookie","xsrfHeaderName","csrfHeader","interceptors","response","use","status","Error","ModificationType","AuthenticationContext","isAuthenticated","isFetching","AuthenticationProvider","currentUser","setCurrentUser","setIsAuthenticated","setIsFetching","userToken","userClaims","jwtDecode","isParticipant","IsParticipant","isLecturer","IsLecturer","isAdmin","IsAdmin","isCustom","IsCustom","isEmployee","Id","Name","AvatarUrl","Email","undefined","useIsAuthenticated","authContext","useCurrentUser","useCourse","course","setCourse","get","API","then","catch","console","useDeadline","mapKeywordsToTags","keywords","k","keyword","mapTagsToKeywords","isNaN","parseInt","toString","mapUserToPersona","usosId","firstName","lastName","photoUrl","mapUsersToPersona","users","mapGradesToDropdownOptions","gradeList","g","scrollToTop","window","scrollTo","mapTermToDropdownOptions","term","names","pl","useKeywords","setKeywords","useActiveQuestions","questions","setQuestions","useReview","review","setReview","useAllTerms","terms","setTerms","mappedTerms","en","startDate","endDate","finishDate","useCurrentYear","setTerm","useThesis","thesis","setThesis","useTheses","endpoint","verifyEmployee","useUsers","query","setUsers","useStudents","useEmployees","usePeoplePicker","excludedIds","setPeople","setSelectedPeople","AdminPanel","location","pathname","contentStyles","to","forbidden","links","adminPanelAdmins","adminPanelUsers","adminPanelDeadline","adminPanelCourse","adminPanelQuestions","adminPanelExport","NavActions","NavSeparator","selectors","background","Separator","vertical","NavHeaderLink","NavHeader","primaryLabel","primaryHref","primaryOnClick","secondarylabel","secondaryHref","secondaryOnClick","NavLink","NavLinks","ReviewModal","loader","qnas","qnAs","qna","index","question","answer","form","size20","person","grade","iconButtonStyles","rootHovered","maxHeight","Modal","isOpen","isModalVisible","horizontalAlign","marginLeft","setModalVisible","fontWeight","addActions","items","actions","canDownload","disabled","visible","downloadAction","fileGuid","canEdit","editAction","editThesisPath","canAddReview","addReviewAction","addReviewPath","canEditReview","editReviewAction","editReviewPath","ReviewFormConfirmDialog","labelId","subTextId","dialogContentProps","DialogType","normal","closeButtonAriaLabel","subText","modalProps","useMemo","titleAriaId","subtitleAriaId","isBlocking","Dialog","isVisible","toggleIsVisible","DialogFooter","onConfirm","onSave","ModificationTypeIcons","Unknown","Created","TitleChanged","AbstractChanged","AuthorsChanged","ReviewerChanged","KeywordsChanged","Hidden","Visible","FileChanged","AddtionalFilesAdded","AdditionalFilesRemoved","ReviewAdded","ReviewChanged","ReveiewQuestionsUpdated","ReviewConfirmed","GradeConfirmed","GradeCanceled","ReviewCanceled","ModificationTypeDescription","AccessTypes","filePickerDefaultOptions","maxFileCount","maxSize","GradeList","ReviewFormQnA","fields","buildForm","shouldValidate","forEach","buildFormQuestion","validate","multiline","ReviewForm","confirmDialogIsVisible","toggleConfirmDialogIsVisible","uploadSuccess","setUploadSuccess","setErrorMessage","useRef","useForm","reValidateMode","mode","handleSubmit","uploadReview","isConfirmed","values","questionIds","Object","keys","result","detailsPath","err","clearMessages","saveReview","current","actionItems","updateRequired","updateReviewQuestionsAction","post","errorMessageBar","MessageBar","messageBarType","MessageBarType","successMessageBar","success","invalidQuestionsMessageBar","blocked","CommandBar","marginRight","titleRules","authorRules","abstractRules","tagsRules","reviewerRules","ThesisFormConfirmDialog","ThesisForm","setTags","setSelectedTags","useTagPicker","onChangeSelectedTags","students","authors","selectedAuthors","onChangeSelectedAuthors","employees","excludedUserIds","reviewer","selectedReviewer","onChangeSelectedReviewer","thesisFile","setThesisFile","defaultValues","abstract","thesisAuthors","thesisKeywords","withReview","reviewerUsosId","authorUsosIds","json","JSON","stringify","file","blob","formData","FormData","append","promoterReview","infoMessageBar","info","warningMessageBar","severeWarning","formStyles","reviewerReview","fileOptions","extension","mime","ThesisGradeConfirmDialog","availableGrades","body","res","ThesisList","startIndex","count","isCollapsed","DetailsList","columns","minWidth","maxWidth","selectionMode","SelectionMode","none","onRenderItemColumn","column","canView","size16","onRenderDetailsHeader","groupProps","showEmptyGroups","AuthenticatedWrapper","useLoader","signIn","ThesisHistoryLog","sortedThesisLogs","thesisLogs","a","b","timestamp","modificationType","iconClass","toLocaleTimeString","imageAlt","substring","compact","ThesisHideConfirmDialog","isThesisHidden","unhideMessageBar","hideMessageBar","uri","Card","CardBody","bodyTokens","CardFooter","footerTokens","CardFooterIcons","footerIcons","SearchResultList","getPersona","fontStyles","shift","onRender","promoter","termId","nothingFound","renderResults","theses","container","size14","SearchPagination","getPageButton","number","alwaysVisible","totalPages","buttonClass","setCurrentPage","currentPage","MultiSearch","allTerms","isSearching","setIsSearching","searchType","setSearchType","searchTerms","setSearchTerms","searchCount","setSearchCount","searchResults","setSearchResults","searchResultsCount","setSearchResultsCount","searchedText","setSearchedText","searchTextField","searchedKeywords","setSearchedKeywords","searchedKeywordsField","searchedPeople","setSearchedPeople","searchedPeopleField","searchTypesOptions","searchTermsOptions","onSearch","reduce","itemCount","searchField","getSearchFieldLabel","getSearchField","searchOptionField","defaultSelectedKey","selectedKeys","defaultSelectedKeys","selected","multiSelect","countOptionField","Math","ceil","ThesisCancelGradeDialog","CancelReviewDialog","Link","highAvailablilityStyles","textDecoration","ThesisFileUploadDialog","setFiles","f","fileArray","pop","headers","ThesisAddtionalFilesForm","useThesisFiles","isFilesFetching","uploadDialogIsVisible","toggleUploadDialogIsVisible","fileName","floor","log","pow","toFixed","fileSizeToHR","actionStyles","canDelete","delete","addFileAction","addFileVisible","isHeaderVisible","SpinButton","onIncrement","onDecrement","SpinButtonWrapper","Checkbox","checked","CheckboxWrapper","Nav","deadline","searchTheses","search","addThesis","Main","Footer","footerStyle","copyrightStyle","getFullYear","Copyright","privacy","about","alignSelf","Layout","layoutStyles","minHeight","flexDirection","HomeSignIn","align","HomeSignUp","courseUrl","Home","deadlineFetching","currentYear","currentYearFetching","currentTheses","curentThesesFetching","authoredTheses","authoredThesesFetching","promotedTheses","promotedThesesFetching","reviewedTheses","reviewedThesesFetching","authoredList","promotedList","reviewedList","addThesisButton","HomeContainer","hasAccess","SignIn","params","token","verifier","OAuthToken","OAuthVerifier","ThesisDetails","thesisFetching","isPromoterReviewVisible","toggleIsPromoterReviewVisible","isReviewerReviewVisible","toggleIsReviewerReviewVisible","cancelDialogIsVisible","toggleCancelDialogIsVisible","cancelPromoterReviewDialogIsVisible","toggleCancelPromoterReviewDialogIsVisible","cancelReviewerReviewDialogIsVisible","toggleCancelReviewerReviewDialogIsVisible","hideDialogIsVisible","toggleHideDialogIsVisible","containerStackTokens","gradeConflictMessageBar","hiddenMessageBar","availableGradeRange","getThesisActions","createdAt","DetailsRow","rowStyles","itemIndex","getReviewDetailRow","getReviewModal","getThesisLogs","shrink","canAddAdditionalFiles","alignItems","isMultiline","warning","getReviewActions","allowedActions","toggleDialog","isPromoter","canCancelPromoterReview","canCancelReviewerReview","toggleGradeConfrimDialog","toggleHideThesisDialog","toggleGradeCancelDialog","canEditGrade","editGradeAction","canCancelGrade","cancelGradeAction","canHide","hideThesisAction","canUnhide","unhideThesisAction","action","showModal","thesisActions","toggleModalVisible","toggleDialogVisible","ThesisCreateForm","keywordsFetching","studentsFetching","employeesFetching","ThesisEditForm","put","ReviewCreateForm","questionsFetching","ReviewEditForm","reviewFetching","isValid","setIsValid","useValidateQuestions","isValidFetching","NotFound","size68","Forbidden","Privacy","sectionTitle","sectionText","About","regularFontStyle","largeFontStyle","repo","Image","src","faGithub","faLinkedin","allTermsIsFetching","allUsers","allUsersIsFetching","allKeywords","allKeywordsIsFetching","AdminPanelAdministrators","admins","adminsFetching","defaultAdmin","defaultAdminFetching","AdminPanelAdministratorsForm","selectedAdmins","onChangeSelectedAdmins","administrators","trim","request","userIds","AdminPanelUsers","customUsers","AdminPanelUsersForm","selectedUsers","onChangeSelectedUsers","AdminPanelDeadline","termFetching","setValue","minDate","maxDate","getMonth","getDate","AdminPanelCourse","courseFetching","courseCode","AdminPanelExport","currentTerm","currentTermFetching","exportTerms","exportTermsFetching","selectedTerm","setSelectedTerm","valid","setValid","useExportValidation","isExportValid","exportValidationFetching","AdminPanelQuestions","useQuestions","allQuestions","min","order","max","textRules","isActive","isNew","newQuestions","q","unregister","updatedQuestions","idKeyPairs","idKeyPair","updatedQuestion","Routes","exact","path","component","authorize","notFound","match","resources","translation","i18next","LanguageDetector","initReactI18next","init","lng","fallbackLng","initializeIcons","App","CookiesProvider","I18nextProvider","forceRefresh","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM"],"mappings":"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","file":"static/js/main.91d1d612.chunk.js","sourcesContent":["export namespace CookieNames {\n export const user = '__Secure-User';\n export const theme = 'app-theme';\n export const language = 'app-lang';\n}","export namespace CsrfNames {\n export const csrfCookie = 'CSRF-REQUEST-TOKEN';\n export const csrfHeader = 'X-CSRF-TOKEN';\n export const csrfFormField = '__RequestAntiforgeryToken';\n}","export namespace RouteNames {\n export const root = '/';\n export const about = '/about';\n export const privacy = '/privacy';\n export const signOut = '/signout';\n export const signIn = '/sign-in';\n export const authorize = '/authorize';\n export const details = '/details/:guid';\n export const detailsPath = (guid: string) => details.replace(':guid', guid);\n export const addThesis = '/add-thesis';\n export const editThesis = '/edit-thesis/:guid';\n export const editThesisPath = (guid: string) => editThesis.replace(':guid', guid);\n export const addReview = '/add-review/:thesisGuid';\n export const addReviewPath = (thesisGuid: string) => addReview.replace(':thesisGuid', thesisGuid);\n export const editReview = '/edit-review/:thesisGuid/:reviewGuid';\n export const editReviewPath = (thesisGuid: string, reviewGuid: string) =>\n editReview.replace(':thesisGuid', thesisGuid).replace(':reviewGuid', reviewGuid);\n export const notFound = '/404';\n export const forbidden = '/forbidden';\n export const error = '/error';\n export const search = '/search';\n export const adminPanel = '/admin-panel';\n export const adminPanelAdmins = `${adminPanel}/administrators`;\n export const adminPanelUsers = `${adminPanel}/users`;\n export const adminPanelDeadline = `${adminPanel}/deadline`;\n export const adminPanelExport = `${adminPanel}/export-grades`;\n export const adminPanelCourse = `${adminPanel}/course`;\n export const adminPanelQuestions = `${adminPanel}/questions`\n};","export namespace LanguageNames {\n export const Polish = 'pl';\n export const English = 'en';\n}\n\nexport type LanguageName = 'pl' | 'en';","export namespace ThemeNames {\n export const light = 'lightTheme';\n export const dark = 'darkTheme';\n export const lightHighContrast = 'highContrastLightTheme';\n export const darkHighContrast = 'highContrastDarkTheme';\n}\n\nexport type ThemeName = 'lightTheme' | 'darkTheme' | 'highContrastLightTheme' | 'highContrastDarkTheme';","import React from \"react\";\nimport { DatePicker as FluentDatePicker, DayOfWeek, FontSizes, ICalloutProps, IDatePickerProps, IDatePickerStrings, mergeStyles, useTheme } from \"@fluentui/react\";\nimport { HookFormProps } from \"../../shared/Models\";\nimport { Controller } from \"react-hook-form\";\nimport { useState } from \"react\";\n\ninterface DatePickerProps {\n name: string;\n label: string;\n value: Date;\n onSelectDate?: (date?: Date | null) => void;\n onBlur?: () => void;\n required?: boolean;\n errorMessage?: string | JSX.Element;\n defaultValue?: Date,\n minDate?: Date,\n maxDate?: Date,\n}\n\nexport const DatePicker: React.FC & DatePickerProps> = (props) => {\n const [date, setDate] = useState(props.value);\n\n return (\n (\n {\n if(date) {\n onChange(date);\n setDate(date);\n }\n }}\n value={date}\n onBlur={onBlur}\n key={fieldName}\n errorMessage={error && error.message}\n />\n )}\n />\n );\n};\n\n//#region DatePickerWrapper\n\nexport const DatePickerWrapper: React.FC = (props) => {\n\n //#region Styles\n\n const theme = useTheme();\n const validationErrorStyles = mergeStyles({\n color: theme.semanticColors.errorText,\n fontSize: FontSizes.size12,\n marginTop: '5px'\n });\n const calloutProps: ICalloutProps = {\n styles: {\n root: {\n button: {\n color: theme.palette.black\n }\n }\n }\n }\n\n //#endregion\n\n return (\n <>\n date ? date.toLocaleDateString() : \"\"}\n strings={strings}\n defaultValue={props.defaultValue?.toLocaleDateString()}\n placeholder=\"Wybierz...\"\n aria-placeholder=\"Wybierz datę...\"\n calloutProps={calloutProps}\n />\n {props.errorMessage ? {props.errorMessage} : null}\n \n )\n}\n\n//#endregion\n\n//#region Strings\n\nconst strings: IDatePickerStrings = {\n days: [\"Niedziela\", \"Poniedziałek\", \"Wtorek\", \"Środa\", \"Czwartek\", \"Sobota\"],\n shortDays: [\"Nie\", \"Pon\", \"Wto\", \"Śro\", \"Czw\", \"Pią\", \"Sob\"],\n months: [\"Styczeń\", \"Luty\", \"Marzec\", \"Kwiecień\", \"Maj\", \"Czerwiec\", \"Lipiec\", \"Sierpień\", \"Wrzesień\", \"Październik\", \"Listopad\", \"Grudzień\"],\n shortMonths: [\"Sty\", \"Lut\", \"Mar\", \"Kwi\", \"Maj\", \"Cze\", \"Lip\", \"Sie\", \"Wrz\", \"Paź\", \"Lis\", \"Gru\"],\n goToToday: \"Idź do dzisiaj\",\n};\n\n//#endregion","import React from \"react\";\nimport { Controller } from \"react-hook-form\";\nimport { Dropdown as FluentDropdown, IDropdownProps } from \"@fluentui/react\";\nimport { HookFormProps } from \"../../shared/Models\";\n\nexport const Dropdown: React.FC & IDropdownProps> = (props) => {\n return (\n (\n {\n onChange(option?.key);\n }}\n selectedKey={value}\n onBlur={onBlur}\n key={fieldName}\n errorMessage={error && error.message}\n />\n )}\n />\n );\n};\n\nexport default Dropdown;","import {\n ActionButton,\n FontSizes,\n IconButton,\n IStackTokens,\n Label,\n mergeStyles,\n PrimaryButton,\n Stack,\n StackItem,\n TextField,\n useTheme\n} from '@fluentui/react';\nimport React, { useEffect, useState } from 'react';\nimport { FilePickerOptions, HookFormProps } from '../../shared/Models';\nimport { Controller } from \"react-hook-form\";\n\ninterface FilePickerProps {\n id: string;\n name: string;\n required: boolean;\n value?: FileList | null;\n label?: string;\n icon?: string;\n iconOnly?: boolean;\n multiple?: boolean;\n options?: FilePickerOptions;\n onChange: (fileList: FileList | null) => void;\n onBlur?: () => void;\n errorMessage?: string | JSX.Element;\n}\n\nexport const FilePicker: React.FC & FilePickerProps> = (props) => {\n return (\n (\n onChange(fileList)}\n onBlur={onBlur}\n value={value}\n errorMessage={error && error.message}\n />\n )}\n />\n );\n};\n\nexport default FilePicker;\n\n//#region Custom file picker implementation\n\nconst CustomFilePickerWrapper: React.FC = (props) => {\n const theme = useTheme();\n\n //#region Styles\n\n const stackTokens: IStackTokens = { childrenGap: 15 };\n\n const validationErrorStyles = mergeStyles({\n color: theme.semanticColors.errorText,\n fontSize: FontSizes.size12,\n marginTop: '5px'\n });\n\n //#endregion\n\n return (\n <>\n \n \n \n \n \n \n v.name).join('; ') : \"Nie wybrano żadnego pliku\"\n }\n readOnly\n />\n \n \n {props.errorMessage ? {props.errorMessage} : null}\n \n );\n};\n\nconst CustomFilePicker: React.FC = (props) => {\n const [inputElement, setInputElement] = useState(null);\n\n //Set input element after first render\n useEffect(() => {\n setInputElement(document.getElementById(props.id));\n }, [props.id]);\n\n const onChange = (event: React.ChangeEvent) => {\n event.persist();\n const files = event.currentTarget.files;\n //Invoke onChange for higher component\n props.onChange(files);\n };\n\n //Hidden input component that handles files\n //Custom component is rendered instead of default\n const hiddenInputButton = (\n \n );\n\n //Actual input buttons rendered instead of default which is hidden\n //Rendered depending on passed properties\n const button = (\n <>\n {hiddenInputButton}\n inputElement?.click()}\n />\n \n )\n\n const iconButton = (\n <>\n {hiddenInputButton}\n inputElement?.click()}\n />\n \n )\n\n const iconOnlyButton = (\n <>\n {hiddenInputButton}\n inputElement?.click()}\n />\n \n )\n\n return !props.icon ? button : !props.iconOnly ? iconButton : iconOnlyButton;\n}\n\n//#endregion","export namespace AppSettings {\n export const Urls = {\n UMK: process.env.REACT_APP_URLS_UMK!,\n USOS: process.env.REACT_APP_URLS_USOS!,\n InstituteOfPsychology: process.env.REACT_APP_URLS_INSTITUTE_OF_PSYCHOLOGY!,\n };\n export const API = {\n Auth: {\n Authenticate: process.env.REACT_APP_API_AUTH_AUTHENTICATE!,\n Authorize: process.env.REACT_APP_API_AUTH_AUTHORIZE!,\n SignOut: process.env.REACT_APP_API_AUTH_SIGN_OUT!\n },\n Keywords: {\n Base: process.env.REACT_APP_API_KEYWORDS!\n },\n Terms: {\n Base: process.env.REACT_APP_API_TERMS!,\n Current: process.env.REACT_APP_API_TERMS_CURRENT!,\n CurrentYear: process.env.REACT_APP_API_TERMS_CURRENT_YEAR!,\n All: process.env.REACT_APP_API_TERMS_ALL!\n },\n Users: {\n Base: process.env.REACT_APP_API_USERS_BASE!,\n Students: process.env.REACT_APP_API_USERS_STUDENTS!,\n Employees: process.env.REACT_APP_API_USERS_EMPLOYEES!,\n Custom: process.env.REACT_APP_API_USERS_CUSTOM!,\n Admins: {\n Base: process.env.REACT_APP_API_USERS_ADMINS!,\n Default: process.env.REACT_APP_API_USERS_ADMINS_DEFAULT!,\n },\n All: process.env.REACT_APP_API_USERS_ALL!\n },\n Theses: {\n Base: process.env.REACT_APP_API_THESES!,\n Promoted: process.env.REACT_APP_API_THESES_PROMOTED!,\n Reviewed: process.env.REACT_APP_API_THESES_REVIEWED!,\n Authored: process.env.REACT_APP_API_THESES_AUTHORED!,\n Grade: {\n Confirm: process.env.REACT_APP_API_THESES_GRADE_CONFIRM!,\n Cancel: process.env.REACT_APP_API_THESES_GRADE_CANCEL!,\n },\n Hide: process.env.REACT_APP_API_THESES_HIDE!,\n Unhide: process.env.REACT_APP_API_THESES_UNHIDE!,\n Search: process.env.REACT_APP_API_THESES_SEARCH!\n },\n Questions: {\n Base: process.env.REACT_APP_API_QUESTIONS!,\n Active: process.env.REACT_APP_API_QUESTIONS_ACTIVE!,\n },\n Reviews: {\n Base: process.env.REACT_APP_API_REVIEWS!,\n Cancel: process.env.REACT_APP_API_REVIEWS_CANCEL!,\n ValidateQuestions: process.env.REACT_APP_API_REVIEWS_VALIDATE_QUESTIONS!,\n UpdateQuestions: process.env.REACT_APP_API_REVIEWS_UPDATE_QUESTIONS!,\n },\n Files: {\n Base: process.env.REACT_APP_API_FILES!,\n Thesis: process.env.REACT_APP_API_FILES_THESIS!\n },\n Deadline: {\n Base: process.env.REACT_APP_API_DEADLINE!\n },\n Course: {\n Base: process.env.REACT_APP_API_COURSE!\n },\n Export: {\n Base: process.env.REACT_APP_API_EXPORT!,\n Validate: process.env.REACT_APP_API_EXPORT_VALIDATE!,\n }\n }\n export const Copyright = process.env.REACT_APP_COPYRIGHT!;\n}","import { PartialTheme } from \"@fluentui/react\";\nimport { ThemeNames, ThemeName } from '../shared/Consts';\n\nexport const lightTheme: PartialTheme = {\n palette: {\n themePrimary: \"#0074cc\",\n themeLighterAlt: \"#f3f9fd\",\n themeLighter: \"#cfe6f7\",\n themeLight: \"#a8d1f0\",\n themeTertiary: \"#5aa6e0\",\n themeSecondary: \"#1982d2\",\n themeDarkAlt: \"#0068b8\",\n themeDark: \"#00589b\",\n themeDarker: \"#004172\",\n neutralLighterAlt: '\"#f8f8f8\"',\n neutralLighter: \"#f4f4f4\",\n neutralLight: \"#eaeaea\",\n neutralQuaternaryAlt: \"#dadada\",\n neutralQuaternary: \"#d0d0d0\",\n neutralTertiaryAlt: \"#c8c8c8\",\n neutralTertiary: \"#a19f9d\",\n neutralSecondary: \"#605e5c\",\n neutralPrimaryAlt: \"#3b3a39\",\n neutralPrimary: \"#323130\",\n neutralDark: \"#201f1e\",\n black: \"#000000\",\n white: \"#ffffff\",\n },\n};\n\nexport const darkTheme: PartialTheme = {\n palette: {\n themePrimary: \"#0091ff\",\n themeLighterAlt: \"#00060a\",\n themeLighter: \"#001729\",\n themeLight: \"#002b4d\",\n themeTertiary: \"#005799\",\n themeSecondary: \"#007fe0\",\n themeDarkAlt: \"#199cff\",\n themeDark: \"#3dabff\",\n themeDarker: \"#70c1ff\",\n neutralLighterAlt: \"#2b2b2b\",\n neutralLighter: \"#333333\",\n neutralLight: \"#414141\",\n neutralQuaternaryAlt: \"#4a4a4a\",\n neutralQuaternary: \"#515151\",\n neutralTertiaryAlt: \"#6f6f6f\",\n neutralTertiary: \"#c8c8c8\",\n neutralSecondary: \"#d0d0d0\",\n neutralPrimaryAlt: \"#dadada\",\n neutralPrimary: \"#ffffff\",\n neutralDark: \"#f4f4f4\",\n black: \"#f8f8f8\",\n white: \"#222222\",\n },\n};\n\nexport const highContrastLightTheme: PartialTheme = {\n palette: {\n themePrimary: \"#0000c8\",\n themeLighterAlt: \"#f3f3fd\",\n themeLighter: \"#cfcff6\",\n themeLight: \"#a7a7ee\",\n themeTertiary: \"#5959dd\",\n themeSecondary: \"#1919ce\",\n themeDarkAlt: \"#0000b3\",\n themeDark: \"#000097\",\n themeDarker: \"#00006f\",\n neutralLighterAlt: \"#faf9f8\",\n neutralLighter: \"#f3f2f1\",\n neutralLight: \"#edebe9\",\n neutralQuaternaryAlt: \"#e1dfdd\",\n neutralQuaternary: \"#d0d0d0\",\n neutralTertiaryAlt: \"#c8c6c4\",\n neutralTertiary: \"#595959\",\n neutralSecondary: \"#373737\",\n neutralPrimaryAlt: \"#2f2f2f\",\n neutralPrimary: \"#000000\",\n neutralDark: \"#151515\",\n black: \"#0b0b0b\",\n white: \"#ffffff\",\n },\n};\n\nexport const highContrastDarkTheme: PartialTheme = {\n palette: {\n themePrimary: '#ffff00',\n themeLighterAlt: '#0a0a00',\n themeLighter: '#292900',\n themeLight: '#4d4d00',\n themeTertiary: '#999900',\n themeSecondary: '#e0e000',\n themeDarkAlt: '#ffff19',\n themeDark: '#ffff3d',\n themeDarker: '#ffff70',\n neutralLighterAlt: '#1c1c1c',\n neutralLighter: '#252525',\n neutralLight: '#343434',\n neutralQuaternaryAlt: '#3d3d3d',\n neutralQuaternary: '#454545',\n neutralTertiaryAlt: '#656565',\n neutralTertiary: '#c8c8c8',\n neutralSecondary: '#d0d0d0',\n neutralPrimaryAlt: '#dadada',\n neutralPrimary: '#ffffff',\n neutralDark: '#f4f4f4',\n black: '#f8f8f8',\n white: '#111111'\n }\n};\n\nexport const AvailableThemes = {\n [ThemeNames.light]: lightTheme,\n [ThemeNames.dark]: darkTheme,\n [ThemeNames.lightHighContrast]: highContrastLightTheme,\n [ThemeNames.darkHighContrast]: highContrastDarkTheme\n};\n\nexport const getThemeName = (isDarkMode: boolean, isHighContrast: boolean): ThemeName => {\n if(isDarkMode && isHighContrast) {\n return ThemeNames.darkHighContrast;\n }\n else if(!isDarkMode && isHighContrast) {\n return ThemeNames.lightHighContrast;\n }\n else if(isDarkMode && !isHighContrast) {\n return ThemeNames.dark;\n }\n else {\n return ThemeNames.light;\n }\n};","import React, { useEffect, useState } from \"react\";\nimport { CookieNames } from \"../Consts\";\nimport { useCookies } from \"react-cookie\";\nimport { ThemeProvider } from \"@fluentui/react\";\nimport { AvailableThemes } from \"../../themes/Themes\";\nimport { ThemeNames, ThemeName } from \"../Consts\";\nimport { LanguageNames, LanguageName } from \"../Consts\";\nimport { useTranslation } from \"react-i18next\";\n\ninterface IPersonalizationContext {\n themeName: ThemeName;\n switchTheme: (themeName: ThemeName) => void;\n languageName: LanguageName;\n switchLanguage: (languageName: LanguageName) => void;\n}\n\nexport const PersonalizationContext = React.createContext({\n themeName: ThemeNames.light,\n switchTheme: (themeName: ThemeName) => { },\n languageName: LanguageNames.Polish,\n switchLanguage: (languageName: LanguageName) => { }\n});\n\nexport const PersonalizationProvider: React.FC = (props) => {\n const [cookies, setCookie] = useCookies([CookieNames.theme, CookieNames.language]);\n const defaultCookieOptions = {\n expires: new Date((new Date()).getTime() + (1000 * 60 * 60 * 24 * 365 * 10)), //10 years\n httpOnly: false,\n secure: true,\n sameSite: true,\n };\n const saveThemeSettings = (themeName: ThemeName) => {\n setCookie(CookieNames.theme, themeName, defaultCookieOptions);\n };\n const saveLanguageSettings = (language: LanguageName) => {\n setCookie(CookieNames.language, language, defaultCookieOptions);\n }\n\n const [theme, setTheme] = useState(() => {\n const themeName = cookies[CookieNames.theme];\n if (!themeName) {\n saveThemeSettings(ThemeNames.light);\n return ThemeNames.light;\n }\n\n return themeName;\n });\n\n const switchTheme = (themeName: ThemeName) => {\n setTheme(themeName);\n saveThemeSettings(themeName);\n }\n\n const { i18n } = useTranslation();\n const [language, setLanguage] = useState(() => {\n const languageName = cookies[CookieNames.language];\n if (!languageName) {\n saveLanguageSettings(LanguageNames.Polish);\n return LanguageNames.Polish;\n };\n\n return languageName;\n });\n\n const switchLanguage = (languageName: LanguageName) => {\n setLanguage(languageName);\n saveLanguageSettings(languageName);\n }\n\n useEffect(() => {\n i18n.changeLanguage(language);\n }, [i18n, language]);\n\n return (\n \n switchTheme(themeName),\n languageName: language,\n switchLanguage: (languageName: LanguageName) => switchLanguage(languageName)\n }}>\n {props.children}\n \n \n );\n};\n\nexport default PersonalizationProvider;\n","import { Dropdown, Icon, IDropdownOption, IStackTokens, Label, mergeStyles, Stack, Toggle } from \"@fluentui/react\";\nimport React, { useContext, useEffect, useState } from \"react\";\nimport { PersonalizationContext } from \"../../shared/providers/PersonalizationProvider\";\nimport { LanguageName, LanguageNames } from \"../../shared/Consts\";\nimport { useTranslation } from \"react-i18next\";\n\ninterface LanguagePickerProps {\n useDropdown?: boolean;\n}\n\nexport const LanguagePicker: React.FC = (props) => {\n const context = useContext(PersonalizationContext);\n const [language, setLanguage] = useState(context.languageName);\n const { t } = useTranslation();\n\n const switchLanguage = () => {\n language === LanguageNames.Polish ?\n setLanguage(LanguageNames.English) :\n setLanguage(LanguageNames.Polish)\n };\n\n useEffect(() => {\n context.switchLanguage(language);\n }, [language]);\n\n\n if (props.useDropdown) {\n return (\n \n \n {\n const lang = item as IDropdownOption;\n setLanguage(lang.data!);\n }}\n />\n \n );\n }\n\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default LanguagePicker;\n\n\n//#region Language options\n\nconst dropdownOptions: IDropdownOption[] = [\n {\n key: LanguageNames.Polish,\n text: 'Polski',\n data: LanguageNames.Polish\n },\n {\n key: LanguageNames.English,\n text: 'English',\n data: LanguageNames.English,\n }\n];\n\n//#endregion\n\n//#region Styles\n\nconst stackTokens: IStackTokens = { childrenGap: 10 };\n\nconst toggleStyles = mergeStyles({\n margin: 0\n});\n\n//#endregion","import React from \"react\";\nimport { Spinner, Stack } from \"@fluentui/react\";\n\ninterface LoaderProps {\n label?: string;\n labelPosition?: \"bottom\" | \"left\" | \"right\" | \"top\";\n size?: \"huge\" | \"large\" | \"medium\" | \"small\";\n}\n\nexport const Loader: React.FC = (props) => (\n \n \n \n);\n\nexport default Loader;\n","import { Dropdown, FontSizes, Icon, IDropdownOption, IStackTokens, Label, mergeStyles, Stack, Toggle } from \"@fluentui/react\";\nimport React, { useContext, useEffect, useState } from \"react\";\nimport { PersonalizationContext } from \"../../shared/providers/PersonalizationProvider\";\nimport { ThemeNames, ThemeName } from '../../shared/Consts';\nimport { getThemeName } from '../../themes/Themes';\n\ninterface ThemePickerProps {\n useDropdown?: boolean;\n}\n\nexport const ThemePicker: React.FC = (props) => {\n const context = useContext(PersonalizationContext);\n const [isDarkMode, setIsDarkMode] = useState(\n context.themeName === ThemeNames.dark ||\n context.themeName === ThemeNames.darkHighContrast\n );\n const [isHighContrast, setIsHighContrast] = useState(\n context.themeName === ThemeNames.lightHighContrast ||\n context.themeName === ThemeNames.darkHighContrast\n );\n const [currentTheme, setCurrentTheme] = useState(context.themeName);\n\n useEffect(() => {\n const themeName = getThemeName(isDarkMode, isHighContrast);\n setCurrentTheme(themeName);\n }, [isDarkMode, isHighContrast]);\n\n useEffect(() => {\n context.switchTheme(currentTheme);\n }, [currentTheme]);\n\n\n if (props.useDropdown) {\n return (\n {\n const theme = item as IDropdownOption;\n setCurrentTheme(theme.data!);\n }}\n />\n )\n }\n\n return (\n \n \n \n \n setIsDarkMode(!isDarkMode)}\n />\n \n \n \n \n \n setIsHighContrast(!isHighContrast)}\n />\n \n \n \n );\n};\n\nexport default ThemePicker;\n\n\n//#region Theme options\n\nconst dropdownOptions: IDropdownOption[] = [\n {\n key: ThemeNames.light,\n text: 'Jasny motyw',\n data: ThemeNames.light\n },\n {\n key: ThemeNames.dark,\n text: 'Ciemny motyw',\n data: ThemeNames.dark\n },\n {\n key: ThemeNames.lightHighContrast,\n text: 'Jasny motyw (wysoki kontrast)',\n data: ThemeNames.lightHighContrast\n },\n {\n key: ThemeNames.darkHighContrast,\n text: 'Ciemny motyw (wysoki kontrast)',\n data: ThemeNames.darkHighContrast\n },\n];\n\n//#endregion\n\n\n//#region Styles\n\nconst stackTokens: IStackTokens = { childrenGap: 10 };\n\nconst iconStyles = mergeStyles({\n fontSize: FontSizes.size18\n});\n\nconst toggleStyles = mergeStyles({\n margin: 0\n});\n\n//#endregion","import {\n Callout,\n DefaultButton,\n DirectionalHint,\n IStackTokens,\n Label,\n Persona,\n PersonaSize,\n Stack,\n} from \"@fluentui/react\";\nimport { useBoolean, useId } from \"@fluentui/react-hooks\";\nimport React from \"react\";\nimport { CurrentUser } from \"../../shared/Models\";\nimport { ThemePicker } from './ThemePicker';\nimport { AppSettings } from '../../AppSettings';\nimport { RouteNames } from '../../shared/Consts';\nimport { Link } from '../../Components';\n\ninterface MeControlProps {\n user: CurrentUser;\n}\n\nexport const MeControl: React.FC = (props) => {\n const [isCalloutVisible, { toggle: toggleCalloutIsVisible }] = useBoolean(false);\n const meButtonId = useId('me-button-id');\n\n const calloutButton = (\n \n s.charAt(0))\n .join(\"\")}\n size={PersonaSize.size40}\n />\n \n );\n\n const calloutContent = (\n \n \n Przejdź do USOSa\n \n \n \n s.charAt(0))\n .join(\"\")}\n size={PersonaSize.size56}\n />\n \n \n \n \n \n \n \n {/* \n \n */}\n \n )\n\n const calloutComponent = (\n \n {calloutContent}\n \n );\n\n return (\n \n {calloutButton}\n {isCalloutVisible ? calloutComponent : null}\n \n )\n};\n\nexport default MeControl;\n\n\n//#region Styles\n\nconst stackTokens: IStackTokens = { childrenGap: 15 };\n\n//#endregion","import React from \"react\";\nimport { Controller } from \"react-hook-form\";\nimport { HookFormProps } from \"../../shared/Models\";\nimport { FontSizes, IBasePickerSuggestionsProps, IPersonaProps, Label, mergeStyles, NormalPeoplePicker, useTheme } from '@fluentui/react';\n\ninterface PeoplePickerProps {\n name: string,\n label: string,\n people: IPersonaProps[],\n selectedPeople: IPersonaProps[],\n onChange?: (people?: IPersonaProps[]) => void,\n onBlur?: () => void,\n peopleLimit?: number,\n maxSuggestions?: number,\n required?: boolean,\n errorMessage?: string | JSX.Element,\n defaultValue?: IPersonaProps[],\n resolveDelay?: number,\n onInputChange?: (string: string) => string,\n onFilterChanged?: (filter: string, selectedItems?: IPersonaProps[]) => IPersonaProps[] | Promise\n};\n\n\nexport const PeoplePicker: React.FC & PeoplePickerProps> = (props) => {\n return (\n (\n onChange(people)}\n onBlur={onBlur}\n selectedPeople={value}\n errorMessage={error && error.message}\n defaultValue={props.defaultValue}\n />\n )}\n />\n );\n};\n\nexport default PeoplePicker;\n\n\n//#region PeoplePickerWrapper\n\nexport const PeoplePickerWrapper: React.FC = (props) => {\n\n const onFilterChanged = (filter: string, selectedItems?: IPersonaProps[]): IPersonaProps[] | Promise => \n filterPeople(filter, props.people, selectedItems, props.maxSuggestions);\n\n const onEmptyFilter = (selectedItems?: IPersonaProps[]): IPersonaProps[] | Promise => {\n return props.people.filter(p => !selectedItems?.map(i => i.key).includes(p.key))\n .sort((p1, p2) => p1.text!.localeCompare(p2.text!))\n .slice(0, props.maxSuggestions);\n }\n\n //#region Styles\n\n const theme = useTheme();\n const validationErrorStyles = mergeStyles({\n color: theme.semanticColors.errorText,\n fontSize: FontSizes.size12,\n marginTop: '5px'\n });\n\n //#endregion\n\n return (\n <>\n \n \n {props.errorMessage ? {props.errorMessage} : null}\n \n );\n}\n\n//#endregion\n\n\n//#region Suggestions\n\nconst suggestionProps: IBasePickerSuggestionsProps = {\n suggestionsHeaderText: 'Sugerowane osoby',\n mostRecentlyUsedHeaderText: 'Sugerowane osoby',\n noResultsFoundText: 'Brak wyników',\n loadingText: 'Ładowanie',\n showRemoveButtons: true,\n suggestionsAvailableAlertText: 'Sugerowane osoby',\n suggestionsContainerAriaLabel: 'Sugerowane osoby',\n};\n\n//#endregion\n\n//#region FilterPeople\n\nexport const filterPeople = (filter: string, people: IPersonaProps[], selectedItems?: IPersonaProps[], maxSuggestions?: number): IPersonaProps[] => \n people.filter(p => \n (p.text?.toLowerCase().includes(filter.toLowerCase()) || p.secondaryText?.toLowerCase().includes(filter.toLowerCase())) && \n !selectedItems?.some(u => u.key === p.key)).sort((p1, p2) => p1.text!.localeCompare(p2.text!)).slice(0, maxSuggestions ?? 5);\n\n//#endregion\n","import React from 'react';\nimport { FontSizes, ITag, Label, mergeStyles, TagPicker as FluentTagPicker, useTheme } from '@fluentui/react';\nimport { Controller } from \"react-hook-form\";\nimport { HookFormProps } from \"../../shared/Models\";\n\ninterface TagPickerProps {\n name: string;\n label: string;\n tags: ITag[];\n selectedTags: ITag[];\n itemLimit: number;\n onChange: (tags?: ITag[]) => void;\n onBlur?: () => void;\n separator?: string;\n required?: boolean;\n errorMessage?: string | JSX.Element;\n defaultValue?: ITag[],\n}\n\nexport const TagPicker: React.FC & TagPickerProps> = (props) => {\n return (\n (\n onChange(tags)}\n onBlur={onBlur}\n selectedTags={value}\n errorMessage={error && error.message}\n defaultValue={props.defaultValue}\n />\n )}\n />\n );\n};\n\nexport default TagPicker;\n\n//#region TagPickerWrapper\n\nexport const TagPickerWrapper: React.FC = (props) => {\n const onFilterChanged = (\n filter: string,\n selectedItems?: ITag[]\n ): ITag[] | Promise => {\n if (filter.endsWith(props.separator ?? ' ')) {\n const value = filter.slice(0, filter.length - 1);\n const tag: ITag = {\n key: value,\n name: value\n }\n //Ensure uniquness\n return !props.tags.includes(tag) ? [tag] : [];\n }\n\n return props.tags.filter(t => !selectedItems?.includes(t));\n }\n\n const onEmptyFilter = (\n selectedItems?: ITag[]\n ): ITag[] | Promise => {\n return props.tags.filter(t => !selectedItems?.includes(t));\n }\n\n //#region Styles\n\n const theme = useTheme();\n const validationErrorStyles = mergeStyles({\n color: theme.semanticColors.errorText,\n fontSize: FontSizes.size12,\n marginTop: '5px'\n });\n\n //#endregion\n\n return (\n <>\n \n \n {props.errorMessage ? {props.errorMessage} : null}\n \n )\n}\n\n//#endregion","import React from \"react\";\nimport { Controller } from \"react-hook-form\";\nimport { ITextFieldProps, TextField as FluentTextField } from \"@fluentui/react\";\nimport { HookFormProps } from \"../../shared/Models\";\n\nexport const TextField: React.FC & ITextFieldProps> = (props) => {\n return (\n (\n \n )}\n />\n );\n};\n\nexport default TextField;","import React from \"react\";\nimport { FontSizes, IStackTokens, Label, mergeStyles, Stack, useTheme } from \"@fluentui/react\";\n\ninterface TileProps {\n title?: string;\n titleSize?: string;\n elevation?: 4 | 8 | 16 | 64;\n childrenGap?: number;\n padding?: string;\n}\n\nexport const Tile: React.FC = (props) => {\n const theme = useTheme();\n\n const elevation = {\n 4: theme.effects.elevation4,\n 8: theme.effects.elevation8,\n 16: theme.effects.elevation16,\n 64: theme.effects.elevation64,\n };\n\n //#region Styles\n const stackTokens: IStackTokens = { childrenGap: props.childrenGap ?? 15 };\n\n const containerStyles = mergeStyles({\n width: '100%'\n });\n\n const tileStyles = mergeStyles({\n padding: props.padding ?? '2em',\n backgroundColor: theme.palette.white,\n boxShadow: elevation[props.elevation ?? 4]\n })\n //#endregion\n\n return (\n \n {props.title ? (\n \n ) : null}\n \n {props.children}\n \n \n );\n};\n\nexport default Tile;\n","import React from \"react\";\nimport { Nav, INavLink, INavStyles, INavLinkGroup, useTheme } from \"@fluentui/react\";\nimport { useHistory } from \"react-router\";\n\ninterface AdminNavProps {\n selectedKey: string,\n groups: INavLinkGroup[]\n}\n\nexport const AdminNav: React.FC = (props) => {\n const history = useHistory();\n const theme = useTheme();\n\n function onClick(ev?: React.MouseEvent, item?: INavLink) {\n ev?.preventDefault();\n if (item) {\n history.push(item.url);\n }\n }\n\n //#region Styles\n const navStyles: Partial = {\n root: {\n width: 250,\n height: 350,\n boxSizing: 'border-box',\n border: `1px solid ${theme.palette.neutralLight}`,\n overflowY: 'auto',\n },\n };\n //#endregion\n\n return (\n \n );\n};\n\nexport default AdminNav;","import axios from 'axios';\nimport { CsrfNames } from '../Consts';\nimport { Keyword, Grade, Question } from '../Models';\n\nexport const Api = axios.create({\n xsrfCookieName: CsrfNames.csrfCookie,\n xsrfHeaderName: CsrfNames.csrfHeader\n});\n\nApi.interceptors.response.use(response => response, error => {\n switch (error.response.status) {\n case 400:\n throw new Error(error.response.data ?? \"Nieprawidłowe zapytanie. (400 Bad Request)\");\n case 401:\n throw new Error(error.response.data ?? \"Brak autoryzacji. (401 Unauthorized)\");\n case 403:\n throw new Error(error.response.data ?? \"Brak uprawnień do wykonania danej akcji. (403 Forbidden)\");\n case 404:\n throw new Error(error.response.data ?? \"Nie znaleziono zasobu. (404 Not found)\");\n case 409:\n throw new Error(error.response.data ?? \"Konflikt. (409 Conflict)\");\n case 500:\n throw new Error(error.response.data ?? \"Wewnętrzny błąd serwera. (500 Internal Server Error)\");\n }\n});\n\nexport interface ThesisRequestData {\n title: string,\n abstract: string,\n keywords: Keyword[],\n authorUsosIds: string[],\n reviewerUsosId: string,\n};\n\nexport interface ReviewRequestData {\n thesisGuid: string,\n qnAs: Record,\n grade: Grade,\n isConfirmed: boolean,\n}\n\nexport interface ConfirmGradeRequestData {\n grade: string\n}\n\nexport interface SetDeadlineRequestData {\n deadline: string\n}\n\nexport interface SetCourseRequestData {\n courseCode: string\n}\n\nexport interface SetAdminsRequestData {\n userIds: string[]\n}\n\nexport interface SetCustomUsersRequestData {\n userIds: string[]\n}\n\nexport interface UploadAdditionalFilesRequestData {\n files: FileList\n}\n\nexport interface UpdateReviewQuestionsRequestData {\n questions: Question[]\n};","import User from './User';\nimport Keyword from './Keyword';\nimport File from './File';\nimport Review from './Review';\nimport { Grade } from './Grades';\n\nexport interface ThesisActions {\n canView: boolean,\n canPrint: boolean,\n canDownload: boolean,\n canEdit: boolean,\n canAddReview: boolean,\n canEditReview: boolean,\n canEditGrade: boolean,\n canHide: boolean,\n canUnhide: boolean;\n canCancelGrade: boolean;\n canCancelPromoterReview: boolean;\n canCancelReviewerReview: boolean;\n canAddAdditionalFiles: boolean;\n}\n\nexport interface ThesisLog {\n timestamp: Date,\n modificationType: ModificationType,\n user: User\n}\n\nexport type Thesis = {\n guid: string,\n reviewGuid: string,\n title: string,\n abstract: string,\n grade?: string | null,\n availableGradeRange?: Grade[] | null,\n promoter: User,\n reviewer: User,\n promoterReview?: Review,\n reviewerReview?: Review,\n thesisAuthors: User[],\n thesisKeywords: Keyword[],\n actions: ThesisActions,\n file: File,\n fileGuid: string,\n thesisAdditionalFiles: File[],\n thesisLogs: ThesisLog[],\n hidden: boolean,\n createdAt: Date,\n termId: string\n};\n\nexport default Thesis;\n\nexport enum ModificationType {\n Unknown,\n Created,\n TitleChanged,\n AbstractChanged,\n AuthorsChanged,\n ReviewerChanged,\n KeywordsChanged,\n Hidden,\n Visible,\n FileChanged,\n AddtionalFilesAdded,\n AdditionalFilesRemoved,\n ReviewAdded,\n ReviewChanged,\n ReveiewQuestionsUpdated,\n ReviewConfirmed,\n GradeConfirmed,\n GradeCanceled,\n ReviewCanceled\n}\n\nexport const ModificationTypeIcons = {\n [ModificationType.Unknown]: \"Unknown\",\n [ModificationType.Created]: \"Add\",\n [ModificationType.TitleChanged]: \"Edit\",\n [ModificationType.AbstractChanged]: \"Edit\",\n [ModificationType.AuthorsChanged]: \"EditContact\",\n [ModificationType.ReviewerChanged]: \"EditContact\",\n [ModificationType.KeywordsChanged]: \"Edit\",\n [ModificationType.Hidden]: \"Hide3\",\n [ModificationType.Visible]: \"View\",\n [ModificationType.FileChanged]: \"PDF\",\n [ModificationType.AddtionalFilesAdded]: \"Photo2Add\",\n [ModificationType.AdditionalFilesRemoved]: \"Photo2Remove\",\n [ModificationType.ReviewAdded]: \"PageAdd\",\n [ModificationType.ReviewChanged]: \"PageEdit\",\n [ModificationType.ReveiewQuestionsUpdated]: \"PageLink\",\n [ModificationType.ReviewConfirmed]: \"PageLock\",\n [ModificationType.GradeConfirmed]: \"Ribbon\",\n [ModificationType.GradeCanceled]: \"RibbonSolid\",\n [ModificationType.ReviewCanceled]: \"PageRemove\"\n}\n\nexport const ModificationTypeDescription = {\n [ModificationType.Unknown]: (user: User) => `Nieznana akcja użytkownika ${user.firstName} ${user.lastName}`,\n [ModificationType.Created]: (user: User) => `${user.firstName} ${user.lastName} dodał(a) pracę`,\n [ModificationType.TitleChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) tytuł pracy`,\n [ModificationType.AbstractChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) abstrakt pracy`,\n [ModificationType.AuthorsChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) autorów pracy`,\n [ModificationType.ReviewerChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) recenzenta pracy`,\n [ModificationType.KeywordsChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) słowa kluczowe pracy`,\n [ModificationType.Hidden]: (user: User) => `${user.firstName} ${user.lastName} ukrył(a) pracę`,\n [ModificationType.Visible]: (user: User) => `${user.firstName} ${user.lastName} odkrył(a) pracę`,\n [ModificationType.FileChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) plik pracy`,\n [ModificationType.AddtionalFilesAdded]: (user: User) => `${user.firstName} ${user.lastName} dodał(a) dodatkowe pliki do pracy`,\n [ModificationType.AdditionalFilesRemoved]: (user: User) => `${user.firstName} ${user.lastName} usunął(ęła) dodatkowe pliki z pracy`,\n [ModificationType.ReviewAdded]: (user: User) => `${user.firstName} ${user.lastName} dodał(a) recenzję`,\n [ModificationType.ReviewChanged]: (user: User) => `${user.firstName} ${user.lastName} zmienił(a) recenzję`,\n [ModificationType.ReveiewQuestionsUpdated]: (user: User) => `${user.firstName} ${user.lastName} zaktualizował(a) pytania w recenzji`,\n [ModificationType.ReviewConfirmed]: (user: User) => `${user.firstName} ${user.lastName} zatwierdził(a) recenzję`,\n [ModificationType.GradeConfirmed]: (user: User) => `${user.firstName} ${user.lastName} zatwierdził(a) ocenę pracy`,\n [ModificationType.GradeCanceled]: (user: User) => `${user.firstName} ${user.lastName} anulował(a) ocenę pracy`,\n [ModificationType.ReviewCanceled]: (user: User) => `${user.firstName} ${user.lastName} anulował(a) recenzję pracy`\n}","import React, { useEffect, useState } from 'react';\nimport { CurrentUser, UserClaims } from '../Models';\nimport { CookieNames } from '../Consts';\nimport { useCookies } from 'react-cookie';\nimport jwtDecode from 'jwt-decode';\n\ninterface IAuthenticationContext {\n currentUser?: CurrentUser,\n isAuthenticated: boolean,\n isFetching: boolean\n}\n\nexport const AuthenticationContext = React.createContext({\n isAuthenticated: false,\n isFetching: true\n});\n\nexport const AuthenticationProvider: React.FC = (props) => {\n const [currentUser, setCurrentUser] = useState();\n const [isAuthenticated, setIsAuthenticated] = useState(false);\n const [isFetching, setIsFetching] = useState(true);\n const [cookies] = useCookies([CookieNames.user]);\n\n useEffect(() => {\n const userToken = cookies[CookieNames.user];\n try {\n const userClaims = jwtDecode(userToken);\n \n const isParticipant = (userClaims.IsParticipant.toLowerCase() === 'true');\n const isLecturer = (userClaims.IsLecturer.toLowerCase() === 'true');\n const isAdmin = (userClaims.IsAdmin.toLowerCase() === 'true');\n const isCustom = (userClaims.IsCustom.toLowerCase() === 'true');\n const isEmployee = isLecturer || isCustom || isAdmin;\n\n setCurrentUser({\n id: userClaims.Id,\n name: userClaims.Name,\n avatarUrl: userClaims.AvatarUrl,\n isParticipant: isParticipant,\n isLecturer: isLecturer,\n isAdmin: isAdmin,\n isCustom: isCustom,\n isEmployee: isEmployee,\n email: userClaims.Email,\n });\n setIsAuthenticated(!!userClaims.Id);\n setIsFetching(false);\n }\n catch\n {\n setCurrentUser(undefined);\n setIsAuthenticated(false);\n setIsFetching(false);\n }\n }, [cookies])\n\n return (\n \n {props.children}\n \n )\n};\n\nexport default AuthenticationProvider;","import { useContext, useEffect, useState } from 'react';\nimport { CurrentUser } from '../Models';\nimport { AuthenticationContext } from '../providers/AuthenticationProvider';\n\nexport const useIsAuthenticated = (): boolean | null => {\n const authContext = useContext(AuthenticationContext);\n const [isAuthenticated, setIsAuthenticated] = useState(null);\n\n useEffect(() => {\n if (!authContext.isFetching) {\n authContext.isAuthenticated ? setIsAuthenticated(true) : setIsAuthenticated(false);\n }\n }, [authContext.isAuthenticated, authContext.isFetching]);\n\n return isAuthenticated;\n}\n\nexport const useCurrentUser = (): CurrentUser | null => {\n const authContext = useContext(AuthenticationContext);\n const [currentUser, setCurrentUser] = useState(null);\n\n useEffect(() => {\n if (!authContext.isFetching) {\n authContext.currentUser ? setCurrentUser(authContext.currentUser) : setCurrentUser(null);\n }\n }, [authContext.currentUser, authContext.isFetching]);\n\n return currentUser;\n}","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { AppSettings } from '../../AppSettings';\nimport { Course } from '../Models';\nimport { useIsAuthenticated } from './AuthHooks';\n\nexport const useCourse = (): [Course | undefined, boolean] => {\n const [course, setCourse] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Course.Base)\n .then(response => {\n setCourse(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [course, isFetching];\n};","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { AppSettings } from '../../AppSettings';\nimport { useIsAuthenticated } from './AuthHooks';\n\nexport const useDeadline = (): [Date | undefined, boolean] => {\n const [date, setDate] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Deadline.Base)\n .then(response => {\n setDate(new Date(response.data));\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [date, isFetching];\n};","import { ITag } from \"@fluentui/react\";\nimport { Keyword } from \"../../Models\";\n\nexport const mapKeywordToTag = (keyword: Keyword): ITag => ({\n key: keyword.id,\n name: keyword.text,\n});\n\nexport const mapKeywordsToTags = (keywords: Keyword[]): ITag[] =>\n keywords.map(k => mapKeywordToTag(k));\n\nexport const mapTagToKeyword = (tag: ITag): Keyword => ({\n id: isNaN(parseInt(tag.key.toString())) ? 0 : parseInt(tag.key.toString()),\n text: tag.name\n});\n\nexport const mapTagsToKeywords = (tags: ITag[]): Keyword[] =>\n tags.map(t => mapTagToKeyword(t));","import { IPersonaProps } from \"@fluentui/react\";\nimport { User } from \"../../Models\";\n\nexport const mapUserToPersona = (user: User): IPersonaProps => ({\n key: user.usosId,\n text: `${user.firstName} ${user.lastName}`,\n secondaryText: user.email,\n imageUrl: user.photoUrl,\n})\n\nexport const mapUsersToPersona = (users: User[]): IPersonaProps[] =>\n users.map(u => mapUserToPersona(u));\n","import { Grade } from '../../Models';\nimport { IDropdownOption } from '@fluentui/react';\n\nexport const mapGradesToDropdownOptions = (gradeList: Grade[]): IDropdownOption[] =>\n gradeList.map(g => ({ key: g, text: g }));","export const scrollToTop = () => {\n window.scrollTo(0, 0);\n};\n\nexport const fileSizeToHR = (size: number) => {\n if (size === 0) { \n return \"0.00 B\"; \n }\n const e = Math.floor(Math.log(size) / Math.log(1000));\n return (size/Math.pow(1000, e)).toFixed(2)+' kMGTP'.charAt(e)+'B';\n}","import { Term } from '../../Models';\nimport { IDropdownOption } from '@fluentui/react';\n\nexport const mapTermToDropdownOptions = (term: Term): IDropdownOption => (\n {\n key: term.id,\n text: term.names.pl\n }\n);\n\nexport const mapTermsToDropdownOptions = (terms: Term[]): IDropdownOption[] =>\n terms.map(t => mapTermToDropdownOptions(t));","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { Keyword } from '../Models';\nimport { AppSettings } from '../../AppSettings';\nimport { ITag } from '@fluentui/react';\nimport { useIsAuthenticated } from './AuthHooks';\nimport { mapKeywordsToTags } from '../Utils';\n\nexport const useKeywords = (): [Keyword[], boolean] => {\n const [keywords, setKeywords] = useState([]);\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Keywords.Base)\n .then(response => {\n setKeywords(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [keywords, isFetching];\n};\n\nexport const useTagPicker = (keywords: Keyword[]): [ITag[], ITag[], (tags?: ITag[]) => void] => {\n\n const [tags, setTags] = useState([]);\n const [selectedTags, setSelectedTags] = useState([]);\n\n useEffect(() => {\n setTags(mapKeywordsToTags(keywords));\n }, [keywords]);\n\n const onChange = (tags?: ITag[]) => {\n if (tags) {\n setSelectedTags(tags);\n }\n };\n\n return [tags, selectedTags, onChange]\n};","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { AppSettings } from '../../AppSettings';\nimport { Question } from '../Models';\nimport { useIsAuthenticated } from './AuthHooks';\n\nexport const useActiveQuestions = (): [Question[], boolean] => {\n const [questions, setQuestions] = useState([]);\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Questions.Active)\n .then(response => {\n setQuestions(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [questions, isFetching];\n};\n\nexport const useQuestions = (): [Question[], boolean] => {\n const [questions, setQuestions] = useState([]);\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Questions.Base)\n .then(response => {\n setQuestions(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [questions, isFetching];\n};","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { AppSettings } from '../../AppSettings';\nimport { Review } from '../Models';\nimport { useIsAuthenticated } from './AuthHooks';\n\nexport const useReview = (guid: string): [Review | undefined, boolean] => {\n const [review, setReview] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n setIsFetching(true);\n Api.get(`${AppSettings.API.Reviews.Base}/${guid}`)\n .then(response => {\n setReview(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false)\n });\n }, [isAuthenticated]);\n\n return [review, isFetching];\n};\n\nexport const useValidateQuestions = (guid: String): [boolean | undefined, boolean] => {\n const [isValid, setIsValid] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n setIsFetching(true);\n Api.get(`${AppSettings.API.Reviews.ValidateQuestions}/${guid}`)\n .then(response => {\n setIsValid(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false)\n });\n }, [isAuthenticated]);\n\n return [isValid, isFetching];\n}","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { Term } from '../Models';\nimport { AppSettings } from '../../AppSettings';\nimport { useIsAuthenticated } from './AuthHooks';\n\nexport const useAllTerms = (): [Term[] | undefined, boolean] => {\n const [terms, setTerms] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n \n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Terms.All)\n .then(response => {\n const mappedTerms = response.data.map(t => ({\n id: t.id,\n names: {\n pl: t.names.pl,\n en: t.names.en\n },\n startDate: new Date(t.startDate),\n endDate: new Date(t.endDate),\n finishDate: new Date(t.finishDate)\n }));\n setTerms(mappedTerms);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [terms, isFetching];\n}\n\nexport const useCurrentTerm = (): [Term | undefined, boolean] => {\n const [term, setTerm] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n \n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Terms.Current)\n .then(response => {\n setTerm({\n id: response.data.id,\n names: {\n pl: response.data.names.pl,\n en: response.data.names.en\n },\n startDate: new Date(response.data.startDate),\n endDate: new Date(response.data.endDate),\n finishDate: new Date(response.data.finishDate)\n });\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [term, isFetching];\n};\n\nexport const useCurrentYear = (): [Term | undefined, boolean] => {\n const [term, setTerm] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n \n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(AppSettings.API.Terms.CurrentYear)\n .then(response => {\n setTerm({\n id: response.data.id,\n names: {\n pl: response.data.names.pl,\n en: response.data.names.en\n },\n startDate: new Date(response.data.startDate),\n endDate: new Date(response.data.endDate),\n finishDate: new Date(response.data.finishDate)\n });\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [term, isFetching];\n};","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { Thesis } from '../Models';\nimport { AppSettings } from '../../AppSettings';\nimport { useCurrentUser, useIsAuthenticated } from './AuthHooks';\n\nexport const useThesis = (guid: string): [Thesis | undefined, boolean] => {\n const [thesis, setThesis] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n const currentUser = useCurrentUser();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n setIsFetching(true);\n Api.get(`${AppSettings.API.Theses.Base}/${guid}`)\n .then(response => {\n setThesis(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false)\n });\n }, [isAuthenticated, currentUser]);\n\n return [thesis, isFetching];\n};\n\nconst useTheses = (endpoint: string, verifyEmployee?: boolean): [Thesis[], boolean] => {\n const [thesis, setThesis] = useState([]);\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n const currentUser = useCurrentUser();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated || (verifyEmployee && !currentUser?.isEmployee)) {\n setIsFetching(false);\n return;\n }\n\n setIsFetching(true);\n Api.get(endpoint)\n .then(response => {\n setThesis(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false)\n });\n }, [isAuthenticated, currentUser]);\n\n return [thesis, isFetching];\n};\n\nexport const useCurrentTheses = (): [Thesis[], boolean] => useTheses(AppSettings.API.Theses.Base);\nexport const usePromotedTheses = (): [Thesis[], boolean] => useTheses(AppSettings.API.Theses.Promoted, true);\nexport const useReviewedTheses = (): [Thesis[], boolean] => useTheses(AppSettings.API.Theses.Reviewed, true);\nexport const useAuthoredTheses = (): [Thesis[], boolean] => useTheses(AppSettings.API.Theses.Authored);","import { useEffect, useState } from 'react';\nimport { Api } from '../api/Api';\nimport { AppSettings } from '../../AppSettings';\nimport { User } from '../../shared/Models';\nimport { IPersonaProps } from '@fluentui/react';\nimport { useIsAuthenticated } from './AuthHooks';\n\nconst useUsers = (endpoint: string, query?: string): [T | undefined, boolean] => {\n const [users, setUsers] = useState();\n const [isFetching, setIsFetching] = useState(true);\n const isAuthenticated = useIsAuthenticated();\n\n useEffect(() => {\n if (isAuthenticated === null) {\n return;\n }\n\n if (!isAuthenticated) {\n setIsFetching(false);\n return;\n }\n\n Api.get(endpoint)\n .then(response => {\n setUsers(response.data);\n setIsFetching(false);\n })\n .catch(error => {\n console.error(error);\n setIsFetching(false);\n });\n }, [isAuthenticated]);\n\n return [users, isFetching];\n};\n\nexport const useStudents = () => useUsers(AppSettings.API.Users.Students);\nexport const useEmployees = () => useUsers(AppSettings.API.Users.Employees);\nexport const useAdmins = () => useUsers(AppSettings.API.Users.Admins.Base);\nexport const useDefaultAdmin = () => useUsers(AppSettings.API.Users.Admins.Default);\nexport const useCustomUsers = () => useUsers(AppSettings.API.Users.Custom);\nexport const useAllUsers = () => useUsers(AppSettings.API.Users.All);\n\nexport const usePeoplePicker = (users: User[], excludedIds?: any[]): [IPersonaProps[], IPersonaProps[], (people?: IPersonaProps[]) => void] => {\n const [people, setPeople] = useState([]);\n const [selectedPeople, setSelectedPeople] = useState([]);\n\n useEffect(() => {\n setPeople(users\n .filter(u => !excludedIds?.includes(u.usosId))\n .map(u => ({\n key: u.usosId,\n text: `${u.firstName} ${u.lastName}`,\n secondaryText: u.email,\n imageUrl: u.photoUrl\n })));\n }, [users]);\n\n const onChange = (people?: IPersonaProps[]) => {\n if (people) {\n setSelectedPeople(people);\n }\n };\n\n return [people, selectedPeople, onChange]\n};","import React from \"react\";\nimport { Loader, Tile } from '../../Components';\nimport { Stack, IStackTokens, IStackStyles, INavLinkGroup } from \"@fluentui/react\";\nimport AdminNav from './AdminNav';\nimport { RouteNames } from \"../../shared/Consts\";\nimport { Redirect, useHistory } from \"react-router-dom\";\nimport { useCurrentUser, useIsAuthenticated } from \"../../shared/Hooks\";\n\nexport const AdminPanel: React.FC = (props) => {\n const history = useHistory();\n const currentUser = useCurrentUser();\n const isAuthenticated = useIsAuthenticated();\n\n if(isAuthenticated === null) {\n return \n }\n\n if(!currentUser?.isAdmin) {\n return \n }\n\n return (\n \n \n \n \n {props.children}\n \n \n \n );\n};\n\nexport default AdminPanel;\n\n//#region Nav Groups\nconst groups: INavLinkGroup[] = [\n {\n links: [\n {\n name: 'Administratorzy',\n url: RouteNames.adminPanelAdmins,\n key: RouteNames.adminPanelAdmins,\n icon: 'SecurityGroup'\n },\n {\n name: 'Pracownicy',\n url: RouteNames.adminPanelUsers,\n key: RouteNames.adminPanelUsers,\n icon: 'People'\n },\n {\n name: 'Termin końcowy',\n url: RouteNames.adminPanelDeadline,\n key: RouteNames.adminPanelDeadline,\n icon: 'CalendarSettings'\n },\n {\n name: 'Kurs',\n url: RouteNames.adminPanelCourse,\n key: RouteNames.adminPanelCourse,\n icon: 'Education'\n },\n {\n name: 'Pytania recenzji',\n url: RouteNames.adminPanelQuestions,\n key: RouteNames.adminPanelQuestions,\n icon: 'SurveyQuestions'\n },\n {\n name: 'Eksport ocen',\n url: RouteNames.adminPanelExport,\n key: RouteNames.adminPanelExport,\n icon: 'Export',\n }\n ],\n },\n];\n//#endregion\n\n//#region Styles\nconst stackTokens: IStackTokens = { childrenGap: 15 };\n\nconst contentStyles: Partial = {\n root: {\n padding: '2em'\n }\n};\n//#endregion","import React from \"react\";\nimport { IStackTokens, Stack } from \"@fluentui/react\";\n\nexport const NavActions: React.FC = (props) => {\n return (\n \n {props.children}\n \n );\n};\n\nexport default NavActions;\n\n//#region Styles\n\nconst stackTokens: IStackTokens = { childrenGap: 15 }\n\n//#endregion","import React from 'react';\nimport { Separator, useTheme } from '@fluentui/react';\n\nexport const NavSeparator: React.FC = () => {\n const theme = useTheme();\n\n //#region Styles\n\n const styles = {\n root: [\n {\n selectors: {\n \":after\": {\n background: theme.palette.neutralPrimary,\n },\n },\n },\n ],\n };\n\n //#endregion\n\n return (\n \n )\n}\n\nexport default NavSeparator;","import { useTheme } from \"@fluentui/react\";\nimport React from \"react\";\nimport { Link } from '../../Components';\n\ninterface NavHeaderLinkProps {\n label: string;\n href: string;\n onClick?: () => void;\n}\n\nexport const NavHeaderLink: React.FC = (props) => {\n const theme = useTheme();\n\n //#region Styles\n\n const styles = {\n root: [\n {\n color: theme.palette.neutralPrimary,\n selectors: {\n \":active\": {\n color: theme.palette.black,\n },\n \":hover\": {\n color: theme.palette.black,\n },\n \":active:hover\": {\n color: theme.palette.black,\n },\n \":focus\": {\n color: theme.palette.black,\n },\n },\n },\n ],\n };\n\n //#endregion\n\n return (\n \n {props.label}\n \n );\n};\n\nexport default NavHeaderLink;","import { Stack, StackItem } from \"@fluentui/react\";\nimport React from \"react\";\nimport NavSeparator from \"./NavSeparator\";\nimport NavHeaderLink from \"./NavHeaderLink\";\n\ninterface NavHeaderProps {\n primaryLabel: string;\n secondarylabel: string;\n primaryOnClick?: () => void;\n primaryHref: string;\n secondaryHref: string;\n secondaryOnClick?: () => void\n}\n\nexport const NavHeader: React.FC = (props) => {\n return (\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default NavHeader;\n","import { useTheme } from \"@fluentui/react\";\nimport React from \"react\";\nimport { Link } from '../../Components';\n\ninterface NavLinkProps {\n label: string;\n href: string;\n onClick?: () => void;\n}\n\nexport const NavLink: React.FC = (props) => {\n const theme = useTheme();\n\n //#region Styles\n\n const styles = {\n root: [\n {\n color: theme.palette.neutralSecondary,\n selectors: {\n \":active\": {\n color: theme.palette.black,\n },\n \":hover\": {\n color: theme.palette.black,\n },\n \":active:hover\": {\n color: theme.palette.black,\n },\n \":focus\": {\n color: theme.palette.black,\n },\n },\n },\n ],\n };\n\n //#endregion\n\n return (\n \n {props.label}\n \n );\n};\n\nexport default NavLink;","import React from \"react\";\nimport { IStackTokens, Stack } from \"@fluentui/react\";\n\nexport const NavLinks: React.FC = (props) => {\n return (\n \n {props.children}\n \n );\n};\n\nexport default NavLinks;\n\n//#region Styles\n\nconst stackTokens: IStackTokens = { childrenGap: 50 }\n\n//#endregion","import React from 'react';\nimport { useReview } from '../../shared/Hooks';\nimport {\n IButtonStyles,\n IconButton,\n Modal,\n IIconProps,\n Stack,\n StackItem,\n Label,\n IStackStyles,\n FontSizes,\n useTheme,\n mergeStyles\n} from '@fluentui/react';\nimport { Loader } from '../../Components';\n\ninterface ReviewModalProps {\n guid: string,\n person: string,\n isModalVisible: boolean,\n setModalVisible: (value: boolean) => void,\n}\n\nexport const ReviewModal: React.FC = (props) => {\n const [review, isFetching] = useReview(props.guid);\n const theme = useTheme();\n\n const loader = ;\n const qnas = review?.qnAs.map((qna, index) => (\n <>\n \n

{qna.answer}

\n \n ));\n\n const form = (\n \n \n {qnas}\n \n \n );\n\n //#region Styles\n\n const cancelIcon: IIconProps = { iconName: 'Cancel' };\n const iconButtonStyles: Partial = {\n root: {\n color: theme.palette.neutralPrimary,\n },\n rootHovered: {\n color: theme.palette.neutralDark,\n },\n };\n const contentStyles: Partial = {\n root: {\n padding: '2em',\n }\n };\n const scrollableContent = mergeStyles({\n maxHeight: '100%',\n });\n\n //#endregion\n\n return (\n \n \n \n props.setModalVisible(false)}\n />\n \n \n \n {!isFetching ? form : loader}\n \n \n );\n};\n\nexport default ReviewModal;","import { ICommandBarItemProps, mergeStyles } from \"@fluentui/react\";\nimport { AppSettings } from \"../../AppSettings\";\nimport { RouteNames } from \"../../shared/Consts\";\nimport { Thesis } from \"../../shared/Models\";\n\ninterface ActionProps {\n iconOnly?: boolean;\n onClick?: () => void;\n href?: string;\n disabled?: boolean;\n visible?: boolean;\n};\n\nconst iconStyles = mergeStyles({\n fontWeight: '600!important'\n});\n\nexport const viewAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'view',\n text: 'Zobacz pracę',\n iconProps: {\n iconName: 'View',\n className: `${iconStyles}`\n },\n ariaLabel: 'View',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false\n }\n};\n\nexport const addReviewAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'addReview',\n text: 'Zrecenzuj pracę',\n iconProps: {\n iconName: 'PageAdd',\n className: `${iconStyles}`\n },\n ariaLabel: 'Add review',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const editReviewAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'editReview',\n text: 'Edytuj recenzję pracy',\n iconProps: {\n iconName: 'PageEdit',\n className: `${iconStyles}`\n },\n ariaLabel: 'Edit review',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const editAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'edit',\n text: 'Edytuj pracę',\n iconProps: {\n iconName: 'Edit',\n className: `${iconStyles}`\n },\n ariaLabel: 'Edit',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const downloadAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'download',\n text: 'Pobierz pracę',\n iconProps: {\n iconName: 'Download',\n className: `${iconStyles}`\n },\n ariaLabel: 'Download',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n target: '_blank',\n }\n};\n\nexport const printAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'print',\n text: 'Wydrukuj pracę',\n iconProps: {\n iconName: 'Print',\n className: `${iconStyles}`\n },\n ariaLabel: 'Print',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const editGradeAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'editGrade',\n text: 'Wystaw ocenę',\n iconProps: {\n iconName: 'Ribbon',\n className: `${iconStyles}`\n },\n ariaLabel: 'Confirm grade',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const hideThesisAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'hideThesis',\n text: 'Ukryj pracę',\n iconProps: {\n iconName: 'Hide3',\n className: `${iconStyles}`\n },\n ariaLabel: 'Hide thesis',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false\n }\n};\n\nexport const unhideThesisAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'unhideThesis',\n text: 'Odkryj pracę',\n iconProps: {\n iconName: 'View',\n className: `${iconStyles}`\n },\n ariaLabel: 'Unhide thesis',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false\n }\n};\n\nexport const cancelGradeAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'cancelGrade',\n text: 'Anuluj ocenę',\n iconProps: {\n iconName: 'RibbonSolid',\n className: iconStyles\n },\n ariaLabel: 'Cancel grade',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n};\n\nexport const updateReviewQuestionsAction = (props: ActionProps): ICommandBarItemProps => {\n return {\n key: 'updateReviewQuestions',\n text: 'Zaktualizuj pytania',\n iconProps: {\n iconName: 'SurveyQuestions',\n className: iconStyles\n },\n ariaLabel: 'Update review questions',\n iconOnly: props.iconOnly ?? true,\n onClick: props.onClick,\n href: props.href,\n disabled: props.disabled ?? false,\n visible: props.visible ?? false,\n }\n}\n\nexport const addActions = (thesis: Thesis, iconOnly: boolean): ICommandBarItemProps[] => {\n const items: ICommandBarItemProps[] = [];\n // if (thesis?.actions.canView) {\n // items.push(viewAction({\n // iconOnly: iconOnly,\n // disabled: true,\n // visible: false\n // }));\n // }\n if (thesis?.actions.canDownload) {\n items.push(downloadAction({\n iconOnly: iconOnly,\n href: `${AppSettings.API.Files.Base}/${thesis.fileGuid}`\n }));\n }\n if (thesis?.actions.canEdit) {\n items.push(editAction({\n iconOnly: iconOnly,\n href: RouteNames.editThesisPath(thesis?.guid)\n }));\n }\n // if (thesis?.actions.canPrint) {\n // items.push(printAction({\n // iconOnly: iconOnly,\n // disabled: true\n // }));\n // }\n if (thesis?.actions.canAddReview) {\n items.push(addReviewAction({\n iconOnly: iconOnly,\n href: RouteNames.addReviewPath(thesis.guid)\n }));\n }\n if (thesis?.actions.canEditReview) {\n items.push(editReviewAction({\n iconOnly: iconOnly,\n href: RouteNames.editReviewPath(thesis.guid, thesis.reviewGuid)\n }));\n }\n return items;\n};","import { DefaultButton, Dialog, DialogFooter, DialogType, PrimaryButton } from '@fluentui/react';\nimport { useId } from '@fluentui/react-hooks';\nimport React from 'react';\n\ninterface ReviewFormConfirmDialogProps {\n isVisible: boolean,\n toggleIsVisible: () => void,\n onConfirm: () => void,\n onSave: () => void\n};\n\nexport const ReviewFormConfirmDialog: React.FC = (props) => {\n const labelId: string = useId('ReviewFormConfirmDialogLabelId');\n const subTextId: string = useId('ReviewFormConfirmDialogSubTextId');\n const dialogContentProps = {\n type: DialogType.normal,\n title: 'Zatwierdzanie recenzji',\n closeButtonAriaLabel: 'Close',\n subText: 'Czy jesteś pewien, że chcesz zatwierdzić swoją recenzję? Po zatwierdzeniu nie ma możliwości jej dalszej edycji oraz edycji pracy.',\n };\n const modalProps = React.useMemo(\n () => ({\n titleAriaId: labelId,\n subtitleAriaId: subTextId,\n isBlocking: false,\n }),\n [labelId, subTextId],\n );\n\n return (\n