{"version":3,"sources":["state/index.ts","state/Localization.ts","theme/index.ts","theme/GlobalStyles.tsx","theme/styled.ts","assets/arrow.svg","components/NumberInut.tsx","components/styled/Button.tsx","components/styled/Typography.tsx","components/RangeInput.tsx","assets/dropdown.svg","components/SelectInput.tsx","components/styled/BorderGroup.tsx","components/styled/InputError.tsx","components/styled/StyledFlex.tsx","components/Calculator.tsx","components/Results.tsx","assets/question-circle-regular.svg","useClickaway.ts","components/Home.tsx","components/App.tsx","serviceWorker.ts","index.tsx","assets/background.jpg","assets/illustration.png"],"names":["AppReducer","state","newState","initialState","isUnset","managers","experiencedManagers","complexity","competition","salary","currency","AppState","React","createContext","undefined","useAppState","useContext","localizations","EN","CZ","CZK","EUR","USD","LocalizationContext","language","useLocalization","value","useCallback","key","replacements","replace","all","substr","length","theme","colors","primary","light","grey","bg","bgDark","text","textGrey","error","textStyles","small","fontSize","normal","heading1","fontWeight","heading2","breakpoints","space","bodyPadding","GlobalStyles","styles","css","styled","_extends","Object","assign","target","i","arguments","source","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","createElement","fill","d","className","_ref","svgRef","title","props","focusable","role","viewBox","ref","ForwardRef","forwardRef","StyledArrow","Arrow","p","NumberInput","noArrows","id","name","onSetValue","onSetTouched","useState","strValue","setStrValue","useEffect","toLocaleString","thousandSeparator","onValueChange","val","formattedValue","floatValue","flexDirection","onClick","Math","min","step","max","Infinity","transform","UnstyledButton","button","Button","Color","darken","string","textColor","style","prop","cssProperty","Typography","typography","shadow","flexbox","textStyle","RangeInput","labels","justifyContent","mt","mb","Array","map","type","SelectInput","options","label","BorderGroup","Flex","InputError","StyledFlex","rounded","fixedWidth","bodyWidth","RelativeFlex","Calculator","getString","dispatch","useFormik","initialValues","onSubmit","values","fetch","validationSchema","Yup","nullable","required","handleChange","handleBlur","handleSubmit","errors","setFieldValue","setFieldTouched","touched","backgroundColor","px","pt","alignItems","as","htmlFor","flexGrow","mr","ml","flexShrink","fontStyle","1","5","onChange","e","currentTarget","onBlur","Result","children","notAnimated","roundedValue","round","useCountUp","end","duration","separator","countUp","update","py","textAlign","my","useClickaway","onClickaway","elemRef","createRef","handleClickaway","event","current","contains","document","addEventListener","removeEventListener","Home","fixedValues","results","useMemo","isSourceTooltipOpen","setSourceTooltipOpen","tooltipClickaway","src","backgroundImage","alt","alignSelf","naturalSlideWidth","naturalSlideHeight","totalSlides","infinite","isPlaying","interval","touchEnabled","dragEnabled","size","o","color","rel","href","index","flexBasis","flexWrap","pr","pl","illustration","pb","App","appState","useReducer","AppStateProvider","Provider","useAppStateProvider","process","LocalizationProvider","localization","Boolean","window","location","hostname","match","ReactDOM","render","getElementById","navigator","serviceWorker","ready","then","registration","unregister","module","exports"],"mappings":"4LAIMA,EAAa,SAACC,EAAkBC,GAAnB,mBAAC,eACbD,GACAC,IAaDC,EAA0B,CAC5BC,SAAS,EACTC,SAAU,EACVC,oBAAqB,EACrBC,WAAY,EACZC,YAAa,EACbC,OAAQ,KACRC,SAAU,OAGRC,EAAWC,IAAMC,cAAmD,CACtEV,OACAW,IAWSC,EAAc,WAEvB,OADiBC,qBAAWL,ICvC1BM,EAAgB,CAClB,aAAc,CACVC,GAAI,iDACJC,GAAI,4CAER,gBAAiB,CACbD,GACI,wHACJC,GACI,8MAER,aAAc,CACVD,GAAI,8DACJC,GAAI,mGAER,sBAAuB,CACnBD,GAAI,kDACJC,GAAI,8DAER,oBAAqB,CACjBD,GAAI,wCACJC,GAAI,uDAER,iCAAkC,CAC9BD,GAAI,yDACJC,GAAI,yDAER,+BAAgC,CAC5BD,GAAI,oDACJC,GAAI,yEAER,iCAAkC,CAC9BD,GAAI,+DACJC,GAAI,yFAER,wBAAyB,CACrBD,GAAI,6DACJC,GAAI,oEAER,2BAA4B,CACxBD,GACI,4HACJC,GACI,gKAER,yBAA0B,CACtBD,GACI,sFACJC,GACI,6GAER,4BAA6B,CACzBD,GACI,wFACJC,GACI,8GAER,oBAAqB,CACjBD,GAAI,iEACJC,GAAI,yGAER,kBAAmB,CACfD,GAAI,4BACJC,GAAI,+CAER,iBAAkB,CACdD,GAAI,YACJC,GAAI,qBAER,gBAAiB,CACbD,GAAI,WACJC,GAAI,sBAER,cAAe,CACXD,GAAI,SACJC,GAAI,WAER,cAAe,CACXD,GAAI,WACJC,GAAI,eAER,eAAgB,CACZD,GAAI,YACJC,GAAI,qBAER,WAAY,CACRD,GAAI,QACJC,GAAI,iBAER,YAAa,CACTD,GAAI,SACJC,GAAI,eAER,gBAAiB,CACbD,GAAI,8BACJC,GAAI,+BAER,wBAAyB,CACrBD,GAAI,YACJC,GAAI,uEAER,2BAA4B,CACxBD,GAAI,WACJC,GAAI,iBAER,sBAAuB,CACnBD,GAAI,gDACJC,GAAI,iDAER,yBAA0B,CACtBD,GAAI,0BACJC,GAAI,kDAER,4BAA6B,CACzBD,GAAI,WACJC,GAAI,iBAER,uBAAwB,CACpBD,GAAI,2BACJC,GAAI,kDAER,gBAAiB,CACbD,GAAI,2CACJC,GAAI,wDAER,iBAAkB,CACdD,GAAI,gEACJC,GAAI,oFAER,yBAA0B,CACtBD,GACI,gFACJC,GAAI,2EAER,uBAAwB,CACpBD,GACI,kFACJC,GAAI,4EAER,gBAAiB,CACbD,GACI,sHACJC,GACI,iLAER,iBAAkB,CACdD,GAAI,kCACJC,GAAI,iDAER,iBAAkB,CACdD,GAAI,iEACJC,GAAI,kGAER,iBAAkB,CACdD,GAAI,2CACJC,GAAI,iDAER,iBAAkB,CACdD,GAAI,uCACJC,GAAI,qDAER,gBAAiB,CACbD,GACI,oQACJC,GACI,kUAER,gBAAiB,CACbD,GACI,oVACJC,GACI,0bAER,aAAc,CACVD,GAAI,uBACJC,GAAI,cAER,aAAc,CACVD,GACI,4FACJC,GACI,yJAER,iBAAkB,CACdD,GAAI,2CACJC,GAAI,mDAER,aAAc,CACVD,GACI,mLACJC,GACI,uPAER,cAAe,CACXD,GACI,4FACJC,GACI,oHAER,cAAe,CACXD,GACI,sHACJC,GACI,qJAER,cAAe,CACXD,GACI,oFACJC,GACI,kHAER,aAAc,CACVD,GACI,6GACJC,GACI,4JAER,iBAAkB,CACdD,GAAI,wBACJC,GAAI,uCAER,aAAc,CACVD,GACI,8RACJC,GACI,gZAER,aAAc,CACVD,GAAI,mCACJC,GAAI,kCAER,YAAa,CACTD,GACI,uTACJC,GACI,wWAER,eAAgB,CACZD,GAAI,eACJC,GAAI,2BAER,aAAc,CACVD,GAAI,6BACJC,GAAI,uBAER,YAAa,CACTD,GACI,+dACJC,GACI,+oBAER,YAAa,CACTD,GAAI,OACJC,GAAI,OAER,YAAa,CACTD,GAAI,+CACJC,GAAI,6CAERC,IAAK,CACDF,GAAI,MACJC,GAAI,WAERE,IAAK,CACDH,GAAI,MACJC,GAAI,UAERG,IAAK,CACDJ,GAAI,MACJC,GAAI,MASNI,EAAsBV,wBAAiC,CACzDW,SAAU,KACVP,kBAaSQ,EAAkB,WAC3B,IAAMC,EAAQV,qBAAWO,GAYzB,OAXkBI,uBACd,SACIC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","file":"static/js/main.c0b8a1a8.chunk.js","sourcesContent":["import React, { useContext } from \"react\";\r\n\r\ntype Action = Partial;\r\n\r\nconst AppReducer = (state: AppStateT, newState: Action): AppStateT => ({\r\n ...state,\r\n ...newState,\r\n});\r\n\r\ninterface AppStateT {\r\n isUnset: boolean;\r\n managers: number;\r\n experiencedManagers: number;\r\n complexity: number;\r\n competition: number;\r\n salary: number;\r\n currency: \"CZK\" | \"EUR\" | \"USD\";\r\n}\r\n\r\nconst initialState: AppStateT = {\r\n isUnset: true,\r\n managers: 1,\r\n experiencedManagers: 0,\r\n complexity: 1,\r\n competition: 1,\r\n salary: 45000,\r\n currency: \"CZK\",\r\n};\r\n\r\nconst AppState = React.createContext<[AppStateT, React.Dispatch]>([\r\n initialState,\r\n undefined as any,\r\n]);\r\n\r\nexport const useAppStateProvider = () => {\r\n const appState = React.useReducer(AppReducer, initialState);\r\n return {\r\n AppStateProvider: AppState.Provider,\r\n appState,\r\n };\r\n};\r\n\r\nexport const useAppState = () => {\r\n const appState = useContext(AppState);\r\n return appState;\r\n};\r\n","import { createContext, useContext, useCallback } from \"react\";\r\n\r\ntype LanguageTypes = \"EN\" | \"CZ\";\r\n\r\nconst localizations = {\r\n \"home.title\": {\r\n EN: \"Failure to share knowledge doesn't come cheap.\",\r\n CZ: \"Nesdílení znalostí je drahé.\",\r\n },\r\n \"home.subtitle\": {\r\n EN:\r\n \"Using our on-line calculator, find out in a minute how much lost knowledge of project managers has cost your company.\",\r\n CZ:\r\n \"Zjistěte během minuty, jaký náklad způsobují ztracené znalosti projektových manažerů ve vaší společnosti díky naší online kalkulačce.\",\r\n },\r\n \"calc.title\": {\r\n EN: \"How much do you lose due to inefficient knowledge transfer?\",\r\n CZ: \"Kolik toho ztrácíte na základě neefektivního předávaní znalostí?\",\r\n },\r\n \"calc.managers.label\": {\r\n EN: \"How many project managers work in your company?\",\r\n CZ: \"Kolik u vás pracuje projektových manažerů?\",\r\n },\r\n \"calc.managers.min\": {\r\n EN: \"Minimal required managers count is 1.\",\r\n CZ: \"Minimální počet manažerů je 1.\",\r\n },\r\n \"calc.experiencedManagers.label\": {\r\n EN: \"How many of them have completed four or more projects?\",\r\n CZ: \"Kolik z nich ukončilo 4 a více projektů?\",\r\n },\r\n \"calc.experiencedManagers.min\": {\r\n EN: \"Minimal required experienced managers count is 0.\",\r\n CZ: \"Minimální počet zkušených manažerů je 0.\",\r\n },\r\n \"calc.experiencedManagers.fewer\": {\r\n EN: \"There can be no more experienced managers then all managers.\",\r\n CZ: \"Zkušených manažerů nemůže byt víc než všech.\",\r\n },\r\n \"calc.complexity.label\": {\r\n EN: \"How complex is a typical project in terms of coordination?\",\r\n CZ: \"Jak složitý je typický projekt z hlediska koordinace?\",\r\n },\r\n \"calc.complexity.sublabel\": {\r\n EN:\r\n \"(number of entities, number of project team members, level of follow-up to processes in the company, number of contracts)\",\r\n CZ:\r\n \"(počet subjektů, počet členů projektového týmu, míra návaznosti na procesy ve společnosti, množství smluv)\",\r\n },\r\n \"calc.competition.label\": {\r\n EN:\r\n \"What is the level of competition in the environment in which your company operates?\",\r\n CZ:\r\n \"Jaká je míra konkurence v prostředí, ve kterém vaše společnost působí?\",\r\n },\r\n \"calc.competition.sublabel\": {\r\n EN:\r\n \"(how tough is the competitive struggle, the use of unfair tactics (corruption), etc.)\",\r\n CZ:\r\n \"(jak tvrdý je konkurenční boj, využívání neférových taktik (korupce) apod.)\",\r\n },\r\n \"calc.salary.label\": {\r\n EN: \"What is the average monthly gross salary of a project manager?\",\r\n CZ: \"Jaký je průměrný měsíční hrubý plat projektového manažera?\",\r\n },\r\n \"calc.salary.min\": {\r\n EN: \"Salary can't be negative.\",\r\n CZ: \"Plat nemůže být záporný.\",\r\n },\r\n \"calc.calculate\": {\r\n EN: \"Calculate\",\r\n CZ: \"Vypočítat\",\r\n },\r\n \"form.required\": {\r\n EN: \"Required\",\r\n CZ: \"Požadované\",\r\n },\r\n \"form.people\": {\r\n EN: \"people\",\r\n CZ: \"lidí\",\r\n },\r\n \"form.simple\": {\r\n EN: \"(simple)\",\r\n CZ: \"(snadný)\",\r\n },\r\n \"form.complex\": {\r\n EN: \"(complex)\",\r\n CZ: \"(složitý)\",\r\n },\r\n \"form.low\": {\r\n EN: \"(low)\",\r\n CZ: \"(nízká)\",\r\n },\r\n \"form.high\": {\r\n EN: \"(high)\",\r\n CZ: \"(vysoká)\",\r\n },\r\n \"results.title\": {\r\n EN: \"Results of the data entered\",\r\n CZ: \"Výsledek zadaných dat\",\r\n },\r\n \"results.tooltip.start\": {\r\n EN: \"Based on \",\r\n CZ: \"Jedná se o průměrné hodnoty vycházející z \",\r\n },\r\n \"results.tooltip.research\": {\r\n EN: \"research\",\r\n CZ: \"průzkumu\",\r\n },\r\n \"results.tooltip.end\": {\r\n EN: \" among project managers in the Czech Republic\",\r\n CZ: \" mezi projektovými manažery v ČR\",\r\n },\r\n \"results.subtitle.start\": {\r\n EN: \"(average time based on \",\r\n CZ: \"(výpočet založen na výstupech \",\r\n },\r\n \"results.subtitle.research\": {\r\n EN: \"research\",\r\n CZ: \"průzkumu\",\r\n },\r\n \"results.subtitle.end\": {\r\n EN: \" among project managers)\",\r\n CZ: \" mezi projektovými manažery v ČR)\",\r\n },\r\n \"results.first\": {\r\n EN: \"hours a week spent by a PM inefficiently\",\r\n CZ: \"hodin týdně stráví PM neefektivně\",\r\n },\r\n \"results.second\": {\r\n EN: \"%currency% per month is the price of inefficient time of 1 PM\",\r\n CZ: \"%currency% měsíčně stojí neefektivní čas jednoho PM\",\r\n },\r\n \"results.third.singular\": {\r\n EN:\r\n \"%currency% represents the annual costs in the organization with %managers% PM\",\r\n CZ: \"%currency% ročně jsou náklady v organizaci s %managers% PM\",\r\n },\r\n \"results.third.plural\": {\r\n EN:\r\n \"%currency% represents the annual costs in the organization with %managers% PM's\",\r\n CZ: \"%currency% ročně jsou náklady v organizaci se %managers% PM\",\r\n },\r\n \"results.text1\": {\r\n EN:\r\n \"This is the time or value of the time that project managers spend searching for information or passing it on, i.e.:\",\r\n CZ:\r\n \"Jde o čas nebo hodnotu času, který u vás projektoví manažeři tráví hledáním informací nebo jejich předáváním, tedy:\",\r\n },\r\n \"results.point1\": {\r\n EN: \"waiting for inputs from others,\",\r\n CZ: \"čekáním na vstupy od ostatních,\",\r\n },\r\n \"results.point2\": {\r\n EN: \"reworking of already finished work due to lack of information,\",\r\n CZ: \"předělávání již hotové práce kvůli nedostatku informací,\",\r\n },\r\n \"results.point3\": {\r\n EN: \"searching for information and documents,\",\r\n CZ: \"hledáním informací a dokumentů,\",\r\n },\r\n \"results.point4\": {\r\n EN: \"disseminating information to others.\",\r\n CZ: \"předávání informací ostatním.\",\r\n },\r\n \"results.text2\": {\r\n EN:\r\n \"This calculated cost is not directly visible. This often leads to companies and managers paying too little attention to the sharing of knowledge and experience. However, inefficiencies will be reflected in higher project costs and lower labour productivity.\",\r\n CZ:\r\n \"Výše vypočítaný náklad není přímo vidět. I díky tomuto se sdílení znalostí a zkušeností věnuje často malá pozornost. Neefektivity se ale projeví ve vyšších nákladech projektů a nižší produktivitě práce.\",\r\n },\r\n \"results.text3\": {\r\n EN:\r\n \"If the numbers seem too high, we can help you streamline your knowledge transfer. The activities above can never be completely eliminated, but in most cases it is possible to significantly reduce the amount of time that needs to be devoted to them. Often only a few small changes are enough and the transfer of knowledge can be improved.\",\r\n CZ:\r\n \"Pokud se vám čísla zdají moc vysoká, můžeme vám pomoci přenos znalostí zefektivnit. Výše uvedené činnosti nelze nikdy zcela eliminovat, většinou je ale možné výrazně snížit množství času, který je třeba jim věnovat. Mnohdy stačí jen pár drobných změn a přenos znalostí začne fungovat lépe.\",\r\n },\r\n \"what.title\": {\r\n EN: \"What to do about it?\",\r\n CZ: \"Jak na to?\",\r\n },\r\n \"what.text1\": {\r\n EN:\r\n \"We have many solutions. Here's a little taste of what's been most successful in practice.\",\r\n CZ:\r\n \"Možnosti řešení máme mnoho. Tady je malá ochutnávka z toho, co se nám v praxi nejčastěji osvědčilo.\",\r\n },\r\n \"what.subtitle1\": {\r\n EN: \"Lessons learned even during the project.\",\r\n CZ: \"Lessons learned i v průběhu projektu.\",\r\n },\r\n \"what.text2\": {\r\n EN:\r\n \"Most project management methodologies recommend evaluating the project at the end of it and recording experiences That makes sense. But it also loses a lot of experiences. Why?\",\r\n CZ:\r\n \"Většina metodik projektového řízení doporučuje zhodnotit projekt na jeho konci a zaznamenat zkušenosti. Dává to smysl. Ale také se tím velká část zkušeností ztratí. Proč?\",\r\n },\r\n \"what.point1\": {\r\n EN:\r\n \"after the end of the project, project managers will mostly recall only more recent events\",\r\n CZ:\r\n \"projektoví manažeři si po konci projektu vybaví většinou jen nedávné události\",\r\n },\r\n \"what.point2\": {\r\n EN:\r\n \"often only part of the problem or its solution is registered - and the experience cannot then be realistically used\",\r\n CZ:\r\n \"často se zaznamená jen část problému nebo jeho řešení - a zkušenosti tak nelze reálně využít\",\r\n },\r\n \"what.point3\": {\r\n EN:\r\n \"after the end of the project, project managers do not want to deal with anything.\",\r\n CZ:\r\n \"projektovým manažerům už se po skončení projektu nechce řešit opravdu nic.\",\r\n },\r\n \"what.text3\": {\r\n EN:\r\n \"The solution is to include short, concise and effective sharing of experiences already during the project.\",\r\n CZ:\r\n \"Řešením je zařadit krátké, stručné a efektivní sdílení zkušeností už v průběhu projektu.\",\r\n },\r\n \"what.subtitle2\": {\r\n EN: \"Involve a third party\",\r\n CZ: \"Zapojte někoho třetího\",\r\n },\r\n \"what.text4\": {\r\n EN:\r\n \"And in addition, you can try having lessons learned taken down by someone outside the project. The point is that if you can explain to someone else what happened to you in the project and how you solved the situation, this will greatly increase the transferability of the experience.\",\r\n CZ:\r\n \"A kromě toho můžete vyzkoušet, že zápis lessons learned bude dělat někdo, kdo není součástí daného projektu. Pokud totiž dokážete vysvětlit někomu třetímu, co se vám v projektu stalo a jak jste danou situaci vyřešili, značně tím zvýšíte přenositelnost zkušenosti.\",\r\n },\r\n \"more.title\": {\r\n EN: \"Would you like to find out more?\",\r\n CZ: \"Chcete vědět víc?\",\r\n },\r\n \"more.text\": {\r\n EN:\r\n \"We are preparing, developing and testing this and other solutions right now. We will then include this in software that we will develop and which will support the proposed processes. Do you want to get involved and be among the first to use the solutions designed? Or might you prefer a tailor-made solution?\",\r\n CZ:\r\n \"Toto a další řešení právě teď připravujeme, vyvíjíme a testujeme. Ta pak zahrneme do softwaru, který budeme vyvíjet a který bude podporovat navržené procesy. Chcete se zapojit a využít pak navržená řešení mezi prvními? Nebo chcete řešení na míru?\",\r\n },\r\n \"more.contact\": {\r\n EN: \"Contact us! \",\r\n CZ: \"Ozvěte se nám! \",\r\n },\r\n \"data.title\": {\r\n EN: \"Where did we get the data?\",\r\n CZ: \"Odkud máme data?\",\r\n },\r\n \"data.text\": {\r\n EN:\r\n \"The values above are based on data from our research. We surveyed more than 150 project managers in Czech and multinational companies. Over two-thirds of them have managed projects for over six years, both internally and for external customers. In the last three years, they have focused mainly on software development and service delivery. Are you interested in what tools they use for communication and sharing knowledge and information? More about our project can be found \",\r\n CZ:\r\n \"Výše uvedené hodnoty vycházejí z dat z našeho výzkumu. Ptali jsme se více než 150 projektových manažerů v českých i nadnárodních společnostech. Přes dvě třetiny z nich řídí projekty více než 6 let a to jak interní, tak pro externí zákazníky. V posledních třech letech se zaměřovali převážně na vývoj softwaru a poskytování služeb. Zajímá Vás, jaké nástroje pro komunikaci a sdílení znalostí a informací používají? Více o našem projektu najdete \",\r\n },\r\n \"data.here\": {\r\n EN: \"HERE\",\r\n CZ: \"ZDE\",\r\n },\r\n \"data.link\": {\r\n EN: \"https://pkm.econ.muni.cz/en/research-results\",\r\n CZ: \"https://pkm.econ.muni.cz/vysledky-vyzkumu\",\r\n },\r\n CZK: {\r\n EN: \"CZK\",\r\n CZ: \"Kč\",\r\n },\r\n EUR: {\r\n EN: \"EUR\",\r\n CZ: \"€\",\r\n },\r\n USD: {\r\n EN: \"USD\",\r\n CZ: \"$\",\r\n },\r\n} as const;\r\n\r\ntype LocalizationState = {\r\n language: LanguageTypes;\r\n localizations: typeof localizations;\r\n};\r\n\r\nconst LocalizationContext = createContext({\r\n language: \"EN\",\r\n localizations,\r\n});\r\n\r\nexport const useLocalizationProvider = (language: LanguageTypes) => {\r\n return {\r\n LocalizationProvider: LocalizationContext.Provider,\r\n localization: {\r\n language,\r\n localizations,\r\n },\r\n };\r\n};\r\n\r\nexport const useLocalization = () => {\r\n const value = useContext(LocalizationContext);\r\n const getString = useCallback(\r\n (\r\n key: keyof typeof localizations,\r\n replacements?: { [key: string]: any },\r\n ) =>\r\n value.localizations[key][value.language].replace(\r\n /%\\w+%/g,\r\n all => replacements?.[all.substr(1, all.length - 2)] ?? all,\r\n ),\r\n [value],\r\n );\r\n return getString;\r\n};\r\n","export const TEXT_COLOR = \"#000000\";\r\n\r\nexport const theme = {\r\n colors: {\r\n primary: \"#0000dc\",\r\n light: \"#d6e6ff\",\r\n grey: \"#a3a3a3\",\r\n bg: \"#f1f1f1\",\r\n bgDark: \"#3f4a5a\",\r\n text: TEXT_COLOR,\r\n textGrey: \"#666666\",\r\n error: \"red\",\r\n },\r\n textStyles: {\r\n small: {\r\n fontSize: \"14px\",\r\n },\r\n normal: {\r\n fontSize: \"16px\",\r\n },\r\n heading1: {\r\n fontSize: \"38px\",\r\n fontWeight: \"bold\",\r\n },\r\n heading2: {\r\n fontSize: \"32px\",\r\n },\r\n },\r\n breakpoints: [\"768px\", \"1024px\"],\r\n space: [0, 4, 8, 16, 32, 64, 128, 256, 512],\r\n bodyPadding: [\"15px\", \"25px\", \"35px\"],\r\n};\r\n\r\nexport type Theme = typeof theme;\r\n","import React from \"react\";\r\nimport { Global, css } from \"@emotion/core\";\r\n\r\nimport { TEXT_COLOR, theme } from \".\";\r\n\r\nconst GlobalStyles = () => (\r\n \r\n);\r\n\r\nexport default GlobalStyles;\r\n","import styled, { CreateStyled } from '@emotion/styled/macro';\r\nimport { Theme } from '.';\r\n\r\nexport default styled as CreateStyled;\r\n","function _extends() { _extends = Object.assign || 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); }\n\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; }\n\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; }\n\nimport React from \"react\";\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M177 159.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 255.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 329.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1z\",\n className: \"\"\n});\n\nvar SvgArrow = function SvgArrow(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, [\"svgRef\", \"title\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"angle-up\",\n role: \"img\",\n viewBox: \"0 0 320 512\",\n className: \"svg-inline--fa fa-angle-up fa-w-10 fa-2x\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _ref2);\n};\n\nvar ForwardRef = React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgArrow, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/arrow.0f0e5bc3.svg\";\nexport { ForwardRef as ReactComponent };","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport React from \"react\";\r\nimport { Box, Flex } from \"reflexbox\";\r\nimport { ReactComponent as Arrow } from \"../assets/arrow.svg\";\r\nimport { Theme } from \"../theme\";\r\nimport styled from \"../theme/styled\";\r\nimport NumberFormat from \"react-number-format\";\r\n\r\nconst StyledArrow = styled(Arrow)`\r\n height: 50%;\r\n padding: 0 4px;\r\n color: ${p => p.theme.colors.textGrey};\r\n max-width: 20px;\r\n user-select: none;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: ${p => p.theme.colors.light};\r\n border-radius: 5px;\r\n }\r\n`;\r\n\r\ntype Props = {\r\n id: string;\r\n value: number | null;\r\n onSetValue: (id: string, value: number | null) => void;\r\n onSetTouched: (id: string, value: boolean) => void;\r\n error?: boolean;\r\n\r\n name: string;\r\n min?: number;\r\n max?: number;\r\n step?: number;\r\n\r\n noArrows?: boolean;\r\n};\r\n\r\nconst NumberInput: React.FC = ({\r\n noArrows,\r\n id,\r\n value,\r\n name,\r\n onSetValue,\r\n onSetTouched,\r\n error,\r\n ...props\r\n}) => {\r\n const [strValue, setStrValue] = React.useState();\r\n React.useEffect(() => {\r\n setStrValue(value?.toLocaleString(\"cs-CZ\"));\r\n }, [value]);\r\n return (\r\n css`\r\n position: relative;\r\n border: 1px solid\r\n ${error ? theme.colors.error : theme.colors.grey};\r\n border-radius: 5px;\r\n background: white;\r\n flex-shrink: 0;\r\n\r\n @media (min-width: ${theme.breakpoints[0]}) {\r\n &:hover > div {\r\n display: flex;\r\n }\r\n }\r\n `}\r\n >\r\n {\r\n setStrValue(val.formattedValue);\r\n onSetValue(id, val.floatValue ?? null);\r\n onSetTouched(id, true);\r\n }}\r\n {...props}\r\n css={(theme: Theme) => css`\r\n appearance: none;\r\n border: none;\r\n background: none;\r\n text-align: center;\r\n width: 100px;\r\n padding: ${theme.space[2]}px ${theme.space[3]}px;\r\n\r\n /* Chrome, Safari, Edge, Opera */\r\n &::-webkit-outer-spin-button,\r\n &::-webkit-inner-spin-button {\r\n -webkit-appearance: none;\r\n margin: 0;\r\n }\r\n\r\n /* Firefox */\r\n -moz-appearance: textfield;\r\n\r\n &:focus {\r\n border-color: ${theme.colors.primary};\r\n }\r\n `}\r\n />\r\n {!noArrows && (\r\n \r\n {\r\n onSetTouched(id, true);\r\n onSetValue(\r\n id,\r\n Math.min(\r\n (typeof value === \"number\" ? value : 0) +\r\n (props.step ?? 1),\r\n props.max ?? Infinity,\r\n ),\r\n );\r\n }}\r\n />\r\n {\r\n onSetTouched(id, true);\r\n onSetValue(\r\n id,\r\n Math.max(\r\n (typeof value === \"number\" ? value : 0) -\r\n (props.step ?? 1),\r\n props.min ?? Infinity,\r\n ),\r\n );\r\n }}\r\n transform=\"rotate(180)\"\r\n />\r\n \r\n )}\r\n \r\n );\r\n};\r\nexport default NumberInput;\r\n","import Color from \"color\";\r\nimport { space, SpaceProps } from \"styled-system\";\r\nimport styled from \"../../theme/styled\";\r\n\r\nexport const UnstyledButton = styled.button`\r\n padding: 0;\r\n margin: 0;\r\n border: 0;\r\n background: none;\r\n`;\r\n\r\nconst Button = styled.button`\r\n color: white;\r\n padding: ${p => p.theme.space[3]}px;\r\n background: ${p => p.theme.colors.primary};\r\n border: 0;\r\n border-radius: 5px;\r\n width: 180px;\r\n font-size: 16px;\r\n font-weight: bold;\r\n ${space}\r\n\r\n &:hover {\r\n background: ${p =>\r\n Color(p.theme.colors.primary)\r\n .darken(0.25)\r\n .string()};\r\n }\r\n`;\r\nexport default Button;\r\n","import * as CSS from \"csstype\";\r\nimport {\r\n flexbox,\r\n FlexboxProps,\r\n ResponsiveValue,\r\n shadow,\r\n ShadowProps,\r\n space,\r\n SpaceProps,\r\n style,\r\n typography,\r\n TypographyProps,\r\n textStyle,\r\n TextStyleProps,\r\n} from \"styled-system\";\r\nimport styled from \"../../theme/styled\";\r\n\r\n// Idea: https://stackoverflow.com/a/55653275\r\nconst textColor = style({\r\n /* stylelint-disable-next-line property-no-unknown */\r\n prop: \"textColor\",\r\n /* stylelint-disable-next-line property-no-unknown */\r\n cssProperty: \"color\",\r\n /* stylelint-disable-next-line property-no-unknown */\r\n key: \"colors\",\r\n});\r\n\r\ninterface ColorProp {\r\n textColor?: ResponsiveValue;\r\n}\r\n\r\nconst Typography = styled.p<\r\n TypographyProps &\r\n SpaceProps &\r\n ColorProp &\r\n ShadowProps &\r\n FlexboxProps &\r\n TextStyleProps\r\n>`\r\n ${typography}\r\n ${space}\r\n ${textColor}\r\n ${shadow}\r\n ${flexbox}\r\n ${textStyle}\r\n`;\r\n\r\nexport default Typography;\r\n","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport React from \"react\";\r\nimport { Flex } from \"reflexbox\";\r\nimport { Theme } from \"../theme\";\r\nimport { UnstyledButton } from \"./styled/Button\";\r\nimport Typography from \"./styled/Typography\";\r\n\r\ntype Props = {\r\n id: string;\r\n value: number;\r\n onSetValue: (id: string, value: number) => void;\r\n onSetTouched: (id: string, value: boolean) => void;\r\n labels?: Partial>;\r\n};\r\n\r\nconst RangeInput: React.FC = ({\r\n id,\r\n value,\r\n onSetValue,\r\n onSetTouched,\r\n labels = {},\r\n}) => {\r\n return (\r\n \r\n css`\r\n border-top: 4px solid ${theme.colors.light};\r\n height: 0;\r\n `\r\n }\r\n >\r\n {[...Array(5).keys()]\r\n .map(i => i + 1)\r\n .map(i => (\r\n {\r\n onSetValue(id, i);\r\n onSetTouched(id, true);\r\n }}\r\n css={(theme: Theme) => css`\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n user-select: none;\r\n cursor: pointer;\r\n\r\n height: 20px;\r\n width: 20px;\r\n margin-top: -12px;\r\n\r\n border-radius: 50%;\r\n border: 1px solid #5f9afe;\r\n\r\n background-color: ${theme.colors.light};\r\n\r\n transition: all 0.2s ease-in-out;\r\n\r\n ${value === i &&\r\n css`\r\n border-width: 4px;\r\n background-color: white;\r\n `}\r\n\r\n ${value !== i &&\r\n css`\r\n &:hover {\r\n border-width: 2px;\r\n background-color: white;\r\n }\r\n `}\r\n `}\r\n >\r\n \r\n {`${i} ${(labels as any)[i] ?? \"\"}`}\r\n \r\n \r\n ))}\r\n \r\n );\r\n};\r\nexport default RangeInput;\r\n","function _extends() { _extends = Object.assign || 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); }\n\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; }\n\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; }\n\nimport React from \"react\";\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z\",\n className: \"\"\n});\n\nvar SvgDropdown = function SvgDropdown(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, [\"svgRef\", \"title\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"caret-down\",\n role: \"img\",\n viewBox: \"0 0 320 512\",\n className: \"svg-inline--fa fa-caret-down fa-w-10 fa-2x\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _ref2);\n};\n\nvar ForwardRef = React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgDropdown, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/dropdown.bd4e509e.svg\";\nexport { ForwardRef as ReactComponent };","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport React from \"react\";\r\nimport { Box } from \"reflexbox\";\r\nimport { Theme } from \"../theme\";\r\nimport { ReactComponent as Dropdown } from \"../assets/dropdown.svg\";\r\n\r\ntype Props = {\r\n options: [string, string][];\r\n} & React.HTMLProps;\r\n\r\nconst SelectInput: React.FC = ({ options, ...props }) => {\r\n return (\r\n css`\r\n position: relative;\r\n border-radius: 5px;\r\n border: 1px solid ${theme.colors.grey};\r\n background: ${theme.colors.light};\r\n `}\r\n >\r\n css`\r\n appearance: none;\r\n border: none;\r\n background: none;\r\n padding-left: 12px;\r\n padding-right: ${theme.space[3]}px;\r\n height: 100%;\r\n `}\r\n >\r\n {options.map(([value, label]) => (\r\n \r\n ))}\r\n \r\n css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n height: 100%;\r\n pointer-events: none;\r\n color: ${theme.colors.textGrey};\r\n width: ${theme.space[2]}px;\r\n margin: 0 ${theme.space[1]}px;\r\n `}\r\n />\r\n \r\n );\r\n};\r\nexport default SelectInput;\r\n","import styled from \"../../theme/styled\";\r\nimport { Flex } from \"reflexbox\";\r\n\r\nconst BorderGroup = styled(Flex)`\r\n & > *:first-child /* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */ {\r\n border-top-right-radius: 0;\r\n border-bottom-right-radius: 0;\r\n margin-right: 0;\r\n }\r\n & > *:last-child /* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */ {\r\n border-left-width: 0;\r\n border-top-left-radius: 0;\r\n border-bottom-left-radius: 0;\r\n margin-left: 0;\r\n }\r\n & > *:not(:first-child):not(:last-child) /* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */ {\r\n border-left-width: 0;\r\n border-radius: 0;\r\n margin-left: 0;\r\n margin-right: 0;\r\n }\r\n`;\r\nexport default BorderGroup;\r\n","import styled from \"../../theme/styled\";\r\nimport Typography from \"./Typography\";\r\n\r\nconst InputError = styled(Typography)`\r\n position: absolute;\r\n right: 0;\r\n bottom: 0;\r\n color: ${p => p.theme.colors.error};\r\n margin: 0;\r\n transform: translateY(100%);\r\n`;\r\nexport default InputError;\r\n","import { css } from \"@emotion/core\";\r\nimport { Flex } from \"reflexbox\";\r\nimport styled from \"../../theme/styled\";\r\n\r\nconst StyledFlex = styled(Flex)<{\r\n shadow?: boolean;\r\n rounded?: boolean;\r\n fixedWidth?: boolean;\r\n bodyWidth?: boolean;\r\n}>`\r\n ${p =>\r\n p.rounded &&\r\n css`\r\n border-radius: 15px;\r\n `}\r\n ${p =>\r\n p.shadow &&\r\n css`\r\n box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);\r\n `}\r\n ${p =>\r\n p.fixedWidth &&\r\n css`\r\n align-self: center;\r\n max-width: ${p.theme.breakpoints[0]};\r\n `}\r\n\r\n ${p =>\r\n p.bodyWidth &&\r\n css`\r\n padding-left: 15px;\r\n padding-right: 15px;\r\n max-width: ${p.theme.breakpoints[1]};\r\n margin: auto;\r\n\r\n @media (min-width: ${p.theme.breakpoints[1]}) {\r\n padding-left: 35px;\r\n padding-right: 35px;\r\n }\r\n\r\n @media (min-width: ${p.theme.breakpoints[0]}) {\r\n padding-left: 25px;\r\n padding-right: 25px;\r\n }\r\n `}\r\n \r\n`;\r\nexport default StyledFlex;\r\n","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport { useFormik } from \"formik\";\r\nimport { FC } from \"react\";\r\nimport { Flex } from \"reflexbox\";\r\nimport * as Yup from \"yup\";\r\nimport { useAppState } from \"../state\";\r\nimport { useLocalization } from \"../state/Localization\";\r\nimport styled from \"../theme/styled\";\r\nimport NumberInput from \"./NumberInut\";\r\nimport RangeInput from \"./RangeInput\";\r\nimport SelectInput from \"./SelectInput\";\r\nimport BorderGroup from \"./styled/BorderGroup\";\r\nimport Button from \"./styled/Button\";\r\nimport InputError from \"./styled/InputError\";\r\nimport StyledFlex from \"./styled/StyledFlex\";\r\nimport Typography from \"./styled/Typography\";\r\n\r\nconst RelativeFlex = styled(Flex)`\r\n position: relative;\r\n`;\r\n\r\nconst Calculator: FC = () => {\r\n const getString = useLocalization();\r\n\r\n const [state, dispatch] = useAppState();\r\n\r\n const {\r\n handleChange,\r\n handleBlur,\r\n handleSubmit,\r\n values,\r\n errors,\r\n setFieldValue,\r\n setFieldTouched,\r\n touched,\r\n } = useFormik({\r\n initialValues: state,\r\n onSubmit: values => {\r\n dispatch({ ...values, isUnset: false });\r\n fetch(\r\n `https://webcentrum.muni.cz/redakce/api/CalculatorApi/Register?countManagers=${values.managers}&countExperienced=${values.experiencedManagers}&complexity=${values.complexity}&competition=${values.competition}&wage=${values.salary}`,\r\n );\r\n },\r\n validationSchema: Yup.object({\r\n managers: Yup.number()\r\n .min(1, getString(\"calc.managers.min\"))\r\n .nullable()\r\n .required(getString(\"form.required\")),\r\n experiencedManagers: Yup.number()\r\n .min(0, getString(\"calc.experiencedManagers.min\"))\r\n .max(\r\n Yup.ref(\"managers\"),\r\n getString(\"calc.experiencedManagers.fewer\"),\r\n )\r\n .nullable()\r\n .required(getString(\"form.required\")),\r\n salary: Yup.number()\r\n .min(0, getString(\"calc.salary.min\"))\r\n .nullable()\r\n .required(getString(\"form.required\")),\r\n }),\r\n });\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n {getString(\"calc.managers.label\")}\r\n \r\n \r\n \r\n {getString(\"form.people\")}\r\n \r\n {touched.managers && errors.managers && (\r\n {errors.managers}\r\n )}\r\n \r\n \r\n \r\n {getString(\"calc.experiencedManagers.label\")}\r\n \r\n \r\n \r\n {getString(\"form.people\")}\r\n \r\n {touched.experiencedManagers &&\r\n errors.experiencedManagers && (\r\n \r\n {errors.experiencedManagers}\r\n \r\n )}\r\n \r\n \r\n \r\n {getString(\"calc.complexity.label\")}\r\n \r\n \r\n {getString(\"calc.complexity.sublabel\")}\r\n \r\n \r\n {touched.complexity && errors.complexity && (\r\n {errors.complexity}\r\n )}\r\n \r\n \r\n \r\n {getString(\"calc.competition.label\")}\r\n \r\n \r\n {getString(\"calc.competition.sublabel\")}\r\n \r\n \r\n {touched.competition && errors.competition && (\r\n {errors.competition}\r\n )}\r\n \r\n \r\n \r\n {getString(\"calc.salary.label\")}\r\n \r\n \r\n \r\n {\r\n if (\r\n e.currentTarget.value !==\r\n values.currency\r\n ) {\r\n setFieldValue(\"salary\", \"\");\r\n }\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n value={values.currency}\r\n options={[\r\n [\"CZK\", getString(\"CZK\")],\r\n [\"EUR\", getString(\"EUR\")],\r\n [\"USD\", getString(\"USD\")],\r\n ]}\r\n />\r\n \r\n {touched.salary && errors.salary && (\r\n {errors.salary}\r\n )}\r\n \r\n \r\n {getString(\"calc.calculate\")}\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\nexport default Calculator;\r\n","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport React from \"react\";\r\nimport { useCountUp } from \"react-countup\";\r\nimport { BoxProps, Flex } from \"reflexbox\";\r\nimport Typography from \"./styled/Typography\";\r\n\r\ntype Props = {\r\n value?: number;\r\n notAnimated?: boolean;\r\n};\r\nconst Result: React.FC & Props> = ({\r\n value,\r\n children,\r\n notAnimated,\r\n ...props\r\n}) => {\r\n const roundedValue = Math.round(Math.max(value ?? 0, 0));\r\n const { countUp, update } = useCountUp({\r\n end: roundedValue,\r\n duration: 0.5,\r\n separator: \" \",\r\n });\r\n React.useEffect(() => {\r\n !notAnimated && update(roundedValue);\r\n }, [update, roundedValue, notAnimated]);\r\n\r\n return (\r\n \r\n \r\n {value !== undefined\r\n ? notAnimated\r\n ? value.toLocaleString(\"cs\")\r\n : countUp\r\n : \"??\"}\r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\nexport default Result;\r\n","function _extends() { _extends = Object.assign || 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); }\n\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; }\n\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; }\n\nimport React from \"react\";\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z\"\n});\n\nvar SvgQuestionCircleRegular = function SvgQuestionCircleRegular(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, [\"svgRef\", \"title\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"far\",\n \"data-icon\": \"question-circle\",\n className: \"svg-inline--fa fa-question-circle fa-w-16\",\n role: \"img\",\n viewBox: \"0 0 512 512\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _ref2);\n};\n\nvar ForwardRef = React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgQuestionCircleRegular, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/question-circle-regular.7aaa513a.svg\";\nexport { ForwardRef as ReactComponent };","import React from \"react\";\r\n\r\nconst useClickaway = (onClickaway: () => void) => {\r\n const elemRef = React.createRef();\r\n\r\n const handleClickaway = (event: Event) => {\r\n if (\r\n elemRef.current &&\r\n !elemRef?.current.contains(event.target as Node)\r\n ) {\r\n onClickaway();\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n document.addEventListener(\"click\", handleClickaway);\r\n document.addEventListener(\"touchend\", handleClickaway);\r\n return () => {\r\n document.removeEventListener(\"click\", handleClickaway);\r\n document.removeEventListener(\"touchend\", handleClickaway);\r\n };\r\n });\r\n\r\n return [elemRef];\r\n};\r\nexport default useClickaway;\r\n","/** @jsx jsx */\r\nimport { css, jsx } from \"@emotion/core\";\r\nimport { CarouselProvider, Slide, Slider } from \"pure-react-carousel\";\r\nimport \"pure-react-carousel/dist/react-carousel.es.css\";\r\nimport { FC, useMemo, useState } from \"react\";\r\nimport { Box, Flex } from \"reflexbox\";\r\nimport backgroundImage from \"../assets/background.jpg\";\r\nimport illustration from \"../assets/illustration.png\";\r\nimport { useAppState } from \"../state\";\r\nimport { useLocalization } from \"../state/Localization\";\r\nimport { theme, Theme } from \"../theme\";\r\nimport GlobalStyles from \"../theme/GlobalStyles\";\r\nimport Calculator from \"./Calculator\";\r\nimport Result from \"./Results\";\r\nimport StyledFlex from \"./styled/StyledFlex\";\r\nimport Typography from \"./styled/Typography\";\r\nimport { ReactComponent as QuestionCircle } from \"../assets/question-circle-regular.svg\";\r\nimport { UnstyledButton } from \"./styled/Button\";\r\nimport useClickaway from \"../useClickaway\";\r\n\r\nconst Home: FC = () => {\r\n const getString = useLocalization();\r\n\r\n const [\r\n {\r\n isUnset,\r\n complexity,\r\n experiencedManagers,\r\n competition,\r\n salary,\r\n currency,\r\n managers,\r\n },\r\n ] = useAppState();\r\n\r\n const fixedValues = [\r\n [13, getString(\"results.first\")],\r\n [24131, getString(\"results.second\", { currency: getString(\"CZK\") })],\r\n [\r\n 868716,\r\n getString(\"results.third.singular\", {\r\n currency: getString(\"CZK\"),\r\n managers: 3,\r\n }),\r\n ],\r\n ] as const;\r\n\r\n const results = [\r\n [\r\n useMemo(\r\n () =>\r\n isUnset\r\n ? undefined\r\n : 14.781 +\r\n complexity * 3.302 -\r\n (experiencedManagers / managers) * 5.807 -\r\n competition * 1.766,\r\n [\r\n isUnset,\r\n complexity,\r\n experiencedManagers,\r\n competition,\r\n managers,\r\n ],\r\n ),\r\n getString(\"results.first\"),\r\n ],\r\n [\r\n useMemo(\r\n () =>\r\n isUnset\r\n ? undefined\r\n : ((14.781 +\r\n complexity * 3.302 -\r\n (experiencedManagers / managers) * 5.807 -\r\n competition * 1.766) /\r\n 40.0) *\r\n salary *\r\n 1.34,\r\n [\r\n isUnset,\r\n complexity,\r\n experiencedManagers,\r\n competition,\r\n salary,\r\n managers,\r\n ],\r\n ),\r\n getString(\"results.second\", { currency: getString(currency) }),\r\n ],\r\n [\r\n useMemo(\r\n () =>\r\n isUnset\r\n ? undefined\r\n : ((14.781 +\r\n complexity * 3.302 -\r\n (experiencedManagers / managers) * 5.807 -\r\n competition * 1.766) /\r\n 40.0) *\r\n salary *\r\n 1.34 *\r\n 12 *\r\n managers,\r\n [\r\n isUnset,\r\n complexity,\r\n experiencedManagers,\r\n competition,\r\n salary,\r\n managers,\r\n ],\r\n ),\r\n getString(\r\n managers > 1\r\n ? \"results.third.plural\"\r\n : \"results.third.singular\",\r\n { currency: getString(currency), managers },\r\n ),\r\n ],\r\n ] as const;\r\n\r\n const [isSourceTooltipOpen, setSourceTooltipOpen] = useState(false);\r\n const [tooltipClickaway] = useClickaway(\r\n () => isSourceTooltipOpen && setSourceTooltipOpen(false),\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n css`\r\n position: absolute;\r\n top: 0;\r\n left: 40%;\r\n height: 100%;\r\n width: 60%;\r\n min-width: 600px;\r\n z-index: 0;\r\n overflow: hidden;\r\n\r\n & > img {\r\n min-height: 100%;\r\n width: 100%;\r\n }\r\n\r\n &::after {\r\n content: \"\";\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n width: 100%;\r\n height: 100%;\r\n display: inline-block;\r\n background-image: linear-gradient(\r\n 90deg,\r\n ${theme.colors.bgDark} 0%,\r\n transparent 50%\r\n );\r\n }\r\n `}\r\n >\r\n \"\"\r\n \r\n \r\n \r\n {getString(\"home.title\")}\r\n \r\n \r\n {getString(\"home.subtitle\")}\r\n \r\n \r\n \r\n {/* Source tooltip */}\r\n css`\r\n z-index: 999;\r\n position: absolute;\r\n bottom: ${theme.space[2]}px;\r\n right: ${theme.space[2]}px;\r\n line-height: 0;\r\n `}\r\n >\r\n \r\n setSourceTooltipOpen(o => !o)\r\n }\r\n color=\"textGrey\"\r\n css={css`\r\n line-height: 0;\r\n cursor: pointer;\r\n border-radius: 50%;\r\n `}\r\n >\r\n \r\n \r\n \r\n {isSourceTooltipOpen && (\r\n css`\r\n position: absolute;\r\n top: -28px;\r\n transform: translateY(-100%);\r\n width: 200px;\r\n line-height: initial;\r\n\r\n @media (max-width: ${theme\r\n .breakpoints[0]}) {\r\n right: 0;\r\n }\r\n `}\r\n >\r\n \r\n {getString(\r\n \"results.tooltip.start\",\r\n )}\r\n \r\n {getString(\r\n \"results.tooltip.research\",\r\n )}\r\n \r\n {getString(\r\n \"results.tooltip.end\",\r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n\r\n \r\n {[0, 1, 2].map(i => (\r\n \r\n \r\n {fixedValues[i][1]}\r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getString(\"calc.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getString(\"results.title\")}\r\n \r\n \r\n {getString(\"results.subtitle.start\")}\r\n \r\n {getString(\"results.subtitle.research\")}\r\n \r\n {getString(\"results.subtitle.end\")}\r\n \r\n \r\n \r\n {results[0][1]}\r\n \r\n css`\r\n border: 1px solid ${theme.colors.grey};\r\n @media (min-width: ${theme.breakpoints[0]}) {\r\n border-top: 0;\r\n border-bottom: 0;\r\n }\r\n @media (max-width: ${theme.breakpoints[0]}) {\r\n border-left: 0;\r\n border-right: 0;\r\n }\r\n `}\r\n >\r\n {results[1][1]}\r\n \r\n \r\n {results[2][1]}\r\n \r\n \r\n {getString(\"results.text1\")}\r\n \r\n \r\n \r\n {getString(\"results.point1\")}\r\n \r\n \r\n {getString(\"results.point2\")}\r\n \r\n \r\n \r\n \r\n {getString(\"results.point3\")}\r\n \r\n \r\n {getString(\"results.point4\")}\r\n \r\n \r\n \r\n {getString(\"results.text2\")}\r\n {getString(\"results.text3\")}\r\n css`\r\n width: 100%;\r\n margin-top: ${theme.space[4]}px;\r\n margin-bottom: ${theme.space[4]}px;\r\n border-color: ${theme.colors.bg};\r\n `}\r\n />\r\n \r\n {getString(\"what.title\")}\r\n \r\n {getString(\"what.text1\")}\r\n \r\n \r\n \r\n {getString(\"what.subtitle1\")}\r\n \r\n {getString(\"what.text2\")}\r\n \r\n \r\n {getString(\"what.point1\")}\r\n \r\n \r\n {getString(\"what.point2\")}\r\n \r\n \r\n {getString(\"what.point3\")}\r\n \r\n \r\n {getString(\"what.text3\")}\r\n \r\n \r\n \r\n {getString(\"what.subtitle2\")}\r\n \r\n {getString(\"what.text4\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getString(\"more.title\")}\r\n \r\n \r\n {getString(\"more.text\")}\r\n \r\n \r\n {getString(\"more.contact\")}\r\n \r\n talpova@econ.muni.cz\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getString(\"data.title\")}\r\n \r\n \r\n {getString(\"data.text\")}\r\n \r\n {getString(\"data.here\")}\r\n \r\n .\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Home;\r\n","import { ThemeProvider } from \"emotion-theming\";\nimport \"pure-react-carousel/dist/react-carousel.es.css\";\nimport React from \"react\";\nimport { useAppStateProvider } from \"../state\";\nimport { useLocalizationProvider } from \"../state/Localization\";\nimport { theme } from \"../theme\";\nimport Home from \"./Home\";\n\nconst App: React.FC = () => {\n const { AppStateProvider, appState } = useAppStateProvider();\n const { LocalizationProvider, localization } = useLocalizationProvider(\n process.env.REACT_APP_LANGUAGE as any,\n );\n\n return (\n \n \n \n \n \n \n \n );\n};\n\nexport default App;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\ntype Config = {\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\n};\n\nexport function register(config?: Config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(\n process.env.PUBLIC_URL,\n window.location.href\n );\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl: string, config?: Config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport App from \"./components/App\";\nimport * as serviceWorker from \"./serviceWorker\";\n\n// Cross-browser default styling\nimport \"sanitize.css\";\n\nReactDOM.render(, document.getElementById(\"esf-calc-react-root\"));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","module.exports = __webpack_public_path__ + \"static/media/background.e01940f8.jpg\";","module.exports = __webpack_public_path__ + \"static/media/illustration.04aaffdc.png\";"],"sourceRoot":""}