{"version":3,"sources":["i18n.js","widgets/loader.js","routes/index.js","keycloak.js","components/common/ErrorHandler.js","components/common/ModalComponent.js","App.js","EmailEnter.js","middleware/apolloClient.js","routes/IframeRoutes.js","IframeApp.js","index.js","containers/App/App.module.scss","recoil/toast/atom.js","recoil/modal/atom.js","contexts/RulesContext.js","utils/authHelper.js","middleware/api.js","swr/useRequest.js","contexts/LocaleContext.js","swr/auth.js","constants/config.js","config.js","utils/constValues.js","swr/users.js","recoil/organisations/atom.js","recoil/organisations/selector.js","swr/notes.js","swr/documentcategory.js","recoil/companyDetails/atom.js","recoil/companyDetails/selector.js","recoil/noteTypes/atom.js","recoil/noteTypes/selector.js","recoil/documentCategories/atom.js","recoil/documentCategories/selector.js","assets/images/logo.png","components/common/ErrorHandler.module.scss","recoil/error/atom.js"],"names":["i18n","use","Backend","LanguageDetector","initReactI18next","init","ns","fallbackLng","debug","process","interpolation","escapeValue","err","t","console","error","services","formatter","add","value","lng","options","inputDate","moment","defaultValue","isValid","locale","format","Loader","_jsx","Loading","className","ProtectedRoutes","lazy","ErrorBoundary","Routes","props","keycloak","useKeycloak","popError","useSetRecoilState","errorState","setLocale","useState","language","Router","children","LocaleContext","Provider","Suspense","fallback","style","textAlign","padding","LoadingWidget","color","authenticated","Route","path","render","Keycloak","realm","url","config","KEYCLOAK","apiHost","apiPath","clientId","pkceMethod","ErrorHandler","setError","setErrorState","hideAlert","callback","getErrorMessageDisplay","errorDetail","errors","idx","property","Array","isArray","map","message","i","push","_jsxs","JSON","stringify","useEffect","errorIdx","length","styles","sweetAlert","onConfirm","SweetAlert","type","title","confirmBtnBsStyle","confirmBtnText","showCancel","cancelBtnBsStyle","cancelBtnText","onCancel","detail","ModalComponent","data","modalData","show","setShow","setModalState","modalState","Modal","onHide","hide","modal","backdrop","dialogClassName","Header","closeButton","Title","Body","App","useRecoilValue","toast","toastMessageState","setToast","kcLogin","login","idpHint","idp","loginHint","email","ReactKeycloakProvider","onEvent","eventLogger","event","sessionStorage","setItem","JL","setOptions","defaultAjaxUrl","environmentConfig","ADMIN","defaultBeforeSend","xhr","oldCons","window","log","arguments","table","info","warn","ajaxAppender","createAjaxAppender","consoleAppender","createConsoleAppender","appenders","onTokens","tokens","localStorage","token","initOptions","onLoad","checkLoginIframe","authClient","ToastHandler","clearToasts","clearToastMessage","RouteComponents","EmailEnter","externalLinkRegion","defaultCountyCode","setEmail","enteredEmail","setEnteredEmail","invalidEmailId","setInvalidEmailId","idpPresent","setIdpPresent","setIdp","callSubmitAction","isEmail","getIdp","async","fetch","method","then","response","text","catch","location","href","indexOf","getItem","split","companyName","id","scheme","host","port","htmlFor","tabIndex","name","autoFocus","onKeyDown","key","onChange","e","target","autoComplete","onClick","httpLink","HttpLink","uri","ConstValues","GraphQL","seekUrl","authMiddleware","ApolloLink","operation","forward","setContext","_ref","headers","authorization","parse","access_token","apolloClient","ApolloClient","link","concat","cache","InMemoryCache","IFrameSearchAndMatchList","IframeRoutes","rulesDetails","RulesDataContext","Switch","exact","app","appPage","appFooter","hostname","website","appFooterLogo","src","FooterLogo","alt","IframeApp","history","useHistory","useLocation","noteTypesData","setNoteTypes","documentCategoriesData","setDocumentCategories","isAuthorized","setIsAuthorized","organisation","setOrganisationData","currentCompanyDetails","setCurrentCompanyDetails","employeeAuthorization","setEmployeeAuthorizationState","setRulesDetails","userId","setUserId","setCurrentOrgValue","setCurrentOrganisationDetails","setCompanyDetailsState","setcompanyDetails","messageHandler","allowedOrigins","iframeAppSrc","trim","replace","pattern","RegExp","some","test","origin","queryParams","URLSearchParams","search","get","decodedToken","jwtDecode","exp","Date","now","sub","validateToken","status","currentCompany","accountingName","storageError","authResult","getEmployeeAuthorisation","organisationSettings","activated","removeItem","validateTokenWithKeycloak","addEventListener","useGetCompanyDetails","find","company","rules","getRulesDetails","noteTypesResponse","loadNoteTypes","categoriesResponse","loadDocumentCategoriesByOrg","fetchAdditionalData","_Fragment","isSearchAndMatchPublicRoute","pathname","ReactDOM","ApolloProvider","client","RecoilRoot","document","getElementById","module","exports","atom","default","React","createContext","isUrlAllowed","_rules$employeeAuthor","_rules$employeeAuthor2","_rules$employeeAuthor3","redirectToErrorPage","undefined","getRules","_rules$employeeAuthor4","decision","urlParts","toLowerCase","String","getUrlPartsArray","employeeAuthorisation","companyAdmin","countSameItems","isLicensed","suspended","allowsJobRequisition","talentpoolAccess","GSMOnly","allowsOnboarding","reportAccessList","getCurrentEmployeeAuthorisation","payrollUser","includes","userIsInReportAccessList","userAllowedToViewReports","_rules$employeeAuthor7","isGSMAdmin","allowsSearchAndMatch","handleAuthDecision","isUISectionAllowed","uiSections","_rules$organisationSe","_rules$employeeAuthor5","_rules$organisationSe2","isRowEditable","row","Object","prototype","hasOwnProperty","call","editable","isTableActionAllowed","action","tableRowActions","lc_action","currentState","isViewOrCopyUrl","isNotCopyAndEditable","isCopyAllowed","tableRowsConditions","useContext","isEmpty","currentUserIsCompanyAdmin","_getCurrentEmployeeAu","userIsAdminOrInRole","roleName","hierarchyId","employeeGroups","permissionGroups","permissionGroup","roles","role","findRoleInEmployeeGroup","g","userIsAdminOrInRoleAllHierarchies","eg","pg","getParentStateName","fullStateName","parentRoleIndex","substring","userAllowedToManageApplicationState","applicationState","userAllowedToViewApplicationState","userAllowedToSendCommsFor","userAllowedToMaintainExternalJobBoards","userAllowedToOfferApprovalFor","getCurrentCompanyId","_rules$companyDetails","companyDetails","getCurrentEmployeeAuthorisationId","ERROR_CODES","isErrorPage","isGSMOnlyOrg","_rules$employeeAuthor6","inputRules","isInvoiceOrg","_rules$employeeAuthor8","paymentMethodType","organization","employeeAuthorisationData","reportAccess","a","this","v","filter","fetcher","endpoint","baseUrlPath","configDetails","responseType","Authorization","encodeURI","axios","getUrl","errorResponse","_errorResponse$respon","_data$message","reloadCall","statusText","errorMessage","Error","Promise","resolve","baseUrl","useSWRRequest","useSWR","useGet","usePost","usePostKeycloak","useDelete","useDeleteKeycloak","usePut","usePutKeycloak","usePatch","companyId","getOrganisationCheck","getOrganisation","getBrowserToken","employerId","environmentConfigData","_process","sessionTimeout","stripeApiKey","creditCardSurchargeRate","wageScapeSource","_environmentConfigDat","_environmentConfigDat2","GEO","_environmentConfigDat3","_environmentConfigDat4","PUBLIC","_environmentConfigDat5","_environmentConfigDat6","REPORT","_environmentConfigDat7","_environmentConfigDat8","_environmentConfigDat9","hideIncomplete","helpline","description","head","titleTemplate","meta","content","charset","DATE_FORMAT","month","day","year","TINYMCE_API_KEY","configs","isProduction","ReportType","REPORTTYPE_CSV","REPORTTYPE_DESIGNER","GSMReports","CREDITUSED_REPORT","TRACKEMAIL_REPORT","PAYROLL_REPORT","Tags","TAG_UNSUITABLE","TagTypes","TalentPoolCandidate","TalentPoolSearchAndMatchProfile","ApplicantSource","TALENTPOOL","EMPLOYER","DomainVerificationStatus","PENDING","FAILED","VERIFIED","DomainEmailVerificationTypes","EMAIL","DOMAIN","LicenseType","VOLUME","SUBSCRIPTION","ProductCategory","JOBBOARD","SEARCHANDMATCH","EMPLOYEEDOCUMENTS","BAMBOOHR","INTELLIHR","JobInvitationStatus","NOT_SENT","INVITED","APPLIED","ModuleTypes","EMPLOYEEDOCUMENT","SMS","JobBoardConnectorType","QJUMPERS","EQUEST","SEEK","TRADEME","DEFAULT","JobBoardBrandType","UNKNOWN","LOGO","BANNER","SQUARE","TEMPLATE","LocationLevel","TopLocation","SubLocation","Area","State","AccountType","CASUAL","PREPAID","JobBoardPackType","FLEXIBLE","BRANDED","TRADEMEGOLD","TRADEMESILVER","TRADEMEBRONZE","Document","DEFAULT_DOCUMENT_ID","applicationSubStateLables","onboarding_offercreation","onboarding_agreementsent","onboarding_contractreceived","onboarding_documentcompleted","Contract_Compilation","substatusactions","hired_agreementsent","hired_contractreceived","hired_documentcompleted","hired_contractcompilation","onboarding_documentsending","SystemEmailType","SendApplicationDetail","EmailNotifyStatus","SEND","NOTIFY","DONE","FORWARDDETAIL","NotificationStatus","Undefined","Notify","DoNotNotify","NotifyLater","QuestionTypes","TEXT","CHECKBOX","RADIO","DATE","ContractCompilationSubStatus","option","ContractCompilationReceivedSubStatus","JobBoardGeneral","EMPTYGUID","DRAFT","ACTIVE","BULLETLENGTH","MAXDAYSLISTING","PaymentMethod","CREDITCARD","INVOICE","LocationCodes","AUSTRALIA","UNITEDKINGDOM","NEWZEALAND","LocationNames","UK","LONDON","IRELAND","LocationEnums","seekLocations","seekStateLocations","seekSubLocations","seekAreas","trademeLocations","trademeSubLocations","trademeAreas","EnumDefinition","displayName","EmailType","SHORTLIST","INTERVIEW","ApplyProcess","STANDARD","BASIC","ApplicationStatus","Default","Pending","SeekPending","SeekCompleted","Other","MovedFrom","MovedTo","AssessmentStatus","Started","InProgress","OptedOut","Completed","Cancelled","JobBoardPublishedStatus","PUBLISHED","ERROR","WITHDRAWN","EXPIRED","EmailCategory","INVITESTATE","GENERALSTATE","REVIEWEMPDOCSSTATE","ACKNOWLEDGEMENTSTANDARD","ACKNOWLEDGEMENTQUICK","CONFIDENTIALANSWERSALERT","HrIntegrationType","NONE","BESTSTART","ApplicationProcess","RESUME_COMPULSORY","BASIC_APPLY","CONFIDENTIAL_INFO","COVERLETTER_COMPULSORY","JobCurrentState","ARCHIVE","JobEditJobState","CREATE","EDIT","REOPEN","JumpReadyCategories","LESS_LIKELY","MODERATE","MOST_LIKELY","CountryCodes","ANZ","AU","NZ","US","SearchFilters","DateBoundary","Before","Since","Keys","Companies","JumpReadyCategory","Keywords","LastModifiedDate","Location","Countries","Cities","Name","States","Skills","SocialProfileLinkNames","Titles","Seniorities","Recency","Any","Current","Previous","Source","Profile","Resume","BundleStage","HISTORYCHECK","PAYPARITYCHECK","SAFETYCHECK","HIREDCHECK","handleEmployeeFirstLogin","loadUsers","loadEmployees","resentActivationEmail","addUser","user","username","saveUser","uploadCSV","csvFile","saveProfile","employeeId","getCurrentUser","authorizationId","loadEmployeesToShareSearch","organisationId","isgsm","shareSearchWithUsers","orgId","searchData","currentOrganisationDetails","selector","set","getCurrentOrganisationDetails","_ref2","loadNotes","note","noteTypeId","entityId","entityType","addNote","editNote","loadEmailByNote","loadViewMoreNote","loadSearchEmailNotes","profileId","loadTalentPoolEmailNotes","candidateId","getDocumentCategory","categoryId","createDocumentCategory","documentCategory","updateDocumentCategory","docCategoryId","deleteDocumentCategory","companyDetailsState","getcompanyDetails","noteTypes","getNoteTypes","documentCategories","getDocumentCategories"],"mappings":"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","file":"static/js/main.d0ba3ae3.chunk.js","sourcesContent":["import i18n from \"i18next\";\nimport Backend from \"i18next-http-backend\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { initReactI18next } from \"react-i18next\";\nimport moment from \"moment\";\n\ni18n\n // load translation using http -> see /public/locales\n // learn more: https://github.com/i18next/i18next-http-backend\n .use(Backend)\n // detect user language\n // learn more: https://github.com/i18next/i18next-browser-languageDetector\n .use(LanguageDetector)\n // pass the i18n instance to react-i18next.\n .use(initReactI18next)\n // init i18next\n // for all options read: https://www.i18next.com/overview/configuration-options\n .init(\n {\n ns: [\"translation\"],\n fallbackLng: \"en\",\n debug: process.env.NODE_ENV !== \"production\",\n interpolation: {\n escapeValue: false, // not needed for react as it escapes by default\n },\n },\n (err, t) => {\n if (err) {\n return console.error(\"Error initializing i18n\", err);\n }\n }\n );\n\ni18n.services.formatter.add(\"short\", (value, lng, options) => {\n let inputDate = moment(options.defaultValue);\n if (inputDate.isValid()) {\n moment.locale(lng);\n return inputDate.format(\"MM/DD/YYYY\");\n }\n});\n\nexport default i18n;\n","import React from \"react\";\nimport { Loading } from \"qjumpers.common.ui\";\n// import PropTypes from \"prop-types\";\n\nconst Loader = () => {\n return ;\n};\n\nexport default Loader;\n","import React, { Suspense, lazy, useState } from \"react\";\nimport { BrowserRouter as Router, Route } from \"react-router-dom\";\nimport LoadingWidget from \"../widgets/loader\";\nimport { useKeycloak } from \"@react-keycloak/web\";\nimport { useSetRecoilState } from \"recoil\";\nimport { errorState } from \"recoil/error/atom\";\nimport LocaleContext from \"../contexts/LocaleContext\";\nimport i18n from 'i18next';\nconst ProtectedRoutes = lazy(() => import(\"./protectedRoutes\"));\n// const Login = lazy(() => import(\"../pages/login\"));\nconst ErrorBoundary = lazy(() => import(\"../ErrorBoundary\"));\n\nconst Routes = (props) => {\n // Using Object destructuring\n const { keycloak } = useKeycloak();\n const popError = useSetRecoilState(errorState);\n const [locale, setLocale] = useState(i18n.language);\n \n return (\n \n \n \n \n \n }>\n \n {!!keycloak.authenticated && } />}\n {/* {!props.isAuthenticated ? ( */}\n {/* */}\n {/* {true ? (\n <>\n \n \n \n \n \n ) : (\n } />\n )} */}\n \n \n \n \n );\n};\n\nexport default Routes;\n","import Keycloak from \"keycloak-js\";\nimport config from \"constants/config\";\n\n// Setup Keycloak instance as needed\n// Pass initialization options as required or leave blank to load from 'keycloak.json'\nconst keycloak = new Keycloak({\n realm: \"qjumpers\",\n url: config.KEYCLOAK.apiHost + config.KEYCLOAK.apiPath,\n clientId: \"qjumpers\",\n pkceMethod: \"S256\",\n});\n\nexport default keycloak;","import React, { useState, useEffect } from \"react\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport styles from \"./ErrorHandler.module.scss\";\nimport { errorState } from \"recoil/error/atom\";\nimport { useSetRecoilState } from \"recoil\";\n\nconst ErrorHandler = (props) => {\n const [error, setError] = useState(null);\n // const [errorIdx, setErrorIdx] = useState()\n const setErrorState = useSetRecoilState(errorState);\n\n const hideAlert = (callback) => {\n // const { clearErrors } = props\n if (callback) {\n callback();\n }\n setErrorState(() => []);\n // clearErrors(errorIdx)\n setError(null);\n // setErrorIdx(0)\n };\n\n const getErrorMessageDisplay = (errorDetail) => {\n const errors = [];\n let idx = 0;\n for (var property in errorDetail) {\n if (Array.isArray(errorDetail[property])) {\n errorDetail[property].map((message, i) => errors.push(

{message}

));\n } else if (typeof errorDetail[property] !== \"string\") {\n errors.push(

{JSON.stringify(errorDetail[property])}

);\n } else {\n errors.push(

{errorDetail[property]}

);\n }\n idx++;\n }\n return errors;\n };\n\n useEffect(() => {\n const errorIdx = props.errors.length - 1;\n // setErrorIdx(errorIdx)\n setError(props.errors.length ? props.errors[errorIdx] : null);\n }, [props]);\n\n return error ? (\n
\n {!error?.onConfirm ? hideAlert(error?.onCancel)} \n onCancel={() => hideAlert(error?.onCancel)}>\n \n {error.message}\n {error.detail ? (\n \n
\n {getErrorMessageDisplay(error.detail)}\n
\n ) : null}\n
\n
\n :\n hideAlert(error?.onConfirm)}\n showCancel={error.showCancel || false}\n cancelBtnBsStyle={error.cancelBtnBsStyle || \"default\"}\n cancelBtnText={error.cancelBtnText || \"Cancel\"}\n onCancel={() => hideAlert(error?.onCancel)}>\n \n {error.message}\n {error.detail ? (\n \n
\n {getErrorMessageDisplay(error.detail)}\n
\n ) : null}\n
\n \n }\n
\n ) : null;\n};\n\nexport default ErrorHandler;\n","import React, { useEffect, useState } from \"react\";\nimport { Modal } from \"react-bootstrap\";\nimport { useSetRecoilState } from \"recoil\";\nimport { modalState } from \"recoil/modal/atom\";\n\nconst ModalComponent = (props) => {\n const data = props.modalData && props.modalData.length > 0 && props.modalData[0];\n const [show, setShow] = useState(data.show || false);\n const setModalState = useSetRecoilState(modalState);\n\n useEffect(() => {\n const data = props.modalData && props.modalData.length > 0 && props.modalData[0];\n setShow(data.show);\n }, [props]);\n\n const hide = () => {\n const modal = props.modalData && props.modalData.length > 0 && props.modalData[0];\n if (modal && modal.onHide) {\n modal.onHide();\n }\n setModalState(() => []);\n setShow(false);\n };\n return (\n
\n \n \n {data.title}\n \n {show ? data.children : null}\n \n
\n );\n};\n\nexport default ModalComponent;\n","import React from \"react\";\nimport RouteComponents from \"./routes\";\nimport { ReactKeycloakProvider } from \"@react-keycloak/web\";\nimport keycloak from \"./keycloak\";\nimport ErrorHandler from \"components/common/ErrorHandler\";\nimport { errorState } from \"recoil/error/atom\";\nimport { modalState } from \"recoil/modal/atom\";\nimport { JL } from \"jsnlog\";\nimport ModalComponent from \"components/common/ModalComponent\";\nimport { toastMessageState } from \"recoil/toast/atom\";\nimport { useRecoilValue, useSetRecoilState } from \"recoil\";\nimport { ToastHandler } from \"qjumpers.common.ui\";\nimport environmentConfig from \"constants/config\";\n\nimport 'react-toastify/dist/ReactToastify.css';\n\nfunction App(props) {\n const error = useRecoilValue(errorState);\n const modal = useRecoilValue(modalState);\n const toast = useRecoilValue(toastMessageState);\n const setToast = useSetRecoilState(toastMessageState);\n\n const initOptions = {\n onLoad: \"login-required\",\n checkLoginIframe: false,\n pkceMethod: \"S256\",\n };\n\n const eventLogger = (event, error) => {\n \n if (event === \"onAuthSuccess\") {\n sessionStorage.setItem(\"lowCreditPopupShown\", \"false\");\n JL.setOptions({\n defaultAjaxUrl: `${environmentConfig.ADMIN.apiHost}/jsnlog.logger`,\n defaultBeforeSend: xhr => {\n // ToDo: need to revisit after swr completion\n // const orgId = getCurrentCompanyId();\n // if (orgId) {\n // xhr.setRequestHeader(\"JSNLog-RequestId\", orgId);\n // }\n }\n });\n\n // define a new console for jsnlog\n const console = (oldCons => {\n return {\n log: function(...msg) {\n oldCons.log(...msg);\n JL(`client`).log(...msg);\n },\n table: function(...msg) {\n oldCons.table(...msg);\n JL(`client`).log(...msg);\n },\n info: function(...msg) {\n oldCons.info(...msg);\n JL(`client`).info(...msg);\n },\n warn: function(...msg) {\n oldCons.warn(...msg);\n JL(`client`).warn(...msg);\n },\n error: function(...msg) {\n oldCons.error(...msg);\n JL(`client`).error(...msg);\n }\n };\n })(window.console);\n window.console = console;\n\n var ajaxAppender = JL.createAjaxAppender(\"ajaxAppender\");\n var consoleAppender = JL.createConsoleAppender(\"consoleAppender\");\n JL(`client`).setOptions({ appenders: [ajaxAppender, consoleAppender] });\n }\n };\n\n const tokenLogger = (tokens) => {\n localStorage.setItem(\"qjumpers.adminui.auth.token\", tokens.token);\n };\n\n const clearToastMessage = () => {\n setToast([]);\n };\n let kcLogin = keycloak.login;\n keycloak.login = (options) => {\n options.idpHint = props.idp,\n options.loginHint = props.email;\n kcLogin(options);\n };\n return (\n
\n\n \n \n \n \n \n \n
\n );\n}\n\nexport default App;\n","import React, { useEffect, useState } from \"react\";\nimport \"react-jsonschemapath-form/dist/index.css\";\nimport { Route, BrowserRouter as Router } from \"react-router-dom\";\nimport \"qjumpers.common.ui/dist/index.css\";\nimport config from \"constants/config\";\nimport \"styles/bootstrap.overides.scss\";\nimport isEmail from \"validator/lib/isEmail\";\nimport App from \"./App\";\nimport \"./i18n\";\n\nconst EmailEnter = () => {\n const externalLinkRegion = config.defaultCountyCode === \"US\" ? \"us\" : \"anz\";\n const [email, setEmail] = useState(\"\");\n const [enteredEmail, setEnteredEmail] = useState(\"\");\n const [invalidEmailId, setInvalidEmailId] = useState(false);\n const [idpPresent, setIdpPresent] = useState(false);\n const [idp, setIdp] = useState(\"\");\n\n useEffect(() => {\n setEnteredEmail(\"\");\n }, []);\n\n const callSubmitAction = () => {\n if (enteredEmail && isEmail(enteredEmail)) {\n getIdp(enteredEmail);\n setEmail(enteredEmail);\n setInvalidEmailId(false);\n } else {\n setInvalidEmailId(true);\n }\n };\n\n const submitAction = (e) => {\n callSubmitAction();\n };\n\n const getHostUrl = () => {\n return config.scheme + \"://\" + (config.host === \"admin_ui_1\" ? config.host + \":\" + config.port : config.host);\n };\n\n const handleKeyDown = (event) => {\n if (event.key === \"Enter\") {\n callSubmitAction();\n }\n };\n\n const getIdp = async (email) => {\n let url = config.ADMIN.apiHost + \"/api/EmailCheck?EmailId=\" + email;\n\n fetch(url, {\n method: \"GET\",\n })\n .then((response) => response.text())\n .then((response) => {\n setIdp(response);\n setIdpPresent(true);\n })\n .catch((err) => {\n console.error(err);\n });\n };\n\n let token = null;\n if (window.location.href.indexOf(\"state=\") > 0) {\n token = localStorage.getItem(\"kc-callback-\" + window.location.href.split(\"#\")[1].split(\"&\")[0].split(\"=\")[1]);\n }\n\n const companyName = localStorage.getItem(\"company-name\");\n\n return (\n \n {((email && idpPresent) || token || (companyName && !token)) && (\n } />\n )}\n {!token && !companyName && (\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n

QJumpers Sourcing and Recruitment Software Login

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n\n {\n setEnteredEmail(e.target.value);\n if (invalidEmailId && isEmail(e.target.value)) {\n setInvalidEmailId(true);\n }\n }}\n autoComplete=\"off\"\n aria-invalid=\"\"\n />\n {invalidEmailId && (\n \n Invalid email.\n \n )}\n
\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n

If you are an employer and your organisation doesnt already have an account with QJumpers, please email support@qjumpers.com for a registration link.

\n

If your organisation already has a QJumpers account please contact your HR Team for access.

\n
\n
\n
\n
\n
\n
\n \n
\n )}\n
\n );\n};\n\nexport default EmailEnter;\n","import { ApolloClient, InMemoryCache, HttpLink, ApolloLink, concat } from \"@apollo/client\";\nimport { ConstValues } from \"utils/constValues\";\n\nconst httpLink = new HttpLink({ uri: ConstValues.GraphQL.seekUrl });\n\nconst authMiddleware = new ApolloLink((operation, forward) => {\n // add the authorization to the headers\n operation.setContext(({ headers = {} }) => ({\n headers: {\n ...headers,\n authorization: `Bearer ${JSON.parse(localStorage.getItem(\"browserToken\")).data.access_token}`,\n },\n }));\n return forward(operation);\n});\n\nconst apolloClient = new ApolloClient({\n link: concat(authMiddleware, httpLink),\n cache: new InMemoryCache(),\n});\nexport default apolloClient;\n","import React, { Suspense, lazy, useState } from \"react\";\nimport { BrowserRouter as Router, Route, Switch } from \"react-router-dom\";\nimport LoadingWidget from \"../widgets/loader\";\nimport RulesDataContext from \"contexts/RulesContext\";\nimport { useSetRecoilState } from \"recoil\";\nimport { errorState } from \"recoil/error/atom\";\nimport LocaleContext from \"../contexts/LocaleContext\";\nimport i18n from 'i18next';\nimport config from \"config\";\nimport styles from \"../containers/App/App.module.scss\";\nimport FooterLogo from \"assets/images/logo.png\";\n\nconst ErrorBoundary = lazy(() => import(\"../ErrorBoundary\"));\nconst IFrameSearchAndMatchList = lazy(() => import(\"containers/SearchAndMatch/IFrameSearchAndMatchList\"));\n\nconst IframeRoutes = ({ rulesDetails }) => {\n const popError = useSetRecoilState(errorState);\n const [locale, setLocale] = useState(i18n.language);\n\n const renderRoutesChildren = () => (\n \n \n (\n
\n
\n
\n
\n \n
\n
\n
\n
\n )}\n />\n (\n
\n
\n
\n \n
\n
\n
\n )}\n />\n
\n
\n );\n\n return (\n \n \n \n \n \n }>\n \n {renderRoutesChildren()}\n
\n \n {config.app.title}\n \n
\n
\n \n
\n
\n );\n};\n\nexport default IframeRoutes;\n","import React, { useState, useEffect } from \"react\";\nimport IframeRoutes from \"./routes/IframeRoutes\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport ErrorHandler from \"components/common/ErrorHandler\";\nimport { errorState } from \"recoil/error/atom\";\nimport { modalState } from \"recoil/modal/atom\";\nimport { JL } from \"jsnlog\";\nimport ModalComponent from \"components/common/ModalComponent\";\nimport { toastMessageState } from \"recoil/toast/atom\";\nimport { useRecoilValue, useSetRecoilState } from \"recoil\";\nimport { setcompanyDetails } from \"recoil/companyDetails/selector\";\nimport { getEmployeeAuthorisation, useGetCompanyDetails } from \"swr/auth\";\nimport { setCurrentOrganisationDetails } from \"recoil/organisations/selector\";\nimport { ToastHandler } from \"qjumpers.common.ui\";\nimport environmentConfig from \"constants/config\";\nimport { jwtDecode } from 'jwt-decode';\nimport { validateToken } from \"swr/users\";\nimport { getRulesDetails } from \"utils/authHelper\";\nimport { loadNoteTypes } from \"swr/notes\";\nimport { loadDocumentCategoriesByOrg } from \"swr/documentcategory\";\nimport { setNoteTypes } from \"recoil/noteTypes/selector\";\nimport { setDocumentCategories } from \"recoil/documentCategories/selector\";\nimport 'react-toastify/dist/ReactToastify.css';\n\nfunction IframeApp(props) {\n const history = useHistory();\n const location = useLocation();\n const error = useRecoilValue(errorState);\n const modal = useRecoilValue(modalState);\n const toast = useRecoilValue(toastMessageState);\n const setToast = useSetRecoilState(toastMessageState);\n \n const noteTypesData = useSetRecoilState(setNoteTypes);\n const documentCategoriesData = useSetRecoilState(setDocumentCategories);\n const [isAuthorized, setIsAuthorized] = useState(null);\n const [organisation, setOrganisationData] = useState(null);\n const [currentCompanyDetails, setCurrentCompanyDetails] = useState();\n const [employeeAuthorization, setEmployeeAuthorizationState] = useState(null);\n const [rulesDetails, setRulesDetails] = useState();\n const [userId, setUserId] = useState();\n\n const setCurrentOrgValue = useSetRecoilState(setCurrentOrganisationDetails);\n const setCompanyDetailsState = useSetRecoilState(setcompanyDetails);\n\n JL.setOptions({ defaultAjaxUrl: `${environmentConfig.ADMIN.apiHost}/jsnlog.logger` });\n\n useEffect(() => {\n JL.setOptions({\n defaultAjaxUrl: `${environmentConfig.ADMIN.apiHost}/jsnlog.logger`,\n });\n\n // Override the console object to ship logs to the backend\n const console = (oldCons => {\n return {\n log: function (...msg) {\n oldCons.log(...msg);\n JL(\"client\").log(...msg);\n },\n info: function (...msg) {\n oldCons.info(...msg);\n JL(\"client\").info(...msg);\n },\n warn: function (...msg) {\n oldCons.warn(...msg);\n JL(\"client\").warn(...msg);\n },\n error: function (...msg) {\n oldCons.error(...msg);\n JL(\"client\").error(...msg);\n },\n };\n })(window.console);\n window.console = console;\n\n // Configure appenders for jsnlog\n const ajaxAppender = JL.createAjaxAppender(\"ajaxAppender\");\n const consoleAppender = JL.createConsoleAppender(\"consoleAppender\");\n JL(\"client\").setOptions({ appenders: [ajaxAppender, consoleAppender] });\n }, []);\n\n const validateTokenWithKeycloak = async (token) => {\n try {\n const response = await validateToken(token);\n console.log(\"Token: after validate\");\n if (response && response.status === 200 && response.data) {\n console.log(\"Token: after validate response success\");\n const tokens = response.data.tokens;\n const currentCompany = response.data.organisation;\n\n try {\n localStorage.setItem(\"auth.token\", JSON.stringify(tokens));\n localStorage.setItem(\"qjumpers.adminui.auth.token\", tokens.access_token);\n localStorage.setItem(\"company-id\", currentCompany.id);\n localStorage.setItem(\"company-name\", currentCompany.accountingName);\n } catch (storageError) {\n console.error(\"Error:\", storageError);\n }\n const authResult = await getEmployeeAuthorisation(currentCompany.id);\n if (authResult.data) {\n setEmployeeAuthorizationState(authResult.data);\n }\n setOrganisationData(currentCompany);\n setCurrentOrgValue(currentCompany);\n return currentCompany.organisationSettings.activated;\n }\n else {\n console.log(\"Token: after validate response failed\");\n localStorage.removeItem(\"company-id\");\n localStorage.removeItem(\"company-name\");\n }\n } catch (error) {\n localStorage.removeItem(\"company-id\");\n localStorage.removeItem(\"company-name\");\n console.error('Token validation failed:', error);\n return false;\n }\n };\n\n useEffect(() => {\n console.log(\"load component\");\n const validateToken = async () => {\n\n let token = null;\n\n const messageHandler = async (event) => {\n\n const iframeAppSrcPatterns = environmentConfig.iframeAppSrc\n .trim()\n .split(\";\")\n .map(src => \n src.trim()\n .replace(/\\./g, \"\\\\.\")\n .replace(/\\*/g, \".*\")\n );\n \n const allowedOrigins = iframeAppSrcPatterns.map(pattern => new RegExp(`^${pattern}$`));\n \n console.log(\"Allowed Origins Regex:\", allowedOrigins);\n \n // Check if the event origin is allowed\n if (!allowedOrigins.some(pattern => pattern.test(event.origin))) {\n console.error(\"Untrusted origin:\", event.origin);\n return;\n }\n\n const queryParams = new URLSearchParams(location.search);\n token = queryParams.get(\"jwt\");\n\n const data = event.data;\n if (!token && data && data.access_token) {\n token = data.access_token;\n }\n \n if (!token) {\n history.replace('/error');\n return;\n }\n \n try {\n const decodedToken = jwtDecode(token);\n const isExpired = decodedToken.exp * 1000 < Date.now();\n\n if (isExpired) {\n setIsAuthorized(false);\n history.replace('/error');\n return;\n }\n setUserId(decodedToken.sub);\n\n // Await the token validation asynchronously\n const isValid = await validateTokenWithKeycloak(token);\n setIsAuthorized(isValid);\n } catch (error) {\n console.error('Token decoding failed:', error);\n history.replace('/error');\n }\n };\n \n window.addEventListener('message', messageHandler);\n \n // Cleanup the event listener on component unmount\n return () => {\n window.removeEventListener('message', messageHandler);\n };\n };\n \n validateToken();\n }, [location.search]);\n\n useEffect(() => {\n if (organisation && userId) {\n useGetCompanyDetails(userId).then((response) => {\n const currentCompany = response?.data.find((company) => company.id === organisation.id);\n setCompanyDetailsState(currentCompany);\n setCurrentCompanyDetails(currentCompany);\n });\n }\n }, [organisation, userId]);\n\n useEffect(() => {\n if (organisation && employeeAuthorization && !rulesDetails) {\n const rules = getRulesDetails(currentCompanyDetails, organisation, employeeAuthorization);\n setRulesDetails(rules);\n }\n }, [employeeAuthorization, organisation, currentCompanyDetails]);\n\n useEffect(() => {\n const fetchAdditionalData = async () => {\n try {\n const noteTypesResponse = await loadNoteTypes();\n const categoriesResponse = await loadDocumentCategoriesByOrg(organisation.id);\n noteTypesData(noteTypesResponse.data);\n documentCategoriesData(categoriesResponse.data);\n } catch (error) {\n console.error('Failed to fetch additional data:', error);\n }\n };\n\n if (isAuthorized) {\n fetchAdditionalData();\n }\n }, [isAuthorized]);\n\n const clearToastMessage = () => setToast([]);\n\n return (\n
\n {isAuthorized ? (\n <>\n \n \n \n {employeeAuthorization && rulesDetails && (\n \n )}\n \n ) : isAuthorized === null ? (\n
Authenticating user..
\n ) : (\n
Unauthorized
\n )}\n
\n );\n}\n\nexport default IframeApp;","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { BrowserRouter as Router } from \"react-router-dom\";\nimport \"./i18n\";\nimport EmailEnter from \"./EmailEnter\";\nimport { RecoilRoot } from \"recoil\";\nimport \"react-jsonschemapath-form/dist/index.css\";\nimport \"qjumpers.common.ui/dist/index.css\";\nimport \"styles/bootstrap.overides.scss\";\nimport { ApolloProvider } from \"@apollo/client\";\nimport apolloClient from \"./middleware/apolloClient\"; // for seek widget\nimport IframeApp from \"./IframeApp\";\n\nconst isSearchAndMatchPublicRoute = window.location.pathname === '/aitssearch';\n\nReactDOM.render(\n \n \n \n {isSearchAndMatchPublicRoute ? (\n \n ) : (\n \n )}\n \n \n ,\n document.getElementById(\"root\")\n);\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"app\":\"App_app__2RmiD\",\"userAction\":\"App_userAction__2qrQw\",\"appLoader\":\"App_appLoader__19RIF\",\"appPage\":\"App_appPage__3UomW\",\"appHeader\":\"App_appHeader__3YOE0\",\"appFooter\":\"App_appFooter__3kzSB\",\"appFooterText\":\"App_appFooterText__17QaQ\",\"appFooterLogo\":\"App_appFooterLogo__booib\",\"appError\":\"App_appError__-GnPN\"};","import { atom } from 'recoil';\n\nexport const toastMessageState = atom({\n key: \"toastMessageState\",\n default:[]\n});\n","import { atom } from 'recoil';\n\nexport const modalState = atom({\n key: \"modalState\",\n default:[]\n});\n","import React from \"react\";\n\nconst RulesDataContext = React.createContext({});\nexport default RulesDataContext;","import RulesDataContext from \"contexts/RulesContext\";\nimport { isEmpty } from \"lodash\";\nimport React from \"react\";\n\n//maintain rules via url\nexport function isUrlAllowed(url, redirectToErrorPage = false, rulesDetails = null) {\n var rules = rulesDetails || getRules();\n if (rules === null) {\n return false;\n }\n var decision = true;\n var urlParts = getUrlPartsArray(url);\n\n //check the specific rules here\n //rules = testRules(rules);\n\n //admin part\n if (!rules?.employeeAuthorisation?.companyAdmin && [\"admin\"].countSameItems(urlParts) > 0) {\n decision = false;\n }\n\n if ((!rules.organisationSettings.isLicensed) && !rules?.employeeAuthorisation?.companyAdmin && [\"dashboard\"].countSameItems(urlParts) > 0) {\n decision = false;\n }\n \n // check if user is suspended\n if (rules?.employeeAuthorisation?.suspended) {\n decision = false;\n }\n\n if (rules.organisationSettings) {\n //job req\n if (!rules.organisationSettings.allowsJobRequisition && [\"jobrequisition\"].countSameItems(urlParts) > 0) {\n decision = false;\n }\n //add job if job req\n //job req\n if (rules.organisationSettings.allowsJobRequisition && [\"jobs\", \"add\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //is Licensed\n //talent pool\n if (((rules.organisationSettings.isLicensed && !rules?.employeeAuthorisation?.talentpoolAccess) || !rules.organisationSettings.isLicensed) && !rules.organisationSettings.GSMOnly && [\"talentpool\"].countSameItems(urlParts) > 0) {\n decision = false;\n }\n\n //subsites\n if ((!rules.organisationSettings.isLicensed || rules.organisationSettings.GSMOnly) && [\"admin\", \"subsites\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"applicationprocess\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"brands\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //security and access\n if (!rules.organisationSettings.isLicensed && [\"admin\", \"hierarchyroles\", \"hierarchies\", \"employmentagreement\", \"extrainformation\", \"tokens\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n if (!rules.organisationSettings.isLicensed && !rules.organisationSettings.GSMOnly && [\"admin\", \"maintainusers\", \"modules\", \"integrations\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //admin/questionnaires/organisation\n if ((!rules.organisationSettings.isLicensed || rules.organisationSettings.GSMOnly) && [\"admin\", \"questionnaires\", \"organisation\"].countSameItems(urlParts) > 2) {\n decision = false;\n }\n\n //compensationitems\n if (!rules.organisationSettings.allowsOnboarding && [\"admin\", \"compensationitems\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //tags\n if (!rules.organisationSettings.isLicensed && !rules.organisationSettings.GSMOnly && [\"admin\", \"tags\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //candidatelist\n if (!rules.organisationSettings.isLicensed && !rules.organisationSettings.GSMOnly && [\"admin\", \"candidatelists\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //organisation report\n if (!rules.organisationSettings.isLicensed && [\"admin\", \"reports\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //report\n if ((!rules.organisationSettings.isLicensed || rules.organisationSettings.GSMOnly) && [\"admin\", \"reportusers\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n //report access\n if (([\"report\"].countSameItems(urlParts) > 0 || [\"reports\"].countSameItems(urlParts) > 0) && (!rules.organisationSettings.isLicensed || !userAllowedToViewReports(rules.reportAccessList, rules)) && !isGSMAdmin(rulesDetails)) {\n decision = false;\n }\n\n // searchandmatch\n if (!rules.organisationSettings.allowsSearchAndMatch && !rules.organisationSettings.GSMOnly && [\"searchandmatch\"].countSameItems(urlParts) > 0) {\n decision = false;\n }\n\n // if (!rules.organisationSettings.GSMOnly && [\"searchandmatch\"].countSameItems(urlParts) > 0) {\n // decision = false;\n // }\n //admin/questionnaires/confidential\n if ((!rules.organisationSettings.isLicensed || rules.organisationSettings.GSMOnly) && [\"admin\", \"questionnaires\", \"confidential\"].countSameItems(urlParts) > 2) {\n decision = false;\n }\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"externaljobboards\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"compensationitems\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"declinationreasons\"].countSameItems(urlParts) > 1) {\n decision = false;\n }\n\n // if (rules.organisationSettings.GSMOnly && [\"admin\", \"emailtemplate\"].countSameItems(urlParts) > 1) {\n // decision = false;\n // }\n\n //admin/questionnaires/confidential\n if (!rules.organisationSettings.isLicensed && [\"admin\", \"questionnaires\", \"confidential\"].countSameItems(urlParts) > 2) {\n decision = false;\n }\n\n //disable marketplace for gsm only organisation\n if (rules.organisationSettings.GSMOnly && [\"admin\", \"marketplace\"].countSameItems(urlParts) > 1) {\n decision =false;\n }\n }\n\n //check the specific rules here\n return handleAuthDecision(decision, redirectToErrorPage);\n}\n\n//maintain rules via ui sections and url\nexport function isUISectionAllowed(uiSections, url = null, rulesDetails = null) {\n //var urlParts = getUrlPartsArray(url);\n\n var rules = rulesDetails || getRules();\n if (rules === null) {\n return false;\n }\n if (!Array.isArray(uiSections) || uiSections.length < 1) {\n return true;\n }\n var decision = true;\n\n //check the specific rules here\n //rules = testRules(rules);\n\n //job req on permission form\n if (!rules?.organisationSettings?.allowsJobRequisition && [\"AdminRoleJobRequisition\"].countSameItems(uiSections) > 0) {\n decision = false;\n }\n\n //if jobReq allowed copy job not allowed\n // if (!rules.organisationSettings.allowsJobRequisition && [\"AdminCopyJob\"].countSameItems(uiSections) > 0) {\n // decision = false;\n // }\n\n //job on permission form\n if (!rules?.employeeAuthorisation?.companyAdmin && [\"AdminRoleJob\"].countSameItems(uiSections) > 0) {\n decision = false;\n }\n\n //permission schema definitions\n if (!rules.organisationSettings?.allowsOnboarding && [\"onboarding-bucket\", \"approve-job-package\"].countSameItems(uiSections) > 0) {\n decision = false;\n }\n\n //add job allowed if job req for company\n // if (rules.organisationSettings.allowsJobRequisition && [\"AdminAddJob\"].countSameItems(uiSections) > 0) {\n // decision = false;\n // }\n\n //check the specific rules here\n return decision;\n}\n\nexport function isRowEditable(row) {\n return Object.prototype.hasOwnProperty.call(row, \"editable\") ? row.editable : true;\n}\n\nexport function isTableActionAllowed(action, i, row, tableRowActions, rulesDetails = null) {\n var lc_action = action.toLowerCase();\n var viewActions = [\"view\", \"copyurl\", \"viewjobreq\", \"applications\"];\n if (lc_action === \"changepanelmembers\" && row.currentState === \"active\") {\n return true;\n } else if (lc_action === \"changepanelmembers\" && (row.currentState === \"archived\" || row.currentState === \"draft\")) {\n return false;\n }\n var isViewOrCopyUrl = viewActions.indexOf(lc_action) != -1 ? true : false;\n var isNotCopyAndEditable = isRowEditable(row) && lc_action != \"copy\" ? true : false;\n var isCopyAllowed = lc_action == \"copy\" && isRowEditable(row) && isUISectionAllowed([\"AdminCopyJob\"], null, rulesDetails) ? true : false;\n var tableRowsConditions = (!Object.prototype.hasOwnProperty.call(tableRowActions, \"isShow\" + action) || tableRowActions[\"isShow\" + action](row)) && Object.prototype.hasOwnProperty.call(tableRowActions, \"handle\" + action) ? true : false;\n\n return (isViewOrCopyUrl || isNotCopyAndEditable || isCopyAllowed) && tableRowsConditions;\n}\n\nexport function handleAuthDecision(decision, redirectToErrorPage = true) {\n if (!decision && redirectToErrorPage) {\n window.location.href = \"/403?detail=&message=Access+denied!+You+do+not+have+access+to+this+page.\";\n }\n return decision;\n}\n\nexport function getRules() {\n const rulesDetails = React.useContext(RulesDataContext);\n return isEmpty(rulesDetails) ? null : rulesDetails;\n}\n\n//moved from redux / actions / auth\nexport function currentUserIsCompanyAdmin(rulesDetails = null) {\n return getCurrentEmployeeAuthorisation(rulesDetails)?.companyAdmin;\n}\n\nexport function userIsAdminOrInRole(roleName, hierarchyId, rulesDetails = null) {\n let response = false;\n let employeeAuthorisation = getCurrentEmployeeAuthorisation(rulesDetails);\n if (employeeAuthorisation?.companyAdmin || employeeAuthorisation.payrollUser) {\n return true;\n } else {\n let filteredEmployeeGroup = employeeAuthorisation && Object.prototype.hasOwnProperty.call(employeeAuthorisation, \"employeeGroups\") ? employeeAuthorisation.employeeGroups.find((g) => g.id === hierarchyId) : null;\n response = findRoleInEmployeeGroup(filteredEmployeeGroup, roleName);\n }\n return response;\n}\n\nexport function userIsAdminOrInRoleAllHierarchies(roleName, rulesDetails = null) {\n let response = false;\n\n if (currentUserIsCompanyAdmin(rulesDetails)) {\n return true;\n } else {\n let employeeAuthorisation = getCurrentEmployeeAuthorisation(rulesDetails);\n let employeeGroups = employeeAuthorisation && Object.prototype.hasOwnProperty.call(employeeAuthorisation, \"employeeGroups\") ? employeeAuthorisation.employeeGroups : null;\n if (employeeGroups && employeeGroups.length) {\n const result = employeeGroups.find((eg) =>\n eg.permissionGroups.some((pg) =>\n pg.roles.some((role) => role.name === roleName)\n )\n );\n response = result ? true : false;\n }\n }\n return response;\n}\n\nfunction findRoleInEmployeeGroup(employeeGroups, roleName) {\n if (employeeGroups && employeeGroups?.permissionGroups) {\n var role = employeeGroups.permissionGroups.find((permissionGroup) => \n permissionGroup.roles.some((role) => role.name === roleName)\n );\n return role ? true : false;\n }\n return false;\n}\n\nfunction getParentStateName(fullStateName) {\n var parentRoleIndex = fullStateName.indexOf(\".\");\n if (parentRoleIndex !== -1) {\n fullStateName = fullStateName.substring(0, parentRoleIndex);\n }\n return fullStateName;\n}\n\nfunction userIsInReportAccessList(reportAccessList, rules = null) {\n let employeeAuthorisation = getCurrentEmployeeAuthorisation(rules);\n return employeeAuthorisation.companyAdmin || employeeAuthorisation.payrollUser || (reportAccessList && reportAccessList.includes(employeeAuthorisation.id));\n}\n//overwrite rules to test use case\n// function testRules(rules){\n// rules.organisationSettings.isLicensed = true;\n// rules.organisationSettings.allowsOnboarding = false;\n// rules.employeeAuthorisation.companyAdmin = true;\n// rules.organisationSettings.allowsJobRequisition = false;\n// return rules;\n// }\n\n//hierarchyId needed\n\nexport function userAllowedToManageApplicationState(hierarchyId, applicationState, rulesDetails = null) {\n return userIsAdminOrInRole(\"manage-\" + getParentStateName(applicationState) + \"-bucket\", hierarchyId, rulesDetails);\n}\n\nexport function userAllowedToViewApplicationState(hierarchyId, applicationState, rulesDetails = null) {\n return userIsAdminOrInRole(\"view-\" + getParentStateName(applicationState) + \"-bucket\", hierarchyId, rulesDetails);\n}\n\nexport function userAllowedToSendCommsFor(hierarchyId, rulesDetails = null) {\n return userIsAdminOrInRole(\"communication\", hierarchyId, rulesDetails);\n}\n\nexport function userAllowedToMaintainExternalJobBoards(hierarchyId, rulesDetails = null) {\n return userIsAdminOrInRole(\"edit-job\", hierarchyId, rulesDetails);\n}\n\nexport function userAllowedToOfferApprovalFor(hierarchyId, rulesDetails = null) {\n return userIsAdminOrInRole(\"approve-job-package\", hierarchyId, rulesDetails);\n}\n\nexport function userAllowedToViewReports(reportAccessList, rules = null) {\n return userIsInReportAccessList(reportAccessList, rules);\n}\n\nexport function getCurrentCompany() {\n var rules = getRules();\n return rules ? rules?.companyDetails : null;\n}\n\nexport function isCompanyActivated() {\n var rules = getRules();\n return rules ? rules.organisationSettings.activated : false;\n}\n\nexport function getCurrentCompanyId(rulesDetails = null) {\n var rules = rulesDetails || getRules();\n return rules ? rules?.companyDetails?.id : localStorage.getItem(\"company-id\");\n}\n\nexport function getCurrentEmployeeAuthorisation(rulesDetails = null) {\n var rules = rulesDetails || getRules();\n return rules ? rules?.employeeAuthorisation : null;\n}\n\nexport function getCurrentEmployeeAuthorisationId(rulesDetails = null) {\n var rules = rulesDetails || getRules();\n return rules ? rules?.employeeAuthorisation.id : null;\n}\n\nconst ERROR_CODES = [\n \"400\",\n \"401\",\n \"402\",\n \"403\",\n \"404\",\n \"405\",\n \"406\",\n \"407\",\n \"408\",\n \"409\",\n \"410\",\n \"411\",\n \"412\",\n \"413\",\n \"414\",\n \"415\",\n \"416\",\n \"417\",\n \"418\",\n \"422\",\n \"423\",\n \"424\",\n \"425\",\n \"426\",\n \"449\",\n \"450\",\n \"500\",\n \"501\",\n \"502\",\n \"503\",\n \"504\",\n \"505\",\n \"506\",\n \"507\",\n \"509\",\n \"510\",\n];\n\nexport function isErrorPage(url) {\n if (url === \"/no-organisation\") {\n return true;\n }\n\n return url && ERROR_CODES.indexOf(url.replace(\"/\", \"\")) !== -1 ? true : false;\n}\n\nexport function isGSMOnlyOrg(inputRules = null) {\n let rules = inputRules ? inputRules : getRules();\n if (rules === null) {\n return false;\n }\n let decision = false;\n if (!rules?.employeeAuthorisation?.suspended && rules.organisationSettings && rules.organisationSettings.GSMOnly) {\n decision = true;\n }\n return decision;\n}\n\nexport function isGSMAdmin(rulesDetails = null) {\n let rules = rulesDetails || getRules();\n return rules?.organisationSettings.GSMOnly && rules?.employeeAuthorisation?.companyAdmin;\n}\n\nexport function isInvoiceOrg(rulesDetails = null) {\n let rules = rulesDetails || getRules();\n if (rules === null) {\n return false;\n }\n let decision = false;\n if (!rules?.employeeAuthorisation?.suspended && rules.paymentMethodType && rules.paymentMethodType == 1) {\n decision = true;\n }\n return decision;\n}\n\nexport function getUrlPartsArray(url) {\n return url === null ? [\"\"] : url.toLowerCase().indexOf(\"/\") !== -1 ? url.split(\"/\") : [String(url)];\n}\n\nArray.prototype.countSameItems = function (a) {\n return this.map((v) => v.toLowerCase()).filter((i) => {\n return a.map((v) => v.toLowerCase()).indexOf(i) !== -1;\n }).length;\n};\n\nexport function getRulesDetails(companyDetails, organization, employeeAuthorisationData = null) {\n let rules = {};\n\n const organisationSettings = organization?.organisationSettings;\n const reportAccessList = organization?.reportAccess;\n const paymentMethodType = organization?.paymentMethodType;\n\n if (companyDetails && organization) {\n //auth\n if (typeof employeeAuthorisationData !== \"undefined\") {\n rules.employeeAuthorisation = employeeAuthorisationData;\n }\n\n //companyDetails\n if (typeof companyDetails !== \"undefined\") {\n rules.companyDetails = companyDetails;\n }\n\n //org settings\n if (typeof organisationSettings !== \"undefined\") {\n rules.organisationSettings = organisationSettings;\n }\n\n //report access user list\n if (typeof reportAccessList !== \"undefined\") {\n rules.reportAccessList = reportAccessList;\n }\n\n if (typeof paymentMethodType !== \"undefined\") {\n rules.paymentMethodType = paymentMethodType;\n }\n // amend rules to test use case\n }\n\n return isEmpty(rules) ? null : rules;\n}\n","import axios from \"axios\";\nimport { get, isEmpty } from \"lodash\";\nimport configDetails from \"constants/config\";\n\nconst fetcher = (method, endpoint, data = null, authenticated = true, baseUrlPath = \"\") => {\n const url =\n baseUrlPath === \"\"\n ? configDetails.ADMIN.apiHost + configDetails.ADMIN.apiPath\n : configDetails[baseUrlPath].apiHost + configDetails[baseUrlPath].apiPath;\n const token = localStorage.getItem(\"qjumpers.adminui.auth.token\") || null;\n let config = { method, url: `${url}${endpoint}`, responseType: \"json\" };\n\n if (authenticated) {\n if (!token) {\n // need to implement logout\n // keycloak.logout({ redirectUri: window.location.origin });\n }\n\n if (isEmpty(baseUrlPath)) {\n config.headers = {\n Authorization: `Bearer ${token}`,\n \"x-companyId\": localStorage.getItem(\"company-id\"),\n \"x-companyName\": encodeURI(localStorage.getItem(\"company-name\")),\n };\n if (sessionStorage.getItem(\"x-jobId\")) {\n config.headers[\"x-jobId\"] = encodeURI(sessionStorage.getItem(\"x-jobId\"));\n }\n } else {\n config.headers = { Authorization: `Bearer ${token}` };\n }\n }\n\n if (data) {\n config.data = data;\n }\n\n return axios(config)\n .then((response) => {\n // implement token refresh\n return method === \"get\" ? response : { response, getUrl: url };\n })\n .catch((errorResponse) => {\n const errorDetail = errorResponse.response ?? errorResponse;\n const reloadCall = errorDetail?.config.url.split(\"/\");\n const { status, data } = errorDetail;\n const statusText = get(errorDetail, \"statusText\");\n let errorMessage = data?.message ?? statusText;\n if (errorMessage === undefined) {\n errorMessage = errorResponse.message;\n }\n console.log(\"ErrorResponse\", errorResponse);\n if (status === 401) {\n // logout\n }\n\n if (status !== 400) {\n sessionStorage.setItem(\"errorItem\", \"true\");\n sessionStorage.setItem(\"status\", status);\n sessionStorage.setItem(\"errorMsg\", errorMessage);\n }\n\n if (reloadCall?.length >= 7 && reloadCall[6] === \"organisationsettings\" && status === 400) {\n sessionStorage.setItem(\"reload\", true);\n }\n\n const error = new Error(errorMessage);\n\n error.status = status;\n\n console.error(error);\n\n return Promise.resolve(error);\n });\n};\n\nexport default fetcher;\n","import axios from \"axios\";\nimport useSWR from \"swr\";\nimport fetcher from \"middleware/api\";\nimport config from \"../constants/config\";\n\nconst getFetcher = (url) => axios.get(url).then((res) => res.data);\n\nconst baseUrl = config.baseUrl;\nconst KEYCLOAK = \"KEYCLOAK\";\n\nexport const useSWRGet = (path) => {\n if (!path) {\n throw new Error(\"Path is required\");\n }\n\n const url = baseUrl + path;\n const { data: states, error, mutate } = useSWR(url, getFetcher);\n\n return { states, error, mutate };\n};\n\nexport const useSWRPost = (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n // const url = baseUrl + path;\n const authenticated = true;\n const method = \"post\";\n const baseUrlPath = \"\";\n const response = useSWR([method, endpoint, authenticated, data, baseUrlPath], fetcher);\n\n return response;\n};\n\nexport const useSWRRequest = (endpoint, data = null, baseUrlPath = \"\") => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n // const url = baseUrl + path;\n\n const response = useSWR([\"get\", endpoint, data, true, baseUrlPath], fetcher);\n\n return response;\n};\n\nexport const useGet = async (endpoint, baseUrlPath) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"get\";\n\n const response = await fetcher(method, endpoint, null, true, baseUrlPath);\n return response;\n};\n\nexport const usePost = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"post\";\n const { response } = await fetcher(method, endpoint, data);\n return response;\n};\n\nexport const usePostKeycloak = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"post\";\n const { response } = await fetcher(method, endpoint, data, true, KEYCLOAK);\n return response;\n};\n\nexport const useDelete = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"delete\";\n const { response } = await fetcher(method, endpoint, data);\n return response;\n};\n\nexport const useDeleteKeycloak = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"delete\";\n const { response } = await fetcher(method, endpoint, data, true, KEYCLOAK);\n return response;\n};\n\nexport const usePut = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Endpoint is required\");\n }\n\n try {\n const method = \"put\";\n const { response } = await fetcher(method, endpoint, data);\n\n return response;\n } catch (error) {\n return { error };\n }\n};\n\nexport const usePutKeycloak = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"put\";\n const { response } = await fetcher(method, endpoint, data, true, KEYCLOAK);\n return response;\n};\n\nexport const usePatch = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"patch\";\n const { response } = await fetcher(method, endpoint, data);\n return response;\n};\n\nexport const useGetWithBaseUrl = async (endpoint, baseUrl) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n if (!baseUrl) {\n throw new Error(\"Base Url is required\");\n }\n const method = \"get\";\n const response = await fetcher(method, endpoint, true, baseUrl);\n return response;\n};\n//withoutBearToken\nexport const useGetWithOutBearerToken = async (endpoint) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"get\";\n const response = await fetcher(method, endpoint, false);\n return response;\n};\n\nexport const usePostWithOutBearerToken = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"post\";\n const { response } = await fetcher(method, endpoint, data, false);\n return response;\n};\n\nexport const useDeleteWithOutBearerToken = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"delete\";\n const { response } = await fetcher(method, endpoint, data, false);\n return response;\n};\n\nexport const usePutWithOutBearerToken = async (endpoint, data) => {\n if (!endpoint) {\n throw new Error(\"Path is required\");\n }\n const method = \"put\";\n const { response } = await fetcher(method, endpoint, data, false);\n return response;\n};\n","import React from \"react\";\n\nconst defaultValue = {\n locale: 'fr',\n setLocale: () => {} \n};\n\nconst LocaleContext = React.createContext(defaultValue);\n\nexport default LocaleContext;","export function getEmployeeAuthorisation(companyId) {\n if (!companyId) {\n return [];\n }\n const response = useGet(`/realms/qjumpers/qjumpers/companies/${companyId}/employeeauthorisation`, \"KEYCLOAK\");\n return response;\n}\n\nimport { useGet } from \"./useRequest\";\n\nexport const useGetCompanyDetails = (userId) => {\n const response = useGet(`/realms/qjumpers/qjumpers/users/${userId}/companies`, \"KEYCLOAK\");\n return response;\n};\n\nexport function getOrganisationCheck(companyId) {\n if (!companyId) {\n return [];\n }\n const response = useGet(`/organisations/check/${companyId}`);\n return response;\n}\n\nexport function getOrganisation(companyId) {\n if (!companyId) {\n return [];\n }\n const response = useGet(`/organisations/${companyId}`);\n return response;\n}\n\nexport function getBrowserToken(employerId) {\n const response = useGet(`/authentication/${employerId}/browsertoken`);\n return response;\n}\n","/*eslint-disable */\nconst environmentConfigData = !process?.env || process.env.NODE_ENV === \"development\" ? null : environmentConfig;\n/*eslint-enable*/\nconst config = {\n host: environmentConfigData?.host || \"admin_ui_1\",\n port: (environmentConfigData && environmentConfigData?.port) || 5005,\n sessionTimeout: (environmentConfigData && environmentConfigData?.sessionTimeout) || 86400000,\n scheme: (environmentConfigData && environmentConfigData?.scheme) || \"http\",\n stripeApiKey: (environmentConfigData && environmentConfigData?.stripeApiKey) || \"pk_test_w7ahZw3KdrM3qpS200X44DUh\",\n creditCardSurchargeRate: (environmentConfigData && environmentConfigData?.creditCardSurchargeRate) || 3,\n defaultCountyCode: (environmentConfigData && environmentConfigData?.defaultCountyCode) || \"NZ\",\n iframeAppSrc: (environmentConfigData && environmentConfigData?.iframeAppSrc) || \"http://localhost:5500\",\n wageScapeSource:\n environmentConfigData?.wageScapeSource || \"https://app.sigmacomputing.com/embed/1-5FDUW3M8WwMO3uiweGtY4K\",\n ADMIN: {\n apiHost: (environmentConfigData && environmentConfigData?.ADMIN?.apiHost) || \"http://admin_api_1:5001\",\n apiPath: (environmentConfigData && environmentConfigData?.ADMIN?.apiPath) || \"/api\",\n },\n GEO: {\n apiHost:\n (environmentConfigData && environmentConfigData?.GEO?.apiHost) || \"https://qjumpers-geonames.qa.qjumpers.com\",\n apiPath: (environmentConfigData && environmentConfigData?.GEO?.apiPath) || \"/api\",\n },\n PUBLIC: {\n apiHost: (environmentConfigData && environmentConfigData?.PUBLIC?.apiHost) || \"http://public_api_1:5007\",\n apiPath: (environmentConfigData && environmentConfigData?.PUBLIC?.apiPath) || \"/api\",\n },\n REPORT: {\n apiHost: (environmentConfigData && environmentConfigData?.REPORT?.apiHost) || \"http://report:5010\",\n },\n KEYCLOAK: {\n apiHost: (environmentConfigData && environmentConfigData?.KEYCLOAK?.apiHost) || \"http://keycloak:8080\",\n apiPath: (environmentConfigData && environmentConfigData?.KEYCLOAK?.apiPath) || \"/auth\",\n hideIncomplete: JSON.stringify((environmentConfigData && environmentConfigData?.hideIncomplete) || false),\n },\n app: {\n title: \"QJumpers\",\n website: \"http://qjumpers.com\",\n helpline: \"0800 758 673\",\n description: \"QJumpers Recruitment\",\n head: {\n titleTemplate: \"%s - QJumpers\",\n meta: [\n { name: \"description\", content: \"QJumpers Recruitment\" },\n { charset: \"utf-8\" },\n { property: \"og:site_name\", content: \"QJumpers Recruitment\" },\n { property: \"og:image\", content: \"\" },\n { property: \"og:locale\", content: \"en_US\" },\n { property: \"og:title\", content: \"QJumpers Recruitment\" },\n { property: \"og:description\", content: \"QJumpers Recruitment\" },\n { property: \"og:card\", content: \"summary\" },\n { property: \"og:site\", content: \"@QJumpers\" },\n { property: \"og:creator\", content: \"QJumpers\" },\n { property: \"og:image:width\", content: \"200\" },\n { property: \"og:image:height\", content: \"200\" },\n ],\n },\n },\n DATE_FORMAT: { month: \"2-digit\", day: \"2-digit\", year: \"numeric\" },\n TINYMCE_API_KEY: \"glb38a7h8rfmo9h5i4ti42tu2i4tffbqyztahe8yrrsoxhud\",\n};\n\nexport default config;\n","//require(\"babel-polyfill\");\n\nconst environment = {\n development: {\n isProduction: false,\n },\n production: {\n isProduction: true,\n },\n}[process.env.NODE_ENV || \"development\"];\n\n// module.exports = Object.assign(\nconst configs = {\n app: {\n title: \"QJumpers\",\n website: \"http://qjumpers.com\",\n helpline: \"0800 758 673\",\n description: \"QJumpers Recruitment\",\n head: {\n titleTemplate: \"%s - QJumpers\",\n meta: [\n { name: \"description\", content: \"QJumpers Recruitment\" },\n { charset: \"utf-8\" },\n { property: \"og:site_name\", content: \"QJumpers Recruitment\" },\n { property: \"og:image\", content: \"\" },\n { property: \"og:locale\", content: \"en_US\" },\n { property: \"og:title\", content: \"QJumpers Recruitment\" },\n { property: \"og:description\", content: \"QJumpers Recruitment\" },\n { property: \"og:card\", content: \"summary\" },\n { property: \"og:site\", content: \"@QJumpers\" },\n { property: \"og:creator\", content: \"QJumpers\" },\n { property: \"og:image:width\", content: \"200\" },\n { property: \"og:image:height\", content: \"200\" },\n ],\n },\n },\n ...environment,\n};\n\nexport default configs;\n","export const ConstValues = {\n ReportType: {\n REPORTTYPE_CSV: 1,\n REPORTTYPE_DESIGNER: 2,\n },\n GSMReports: {\n CREDITUSED_REPORT: \"gsmcreditusedreport\",\n TRACKEMAIL_REPORT: \"trackemailreport\",\n PAYROLL_REPORT: \"ConfidentialInformation\",\n },\n Tags: {\n TAG_UNSUITABLE: \"unsuitable\",\n },\n TagTypes: {\n TalentPoolCandidate: 0,\n TalentPoolSearchAndMatchProfile: 1,\n },\n ApplicantSource: {\n TALENTPOOL: \"talentpool\",\n EMPLOYER: \"employer\",\n },\n DomainVerificationStatus: {\n PENDING: 0,\n FAILED: 1,\n VERIFIED: 2,\n },\n DomainEmailVerificationTypes: {\n EMAIL: 1,\n DOMAIN: 2,\n },\n LicenseType: {\n VOLUME: 0,\n SUBSCRIPTION: 1,\n },\n ProductCategory: {\n JOBBOARD: 1,\n SEARCHANDMATCH: 2,\n EMPLOYEEDOCUMENTS: 4,\n BAMBOOHR: 5,\n INTELLIHR: 6,\n },\n JobInvitationStatus: {\n NOT_SENT: 0,\n PENDING: 1,\n INVITED: 2,\n APPLIED: 3,\n },\n ModuleTypes: {\n SEARCHANDMATCH: 1,\n EMPLOYEEDOCUMENT: 2,\n BAMBOOHR: 3,\n INTELLIHR: 4,\n SMS: 5,\n },\n JobBoardConnectorType: {\n QJUMPERS: 0,\n EQUEST: 1,\n SEEK: 3,\n TRADEME: 4,\n DEFAULT: 10,\n },\n JobBoardBrandType: {\n UNKNOWN: 0,\n LOGO: 1,\n BANNER: 2,\n SQUARE: 3,\n TEMPLATE: 4,\n },\n LocationLevel: {\n TopLocation: 2,\n SubLocation: 3,\n Area: 4,\n State: 5,\n },\n AccountType: {\n CASUAL: 0,\n VOLUME: 1,\n PREPAID: 2,\n },\n JobBoardPackType: {\n DEFAULT: 0,\n FLEXIBLE: 1,\n BRANDED: 2,\n TRADEMEGOLD: 3,\n TRADEMESILVER: 4,\n TRADEMEBRONZE: 5,\n },\n Document: {\n DEFAULT_DOCUMENT_ID: \"00000000-0000-0000-0000-000000000000\",\n },\n applicationSubStateLables: {\n onboarding_offercreation: \"onboarding.offercreation\",\n onboarding_agreementsent: \"onboarding.agreementsent\",\n onboarding_contractreceived: \"onboarding.contractreceived\",\n onboarding_documentcompleted: \"onboarding.documentcompleted\",\n Contract_Compilation: \"Contract Compilation\",\n substatusactions: \"substatusactions\",\n hired_agreementsent: \"hired.agreementsent\",\n hired_contractreceived: \"hired.contractreceived\",\n hired_documentcompleted: \"hired.documentcompleted\",\n hired_contractcompilation: \"hired.contractcompilation\",\n onboarding_documentsending: \"onboarding.documentsending\",\n },\n SystemEmailType: {\n DEFAULT: 0,\n SendApplicationDetail: 23,\n },\n EmailNotifyStatus: {\n SEND: 1,\n NOTIFY: 2,\n DONE: 3,\n FORWARDDETAIL: 4,\n },\n NotificationStatus: {\n Undefined: 0,\n Notify: 1,\n DoNotNotify: 2,\n NotifyLater: 3,\n },\n QuestionTypes: {\n TEXT: \"0\",\n CHECKBOX: \"1\",\n RADIO: \"2\",\n DATE: \"3\",\n },\n ContractCompilationSubStatus: [\n {\n event: \"onboarding.agreementsentEvent\",\n option: \"Agreement Sent\",\n },\n ],\n ContractCompilationReceivedSubStatus: [\n {\n event: \"onboarding.contractreceivedEvent\",\n option: \"Agreement Received\",\n },\n ],\n JobBoardGeneral: {\n EMPTYGUID: \"00000000-0000-0000-0000-000000000000\",\n DRAFT: \"draft\",\n ACTIVE: \"active\",\n BULLETLENGTH: 80,\n MAXDAYSLISTING: 30,\n },\n PaymentMethod: {\n CREDITCARD: 0,\n INVOICE: 1,\n },\n LocationCodes: {\n AUSTRALIA: \"AU\",\n UNITEDKINGDOM: \"UK\",\n NEWZEALAND: \"NZ\",\n },\n LocationNames: {\n AUSTRALIA: \"Australia\",\n UK: \"UK\",\n LONDON: \"London\",\n IRELAND: \"Ireland\",\n },\n LocationEnums: {\n seekLocations: \"seekLocations\",\n seekStateLocations: \"seekStateLocations\",\n seekSubLocations: \"seekSubLocations\",\n seekAreas: \"seekAreas\",\n trademeLocations: \"trademeLocations\",\n trademeSubLocations: \"trademeSubLocations\",\n trademeAreas: \"trademeAreas\",\n },\n EnumDefinition: {\n displayName: \"displayName\",\n },\n EmailType: {\n UNKNOWN: 0,\n SHORTLIST: 1,\n INTERVIEW: 2,\n },\n ApplyProcess: {\n STANDARD: 0,\n BASIC: 1,\n },\n ApplicationStatus: {\n Default: 0,\n Pending: 1,\n SeekPending: 2,\n SeekCompleted: 3,\n Other: 4,\n MovedFrom: 5,\n MovedTo: 6,\n },\n GraphQL: {\n seekUrl: \"https://graphql.seek.com/graphql\",\n },\n AssessmentStatus: {\n Started: 0,\n InProgress: 1,\n OptedOut: 2,\n Completed: 3,\n Cancelled: 4,\n Error: 5,\n },\n JobBoardPublishedStatus: {\n DEFAULT: 0,\n PUBLISHED: 1,\n ERROR: 2,\n WITHDRAWN: 3,\n EXPIRED: 4,\n },\n EmailCategory: {\n INVITESTATE: \"invite\",\n GENERALSTATE: \"general\",\n REVIEWEMPDOCSSTATE: \"reviewempdocs\",\n ACKNOWLEDGEMENTSTANDARD: \"applicationacknowledgementstandard\",\n ACKNOWLEDGEMENTQUICK: \"applicationacknowledgementquick\",\n CONFIDENTIALANSWERSALERT: \"confidentialquestionnaire\",\n },\n HrIntegrationType: {\n NONE: 0,\n BAMBOOHR: 1,\n INTELLIHR: 2,\n BESTSTART: 3\n },\n ApplicationProcess: {\n RESUME_COMPULSORY: 1,\n BASIC_APPLY: 2,\n CONFIDENTIAL_INFO: 3,\n COVERLETTER_COMPULSORY: 4,\n },\n JobCurrentState: {\n DRAFT: \"draft\",\n ACTIVE: \"active\",\n ARCHIVE: \"archive\",\n },\n JobEditJobState: {\n CREATE: \"create\",\n DRAFT: \"draft\",\n EDIT: \"edit\",\n REOPEN: \"reopen\",\n UNKNOWN: \"unknown\",\n },\n JumpReadyCategories: {\n DEFAULT: 0,\n LESS_LIKELY: 1,\n MODERATE: 2,\n MOST_LIKELY: 3,\n },\n CountryCodes: {\n ANZ: \"ANZ\",\n AU: \"AU\",\n NZ: \"NZ\",\n US: \"US\",\n },\n SearchFilters: {\n DateBoundary: {\n Before: \"before\",\n Since: \"since\",\n },\n Keys: {\n Companies: \"companies\",\n JumpReadyCategory: \"jumpReadyCategory\",\n Keywords: \"keywords\",\n LastModifiedDate: \"last_modified_date\",\n Location: { Countries: \"countries\", Cities: \"cities\", Name: \"location\", States: \"states\" },\n Skills: \"skills\",\n SocialProfileLinkNames: \"profile_social_link_names\",\n Tags: \"tags\",\n Titles: \"titles\",\n Seniorities: \"seniorities\",\n },\n Recency: {\n Any: \"any\",\n Current: \"current\",\n Previous: \"previous\",\n },\n Tags: {\n Source: {\n Profile: \"profile\",\n Resume: \"resume\",\n },\n },\n },\n BundleStage: {\n HISTORYCHECK: 0,\n PAYPARITYCHECK: 1,\n SAFETYCHECK: 2,\n HIREDCHECK: 3,\n },\n};\n","import { usePost, useGet, usePut, usePostKeycloak, usePutKeycloak } from \"./useRequest\";\nimport { getCurrentEmployeeAuthorisationId } from \"utils/authHelper\";\nimport config from \"../constants/config\";\n\nexport const handleEmployeeFirstLogin = (userId) => {\n // if (!path) {\n // throw new Error(\"Path is required\");\n // }\n // let res = {};\n const response = usePost(\"/UserManagement/HandleEmployeeFirstLogin\", userId);\n return response;\n};\n\nexport const loadUsers = (getCurrentCompanyId) => {\n const path = \"/realms/qjumpers/qjumpers/companies/\" + getCurrentCompanyId + \"/users\";\n const response = useGet(path, \"KEYCLOAK\");\n return response;\n};\n\nexport const loadEmployees = (getCurrentCompanyId) => {\n const path = \"/realms/qjumpers/qjumpers/companies/\" + getCurrentCompanyId + \"/employees\";\n const response = useGet(path, \"KEYCLOAK\");\n return response;\n};\n\nexport const resentActivationEmail = (userId) => {\n const path = \"/UserManagement/\" + userId + \"/resendactivation\";\n const response = usePost(path);\n return response;\n};\n\nexport const addUser = (user, getCurrentCompanyId) => {\n user.companyId = getCurrentCompanyId;\n user.username = user.email;\n const redirectUrl = config.scheme + \"://\" + config.host;\n const path = `/realms/qjumpers/qjumpers/employees?redirectUri=${redirectUrl}&password=false`;\n const response = usePostKeycloak(path, user);\n return response;\n};\n\nexport const validateToken = (token) => {\n const path = \"/validate/token\";\n \n const response = usePost(path, { token: `${token}` });\n return response;\n};\n\nexport const saveUser = (user, getCurrentCompanyId) => {\n user.username = user.email;\n const path = \"/organisations/\" + getCurrentCompanyId + \"/employee/\";\n const response = usePut(path, user);\n return response;\n};\n\nexport const uploadCSV = (csvFile) => {\n const path = `/UserManagement/UsersCsv`;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = usePost(path, csvFile);\n return response;\n};\n\nexport const saveProfile = (user) => {\n const path = \"/realms/qjumpers/qjumpers/employees/\" + user.employeeId + \"/profile\";\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = usePutKeycloak(path, user);\n return response;\n};\n\nexport const getCurrentUser = (authorizationId = null) => {\n const path = `/realms/qjumpers/qjumpers/employees/${authorizationId ? authorizationId : getCurrentEmployeeAuthorisationId()}`;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = useGet(path, \"KEYCLOAK\");\n return response;\n};\n\nexport const loadEmployeesToShareSearch = (organisationId, isgsm) => {\n const path = \"/organisations/\" + organisationId + \"/gsm/users?isGsmOrganisation=\" + isgsm;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = useGet(path);\n return response;\n};\n\nexport function shareSearchWithUsers(orgId, searchData) {\n const path = `/organisations/${orgId}/gsm/shareglobalsearch`;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = usePost(path, searchData);\n return response;\n}\n","import { atom } from 'recoil';\n\nexport const currentOrganisationDetails = atom({\n key: \"currentOrganisationDetails\",\n});\n","import { selector } from \"recoil\";\nimport { currentOrganisationDetails } from \"./atom\";\n\nexport const setCurrentOrganisationDetails = selector({\n key: \"setCurrentOrganisationDetails\",\n set: ({ set }, currentCompany) => {\n set(currentOrganisationDetails, currentCompany);\n },\n});\n\nexport const getCurrentOrganisationDetails = selector({\n key: \"getCurrentOrganisationDetails\",\n get: ({ get }) => {\n return get(currentOrganisationDetails);\n },\n});\n","export function isLoaded(globalState) {\n return globalState.notes && globalState.notes.loaded;\n}\n\nexport const VIEW_START = \"app/notes/VIEW_START\";\nexport function viewStart(note) {\n return { type: VIEW_START, note };\n}\n\nexport const VIEW_STOP = \"app/notes/VIEW_STOP\";\nexport function viewStop() {\n return { type: VIEW_STOP };\n}\n\nexport const ADD_START = \"app/notes/ADD_START\";\nexport function addStart() {\n return { type: ADD_START };\n}\n\nexport const EDIT_START = \"app/notes/EDIT_START\";\nexport function editStart(id) {\n return { type: EDIT_START, id };\n}\n\nexport const FORM_CHANGE = \"app/notes/FORM_CHANGE\";\nexport function formChange(formData) {\n return { type: FORM_CHANGE, formData };\n}\n\nexport const FORM_STOP = \"app/notes/FORM_STOP\";\nexport function formStop(id) {\n return { type: FORM_STOP, id };\n}\n\nimport { usePost, useGet, usePut } from \"./useRequest\";\n\nexport const loadNotes = (note, noteTypeId = null) => {\n const path = \"/notes/\" + note.entityId + \"/\" + note.entityType + (noteTypeId ? \"?noteTypeId=\" + noteTypeId : \"\");\n const response = useGet(path);\n\n return response;\n};\n\nexport const addNote = (note) => {\n const path = \"/notes/\" + note.entityId + \"/\" + note.entityType;\n const response = usePost(path, note);\n return response;\n};\n\nexport const editNote = (note) => {\n const path = \"/notes/\" + note.entityId + \"/\" + note.entityType;\n const response = usePut(path, note);\n return response;\n};\n\nexport const loadNoteTypes = () => {\n const path = \"/notetypes\";\n const response = useGet(path);\n return response;\n};\n\nexport function loadEmailByNote(id) {\n const path = \"/notes/\" + id + \"/email\";\n const response = useGet(path);\n return response;\n}\n\nexport function loadViewMoreNote(id) {\n const path = \"/candidatescoredetails/\" + id;\n const response = useGet(path);\n return response;\n}\n\nexport const loadSearchEmailNotes = (profileId) => {\n const path = \"/emails/searchandmatchprofile/\" + profileId;\n const response = useGet(path);\n return response;\n};\n\nexport const loadTalentPoolEmailNotes = (candidateId) => {\n const path = \"/emails/talentpoolcandidate/\" + candidateId;\n const response = useGet(path);\n return response;\n};\n","import { useGet, usePost, usePut, useDelete } from \"./useRequest\";\n\nexport const loadDocumentCategoriesByOrg = (organisationId) => {\n const path = `/documentcategory/${organisationId}/all`;\n const response = useGet(path);\n return response;\n};\n\nexport const getDocumentCategory = (categoryId) => {\n const path = `/documentcategory/${categoryId}`;\n const response = useGet(path);\n return response;\n};\n\nexport const createDocumentCategory = (documentCategory) => {\n const path = `/documentcategory`;\n const data = documentCategory;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = usePost(path, data);\n return response;\n };\n\n export const updateDocumentCategory = (docCategoryId, documentCategory) => {\n const path = `/documentcategory/${docCategoryId}/update`;\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = usePut(path, documentCategory);\n return response;\n };\n\n export const deleteDocumentCategory = (docCategoryId) => {\n const path = `/documentcategory/${docCategoryId}/delete`;\n\n if (!path) {\n throw new Error(\"Path is required\");\n }\n const response = useDelete(path);\n return response;\n };","import { atom } from 'recoil';\n\nexport const companyDetailsState = atom({\n key: \"companyDetailsState\",\n});\n","import { selector } from \"recoil\";\nimport { companyDetailsState } from \"./atom\";\n\nexport const setcompanyDetails = selector({\n key: \"setcompanyDetails\",\n set: ({ set }, companyDetails) => {\n set(companyDetailsState, companyDetails);\n },\n});\n\nexport const getcompanyDetails = selector({\n key: \"getcompanyDetails\",\n get: ({ get }) => {\n return get(companyDetailsState);\n },\n});\n","import { atom } from 'recoil';\n\nexport const noteTypes = atom({\n key: \"noteTypes\",\n});\n\n","import { selector } from \"recoil\";\nimport { noteTypes } from \"./atom\";\n\nexport const setNoteTypes = selector({\n key: \"setNoteTypes\",\n set: ({ set }, noteTypesData) => {\n set(noteTypes, noteTypesData);\n },\n});\n\nexport const getNoteTypes = selector({\n key: \"getNoteTypes\",\n get: ({ get }) => {\n return get(noteTypes);\n },\n});","import { atom } from 'recoil';\n\nexport const documentCategories = atom({\n key: \"documentCategories\",\n});\n\n","import { selector } from \"recoil\";\nimport { documentCategories } from \"./atom\";\n\nexport const setDocumentCategories = selector({\n key: \"setDocumentCategories\",\n set: ({ set }, documentCategoriesData) => {\n set(documentCategories, documentCategoriesData);\n },\n});\n\nexport const getDocumentCategories = selector({\n key: \"getDocumentCategories\",\n get: ({ get }) => {\n return get(documentCategories);\n },\n});","export default __webpack_public_path__ + \"static/media/logo.8fb3cd2a.png\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"sweetAlert\":\"ErrorHandler_sweetAlert___dmBI\"};","import { atom } from 'recoil';\n\nexport const errorState = atom({\n key: \"errorState\",\n default:[]\n});\n"],"sourceRoot":""}