{"version":3,"file":"veilederBs-2yqM1bOf.js","sources":["../../../Features/VeilederBorteboerstipend/Components/CustomRadioButtonsStegComponent.tsx","../../../Features/VeilederBorteboerstipend/Utilities/A-AvstandValg.ts","../../../Features/VeilederBorteboerstipend/Utilities/B-ReisetidValg.ts","../../../Features/VeilederBorteboerstipend/Ids.ts","../../../Features/VeilederBorteboerstipend/Store/Valg/Types.ts","../../../Features/VeilederBorteboerstipend/Store/Resultat/Types.ts","../../../Features/VeilederBorteboerstipend/Store/Resultat/Actions.ts","../../../Features/VeilederBorteboerstipend/Store/Valg/Actions.ts","../../../Features/VeilederBorteboerstipend/Components/ResultatComponent.tsx","../../../Features/VeilederBorteboerstipend/Components/ModalKlikkComponent.tsx","../../../Features/VeilederBorteboerstipend/App.tsx","../../../Features/VeilederBorteboerstipend/Store/Resultat/Reducers.ts","../../../Features/VeilederBorteboerstipend/Store/Valg/Reducers.ts","../../../Features/VeilederBorteboerstipend/Store/index.ts","../../../Features/VeilederBorteboerstipend/Utilities/BorteboerstipendApi.ts","../../../Features/VeilederBorteboerstipend/Index.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-static-element-interactions */\r\nimport React from 'react';\r\nimport { RadioButtonValg, RadioButtonValgModel } from '../../Shared/Scripts/Components/RadioButtonValg';\r\nimport { RadioButtonDisplay } from '../../Shared/Scripts/Components/ValgDisplayFunctions';\r\nimport VeilederStegComponent, {\r\n VeilederStegBaseProps,\r\n VeilederStegDefaultProps,\r\n} from '../../Shared/Scripts/Components/VeilederStegComponent';\r\nimport getLabelValue from '../../Shared/Scripts/Utilities/InputUtilities';\r\nimport Valg from '../../Shared/Scripts/Models/Valg';\r\nimport { connect } from 'react-redux';\r\nimport { EpiContext } from '../../Shared/Scripts/Store/EpiContext/Types';\r\nimport { setCollapsed } from '../../Shared/Scripts/Store/StegVisning/Actions';\r\nimport contentResolver from '../../Shared/Scripts/Utilities/EpiContentResolver';\r\nimport { hasParentWithClass } from '../../Shared/Scripts/Utilities/ElementUtilies';\r\nimport VeilederBsDto from '../Models/VeilederBsDto';\r\nimport { VeilederBsAppState } from '../Store';\r\n\r\ntype RadioButtonsStegOwnProps = VeilederStegDefaultProps &\r\n VeilederStegBaseProps & {\r\n sporsmal: keyof VeilederBsDto;\r\n value?: Valg;\r\n valg: Array>;\r\n onInputChange(valg: Valg): void;\r\n stipendBelop: JSX.Element | null;\r\n };\r\n\r\ntype RadioButtonsStegProps = RadioButtonsStegOwnProps & MapStateToProps & MapDispatchToProps;\r\n\r\nclass CustomRadioButtonsStegComponent extends React.PureComponent> {\r\n static defaultProps: VeilederStegDefaultProps = {\r\n neverCollapse: false,\r\n };\r\n\r\n constructor(props: RadioButtonsStegProps) {\r\n super(props);\r\n\r\n this.onInputChange = this.onInputChange.bind(this);\r\n this.onMouseUp = this.onMouseUp.bind(this);\r\n }\r\n\r\n onMouseUp = (event: React.MouseEvent): void => {\r\n const { neverCollapse, sporsmalId, stegVisningSetCollapsed } = this.props;\r\n if (\r\n neverCollapse !== true &&\r\n event.target != null &&\r\n hasParentWithClass(event.target as Element, 'c-radio-input')\r\n ) {\r\n stegVisningSetCollapsed({ id: sporsmalId, isCollapsed: true });\r\n }\r\n };\r\n\r\n onInputChange = (e: React.FormEvent): void => {\r\n const { onInputChange } = this.props;\r\n const inputSource = e.target as HTMLInputElement;\r\n const newValue = {\r\n displayValue: getLabelValue(inputSource) as string,\r\n value: inputSource.value,\r\n id: inputSource.id,\r\n };\r\n\r\n onInputChange(newValue);\r\n };\r\n\r\n render(): JSX.Element {\r\n const {\r\n sporsmalId,\r\n valg,\r\n tittel,\r\n forklaring,\r\n stipendBelop,\r\n sporsmal,\r\n neverCollapse,\r\n classModifier,\r\n customBottomRow,\r\n value,\r\n epiContext,\r\n } = this.props;\r\n\r\n const gruppe = sporsmalId;\r\n const radioValg = valg.map((v: RadioButtonValgModel) =>\r\n RadioButtonValg(\r\n gruppe,\r\n v.id,\r\n v.value,\r\n v.tekst as keyof VeilederBsDto,\r\n value ? value.id === v.id : false,\r\n epiContext,\r\n ),\r\n );\r\n\r\n const display = value ? RadioButtonDisplay(gruppe, value) : null;\r\n return (\r\n \r\n
\r\n {stipendBelop}\r\n
\r\n \r\n {contentResolver(epiContext, sporsmal)}\r\n \r\n
\r\n {radioValg}\r\n
\r\n
\r\n
\r\n \r\n }\r\n displayElement={display}\r\n canCollapse={value !== undefined}\r\n neverCollapse={neverCollapse}\r\n classModifier={classModifier}\r\n customBottomRow={customBottomRow}\r\n />\r\n );\r\n }\r\n}\r\n\r\ninterface MapStateToProps {\r\n epiContext: EpiContext;\r\n}\r\n\r\ninterface MapDispatchToProps {\r\n stegVisningSetCollapsed: typeof setCollapsed;\r\n}\r\n\r\nexport default connect(\r\n (state: VeilederBsAppState): MapStateToProps => {\r\n return {\r\n epiContext: state.epiContext,\r\n };\r\n },\r\n { stegVisningSetCollapsed: setCollapsed },\r\n)(CustomRadioButtonsStegComponent);\r\n","import { RadioButtonValgModel } from '../../Shared/Scripts/Components/RadioButtonValg';\r\nimport VeilederBsDto from '../Models/VeilederBsDto';\r\n\r\nconst merEnn40km = 'a1-ja';\r\nconst mindreEnn40km = 'a2-nei';\r\n\r\nconst aValg: RadioButtonValgModel[] = [\r\n {\r\n id: 'a1',\r\n value: merEnn40km,\r\n tekst: 'valgMerEnn40Km',\r\n },\r\n {\r\n id: 'a2',\r\n value: mindreEnn40km,\r\n tekst: 'valgMindreEnn40Km',\r\n },\r\n];\r\n\r\nexport default {\r\n a1_merEnn40km: merEnn40km,\r\n a2_mindreEnn40km: mindreEnn40km,\r\n aValg,\r\n};\r\n","import { RadioButtonValgModel } from '../../Shared/Scripts/Components/RadioButtonValg';\r\nimport VeilederBsDto from '../Models/VeilederBsDto';\r\n\r\nconst merEnn3Timer = 'b1-ja';\r\nconst mindreEnn3Timer = 'b2-nei';\r\n\r\nconst bValg: RadioButtonValgModel[] = [\r\n {\r\n id: 'b1',\r\n value: merEnn3Timer,\r\n tekst: 'valgMerEnn3Timer',\r\n },\r\n {\r\n id: 'b2',\r\n value: mindreEnn3Timer,\r\n tekst: 'valgMindreEnn3Timer',\r\n },\r\n];\r\n\r\nexport default {\r\n b1_merEnn40km: merEnn3Timer,\r\n b2_mindreEnn40km: mindreEnn3Timer,\r\n bValg,\r\n};\r\n","export const AppContainerId = 'veilederborteboerstipend';\r\nexport const BoksA = 'boks-a';\r\nexport const BoksB = 'boks-b';\r\nexport const BoksResultat = 'resultat';\r\n","import Valg from '../../../Shared/Scripts/Models/Valg';\r\n\r\nexport interface ValgState {\r\n aAvstand?: Valg;\r\n bReisetid?: Valg;\r\n visAvstand: boolean;\r\n visVilkar: boolean;\r\n}\r\n\r\nexport const UPDATE_VALG = 'UPDATE_VALG';\r\nexport const TOGGLE_AVSTAND = 'TOGGLE_AVSTAND';\r\nexport const TOGGLE_VILKAR = 'TOGGLE_VILKAR';\r\n\r\ninterface UpdateValgAction {\r\n type: typeof UPDATE_VALG;\r\n payload: Partial;\r\n}\r\n\r\nexport interface ToggleAvstandAction {\r\n type: typeof TOGGLE_AVSTAND;\r\n}\r\n\r\nexport interface ToggleVilkarAction {\r\n type: typeof TOGGLE_VILKAR;\r\n}\r\n\r\nexport type ValgStateActionTypes = UpdateValgAction | ToggleAvstandAction | ToggleVilkarAction;\r\n","export type ResultatValg = ResultatValgVisning;\r\n\r\nexport interface ResultatValgVisning {\r\n visBoksB: boolean;\r\n visResultatKanFa: boolean;\r\n visResultatKanFaLangReisevei: boolean;\r\n visResultatKanKanskjeFa: boolean;\r\n visGenerellFeil: boolean;\r\n}\r\n\r\nexport const SET_VISNING = 'SET_VISNING';\r\n\r\nexport interface SetVisningAction {\r\n type: typeof SET_VISNING;\r\n payload: Partial;\r\n}\r\n\r\nexport type ResultatActionTypes = SetVisningAction;\r\n","import { SetVisningAction, SET_VISNING, ResultatValgVisning } from './Types';\r\n\r\nexport function setVisning(stegVisning: Partial): SetVisningAction {\r\n return {\r\n type: SET_VISNING,\r\n payload: stegVisning,\r\n };\r\n}\r\n","import {\r\n ValgStateActionTypes,\r\n TOGGLE_AVSTAND,\r\n ToggleAvstandAction,\r\n TOGGLE_VILKAR,\r\n ToggleVilkarAction,\r\n ValgState,\r\n UPDATE_VALG,\r\n} from './Types';\r\n\r\nimport { ThunkAction, ThunkDispatch } from 'redux-thunk';\r\nimport { VeilederBsAppState } from '..';\r\nimport { AnyAction } from 'redux';\r\nimport { setVisning } from '../Resultat/Actions';\r\nimport AAvstandValg from '../../Utilities/A-AvstandValg';\r\nimport BReisetidValg from '../../Utilities/B-ReisetidValg';\r\n\r\nexport function updateValg(newValg: Partial): ValgStateActionTypes {\r\n return {\r\n type: UPDATE_VALG,\r\n payload: newValg,\r\n };\r\n}\r\n\r\nexport function toggleAvstand(): ToggleAvstandAction {\r\n return {\r\n type: TOGGLE_AVSTAND,\r\n };\r\n}\r\n\r\nexport function toggleVilkar(): ToggleVilkarAction {\r\n return {\r\n type: TOGGLE_VILKAR,\r\n };\r\n}\r\n\r\nconst getA = (state: ValgState): string | undefined => {\r\n return state.aAvstand?.value;\r\n};\r\n\r\nconst getB = (state: ValgState): string | undefined => {\r\n return state.bReisetid?.value;\r\n};\r\n\r\nexport const updateVisning = (): ThunkAction => {\r\n return (dispatch: ThunkDispatch, getState: () => VeilederBsAppState): void => {\r\n const currentState = getState();\r\n const visBoksB = visB(currentState);\r\n const visResultatKanFa = visRKanFa(currentState);\r\n const visResultatKanFaLangReisevei = visRKanFaLangReisevei(currentState);\r\n const visResultatKanKanskjeFa = visRKanKanskjeFa(currentState);\r\n\r\n dispatch(\r\n setVisning({\r\n visBoksB,\r\n visResultatKanFa,\r\n visResultatKanFaLangReisevei,\r\n visResultatKanKanskjeFa,\r\n }),\r\n );\r\n };\r\n};\r\n\r\nconst visB = (state: VeilederBsAppState): boolean => {\r\n return getA(state.valg) === AAvstandValg.a2_mindreEnn40km;\r\n};\r\n\r\nconst visRKanFa = (state: VeilederBsAppState): boolean => {\r\n return getA(state.valg) === AAvstandValg.a1_merEnn40km;\r\n};\r\n\r\nconst visRKanFaLangReisevei = (state: VeilederBsAppState): boolean => {\r\n return getB(state.valg) === BReisetidValg.b1_merEnn40km;\r\n};\r\n\r\nconst visRKanKanskjeFa = (state: VeilederBsAppState): boolean => {\r\n return getB(state.valg) === BReisetidValg.b2_mindreEnn40km;\r\n};\r\n","import React from 'react';\r\nimport { EpiContext } from '../../Shared/Scripts/Store/EpiContext/Types';\r\nimport VeilederBsDto from '../Models/VeilederBsDto';\r\nimport { connect } from 'react-redux';\r\nimport { VeilederBsAppState } from '../Store';\r\nimport { toggleVilkar } from '../Store/Valg/Actions';\r\nimport { BoksResultat } from '../Ids';\r\nimport { ModalCompontent } from '../../Shared/Scripts/Components/ModalComponent';\r\nimport { updateZIndex } from '../../Shared/Scripts/Store/EpiContext/Actions';\r\nimport { ArticleContentComponent } from '../../Shared/Scripts/Components/ArticleContentComponent';\r\nimport { updateLiveMessage } from '../../Shared/Scripts/Utilities/LiveMessage';\r\n\r\ninterface ResultOwnProps {\r\n tittel: JSX.Element | null;\r\n sekundartittel: JSX.Element | null;\r\n info: JSX.Element | null;\r\n lenketekst: JSX.Element | null;\r\n overskriftModal: JSX.Element | null;\r\n contentModal: JSX.Element | null;\r\n ariaLabelModal: string;\r\n}\r\n\r\ntype ResultatProps = MapStateToProps & MapDispatchToProps & ResultOwnProps;\r\n\r\nclass ResultatComponent extends React.PureComponent {\r\n constructor(props: ResultatProps) {\r\n super(props);\r\n this.onVilkarClick = this.onVilkarClick.bind(this);\r\n this.onRequestClose = this.onRequestClose.bind(this);\r\n }\r\n\r\n componentDidMount(): void {\r\n updateLiveMessage();\r\n }\r\n\r\n onRequestClose(): void {\r\n this.props.updateZIndex(1);\r\n this.props.toggleVilkar();\r\n }\r\n\r\n onVilkarClick(event: React.MouseEvent): void {\r\n this.props.updateZIndex(2);\r\n this.props.toggleVilkar();\r\n }\r\n\r\n render(): JSX.Element {\r\n const {\r\n tittel,\r\n sekundartittel,\r\n info,\r\n lenketekst,\r\n overskriftModal,\r\n contentModal,\r\n ariaLabelModal,\r\n visVilkar,\r\n } = this.props;\r\n\r\n return (\r\n \r\n
\r\n
\r\n

{tittel}

\r\n
\r\n
\r\n

{sekundartittel}

\r\n
\r\n

{info}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\ninterface MapStateToProps {\r\n epiContext: EpiContext;\r\n visVilkar: boolean;\r\n}\r\n\r\ninterface MapDispatchToProps {\r\n toggleVilkar: typeof toggleVilkar;\r\n updateZIndex: typeof updateZIndex;\r\n}\r\n\r\nexport default connect(\r\n (state: VeilederBsAppState): MapStateToProps => {\r\n return {\r\n epiContext: state.epiContext,\r\n visVilkar: state.valg.visVilkar,\r\n };\r\n },\r\n { toggleVilkar, updateZIndex },\r\n)(ResultatComponent);\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { VeilederBsAppState } from '../Store';\r\nimport { toggleAvstand } from '../Store/Valg/Actions';\r\nimport { ModalCompontent } from '../../Shared/Scripts/Components/ModalComponent';\r\nimport { updateZIndex } from '../../Shared/Scripts/Store/EpiContext/Actions';\r\nimport { ArticleContentComponent } from '../../Shared/Scripts/Components/ArticleContentComponent';\r\nimport * as ValgTypes from '../Store/Valg/Types';\r\n\r\ninterface ModalKlikkPropsOwnProps {\r\n valg: ValgTypes.ValgState;\r\n lenketekst: JSX.Element | null;\r\n overskrift: JSX.Element | null;\r\n content: JSX.Element | null;\r\n ariaLabel: string;\r\n}\r\n\r\ntype ModalKlikkProps = MapStateToProps & MapDispatchToProps & ModalKlikkPropsOwnProps;\r\n\r\nclass ModalKlikkComponent extends React.PureComponent {\r\n constructor(props: ModalKlikkProps) {\r\n super(props);\r\n this.onAvstandClick = this.onAvstandClick.bind(this);\r\n this.onRequestClose = this.onRequestClose.bind(this);\r\n }\r\n\r\n onRequestClose(): void {\r\n this.props.updateZIndex(1);\r\n this.props.toggleAvstand();\r\n }\r\n\r\n onAvstandClick(event: React.MouseEvent): void {\r\n this.props.updateZIndex(2);\r\n this.props.toggleAvstand();\r\n }\r\n\r\n render(): JSX.Element {\r\n const { visAvstand, lenketekst, overskrift, content, ariaLabel } = this.props;\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\ninterface MapStateToProps {\r\n visAvstand: boolean;\r\n}\r\n\r\ninterface MapDispatchToProps {\r\n toggleAvstand: typeof toggleAvstand;\r\n updateZIndex: typeof updateZIndex;\r\n}\r\n\r\nexport default connect(\r\n (state: VeilederBsAppState): MapStateToProps => {\r\n return {\r\n visAvstand: state.valg.visAvstand,\r\n };\r\n },\r\n { toggleAvstand, updateZIndex },\r\n)(ModalKlikkComponent);\r\n","import React from 'react';\r\nimport ReactModal from 'react-modal';\r\nimport { connect } from 'react-redux';\r\nimport { ThunkDispatch } from 'redux-thunk';\r\nimport { AnyAction } from 'redux';\r\n\r\nimport { EpiContext } from '../Shared/Scripts/Store/EpiContext/Types';\r\nimport { FeilmeldingComponent } from '../Shared/Scripts/Components/FeilmeldingComponent';\r\nimport contentResolver, { resolveRawText } from '../Shared/Scripts/Utilities/EpiContentResolver';\r\nimport RadioButtonsStegContainer from '../Shared/Scripts/Components/RadioButtonsStegComponent';\r\nimport CustomRadioButtonsStegComponent from './Components/CustomRadioButtonsStegComponent';\r\nimport Valg from '../Shared/Scripts/Models/Valg';\r\n\r\nimport AAvstandValg from './Utilities/A-AvstandValg';\r\nimport BReisetidValg from './Utilities/B-ReisetidValg';\r\nimport VeilederBsDto from './Models/VeilederBsDto';\r\nimport { VeilederBsAppState } from './Store';\r\nimport * as Ids from './Ids';\r\nimport * as ValgTypes from './Store/Valg/Types';\r\nimport { updateValg, updateVisning } from './Store/Valg/Actions';\r\nimport ResultatContainer from './Components/ResultatComponent';\r\nimport { ResultatValg } from './Store/Resultat/Types';\r\nimport ModalKlikkContainer from './Components/ModalKlikkComponent';\r\nimport { Satser } from './Utilities/BorteboerstipendApi';\r\nimport SiteImproveHandler, { SiteImproveState, SiteImproveEvents, SiteImproveKategorier } from '../Shared/Scripts/Utilities/SiteImproveEventsHandler';\r\nimport { Spinner } from '@lanekassen/ui';\r\n\r\ninterface AppOwnProps {}\r\n\r\ntype AppProps = AppOwnProps & MapStateToProps & MapDispatchToProps;\r\n\r\nconst RadioButtonsStegComponent = RadioButtonsStegContainer();\r\n\r\nReactModal.setAppElement(document.getElementById(Ids.AppContainerId) as HTMLElement);\r\n\r\nexport class App extends React.Component {\r\n constructor(props: AppProps) {\r\n super(props);\r\n }\r\n\r\n render(): JSX.Element {\r\n const { valg, resultat, dispatchUpdateValg, epiContext, satser } = this.props;\r\n const { epiModel, valuta } = this.props.epiContext;\r\n\r\n if (epiContext.epiModelFeilet || resultat.visGenerellFeil) {\r\n return ;\r\n }\r\n\r\n function registerSiteImproveEvents(): void {\r\n if(!SiteImproveState.Startet) {\r\n if(valg.aAvstand != undefined) {\r\n //veileder påstartet\r\n SiteImproveState.Startet = true;\r\n SiteImproveHandler.registerSiteImproveEvent(SiteImproveKategorier.Veileder, SiteImproveEvents.VeilederStart, SiteImproveHandler.hentOverskrift());\r\n }\r\n }\r\n\r\n if(!SiteImproveState.Fullfort) {\r\n if(resultat.visResultatKanFa || resultat.visResultatKanFaLangReisevei || resultat.visResultatKanKanskjeFa) {\r\n //veileder fullført\r\n SiteImproveState.Fullfort = true;\r\n SiteImproveHandler.registerSiteImproveEvent(SiteImproveKategorier.Veileder, SiteImproveEvents.VeilederFullfort, SiteImproveHandler.hentOverskrift());\r\n }\r\n }\r\n }\r\n\r\n if (epiModel != null && satser !== null) {\r\n const stipendBelop: JSX.Element = (\r\n
\r\n
{contentResolver(epiContext, 'dekorasjonForBelopAvstand')}
\r\n
\r\n {Math.round(satser === undefined || satser === null ? 0 : satser.ST01_MaksBostipendManed)}{' '}\r\n \r\n {valuta}\r\n \r\n
\r\n
{contentResolver(epiContext, 'dekorasjonEtterBelopAvstand')}
\r\n
\r\n );\r\n\r\n const modalKlikkRad: JSX.Element = (\r\n \r\n );\r\n\r\n return (\r\n
\r\n {registerSiteImproveEvents()}\r\n ): void => {\r\n dispatchUpdateValg({ aAvstand: nyttValg });\r\n }}\r\n neverCollapse={true}\r\n value={valg.aAvstand}\r\n customBottomRow={modalKlikkRad}\r\n />\r\n {resultat.visBoksB && (\r\n \r\n

{contentResolver(epiContext, 'infoReisetid')}

\r\n
\r\n }\r\n sporsmal=\"ledetekstReisetid\"\r\n valg={BReisetidValg.bValg}\r\n onInputChange={(nyttValg: Valg): void => {\r\n dispatchUpdateValg({ bReisetid: nyttValg });\r\n }}\r\n value={valg.bReisetid}\r\n />\r\n )}\r\n {resultat.visResultatKanFa && (\r\n \r\n )}\r\n {resultat.visResultatKanFaLangReisevei && (\r\n \r\n )}\r\n {resultat.visResultatKanKanskjeFa && (\r\n \r\n )}\r\n \r\n );\r\n } else {\r\n return ;\r\n }\r\n }\r\n}\r\n\r\ninterface MapStateToProps {\r\n valg: ValgTypes.ValgState;\r\n epiContext: EpiContext;\r\n resultat: ResultatValg;\r\n satser: Satser | null;\r\n}\r\n\r\ninterface MapDispatchToProps {\r\n dispatchUpdateValg: (newValg: Partial) => void;\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch: ThunkDispatch): MapDispatchToProps => ({\r\n dispatchUpdateValg: (newValg: Partial): void => {\r\n dispatch(updateValg(newValg));\r\n dispatch(updateVisning());\r\n },\r\n});\r\n\r\nconst mapStateToProps = (state: VeilederBsAppState): MapStateToProps => ({\r\n valg: state.valg,\r\n epiContext: state.epiContext,\r\n resultat: state.resultat,\r\n satser: state.satser\r\n});\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(App);\r\n","import { ResultatValg, SET_VISNING, ResultatActionTypes } from './Types';\r\nimport { ValgStateActionTypes } from '../Valg/Types';\r\n\r\nconst initialState: ResultatValg = {\r\n visBoksB: false,\r\n visResultatKanFa: false,\r\n visResultatKanFaLangReisevei: false,\r\n visResultatKanKanskjeFa: false,\r\n visGenerellFeil: false,\r\n};\r\n\r\nexport function resultatReducer(\r\n state: ResultatValg = initialState,\r\n action: ValgStateActionTypes | ResultatActionTypes,\r\n): ResultatValg {\r\n switch (action.type) {\r\n case SET_VISNING: {\r\n return {\r\n ...state,\r\n ...action.payload,\r\n };\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { ValgStateActionTypes, ValgState, TOGGLE_AVSTAND, TOGGLE_VILKAR, UPDATE_VALG } from './Types';\r\n\r\nexport const initialState: ValgState = {\r\n aAvstand: undefined,\r\n bReisetid: undefined,\r\n visAvstand: false,\r\n visVilkar: false,\r\n};\r\n\r\nexport function valgReducer(state: ValgState = initialState, action: ValgStateActionTypes): ValgState {\r\n const newState = getNewState();\r\n return newState;\r\n\r\n function getNewState(): ValgState {\r\n switch (action.type) {\r\n case UPDATE_VALG: {\r\n if (action.payload.aAvstand) {\r\n return {\r\n ...initialState,\r\n ...action.payload,\r\n };\r\n } else {\r\n return {\r\n ...state,\r\n ...action.payload,\r\n };\r\n }\r\n }\r\n case TOGGLE_AVSTAND: {\r\n return {\r\n ...state,\r\n visAvstand: !state.visAvstand,\r\n };\r\n }\r\n case TOGGLE_VILKAR: {\r\n return {\r\n ...state,\r\n visVilkar: !state.visVilkar,\r\n };\r\n }\r\n default:\r\n return state;\r\n }\r\n }\r\n}\r\n","import ReduxThunk from 'redux-thunk';\r\nimport { createStore, combineReducers, Store, applyMiddleware } from 'redux';\r\nimport VeilederBsDto from '../Models/VeilederBsDto';\r\nimport { epiContextReducer } from '../../Shared/Scripts/Store/EpiContext/Reducers';\r\nimport { resultatReducer } from './Resultat/Reducers';\r\nimport { EpiContext, UpdateEpiContextActionTypes } from '../../Shared/Scripts/Store/EpiContext/Types';\r\nimport { stegVisningReducer } from '../../Shared/Scripts/Store/StegVisning/Reducers';\r\nimport { EpiAppStateMedSteg } from '../../Shared/Scripts/Store/Types';\r\nimport { satserReducer } from '../../Shared/Scripts/Store/Satser/Reducers';\r\nimport { valgReducer } from './Valg/Reducers';\r\nimport { Satser } from '../Utilities/BorteboerstipendApi';\r\n\r\nconst rootReducer = combineReducers({\r\n valg: valgReducer,\r\n resultat: resultatReducer,\r\n satser: satserReducer,\r\n epiContext: (\r\n state: EpiContext | undefined,\r\n action: UpdateEpiContextActionTypes,\r\n ): EpiContext => epiContextReducer(state, action),\r\n stegVisning: stegVisningReducer,\r\n});\r\n\r\nexport type VeilederBsAppState = EpiAppStateMedSteg & {\r\n valg: ReturnType;\r\n resultat: ReturnType;\r\n satser: Satser | null;\r\n};\r\n\r\nexport default function configureStore(): Store {\r\n return createStore(rootReducer, applyMiddleware(ReduxThunk));\r\n}\r\n","import axios, { AxiosResponse } from 'axios';\r\n\r\nexport const getSatser = (): Promise> => {\r\n return axios.get('/api/mt1535/satser/BorteboerLarling');\r\n};\r\n\r\nexport interface Satser {\r\n ST01_MaksBostipendManed: number;\r\n ST01_BostipendLaringelonnNedreGrenseTrekk: number;\r\n ST01_BostipendLaringelonnReduksjonsfaktor: number;\r\n}\r\n","import React from 'react';\r\nimport { createRoot } from 'react-dom/client';\r\nimport { Provider } from 'react-redux';\r\nimport App from './App';\r\nimport configureStore from './Store';\r\nimport InitEpiMessages from '../Shared/Scripts/Utilities/EpiMessages';\r\nimport { updateLanguage } from '../Shared/Scripts/Store/EpiContext/Actions';\r\nimport { epiResolveLanguage } from '../Shared/Scripts/Utilities/EpiResolveLanguage';\r\nimport { AppContainerId } from './Ids';\r\nimport { getSatser, Satser } from './Utilities/BorteboerstipendApi';\r\nimport { AxiosResponse } from 'axios';\r\nimport { setSatser } from '../Shared/Scripts/Store/Satser/Actions';\r\nimport { setVisning } from './Store/Resultat/Actions';\r\nimport { lanekassenTheme, ThemeProvider } from '@lanekassen/ui';\r\n\r\nconst store = configureStore();\r\nstore.dispatch(updateLanguage(epiResolveLanguage()));\r\n\r\nconst container = document.getElementById(AppContainerId);\r\n\r\nif (container != null) {\r\n const root = createRoot(container);\r\n const contentLink = container.attributes['data-content'].value as string;\r\n InitEpiMessages(store, contentLink);\r\n\r\n getSatser()\r\n .then((response: AxiosResponse): void => {\r\n store.dispatch(setSatser(response.data));\r\n })\r\n .catch((): void => {\r\n store.dispatch(setVisning({ visGenerellFeil: true }));\r\n });\r\n\r\n const AppRoot = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n root.render();\r\n}\r\n"],"names":["jsx","jsxs","contentResolver","Ids.AppContainerId","CustomRadioButtonsStegComponent","Ids.BoksA","Ids.BoksB","Spinner","initialState","ReduxThunk","createRoot","lanekassenTheme","App"],"mappings":"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"}