{"version":3,"sources":["images/logo-light-full.svg","../node_modules/moment/locale sync /^/.//.*$","constants/globalConfiguration.js","utils/appHelper.js","constants/actionTypes.js","providers/HistoryProvider.js","constants/regexes.js","providers/ReduxProvider/actions/userActions.js","providers/ApiProvider/index.js","utils/constants.js","providers/ReduxProvider/reducers/initialState.js","providers/ReduxProvider/reducers/index.js","providers/ReduxProvider/reducers/userReducer.js","providers/ReduxProvider/reducers/errorReducer.js","providers/ReduxProvider/reducers/uiReducer.js","providers/ReduxProvider/index.js","utils/styleUtils.js","providers/StyleProvider/theme.js","providers/StyleProvider/styleComponents.js","providers/StyleProvider/index.js","containers/NotSupportedBroswer.js","containers/Loading.js","components/styles.js","containers/BodyClass.js","images/logo-full.svg","layouts/FullPage.js","utils/translations.js","constants/errorCodesMap.js","utils/getErrorText.js","webpack:///./src/images/logo-light-full.svg?b86d","components/common/Logo.js","containers/LoginPage.js","providers/ApiProvider/authentication.js","containers/ForgotPasswordPage.js","utils/validation.js","containers/SignUpPage/validation.js","containers/SignUpPage/index.js","components/common/LottieFile.js","components/common/MessageView.js","components/common/ColorPicker.js","components/common/Switch.js","containers/WidgetConfigPage.js","containers/LoggedPage.js","containers/SuccessMessage.js","Routes.js","App.js","serviceWorker.js","index.js"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","CLIENT_VERSION","API_BUILD","API_BRANCH","API_COMMIT","getBaseUrl","url","concat","window","location","hostname","prefix","baseURL","hostnameParts","split","length","isOnCloud","TRANSLATION","CALENDAR","getApiUrl","baseUrl","DEVICE_TYPES","MOBILE","WEB","ADAPTER","CUSTOM_LOGO","loadingBar","require","showMessage","type","message","toastr","options","cases","CAPITALIZE","LOWERCASE","UPPERCASE","CAPITALIZE_SENTENCE","NONE","__","translationKey","sentenceCase","undefined","translationValue","i18next","store","_","isString","t","trim","toLowerCase","keySeparator","nsSeparator","replace","letter","toUpperCase","word","_word$","join","getAuthData","authObj","localStorage","getItem","JSON","parse","getApiHandler","_getAuthData","api","axios","create","config","tokenFromLocalStorage","token","defaults","headers","common","moment","utcOffset","interceptors","response","use","error","_error$config","_error$config$url","_error$config2","console","log","Promise","reject","done","hideErrorMessages","indexOf","method","data","err","link","logId","origin","status","details","JIRA_TASKS","addEventOpenModal","SET_HOME_URL","USER_LOGGING_IN","USER_LOGGED_IN","USER_LOGIN_ERROR","USER_LOGGED_OUT","USER_GOT_DATA","USER_GOT_ORDERTYPES","SET_BASE_URI","SET_ENTITY_NAME_FOR_SIGN_UP","THEME_SELECTED","CUSTOM_COLORS_SELECTED","LANGUAGE_SELECTED","GOT_ENTITY_SETTINGS","hashHistory","createRef","_ref","children","history","useHistory","useEffect","_jsx","_Fragment","REGEX_PHONE","REGEX_PHONE_PREFIX","REGEX_NAME","REGEX_USERNAME","REGEX_EMAIL","testRegex","regex","input","lastIndex","res","test","missingValues","regexCleanedUpForReplace","source","substr","Array","from","Set","RegExp","loginErrorAction","payload","constants","availableBehaviours","setDefAuthHeader","_getAuthData2","goToNextURL","nextUrl","match","URL","searchParams","set","toString","push","logout","removeItem","setTimeout","dispatch","setBaseURI","uri","setEntityNameForSignUp","getEntitySettings","entityId","get","then","getLanguages","getState","_config$prefix","base_URI","ui","baseURI","catch","getLanguagesWrapped","ApiContext","React","createContext","withRouter","props","useSelector","state","_state$ui","_state$user","_state$user$auth","user","auth","search","entityName","Provider","value","THEME_CLASSIC","THEME_DARK","THEME_LIGHT","THEME_CUSTOM","isLoading","reports","views","orderGroups","enumValues","errors","loginError","menu","theme","language","customColors","primary","secondary","tertiary","remoteSystems","entityNameForSignUp","entities","searchOrganisationsForm","searchOrganisationsResults","import","reportData","selectedTemplateRights","rootReducer","combineReducers","arguments","initialState","actions","_objectSpread","orderTypes","rights","objectAssign","homeURL","entitySettings","lang","availableLanguages","form","reduxFormReducer","createStore","compose","applyMiddleware","thunk","isLight","color","r","g","b","slice","Math","sqrt","baseColors","black","gray","white","text","grey","lightGray","blue","red","classicTheme","colors","Button","styled","button","_templateObject","_taggedTemplateLiteral","ThemeWrapper","div","_templateObject2","Logo","_templateObject3","LogoText","_templateObject4","RadioButtonGroup","Radio","Group","_templateObject5","GlobalStyle","createGlobalStyle","_jsxs","ThemeProvider","Title","Typography","Text","LogoSrc","supportedBrowsers","src","name","browser","style","background","className","Image","width","textDecoration","href","display","textAlign","alignItems","margin","_ref2","marginRight","marginLeft","target","format","Loading","_React$Component","_inherits","_super","_createSuper","_classCallCheck","apply","_createClass","key","Loader","loaded","Component","FullHeight","BodyClass","_this","call","queryString","_this$props","this","init","lng","resources","en","translation","fallbackLng","setState","prevProps","prevState","_this2","_this$props2","updateLanguages","setLanguage","languageCodes","l","languageCode","storageLanguage","navigatorLanguage","navigator","stringify","includes","find","lc","substring","responseJson","keyValues","newKey","_defineProperty","assign","_toConsumableArray","replaceAll","loading","defaultProps","layout","connect","_defs","_g","_rect","_g2","_rect2","_g3","setItem","locale","getUserOrderTypes","setTheme","setCustomColors","setHomeUrl","allow","S","T","login","username","password","badCredentials","userNotYetActive","userNoLongerActive","selectEntity","signUp","registrationNotEnabled","requiredField","minLength","maxLength","illegalChars","invalidInput","invalidPhoneNumber","invalidPrefix","invalidEmail","invalidDomain","goBackToLogin","passwordsMustMatch","forgotPassword","requestPasswordReset","newPassword","confirmPassword","logoAddedCorrectly","logoRemovedCorrectly","pinnedViews","pinnedReports","openAttributesSelection","dashboardName","loginPage","autoLogin","autoLoginDisabledInfo","messagePage","userSelfRegistration","userSelfRegistrationSub","widgetSettings","widgetSettingsSub","dashboardsConfiguration","dashboardsConfigurationSub","instanceConfigurations","instanceConfigurationsSub","selfRegistration","targetUserGroups","targetUserRoles","selectTargetGroups","selectTargetGroupRoles","allowedDomains","noEntryAddedYet","emailVerification","registrationBehaviour","successMessage","checkYourEmailMessage","greetingsMessage","registrationFormFields","lastUpdateDateTime","max","maxDef","min","chooseFieldsValidationError","viewPropertiesValidationError","userEmailAlreadyExists","back","next","or","default","confirm","webApp","mobileApp","getTheApp","edit","save","remove","upload","uploadLogo","pageSize","unauthorized","unauthorizedExtended","unknownError","errorCodesMap","_excluded","_extends","bind","i","prototype","hasOwnProperty","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgLogoFull","svgRef","title","titleId","xmlns","xmlnsXlink","viewBox","ref","transform","y","height","d","x","ForwardRef","SvgLogoLightFull","DEFAULT_LOGO_URL","light","_useState","useState","_useState2","_slicedToArray","logoUrl","setLogoUrl","logoImage","systemConfiguration","forEach","c","parseInt","head","DefaultLogoLight","alt","DefaultLogo","Link","to","textCommons","getErrorText","post","values","tryLogin","_error$response","_error$response$data","_data$nextUrl","_data$nextUrl2","_data$nextUrl3","editLoginError","showSignUp","setShowSignUp","_state$ui2","_state$ui3","ERROR","Redirect","Gutter","bottom","Auth","LoginForm","handleSubmit","signUpUrl","forgotPasswordRequest","tryForgotPassword","ForgotPasswordForm","yup","required","number","createError","path","cleanedValue","isAValidName","missingNameChars","isEmpty","isAValidUsername","missingUsernameChars","matches","domains","some","endsWith","signupValidationSchema","fields","allowedEmailDomains","formValidationSchema","destination","schema","getSignupInputValidationSchema","shape","baseSchema","V","nullable","signUpError","signUpRequest","entity","onSuccessfulSignUp","hasLogin","trySignUp","_response$data","authData","_ref$nextUrl","handleStoreAuthToken","setIsLoading","_useState3","_useState4","setEntity","params","_response$data2","userRegistration","Row","selfRegistrationEnabled","center","SignUpForm","showBackUrl","backUrl","validationSchema","level","LottieFile","lottieOptions","loop","autoplay","animationData","file","rendererSettings","preserveAspectRatio","pointerEvents","Lottie","isClickToPauseDisabled","PropTypes","string","isRequired","bool","MessageImg","CheckCircleTwoTone","twoToneColor","CloseCircleTwoTone","lottieWidget1","lottieWidget2","MessageView","marginTop","Col","span","offset","strong","subtitle","ColorPicker","onChange","Popover","content","ChromePicker","hex","trigger","backgroundColor","any","func","HorizontalSwitch","htmlFor","float","Switch","checked","Content","Layout","Option","Select","updateBaseURI","_entitySettings$userR","preview","setPreview","widget","setWidget","_useState5","_useState6","showModal","setShowModal","_useState7","_useState8","setEntitySettings","_useState9","_useState10","availableEntities","setAvailableEntities","_useState11","_useState12","update","setUpdate","_useState13","_useState14","showCustomSettings","setShowCustomSettings","_useState15","_useState16","showLanguages","_Form$useForm","Form","useForm","getAvailableCompanies","obj","oldKey","renameProp","xs","sm","md","lg","xl","xxl","padding","flexDirection","process","onFinish","resource","pathname","languageAuto","widgetOptions","iFrame","onValuesChange","changedValues","allValues","setFieldsValue","initialValues","Item","label","rules","Input","onBlur","placeholder","showSearch","filterOption","option","Divider","compact","hasFeedback","InputNumber","step","flex","tooltip","onSelect","defaultValue","noStyle","shouldUpdate","prevValues","currentValues","getFieldValue","validator","htmlType","justifyContent","paddingLeft","verticalAlign","Modal","visible","closable","onOk","cancelButtonProps","copyable","Iframe","position","onClick","getGuiUser","ordersCount","setOrdersCount","firstName","Spin","startsWith","consolidateURL","successfulSignUpPageConfiguration","SuccessMessage","backText","CustomRoute","Route","render","FullPage","Routes","parent","exact","LoginPage","LoggedPage","ForgotPasswordPage","SignUpPage","component","WidgetConfigPage","userLanguage","App","detect","NotSupportedBroswer","Router","ReduxProvider","ApiProvider","StyleProvider","HistoryProvider","Boolean","ReactDOM","StrictMode","document","getElementById","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.49137a55.chunk.js","sourcesContent":["export default __webpack_public_path__ + \"static/media/logo-light-full.3f0374df.svg\";","var map = {\n\t\"./af\": 667,\n\t\"./af.js\": 667,\n\t\"./ar\": 668,\n\t\"./ar-dz\": 669,\n\t\"./ar-dz.js\": 669,\n\t\"./ar-kw\": 670,\n\t\"./ar-kw.js\": 670,\n\t\"./ar-ly\": 671,\n\t\"./ar-ly.js\": 671,\n\t\"./ar-ma\": 672,\n\t\"./ar-ma.js\": 672,\n\t\"./ar-sa\": 673,\n\t\"./ar-sa.js\": 673,\n\t\"./ar-tn\": 674,\n\t\"./ar-tn.js\": 674,\n\t\"./ar.js\": 668,\n\t\"./az\": 675,\n\t\"./az.js\": 675,\n\t\"./be\": 676,\n\t\"./be.js\": 676,\n\t\"./bg\": 677,\n\t\"./bg.js\": 677,\n\t\"./bm\": 678,\n\t\"./bm.js\": 678,\n\t\"./bn\": 679,\n\t\"./bn-bd\": 680,\n\t\"./bn-bd.js\": 680,\n\t\"./bn.js\": 679,\n\t\"./bo\": 681,\n\t\"./bo.js\": 681,\n\t\"./br\": 682,\n\t\"./br.js\": 682,\n\t\"./bs\": 683,\n\t\"./bs.js\": 683,\n\t\"./ca\": 684,\n\t\"./ca.js\": 684,\n\t\"./cs\": 685,\n\t\"./cs.js\": 685,\n\t\"./cv\": 686,\n\t\"./cv.js\": 686,\n\t\"./cy\": 687,\n\t\"./cy.js\": 687,\n\t\"./da\": 688,\n\t\"./da.js\": 688,\n\t\"./de\": 689,\n\t\"./de-at\": 690,\n\t\"./de-at.js\": 690,\n\t\"./de-ch\": 691,\n\t\"./de-ch.js\": 691,\n\t\"./de.js\": 689,\n\t\"./dv\": 692,\n\t\"./dv.js\": 692,\n\t\"./el\": 693,\n\t\"./el.js\": 693,\n\t\"./en-au\": 694,\n\t\"./en-au.js\": 694,\n\t\"./en-ca\": 695,\n\t\"./en-ca.js\": 695,\n\t\"./en-gb\": 696,\n\t\"./en-gb.js\": 696,\n\t\"./en-ie\": 697,\n\t\"./en-ie.js\": 697,\n\t\"./en-il\": 698,\n\t\"./en-il.js\": 698,\n\t\"./en-in\": 699,\n\t\"./en-in.js\": 699,\n\t\"./en-nz\": 700,\n\t\"./en-nz.js\": 700,\n\t\"./en-sg\": 701,\n\t\"./en-sg.js\": 701,\n\t\"./eo\": 702,\n\t\"./eo.js\": 702,\n\t\"./es\": 703,\n\t\"./es-do\": 704,\n\t\"./es-do.js\": 704,\n\t\"./es-mx\": 705,\n\t\"./es-mx.js\": 705,\n\t\"./es-us\": 706,\n\t\"./es-us.js\": 706,\n\t\"./es.js\": 703,\n\t\"./et\": 707,\n\t\"./et.js\": 707,\n\t\"./eu\": 708,\n\t\"./eu.js\": 708,\n\t\"./fa\": 709,\n\t\"./fa.js\": 709,\n\t\"./fi\": 710,\n\t\"./fi.js\": 710,\n\t\"./fil\": 711,\n\t\"./fil.js\": 711,\n\t\"./fo\": 712,\n\t\"./fo.js\": 712,\n\t\"./fr\": 713,\n\t\"./fr-ca\": 714,\n\t\"./fr-ca.js\": 714,\n\t\"./fr-ch\": 715,\n\t\"./fr-ch.js\": 715,\n\t\"./fr.js\": 713,\n\t\"./fy\": 716,\n\t\"./fy.js\": 716,\n\t\"./ga\": 717,\n\t\"./ga.js\": 717,\n\t\"./gd\": 718,\n\t\"./gd.js\": 718,\n\t\"./gl\": 719,\n\t\"./gl.js\": 719,\n\t\"./gom-deva\": 720,\n\t\"./gom-deva.js\": 720,\n\t\"./gom-latn\": 721,\n\t\"./gom-latn.js\": 721,\n\t\"./gu\": 722,\n\t\"./gu.js\": 722,\n\t\"./he\": 723,\n\t\"./he.js\": 723,\n\t\"./hi\": 724,\n\t\"./hi.js\": 724,\n\t\"./hr\": 725,\n\t\"./hr.js\": 725,\n\t\"./hu\": 726,\n\t\"./hu.js\": 726,\n\t\"./hy-am\": 727,\n\t\"./hy-am.js\": 727,\n\t\"./id\": 728,\n\t\"./id.js\": 728,\n\t\"./is\": 729,\n\t\"./is.js\": 729,\n\t\"./it\": 730,\n\t\"./it-ch\": 731,\n\t\"./it-ch.js\": 731,\n\t\"./it.js\": 730,\n\t\"./ja\": 732,\n\t\"./ja.js\": 732,\n\t\"./jv\": 733,\n\t\"./jv.js\": 733,\n\t\"./ka\": 734,\n\t\"./ka.js\": 734,\n\t\"./kk\": 735,\n\t\"./kk.js\": 735,\n\t\"./km\": 736,\n\t\"./km.js\": 736,\n\t\"./kn\": 737,\n\t\"./kn.js\": 737,\n\t\"./ko\": 738,\n\t\"./ko.js\": 738,\n\t\"./ku\": 739,\n\t\"./ku.js\": 739,\n\t\"./ky\": 740,\n\t\"./ky.js\": 740,\n\t\"./lb\": 741,\n\t\"./lb.js\": 741,\n\t\"./lo\": 742,\n\t\"./lo.js\": 742,\n\t\"./lt\": 743,\n\t\"./lt.js\": 743,\n\t\"./lv\": 744,\n\t\"./lv.js\": 744,\n\t\"./me\": 745,\n\t\"./me.js\": 745,\n\t\"./mi\": 746,\n\t\"./mi.js\": 746,\n\t\"./mk\": 747,\n\t\"./mk.js\": 747,\n\t\"./ml\": 748,\n\t\"./ml.js\": 748,\n\t\"./mn\": 749,\n\t\"./mn.js\": 749,\n\t\"./mr\": 750,\n\t\"./mr.js\": 750,\n\t\"./ms\": 751,\n\t\"./ms-my\": 752,\n\t\"./ms-my.js\": 752,\n\t\"./ms.js\": 751,\n\t\"./mt\": 753,\n\t\"./mt.js\": 753,\n\t\"./my\": 754,\n\t\"./my.js\": 754,\n\t\"./nb\": 755,\n\t\"./nb.js\": 755,\n\t\"./ne\": 756,\n\t\"./ne.js\": 756,\n\t\"./nl\": 757,\n\t\"./nl-be\": 758,\n\t\"./nl-be.js\": 758,\n\t\"./nl.js\": 757,\n\t\"./nn\": 759,\n\t\"./nn.js\": 759,\n\t\"./oc-lnc\": 760,\n\t\"./oc-lnc.js\": 760,\n\t\"./pa-in\": 761,\n\t\"./pa-in.js\": 761,\n\t\"./pl\": 762,\n\t\"./pl.js\": 762,\n\t\"./pt\": 763,\n\t\"./pt-br\": 764,\n\t\"./pt-br.js\": 764,\n\t\"./pt.js\": 763,\n\t\"./ro\": 765,\n\t\"./ro.js\": 765,\n\t\"./ru\": 766,\n\t\"./ru.js\": 766,\n\t\"./sd\": 767,\n\t\"./sd.js\": 767,\n\t\"./se\": 768,\n\t\"./se.js\": 768,\n\t\"./si\": 769,\n\t\"./si.js\": 769,\n\t\"./sk\": 770,\n\t\"./sk.js\": 770,\n\t\"./sl\": 771,\n\t\"./sl.js\": 771,\n\t\"./sq\": 772,\n\t\"./sq.js\": 772,\n\t\"./sr\": 773,\n\t\"./sr-cyrl\": 774,\n\t\"./sr-cyrl.js\": 774,\n\t\"./sr.js\": 773,\n\t\"./ss\": 775,\n\t\"./ss.js\": 775,\n\t\"./sv\": 776,\n\t\"./sv.js\": 776,\n\t\"./sw\": 777,\n\t\"./sw.js\": 777,\n\t\"./ta\": 778,\n\t\"./ta.js\": 778,\n\t\"./te\": 779,\n\t\"./te.js\": 779,\n\t\"./tet\": 780,\n\t\"./tet.js\": 780,\n\t\"./tg\": 781,\n\t\"./tg.js\": 781,\n\t\"./th\": 782,\n\t\"./th.js\": 782,\n\t\"./tk\": 783,\n\t\"./tk.js\": 783,\n\t\"./tl-ph\": 784,\n\t\"./tl-ph.js\": 784,\n\t\"./tlh\": 785,\n\t\"./tlh.js\": 785,\n\t\"./tr\": 786,\n\t\"./tr.js\": 786,\n\t\"./tzl\": 787,\n\t\"./tzl.js\": 787,\n\t\"./tzm\": 788,\n\t\"./tzm-latn\": 789,\n\t\"./tzm-latn.js\": 789,\n\t\"./tzm.js\": 788,\n\t\"./ug-cn\": 790,\n\t\"./ug-cn.js\": 790,\n\t\"./uk\": 791,\n\t\"./uk.js\": 791,\n\t\"./ur\": 792,\n\t\"./ur.js\": 792,\n\t\"./uz\": 793,\n\t\"./uz-latn\": 794,\n\t\"./uz-latn.js\": 794,\n\t\"./uz.js\": 793,\n\t\"./vi\": 795,\n\t\"./vi.js\": 795,\n\t\"./x-pseudo\": 796,\n\t\"./x-pseudo.js\": 796,\n\t\"./yo\": 797,\n\t\"./yo.js\": 797,\n\t\"./zh-cn\": 798,\n\t\"./zh-cn.js\": 798,\n\t\"./zh-hk\": 799,\n\t\"./zh-hk.js\": 799,\n\t\"./zh-mo\": 800,\n\t\"./zh-mo.js\": 800,\n\t\"./zh-tw\": 801,\n\t\"./zh-tw.js\": 801\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 1200;","import {BUILD_VERSION as _buildVersion} from './server-variables';\n\nexport const API_VERSION = 'v1.0';\nexport const BUILD_VERSION = _buildVersion;\nexport const CLIENT_VERSION = '3.0.0 b:#' + BUILD_VERSION;\n\nexport function setApiRelease(headers) {\n API_BUILD = headers[\"x-api-build\"];\n API_BRANCH = headers[\"x-api-branch\"];\n API_COMMIT = headers[\"x-api-commit\"];\n API_RELEASE_STRING = \"#\" + API_BUILD +\n \" Branch: \" + API_BRANCH +\n \" Commit:\" + API_COMMIT;\n}\n\nexport let API_RELEASE_STRING = '';\nexport let API_BUILD = '';\nexport let API_BRANCH = '';\nexport let API_COMMIT = '';\n\nexport const getBaseUrl = (url) => {\n if (url == null) {\n if (typeof window !== \"undefined\" && window.location.hostname === 'localhost' || window.location.hostname === '127.0.0.1' || window.location.hostname === '10.10.110.51') {\n return 'https://sig-integration.godoo.ch';\n }\n } else {\n return `https://${url}`;\n }\n};\n\nconst isOnCloud = (baseURL) => {\n if (!baseURL || baseURL === \"localhost\") {\n return false;\n }\n const hostnameParts = baseURL.split(\".\");\n if (hostnameParts.length < 2) {\n return false;\n }\n return hostnameParts[hostnameParts.length - 2] === \"godoo\" && hostnameParts[hostnameParts.length - 1] === \"app\"\n}\n\nexport const prefix = (baseURL) => {\n if (isOnCloud(baseURL))\n return { TRANSLATION: '', CALENDAR: '' }\n \n return { TRANSLATION: '/translation', CALENDAR: '/calendar' }\n};\n\nexport const getApiUrl = (url) => {\n const baseUrl = getBaseUrl(url);\n return `${baseUrl}/${API_VERSION}`;\n};\nexport const HOME_URL = '/';\n\nexport const entityTypes = {\n \"organisation\": {\n name: \"Organisation\",\n alias: \"organisation\",\n },\n \"user_group\": {\n name: \"User Group\",\n alias: \"userGroup\",\n },\n};\n\nexport const DEVICE_TYPES = {\n MOBILE: 'mobile',\n WEB: 'webui',\n ADAPTER: 'adapter',\n};\n\nexport const CUSTOM_LOGO = 'customLogo';\nexport const CUSTOM_LOGO_NAME = 'logo-full.png';\n","import * as config from '../constants/globalConfiguration';\nimport toastr from 'toastr';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport axios from 'axios';\n\nimport i18next from 'i18next';\n\nconst loadingBar = require('nprogress');\n\ntoastr.options = {\n \"closeButton\": true,\n \"debug\": false,\n \"newestOnTop\": false,\n \"progressBar\": true,\n \"positionClass\": \"toast-top-right\",\n \"preventDuplicates\": false,\n \"onclick\": null,\n \"showDuration\": \"200\",\n \"hideDuration\": \"3000\",\n \"timeOut\": \"9000\",\n \"extendedTimeOut\": \"2500\",\n \"showEasing\": \"swing\",\n \"hideEasing\": \"linear\",\n \"showMethod\": \"fadeIn\",\n \"tapToDismiss\": false,\n \"hideMethod\": \"fadeOut\",\n \"showAnimation\": \"animated bounceIn\", // or other animations from animate.css\n \"hideAnimation\": \"animated bounceOut\"\n};\n\nexport function showMessage(type, message) {\n toastr[type](message);\n}\n\n\nexport const cases = {\n CAPITALIZE: \"capitalise\", //Aaa Bbb. Ccc\n LOWERCASE: \"lowercase\", //aaa bbb. ccc\n UPPERCASE: \"uppercase\", //AAA BBB. CCC\n CAPITALIZE_SENTENCE: \"capitalize_sentence\", //Aaa bbb. Ccc\n NONE: \"none\",\n}\n\nexport function __(translationKey, sentenceCase) {\n\n if (translationKey === undefined || translationKey === null) {\n return '.'\n }\n\n let translationValue = i18next.store && _.isString(translationKey) ? i18next.t(translationKey.trim().toLowerCase(), translationKey, { keySeparator: false, nsSeparator: '' }) : translationKey\n\n switch (sentenceCase) {\n case cases.CAPITALIZE:\n return translationValue.replace(/(^\\w{1})|(\\s+\\w{1})/g, letter => letter.toUpperCase());\n case cases.LOWERCASE:\n return translationValue.toLowerCase();\n case cases.UPPERCASE:\n return translationValue.toUpperCase();\n case cases.NONE:\n return translationValue\n default:\n case cases.CAPITALIZE_SENTENCE:\n let sentenceArray = translationValue.split('.')\n let capsArray = sentenceArray.map(word => {\n return word.replace(word[0], word[0]?.toUpperCase() || \"\");\n });\n return capsArray.join('.');\n }\n\n}\n\nexport function getAuthData() {\n let authObj = localStorage.getItem('auth');\n if (authObj) {\n return JSON.parse(authObj);\n }\n return null;\n}\n\nexport function renameProp(obj, oldKey, newKey) {\n obj[newKey] = obj[oldKey];\n delete obj[oldKey];\n}\n\n\nexport function getApiHandler(url) {\n const api = axios.create({\n baseURL: config.getApiUrl(url)\n });\n\n const tokenFromLocalStorage = getAuthData()?.token\n\n if (tokenFromLocalStorage) {\n api.defaults.headers.common['x-auth-token'] = tokenFromLocalStorage\n }\n\n // Set other needed Headers\n api.defaults.headers.common['Client-Type'] = config.DEVICE_TYPES.WEB;\n api.defaults.headers.common['Content-Type'] = 'application/json';\n api.defaults.headers.common['Client-Version'] = config.CLIENT_VERSION;\n api.defaults.headers.common['TimeZoneOffset'] = moment().utcOffset();\n api.defaults.headers.common['Language'] = window.localStorage.getItem('lang')\n\n api.interceptors.response.use(function (response) {\n config.setApiRelease(response.headers);\n return response;\n }, function (error) {\n console.log({ error })\n if (error.message === \"Network Error\") {\n return Promise.reject(\"logout\");\n }\n\n loadingBar.done();\n if (error.message === 'canceled') {\n return;\n }\n\n // failed get api response from calendar, right now doesnt displays error messages\n const hideErrorMessages = (error?.config?.url?.indexOf(\"calendar\") > -1) && (error?.config?.method === \"get\")\n // Do something with response error\n if (typeof error.response !== 'undefined' && !hideErrorMessages) {\n if (typeof error.response.data === 'undefined') {\n showMessage('error', '' + 'Error:' + '
' + error);\n } else {\n let err = error.response.data;\n let link = '';\n if (err.logId != '') {\n link = 'LogId: ' + err.logId + '';\n }\n let message = err.message ? '
' + err.message : '';\n\n // Validation error\n if (error.response.status == 400) {\n message = err.details;\n }\n\n showMessage('error', '' + 'Error ' + err.code + '.' + '' + message + '
' + link + '
' + '' + 'Give us a FeedBack' + '');\n window.JIRA_TASKS && window.JIRA_TASKS.addEventOpenModal(err.logId);\n }\n }\n\n\n return Promise.reject(error);\n });\n\n return api;\n}\n\n\n","// User\nexport const SET_HOME_URL = 'SET_HOME_URL';\nexport const USER_LOGGING_IN = 'USER_LOGGING_IN';\nexport const USER_LOGGED_IN = 'USER_LOGGED_IN';\nexport const USER_LOGIN_ERROR = 'USER_LOGIN_ERROR';\nexport const USER_LOGGED_OUT = 'USER_LOGGED_OUT';\nexport const USER_GET_DATA_ERROR = 'USER_GET_DATA_ERROR';\nexport const USER_GOT_DATA = 'USER_GOT_DATA';\nexport const USER_GOT_REPORTS = 'USER_GOT_REPORTS';\nexport const USER_GOT_ORDERTYPES = 'USER_GOT_ORDERTYPES';\nexport const USER_GOT_VIEWS = 'USER_GOT_VIEWS';\nexport const USER_GOT_ORDERGROUPS = 'USER_GOT_ORDERGROUPS';\nexport const USER_DELETED = 'USER_DELETED';\nexport const USER_GOT_RIGHTS = 'USER_GOT_RIGHTS';\nexport const USER_SIGN_UP_START = 'USER_SIGN_UP_START';\nexport const USER_SIGN_UP_FINISHED = 'USER_SIGN_UP_FINISHED';\nexport const USER_SIGN_UP_ERROR = 'USER_SIGN_UP_ERROR';\nexport const USER_FORGOT_PASSWORD_REQUEST_START = 'USER_FORGOT_PASSWORD_REQUEST_START';\nexport const USER_FORGOT_PASSWORD_REQUEST_FINISHED = 'USER_FORGOT_PASSWORD_REQUEST_FINISHED';\nexport const USER_FORGOT_PASSWORD_REQUEST_ERROR = 'USER_FORGOT_PASSWORD_REQUEST_ERROR';\n\n// api\nexport const SET_BASE_URI = 'SET_BASE_URI';\nexport const SET_ENTITY_NAME_FOR_SIGN_UP = 'SET_ENTITY_NAME_FOR_SIGN_UP';\n\n\n// ui\nexport const THEME_SELECTED = 'THEME_SELECTED';\nexport const CUSTOM_COLORS_SELECTED = 'CUSTOM_COLORS_SELECTED';\nexport const LANGUAGE_SELECTED = 'LANGUAGE_SELECTED';\nexport const LANGUAGE_AVAILABLE = 'LANGUAGE_AVAILABLE';\n\n// Remote systems\nexport const REMOTE_SYSTEMS_GOT = 'REMOTE_SYSTEMS_GOT';\nexport const GOT_ENTITY_SETTINGS = 'GOT_ENTITY_SETTINGS';\nexport const GOT_SYSTEM_SETTINGS = 'GOT_SYSTEM_SETTINGS';\n","import React,{ createRef, useEffect } from 'react'\n\nimport { useHistory } from 'react-router-dom'\n\nexport let hashHistory = createRef();\n\nexport default ({ children }) => {\n let history = useHistory();\n useEffect(() => {\n if(!history) return;\n hashHistory = history\n\n }, [history]);\n\n return <>{children}\n}","//\\p{L}\nexport const REGEX_PHONE = /^(00|\\+[1-9]{0,2})([0-9][\\s]*){9,16}$/i\nexport const REGEX_PHONE_PREFIX = /^(00|\\+[1-9]{0,2})([0-9]*)$/i\nexport const REGEX_NAME = /^([\\p{L}\"_0-9'&-]){1,64}$/gui\nexport const REGEX_USERNAME = /^[\\p{L}0-9]([._&-]?[\\p{L}0-9]){0,31}$/gui\n//const allUnicodeLetters = \"A-Za-z\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\"\n//export const REGEX_USERNAME_WITHOUT_UNICODE = new RegExp(\"[\" + allUnicodeLetters.source + \"0-9]([._&-]?[\" + allUnicodeLetters.source + \"0-9]){0,31}\", \"gi\") //This allows to have 'gi' anchors instead of 'gui'\nexport const REGEX_EMAIL = /^([^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+|\\x22([^\\x0d\\x22\\x5c\\x80-\\xff]|\\x5c[\\x00-\\x7f])*\\x22)(\\x2e([^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+|\\x22([^\\x0d\\x22\\x5c\\x80-\\xff]|\\x5c[\\x00-\\x7f])*\\x22))*\\x40([^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+|\\x5b([^\\x0d\\x5b-\\x5d\\x80-\\xff]|\\x5c[\\x00-\\x7f])*\\x5d)(\\x2e([^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+|\\x5b([^\\x0d\\x5b-\\x5d\\x80-\\xff]|\\x5c[\\x00-\\x7f])*\\x5d))*$/\n\nexport const isAValidEmail = (input) => testRegex(REGEX_EMAIL, input);\nexport const isAValidUsername = (input) => testRegex(REGEX_USERNAME, input);\nexport const isAValidName = (input) => testRegex(REGEX_NAME, input);\nexport const isAValidPhone = (input) => testRegex(REGEX_PHONE, input);\nexport const isAValidPhonePrefix = (input) => testRegex(REGEX_PHONE_PREFIX, input);\n\nexport const missingUsernameChars = (input) => missingValues(REGEX_USERNAME, input);\nexport const missingNameChars = (input) => missingValues(REGEX_NAME, input);\n\nexport const testRegex = (regex, input) => {\n regex.lastIndex = 0;\n const res = regex.test(input);\n regex.lastIndex = 0;\n return res;\n}\n\nexport const missingValues = (regex, input) => {\n let regexCleanedUpForReplace = regex.source;\n\n if (regexCleanedUpForReplace && regexCleanedUpForReplace[0] === \"^\" && regexCleanedUpForReplace[regexCleanedUpForReplace.length - 1] === \"$\") {\n regexCleanedUpForReplace = regexCleanedUpForReplace.substr(1, regexCleanedUpForReplace.length - 2);\n }\n\n return Array.from(new Set(input.replace(new RegExp(regexCleanedUpForReplace, \"gui\"), '') || ''))\n}\n\n\nexport const urlAny = 'http[s]?:\\\\/\\\\/.*'\nexport const urlGodoo = 'http[s]?:\\\\/\\\\/.*.?godoo.ch\\\\/?.*'\nexport const urlLocalhost = 'http[s]?:\\\\/\\\\/localhost\\\\/?.*'\n","import * as constants from '../../../constants/actionTypes';\nimport * as config from '../../../constants/globalConfiguration';\nimport { hashHistory } from '../../HistoryProvider';\nimport { __, getApiHandler, getAuthData, showMessage } from '../../../utils/appHelper';\nimport moment from 'moment';\n\nimport { api } from '../../ApiProvider'\nimport { urlAny, urlGodoo, urlLocalhost } from '../../../constants/regexes';\n\n\nexport const setHomeUrl = (payload) => ({\n type: constants.SET_HOME_URL,\n payload\n})\n\nexport const loginErrorAction = (payload) => ({\n type: constants.USER_LOGIN_ERROR,\n payload\n})\n\nexport const loginErrorActionCreator = (payload) => (dispatch) => {\n dispatch(loginErrorAction(payload))\n}\n\nexport function login(data) {\n return function (dispatch) {\n dispatch({\n type: constants.USER_LOGGING_IN\n });\n return tryLogin(data)\n .then(\n response => {\n localStorage.setItem('auth', JSON.stringify({ token: response.data.token }));\n dispatch({\n type: constants.USER_LOGGED_IN,\n payload: response.data\n });\n },\n error => dispatch(\n loginErrorAction(error.response?.data?.message))\n )\n .then(() => {\n\n // Set user token an default header.\n const token = getAuthData()?.token\n\n if (token) {\n api.defaults.headers.common['x-auth-token'] = token\n }\n\n if (data?.nextUrl === '/') {\n data.nextUrl = config.HOME_URL;\n\n }\n // to nextUrl\n if (data?.nextUrl?.match(\"http[s]?:\\\\/\\\\/.*\")) {\n if (data?.nextUrl?.match(\"http[s]?:\\\\/\\\\/.*.?godoo.ch\\\\/?.*\") || data?.nextUrl?.match(\"http[s]?:\\\\/\\\\/localhost\\\\/?.*\")) {\n let url = new URL(data.nextUrl);\n url.searchParams.set(\"token\", getAuthData().token);\n window.location = url.toString();\n } else {\n window.location = data.nextUrl;\n }\n }\n });\n };\n}\n\nexport function forgotPasswordRequest(data) {\n return function (dispatch) {\n dispatch({\n type: constants.USER_FORGOT_PASSWORD_REQUEST_START\n });\n return tryForgotPassword(data)\n .then(\n response => {\n showMessage('success', __('Request sent successfully. Please check your email'));\n dispatch({\n type: constants.USER_FORGOT_PASSWORD_REQUEST_FINISHED,\n payload: response.data\n });\n\n },\n error => dispatch({\n type: constants.USER_FORGOT_PASSWORD_REQUEST_ERROR,\n payload: error.response.data.message\n }),\n )\n .then(() => {\n hashHistory.push('/login');\n });\n };\n}\n\nexport const availableBehaviours = {\n REDIRECT_TO_LOGIN_PAGE: 'REDIRECT_TO_LOGIN_PAGE',\n AUTOMATIC_LOGIN: 'AUTOMATIC_LOGIN',\n REDIRECT_TO_SUCCESSFUL_SIGN_UP_PAGE: 'REDIRECT_TO_SUCCESSFUL_SIGN_UP_PAGE'\n}\n\nexport const handleStoreAuthToken = ({ authData, nextUrl = '/' }, dispatch) => {\n localStorage.setItem('auth', JSON.stringify({ token: authData.token }))\n dispatch({\n type: constants.USER_LOGGED_IN,\n payload: authData\n });\n setDefAuthHeader()\n goToNextURL(nextUrl)\n}\n\nconst setDefAuthHeader = () => {\n const token = getAuthData()?.token\n\n if (token) {\n api.defaults.headers.common['x-auth-token'] = token\n }\n}\n\nconst goToNextURL = (nextUrl) => {\n if (nextUrl.match(urlAny)) {\n if (nextUrl.match(urlGodoo) || nextUrl.match(urlLocalhost)) {\n const url = new URL(nextUrl)\n url.searchParams.set('token', getAuthData().token)\n window.location = url.toString()\n } else {\n window.location = nextUrl\n }\n } else {\n hashHistory.push(nextUrl)\n }\n}\n\nexport function signUpRequest(entity, data, url, onSuccessfulSignUp, hasLogin) {\n return function (dispatch) {\n dispatch({\n type: constants.USER_SIGN_UP_START\n });\n return trySignUp(entity.id, data)\n .then(\n response => {\n showMessage('success', __('Registered successfully'));\n\n dispatch({\n type: constants.USER_SIGN_UP_FINISHED,\n payload: response\n });\n\n switch (onSuccessfulSignUp) {\n case availableBehaviours.REDIRECT_TO_LOGIN_PAGE && hasLogin:\n hashHistory.push('/login?url=' + url);\n break\n case availableBehaviours.AUTOMATIC_LOGIN:\n if (response?.data?.token) {\n handleStoreAuthToken({ authData: response?.data, nextUrl: \"/logged\" }, dispatch)\n break\n }\n case availableBehaviours.REDIRECT_TO_SUCCESSFUL_SIGN_UP_PAGE:\n default:\n hashHistory.push(`/successfulRegistration/${entity.name}`)\n break\n }\n },\n error => dispatch({\n type: constants.USER_SIGN_UP_ERROR,\n payload: error.response\n }),\n )\n };\n}\n\nexport function logout() {\n localStorage.removeItem('auth');\n\n setTimeout(() => {\n hashHistory.push('/login');\n }, 1000);\n\n return function (dispatch) {\n dispatch({\n type: constants.USER_LOGGED_OUT\n });\n };\n}\n\nexport function setLanguage(lang) {\n\n if (!lang) {\n lang = \"en_GB\";\n }\n\n localStorage.setItem('lang', lang);\n moment.locale(lang.split('_')[0])\n\n return function (dispatch) {\n dispatch({\n type: constants.LANGUAGE_SELECTED,\n payload: { lang: lang }\n });\n };\n}\n\nfunction tryLogin(data) {\n return api.post('login', data.values);\n}\n\nfunction tryForgotPassword(data) {\n return api.post('forgotPassword', data.values);\n}\n\nfunction trySignUp(entityId, data) {\n return api.post(`register?entityId=${entityId}`, data);\n}\n\nfunction tryGetData(key) {\n return api.get('/users/' + key);\n}\n\nexport function setBaseURI(uri) {\n return function (dispatch) {\n dispatch({\n type: constants.SET_BASE_URI,\n payload: uri,\n });\n }\n}\n\nexport function setEntityNameForSignUp(uri) {\n return function (dispatch) {\n dispatch({\n type: constants.SET_ENTITY_NAME_FOR_SIGN_UP,\n payload: uri,\n });\n }\n}\n\nexport function setCustomColors(colors) {\n return function (dispatch) {\n dispatch({\n type: constants.CUSTOM_COLORS_SELECTED,\n payload: colors,\n });\n }\n}\n\nexport function setTheme(theme) {\n // var c = c.substring(1); // strip #\n // var rgb = parseInt(c, 16); // convert rrggbb to decimal\n // var r = (rgb >> 16) & 0xff; // extract red\n // var g = (rgb >> 8) & 0xff; // extract green\n // var b = (rgb >> 0) & 0xff; // extract blue\n //\n // var luma = 0.2126 * r + 0.7152 * g + 0.0722 * b; // per ITU-R BT.709\n //\n // if (luma < 40) {\n // // pick a different colour\n // }\n\n return function (dispatch) {\n dispatch({\n type: constants.THEME_SELECTED,\n payload: { theme: theme },\n });\n }\n}\n\nexport function getGuiUser() {\n\n return function (dispatch) {\n return api.get('/me')\n .then(\n response => {\n dispatch({\n type: constants.USER_GOT_DATA,\n payload: response.data\n });\n }\n ).catch(() => {\n //showMessage('error', __('GetGUIUserServerSideError'));\n logout();\n });\n };\n}\n\nexport function getUserOrderTypes(dispatch) {\n return api.get('/orderTypes')\n .then(\n response => {\n dispatch({\n type: constants.USER_GOT_ORDERTYPES,\n payload: response.data\n });\n }\n );\n}\n\nexport function getEntitySettings(entityId) {\n return function (dispatch) {\n return api.get(`entitySettings/${entityId}`)\n .then(\n response => {\n dispatch({\n type: constants.GOT_ENTITY_SETTINGS,\n payload: response.data\n });\n });\n }\n}\n\nexport function getLanguages(dispatch, getState) {\n\n const base_URI = getState().ui.baseURI\n let api = getApiHandler(base_URI);\n return api.get(`${config.prefix(base_URI)?.TRANSLATION || ''}/languages?enabled=true`, { data: null })\n .then(\n (response) => {\n dispatch({\n type: 'LANGUAGE_AVAILABLE',\n payload: response.data\n });\n }\n ).catch(() => {\n dispatch({\n type: 'LANGUAGE_AVAILABLE',\n payload: null\n })\n });\n}\n\nexport function getLanguagesWrapped() {\n return getLanguages;\n}","import React, { useEffect } from 'react'\nimport { useSelector } from 'react-redux'\nimport axios from 'axios'\nimport { withRouter } from 'react-router-dom'\nimport { getApiHandler } from '../../utils/appHelper'\nimport {setBaseURI, setEntityNameForSignUp} from \"../ReduxProvider/actions/userActions\";\nimport {parse} from 'query-string'\n\nconst ApiContext = React.createContext()\n\nexport let api = getApiHandler();\n\n// ✅ in the furure fix here the api providers!\n// put here axios instance\nconst ApiProvider = (props) => {\n const { children } = props;\n\n const url = useSelector((state) => state?.ui?.baseURI);\n const token = useSelector((state) => state?.user?.auth?.token);\n\n useEffect(() => {\n const search = parse(props.location.search);\n api = getApiHandler(search?.url);\n setBaseURI(search?.url);\n setEntityNameForSignUp(search?.entityName);\n }, []);\n\n useEffect(() => {\n api = getApiHandler(url)\n }, [url, token]);\n\n return {children}\n};\n\nexport default withRouter(ApiProvider);","export const THEME_CLASSIC = \"classic\";\nexport const THEME_DARK = \"dark\";\nexport const THEME_LIGHT = \"light\";\nexport const THEME_CUSTOM = \"custom\";\n","import {THEME_CLASSIC} from \"../../../utils/constants\";\n\nexport default {\n user: {\n auth: JSON.parse(localStorage.getItem('auth')) || null,\n data: null,\n isLoading: false,\n reports: [],\n views: [],\n orderGroups: [],\n },\n enumValues: {},\n errors: {\n loginError: null\n },\n menu: {\n \"items\": []\n },\n ui: {\n theme: THEME_CLASSIC,\n language: null,\n customColors: {\n primary: null,\n secondary: null,\n tertiary: null,\n },\n remoteSystems: null,\n baseURI: null,\n entityNameForSignUp: null,\n },\n entities: {\n searchOrganisationsForm: null,\n searchOrganisationsResults: []\n },\n import: {\n reportData: null,\n },\n selectedTemplateRights: null,\n};\n","import { combineReducers } from 'redux';\nimport user from './userReducer';\nimport errors from './errorReducer';\nimport uiReducer from './uiReducer';\nimport { reducer as reduxFormReducer } from 'redux-form';\nconst rootReducer = combineReducers({\n user,\n errors,\n ui: uiReducer,\n form: reduxFormReducer,\n});\n\nexport default rootReducer;\n","import * as actions from '../../../constants/actionTypes';\nimport initialState from './initialState';\n\nexport default function userUpdate(state = initialState.user, { type, payload }) {\n\n switch (type) {\n case actions.USER_LOGGING_IN:\n return {\n ...state,\n isLoading: true\n }\n \n case actions.USER_LOGGED_IN:\n return {\n ...state,\n auth: { token: payload.token },\n isLoading: false\n }\n\n case actions.USER_GOT_DATA:\n return {\n ...state,\n data: payload\n }\n\n case actions.USER_GOT_REPORTS:\n return {\n ...state,\n reports: payload\n }\n\n case actions.USER_GOT_ORDERGROUPS:\n return {\n ...state,\n orderGroups: payload\n }\n\n case actions.USER_GOT_VIEWS:\n return {\n ...state,\n views: payload\n }\n\n case actions.USER_GOT_ORDERTYPES:\n return {\n ...state,\n orderTypes: payload\n }\n\n case actions.USER_GOT_RIGHTS:\n return {\n ...state,\n data: {\n ...state.data,\n rights: payload\n }\n }\n\n case actions.USER_LOGIN_ERROR:\n return {\n ...state,\n data: null,\n isLoading: false,\n auth: null\n }\n\n case actions.USER_LOGGED_OUT:\n return {\n ...state,\n data: null,\n auth: null\n }\n\n default:\n return state;\n }\n}\n","import * as actions from '../../../constants/actionTypes';\nimport initialState from './initialState';\nimport objectAssign from 'object-assign';\n\nexport default function userUpdate(state = initialState.errors, { type, payload }) {\n\n switch (type) {\n\n case actions.USER_LOGGING_IN:\n return objectAssign({}, state, {'loginError': null});\n \n case actions.USER_LOGIN_ERROR:\n return objectAssign({}, state, {'loginError': payload});\n\n default:\n return state;\n }\n \n}\n","import * as actions from '../../../constants/actionTypes';\nimport initialState from './initialState';\nimport { THEME_CLASSIC, THEME_CUSTOM, THEME_DARK, THEME_LIGHT } from \"../../../utils/constants\";\n\nexport default function uiUpdate(state = initialState.ui, { type, payload }) {\n switch (type) {\n case actions.SET_HOME_URL:\n return {\n ...state,\n homeURL: payload\n }\n case actions.SET_BASE_URI:\n return {\n ...state,\n baseURI: payload\n }\n case actions.SET_ENTITY_NAME_FOR_SIGN_UP:\n return {\n ...state,\n entityNameForSignUp: payload\n }\n\n case actions.GOT_ENTITY_SETTINGS:\n return {\n ...state,\n entitySettings: payload\n }\n\n case actions.THEME_SELECTED:\n if (payload.theme !== THEME_CLASSIC && payload.theme !== THEME_LIGHT && payload.theme !== THEME_DARK && payload.theme !== THEME_CUSTOM)\n return { ...state };\n return {\n ...state,\n theme: payload.theme\n }\n case actions.CUSTOM_COLORS_SELECTED:\n return {\n ...state,\n customColors: payload\n }\n\n case actions.LANGUAGE_SELECTED:\n return {\n ...state,\n language: payload.lang\n };\n\n case actions.LANGUAGE_AVAILABLE:\n return {\n ...state,\n availableLanguages: payload\n }\n\n case actions.REMOTE_SYSTEMS_GOT:\n return {\n ...state,\n remoteSystems: payload\n }\n\n default:\n return state;\n }\n}\n","import React from 'react'\nimport { createStore, compose, applyMiddleware } from 'redux'\nimport { Provider } from 'react-redux'\nimport thunk from 'redux-thunk';\n\nimport rootReducer from './reducers/'\nimport initialState from './reducers/initialState'\n\n\n\nlet store = null\n\nif(process.env.NODE_ENV === 'production') {\n store = createStore(\n rootReducer,\n initialState,\n compose(\n applyMiddleware(thunk)\n )\n )\n} else {\n const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n store = createStore(\n rootReducer,\n initialState,\n composeEnhancers(\n applyMiddleware(thunk),\n )\n );\n}\n\n\nexport default ({ children }) => (\n \n {children}\n \n)\n\n\n\n\n\n\n\n\n","/*\n Function to check if a color is light or dark\n */\nexport function isLight(color) {\n // Variables for red, green, blue values\n let r, g, b, hsp;\n\n // Check the format of the color, HEX or RGB?\n if (color.match(/^rgb/)) {\n // If RGB --> store the red, green, blue values in separate variables\n color = color.match(/^rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)(?:,\\s*(\\d+(?:\\.\\d+)?))?\\)$/);\n\n r = color[1];\n g = color[2];\n b = color[3];\n }\n else {\n // If hex --> Convert it to RGB: http://gist.github.com/983661\n color = +(\"0x\" + color.slice(1).replace(\n color.length < 5 && /./g, '$&$&'));\n\n r = color >> 16;\n g = color >> 8 & 255;\n b = color & 255;\n }\n\n // HSP (Highly Sensitive Poo) equation from http://alienryderflex.com/hsp.html\n hsp = Math.sqrt(\n 0.299 * (r * r) +\n 0.587 * (g * g) +\n 0.114 * (b * b)\n );\n\n // Using the HSP value, determine whether the color is light or dark\n // If light return true\n return hsp > 150;\n}","import {isLight} from \"../../utils/styleUtils\";\n\nexport const baseColors = {\n black: {\n primary: \"#080808\",\n secondary: \"#314659\"\n },\n gray: {\n primary: \"#d8d8d8\",\n secondary: \"#e8e8e8\",\n },\n white: {\n primary: \"#ffffff\",\n },\n text: {\n primary: \"#4d4d4d\"\n },\n grey: {\n primary: \"#d8d8d8\",\n secondary: \"#e8e8e8\",\n },\n lightGray: {\n primary: \"#f2f4f5\",\n secondary: \"#fafafa\",\n },\n blue: {\n primary: \"#1890ff\",\n secondary: \"#40a9ff\"\n },\n red: {\n primary: \"#ea4335\",\n secondary: \"#ea4335\"\n }\n};\n\n\nexport const classicTheme = () => {\n return ({\n colors: {\n ...baseColors,\n primary: \"#0a4f7a\",\n secondary: \"#008db0\",\n tertiary: \"#a8d15d\",\n text: \"#ffffff\",\n }\n });\n};\n\nexport const lightTheme = () => {\n return ({\n colors: {\n ...baseColors,\n primary: \"#fefefe\",\n secondary: \"#008db0\",\n tertiary: \"#a8d15d\",\n text: \"#222222\",\n }\n });\n};\n\nexport const darkTheme = () => {\n return ({\n colors: {\n ...baseColors,\n primary: \"#222222\",\n secondary: \"#008db0\",\n tertiary: \"#a8d15d\",\n text: \"#ffffff\",\n }\n });\n};\n\nexport const customTheme = (props) => {\n return ({\n colors: {\n ...baseColors,\n primary: props.primary,\n secondary: props.secondary,\n tertiary: props.tertiary,\n text: isLight(props.primary) ? \"#222222\" : \"#ffffff\",\n }\n });\n};","import styled from \"styled-components\"\n\nimport { isLight } from \"../../utils/styleUtils\";\nimport { Radio } from \"antd\";\n\nexport const Button = styled.button`\n &:hover {\n filter: brightness(1.1);\n }\n\n &:active {\n filter: brightness(0.95);\n }\n\n &:disabled {\n filter: opacity(0.4) saturate(0.8);\n }\n\n .btn-primary {\n background-color: ${props => props.theme.colors.secondary};\n color: ${props => (isLight(props.theme.colors.secondary)) ? props.theme.colors.text : props.theme.colors.white.primary}\n }\n\n .btn-success {\n background-color: ${props => props.theme.colors.tertiary};\n color: ${props => (isLight(props.theme.colors.tertiary)) ? props.theme.colors.text : props.theme.colors.white.primary}\n }\n`;\n\nexport const ThemeWrapper = styled.div`\n height: 100%;\n padding: 15px;\n background: ${props => props.theme.colors.primary};\n color: ${props => props.theme.colors.text};\n overflow: auto;\n\n button .btn {\n background-color: ${props => props.theme.colors.tertiary};\n color: ${props => (isLight(props.theme.colors.tertiary)) ? props.theme.colors.text : props.theme.colors.white.primary}\n }\n\n a {\n color: ${props => props.theme.colors.text}\n }\n`;\n\nexport const Logo = styled.div`\n position: relative;\n width: 100%;\n margin-left: 25px;\n margin-top: 15px;\n margin-bottom: 40px;\n align-self: start;\n justify-self: start;\n place-self: start;\n`;\n\nexport const LogoText = styled.div`\n font-weight: 400;\n letter-spacing: 0.04rem;\n font-size: 2.5rem;\n position: absolute;\n bottom: 0.1rem;\n left: 4.8rem;\n font-family: sans-serif;\n color: black;\n`;\n\nexport const RadioButtonGroup = styled(Radio.Group)`\n display: flex;\n .ant-radio-button-wrapper {\n flex-grow: 1;\n text-align: center;\n }\n`;","import React from 'react'\nimport {createGlobalStyle, ThemeProvider} from 'styled-components'\nimport './styles/index.scss'\nimport {useSelector} from \"react-redux\";\nimport {classicTheme, customTheme, darkTheme, lightTheme} from \"./theme\";\nimport {THEME_CUSTOM, THEME_DARK, THEME_LIGHT} from \"../../utils/constants\";\nimport * as S from \"./styleComponents\";\n\nconst GlobalStyle = createGlobalStyle`\n *,\n *:before,\n *:after {\n box-sizing: border-box;\n }\n`;\n\nexport default ({children}) => {\n const ui = useSelector(state => state.ui);\n let theme = classicTheme;\n\n switch (ui?.theme) {\n case THEME_CUSTOM:\n theme = customTheme(ui?.customColors);\n break;\n case THEME_LIGHT:\n theme = lightTheme();\n break;\n case THEME_DARK:\n theme = darkTheme();\n break;\n }\n\n return (\n <>\n \n \n {children}\n \n \n )\n}","import React from 'react';\nimport moment from 'moment';\nimport { Typography, Image } from 'antd';\n\nconst { Title, Text } = Typography;\n\nconst LogoSrc = require('./../images/logo-light-full.svg')\n\nconst supportedBrowsers = [\n {\n src: 'https://upload.wikimedia.org/wikipedia/commons/thumb/a/a0/Firefox_logo%2C_2019.svg/1920px-Firefox_logo%2C_2019.svg.png',\n url: 'https://www.firefox.com',\n name: 'Firefox'\n }, {\n src: 'https://upload.wikimedia.org/wikipedia/it/9/9e/Google_Chrome_logo.png',\n url: 'https://www.google.com/chrome/',\n name: 'Chrome'\n }, {\n src: 'https://upload.wikimedia.org/wikipedia/commons/5/52/Safari_browser_logo.svg',\n url: 'https://www.apple.com/safari',\n name: 'Safari'\n }, {\n src: 'https://upload.wikimedia.org/wikipedia/it/9/98/Microsoft_Edge_logo_%282019%29.svg',\n url: 'https://www.microsoft.com/edge',\n name: 'Edge'\n }\n\n]\n\nexport default ({ browser }) => {\n\n return
\n
\n\n \n
\n\n Oh snap!<br />We don't support this version of your browser, and neither should you!\n You are visiting this page because we detected an unsupported browser. Your browser does not support\n security\n features that we require. We highly recommend that you update your browser. If you believe you have arrived\n here\n in error, please contact us. Be\n sure to include your browser version.\n
\n
\n {supportedBrowsers.map(({ src, name, url }) =>\n \n \n {name}\n )}\n
\n \n
\n
\n\n}\n\n\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { __ } from '../utils/appHelper';\nimport Loader from 'react-loader';\n\nclass Loading extends React.Component {\n\n static propTypes = {\n process: PropTypes.object,\n order: PropTypes.object,\n modelValues: PropTypes.object,\n isModal: PropTypes.bool,\n match: PropTypes.object\n };\n\n render() {\n return (\n
\n \n {__('loading')}\n \n
\n\n );\n }\n}\nexport default Loading;\n","import styled from \"styled-components\";\n\nexport const FullHeight = styled.div`\n height: 100%;\n`\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport * as queryString from 'query-string'\nimport { parse, stringify } from 'query-string'\nimport { hashHistory } from '../providers/HistoryProvider';\nimport PropTypes from 'prop-types';\nimport { api } from \"../providers/ApiProvider\";\nimport i18next from 'i18next';\nimport * as config from '../constants/globalConfiguration';\n\nimport {\n getEntitySettings,\n getLanguagesWrapped,\n getUserOrderTypes,\n setBaseURI,\n setEntityNameForSignUp,\n setLanguage\n} from '../providers/ReduxProvider/actions/userActions';\nimport Loading from \"./Loading\";\nimport { FullHeight } from \"../components/styles\";\n\nclass BodyClass extends React.Component {\n static propTypes = {\n layout: PropTypes.string,\n setLanguage: PropTypes.func,\n children: PropTypes.element.isRequired,\n language: PropTypes.string,\n location: PropTypes.object,\n baseURI: PropTypes.string\n }\n static defaultProps = {\n layout: \"\"\n }\n\n constructor(props) {\n super(props);\n this.queryString = parse(this.props.location.search)\n this.state = {\n isLoading: true,\n }\n }\n\n\n componentWillMount() {\n const { setBaseURI, setEntityNameForSignUp, location } = this.props;\n const search = queryString.parse(location.search);\n\n setBaseURI(search?.url);\n setEntityNameForSignUp(search?.entityName);\n\n if (localStorage.getItem('skipTranslations') === 'true') {\n i18next.init({\n lng: 'en',\n resources: {\n en: {\n translation: {},\n fallbackLng: false\n }\n }\n });\n this.setState({ isLoading: false })\n return\n }\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { updateLanguages, setLanguage, language, availableLanguages, location } = this.props;\n\n if (!availableLanguages || availableLanguages?.length === 0) {\n updateLanguages();\n }\n\n if (availableLanguages !== prevProps.availableLanguages) {\n // Check if language is in localstorage, if not get it form browser (navigator), if not set it to english\n // get languages codes and adding manually no translation language\n const languageCodes = availableLanguages?.map(l => l.languageCode) || []\n\n const storageLanguage = localStorage.getItem('lang')\n\n const navigatorLanguage = navigator.language && navigator.language.replace('-', '_');\n\n if (this.queryString.language && this.queryString.language !== '') {\n if (typeof hashHistory.push === 'function') {\n hashHistory.push({\n ...location,\n search: stringify({\n ...this.queryString,\n language: ''\n })\n })\n }\n setLanguage(this.queryString.language)\n } else if (languageCodes.includes(storageLanguage)) {\n setLanguage(storageLanguage);\n } else if (languageCodes.includes(navigatorLanguage)) {\n setLanguage(navigatorLanguage);\n } else if (languageCodes.find(lc => (lc.substring(0, 2) === navigatorLanguage.substring(0, 2)))) {\n setLanguage(languageCodes.find(lc => (lc.substring(0, 2) === navigatorLanguage.substring(0, 2))));\n } else {\n setLanguage('en_GB')\n }\n }\n\n if (language !== prevProps.language) {\n api.get(`${config.prefix(this.props.baseURI)?.TRANSLATION || ''}/translations/${language}/last/export?dirty=true`, { data: null }).then(response => {\n const res = {}\n const responseJson = response.data\n const keyValues = Object.keys(responseJson).map((key) => {\n const newKey = key.trim().toLowerCase()\n return { [newKey]: responseJson[key] }\n })\n Object.assign(res, ...keyValues)\n\n i18next.init({\n lng: 'en',\n resources: {\n en: {\n translation: res,\n fallbackLng: false\n }\n }\n });\n\n this.setState({ isLoading: false })\n }).catch(() => {\n this.setState({ isLoading: false })\n });\n\n try {\n // eslint-disable-next-line global-require,import/no-dynamic-require\n require(`moment/locale/${language.replaceAll('_', '-').toLowerCase()}`)\n } catch (e) {\n console.log(e)\n }\n }\n }\n\n render() {\n return (\n\n \n {this.state.isLoading ? : null}\n {this.state.isLoading ? null : (\n <>{this.props.children}\n )}\n \n )\n }\n}\n\nexport default connect(\n (state) => {\n return {\n language: state.ui.language,\n theme: state.ui.theme,\n availableLanguages: state.ui.availableLanguages,\n baseURI: state.ui.baseURI,\n };\n },\n {\n updateLanguages: getLanguagesWrapped,\n setLanguage,\n getEntitySettings,\n getUserOrderTypes,\n setBaseURI,\n setEntityNameForSignUp,\n }\n)(BodyClass);\n","var _defs, _g, _rect, _g2, _rect2, _g3;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgLogoFull(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n \"data-name\": \"Layer 1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n viewBox: \"0 0 600 291.69\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"style\", null, \".cls-1{fill:none;}.cls-2{clip-path:url(#clip-path);}.cls-3{fill:#0a4f7a;}.cls-4{fill:#eb008b;}\"), /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip-path\",\n transform: \"translate(0 0.69)\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-1\",\n y: -0.69,\n width: 600,\n height: 291.69\n })))), title === undefined ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, \"godoo_logo_blue\") : title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M484.42,80.23A26.45,26.45,0,1,1,458,53.88a26.4,26.4,0,0,1,26.45,26.35m25.27,0A51.71,51.71,0,1,0,458,131.77a51.62,51.62,0,0,0,51.71-51.54\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-4\",\n d: \"M266.75,83A51.71,51.71,0,1,0,215,134.55,51.62,51.62,0,0,0,266.75,83\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M574.73,80.23a26.45,26.45,0,1,1-26.45-26.35,26.4,26.4,0,0,1,26.45,26.35m25.27,0a51.71,51.71,0,1,0-51.71,51.54A51.62,51.62,0,0,0,600,80.23\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-4\",\n d: \"M128.81,130.39c5.54,10.14,5.09,16.27-3.39,26.3,11,3.64,9.36,2.79,13.7,4.49,3.85-4.34,20.22-20.65,1.57-42.63\",\n transform: \"translate(0 0.69)\"\n }))), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-3\",\n x: 92.68,\n y: 19.92,\n width: 63.39,\n height: 24.49\n })), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M31.91,220c0,25.73,27.21,46.59,60.77,46.59s60.78-20.86,60.78-46.59-27.21-46.59-60.78-46.59S31.91,194.22,31.91,220M0,220c0-39.24,41.49-71,92.68-71s92.68,31.81,92.68,71S143.87,291,92.68,291,0,259.19,0,220\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M131.53,82.13A38.57,38.57,0,1,1,93,43.69a38.5,38.5,0,0,1,38.57,38.44m24.54,0A63.11,63.11,0,1,0,93,145a63,63,0,0,0,63.11-62.9\",\n transform: \"translate(0 0.69)\"\n }))), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-3\",\n x: 375.04,\n width: 24.48,\n height: 82.79\n })), _g3 || (_g3 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M375.07,82.11a38.43,38.43,0,1,1-38.43-38.43,38.43,38.43,0,0,1,38.43,38.43m24.45,0A62.88,62.88,0,1,0,336.65,145a62.88,62.88,0,0,0,62.88-62.88\",\n transform: \"translate(0 0.69)\"\n }))));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoFull);\nexport default __webpack_public_path__ + \"static/media/logo-full.e9cf3b3e.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport BodyClass from \"../containers/BodyClass\";\nimport { THEME_CUSTOM } from \"../utils/constants\";\nimport * as queryString from \"query-string\";\nimport {\n getEntitySettings,\n setCustomColors,\n setTheme,\n setHomeUrl,\n} from \"../providers/ReduxProvider/actions/userActions\";\nimport * as S from \"../providers/StyleProvider/styleComponents\";\n\n\nconst FullPage = (props) => {\n const { children } = props;\n const search = queryString.parse(props.location.search);\n\n if (search != null && search.theme != null) {\n props.setTheme(search.theme);\n }\n\n if (search?.allow != null) {\n props.setHomeUrl(search.allow === 'signup' ? `/sign-up/${search.entityName}${props.location.search}` : `/login${props.location.search}`);\n }\n\n if (search != null && search.theme === THEME_CUSTOM) {\n if (search?.primary && search?.secondary && search?.tertiary) {\n props.setCustomColors({\n primary: `#${search?.primary}`,\n secondary: `#${search?.secondary}`,\n tertiary: `#${search?.tertiary}`,\n })\n }\n }\n\n return (\n \n \n {children}\n \n \n );\n};\n\nFullPage.propTypes = {\n children: PropTypes.element.isRequired,\n theme: PropTypes.string,\n setTheme: PropTypes.func,\n getEntitySettings: PropTypes.func,\n};\n\nexport default connect(\n state => {\n return {\n theme: state.ui.theme\n };\n },\n { setTheme, setCustomColors, getEntitySettings, setHomeUrl },\n)(FullPage);\n","export const T = {\n // SIGN IN\n login: 'login',\n username: 'username or email address',\n password: 'password',\n badCredentials: 'err-wrong-credentials',\n userNotYetActive: 'user_not_yet_active',\n userNoLongerActive: 'user_no_longer_active',\n\n // SIGN UP - ENTITY SELECTION\n selectEntity: 'company or user group name',\n\n // SIGN UP\n signUp: 'sign up',\n registrationNotEnabled: 'self registration is not enabled, please contact the management',\n\n // SIGN UP - VALIDATION\n requiredField: 'the field is mandatory',\n minLength: 'minimum length not reached',\n maxLength: 'maximum length exceeded',\n illegalChars: 'the following characters are illegal',\n invalidInput: 'invalid input',\n invalidPhoneNumber: 'invalid phone number',\n invalidPrefix: 'add country prefix',\n invalidEmail: 'email not valid',\n invalidDomain: 'email domain not allowed',\n\n // successfulRegistration\n goBackToLogin: 'go back to login',\n passwordsMustMatch: 'PasswordDoesntMatch',\n\n // FORGOT PASSWORD\n forgotPassword: 'forgot password',\n requestPasswordReset: 'request password reset',\n\n // RESET PASSWORD\n newPassword: 'New Password',\n confirmPassword: 'Confirm Password',\n\n // SETTINGS\n logoAddedCorrectly: 'logo added correctly',\n logoRemovedCorrectly: 'logo removed correctly',\n reports: 'reports',\n pinnedViews: 'pinned views',\n pinnedReports: 'pinned reports',\n openAttributesSelection: 'open attributes selection',\n dashboardName: 'dashboard name',\n loginPage: 'login_page',\n autoLogin: 'auto_login',\n autoLoginDisabledInfo: 'auto_login_disabled_info',\n messagePage: 'message_page',\n\n // SETTINGS - PANELS\n userSelfRegistration: 'user self registration',\n userSelfRegistrationSub: 'Choose settings for the self sign-up of your users, including user-groups, roles and allowed email domains',\n widgetSettings: 'widget settings',\n widgetSettingsSub: 'select widget and dashboard settings',\n dashboardsConfiguration: 'dashboards configuration',\n dashboardsConfigurationSub: 'here you can pin your favourite dashboard',\n instanceConfigurations: 'instance system configurations',\n instanceConfigurationsSub: 'change instance system configurations such as the logo, page sizes, pinned views and pinned reports',\n\n // SETTINGS - SELF REGISTRATION\n selfRegistration: 'self registration',\n targetUserGroups: 'target user-groups',\n targetUserRoles: 'target user-roles',\n selectTargetGroups: 'select target entities / user groups',\n selectTargetGroupRoles: 'select target entities / user groups roles',\n allowedDomains: 'allowed domains',\n noEntryAddedYet: 'no entry added yet',\n emailVerification: 'email verification',\n registrationBehaviour: 'registration_behaviour',\n successMessage: 'success_message',\n checkYourEmailMessage: 'successful_sign_up_page_message_check_your_email',\n greetingsMessage: 'successful_sign_up_page_message_greetings',\n registrationFormFields: 'registration form fields',\n\n // MEASURES\n lastUpdateDateTime: 'last update dateTime',\n max: 'max',\n maxDef: 'max default',\n min: 'min',\n\n // ConfigurationConfiguratorBeta - HEADER/FOOTER\n chooseFieldsValidationError: 'choose_fields_validation_error',\n viewPropertiesValidationError: 'view_properties_validation_error',\n\n // GENERAL VALIDATIONS\n userEmailAlreadyExists: 'user_email_already_exists',\n\n // MISCELLANEOUS\n back: 'back',\n next: 'next',\n or: 'or',\n default: 'default',\n confirm: 'Confirm',\n webApp: 'web app',\n mobileApp: 'mobile app',\n getTheApp: 'get the app',\n edit: 'edit',\n save: 'save',\n remove: 'remove',\n upload: 'upload',\n uploadLogo: 'upload logo',\n pageSize: 'page size',\n views: 'views',\n unauthorized: 'unauthorized',\n unauthorizedExtended: 'sorry, you are not authorized to modify',\n unknownError: 'unknown_error',\n error: 'error'\n}\n","import { T } from \"../utils/translations\";\n\nexport default {\n 'User email already exists': T.userEmailAlreadyExists,\n 'User is not yet active': T.userNotYetActive,\n 'Bad Credentials': T.badCredentials,\n}\n","import errorCodesMap from \"../constants/errorCodesMap\";\nimport { T } from \"./translations\";\n\nexport default (code) => errorCodesMap?.[code] || T.unknownError\n","var _defs, _g, _rect, _g2, _rect2, _g3;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgLogoLightFull(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n \"data-name\": \"Layer 1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n viewBox: \"0 0 600 291.69\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"style\", null, \".cls-1{fill:none;}.cls-2{clip-path:url(#clip-path);}.cls-3{fill:#fff;}.cls-4{fill:#eb008b;}\"), /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip-path\",\n transform: \"translate(0 0.69)\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-1\",\n y: -0.69,\n width: 600,\n height: 291.69\n })))), title === undefined ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, \"godoo_logo_white\") : title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M484.42,80.23A26.45,26.45,0,1,1,458,53.88a26.4,26.4,0,0,1,26.45,26.35m25.27,0A51.71,51.71,0,1,0,458,131.77a51.62,51.62,0,0,0,51.71-51.54\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-4\",\n d: \"M266.75,83A51.71,51.71,0,1,0,215,134.55,51.62,51.62,0,0,0,266.75,83\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M574.73,80.23a26.45,26.45,0,1,1-26.45-26.35,26.4,26.4,0,0,1,26.45,26.35m25.27,0a51.71,51.71,0,1,0-51.71,51.54A51.62,51.62,0,0,0,600,80.23\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-4\",\n d: \"M128.81,130.39c5.54,10.14,5.09,16.27-3.39,26.3,11,3.64,9.36,2.79,13.7,4.49,3.85-4.34,20.22-20.65,1.57-42.63\",\n transform: \"translate(0 0.69)\"\n }))), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-3\",\n x: 92.68,\n y: 19.92,\n width: 63.39,\n height: 24.49\n })), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M31.91,220c0,25.73,27.21,46.59,60.77,46.59s60.78-20.86,60.78-46.59-27.21-46.59-60.78-46.59S31.91,194.22,31.91,220M0,220c0-39.24,41.49-71,92.68-71s92.68,31.81,92.68,71S143.87,291,92.68,291,0,259.19,0,220\",\n transform: \"translate(0 0.69)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M131.53,82.13A38.57,38.57,0,1,1,93,43.69a38.5,38.5,0,0,1,38.57,38.44m24.54,0A63.11,63.11,0,1,0,93,145a63,63,0,0,0,63.11-62.9\",\n transform: \"translate(0 0.69)\"\n }))), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n className: \"cls-3\",\n x: 375.04,\n width: 24.48,\n height: 82.79\n })), _g3 || (_g3 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"cls-2\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-3\",\n d: \"M375.07,82.11a38.43,38.43,0,1,1-38.43-38.43,38.43,38.43,0,0,1,38.43,38.43m24.45,0A62.88,62.88,0,1,0,336.65,145a62.88,62.88,0,0,0,62.88-62.88\",\n transform: \"translate(0 0.69)\"\n }))));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoLightFull);\nexport default __webpack_public_path__ + \"static/media/logo-light-full.3f0374df.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useEffect, useState } from 'react'\nimport PropTypes from 'prop-types'\nimport { Link } from 'react-router-dom'\nimport { CUSTOM_LOGO, getApiUrl, HOME_URL } from '../../constants/globalConfiguration'\nimport { connect } from 'react-redux';\nimport { ReactComponent as DefaultLogo } from \"../../images/logo-full.svg\";\nimport { ReactComponent as DefaultLogoLight } from \"../../images/logo-light-full.svg\";\nimport axios from \"axios\";\n\nexport const DEFAULT_LOGO_URL = \"@@default@@\";\nconst Logo = (props) => {\n const { className, light, homeURL, baseURI } = props\n const [logoUrl, setLogoUrl] = useState(null);\n\n let logoImage = null;\n\n useEffect(() => {\n const url = getApiUrl(baseURI);\n return axios.get(`${url}/systemConfigurations`)\n .then(response => {\n let systemConfiguration = {};\n response.data.forEach(\n (c) => {\n if (c.key === \"instanceOwner\") {\n systemConfiguration['instanceOwner'] = !!parseInt(c.value);\n return;\n }\n systemConfiguration[c.key] = c.value;\n });\n\n //TODO\n axios.head(`${url}/staticFiles/logo/${systemConfiguration?.[CUSTOM_LOGO]}`)\n .then(() => setLogoUrl(`${url}/staticFiles/logo/${systemConfiguration?.[CUSTOM_LOGO]}`))\n .catch(() => setLogoUrl(DEFAULT_LOGO_URL))\n })\n .catch((err) => {\n console.error('Cannot fetch system settings. Got:', err);\n setLogoUrl(DEFAULT_LOGO_URL)\n });\n\n }, [baseURI]);\n\n\n if (DEFAULT_LOGO_URL === logoUrl) {\n if (light) {\n logoImage = ();\n } else {\n logoImage = ();\n }\n } else if (logoUrl !== null) {\n logoImage = (\"logo\");\n }\n\n return (\n \n {logoImage}\n \n )\n};\n\nLogo.propTypes = { className: PropTypes.string, forceGodoo: PropTypes.bool, light: PropTypes.bool };\nLogo.defaultProps = {\n className: '',\n light: false\n};\n\n\nconst mapStateToProps = (state) => {\n return {\n homeURL: state.ui.homeURL,\n baseURI: state.ui.baseURI,\n };\n};\n\n\nexport default connect(mapStateToProps)(Logo);","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect, useSelector } from 'react-redux';\nimport { Redirect } from \"react-router-dom\";\nimport { Authentication as Auth } from 'components';\nimport { login, loginErrorActionCreator } from '../providers/ReduxProvider/actions/userActions';\nimport { __ } from '../utils/appHelper'\nimport { T } from \"../utils/translations\"\nimport getErrorText from \"../utils/getErrorText\";\n\nimport { THEME_CUSTOM, THEME_LIGHT } from \"../utils/constants\";\nimport { isLight } from \"../utils/styleUtils\";\nimport Logo from \"../components/common/Logo\";\nimport { fetchAvailableEntities } from '../providers/ApiProvider/authentication';\nimport { parse } from 'query-string'\nimport { Gutter } from 'components/dist/styles';\n\nconst textCommons = { T, __, getErrorText }\n\nconst LoginPage = (props) => {\n const { login, loginError, editLoginError } = props\n\n const [showSignUp, setShowSignUp] = useState(null)\n\n const token = useSelector((state) => state?.user?.auth?.token);\n const theme = useSelector((state) => state?.ui?.theme);\n const customColors = useSelector((state) => state?.ui?.customColors);\n const entityNameForSignUp = useSelector((state) => state?.ui?.entityNameForSignUp);\n\n const search = parse(props.location.search)\n\n useEffect(() => {\n editLoginError(null)\n fetchAvailableEntities().then((entities) => setShowSignUp(entities?.length > 0))\n }, [])\n\n const handleSubmit = (values) => {\n login({ values });\n }\n\n\tif (search.url === \"api.be-advanced.godoo.app\")\n\t\treturn \n\n return (\n <>\n \n
\n
\n \n
\n
\n
\n\n
\n
\n\n {\n (!token) ?\n (\n \n )\n :\n (\n \n )\n }\n
\n
\n \n );\n}\n\nexport default connect(\n (state) => {\n return {\n loginError: state.errors.loginError\n }\n },\n { login, editLoginError: loginErrorActionCreator }\n)(LoginPage);\n\n\nLoginPage.propTypes = {\n login: PropTypes.func,\n loginError: PropTypes.string,\n location: PropTypes.object\n};\n","import { api } from \"./index\";\nimport { ERROR } from \"components/dist/Utils/LoggerUtils\";\n\nexport const fetchAvailableEntities = () =>\n api.get('register/availableEntities')\n .then(\n (response) => response.data,\n (error) => {\n ERROR(error)\n }\n )","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect, useSelector } from 'react-redux';\nimport { forgotPasswordRequest } from '../providers/ReduxProvider/actions/userActions';\nimport { Authentication as Auth } from \"components\"\n\nimport { THEME_CUSTOM, THEME_LIGHT } from \"../utils/constants\";\nimport { isLight } from \"../utils/styleUtils\";\nimport Logo from \"../components/common/Logo\";\nimport { __ } from '../utils/appHelper'\nimport { T } from \"../utils/translations\"\nimport getErrorText from \"../utils/getErrorText\";\n\nconst textCommons = { T, __, getErrorText }\n\nconst ForgotPasswordPage = (props) => {\n const theme = useSelector((state) => state?.ui?.theme);\n const customColors = useSelector((state) => state?.ui?.customColors);\n\n const handleSubmit = values => {\n let payload = { values };\n props.forgotPasswordRequest(payload);\n };\n\n return (\n
\n
\n \n \n
\n
\n
\n \n \n
\n \n \n );\n};\n\nexport default connect(\n (state) => {\n return {\n isLoading: state.user.isLoading\n };\n },\n { forgotPasswordRequest }\n)(ForgotPasswordPage);\n\nForgotPasswordPage.propTypes = {\n forgotPasswordRequest: PropTypes.func,\n isLoading: PropTypes.bool,\n};","import * as yup from 'yup'\nimport _ from 'lodash'\nimport {\n isAValidName,\n isAValidUsername,\n missingNameChars,\n missingUsernameChars,\n REGEX_EMAIL,\n REGEX_PHONE,\n REGEX_PHONE_PREFIX\n} from '../constants/regexes'\nimport { __, cases } from './appHelper'\nimport { T } from './translations'\n\n\nexport const isRequiredSchema = () => yup.string().required(__(T.requiredField, cases.CAPITALIZE_SENTENCE))\nexport const minSchema = (number = 1) => yup.string().min(number, __(T.minLength, cases.CAPITALIZE_SENTENCE))\nexport const maxSchema = (number = 64) => yup.string().max(number, __(T.maxLength, cases.CAPITALIZE_SENTENCE))\nexport const illegalCharsName = () => yup.string().test('name-illegal-chars', (value, options) => {\n const { createError, path } = options\n const cleanedValue = value && value.replace(/\\s/g, '')\n\n if (cleanedValue && !isAValidName(cleanedValue)) {\n let message = __(T.invalidInput, cases.CAPITALIZE_SENTENCE)\n const illegalChars = missingNameChars(cleanedValue)\n if (!_.isEmpty(illegalChars)) message = `${__(T.illegalChars, cases.CAPITALIZE_SENTENCE)}: ${Array.from(illegalChars).join(', ')}`\n\n return createError({ message, path })\n }\n return true\n})\n\nexport const illegalCharsUsername = () => yup.string().test('username-illegal-chars', (value, options) => {\n const { createError, path } = options\n const cleanedValue = value && value.replace(/\\s/g, '')\n\n if (cleanedValue && !isAValidUsername(cleanedValue)) {\n let message = __(T.invalidInput, cases.CAPITALIZE_SENTENCE)\n const illegalChars = missingUsernameChars(cleanedValue)\n if (!_.isEmpty(illegalChars)) message = `${__(T.illegalChars, cases.CAPITALIZE_SENTENCE)}: ${Array.from(illegalChars).join(', ')}`\n\n return createError({ message, path })\n }\n return true\n})\nexport const phoneSchema = () => yup.string().matches(REGEX_PHONE, __(T.invalidPhoneNumber, cases.CAPITALIZE_SENTENCE))\nexport const prefixSchema = () => yup.string().matches(REGEX_PHONE_PREFIX, __(T.invalidPrefix, cases.CAPITALIZE_SENTENCE))\nexport const emailSchema = () => yup.string().matches(REGEX_EMAIL, __(T.invalidEmail, cases.CAPITALIZE_SENTENCE))\n\nexport const domainSchema = (domains) => {\n if (!domains || _.isEmpty(domains)) return undefined\n\n return yup.string().test('allowed-domain', (value, options) => {\n const { createError, path } = options\n\n if (value && domains.some((d) => value.endsWith(d))) return true\n return createError({ message: __(T.invalidDomain, cases.CAPITALIZE_SENTENCE), path })\n })\n}\n\nexport default {\n isRequiredSchema,\n minSchema,\n maxSchema,\n illegalCharsName,\n illegalCharsUsername,\n phoneSchema,\n prefixSchema,\n emailSchema,\n domainSchema,\n}\n","import * as yup from 'yup'\nimport V from '../../utils/validation'\n\nexport const signupValidationSchema = (fields, allowedEmailDomains) => {\n const formValidationSchema = {}\n fields.forEach(({ destination, required }) => {\n const schema = getSignupInputValidationSchema({ name: destination, required, allowedEmailDomains })\n if (schema) formValidationSchema[destination] = schema\n })\n\n return yup.object().shape(formValidationSchema)\n}\n\nconst getSignupInputValidationSchema = ({ name, required, allowedEmailDomains: domains }) => {\n const baseSchema = yup.string().concat(required && V.isRequiredSchema())\n switch (name) {\n case 'firstName':\n case 'lastName':\n return baseSchema.concat(V.minSchema()).concat(V.maxSchema()).concat(V.illegalCharsName()).nullable()\n case 'username':\n return baseSchema.concat(V.minSchema()).concat(V.maxSchema()).concat(V.illegalCharsUsername()).nullable()\n case 'phone':\n return baseSchema.concat(V.phoneSchema()).concat(V.prefixSchema()).nullable()\n case 'email':\n return baseSchema.concat(V.emailSchema()).concat(domains && V.domainSchema(domains)).nullable()\n default:\n return baseSchema.nullable()\n }\n}","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Typography, Row } from 'antd';\nimport { connect, useSelector } from 'react-redux';\nimport { Text } from \"components/dist/styles\"\nimport { Gutter } from \"components/dist/styles\"\nimport { Authentication as Auth } from 'components';\nimport { getEntitySettings, signUpRequest } from '../../providers/ReduxProvider/actions/userActions';\nimport { __ } from '../../utils/appHelper'\nimport { T } from \"../../utils/translations\"\nimport getErrorText from \"../../utils/getErrorText\";\nimport { api } from \"../../providers/ApiProvider\";\nimport { signupValidationSchema } from './validation';\nimport { parse } from 'query-string'\nimport { THEME_CUSTOM, THEME_LIGHT } from '../../utils/constants';\nimport { isLight } from '../../utils/styleUtils';\nimport Logo from '../../components/common/Logo';\n\nconst textCommons = { T, __, getErrorText }\n\nconst { Title } = Typography;\n\nconst SignUpPage = (props) => {\n const [isLoading, setIsLoading] = useState(true);\n const [entity, setEntity] = useState(null)\n const entitySettings = useSelector((state) => state?.ui?.entitySettings);\n const theme = useSelector((state) => state?.ui?.theme);\n const customColors = useSelector((state) => state?.ui?.customColors);\n const entityName = props.match.params.entityName;\n\n const search = parse(props.location.search)\n\n useEffect(() => {\n api.get(`register/availableEntities/${entityName}`).then((response) => {\n setEntity(response.data)\n\t response?.data?.id && props.getEntitySettings(response?.data?.id);\n setIsLoading(false);\n });\n }, []);\n\n const { userRegistration } = entitySettings || {}\n const { fields, allowedEmailDomains } = userRegistration || {}\n\n const handleSubmit = (entity, values) => {\n const search = parse(props.location.search);\n props.signUpRequest(\n entity,\n values,\n search?.url,\n userRegistration.onSuccessfulSignUp,\n search.allow !== \"signup\");\n };\n\n return (\n \n \n {\n (!isLoading) &&\n
\n {\n (userRegistration?.selfRegistrationEnabled) &&\n (\n <>\n \n \n \n

{entity?.name || \"\"}

\n
\n
\n \n \n )\n }\n\t {\n\t\t (userRegistration && !userRegistration.selfRegistrationEnabled) && (\n\t\t\t <>\n\t\t\t\t \n\t\t\t\t\t {__('Self registration is not enabled, please contact the management')}\n\t\t\t\t \n\t\t\t \n\t\t )\n\t }\n
\n }\n \n
\n );\n};\n\nexport default connect(\n (state) => {\n return {\n availableLanguages: state.ui.availableLanguages,\n language: state.ui.language,\n signUpError: state.errors.signUpError,\n };\n },\n { signUpRequest, getEntitySettings }\n)(SignUpPage);\n\n\nSignUpPage.propTypes = {\n signUpRequest: PropTypes.func,\n signUpError: PropTypes.string,\n isLoading: PropTypes.bool,\n location: PropTypes.object,\n getEntitySettings: PropTypes.func,\n};\n","import React from \"react\";\nimport Lottie from \"react-lottie\";\nimport PropTypes from 'prop-types';\n\nconst LottieFile = (props) => {\n\n let lottieOptions = {\n loop: props.loop,\n autoplay: true,\n animationData: props.file,\n rendererSettings: {\n preserveAspectRatio: 'xMidYMid slice'\n },\n };\n\n return (\n
\n \n
\n );\n};\n\nexport default LottieFile;\n\nLottieFile.defaultProps = {\n loop: true,\n width: \"65%\"\n};\n\nLottieFile.props = {\n file: PropTypes.string.isRequired,\n loop: PropTypes.bool,\n width: PropTypes.string,\n};","import React from \"react\";\nimport { Row, Col, Typography } from \"antd\";\nimport {CheckCircleTwoTone, CloseCircleTwoTone} from '@ant-design/icons';\nimport PropTypes from 'prop-types';\nimport LottieFile from \"./LottieFile\";\nimport lottieWidget1 from '../../assets/lottie/widget1.json';\nimport lottieWidget2 from '../../assets/lottie/widget2.json';\n\nconst {Text} = Typography;\n\nconst MessageImg = ({type}) => {\n switch(type) {\n case 'success':\n return();\n case 'error':\n return();\n case 'widget1':\n return();\n case 'widget2':\n return();\n default:\n return (null)\n }\n};\n\nconst MessageView = (props) => {\n return (\n
\n \n \n
\n \n
\n
\n {props?.title} \n
\n
\n {props?.subtitle} \n
\n \n
\n
\n );\n};\n\nexport default MessageView;\n\nMessageView.defaultProps = {\n title: '',\n subtitle: '',\n type: null,\n};\n\nMessageView.props = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n type: PropTypes.string,\n};","import React from \"react\";\nimport {Button, Popover} from \"antd\";\nimport PropTypes from 'prop-types';\nimport {ChromePicker} from \"react-color\";\nimport {__} from \"../../utils/appHelper\";\n\nconst ColorPicker = (props) => {\n const {value, onChange} = props;\n return (\n
\n onChange(color?.hex)}\n />}\n title=\"Set color\"\n trigger=\"click\"\n >\n \n \n
\n );\n};\n\nexport default ColorPicker;\n\nColorPicker.defaultProps = {};\n\nColorPicker.props = {\n value: PropTypes.any,\n onChange: PropTypes.func,\n};","import {__} from \"../../utils/appHelper\";\nimport {Switch} from \"antd\";\nimport React from \"react\";\n\nconst HorizontalSwitch = (props) => {\n\treturn (\n\t\t
\n\t\t\t{__(\"automatic language detection\")}\n\t\t\t\n\t\t
\n\t)\n}\n\nexport default HorizontalSwitch\n","import React, { useEffect, useState } from 'react';\nimport {\n Button,\n Col,\n Divider,\n Form,\n Input,\n InputNumber,\n Layout,\n Row,\n Select,\n Typography,\n Modal,\n Switch,\n Radio,\n} from 'antd';\nimport { __, renameProp } from \"../utils/appHelper\";\nimport axios from 'axios'\n\nimport { THEME_CLASSIC, THEME_CUSTOM, THEME_DARK, THEME_LIGHT } from \"../utils/constants\";\nimport Iframe from \"react-iframe\";\nimport MessageView from \"../components/common/MessageView\";\nimport ColorPicker from \"../components/common/ColorPicker\";\nimport { getApiUrl } from \"../constants/globalConfiguration\";\nimport { connect, useSelector } from \"react-redux\";\nimport { getLanguagesWrapped, setBaseURI } from \"../providers/ReduxProvider/actions/userActions\";\nimport * as S from \"../providers/StyleProvider/styleComponents\";\nimport { api } from '../providers/ApiProvider';\nimport HorizontalSwitch from \"../components/common/Switch\";\n\n\nconst { Content } = Layout;\nconst { Title, Text } = Typography;\nconst { Option } = Select;\n\nconst WidgetConfigPage = (props) => {\n\n const { updateLanguages, updateBaseURI } = props\n\n const availableLanguages = useSelector((state) => state?.ui.availableLanguages);\n\n const [preview, setPreview] = useState(null);\n const [widget, setWidget] = useState(null);\n const [showModal, setShowModal] = useState(false);\n const [entitySettings, setEntitySettings] = useState(null)\n const [availableEntities, setAvailableEntities] = useState(null);\n const [update, setUpdate] = useState(-1);\n const [showCustomSettings, setShowCustomSettings] = useState(false);\n const [showLanguages, setShowLanguages] = useState(false)\n\n const [form] = Form.useForm();\n\n const MIN_WIDTH = 400;\n const MAX_WIDTH = 1920;\n const MIN_HEIGHT = 600;\n const MAX_HEIGHT = 1080;\n\n const GODOO_DEFAULT_URL = 'test.godoo.ch';\n\n\n useEffect(() => {\n updateBaseURI(window.location.hostname);\n getAvailableCompanies();\n updateLanguages()\n }, []);\n\n\n function getAvailableCompanies(url) {\n if (!url) {\n url = getApiUrl(window.location.hostname);\n }\n\n return axios.get(`${url}/register/availableEntities`)\n .then(\n response => {\n let data = response.data;\n data.forEach(obj => renameProp(obj, 'name', 'value'));\n setAvailableEntities(data);\n },\n error => {\n console.log(error);\n setAvailableEntities(null);\n }\n );\n }\n\n const onFinish = (values) => {\n\t setPreview(null)\n const resource = (!values.allow || values.allow !== \"signup\") ? \"login\" : `sign-up/${values.entityName}`;\n\n let src = `${window.location.origin}${window.location.pathname}#/${resource}?url=${values.url}&theme=${values.theme}`;\n if (values.entityName) {\n src += `&entityName=${values.entityName}`;\n }\n if (values.allow) {\n src += `&allow=${values.allow}`;\n }\n if (values.theme === THEME_CUSTOM) {\n src += `&primary=${values?.primary.substring(1)}\n &secondary=${values?.secondary.substring(1)}\n &tertiary=${values?.tertiary.substring(1)}`\n }\n\n if (!values.languageAuto) {\n src += `&language=${values?.language}`\n }\n /*\n Widget preview\n */\n const widgetOptions = {\n src,\n width: values.width,\n height: values.height,\n allow: values.allow\n };\n setPreview(widgetOptions);\n /*\n Widget export\n */\n const iFrame = ``;\n setWidget(iFrame);\n setUpdate(0);\n };\n\n const onValuesChange = (changedValues, allValues) => {\n if (changedValues.entityName) {\n api.get(`register/availableEntities/${changedValues.entityName}`).then((response) => {\n api.get(`entitySettings/${response.data.id}`).then((res) => {\n setEntitySettings(res.data)\n });\n });\n }\n\t\tif (changedValues.languageAuto === false) {\n\t\t\tform.setFieldsValue({ ['language']: null })\n\t\t}\n };\n\n const themeSelected = (theme) => {\n (theme === THEME_CUSTOM) ? setShowCustomSettings(true) : setShowCustomSettings(false);\n };\n\n const onUrlBlur = (e) => {\n form.setFieldsValue({ entityName: \"\" });\n updateBaseURI(e.target.value);\n getAvailableCompanies(getApiUrl(e.target.value));\n updateLanguages()\n };\n\n return (\n \n \n \n \n \n {\"\"}\n Plugin\n \n
\n {__(\"configuration\")}\n \n \n \n \n 0),\n message: __(\"please select the company or user-group name for sign-up\"),\n },\n ]}\n >\n \n option.value.toLowerCase().indexOf(input.toLowerCase()) >= 0\n }\n />\n \n \n \n \n \n \n
\n \n \n \n \n\n \n \n \n\n {\n (showCustomSettings) && (\n
\n \n \n \n \n \n \n \n \n \n
\n )\n }\n {\n (entitySettings?.userRegistration?.selfRegistrationEnabled) && (\n <>\n \n \n \n {__(\"login\")}\n {__(\"signup\")}\n {__(\"both\")}\n \n \n \n )\n }\n\n \n\n \n\t \n \n\t prevValues.languageAuto !== currentValues.languageAuto}\n\t >\n\t\t {({ getFieldValue }) => {\n\t\t\t\t\t\t\t\t\t\treturn (getFieldValue('languageAuto') !== false ?\n\t\t\t\t\t\t\t\t\t\t\tnull : (\n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (!value && showLanguages) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn Promise.reject()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn Promise.resolve()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tmessage: __('please select the language'),\n\t\t\t\t\t\t\t\t\t\t\t\t\t}]}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t)\n\t\t }}\n\t \n \n \n
\n \n \n
\n {__(\"Preview\")}\n {\n (preview) ? (\n
\n {\n (widget && (\n
\n\n setShowModal(false)}\n cancelButtonProps={{ style: { display: 'none' } }}\n >\n \n \n \n {widget}\n \n \n \n \n
\n ))\n }\n