{"version":3,"mappings":"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","names":["pushToDataLayer","payload","trackSearch","phrase","type","resultsCount","trackTool","name","labels","action","trackProsesshjelp","trackPageview","hasContent","trackError","level","details","trackNavigation","label","pageSection","track404","trackLanguage","language","Projects","isAuthorized","_b","_a","LOGGED_IN_COOKIE_NAME","SESSION_ID_COOKIE_NAME","hasCookie","cookieName","value","cookie","e","getSuffix","suffix","hasCookieWithSuffix","hasLoggedInCookie","getCookieValue","cookieWithSuffix","getHostnameWithoutSubdomain","IdentityProvider","parseParams","params","queryString","key","x","createBaseHeaders","checkStatus","response","contentType","correlationId","getCorrelationIdFromResponse","error","HelsenorgeHttpError","decycle","object","objects","paths","derez","path","i","nu","LogLevel","unwrapError","potentialError","HelsenorgeProxyError","innerError","generateEntry","message","optionalParams","fullMessage","previous","current","postLogEntry","logEntry","getTjenesterUrl","logToServer","logLevel","getServerLogLevel","exportFunctions","debug","allowConsoleOutput","info","trace","warn","assert","test","clear","count","countTitle","dir","dirxml","group","groupTitle","groupCollapsed","groupEnd","log","profile","reportName","profileEnd","table","data","time","timerName","timeEnd","isProxyErrorResponse","isPascalCaseProxyErrorResponse","mapPascalCaseErrorToCamelCase","saveCorrelationId","getCorrelationIdList","statusCode","_c","getTjenesterApiUrl","proxyName","endpoint","apiUrl","getRequestHeaders","headers","createHeaders","getHelsenorgeUrl","createQueryString","handleError","baseCrud","method","baseUrl","requestBody","get","endPoint","LanguageLocales","decapitalize","s","DateFormat","loadLocale","setDefaultOptions","nb","nn","enGB","se","safeParseJSON","date","_date","parseJSONDF","toCentralEuropeanTime","cetDate","formatCET","formatStr","options","formatDF","safeFormatCET","__cookieOptions__","getCookieDomainAndPath","setSharedCookie","maxAgeInDays","maxAgeInSeconds","HeaderFooterEvents","CmsBlocksEvents","CommonEvents","WebComponents","StepEvents","SamtykkeType","SamtykkeLevel","FullmaktType","SamtykkeStatusType","RepresentasjonforholdType","StatusKodeType","SessionTimeoutAction","PersonverninnstillingKategori","TjenesteTilgangStatus","Personverninnstilling","CmsContentApiVersions","getVisPersonvelger","getErRepresentasjon","setAllowNavigation","getHarAktivtForeldreSamtykke","getPersonverninnstillinger","hasPersonverninnstilling","guid","useEffect","dispatchCustomEvent","selector","eventType","detail","element","HNeventShowAppInvitation","onAppOpen","onWebLogin","onClose","HNeventSetRedirectTo","redirectTo","HNeventSetRedirectToUrlAfterLogin","redirectToUrlAfterLogin","HNeventSetHiddenPromopanel","isHidden","HNaddEventListener","event","handler","passive","LANGUAGE_COOKIE_NAME","LANGUAGE_COOKIE_EXPIRES_IN_DAYS","getUserLanguage","setUserLanguage","useSetUserLanguageEvent","callback","getIsoLanguageName","setDocumentLanguage","isoLanguage","selectCurrentLanguage","state","selectLanguages","languageChanged","createAction","allowedLanguagesReplaced","safeLoadLocale","createLanguageReducer","allowedLanguages","userLanguage","initialCurrentLanguage","initialState","createReducer","builder","defaultLanguageReducer","isDebug","getResourceKey","project","getResourcesFromState","getResourceWithId","json","getModifiedResourcesForTest","resourceText","shouldFetchResources","resource","fetchResources","createAsyncThunk","getResources","rejectWithValue","getState","resourcesSlice","createSlice","resources$2","useResources","dispatch","useDispatch","resources","useSelector","SideSomIkkeFinnesSvg","_jsx","_jsxs","__glob","map","fn","globImport_json","__vitePreload","getResourceItem","projectName","frameworkNbNo","contentNbNo","PageNotFound","forsideUrl","Title","styles","Button","Loader","getPath","getAssetsUrl","getSidetittelId","isCustomElementRegistered","isTemplateRenderedServerSide","templateElement","createMicrowebTemplate","templateName","isWebpackAssetsJson","getHelsenorgeCssUrl","elementList","linkElement","blockUntilEvent","target","resolve","fetchWebComp","props","domain","entryName","componentName","includeHelsenorgeCss","microwebTemplate","assetsUrl","assets","appendStylesheet","href","cssElement","appendScript","src","scriptElement","helsenorgeCssUrl","asset","_d","React","WebCompConsumer","webCompFromMicroFrontend","envSafeUrl","url","getFeatureToggle","featureName","getFeatureToggles","_e","DOMPurify","TRUSTED_TYPES_FEATURE_NAME","hasDefaultTrustedTypesPolicy","isTrustedTypesEnabled","DefaultSanitizeConfig","sanitize","html","SafeHTML","tagName","testId","className","rest","CustomTag","classNames","designsystemtypography","Markdown","AnchorLink","List","getContentApiUrl","getContentApiPreviewUrl","enableContentApiPreview","version","preview","hostName","credentials","languageCode","restParams","post","patch","selectCmsTjenesteTekster","getTjenesteTeksterKey","selectCmsTjenesteTekstForHjelpetekstId","hjelpetekstId","t","_h","_g","_f","selectFeedbackResources","getCanShowHjelpetekstInPageHeader","tjenesteNavn","spesifikkHjelpeTekst","tjenesteTekster","shouldFetchTjenesteTekster","cmsTjenesteTekster","fetchTjenesteTekster","cmsTjenesteTeksterSlice","aria","domEl","siblings","sibling","child","keyCode","getEventTarget","getDocumentActiveElement","logCallback","domNode","root","TrapFocus","isTriggerWithinTrappedArea","activeElement","tabbable","itemWithFocus","currentFocusIndex","previousElement","previousFocusIndex","nextElement","nextFocusIndex","item","radioGrouItems","selectedItems","EkspanderendeTekstBlock","title","mainContent","Expander","PortableText","EkspanderendeBlock","EkspanderendeBlockComponent","PromoBlockType","PromoBlockColors","ImageType","WindowActionEnum","Size","VideoType","CardsPerRow","VideoTheme","Image","imageUrl","caption","copyright","size","alternativeText","figureClass","imageClass","captionClass","typography","cmsstyles","ImageBlock","ImageBlockComponent","Link","children","CmsLinkList","color","links","LinkList","text","iconName","index","LazyIcon","LinkListBlock","titleHtmlMarkup","additionalLinkList","useGridLayout","contentClassName","cn","useContext","backgroundColor","PortableTextContext","LinkListBlockComponent","handleIOSSafariUA","ua","iOS","isAppleMobileDevice","webkit","isAndroid","getAppUrl","LoginButton","htmlMarkup","icon","rightSideIcon","appUrl","setAppUrl","buttonRef","triggerOriginalBehaviour","useAppUrl","mobileOnClick","Icon","getIconColor","theme","bindClassNames","Panel","emphasize","linkTitle","intro","colorName","linkTarget","large","hoverRef","isHovered","useHover","iconComponent","_Fragment","IconSize","iconOrEmphasisComponent","spacingClassNames","titleComponent","ArrowRight","renderSection","linkClassNames","LoginBlock","authenticatedTitle","authenticatedIntro","hideIfAuthenticated","buttonText","showOnlyButton","isAuthenticated","setIsAuthenticated","useState","getColorName","contextColor","blockColor","LoginBlockComponent","TextBlockComponent","titleAppearance","mainIntro","mainBody","fontStyles","TextBlock","RichTextTitle","htmlMarkupAppearanceMap","VimeoSubtitleLanguageCodes","useRef","YouTubeTermsOfService","handleAccept","checkboxRef","Checkbox","YOUTUBE_TOS_COOKIE_NAME","YOUTUBE_EVENT_NAME","YOUTUBE_COOKIE_AGE_DAYS","VideoSpiller","description","videoId","videoType","altText","showTextContent","subtitleLanguageCode","tosAccepted","setTosAccepted","remember","handleAcceptEvent","getVideoUrl","getAllowAttribute","videoUrl","allowAttribute","showTermsOfService","renderTextContent","VideoBlock","VideoSpillerComponent","Spacer","AnalyticsId","VideoKort","onClick","wrapperClassName","selected","hasFullWidth","cardsPerRow","playVideoLabel","uuid","useUuid","buttonId","titleId","descriptionId","wrapperClasses","videoCardClasses","imageClasses","buttonAriaLabelledBy","buttonAriaDescribedBy","playLabelClasses","titleClasses","designTheme","Play","VideoMatrise","videoCards","currentIndex","setIndex","matriseRef","card","VideoMatriseBlock","VideoMatriseComponent","isVideoThemeColor","globalComponents","createContext","components","PortableTextReact","Seksjon","id","seksjon","expanded","errorMessage","seksjonComponent","loader","NotificationPanel","sectionClasses","ChevronUp","ChevronDown","Collapse","HjelpeskuffComponent","isVisible","defaultSeksjon","seksjoner","breakpoint","useBreakpoint","disableTransition","setDisableTransition","helpTitleRef","helpDrawerRef","helpContentsRef","prevAriaHiddens","setPrevAriaHiddens","trapFocus","setTrapFocus","prevFocus","setPrevFocus","useFocusToggle","trackToggleOpen","activeSeksjonId","isOpen","activeSeksjon","enableTrapFocus","toggleFocus","node","releaseFocus","handleToggleClick","elementIsInHelpDrawer","eventTarget","elementIsInHjelpetrigger","isMobile","Breakpoint","isOpenInHistoryState","removePreventscroll","isLightboxOpen","setScroll","open","close","disableTransitionToPreventDoubleAnimation","popStateListener","helpDrawerOpen","clickListener","eventPath","removeSeksjon","triggerId","helpDrawerClasses","defaultSeksjonComponent","seksjonerComponent","style","ariaLabelTitleText","HelpSign","ChevronRight","ChevronLeft","X","TOGGLE_SHOW","TOGGLE_SHOW_HELPITEM","SET_ACTIVE_HELPBUBBLE","HIDE","SHOW","REMOVE_SEKSJON","TOGGLE_EXPANDED","ADD_HJELPETRIGGER","REMOVE_HJELPETRIGGER","POPULATE_SKUFF","collapseAll","isDefaultTrigger","processToggleShowHelp","activeTriggerComponentId","sameTriggerId","sameTriggerComponentId","getBlankSeksjonIdIfActiv","removeSection","reducer","toggleShowHjelpeskuff","toggleShowHelpItem","triggerComponentId","removeSeksjonTekst","toggleExpanded","hideHjelpeskuff","showHjelpeskuff","addHjelpetrigger","removeHjelpetrigger","setActiveBubble","populateSkuff","getTriggerData","triggerData","sporsmaalTekst","hjelpeboble","hjelpetekst","overskrift","getActiveBubble","getDefaultTekst","spesifikkHjelpetekst","tjenesteTeksterDetails","getSeksjonTekst","hjelpeteksterForTjeneste","ht","TriggerHelpItemEvent","AddHjelpetrigger","RemoveHjelpetrigger","HjelpeskuffContainer","triggerComponentIds","mount","other","mapStateToProps","mapDispatchToProps","connect","HjelpetriggerComponent","sporsmalstekst","classes","helpBubbleIsExpanded","stopPropagation","useCustomEvent","ref","handleHelpClick","helpElement","triggerHelpItemEvent","trigger","HelpQuestion","Trigger","HjelpebobleComponent","onChange","onShowMoreClick","visible","bubbleText","moreHelpText","hjelpetriggerRef","showMoreButton","renderBubbleContent","showMoreClickHandler","renderBubble","HelpBubble","HjelpetriggerContainer","addHjelpetriggerEvent","getResourcesEvent","GetResourcesEvent","removeHjelpetriggerEvent","isDefault","Hjelpetrigger","overrideHelpetekstId","overrideTjenesteNavn","activeBubble","extraProps","helpTriggerItem","SharingStatus","selectedStatusType","sharingStatus","FrankensteinSharingStatus","Eye","NoEye","PageHeader","subtitle","delAvForeldresamtykke","headerClassName","headerSubtitleClassName","headerTitleClassName","headerIngressClassName","showHjelpetrigger","hasHjelpetrigger","renderHjelpetrigger","frameworkstyles","pageHeaderClasses","ErrorMessage","labelId","isEmpty","obj","PageLoader","warning","spinning","ariaAttributes","renderSuggestion","suggestion","getSuggestionValue","Autosuggest","inputId","errorTextUuid","inputProps","getAriaDescribedBy","ErrorWrapper","renderLabel","FormOnColor","ReactAutosuggest","SubContent","countShowing","showMorePageSize","showMoreButtonClasses","showMoreButtonText","updateCountShowing","subContentClasses","classnames","reverseSortDirection","sortDir","SortDirection","columns","colSortDirs","onHeaderClickSortChange","initialSortColumnKey","sortDisabled","sortColumnKey","expandableRow","isTwoDimensional","sortedData","TableHeadCell","column","altTitle","headerkey","sortDirection","Cell","highlight","highlightStartIndex","highlightEndIndex","textStart","textHighlight","textEnd","highlightText","childProps","highlightedChildren","columnKey","content","TableCell","Row","expandableRowKey","rowKey","toggle","rowData","tableId","showDetailsText","hideDetailsText","newColumns","expandableRowId","TableExpanderCell","processedJsonObjectName","rowValue","processedColName","rowClasses","cells","TableRow","sortIndexes","useNumericSort","customSetSortValue","a","b","valueA","valueB","processedColNameValue","tempA","tempB","columnValue","compareOptions","sortVal","isTableTwoDimensional","createLevel2Rows","isExpanded","rows","childRows","j","childRowKey","createRows","toggleExpandRow","getOrCreateRowRef","rowKeyColumnKey","emptyContentText","emptyContentElement","expandedRows","isExpandableRow","level2Rows","isColumn","checkChildren","updateColumns","DataTable","_prevProps","prevState","isClicked","newCountShowing","initialSortDirIsAsc","disableTwoDimensional","childrenProps","nextProps","updatedState","nextSortColumnKey","nextSortColumDir","newData","currentColumnCount","nextColumnCount","wrapperClassNames","tableClassNames","breakpointConfig","noAnchorLinkWrapper","rowClassNames","mode","tableClasses","captionId","Table","TableHead","HeaderCategory","TableBody","Column","ExpandableRow","colspan","childrenElement","TableExpandedRow","defaultResources","ResourcesContext","useResourcesContext","ResourcesContextProvider","NoScroll","OffCanvas","isOpened","setIsVisible","wrapperRef","handleTransitionEnd","useFocusTrap","useKeyboardEvent","KeyboardEventKey","contentClasses","FilterGroup","placeholder","showMobileFilterState","setShowMobileFilterState","handleToggleMobileFilterState","offCanvasHeader","FormGroup","Dropdown","DesktopSort","maxLabelLength","setMaxLabelLength","isFluid","handleSort","newMaxLabelLength","Select","useStateValue","stateValue","setStateValue","MobileSort","setIsOpen","sortKey","setSortKey","resetSortKey","handleOpen","handleClose","cb","handleShowResults","RadioButton","FilterSortWrapper","FilterSort","Status","isSortFilterOption","option","moveSortLast","aIsSort","bIsSort","Filter","afterHeadingChildren","afterActiveFiltersChildren","activeFilters","extraFilterOptions","showFilters","filterOptions","footerContent","isAlwaysOpen","isDisabled","allowMobileView","numResults","status","statusText","onFilterOpen","onSubmit","onResetActiveFilters","searchBelowFilter","searchFilter","isMobileUA","prevActiveFilters","setPrevActiveFilters","showFiltersState","setShowFiltersState","isLoading","isSlowSearch","toggleShowMainFilter","onSubmitHandler","isFilterResultSubmitted","resetActiveFilters","af","activeFilterTag","renderActiveFilters","renderTags","renderChips","TagList","Tag","onActiveFilterClicked","activeFilter","Chip","NoFilter","renderFilterOptions","isInsideFilter","sortedFilterOptions","renderChildren","isComponent","fo","renderSlowSearchSubmitButton","renderFilter","renderDesktopFilter","renderAfterHeadingChildren","noBottomPaddingClass","ExpanderSize","counter","FilterSearch","disabled","defaultValue","refObject","usePseudoClasses","isMutableRefObject","mergedRefs","mergeRefs","containerClassNames","clearSearchText","handleKeydown","Input","Close","useFilters","filters","setFilters","delayedFilters","setDelayedFilters","searchQuery","setSearchQuery","setFilter","setDelayedFilter","updateFilters","removeFilterFromState","_","Samtykke","getSamtykke","hasSamtykke","Breadcrumb","homeLabel","homeUrl","link","ariaLabel","innerContent","handleLinkClick","currentConfiguration","originalKey","getCurrentConfiguration","getRedirectToUrlAfterLogin","configuration","getDelAvForeldresamtykke","getBreadcrumbLink","contentResources","pageConfiguration","helsenorgeUrlPlaceholder","pageBreadcrumbLinks","getCmsBreadcrumbLink","BreadcrumbComponent","withErrorBoundary","COMPONENT","GuardedComponent","logError","ErrorPanel","ErrorBoundary","getIcon","EmoticonDelighted","EmoticonHappy","EmoticonMeh","EmoticonDisappointed","EmoticonAnnoyed","ScoreInput","SuccessMessage","PaperPlane","scoreValueList","trackScore","score","trackComment","sanitizeValue","string","createFeedback","body","updateFeedback","sanitized","FeedbackFormState","useFeedbackForm","isSubmitting","setIsSubmitting","isSubmitSuccessful","setIsSubmitSuccessful","setId","setScore","comment","setComment","commentError","setCommentError","setError","scoreRegister","changeEvent","commentRegister","createFeedbackResponse","api.createFeedback","api.updateFeedback","handleUpdate","debouncedUpdate","teardown","debounce","commentIsValid","CHARACTER_LIMIT","handleSubmit","formState","TEXTAREA_ID","DESCRIPTION_ID","FeedbackForm","pageTitle","showComment","getButtonAriaLabel","Label","TextArea","Feedback","useAppDispatch","useAppSelector","FeedbackContainer","feedbackResources","useLanguageEvent","currentLanguage","supportedLanguages","newLanguage","LanguageNames","BokmaalLanguageName","getLanguageName","languages","LanguagePicker","onLanguageChange","selectedLanguage","handleLanguageChange","languageChangedMessage","Globe","LanguagePickerOriginName","LanguagePickerWrapper","Personvelger","webcompIsReady","setWebcompIsReady","location","useLocation","Master","mainAriaLabelledby","visPersonvelger","breadcrumbLink","hasFullwidth","noBreadcrumb","noDriftspanel","showFeedbackForm","hasPageHeader","showHjelpeskuffInPageHeader","canShowHjelpetekstInPageHeader","showHjelpeskuffInPageHeaderState","getTitleId","useTrackPageView","enabled","previousPathname","TrackPageView","PageRoot","noHjelpeskuff","pageDescription","enablePageviewTracking","visPersonvelgerState","setVisPersonvelgerState","handleVisPersonvelgerUpdate","Hjelpeskuff","PageRoot$1"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],"sources":["../../../node_modules/@helsenorge/framework-utils/adobe-analytics.js","../../../node_modules/@helsenorge/framework-utils/constants/projects.js","../../../node_modules/@helsenorge/framework-utils/hn-authorize.js","../../../node_modules/@helsenorge/framework-utils/cookie.js","../../../node_modules/@helsenorge/framework-utils/hn-service.js","../../../node_modules/@helsenorge/framework-utils/cycle.js","../../../node_modules/@helsenorge/framework-utils/logger.js","../../../node_modules/@helsenorge/framework-utils/hn-proxy-service.js","../../../node_modules/@helsenorge/core-utils/constants/languages.js","../../../node_modules/@helsenorge/core-utils/string-utils.js","../../../node_modules/@helsenorge/core-utils/date-fns-utils.js","../../../node_modules/@helsenorge/framework-utils/shared-cookies.js","../../../node_modules/@helsenorge/framework-utils/web-component/constants.js","../../../node_modules/@helsenorge/framework-utils/types/entities.js","../../../node_modules/@helsenorge/framework-utils/hn-user.js","../../../node_modules/@helsenorge/framework-utils/web-component/events.js","../../../node_modules/@helsenorge/framework-utils/hn-language.js","../../../node_modules/@helsenorge/framework-utils/language/index.js","../../../node_modules/@helsenorge/framework-utils/hn-debug.js","../../../node_modules/@helsenorge/framework-utils/resources/index.js","../../../node_modules/@helsenorge/framework-utils/resources/useResources.js","../../../node_modules/@helsenorge/core-framework/page-not-found/side-som-ikke-finnes-svg.js","../../../node_modules/@helsenorge/core-framework/resources/index.js","../../../node_modules/@helsenorge/core-framework/page-not-found/index.js","../../../node_modules/@helsenorge/framework-utils/hn-page.js","../../../node_modules/@helsenorge/framework-utils/web-component/register.js","../../../node_modules/@helsenorge/framework-utils/web-component/fetcher.js","../../../node_modules/@helsenorge/framework-utils/web-component/consumer.js","../../../node_modules/@helsenorge/framework-utils/components/safe-html/safe-html.js","../../../node_modules/@helsenorge/framework-utils/hn-feature-toggle.js","../../../node_modules/@helsenorge/framework-utils/trusted-types.js","../../../node_modules/@helsenorge/framework-utils/components/safe-html/index.js","../../../node_modules/@helsenorge/framework-utils/cms-content-api-service.js","../../../node_modules/@helsenorge/framework-utils/cms-tjeneste-tekster/index.js","../../../node_modules/@helsenorge/core-utils/aria-hidden.js","../../../node_modules/@helsenorge/core-utils/constants/key-code.js","../../../node_modules/@helsenorge/core-utils/events.js","../../../node_modules/@helsenorge/core-utils/focus-utils.js","../../../node_modules/@helsenorge/core-utils/trapfocus.js","../../../node_modules/@helsenorge/core-cms/behandlingsvalg/ekspanderendeblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/ekspanderendeblock/index.js","../../../node_modules/@helsenorge/core-cms/types/entities.js","../../../node_modules/@helsenorge/core-cms/image/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/imageblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/link/index.js","../../../node_modules/@helsenorge/core-cms/linklistblock/linklist/index.js","../../../node_modules/@helsenorge/core-cms/linklistblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/linklistblock/index.js","../../../node_modules/@helsenorge/core-utils/user-agents-utils.js","../../../node_modules/@helsenorge/framework-utils/url.js","../../../node_modules/@helsenorge/core-cms/loginblock/LoginButton.js","../../../node_modules/@helsenorge/core-cms/shared/getIconColor.js","../../../node_modules/@helsenorge/core-cms/panel/index.js","../../../node_modules/@helsenorge/core-cms/loginblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/loginblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/textblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/title/index.js","../../../node_modules/@helsenorge/core-cms/videospiller/constants.js","../../../node_modules/@helsenorge/core-cms/videospiller/youtube-terms-of-service.js","../../../node_modules/@helsenorge/core-cms/videospiller/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/videoblock/index.js","../../../node_modules/@helsenorge/core-cms/shared/analytics.js","../../../node_modules/@helsenorge/core-cms/videokort/index.js","../../../node_modules/@helsenorge/core-cms/videomatrise/index.js","../../../node_modules/@helsenorge/core-cms/richtext/components/videomatriseblock/index.js","../../../node_modules/@helsenorge/core-cms/richtext/portable-text-utils.js","../../../node_modules/@helsenorge/core-cms/richtext/index.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpeskuff/seksjon.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpeskuff/hjelpeskuff-component.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpeskuff/hjelpeskuff-state.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpeskuff/index.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpetrigger/hjelpetrigger-component.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpetrigger/hjelpeboble-component.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpetrigger/hjelpetrigger-container.js","../../../node_modules/@helsenorge/core-framework/prosesshjelp/hjelpetrigger/index.js","../../../node_modules/@helsenorge/core-framework/sharing-status/index.js","../../../node_modules/@helsenorge/core-framework/page-header/index.js","../../../node_modules/@helsenorge/core-framework/error-message/index.js","../../../node_modules/@helsenorge/core-framework/page-loader/page-loader.js","../../../node_modules/@helsenorge/autosuggest/components/autosuggest/index.js","../../../node_modules/@helsenorge/data-table/components/table/sub-content.js","../../../node_modules/@helsenorge/data-table/components/table/table-head-helper.js","../../../node_modules/@helsenorge/data-table/components/table/cell.js","../../../node_modules/@helsenorge/data-table/components/table/row.js","../../../node_modules/@helsenorge/data-table/components/table/table-helper.js","../../../node_modules/@helsenorge/data-table/components/table/table.js","../../../node_modules/@helsenorge/data-table/components/table/column.js","../../../node_modules/@helsenorge/data-table/components/table/expandable-row.js","../../../node_modules/@helsenorge/filter/components/filter/resources.js","../../../node_modules/@helsenorge/filter/components/offcanvas/index.js","../../../node_modules/@helsenorge/filter/components/filter/filter-group.js","../../../node_modules/@helsenorge/filter/components/filter/desktop-sort.js","../../../node_modules/@helsenorge/filter/components/filter/useStateValue.js","../../../node_modules/@helsenorge/filter/components/filter/mobile-sort.js","../../../node_modules/@helsenorge/filter/components/filter/filter-sort.js","../../../node_modules/@helsenorge/filter/components/filter/index.js","../../../node_modules/@helsenorge/filter/components/filter/filter-search.js","../../../node_modules/@helsenorge/filter/components/filter/useFilters.js","../../../node_modules/@helsenorge/framework-utils/samtykke-utils.js","../../../node_modules/@helsenorge/core-cms/breadcrumb/index.js","../../../node_modules/@helsenorge/core-framework/common/configuration.js","../../../node_modules/@helsenorge/core-framework/breadcrumb/index.js","../../../node_modules/@helsenorge/core-framework/error-boundary/with-error-boundary.js","../../../node_modules/@helsenorge/core-framework/error-boundary/index.js","../../../node_modules/@helsenorge/core-framework/feedback/score-input/utils.js","../../../node_modules/@helsenorge/core-framework/feedback/score-input/index.js","../../../node_modules/@helsenorge/core-framework/feedback/success-message/index.js","../../../node_modules/@helsenorge/core-framework/feedback/utils/entities.js","../../../node_modules/@helsenorge/core-framework/feedback/utils/analytics.js","../../../node_modules/@helsenorge/core-cms/userfeedback/utils/string.js","../../../node_modules/@helsenorge/core-framework/feedback/utils/api.js","../../../node_modules/@helsenorge/core-framework/feedback/utils/form.js","../../../node_modules/@helsenorge/core-framework/feedback/index.js","../../../node_modules/@helsenorge/core-framework/store/hooks.js","../../../node_modules/@helsenorge/core-framework/feedback/container/index.js","../../../node_modules/@helsenorge/framework-utils/language/useLanguageEvent.js","../../../node_modules/@helsenorge/core-framework/language-picker-wrapper/resources.js","../../../node_modules/@helsenorge/core-framework/language-picker/index.js","../../../node_modules/@helsenorge/core-framework/language-picker-wrapper/index.js","../../../node_modules/@helsenorge/core-framework/personvelger/index.js","../../../node_modules/@helsenorge/core-framework/pageroot/master.js","../../../node_modules/@helsenorge/core-framework/track-pageview/useTrackPageView.js","../../../node_modules/@helsenorge/core-framework/track-pageview/index.js","../../../node_modules/@helsenorge/core-framework/pageroot/index.js"],"sourcesContent":["/**\n * Send data til Adobe Analytics via adobeDataLayer\n *\n * @param payload Data som skal spores\n */\nexport const pushToDataLayer = (payload) => {\n window.adobeDataLayer = window.adobeDataLayer || [];\n window.adobeDataLayer.push(payload);\n};\n/**\n * Spor handling i tjeneste\n * @param trackAction type handling som skal spores\n * @param serviceName navnet på tjenesten, f.eks. \"pasientreiser\"\n * @param action spesifiserer hvilken handling man utfører, f.eks. \"send søknad\"\n * @param flow type prosess\n */\nexport const trackSelfService = (trackAction, serviceName, action, flow) => {\n const payload = {\n event: `self service ${trackAction}`,\n selfService: {\n name: `${serviceName}: ${action}`,\n flow,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor bruk av samtykkeflyt\n * @param action definerer consentStart, consentFunnel eller consentComplete videre\n * @param stepName definerer consentFunnelStep på ConsentSelfService\n * @param stepNumber definerer selfServiceFunnelStepNumber på ConsentSelfService\n * @param type definerer consentType på ConsentSelfService\n */\nexport const trackConsent = (action, stepName, stepNumber, type) => {\n const payload = {\n event: `consent ${action}`,\n consent: {\n stepName,\n stepNumber,\n type,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor bruk av filterkomponent\n * @param name definerer navnet fil Filter\n * @param action definerer type tracking: 'usage' | 'expand' | 'search' | 'group expand'\n */\nexport const trackFilters = (name, action) => {\n const payload = {\n event: `filter ${action}`,\n filter: {\n name,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor partner - setter informasjon om tjenesteeier\n * @param partner definerer partner\n */\nexport const updatePagePartner = (partner) => {\n const payload = {\n page: {\n partner,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Setter informasjon om innlogget status i window.adobeDataLayer\n * @param loggedIn Om bruker er logget inn eller ikke\n */\nexport const updateLoginStatus = (loggedIn) => {\n const payload = {\n user: {\n loggedIn,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor uleste varslinger\n * @param unreadAlerts Antall uleste varslinger\n */\nexport const trackUnreadAlert = (unreadAlerts) => {\n const payload = {\n event: 'unread alerts',\n notifications: {\n unreadAlerts,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor uleste meldinger\n * @param unreadMessages Antall uleste meldinger\n */\nexport const trackUnreadMessage = (unreadMessages) => {\n const payload = {\n event: 'unread messages',\n notifications: {\n unreadMessages,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor leste meldinger med type.\n * @param type Meldingstype\n */\nexport const trackReadMessageType = (type) => {\n const payload = {\n event: 'message read',\n message: {\n type,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor internsøk\n * @param phrase nøkkelord som settes på search searchTerm\n * @param type type som settes på search searchType\n * @param resultsCount antall søkeresultater som settes på search resultsCount\n */\nexport const trackSearch = (phrase, type, resultsCount) => {\n const payload = {\n event: 'internal search',\n search: {\n phrase,\n type,\n resultsCount,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor klikk på internsøkeresultater\n * @param searchPosition position til søkeresultatet som lagres på search searchposition\n */\nexport const trackSearchThrough = (searchPosition) => {\n const payload = {\n event: 'search click through',\n search: {\n searchPosition,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor endring av profilinnstillinger\n * @param interactionName navn som lagres på user profileInteractionName\n */\nexport const trackProfileInteraction = (interactionName) => {\n const payload = {\n event: 'profile interaction',\n profile: {\n interactionName,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * spor handlinger med kun ett steg, e.g.\n * trackTool('kontaktskjema', 'hjelp', 'bytte fastlege', 'send')\n * @param name navn som lagres på tool toolName\n * @param type type som lagres på tool toolType\n * @param labels label som lagres på tool toolLabels\n * @param action handlingen som utføres\n */\nexport const trackTool = (name, type, labels, action) => {\n const payload = {\n event: 'use tool',\n tool: {\n name,\n type,\n labels,\n action,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor åpning/lukking av hjelpeskuff\n * @param name navn som lagres på tool.name\n * @param type type som lagres på tool.type\n * @param labels labels som lagres på tool.labels\n * @param action 'Close' | 'Open'\n */\nexport const trackProsesshjelp = (name, type, labels, action) => {\n trackTool(name, type, labels, action);\n};\n/**\n * Oppdater data om brukeren, f.eks.\n * updateUserAttributes({ userStatus: \"something\" })\n * @param userAttributes objekt med verdier som enten legges til eller oppdaterer eksisterende data om brukeren\n */\nexport const updateUserAttributes = (userAttributes) => {\n const payload = {\n user: userAttributes,\n };\n pushToDataLayer(payload);\n};\n/**\n * spor sidevisninger, e.g.\n * trackPageview()\n * @param hasContent (valgfri) om siden har innhold\n */\nexport const trackPageview = (hasContent) => {\n const payload = {\n event: 'pageview',\n page: {\n hasContent: !!hasContent,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor om en tjeneste har innhold eller ikke\n * @param hasContent Boolean som sier om det er innhold i tjenesten eller ikke\n */\nexport const trackHasContent = (hasContent) => {\n trackPageview(hasContent);\n};\n/**\n * Spor feil, f.eks.\n * trackError(\"level1\", \"Beskrivelse av feilen\")\n * @param level Alvorlighetsgrad (level1, level2, level3 eller level4)\n * @param details Tekst som beskriver feilen\n */\nexport const trackError = (level, details) => {\n const payload = {\n event: 'site error',\n error: {\n level,\n details,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor klikk i toppmenyen\n * @param name string\n * @param label navigationLabel\n * @param pageSection navigationPageSection\n */\nexport const trackNavigation = (name, label, pageSection) => {\n const payload = {\n event: 'navigation',\n navigation: {\n name,\n label,\n pageSection,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor tilbakemelding i invitasjon til spørreundersøkelse\n * @param name string\n * @param label string\n */\nexport const trackFeedback = (name, label) => {\n const payload = {\n event: 'feedback',\n feedback: {\n name,\n label,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor 404-feil\n */\nexport const track404 = () => {\n const payload = {\n event: '404 not found',\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor at bruker bytter språk.\n * trackLanguage('English')\n * @param language Språket bruker valgte.\n */\nexport const trackLanguage = (language) => {\n const payload = {\n event: 'change language',\n page: {\n language,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor endring i hvem brukeren representerer\n * @param onBehalfOf Hvilken type representasjon er det\n * @param role Hvilken rolle har bruker i representasjonen\n */\nexport const trackRepresentation = (onBehalfOf, role) => {\n const payload = {\n user: {\n representation: {\n onBehalfOf,\n role,\n },\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor visning av informasjon\n * @param type Hvilken type informasjon som vises\n * @param name Navn på informasjonen\n */\nexport const trackInfoShown = (type, name) => {\n const payload = {\n event: 'info shown',\n info: {\n type,\n name,\n },\n };\n pushToDataLayer(payload);\n};\n/**\n * Spor klikk på informasjon\n * @param type Hvilken type informasjon som vises\n * @param name Navn på informasjonen\n * @param option Navn på informasjonen\n */\nexport const trackInfoClick = (type, name, option) => {\n const payload = {\n event: 'info click',\n info: {\n type,\n name,\n option,\n },\n };\n pushToDataLayer(payload);\n};\n","export default {\n COMMON: 'HN.MinHelse.Common.JS',\n FRAMEWORK: 'HN.Core.Framework.NPM.JS',\n PORTAL: 'HN.Portal',\n CONTENT: 'HN.Tjenester.Content',\n};\n","/**\n * Returnerer Authorized fra HN.rest objektet\n */\nexport const isAuthorized = () => {\n if (typeof document === 'undefined') {\n return false;\n }\n return !!window.HN?.Rest?.Authorized;\n};\n/**\n * Returnerer HashIsAuthorized fra HN.rest objektet\n */\nexport const hashIsAuthorized = () => {\n return window.HN?.Rest?.HashIsAuthorized ?? false;\n};\n","/** Cookie-navn for om man er logget inn */\nexport const LOGGED_IN_COOKIE_NAME = 'MH_LoggedIn';\n/** Cookie-navn for sesjons-ID */\nexport const SESSION_ID_COOKIE_NAME = 'MH_SessionId';\n/** Cookie-navn for måten man har logget inn på */\nexport const IDENTITY_PROVIDER_COOKIE_NAME = 'MH_Idp';\n/**\n * Sjekker om cookie finnes og om den har verdi\n * @param cookieName navn på cookie\n * @param value cookie verdi\n */\nexport const hasCookie = (cookieName, value) => {\n if (typeof document === 'undefined') {\n return false;\n }\n const cookie = document.cookie;\n if (cookie === undefined) {\n return false;\n }\n if (value === undefined) {\n return cookie.split('; ').find(e => e.split('=')[0] === cookieName) !== undefined;\n }\n const cookieValue = '; '.concat(document.cookie);\n const parts = cookieValue.split('; '.concat(cookieName).concat('='));\n if (parts.length === 2) {\n const lastPart = parts.pop();\n return lastPart ? lastPart.split(';').shift() === value.toString() : false;\n }\n return false;\n};\n/**\n * Henter cookienavn inkludert eventuelt suffix for å støtte ulike domener.\n * @param cookieName navn på cookie\n */\nexport const getSuffix = (cookieName) => {\n let suffix = '';\n if (window.HN?.Rest?.Environment) {\n suffix = '_' + window.HN.Rest.Environment;\n }\n return cookieName + suffix;\n};\n/**\n * Sjekker om cookie finnes og om den har verdi\n * @param cookieName navn på cookie\n */\nexport const hasCookieWithSuffix = (cookieName) => {\n return hasCookie(getSuffix(cookieName));\n};\n/**\n * Sjekker om bruker er logget inn basert på cookie\n */\nexport const hasLoggedInCookie = () => {\n return hasCookieWithSuffix(LOGGED_IN_COOKIE_NAME) || hasCookieWithSuffix(SESSION_ID_COOKIE_NAME);\n};\n/**\n * Setter en cookie med van + verdi\n * @param cookieName navn på cookie\n * @param value cookie verdi\n */\nexport const setCookie = (name, value = '') => {\n document.cookie = `${name}=${value};path=/;`;\n};\n/**\n * Sletter en cookie basert på navnet\n * @param cookieName navn på cookie\n */\nexport const deleteCookie = (name) => {\n document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:01 GMT;`;\n};\n/**\n * Henter verdien til en cookie basert på navnet\n * @param cookieName navn på cookie\n */\nexport const getCookieValue = (name) => {\n const cookie = hasCookie(name);\n const cookieWithSuffix = hasCookieWithSuffix(name);\n if (!cookie && !cookieWithSuffix) {\n return undefined;\n }\n const cookieName = cookieWithSuffix ? getSuffix(name) : name;\n return document.cookie\n .split('; ')\n .find(e => e.split('=')[0] === cookieName)\n ?.split('=')[1];\n};\n/**\n * Returnerer domenenavnet uten subdomene, f.eks. \"helsenorge.no\" dersom domenet er \"www.helsenorge.no\" eller \"tjenester.helsenorge.no\"\n * @returns domenenavn for bruk i cookie\n */\nexport const getHostnameWithoutSubdomain = () => {\n if (['127.0.0.1', 'localhost'].includes(window.location.hostname)) {\n return window.location.hostname;\n }\n return window.location.hostname.substring(window.location.hostname.indexOf('.') + 1);\n};\nexport var IdentityProvider;\n(function (IdentityProvider) {\n IdentityProvider[\"HnApp\"] = \"hnapp\";\n IdentityProvider[\"HnAppUngdom\"] = \"idportenlevel3\";\n IdentityProvider[\"IdPorten\"] = \"idporten\";\n IdentityProvider[\"IdPortenLevel4\"] = \"idportenlevel4\";\n})(IdentityProvider || (IdentityProvider = {}));\n/**\n * Henter måten bruker har logget inn på\n * @returns IdentityProvider\n */\nexport const getIdentityProvider = () => getCookieValue(IDENTITY_PROVIDER_COOKIE_NAME);\n","import { HelsenorgeHttpError, getCorrelationIdFromResponse } from './hn-proxy-service';\n/**\n * Returnerer en url-friendly string fra et objekt, f.eks. ?a=b&x=y\n * @param params Objekt med parametere som skal gjøres om til en string { a : 'b', x: 'y' }\n */\nexport const parseParams = (params) => {\n if (params) {\n const queryString = Object.keys(params)\n .map(key => {\n if (Object.prototype.hasOwnProperty.call(params, key) && typeof params[key] !== 'undefined') {\n return `${key}=${params[key]}`;\n }\n })\n .filter(x => !!x)\n .join('&');\n if (queryString) {\n return `?${queryString}`;\n }\n }\n return '';\n};\n/**\n * Oppretter nytt Header-objekt med Accept og Content-type\n * @param type application/json er default\n */\nexport const createBaseHeaders = (type = 'application/json') => new Headers({\n Accept: type,\n 'Content-Type': type,\n});\n/**\n * Sjekker status på en Response og returnerer en Promise avhengig av status\n * @param response Response objektet fra HTTP request\n * @throws {HelsenorgeHttpError} Dersom APIet svarer med en feil som ikke er i standard-format\n * @throws {Error} Dersom det skjer andre feil\n */\nexport const checkStatus = (response) => {\n const contentType = response.headers.get('content-type');\n const correlationId = getCorrelationIdFromResponse(response);\n if (contentType?.indexOf('application/json') !== -1) {\n if (response.status === 204) {\n return Promise.resolve(null);\n }\n if (response.ok) {\n return response.json();\n }\n return response\n .json()\n .then(error => {\n // Håndtering av feil der serveren har respondert med gyldig JSON\n throw new HelsenorgeHttpError(response.status, 'Det har skjedd en teknisk feil. Prøv igjen senere.', correlationId, error);\n })\n .catch(error => {\n if (error instanceof HelsenorgeHttpError) {\n throw error;\n }\n // Håndtering av feil der serveren har respondert med ugyldig JSON\n throw new HelsenorgeHttpError(response.status, 'Det har skjedd en teknisk feil. Prøv igjen senere.', correlationId);\n });\n }\n throw new Error('Det har skjedd en teknisk feil. Prøv igjen senere.');\n};\n","/*\n cycle.js\n 2013-02-19\n\n Public Domain.\n\n NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n\n This code should be minified before deployment.\n See http://javascript.crockford.com/jsmin.html\n\n USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO\n NOT CONTROL.\n*/\nexport const decycle = (object) => {\n // Make a deep copy of an object or array, assuring that there is at most\n // one instance of each object or array in the resulting structure. The\n // duplicate references (which might be forming cycles) are replaced with\n // an object of the form\n // {$ref: PATH}\n // where the PATH is a JSONPath string that locates the first occurance.\n // So,\n // var a = [];\n // a[0] = a;\n // return JSON.stringify(JSON.decycle(a));\n // produces the string '[{\"$ref\":\"$\"}]'.\n // JSONPath is used to locate the unique object. $ indicates the top level of\n // the object or array. [NUMBER] or [STRING] indicates a child member or\n // property.\n const objects = [], // Keep a reference to each unique object or array\n paths = []; // Keep the path to each unique object or array\n return (function derez(value, path) {\n // The derez recurses through the object, producing the deep copy.\n let i, // The loop counter\n name, // Property name\n nu; // The new object or array\n // typeof null === 'object', so go on if this value is really an object but not\n // one of the weird builtin objects.\n if (typeof value === 'object' &&\n value !== null &&\n !(value instanceof Boolean) &&\n !(value instanceof Date) &&\n !(value instanceof Number) &&\n !(value instanceof RegExp) &&\n !(value instanceof String)) {\n // If the value is an object or array, look to see if we have already\n // encountered it. If so, return a $ref/path object. This is a hard way,\n // linear search that will get slower as the number of unique objects grows.\n for (i = 0; i < objects.length; i += 1) {\n if (objects[i] === value) {\n return { $ref: paths[i] };\n }\n }\n // Otherwise, accumulate the unique value and its path.\n objects.push(value);\n paths.push(path);\n // If it is an array, replicate the array.\n if (Object.prototype.toString.apply(value) === '[object Array]') {\n nu = [];\n for (i = 0; i < value.length; i += 1) {\n nu[i] = derez(value[i], path + '[' + i + ']');\n }\n }\n else {\n // If it is an object, replicate the object.\n nu = {};\n for (name in value) {\n if (Object.prototype.hasOwnProperty.call(value, name)) {\n nu[name] = derez(value[name], path + '[' + JSON.stringify(name) + ']');\n }\n }\n }\n return nu;\n }\n return value;\n })(object, '$');\n};\n","/* eslint-disable no-console */\n/* eslint-disable @typescript-eslint/no-use-before-define */\nimport { decycle } from './cycle';\nimport { getServerLogLevel, getTjenesterUrl, HelsenorgeHttpError, HelsenorgeProxyError } from './hn-proxy-service';\nimport { createBaseHeaders } from './hn-service';\nexport var LogLevel;\n(function (LogLevel) {\n LogLevel[LogLevel[\"Trace\"] = 0] = \"Trace\";\n LogLevel[LogLevel[\"Debug\"] = 1] = \"Debug\";\n LogLevel[LogLevel[\"Info\"] = 2] = \"Info\";\n LogLevel[LogLevel[\"Warn\"] = 3] = \"Warn\";\n LogLevel[LogLevel[\"Error\"] = 4] = \"Error\";\n LogLevel[LogLevel[\"Fatal\"] = 5] = \"Fatal\";\n LogLevel[LogLevel[\"Off\"] = 6] = \"Off\";\n})(LogLevel || (LogLevel = {}));\nconst unwrapError = (potentialError) => {\n if (potentialError instanceof HelsenorgeProxyError) {\n return `${potentialError.message} Status code: ${potentialError.statusCode} CorrelationId: ${potentialError.correlationId} Stack: ${potentialError.stack}`;\n }\n else if (potentialError instanceof HelsenorgeHttpError) {\n return `${potentialError.message} Status code: ${potentialError.statusCode} Stack: ${potentialError.stack}`;\n }\n else if (potentialError instanceof Error) {\n return `${potentialError.message} Stack: ${potentialError.stack}`;\n }\n else if (typeof potentialError === 'string' || potentialError instanceof String) {\n return potentialError;\n }\n else if (potentialError.length > 0) {\n const innerError = potentialError[0];\n return unwrapError(innerError);\n }\n else {\n return JSON.stringify(decycle(potentialError));\n }\n};\nconst generateEntry = (level, message, ...optionalParams) => {\n let fullMessage = message;\n fullMessage = optionalParams.reduce((previous, current) => {\n return previous + ' ' + unwrapError(current);\n }, fullMessage ?? '');\n return {\n Level: level,\n Message: fullMessage,\n Url: window.location.href,\n };\n};\nconst postLogEntry = (logEntry) => {\n fetch(getTjenesterUrl() + '/api/v1/Frontend/Log', {\n method: 'post',\n headers: createBaseHeaders(),\n credentials: 'include',\n body: JSON.stringify(logEntry),\n }).catch();\n};\n/**\n * Logger error til serveren\n */\nexport const logToServer = (level, message, ...optionalParams) => {\n const logLevel = getServerLogLevel();\n if (logLevel !== null && level >= logLevel) {\n exportFunctions.postLogEntry(generateEntry(level, message, optionalParams));\n }\n};\n/**\n * Lager en event listener på errors og logger error til serveren\n */\nexport const captureErrors = () => {\n window.addEventListener('error', function (e) {\n let message = e.message;\n const error = e.error;\n if (error) {\n message = error;\n const stack = error.stack;\n if (stack) {\n message = stack;\n }\n }\n else {\n message = message + '. Access to error information is restricted on this domain!';\n if (e.filename) {\n message = message + ' Filename:' + e.filename;\n }\n }\n exportFunctions.logToServer(LogLevel.Error, message);\n });\n};\n/**\n * Lager en console.debug og logger til serveren\n * @param message - string som sendes i console.debug og logges til serveren\n * @param optionalParams params som sendes til console.debug og logges til serveren\n */\nexport const debug = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.debug(message, optionalParams);\n }\n exportFunctions.logToServer(LogLevel.Debug, message, optionalParams);\n};\n/**\n * Lager en console.error og logger til serveren\n * @param message - string som sendes i console.error og logges til serveren\n * @param optionalParams params som sendes til console.error og logges til serveren\n */\nexport const error = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.error(message, optionalParams);\n }\n exportFunctions.logToServer(LogLevel.Error, message, optionalParams);\n};\n/**\n * Lager en console.info og logger til serveren\n * @param message - string som sendes i console.info og logges til serveren\n * @param optionalParams params som sendes til console.info og logges til serveren\n */\nexport const info = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.info(message, optionalParams);\n }\n exportFunctions.logToServer(LogLevel.Info, message, optionalParams);\n};\n/**\n * Lager en console.trace og logger til serveren\n * @param message - string som sendes i console.trace og til serveren\n * @param optionalParams params som sendes til console.trace og til serveren\n */\nexport const trace = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.trace(message, optionalParams);\n }\n exportFunctions.logToServer(LogLevel.Trace, message, optionalParams);\n};\n/**\n * Lager en console.warn og logger til serveren\n * @param message - string som sendes i console.warn og til serveren\n * @param optionalParams params som sendes til console.warn og til serveren\n */\nexport const warn = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.warn(message, optionalParams);\n }\n exportFunctions.logToServer(LogLevel.Warn, message, optionalParams);\n};\nexport const allowConsoleOutput = () => !['production', 'test'].includes(process.env.NODE_ENV ?? '');\n/**\n * Lager en console.assert\n * @param test - test som sendes til console assert\n * @param message - message som sendes til console assert\n * @param optionalParams params som sendes til console assert\n */\nexport const assert = (test, message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.assert(test, message, optionalParams);\n }\n};\n/**\n * Lager en console.clear\n */\nexport const clear = () => {\n if (allowConsoleOutput()) {\n console.clear();\n }\n};\n/**\n * Lager en console.count\n * @param countTitle - string som sendes i console.count\n */\nexport const count = (countTitle) => {\n if (allowConsoleOutput()) {\n console.count(countTitle);\n }\n};\n/**\n * Lager en console.dir\n * @param value - string som sendes i console.dir og logges til serveren\n * @param optionalParams params som sendes til console.dir og logges til serveren\n */\nexport const dir = (value, ...optionalParams) => {\n if (allowConsoleOutput()) {\n console.dir(value, optionalParams);\n }\n};\n/**\n * Lager en console.dirxml\n * @param value - string som sendes i console.dirxml og logges til serveren\n */\nexport const dirxml = (value) => {\n if (allowConsoleOutput()) {\n console.dirxml(value);\n }\n};\n/**\n * Lager en console.group\n * @param groupTitle - string som sendes i console.group\n */\nexport const group = (groupTitle) => {\n if (allowConsoleOutput()) {\n console.group(groupTitle);\n }\n};\n/**\n * Lager en console.groupCollapsed\n * @param groupTitle - string som sendes i console.groupCollapsed\n */\nexport const groupCollapsed = (groupTitle) => {\n if (allowConsoleOutput()) {\n console.groupCollapsed(groupTitle);\n }\n};\n/**\n * Lager en console.groupEnd\n */\nexport const groupEnd = () => {\n if (allowConsoleOutput()) {\n console.groupEnd();\n }\n};\n/**\n * Lager en console.log\n * @param message - string som sendes i console.log\n * @param optionalParams params som sendes til console.log\n */\nexport const log = (message, ...optionalParams) => {\n if (allowConsoleOutput()) {\n if (optionalParams && optionalParams.length > 0) {\n console.log(message, optionalParams);\n }\n else {\n console.log(message);\n }\n }\n};\n/**\n * Lager en console.profile\n * @param reportName - string som sendes i console.groupCollapsed\n */\nexport const profile = (reportName) => {\n if (allowConsoleOutput()) {\n console.profile(reportName);\n }\n};\n/**\n * Lager en console.profileEnd\n */\nexport const profileEnd = () => {\n if (allowConsoleOutput()) {\n console.profileEnd();\n }\n};\n/**\n * Lager en console.table\n * @param data - array av ukjent data som sendes videre til console.table\n */\nexport const table = (...data) => {\n if (allowConsoleOutput()) {\n console.table(data);\n }\n};\n/**\n * Lager en console.time\n * @param timerName - string som sendes videre til console.time\n */\nexport const time = (timerName) => {\n if (allowConsoleOutput()) {\n console.time(timerName);\n }\n};\n/**\n * Lager en console.timeEnd\n * @param timerName - string som sendes videre til console.timeEnd\n */\nexport const timeEnd = (timerName) => {\n if (allowConsoleOutput()) {\n console.timeEnd(timerName);\n }\n};\n// This wrapping is necessary for being able to Mock function in vi-tests\nconst exportFunctions = {\n postLogEntry,\n logToServer,\n debug,\n error,\n info,\n trace,\n warn,\n assert,\n clear,\n count,\n dir,\n dirxml,\n group,\n groupCollapsed,\n groupEnd,\n log,\n profile,\n profileEnd,\n table,\n time,\n timeEnd,\n};\nexport default exportFunctions;\n","import { format } from 'date-fns';\nimport { trackError } from './adobe-analytics';\nimport { getCookieValue } from './cookie';\nimport { parseParams } from './hn-service';\nimport { warn, error as logError } from './logger';\nconst isProxyErrorResponse = (response) => {\n return (typeof response === 'object' &&\n response !== null &&\n response.code !== undefined &&\n response.errorCategory !== undefined &&\n response.message !== undefined);\n};\nconst isPascalCaseProxyErrorResponse = (response) => {\n return (typeof response === 'object' &&\n response !== null &&\n response.Code !== undefined &&\n response.ErrorCategory !== undefined &&\n response.Message !== undefined);\n};\nconst mapPascalCaseErrorToCamelCase = (response) => ({\n code: response.Code,\n errorCategory: response.ErrorCategory,\n message: response.Message,\n});\nconst saveCorrelationId = (correlationId) => {\n window.HN = window.HN || {};\n window.HN.CorrelationIdList = window.HN.CorrelationIdList || [];\n window.HN.CorrelationIdList.push(correlationId);\n};\n/**\n * Hent correlationId fra API-respons\n * @param response Response fra APIet\n * @returns correlationId som guid\n */\nexport const getCorrelationIdFromResponse = (response) => {\n const correlationId = response.headers.get('CorrelationId');\n if (correlationId) {\n saveCorrelationId(correlationId);\n }\n return correlationId;\n};\nexport const getCorrelationIdList = () => window.HN?.CorrelationIdList;\n/**\n * Custom error i tilfelle APIet returnerer en 4XX- eller 5XX-feil, og en standard\n * Helsenorge-feilrespons med code, errorCategory og message.\n *\n * Eksempel på bruk med get():\n *\n * try {\n * await get('koronasertifikat', 'v1/CoronaCertificate');\n * } catch (error) {\n * if (error instanceof HelsenorgeProxyError && error.response.code === \"HFU-100400\") {\n * // I tilfelle backend svarer med en spesiell feilkode\n * }\n * // Gjør noe annet for andre feil\n * }\n */\nexport class HelsenorgeProxyError extends Error {\n constructor(statusCode, message, correlationId, response, ...params) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(...params);\n Object.defineProperty(this, \"statusCode\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"correlationId\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"response\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.setPrototypeOf(this, new.target.prototype); // restore prototype chain\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HelsenorgeProxyError);\n }\n this.name = 'HelsenorgeProxyError';\n // Custom debugging information\n this.statusCode = statusCode;\n this.message = message;\n this.correlationId = correlationId;\n this.response = response;\n }\n}\n/**\n * Custom error i tilfelle APIet returnerer en 4XX- eller 5XX-feil, men der responsen\n * ikke er i henhold til standard.\n */\nexport class HelsenorgeHttpError extends Error {\n constructor(statusCode, message, correlationId, response, ...params) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(...params);\n Object.defineProperty(this, \"statusCode\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"correlationId\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"response\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.setPrototypeOf(this, new.target.prototype); // restore prototype chain\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HelsenorgeHttpError);\n }\n this.name = 'HelsenorgeHttpError';\n // Custom debugging information\n this.statusCode = statusCode;\n this.message = message;\n this.correlationId = correlationId;\n this.response = response;\n }\n}\n/**\n * Returnerer baseUrl til Tjenester basert på HN Rest objektet\n */\nexport const getTjenesterUrl = () => {\n return window.HN?.Rest?.TjenesterUrl ?? '';\n};\n/**\n * Returnerer true når window urlen er lik tjenester baseUrl\n */\nexport const erTjenester = () => {\n if (window && window.location) {\n return window.location.origin === getTjenesterUrl();\n }\n return false;\n};\n/**\n * Returnerer proxy url med MinHelse baseUrl og proxynavnet\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n */\nexport const getTjenesterApiUrl = (proxyName, endpoint) => {\n const apiUrl = window.HN?.Rest?.TjenesterApiUrl ?? '';\n return `${apiUrl}/proxy/${proxyName}/${endpoint}`;\n};\nexport function getServerLogLevel() {\n return window.HN?.Rest?.LogLevel ?? null;\n}\n/**\n * Returnerer default params som trengs i en vanlig request\n * @returns Objekt med headers\n */\nconst getRequestHeaders = () => {\n const headers = {};\n if (window.HN?.Rest?.HendelseLoggType) {\n headers['X-hn-hendelselogg'] = window.HN.Rest.HendelseLoggType;\n }\n if (getCookieValue('HN_CSRF_Token')) {\n headers['X-HN-CSRF-Token'] = getCookieValue('HN_CSRF_Token');\n }\n return headers;\n};\n/**\n * Returnerer true når window urlen er lik Helsenorge baseUrl\n */\nexport const erHelsenorge = () => {\n return window.location.origin === getHelsenorgeUrl();\n};\n/**\n * Returnerer Headers som trengs i en vanlig request\n * @param type optional content-type - default er json\n */\nexport const createHeaders = (type = 'application/json') => {\n const headers = new Headers(getRequestHeaders());\n headers.append('Accept', type);\n headers.append('Content-Type', type);\n return headers;\n};\n/**\n * Returnerer filnavn fra et Response-objekt ved nedlasting av filer\n * @param response Responsen fra et fetch-kall\n * @returns filnavn fra Content-Disposition-header, eller en fallback dersom headeren ikke finnes\n */\nexport const getFilenameFromResponse = (response) => {\n let filename = 'nedlasting-' + format(new Date(), 'yyyy-M-d') + '-helseNorge';\n const contentDisposition = response.headers.get('content-disposition');\n if (contentDisposition) {\n const utf8Regex = /filename\\*=utf-8''(.+)/i;\n const asciiRegex = /filename=\"(.+)\"/i;\n const asciiRegexWithoutQuotes = /filename=(.+)/i;\n const match = contentDisposition.match(utf8Regex) ??\n contentDisposition.match(asciiRegex) ??\n contentDisposition.match(asciiRegexWithoutQuotes) ??\n false;\n if (match) {\n try {\n filename = decodeURI(match[1]);\n }\n catch (e) {\n logError(`Responsen fra ${response.url} inneholder ugyldige tegn i filnavnet i Content-Disposition-headeren: ${contentDisposition}`);\n }\n }\n }\n return filename;\n};\n/**\n * Returnerer JSON error objekt - f.eks '{ \"Code\":\"EHAPI-100000\", \"Message\":\"Teknisk feil\", \"ErrorCategory\": 0}'\n * @param html ErrorMsg i html\n */\nexport const getErrorFromHTML = (html) => {\n const first = html.indexOf('{');\n const last = html.lastIndexOf('}');\n const everything = html.substring(first, last + 1);\n if (everything === '') {\n return null;\n }\n return JSON.parse(everything);\n};\n/**\n * Returnerer url basert på HN Rest objektet\n */\nexport function getHelsenorgeUrl() {\n return window.HN?.Rest?.HelseNorgeUrl ?? '';\n}\n/**\n * Returnerer full query string basert på parametrene sendt som argument '?param1=value¶m2=value'\n * @param params opjekt med parametrene\n */\nconst createQueryString = (params) => {\n return ('?' +\n Object.keys(params)\n .map((key) => {\n return Array.isArray(params[key])\n ? params[key].map((x) => `${key}=${x}`).join('&')\n : `${key}=${params[key]}`;\n })\n .join('&'));\n};\n/**\n * Sjekker status på en Response og returnerer en Promise avhengig av status\n * @param response Response objektet fra HTTP request\n * @throws {HelsenorgeProxyError} Dersom APIet svarer med en feil etter Helsenorge-standard\n * @throws {HelsenorgeHttpError} Dersom APIet svarer med en feil som ikke er i standard-format\n * @throws {Error} Dersom det skjer andre feil\n */\nexport const checkStatus = (response) => {\n const contentType = response.headers.get('content-type');\n const correlationId = getCorrelationIdFromResponse(response);\n if (contentType?.indexOf('application/json') !== -1) {\n if (response.status === 204) {\n return Promise.resolve(null);\n }\n if (response.status === 429) {\n throw new HelsenorgeHttpError(429, 'Denne tjenesten er ikke tilgjengelig for øyeblikket. Det er for mange som ønsker å bruke tjenesten samtidig.', correlationId);\n }\n if (response.ok) {\n return response.json();\n }\n return response.json().then(error => {\n if (isProxyErrorResponse(error) &&\n (error.code === 'SEC-110000' || error.code === 'EHSEC-110000') &&\n document.location?.href.indexOf('autosignout=1') === -1) {\n // redirect dersom token er utgått eller ugyldig\n window.location.href = `${getTjenesterUrl()}/auth/autosignout`;\n }\n if (isProxyErrorResponse(error)) {\n throw new HelsenorgeProxyError(response.status, error.message, correlationId, error);\n }\n if (isPascalCaseProxyErrorResponse(error)) {\n throw new HelsenorgeProxyError(response.status, error.Message, correlationId, mapPascalCaseErrorToCamelCase(error));\n }\n throw new HelsenorgeHttpError(response.status, 'Det har skjedd en teknisk feil. Prøv igjen senere.', correlationId, error);\n });\n }\n throw new Error('Det har skjedd en teknisk feil. Prøv igjen senere.');\n};\nconst handleError = (error, apiUrl) => {\n trackError('level1', 'Feil ved henting av data fra proxy');\n if (error instanceof TypeError && error.message === 'Failed to fetch') {\n warn(`Kall til følgende URL feilet: ${apiUrl}. Mottok ingen respons fra tjenesten.`);\n throw new Error('Det har skjedd en teknisk feil. Prøv igjen senere.');\n }\n throw error;\n};\n/**\n * baseCrud som brukes for å fetche. Logger eventuelle nettverksfeil med warn().\n * @param method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param data\n * @throws {Error} Dersom det skjedde en feil under fetch-kallet\n */\nconst baseCrud = (method, proxyName, endpoint, params, data) => {\n const queryString = params && Object.keys(params).length > 0 ? createQueryString(params) : '';\n const baseUrl = getTjenesterApiUrl(proxyName, endpoint);\n const requestBody = data ? { body: JSON.stringify(data) } : {};\n const apiUrl = baseUrl + queryString;\n return fetch(apiUrl, {\n ...requestBody,\n method,\n credentials: 'include',\n headers: createHeaders(),\n })\n .then(response => checkStatus(response))\n .catch(error => handleError(error, apiUrl));\n};\n/**\n * get method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n */\nexport const get = (proxyName, endPoint, params) => {\n return baseCrud('get', proxyName, endPoint, params);\n};\n/**\n * Hjelpemetode for å sende get-requester til proxy-API sammen med createApi fra RTK\n * @param args\n * @returns\n */\nexport const getBaseQuery = async (args) => {\n try {\n const response = await get(...args);\n return { data: response };\n }\n catch (error) {\n return { error: error instanceof Error ? error.message : 'Teknisk feil' };\n }\n};\n/**\n * post method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param data\n */\nexport const post = (proxyName, endPoint, data, params) => {\n return baseCrud('post', proxyName, endPoint, params, data);\n};\n/**\n * put method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param data\n */\nexport const put = (proxyName, endpoint, data, params) => {\n return baseCrud('put', proxyName, endpoint, params, data);\n};\n/**\n * patch method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param data\n */\nexport const patch = (proxyName, endpoint, data, params) => {\n return baseCrud('patch', proxyName, endpoint, params, data);\n};\n/**\n * remove method\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param data\n */\nexport const remove = (proxyName, endpoint, data, params) => {\n return baseCrud('delete', proxyName, endpoint, params, data);\n};\n/**\n * Konkatenerer url-lenke basert på environment, proxy, url, request params og custom params\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n */\nexport const link = (proxyName, endpoint, params) => {\n return getTjenesterApiUrl(proxyName, endpoint) + (params ? createQueryString(params) : '');\n};\n/**\n * Las ned en fil/Blob i nettleseren\n * @param download Info om fil som skal lastes ned\n */\nconst downloadFileInBrowser = async (download) => {\n const blob = await download.blob;\n const a = document.createElement('a');\n document.body.appendChild(a);\n const url = window.URL.createObjectURL(blob);\n a.href = url;\n a.download = download.fileName;\n a.click();\n window.URL.revokeObjectURL(url);\n};\n/**\n * Sjekker status på en Response og returnerer info om fil som skal nedlastes\n * @param response Response objektet fra HTTP request\n * @throws {HelsenorgeProxyError} Dersom APIet svarer med en feil etter Helsenorge-standard\n * @throws {HelsenorgeHttpError} Dersom APIet svarer med en feil som ikke er i standard-format\n */\nconst handleDownloadResponse = async (response) => {\n if (!response.ok) {\n const error = await response.text();\n const correlationId = getCorrelationIdFromResponse(response);\n if (error === '401') {\n window.location.reload();\n throw new HelsenorgeHttpError(401, 'Det har skjedd en teknisk feil. Prøv igjen senere.', correlationId, error);\n }\n else {\n logError('responseHtml', error);\n const errorResponse = getErrorFromHTML(error);\n if (isProxyErrorResponse(errorResponse)) {\n throw new HelsenorgeProxyError(response.status, errorResponse.message, correlationId, errorResponse);\n }\n else if (isPascalCaseProxyErrorResponse(errorResponse)) {\n throw new HelsenorgeProxyError(response.status, errorResponse.Message, correlationId, mapPascalCaseErrorToCamelCase(errorResponse));\n }\n throw new HelsenorgeHttpError(response.status, 'Det har skjedd en teknisk feil. Prøv igjen senere.', correlationId, error);\n }\n }\n const fileName = getFilenameFromResponse(response);\n const blob = response.blob();\n return { blob, fileName };\n};\n/**\n * Fetch for nedlasting av filer\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @param method HTTP-metode: get eller post\n * @param data Data som som sendes som body med fetch\n */\nexport const download = (proxyName, endpoint, params, method = 'get', data) => {\n const queryString = method === 'get' ? parseParams(params) : '';\n const baseUrl = getTjenesterApiUrl(proxyName, endpoint);\n const requestBody = data ? { body: JSON.stringify(data) } : {};\n const apiUrl = baseUrl + queryString;\n const headers = createHeaders();\n if (method === 'get') {\n headers.set('Content-Type', 'multipart/form-data');\n }\n return new Promise((resolve, reject) => {\n fetch(apiUrl, {\n ...requestBody,\n method,\n credentials: 'include',\n headers,\n })\n .then(handleDownloadResponse)\n .then(downloadFileInBrowser)\n .then(() => resolve())\n .catch(error => {\n trackError('level1', 'Feil ved nedlasting av fil');\n if (error instanceof TypeError && error.message === 'Failed to fetch') {\n reject(new Error('Det har skjedd en teknisk feil. Prøv igjen senere.'));\n }\n reject(error);\n });\n });\n};\n/**\n * Last opp fil\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param formData Fil som skal lastes opp\n * @param params parametere som sendes med som query string\n * @throws {Error} Dersom det skjedde en feil under fetch-kallet\n */\nexport const upload = (proxyName, endpoint, formData, params) => {\n const baseUrl = getTjenesterApiUrl(proxyName, endpoint);\n const queryString = params && Object.keys(params).length > 0 ? createQueryString(params) : '';\n const apiUrl = baseUrl + queryString;\n return fetch(apiUrl, {\n body: formData,\n method: 'POST',\n credentials: 'include',\n headers: new Headers(getRequestHeaders()),\n })\n .then(response => checkStatus(response))\n .catch(error => handleError(error, apiUrl));\n};\n/**\n * Hent XML fra proxy\n * @param proxyName navn på api-et/løsningsområdet. Eks pasientjournal eller velgbehandlingssted\n * @param endpoint path for endepunktet inkludert versjon. Eks: api/v1/Behandlinger eller v1/Behandlinger\n * @param params parametere som sendes med som query string\n * @returns XML som string\n */\nexport const getXml = (proxyName, endpoint, params) => {\n const baseUrl = getTjenesterApiUrl(proxyName, endpoint);\n const apiUrl = baseUrl + parseParams(params);\n const headers = createHeaders('application/xml');\n const checkStatus = (response) => {\n const contentType = response.headers.get('content-type');\n if (contentType?.indexOf('application/xml') !== -1 && response.ok) {\n return response.text();\n }\n return response.text().then(error => {\n const correlationId = getCorrelationIdFromResponse(response);\n throw new HelsenorgeHttpError(response.status, 'Teknisk feil', correlationId, error);\n });\n };\n return fetch(apiUrl, {\n credentials: 'include',\n headers,\n })\n .then(checkStatus)\n .catch(error => handleError(error, apiUrl));\n};\n","export var LanguageLocales;\n(function (LanguageLocales) {\n LanguageLocales[\"NORWEGIAN\"] = \"nb-NO\";\n LanguageLocales[\"NORWEGIAN_NYNORSK\"] = \"nn-NO\";\n LanguageLocales[\"ENGLISH\"] = \"en-GB\";\n LanguageLocales[\"LITHUANIAN\"] = \"lt-LT\";\n LanguageLocales[\"POLISH\"] = \"pl-PL\";\n LanguageLocales[\"RUSSIAN\"] = \"ru-RU\";\n LanguageLocales[\"ROMANIAN\"] = \"ro-RO\";\n LanguageLocales[\"SAMI_NORTHERN\"] = \"se-NO\";\n})(LanguageLocales || (LanguageLocales = {}));\nexport default LanguageLocales;\n","import { unescapeHexEntities, unescapeHtmlEntities } from './html-entities';\n/**\n * Returnerer true når en streng er null, undefined eller tom\n * @param s - streng som skal sjekkes\n */\nexport const isEmpty = (string) => {\n if (string && string.trim)\n string = string.trim();\n return string === '' || string === null || string === undefined;\n};\n/**\n * Returnerer true når strengen inneholder følgende symboler: \"!#¤%=?`´^¨~*:;£${[\\]}|§€><\\|\n * @param s - streng som skal sjekkes\n */\nexport const hasInvalidCharacters = (s) => {\n return /[\"\"!#¤%=?`´^¨~*:;£${[\\]}|§€><\\|]/.test(s);\n};\n/**\n * Returnerer en streng med uppercase på første bokstav\n * @param s - streng å konvertere\n */\nexport const capitalize = (s) => {\n const capitalized = s.charAt(0).toUpperCase() + s.substring(1);\n return capitalized;\n};\n/**\n * Returnerer en streng uten uppercase på første bokstav\n * @param s - streng å konvertere\n */\nexport const decapitalize = (s) => {\n const decapitalized = s.charAt(0).toLowerCase() + s.substring(1);\n return decapitalized;\n};\n/**\n * Returns true if the input corresponds with a norwegian phone number format\n * @param phoneNumber - string or number of the phone number\n */\nexport const isNorwegianPhoneNumber = (phoneNumber) => {\n const regexString = '^(0047|[+]47)?[4|9][0-9]{7,7}$';\n return new RegExp(regexString, 'i').test(phoneNumber.toString().replace(new RegExp(' ', 'g'), ''));\n};\n/**\n * Returns a new string where plaeholders {number} have been replaced by items\n * ex: 'my string {0} ' where 0 will be replaced by the first element in args array\n * Note: The order of elements in string decide what order it should be replaced, not number!\n * @param s - string to format\n * @param args is a array in order you want them replaced ex: ['foo', 'bar']\n * @param allowEmptyStrings if '' is allowed or not\n */\nexport const format = (s, args, allowEmptyStrings) => {\n return s.replace(/{(\\d+)}/g, function replace(match, number) {\n if (allowEmptyStrings) {\n return args[number];\n }\n return args[number] ? args[number] : match;\n });\n};\nconst regexEmoticonsRule = /(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\u0023-\\u0039]\\ufe0f?\\u20e3|\\u3299|\\u3297|\\u303d|\\u3030|\\u24c2|\\ud83c[\\udd70-\\udd71]|\\ud83c[\\udd7e-\\udd7f]|\\ud83c\\udd8e|\\ud83c[\\udd91-\\udd9a]|\\ud83c[\\udde6-\\uddff]|\\ud83c[\\ude01-\\ude02]|\\ud83c\\ude1a|\\ud83c\\ude2f|\\ud83c[\\ude32-\\ude3a]|\\ud83c[\\ude50-\\ude51]|\\u203c|\\u2049|[\\u25aa-\\u25ab]|\\u25b6|\\u25c0|[\\u25fb-\\u25fe]|\\u00a9|\\u00ae|\\u2122|\\u2139|\\ud83c\\udc04|[\\u2600-\\u26FF]|\\u2b05|\\u2b06|\\u2b07|\\u2b1b|\\u2b1c|\\u2b50|\\u2b55|\\u231a|\\u231b|\\u2328|\\u23cf|[\\u23e9-\\u23f3]|[\\u23f8-\\u23fa]|\\ud83c\\udccf|\\u2934|\\u2935|[\\u2190-\\u21ff])/g;\n/**\n * Returns en Array med alle html tags som er funnet i en string <...>\n * @param s - string som skal sjekkes\n */\nexport const invalidNodes = (s) => {\n const tagsMatches = unescapeHtmlEntities(unescapeHexEntities(s)).match(/<.*?>/g);\n const tags = tagsMatches ? tagsMatches.map(i => i.toString()) : [];\n const emoticonsMatches = s.match(regexEmoticonsRule);\n const emoticons = emoticonsMatches ? emoticonsMatches.map(i => i.toString()) : [];\n return tags.concat(emoticons);\n};\n/**\n * Returns true når strengen ikke inneholder emoticon og tags\n * @param s - string som skal sjekkes\n */\nexport const isValid = (s) => {\n return (!/<.*?>/g.test(s) &&\n !regexEmoticonsRule.test(s) &&\n !/<.*?>/g.test(unescapeHtmlEntities(s)) &&\n !/<.*?>/g.test(unescapeHtmlEntities(unescapeHexEntities(s))));\n};\n","import { setDefaultOptions, format as formatDF, isEqual as isEqualDF, isSameDay as isSameDayDF, parseJSON as parseJSONDF, isBefore as isBeforeDF, isAfter as isAfterDF, startOfDay as startOfDayDF, isSameMonth as isSameMonthDF, } from 'date-fns';\nimport { enGB } from 'date-fns/locale/en-GB';\nimport { nb } from 'date-fns/locale/nb';\nimport { nn } from 'date-fns/locale/nn';\nimport { se } from 'date-fns/locale/se';\nimport LanguageLocales from './constants/languages';\nimport { capitalize as ucfirst } from './string-utils';\n/**\n * Vanlige datoformater brukt på helsenorge.no\n *\n * Eksemplene viser formattert dato med norsk bokmål (nb) locale\n */\nexport var DateFormat;\n(function (DateFormat) {\n /** 02:08 */\n DateFormat[\"Time\"] = \"p\";\n /** 09.02.2023 */\n DateFormat[\"ShortDate\"] = \"P\";\n /** 09.02.2023 02:08 */\n DateFormat[\"ShortDateTime\"] = \"Pp\";\n /** 9. feb. 2023 */\n DateFormat[\"MediumDate\"] = \"PP\";\n /** 9. feb. 2023 02:08 */\n DateFormat[\"MediumDateTime\"] = \"PPp\";\n /** 9. februar 2023 */\n DateFormat[\"LongDate\"] = \"PPP\";\n /** 9. februar 2023 kl. 02:08 */\n DateFormat[\"LongDateTime\"] = \"PPPp\";\n /** torsdag 9. februar 2023 kl. 02:08 */\n DateFormat[\"LongDateWeekdayTime\"] = \"PPPPp\";\n /** feb. 2023 */\n DateFormat[\"ShortMonthYear\"] = \"MMM yyyy\";\n /** februar 2023 */\n DateFormat[\"MonthYear\"] = \"MMMM yyyy\";\n})(DateFormat || (DateFormat = {}));\n/**\n * Laster date-fns locale for et begrenset utvalg språk.\n */\nexport const loadLocale = (language) => {\n switch (language) {\n case LanguageLocales.NORWEGIAN:\n setDefaultOptions({ locale: nb });\n break;\n case LanguageLocales.NORWEGIAN_NYNORSK:\n setDefaultOptions({ locale: nn });\n break;\n case LanguageLocales.ENGLISH:\n setDefaultOptions({ locale: enGB });\n break;\n case LanguageLocales.SAMI_NORTHERN:\n setDefaultOptions({ locale: se });\n break;\n }\n};\n/**\n * Parser en dato-streng til en gyldig Date.\n *\n * @param date Dato som skal parses\n * @returns En gyldig Date, eller undefined hvis dato ikke kan parses\n */\nexport const safeParseJSON = (date) => {\n if (!date) {\n return;\n }\n if (date instanceof Date && isNaN(date.getTime())) {\n return;\n }\n if (date instanceof Date) {\n return date;\n }\n const _date = parseJSONDF(date);\n if (isNaN(_date.getTime())) {\n return;\n }\n return _date;\n};\n/**\n * Konverterer en Date til Central European Time (tidssonen i Norge).\n * Merk at datoer i JS ikke inneholder informasjon om tidssone.\n * Denne funksjonen endrer datoen slik at den vises som norsk tid selv\n * om brukerens datamaskin er stilt inn på en annen tidssone.\n *\n * @param date Dato som skal konverteres til CET\n * @returns Dato justert slik at den vises som norsk tid selv om brukerens\n * datamaskin er stilt inn på en annen tidssone.\n */\nexport const toCentralEuropeanTime = (date) => {\n const cetDate = new Date(date.toLocaleString('en-US', {\n timeZone: 'CET',\n }));\n return isNaN(cetDate.getTime()) ? date : cetDate;\n};\n/**\n * Konverterer dato til CET og formatterer den\n *\n * @param date Dato\n * @param formatStr Format\n * @param options Innstillinger for formattering\n * @returns Formattert dato\n */\nexport const formatCET = (date, formatStr, options) => formatDF(toCentralEuropeanTime(date), formatStr, options);\n/**\n * Parser en dato med safeParseJSON og formatterer datoen dersom den er gyldig.\n * Dersom datoen ikke er gyldig, returneres tom streng.\n *\n * @param date Dato som skal parses\n * @param formatStr Datoformat\n * @returns Formattert dato, eller tom streng\n */\nexport const safeFormatCET = (date, formatStr) => {\n const _date = safeParseJSON(date);\n if (!_date) {\n return '';\n }\n return formatCET(_date, formatStr);\n};\n/**\n * Formatterer dato som:\n * 22. mai 2020 kl. 09:05\n *\n * @param a - Dato som skal formatteres\n */\nexport const longDateTime = (date) => formatDF(date, DateFormat.LongDateTime);\n/**\n * Formatterer dato som:\n * 22. mai 2020 eller 22. mai 2020 kl. 09:05\n *\n * @param a - Dato som skal formatteres\n */\nexport const longDate = (date) => {\n const startOfDay = startOfDayDF(date);\n return isEqualDF(date, startOfDay) ? formatDF(date, DateFormat.LongDate) : formatDF(date, DateFormat.LongDateTime);\n};\n/**\n * Formatterer dato som:\n * fredag 22. mai 2020 kl. 09:05\n *\n * @param date Dato som skal formatteres\n */\nexport const longDateNumbersClock = (date) => formatDF(date, DateFormat.LongDateWeekdayTime);\n/**\n * Formatterer dato som:\n * 22. mai 2020 09:05\n *\n * @param date Dato som skal formatteres\n */\nexport const mediumDate = (date) => formatDF(date, DateFormat.MediumDateTime);\n/**\n * Formatterer dato som:\n * 22.05.2020 09:05\n *\n * @param date Dato som skal formatteres\n */\nexport const mediumDateNumbers = (date) => formatDF(date, DateFormat.ShortDateTime);\n/**\n * Formatterer dato som:\n * 5. nov. 2020\n *\n * @param date Dato som skal formatteres\n */\nexport const shortDate = (date) => formatDF(date, DateFormat.MediumDate);\n/**\n * Formatterer dato som:\n * 5. november 2020\n *\n * @param date Dato som skal formatteres\n */\nexport const shortDateFullMonth = (date) => formatDF(date, DateFormat.LongDate);\n/**\n * Formatterer dato som:\n * 05.11.2020\n *\n * @param date Dato som skal formatteres\n */\nexport const shortDateNumbers = (date) => formatDF(date, DateFormat.ShortDate);\n/**\n * Formatterer tidspunkt som tom streng hvis tiden er midnatt, eller som:\n * 09:08\n *\n * @param date Dato som skal sjekkes\n * @param prefix - Tekst før formattert dato\n */\nexport const timeOfDay = (start, prefix = '') => {\n let value = '';\n const startOfDay = startOfDayDF(start);\n if (!isEqualDF(start, startOfDay)) {\n value = prefix + formatDF(start, DateFormat.Time);\n }\n return value;\n};\n/**\n * Formatterer dato som:\n * November 2020\n *\n * @param date Dato som skal formatteres\n */\nexport const monthYear = (date) => ucfirst(formatDF(date, DateFormat.MonthYear));\n/**\n * Formatterer dato som:\n * Nov 2020\n *\n * @param date Dato som skal formatteres\n */\nexport const shortMonthYear = (date) => ucfirst(formatDF(date, DateFormat.ShortMonthYear).replace('.', ''));\n/**\n * Formatterer to datoer som:\n * Mai 2020 – August 2020\n *\n * @param start Startdato\n * @param end Sluttdato\n */\nexport const monthRange = (start, end) => {\n let range;\n if (isSameMonthDF(start, end)) {\n range = ucfirst(formatDF(start, DateFormat.MonthYear));\n }\n else {\n range =\n ucfirst(formatDF(start, DateFormat.MonthYear)) +\n String.fromCharCode(160) +\n String.fromCharCode(8211) +\n String.fromCharCode(160) +\n ucfirst(formatDF(end, DateFormat.MonthYear));\n }\n return range;\n};\n/**\n * Formatterer to datoer som:\n * 22. mai 2020, mellom kl. 08:32 og 12:54\n * Forutsetter at begge tidspunktene er på samme dag\n *\n * @param start Startdato\n * @param end Sluttdato\n * @param betweenText \", mellom kl. \"\n * @param andText \"og\"\n */\nexport const timeRangeBetween = (start, end, between = ', mellom kl. ', andText = ' og ') => {\n let range;\n if (isEqualDF(start, end)) {\n range = formatDF(start, DateFormat.LongDateTime);\n }\n else {\n range = formatDF(start, DateFormat.MediumDate) + between + formatDF(start, DateFormat.Time) + andText + formatDF(end, DateFormat.Time);\n }\n return range;\n};\n/**\n * Formatterer to datoer som:\n * 22. mai 2020 kl. 08:32 - 12:54\n * Forutsetter at begge tidspunktene er på samme dag\n *\n * @param start Startdato\n * @param end Sluttdato\n */\nexport const timeRange = (start, end) => {\n let range;\n if (isEqualDF(start, end)) {\n range = formatDF(start, DateFormat.LongDateTime);\n }\n else {\n range = formatDF(start, DateFormat.LongDateTime) + ' - ' + formatDF(end, DateFormat.Time);\n }\n return range;\n};\n/**\n * Formatterer to datoer som:\n * Fredag 22. mai 2020 kl. 08:32 - 12:54\n * Forutsetter at begge tidspunktene er på samme dag\n *\n * @param start Startdato\n * @param end Sluttdato\n */\nexport const longTimeRange = (start, end) => {\n let range = formatDF(start, DateFormat.LongDateWeekdayTime);\n if (end) {\n range = range + ' - ' + formatDF(end, DateFormat.Time);\n }\n return ucfirst(range);\n};\n/**\n * Returnerer true hvis dato a er før dato b\n * @param a Dato som skal sammenlignes\n * @param b Dato som skal sammenlignes\n */\nexport const isBeforeDay = (a, b) => isBeforeDF(a.setHours(0, 0, 0, 0), b.setHours(0, 0, 0, 0));\n/**\n * Returnerer true hvis dato a er etter dato b\n * @param a Dato som skal sammenlignes\n * @param b Dato som skal sammenlignes\n */\nexport const isAfterDay = (a, b) => isAfterDF(a.setHours(0, 0, 0, 0), b.setHours(0, 0, 0, 0));\n/**\n * Returnerer true hvis dato a er på samme dag eller etter dato b\n * @param a Dato som skal sammenlignes\n * @param b Dato som skal sammenlignes\n */\nexport const isInclusivelyAfterDay = (a, b) => isSameDayDF(a, b) || isAfterDay(a, b);\n/**\n * Returnerer true hvis input (inkludert minutter) er etter nåtid\n * @param date Dato som skal sammenlignes\n */\nexport const isAfter = (date) => isAfterDF(date, new Date());\n/**\n * Returnerer true hvis input er etter dagens dato\n * Forskjell med 'isAfter' er at denne tar utgangspunkt i dager\n * @param date Dato som skal sammenlignes\n */\nexport const isAfterToday = (date) => isAfterDF(date.setHours(0, 0, 0, 0), new Date().setHours(0, 0, 0, 0));\n/**\n * Sammenligner to datoer og returnerer true hvis den første datoen er etter den andre (fungerer også med tid)\n * @param a - Date\n * @param max - maksimum dato grense\n */\nexport const isAfterMaxDate = (a, b) => !!b && isAfterDF(a, b);\n/**\n * Returnerer true hvis dato a er på samme dag eller før dato b\n * @param a Dato som skal sammenlignes\n * @param b Dato som skal sammenlignes\n */\nexport const isInclusivelyBeforeDay = (a, b) => isSameDayDF(a, b) || isBeforeDay(a, b);\n/**\n * Returnerer true hvis input (inkludert minutter) er før nåtid\n * @param date Dato som skal sammenlignes\n */\nexport const isBefore = (date) => isBeforeDF(date, new Date());\n/**\n * Returnerer true hvis input er før dagens dato\n * Forskjell med 'isBefore' er at denne tar utgangspunkt i dager\n * @param date Dato som skal sammenlignes\n */\nexport const isBeforeToday = (date) => isBeforeDF(date.setHours(0, 0, 0, 0), new Date().setHours(0, 0, 0, 0));\n/**\n * Sammenligner to datoer og returnerer true hvis den første datoen er før den andre (fungerer også med tid)\n * @param date - Date\n * @param min - minimum dato grense\n */\nexport const isBeforeMinDate = (a, b) => !!b && isBeforeDF(a, b);\n/**\n * Returnerer true hvis input er dagens dato og tid er tidligere enn nåtid\n * @param date Dato som skal sammenlignes\n */\nexport const isEarlierToday = (date) => {\n const now = new Date();\n return isSameDayDF(date, now) && isBeforeDF(date, now);\n};\n/**\n * Returnerer true hvis input er lik 0001-01-01T00:00:00\n * @param date Dato som skal sammenlignes\n */\nexport const isDotNetMinDate = (date) => isEqualDF(date, new Date('0001-01-01T00:00:00'));\n","import { getHostnameWithoutSubdomain } from './cookie';\nexport const __cookieOptions__ = { secure: 'secure' };\n/**\n * Returnerer domene og path for bruk i cookie som skal gjelde på tvers av åpne sider og tjenester\n * @returns domain og path for bruk i cookie\n */\nexport const getCookieDomainAndPath = () => `domain=${getHostnameWithoutSubdomain()}; path=/;`;\n/**\n * Lagrer cookie på tvers av åpne sider og tjenester\n * @param name navn på cookie\n * @param value verdi på cookie\n * @param maxAgeInDays levetid på cookie i dager\n */\nexport const setSharedCookie = (name, value, maxAgeInDays = 365) => {\n const maxAgeInSeconds = maxAgeInDays * 24 * 60 * 60;\n document.cookie = `${name}=${value}; ${getCookieDomainAndPath()} max-age=${maxAgeInSeconds}; ${__cookieOptions__.secure}`;\n};\n/**\n * Sletter cookie på tvers av åpne sider og tjenester\n * @param name navn på cookie\n */\nexport const deleteSharedCookie = (name) => {\n document.cookie = `${name}=; ${getCookieDomainAndPath()} expires=Thu, 01 Jan 1970 00:00:01 GMT;`;\n};\n","export var HeaderFooterEvents;\n(function (HeaderFooterEvents) {\n HeaderFooterEvents[\"setlistenerready\"] = \"hn-webcomp-header-footer-event-setlistenerready\";\n HeaderFooterEvents[\"setfirsttimelogin\"] = \"hn-webcomp-header-footer-event-setfirsttimelogin\";\n HeaderFooterEvents[\"setanonymousheader\"] = \"hn-webcomp-header-footer-event-setanonymousheader\";\n HeaderFooterEvents[\"sethiddenheader\"] = \"hn-webcomp-header-footer-event-sethiddenheader\";\n HeaderFooterEvents[\"setdriftsmeldingpath\"] = \"hn-webcomp-header-footer-event-setdriftsmeldingpath\";\n HeaderFooterEvents[\"sethiddenfooter\"] = \"hn-webcomp-header-footer-event-sethiddenfooter\";\n HeaderFooterEvents[\"setnomarginfooter\"] = \"hn-webcomp-header-footer-event-setnomarginfooter\";\n HeaderFooterEvents[\"setvarslinger\"] = \"hn-webcomp-header-footer-event-setvarslinger\";\n HeaderFooterEvents[\"refreshvarslinger\"] = \"hn-webcomp-header-footer-event-refreshvarslinger\";\n /**\n * @todo: Flytt til en PersonvelgerEvents-enum\n */\n HeaderFooterEvents[\"setonshowsignoutbox\"] = \"hn-webcomp-header-footer-event-setonshowsignoutbox\";\n /**\n * @todo: Flytt til en PersonvelgerEvents-enum\n */\n HeaderFooterEvents[\"setredirectto\"] = \"hn-webcomp-header-footer-event-setredirectto\";\n /**\n * @todo: Flytt til en PersonvelgerEvents-enum\n */\n HeaderFooterEvents[\"setredirecttourlafterlogin\"] = \"hn-webcomp-header-footer-event-setredirecttourlafterlogin\";\n HeaderFooterEvents[\"setloginredirecturl\"] = \"hn-webcomp-header-footer-event-setloginredirecturl\";\n HeaderFooterEvents[\"setpersonvelgerredirecturl\"] = \"hn-webcomp-header-footer-event-setpersonvelgerredirecturl\";\n HeaderFooterEvents[\"setnavigate\"] = \"hn-webcomp-header-footer-event-setnavigate\";\n HeaderFooterEvents[\"setlocation\"] = \"hn-webcomp-header-footer-event-setlocation\";\n HeaderFooterEvents[\"setuserloading\"] = \"hn-webcomp-header-footer-event-setuserloading\";\n /**\n * @todo: Flytt til en PersonvelgerEvents-enum\n */\n HeaderFooterEvents[\"setvispersonvelger\"] = \"hn-webcomp-header-footer-event-setvispersonvelger\";\n HeaderFooterEvents[\"setsurveys\"] = \"hn-webcomp-header-footer-event-setsurveys\";\n HeaderFooterEvents[\"setfooterdata\"] = \"hn-webcomp-header-footer-event-setfooterdata\";\n /**\n * @todo: Flytt til en PersonvelgerEvents-enum\n */\n HeaderFooterEvents[\"soonautosignout\"] = \"hn-webcomp-header-footer-event-soonautosignout\";\n HeaderFooterEvents[\"showappinvitation\"] = \"hn-webcomp-header-footer-event-showappinvitation\";\n})(HeaderFooterEvents || (HeaderFooterEvents = {}));\nexport var CmsBlocksEvents;\n(function (CmsBlocksEvents) {\n CmsBlocksEvents[\"setHiddenPromopanel\"] = \"hn-webcomp-cms-blocks-event-sethiddenpromopanel\";\n})(CmsBlocksEvents || (CmsBlocksEvents = {}));\nexport var CommonEvents;\n(function (CommonEvents) {\n CommonEvents[\"isMounted\"] = \"hn-webcomp-common-ismounted\";\n CommonEvents[\"setLanguage\"] = \"hn-language-event-set-language\";\n CommonEvents[\"attemptNavigation\"] = \"hn-pending-changes-attempt-navigation\";\n})(CommonEvents || (CommonEvents = {}));\nexport var WebComponents;\n(function (WebComponents) {\n WebComponents[\"Promopanel\"] = \"hn-webcomp-cms-block-promopanel\";\n})(WebComponents || (WebComponents = {}));\nexport var StepEvents;\n(function (StepEvents) {\n StepEvents[\"Navigate\"] = \"hn-step-navigate\";\n StepEvents[\"SendFromWebComponent\"] = \"hn-step-send-from-web-component\";\n})(StepEvents || (StepEvents = {}));\n","/* FULLMAKT OG SAMTYKKE */\nexport var SamtykkeType;\n(function (SamtykkeType) {\n SamtykkeType[SamtykkeType[\"None\"] = 0] = \"None\";\n SamtykkeType[SamtykkeType[\"Pha\"] = 1] = \"Pha\";\n SamtykkeType[SamtykkeType[\"Bruksvilkar\"] = 2] = \"Bruksvilkar\";\n SamtykkeType[SamtykkeType[\"RefusjonPasientreiser\"] = 3] = \"RefusjonPasientreiser\";\n SamtykkeType[SamtykkeType[\"UngdomsLosning\"] = 4] = \"UngdomsLosning\";\n})(SamtykkeType || (SamtykkeType = {}));\nexport var SamtykkeLevel;\n(function (SamtykkeLevel) {\n SamtykkeLevel[SamtykkeLevel[\"None\"] = 0] = \"None\";\n SamtykkeLevel[SamtykkeLevel[\"Registerinnsyn\"] = 1] = \"Registerinnsyn\";\n SamtykkeLevel[SamtykkeLevel[\"Journalinnsyn\"] = 2] = \"Journalinnsyn\";\n SamtykkeLevel[SamtykkeLevel[\"Helsetjeneste\"] = 3] = \"Helsetjeneste\";\n})(SamtykkeLevel || (SamtykkeLevel = {}));\nexport var FullmaktType;\n(function (FullmaktType) {\n FullmaktType[FullmaktType[\"OrdinaerFullmakt\"] = 3] = \"OrdinaerFullmakt\";\n FullmaktType[FullmaktType[\"BekreftetFullmakt\"] = 4] = \"BekreftetFullmakt\";\n FullmaktType[FullmaktType[\"UtenSamtykkekompenanseOver12\"] = 7] = \"UtenSamtykkekompenanseOver12\";\n})(FullmaktType || (FullmaktType = {}));\nexport var SamtykkeStatusType;\n(function (SamtykkeStatusType) {\n SamtykkeStatusType[SamtykkeStatusType[\"Samtykket\"] = 0] = \"Samtykket\";\n SamtykkeStatusType[SamtykkeStatusType[\"Trukket\"] = 1] = \"Trukket\";\n SamtykkeStatusType[SamtykkeStatusType[\"Utsatt\"] = 2] = \"Utsatt\";\n})(SamtykkeStatusType || (SamtykkeStatusType = {}));\n/**\n * Representasjoner, samtykke og personverninnstillinger\n */\nexport var RepresentasjonforholdType;\n(function (RepresentasjonforholdType) {\n RepresentasjonforholdType[RepresentasjonforholdType[\"InnloggetBruker\"] = 0] = \"InnloggetBruker\";\n RepresentasjonforholdType[RepresentasjonforholdType[\"Fullmakt\"] = 1] = \"Fullmakt\";\n RepresentasjonforholdType[RepresentasjonforholdType[\"Foreldrerepresentasjon\"] = 2] = \"Foreldrerepresentasjon\";\n RepresentasjonforholdType[RepresentasjonforholdType[\"Saksbehandler\"] = 3] = \"Saksbehandler\";\n RepresentasjonforholdType[RepresentasjonforholdType[\"SaksbehandlerFullmakt\"] = 4] = \"SaksbehandlerFullmakt\";\n})(RepresentasjonforholdType || (RepresentasjonforholdType = {}));\nexport var StatusKodeType;\n(function (StatusKodeType) {\n StatusKodeType[StatusKodeType[\"Reservert\"] = 1] = \"Reservert\";\n StatusKodeType[StatusKodeType[\"IkkeReservert\"] = 2] = \"IkkeReservert\";\n StatusKodeType[StatusKodeType[\"Samtykket\"] = 3] = \"Samtykket\";\n StatusKodeType[StatusKodeType[\"IkkeSamtykket\"] = 4] = \"IkkeSamtykket\";\n StatusKodeType[StatusKodeType[\"TilgangsbegrensningOpprettet\"] = 5] = \"TilgangsbegrensningOpprettet\";\n StatusKodeType[StatusKodeType[\"TilgangsbegrensningFjernet\"] = 6] = \"TilgangsbegrensningFjernet\";\n StatusKodeType[StatusKodeType[\"AnmodningTilbakeTrekkingSamtykke\"] = 7] = \"AnmodningTilbakeTrekkingSamtykke\";\n})(StatusKodeType || (StatusKodeType = {}));\nexport var SessionTimeoutAction;\n(function (SessionTimeoutAction) {\n SessionTimeoutAction[SessionTimeoutAction[\"Default\"] = 0] = \"Default\";\n SessionTimeoutAction[SessionTimeoutAction[\"RequestExtension\"] = 1] = \"RequestExtension\";\n SessionTimeoutAction[SessionTimeoutAction[\"RequestLogout\"] = 2] = \"RequestLogout\";\n})(SessionTimeoutAction || (SessionTimeoutAction = {}));\nexport var PersonverninnstillingKategori;\n(function (PersonverninnstillingKategori) {\n PersonverninnstillingKategori[PersonverninnstillingKategori[\"Samtykke\"] = 1] = \"Samtykke\";\n PersonverninnstillingKategori[PersonverninnstillingKategori[\"Reservasjon\"] = 2] = \"Reservasjon\";\n PersonverninnstillingKategori[PersonverninnstillingKategori[\"Tilgangsbegrensning\"] = 3] = \"Tilgangsbegrensning\";\n})(PersonverninnstillingKategori || (PersonverninnstillingKategori = {}));\nexport var TjenesteTilgangStatus;\n(function (TjenesteTilgangStatus) {\n TjenesteTilgangStatus[TjenesteTilgangStatus[\"None\"] = 0] = \"None\";\n TjenesteTilgangStatus[TjenesteTilgangStatus[\"Ja\"] = 1] = \"Ja\";\n TjenesteTilgangStatus[TjenesteTilgangStatus[\"Nei\"] = 2] = \"Nei\";\n TjenesteTilgangStatus[TjenesteTilgangStatus[\"VetIkke\"] = 3] = \"VetIkke\";\n})(TjenesteTilgangStatus || (TjenesteTilgangStatus = {}));\nexport var Personverninnstilling;\n(function (Personverninnstilling) {\n Personverninnstilling[\"SamtykkeDigitalHelsetjeneste\"] = \"fb640456-ae6f-4664-92c8-c6739d76caec\";\n Personverninnstilling[\"SamtykkeJournalinnsyn\"] = \"dc5b5d14-deed-48e5-bf6d-99ed77f08a09\";\n Personverninnstilling[\"SamtykkeRegisterinnsyn\"] = \"6ea1aa04-fad7-48c8-8432-1acb3fbf6d7b\";\n})(Personverninnstilling || (Personverninnstilling = {}));\nexport class TjenesteType {\n}\nObject.defineProperty(TjenesteType, \"TekniskTjeneste\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -1\n});\nObject.defineProperty(TjenesteType, \"IkkeInnloggetTjeneste\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 0\n});\nObject.defineProperty(TjenesteType, \"Timeavtaler\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 1\n});\nObject.defineProperty(TjenesteType, \"Fastlegetjenester\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 6\n});\nObject.defineProperty(TjenesteType, \"Legemidler\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 7\n});\nObject.defineProperty(TjenesteType, \"PersonligHelsearkiv\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 8\n});\nObject.defineProperty(TjenesteType, \"Fastlegevisning\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 9\n});\nObject.defineProperty(TjenesteType, \"InnsynPasientjournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 10\n});\nObject.defineProperty(TjenesteType, \"InnsynKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 11\n});\nObject.defineProperty(TjenesteType, \"Egenandeler\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 12\n});\nObject.defineProperty(TjenesteType, \"Profil\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 13\n});\nObject.defineProperty(TjenesteType, \"MinHelseForside\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 15\n});\nObject.defineProperty(TjenesteType, \"EksterneTjenester\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 16\n});\nObject.defineProperty(TjenesteType, \"Henvisninger\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 17\n});\nObject.defineProperty(TjenesteType, \"Pasientreiser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 18\n});\nObject.defineProperty(TjenesteType, \"Forlopskoordinator\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 19\n});\nObject.defineProperty(TjenesteType, \"Meldinger\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 20\n});\nObject.defineProperty(TjenesteType, \"ByttFastlege\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 21\n});\nObject.defineProperty(TjenesteType, \"DialogForlop\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 22\n});\nObject.defineProperty(TjenesteType, \"DialogHelsehjelp\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 23\n});\nObject.defineProperty(TjenesteType, \"Fullmaktsadministrasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 24\n});\nObject.defineProperty(TjenesteType, \"Helsekontakter\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 25\n});\nObject.defineProperty(TjenesteType, \"DialogOkonomi\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 26\n});\nObject.defineProperty(TjenesteType, \"Beslutningsstotte\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 27\n});\nObject.defineProperty(TjenesteType, \"DialogInnsyn\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 28\n});\nObject.defineProperty(TjenesteType, \"DialogPersonvern\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 29\n});\nObject.defineProperty(TjenesteType, \"Helseregistre\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 30\n});\nObject.defineProperty(TjenesteType, \"LoggOverBrukAvResepter\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 31\n});\nObject.defineProperty(TjenesteType, \"SykdomOgKritiskInformasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 32\n});\nObject.defineProperty(TjenesteType, \"Forskning\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 33\n});\nObject.defineProperty(TjenesteType, \"MinHelse\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 34\n});\nObject.defineProperty(TjenesteType, \"Timeadministrasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 35\n});\nObject.defineProperty(TjenesteType, \"Foreldresamtykke\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 36\n});\nObject.defineProperty(TjenesteType, \"DialogEgenHelseUngdom\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 37\n});\nObject.defineProperty(TjenesteType, \"KprTjenester\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 38\n});\nObject.defineProperty(TjenesteType, \"Vaksiner\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 39\n});\nObject.defineProperty(TjenesteType, \"LegemidlerLiB\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 40\n});\nObject.defineProperty(TjenesteType, \"InnsynRegisterinnhold\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 41\n});\nObject.defineProperty(TjenesteType, \"InnsynRegisterbruk\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 42\n});\nObject.defineProperty(TjenesteType, \"EKonsultasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 43\n});\nObject.defineProperty(TjenesteType, \"Reseptfornyelse\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 44\n});\nObject.defineProperty(TjenesteType, \"EKontakt\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 45\n});\nObject.defineProperty(TjenesteType, \"Timebestilling\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 46\n});\nObject.defineProperty(TjenesteType, \"KritiskInfo\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 47\n});\nObject.defineProperty(TjenesteType, \"AapneKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 48\n});\nObject.defineProperty(TjenesteType, \"ProfildataOgKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 49\n});\nObject.defineProperty(TjenesteType, \"HelsekontakterIKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 50\n});\nObject.defineProperty(TjenesteType, \"LegemidlerFraKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 51\n});\nObject.defineProperty(TjenesteType, \"ProfildataOgKjernejournalReservasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 52\n});\nObject.defineProperty(TjenesteType, \"PersonopplysningerFraKjernejournal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 53\n});\nObject.defineProperty(TjenesteType, \"Donorkort\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 54\n});\nObject.defineProperty(TjenesteType, \"Samtykkeforesporsel\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 55\n});\nObject.defineProperty(TjenesteType, \"DialogForlopInformasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 56\n});\nObject.defineProperty(TjenesteType, \"Pasientreiseradministrasjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 57\n});\nObject.defineProperty(TjenesteType, \"NyttHelsenorgeSamtykke\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 58\n});\nObject.defineProperty(TjenesteType, \"InngripendeForPersonvern\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 59\n});\nObject.defineProperty(TjenesteType, \"Skjemautfyller\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 60\n});\nObject.defineProperty(TjenesteType, \"SamvalgUtenLagring\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 61\n});\nObject.defineProperty(TjenesteType, \"MeldeFeilIBesokshistorikkKj\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 62\n});\nObject.defineProperty(TjenesteType, \"Verktoy\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 63\n});\nObject.defineProperty(TjenesteType, \"VerktoyUtforelse\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 64\n});\nObject.defineProperty(TjenesteType, \"InnsynRegisterinnholdReseptformidler\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 65\n});\nObject.defineProperty(TjenesteType, \"DialogSkjemaRegisterinnsyn\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 66\n});\nObject.defineProperty(TjenesteType, \"DialogSkjemaJournalinnsyn\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 67\n});\nObject.defineProperty(TjenesteType, \"DialogSkjemaHelsetjeneste\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 68\n});\nObject.defineProperty(TjenesteType, \"DialogSkjemaHelsetjenesteStreng\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 69\n});\nObject.defineProperty(TjenesteType, \"RegisterinnsynNasjonaleKvalitetsregister\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 70\n});\nObject.defineProperty(TjenesteType, \"ReiserMedRekvisisjon\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 71\n});\n/* CMS-CONTENT-API-SERVICE */\nexport var CmsContentApiVersions;\n(function (CmsContentApiVersions) {\n CmsContentApiVersions[\"V1\"] = \"v1/\";\n CmsContentApiVersions[\"V2\"] = \"v2/\";\n})(CmsContentApiVersions || (CmsContentApiVersions = {}));\n","import { getIdentityProvider, IdentityProvider } from './cookie';\nimport { FullmaktType } from './types/entities';\n/**\n * Returnerer verdien satt på HN User LastLogOn\n */\nexport const getSistPalogget = () => {\n return window.HN?.User?.SistPalogget;\n};\n/**\n * Returnerer verdien satt på HN User Name\n */\nexport const getInnloggetFulltNavn = () => {\n return window.HN?.User?.InnloggetFulltNavn;\n};\n/**\n * Returnerer verdien satt på HN User FirstName\n */\nexport const getInnloggetFornavn = () => {\n return window.HN?.User?.InnloggetFornavn;\n};\n/**\n * Returnerer verdien satt på HN User RepresentertBruker\n */\nexport const getRepresentertBruker = () => {\n return window.HN?.User?.RepresentertBruker;\n};\n/**\n * Returnerer verdien satt på HN User HasRepresentation\n */\nexport const getHarRepresentasjon = () => {\n return window.HN?.User?.HarRepresentasjon;\n};\n/**\n * Returnerer verdien satt på HN User VisPersonvelger\n */\nexport const getVisPersonvelger = () => {\n return window.HN?.User?.VisPersonvelger;\n};\n/**\n * Setter verdien til HN User VisPersonvelger\n */\nexport const setVisPersonvelger = (visPersonvelger) => {\n window.HN = window.HN || {};\n window.HN.User = window.HN.User || {};\n window.HN.User.VisPersonvelger = visPersonvelger;\n};\n/**\n * Returnerer verdien satt på HN User ErRepresentasjon\n */\nexport const getErRepresentasjon = () => {\n return window.HN?.User?.ErRepresentasjon;\n};\n/**\n * Returnerer true når innnbygger representerer en annen via fullmakt\n */\nexport const getErRepresentasjonViaFullmakt = () => getErRepresentasjon() === true && window.HN?.User?.FullmaktEgenskaper !== null;\n/**\n * Returnerer true når innnbygger representerer en annen de har foreldreansvar for\n */\nexport const getErRepresentasjonMedForeldreansvar = () => getErRepresentasjon() === true && window.HN?.User?.ForeldreansvarEgenskaper !== null;\n/**\n * Returnerer verdien satt på HN User SamtykkekonverteringInformert\n */\nexport const getSamtykkekonverteringInformert = () => {\n return window.HN?.User?.SamtykkekonverteringInformert;\n};\n/**\n * Returnerer verdien satt på HN User ErMellom12Og16\n */\nexport const getErMellom12Og16 = () => {\n return window.HN?.User?.ErMellom12Og16;\n};\n/**\n * Returnerer verdien satt på HN User RequiredSamtykkeLevel\n */\nexport const getRequiredSamtykkeLevel = () => {\n return window.HN?.User?.RequiredSamtykkeLevel;\n};\n/**\n * Bestemmer om bruker kan navigere vekk fra siden, uten å måtte bekrefte først\n */\nexport const getAllowNavigation = () => {\n return window.HN?.User?.AllowNavigation ?? false;\n};\n/**\n * Bestemmer om bruker kan navigere vekk fra siden, uten å måtte bekrefte først\n * @param value true dersom navigasjon skal være lov, false dersom bruker må bekrefte eventuelle endringer først\n */\nexport const setAllowNavigation = (value) => {\n window.HN = window.HN || {};\n window.HN.User = window.HN.User || {};\n window.HN.User.AllowNavigation = value;\n};\n/**\n * Returnerer true når FullmaktEgenskaper er analog og ordinær\n */\nexport const getErOrdinaerAnalogFullmakt = () => window.HN?.User?.FullmaktEgenskaper?.FullmaktType === FullmaktType.OrdinaerFullmakt;\n/**\n * Returnerer true når FullmaktEgenskaper er analog og UtenSamtykkekompenanseOver12\n */\nexport const getErIkkeSamtykkeKompetentFullmakt = () => !!window.HN?.User?.FullmaktEgenskaper?.Analog &&\n window.HN?.User?.FullmaktEgenskaper?.FullmaktType === FullmaktType.UtenSamtykkekompenanseOver12;\n/**\n * Returnerer true når bruker er logget inn via helsenorge-app\n */\nexport const getErInnloggetViaHnApp = () => getIdentityProvider() === IdentityProvider.HnApp;\n/**\n * Returnerer true når bruker er logget inn via helsenorge-app for ungdom\n */\nexport const getErInnloggetViaHnAppUngdom = () => getIdentityProvider() === IdentityProvider.HnAppUngdom;\n/**\n * Hent brukerens scopes\n * @returns Liste med scopes fra HN.User.Scopes, eller tom liste\n */\nexport const getScopes = () => {\n return window.HN?.User?.Scopes ?? [];\n};\n/**\n * Sjekk om bruker har scope\n * @param scope Navn på scope i HN.User.Scopes\n * @returns true dersom bruker har scope\n */\nexport const hasScope = (scope) => {\n return getScopes().includes(scope) ?? false;\n};\n/**\n * Sjekk om bruker har innsynssperre\n * @returns true dersom bruker har innsynssperre\n */\nexport const getHarInnsynssperre = () => {\n return window.HN?.User?.HarInnsynssperre;\n};\n/**\n * Sjekk om bruker har reservasjon mot egen bruk av Helsenorge\n * @returns true dersom bruker har reservasjon mot egen bruk av Helsenorge\n */\nexport const getHarReservasjonAktivPaaHelsenorge = () => {\n return window.HN?.User?.HarReservasjonAktivPaaHelsenorge;\n};\n/**\n * Sjekk om bruker har aktivt foreldresamtykke.\n * Denne brukes når en foreldre har samtykket på vegne av barnet at de kan bruke helsenorge selv,\n * og da tilgjengeliggjøres et sett med forhåndsdefinerte tjenester.\n * @returns true dersom bruker har foreldresamtykke\n */\nexport const getHarAktivtForeldreSamtykke = () => {\n return window.HN?.User?.HarAktivtForeldreSamtykke;\n};\n/**\n * Hent innbyggers personverninnstillinger\n * @returns Liste med guids fra HN.User.AktiveUtvalgtePersonverninnstillinger, eller tom liste\n */\nexport const getPersonverninnstillinger = () => {\n return window.HN?.User?.AktiveUtvalgtePersonverninnstillinger ?? [];\n};\n/**\n * Sjekk om bruker har personverninnstilling\n * @param guid Guid i HN.User.AktiveUtvalgtePersonverninnstillinger\n * @returns true dersom bruker har personverninnstilling\n */\nexport const hasPersonverninnstilling = (guid) => {\n return getPersonverninnstillinger().includes(guid) ?? false;\n};\n","import { useEffect } from 'react';\nimport { HeaderFooterEvents, CmsBlocksEvents, CommonEvents, WebComponents, StepEvents } from './constants';\nimport { setAllowNavigation, setVisPersonvelger } from '../hn-user';\nconst dispatchCustomEvent = (selector, eventType, detail) => {\n const element = document.querySelector(selector);\n if (element?.dispatchEvent) {\n element.dispatchEvent(new CustomEvent(eventType, {\n cancelable: true,\n detail,\n }));\n }\n};\nexport const HNeventSetFirstTimeLogin = (isFirstTime = true) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setfirsttimelogin, { firstTimeLogin: isFirstTime });\nexport const HNeventSetAnonymousHeader = (isAnonymous = true) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setanonymousheader, { anonymousHeader: isAnonymous });\nexport const HNeventSetHiddenHeader = (isHidden = true) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.sethiddenheader, { hiddenHeader: isHidden });\nexport const HNeventSetHiddenFooter = (isHidden = true) => dispatchCustomEvent('hn-webcomp-footer', HeaderFooterEvents.sethiddenfooter, {\n hiddenFooter: isHidden,\n});\nexport const HNeventSetNoMarginFooter = (noMargin = true) => dispatchCustomEvent('hn-webcomp-footer', HeaderFooterEvents.setnomarginfooter, {\n noMarginFooter: noMargin,\n});\nexport const HNeventRefreshVarslinger = () => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.refreshvarslinger, {});\nexport const HNeventSetDriftsmeldingPath = (path) => dispatchCustomEvent('hn-webcomp-driftspanel', HeaderFooterEvents.setdriftsmeldingpath, { path });\nexport const HNeventSetOnShowSignoutbox = (fn) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setonshowsignoutbox, { onShowSignOutBox: fn });\nexport const HNeventSetUserLoading = (userLoading) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setuserloading, { userLoading });\nexport const HNeventSoonAutoSignOut = () => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.soonautosignout, {});\nexport const HNeventShowAppInvitation = (onAppOpen, onWebLogin, onClose) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.showappinvitation, { onAppOpen, onWebLogin, onClose });\nexport const HNeventSetRedirectTo = (redirectTo) => dispatchCustomEvent('hn-webcomp-personvelger', HeaderFooterEvents.setredirectto, { redirectTo });\nexport const HNeventSetRedirectToUrlAfterLogin = (redirectToUrlAfterLogin) => dispatchCustomEvent('hn-webcomp-personvelger', HeaderFooterEvents.setredirecttourlafterlogin, {\n redirectToUrlAfterLogin,\n});\n/**\n * Bestemmer hvilken URL man skal redirecte til etter å klikket på Logg inn-knappen i header\n *\n * @param redirectUrl URL som skal redirectes til\n */\nexport const HNeventSetLoginRedirectUrl = (redirectUrl) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setloginredirecturl, { redirectUrl });\n/**\n * Bestemmer hvilken URL man skal redirecte til etter å byttet representasjon via personvelgeren i header\n *\n * @param redirectUrl URL som skal redirectes til\n */\nexport const HNeventSetPersonvelgerRedirectUrl = (redirectUrl) => dispatchCustomEvent('hn-webcomp-header', HeaderFooterEvents.setpersonvelgerredirecturl, { redirectUrl });\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const HNeventSetSurveys = (surveys) => dispatchCustomEvent('hn-webcomp-footer', HeaderFooterEvents.setsurveys, { surveys });\nexport const HNeventSetFooterData = (data) => dispatchCustomEvent('hn-webcomp-footer', HeaderFooterEvents.setfooterdata, data);\nexport const HNeventSetVisPersonvelger = (visPersonvelger) => {\n setVisPersonvelger(visPersonvelger);\n window.dispatchEvent(new CustomEvent(HeaderFooterEvents.setvispersonvelger, {\n detail: { visPersonvelger },\n }));\n};\n/**\n * Dispatcher event før forsøk på å navigasjon vekk fra siden. Brukes i av webkomponenter (f.eks. header-footer),\n * slik at de kan trigge advarsel i PendingChanges om at navigasjon er i ferd med å skje.\n *\n * @returns true dersom bruker godtar navigasjon bort fra siden\n */\nexport const HNeventAttemptNavigation = () => {\n return window.dispatchEvent(new CustomEvent(CommonEvents.attemptNavigation, {\n cancelable: true,\n }));\n};\n/**\n * Lytter etter forsøk på navigasjon vekk fra siden, og viser dialog med advarsel før man eventuelt får gå videre.\n *\n * @param message Beskjed til brukeren\n * @param hasChanges Returnerer true dersom navigasjon skal blokkeres\n */\nexport const useAttemptNavigationEvent = (message, hasChanges) => HNaddEventListener(CommonEvents.attemptNavigation, window, (event) => {\n if (hasChanges()) {\n const confirmLeave = window.confirm(message);\n if (!confirmLeave) {\n event.preventDefault();\n return;\n }\n else {\n setAllowNavigation(true);\n }\n }\n});\nexport const HNeventSetHiddenPromopanel = (isHidden) => dispatchCustomEvent(WebComponents.Promopanel, CmsBlocksEvents.setHiddenPromopanel, { hiddenPromopanel: isHidden });\nexport const HNeventIsMicroFrontendMounted = (webcomponentName) => {\n const webcomponent = document.querySelector(webcomponentName);\n if (webcomponent?.dispatchEvent) {\n webcomponent.dispatchEvent(new CustomEvent(CommonEvents.isMounted));\n }\n};\nexport const HNaddEventListener = (event, element, handler, passive = false) => {\n useEffect(() => {\n if (element)\n element.addEventListener(event, handler, passive);\n return function cleanup() {\n if (element)\n element.removeEventListener(event, handler);\n };\n });\n};\nexport const HNeventNavigateStep = (stepId, detail) => dispatchCustomEvent(`#${stepId}`, StepEvents.Navigate, detail);\nexport const HNeventSendFromWebComponent = (stepId, detail) => dispatchCustomEvent(`#${stepId}`, StepEvents.SendFromWebComponent, detail);\n","import LanguageLocales from '@helsenorge/core-utils/constants/languages';\nimport { getCookieValue } from './cookie';\nimport { setSharedCookie } from './shared-cookies';\nimport { CommonEvents } from './web-component/constants';\nimport { HNaddEventListener } from './web-component/events';\n/**\n * Navn på cookie som brukes til å lagre brukerens språk\n */\nconst LANGUAGE_COOKIE_NAME = 'hn-language';\n/**\n * Hvor lang tid cookien varer\n */\nconst LANGUAGE_COOKIE_EXPIRES_IN_DAYS = 1;\n/**\n * Hent brukerens språk fra cookie\n * @returns Valgt språk\n */\nexport const getUserLanguage = () => {\n const language = getCookieValue(LANGUAGE_COOKIE_NAME);\n if (typeof language === 'string' && Object.values(LanguageLocales).includes(language)) {\n return language;\n }\n};\n/**\n * Lagre brukerens språk i cookie og dispatch event for bytte av språk\n * @param language Valgt språk\n */\nexport const setUserLanguage = (language, options) => {\n setSharedCookie(LANGUAGE_COOKIE_NAME, language, LANGUAGE_COOKIE_EXPIRES_IN_DAYS);\n document.dispatchEvent(new CustomEvent(CommonEvents.setLanguage, { detail: { language, options } }));\n};\n/**\n * Lytt på endringer i brukerens språk\n * @param callback Funksjon som kalles når brukeren endrer språk\n */\nexport const useSetUserLanguageEvent = (callback) => HNaddEventListener(CommonEvents.setLanguage, document, event => callback(event.detail.language, event.detail.options));\n/**\n * Hent riktig språkkode for bruk i -atributtet\n * @param language Valgt språk\n * @returns ISO 639-1 språkkode https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes\n */\nexport const getIsoLanguageName = (language) => {\n switch (language) {\n case LanguageLocales.NORWEGIAN:\n return 'no';\n case LanguageLocales.NORWEGIAN_NYNORSK:\n return 'nn';\n case LanguageLocales.ENGLISH:\n return 'en';\n case LanguageLocales.LITHUANIAN:\n return 'lt';\n case LanguageLocales.POLISH:\n return 'pl';\n case LanguageLocales.RUSSIAN:\n return 'ru';\n case LanguageLocales.ROMANIAN:\n return 'ro';\n case LanguageLocales.SAMI_NORTHERN:\n return 'se';\n default:\n return undefined;\n }\n};\n/**\n * Oppdater -atributtet med valgt språk ihht ISO 639-1-standard. Brukes på tjenester, på åpne sider settes dette av backend.\n * @param language Valgt språk\n */\nexport const setDocumentLanguage = (language) => {\n const isoLanguage = getIsoLanguageName(language);\n if (isoLanguage) {\n document.documentElement.lang = isoLanguage;\n }\n};\n","import { createAction, createReducer } from '@reduxjs/toolkit';\nimport LanguageLocales from '@helsenorge/core-utils/constants/languages';\nimport { loadLocale } from '@helsenorge/core-utils/date-fns-utils';\nimport { getUserLanguage } from '../hn-language';\nimport { debug, warn } from '../logger';\nexport const selectCurrentLanguage = (state) => state.currentLanguage;\nexport const selectLanguages = (state) => state.allowedLanguages;\nexport const languageChanged = createAction('language/languageChanged');\nexport const allowedLanguagesReplaced = createAction('language/allowedLanguagesReplaced');\n/**\n * Load date-fns locale for the most commonly used languages\n * @param language Language to load date-fns locale for\n\n */\nexport const safeLoadLocale = (language) => {\n if (language === LanguageLocales.NORWEGIAN ||\n language === LanguageLocales.NORWEGIAN_NYNORSK ||\n language === LanguageLocales.ENGLISH ||\n language === LanguageLocales.SAMI_NORTHERN) {\n loadLocale(language);\n }\n else {\n debug(`Language changed to ${language}. You need to load the correct date-fns locale yourself and call setDefaultOptions.`);\n }\n};\nexport const createLanguageReducer = (allowedLanguages = [LanguageLocales.NORWEGIAN]) => {\n const userLanguage = getUserLanguage();\n const initialCurrentLanguage = userLanguage && allowedLanguages.includes(userLanguage) ? userLanguage : allowedLanguages[0];\n const initialState = {\n allowedLanguages,\n currentLanguage: initialCurrentLanguage,\n };\n safeLoadLocale(initialCurrentLanguage);\n return createReducer(initialState, builder => {\n builder.addCase(languageChanged, (state, action) => {\n if (state.allowedLanguages.includes(action.payload)) {\n state.currentLanguage = action.payload;\n safeLoadLocale(action.payload);\n }\n else {\n warn(`${action.payload} is not a valid language for this service`);\n }\n });\n builder.addCase(allowedLanguagesReplaced, (state, action) => {\n state.allowedLanguages = action.payload;\n if (!action.payload.includes(state.currentLanguage)) {\n state.currentLanguage = action.payload[0];\n }\n });\n });\n};\nexport const defaultLanguageReducer = createLanguageReducer();\nexport default defaultLanguageReducer;\n","/**\n * Returnerer Debug fra HN objektet\n * @returns true dersom window.HN.Debug er satt\n */\nexport const isDebug = () => {\n return !!window?.HN?.Debug;\n};\n","import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';\nimport { isDebug } from '../hn-debug';\nexport const getResourceKey = (project, language) => JSON.stringify({ project, language });\n/**\n * Returnerer ResourceItem fra resourcesState basert på project og language\n * @param resourcesState - incoming ResourcesState\n * @param project - project string\n * @param language - language string\n */\nexport const getResources = (resourcesState, project, language) => {\n const key = getResourceKey(project, language);\n return key in resourcesState ? resourcesState[key].items : {};\n};\n/**\n * Returnerer ResourceItem fra global Staten basert på project\n * @param state - incoming GlobalStateWithResources\n * @param project - project string\n */\nexport const getResourcesFromState = (state, project) => {\n const key = getResourceKey(project, state.language.currentLanguage);\n const value = state.resources[key];\n return value && value.status === 'succeeded' ? value.items : null;\n};\n/**\n * Returnerer Resource fra global Staten basert på project og language\n * Returnerer ny Resource med default status hvis den ikke finnes\n * @param state - incoming GlobalStateWithResources\n * @param project - project string\n */\nexport const getResourcesObjectFromState = (state, project) => {\n const key = getResourceKey(project, state.language.currentLanguage);\n return key in state.resources ? state.resources[key] : { items: {} };\n};\nexport const getResourceWithId = (json) => {\n return Object.keys(json).reduce((previous, key) => {\n if (typeof json[key] === 'string') {\n previous[key] = json[key] + ' [' + key + ']';\n }\n return previous;\n }, {});\n};\nexport function getModifiedResourcesForTest(resourceText) {\n if (isDebug() && window.document.URL.includes('hjelpetekst=true')) {\n return getResourceWithId(resourceText);\n }\n if (process.env.NODE_ENV === 'test') {\n return Object.keys(resourceText).reduce((previous, key) => {\n previous[key] = key;\n return previous;\n }, {});\n }\n return resourceText;\n}\n/**\n * Returnerer false om resources allerede ligger i staten eller er i ferd med å lastes\n * @param state - incoming GlobalStateWithResources\n * @param project - project string\n * @param language - language LanguageLocales\n */\nexport const shouldFetchResources = (state, project, language) => {\n const key = getResourceKey(project, language);\n const resource = state.resources[key];\n return resource?.status !== 'loading' && resource?.status !== 'succeeded';\n};\n/**\n * Hent nye resources basert på project name og language\n */\nexport const fetchResources = createAsyncThunk('resources/fetchResources', async ({ project, language, getResources }, { rejectWithValue }) => {\n try {\n const data = await getResources(project, language);\n return getModifiedResourcesForTest(data);\n }\n catch {\n return rejectWithValue(`Kunne ikke hente resources for ${project} på ${language}`);\n }\n}, {\n condition: ({ project, language }, { getState }) => {\n return shouldFetchResources(getState(), project, language);\n },\n});\nconst initialState = {};\nconst resourcesSlice = createSlice({\n name: 'resources',\n initialState,\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(fetchResources.pending, (state, action) => {\n const key = getResourceKey(action.meta.arg.project, action.meta.arg.language);\n state[key] = {\n status: 'loading',\n items: null,\n };\n })\n .addCase(fetchResources.fulfilled, (state, action) => {\n const key = getResourceKey(action.meta.arg.project, action.meta.arg.language);\n state[key] = {\n status: 'succeeded',\n items: action.payload,\n };\n })\n .addCase(fetchResources.rejected, (state, action) => {\n const key = getResourceKey(action.meta.arg.project, action.meta.arg.language);\n state[key] = {\n status: 'failed',\n items: null,\n };\n });\n },\n});\nexport default resourcesSlice.reducer;\n","import { useEffect } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { selectCurrentLanguage } from '../language';\nimport { getResourcesFromState, fetchResources } from '.';\n/**\n * Get resources from state or retrieve resources as needed\n * @param project Project name\n * @param getResources Utility for reading resources from file\n * @returns Resource object\n */\nconst useResources = (project, getResources) => {\n const dispatch = useDispatch();\n const resources = useSelector(state => getResourcesFromState(state, project));\n const language = useSelector(state => selectCurrentLanguage(state.language));\n useEffect(() => {\n dispatch(fetchResources({ project, language, getResources }));\n }, [dispatch, project, language]);\n return resources;\n};\nexport default useResources;\n","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst SideSomIkkeFinnesSvg = () => {\n return (_jsx(\"svg\", { \"aria-hidden\": true, role: \"img\", tabIndex: -1, color: \"inherit\", viewBox: \"0 0 544 544\", children: _jsxs(\"g\", { \"data-name\": \"Layer 1\", children: [_jsx(\"path\", { fill: \"#fff\", d: \"M246.79 339.47l23.88 4.5 24.19 10.93 25.44-14.69v36.37l-24.87-13.91-21.69 9.25-26.62 5.83-.33-38.28zM207.77 343.69c-13.18 3-32.46 15.26-32.46 15.26s20.28 12.5 27.78 14.9c8.26 2.64 34.42 4.41 34.42 4.41v-39.1s-22.4 2.84-29.74 4.53z\" }), _jsx(\"path\", { fill: \"#42adc5\", d: \"M365.59 283.77a23.75 23.75 0 1023.76 23.76 23.76 23.76 0 00-23.76-23.76zm.72 36l-13.24-13.23 13.24-13.24 13.23 13.24zM47.43 329.07s26.91 8.53 47.47 25.05 38.84 46 38.84 46v32.34l-19-1-27.87-22.39-21.33-23.21L53 360.47 49.19 346zM363.74 459.58h134.05l-.95 41.78H363.99l-.25-41.78zM96.39 212.49h36.82v17.4H96.39zM143.77 212.49v17.4h17.25l-.47-17.4h-16.78zM170.67 211.98v17.91h36.87v-17.4l-36.87-.51zM218.08 212.49v17.4l19.54-.72v-17.19l-19.54.51zM247.56 212.49v16.31H448.88v-16.31H247.56zM392.85 92.56l-1.68 7.85-8.85 11.83-10.98 4.58h-12.91l-13.18-8.7L340 92.56l2.05-10.53 4.34-8.69 12.04-7.78 11.53-1.18 11.22 4.38 7.32 6.87 3.89 8.46.46 8.47z\" }), _jsx(\"circle\", { fill: \"#1d1d1b\", cx: \"332.41\", cy: \"405.05\", r: \"10.4\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M136.34 176.33h-.14a31.71 31.71 0 01-24.32-15.09 27.43 27.43 0 01-15 4.39c-10.37 0-19.56-5.5-23.87-14.14a20.92 20.92 0 01-9.16 2.1c-10.94 0-19.83-8.27-19.83-18.43s8.89-18.43 19.83-18.43a21.05 21.05 0 014.8.56c3.25-11.89 14.86-20.36 28.23-20.36A30.81 30.81 0 01110.3 100c4.16-8.86 13.64-14.7 24.14-14.7a26.8 26.8 0 0121.5 10.35 27.16 27.16 0 0117.94-6.57c12.7 0 23.51 8.41 25.86 19.82a28.41 28.41 0 016-.65A26.65 26.65 0 01228.29 120a1.5 1.5 0 11-2.5 1.65 23.7 23.7 0 00-20-10.4 25.41 25.41 0 00-6.83.94 1.48 1.48 0 01-1.23-.19 1.47 1.47 0 01-.66-1.06c-1.41-10.75-11.37-18.86-23.17-18.86A24.07 24.07 0 00156.76 99a1.49 1.49 0 01-2.31-.24 23.67 23.67 0 00-20-10.44c-9.86 0-18.7 5.75-22 14.32a1.49 1.49 0 01-2.12.77 27.77 27.77 0 00-13.49-3.48c-12.53 0-23.32 8.21-25.66 19.52a1.53 1.53 0 01-.71 1 1.56 1.56 0 01-1.21.14 17.87 17.87 0 00-5.45-.85c-9.28 0-16.83 6.92-16.83 15.43s7.55 15.43 16.83 15.43a17.8 17.8 0 009.09-2.47 1.5 1.5 0 012.15.72c3.44 8.25 12.2 13.79 21.79 13.79a24.35 24.35 0 0014.67-4.78 1.49 1.49 0 012.23.53c4.19 8.28 12.91 14 22.76 15a1.5 1.5 0 01-.15 3z\" }), _jsx(\"path\", { fill: \"#42adc5\", d: \"M449.24 413.89A27.62 27.62 0 00472.93 398a22.92 22.92 0 0035.78-9.64 16.94 16.94 0 103.65-30.27A25.48 25.48 0 00474.17 341a22.94 22.94 0 00-24.93-15M133.74 432.43h9.63V480s.07 6.75-4.91 7-4.72-7-4.72-7zM161 432.43h9.09V480s-.13 6.79-4.83 7-4.26-7-4.26-7zM208.13 432.43h9.36V480c0 .15 0 6.5-4.38 6.73-5.84.29-5-6.73-5-6.73zM238 432.43h8.76c0 28.46-.07 47.56-.07 47.56s-.54 6.2-3.92 6c-4.88-.28-4.77-6-4.77-6zM296.52 101.08c-6.77-6.23-13.8-31.74-31.39-4.09s-18.95 81-18.41 88.79c.1 1.36.16 11.07.2 26.2H238v-8.44s1.22-14.18-8.91-14.18-11.63 15.45-11.63 15.45V212h-9.36v-6.86s.46-12.63-15-12.22-23 9.68-23 13.9V212H161v-4.86s-.47-9.67-9.16-9.18-8.49 9.45-8.49 9.45V212h-9.63v-4.31s-.06-41.11 12.84-53.13c20.11-18.72 68.57-2.75 76.37-21.53s21.76-66.32 60-72.26c8-1.24 23.56 6.5 30 27.07s-9.64 19.47-16.41 13.24z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M95.47 283.49A160.37 160.37 0 0043.57 302L9.45 282.27v49.19l34.06-19.66a141.64 141.64 0 0051.72 18.89M277.79 213.48h-30.23a1.5 1.5 0 010-3h30.23a1.5 1.5 0 010 3zM237.62 213.48h-19.54a1.5 1.5 0 010-3h19.54a1.5 1.5 0 010 3zM207.55 213.48h-36.28a1.5 1.5 0 010-3h36.28a1.5 1.5 0 010 3zM159.88 213.48h-15.54a1.5 1.5 0 010-3h15.54a1.5 1.5 0 010 3z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M96 355.62a1.5 1.5 0 01-1.5-1.5V212a1.5 1.5 0 011.5-1.5h37.24a1.5 1.5 0 010 3H97.47v140.62a1.5 1.5 0 01-1.47 1.5zM133.74 433.93H96a1.5 1.5 0 01-1.5-1.5v-14.22a1.5 1.5 0 013 0v12.72h36.27a1.5 1.5 0 110 3zM160.52 433.93H144a1.5 1.5 0 110-3h16.56a1.5 1.5 0 110 3zM207.53 433.93h-37a1.5 1.5 0 010-3h37a1.5 1.5 0 110 3zM237.67 433.93H218a1.5 1.5 0 110-3h19.69a1.5 1.5 0 110 3zM449.24 433.93H247.12a1.5 1.5 0 110-3h200.62V213.48h-137a1.5 1.5 0 010-3h138.5a1.5 1.5 0 011.5 1.5v220.45a1.5 1.5 0 01-1.5 1.5z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M449.24 231.39H306.85a1.5 1.5 0 010-3h142.39a1.5 1.5 0 010 3zM296.58 231.39h-49a1.5 1.5 0 010-3h49a1.5 1.5 0 110 3zM237.62 231.39h-19.54a1.5 1.5 0 010-3h19.54a1.5 1.5 0 010 3zM207.55 231.39h-36.88a1.5 1.5 0 110-3h36.88a1.5 1.5 0 010 3zM160.55 231.39h-16.78a1.5 1.5 0 110-3h16.78a1.5 1.5 0 010 3zM133.52 231.39H96a1.5 1.5 0 010-3h37.55a1.5 1.5 0 010 3z\" }), _jsx(\"circle\", { fill: \"#1d1d1b\", cx: \"107.55\", cy: \"221.3\", r: \"2.71\" }), _jsx(\"circle\", { fill: \"#1d1d1b\", cx: \"121.45\", cy: \"221.3\", r: \"2.71\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M435.78 217.7h6.14v6.14h-6.14zM236.59 379.76a106.75 106.75 0 01-19-1.7 1.5 1.5 0 11.54-2.95 103.51 103.51 0 0019.38 1.65 1.5 1.5 0 010 3z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M217.85 378.08h-.19C199.48 375.71 186 368 174.1 360a1.53 1.53 0 01-.66-1.22 1.51 1.51 0 01.63-1.24 119.65 119.65 0 0143.49-17.71 1.5 1.5 0 01.58 3 121.4 121.4 0 00-40.49 16c11.12 7.35 23.77 14.23 40.39 16.39a1.5 1.5 0 01-.19 3z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M217.85 342.75a1.5 1.5 0 01-.29-3 114 114 0 0119.93-2.12 1.5 1.5 0 010 3 110.71 110.71 0 00-19.39 2.07 1.46 1.46 0 01-.25.05zM247.12 379.25a1.5 1.5 0 01-.15-3 121.25 121.25 0 0047.1-15.07 1.5 1.5 0 011.49 0l24.06 13.89v-32.73l-24 13.86a1.53 1.53 0 01-1.52 0 106.79 106.79 0 00-46.71-15.2 1.51 1.51 0 01-1.38-1.61 1.48 1.48 0 011.62-1.38 109.7 109.7 0 0147.24 15.18l25.5-14.72a1.49 1.49 0 011.5 0 1.51 1.51 0 01.75 1.3v37.93a1.51 1.51 0 01-.75 1.3 1.49 1.49 0 01-1.5 0l-25.57-14.79a124.44 124.44 0 01-47.53 15zM464.3 283.09c-13.88 0-29.64-3.68-45.85-14.62a1.49 1.49 0 010-2.45 85.84 85.84 0 0127.06-11.9 80.13 80.13 0 0161.35 8.6l18.4-10.63a1.5 1.5 0 012.25 1.3v27.68a1.5 1.5 0 01-2.25 1.3l-18.46-10.65c-8.3 4.6-23.67 11.37-42.5 11.37zM422 267.23c36.75 23.54 70.88 8.94 84 1.46a1.47 1.47 0 011.49 0l17 9.79V256l-16.91 9.76a1.48 1.48 0 01-1.52 0c-39.13-23.36-75.54-3.76-84.06 1.47zM415.4 301.28a1.52 1.52 0 01-.83-.25c-28-18.58-52.92-17.6-68.92-13.51a78.59 78.59 0 00-28.23 13.41 1.5 1.5 0 11-1.92-2.3c.46-.38 11.43-9.41 29.41-14 16.58-4.24 42.42-5.27 71.32 13.92a1.5 1.5 0 01-.83 2.75z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M365.72 332.78a25.38 25.38 0 1125.37-25.38 25.4 25.4 0 01-25.37 25.38zm0-47.75a22.38 22.38 0 1022.37 22.37 22.4 22.4 0 00-22.37-22.4z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M365.93 321.69a1.5 1.5 0 01-1.06-.44l-12.79-12.79a1.49 1.49 0 01-.43-1.06 1.51 1.51 0 01.43-1.06l12.79-12.78a1.49 1.49 0 012.12 0l12.79 12.78a1.52 1.52 0 01.44 1.06 1.5 1.5 0 01-.44 1.06L367 321.25a1.5 1.5 0 01-1.07.44zm-10.66-14.29l10.66 10.67 10.66-10.67-10.66-10.66zM447.91 415.42a29.24 29.24 0 01-22.4-10.52 24.29 24.29 0 01-15.87 5.86 24.59 24.59 0 01-22.39-14.67h-.56a24.45 24.45 0 110-48.9 23.88 23.88 0 015.46.62 24.41 24.41 0 0140.54-13.32 24.36 24.36 0 0115.95-9.94 1.5 1.5 0 11.48 3 21.39 21.39 0 00-14.9 10.12 1.53 1.53 0 01-1.13.71 1.49 1.49 0 01-1.26-.47 21.42 21.42 0 00-37 12 1.47 1.47 0 01-.67 1.08 1.53 1.53 0 01-1.25.18 21.45 21.45 0 10-6.25 42c.39 0 .77 0 1.15-.06h.29a1.51 1.51 0 011.5 1 21.56 21.56 0 0020 13.77 21.31 21.31 0 0015-6.13 1.51 1.51 0 012.26.18 26.21 26.21 0 0021 10.61h.84a1.5 1.5 0 01.09 3zM305.88 240.87l-48.96-44.57L320 176.19l-14.12 64.68zM366.45 118.84a28 28 0 1128-28 28 28 0 01-28 28zm0-53a25 25 0 1025 25 25 25 0 00-25-25.02zM497.78 502.81h-134a1.5 1.5 0 01-1.5-1.5V460a1.5 1.5 0 011.5-1.5h134a1.5 1.5 0 011.5 1.5v41.33a1.5 1.5 0 01-1.5 1.48zm-132.54-3h131v-38.33h-131zM302.89 472.84h-30.28a1.5 1.5 0 01-1.5-1.5v-66.29a1.5 1.5 0 011.5-1.5h30.28a1.5 1.5 0 011.5 1.5v66.29a1.5 1.5 0 01-1.5 1.5zm-28.78-3h27.28v-63.29h-27.28zM293 293.43h-29.1a1.5 1.5 0 01-1.5-1.5V262.8a1.5 1.5 0 011.5-1.5H293a1.5 1.5 0 011.5 1.5v29.13a1.5 1.5 0 01-1.5 1.5zm-27.63-3h26.13V264.3h-26.1zM116.33 433.93a1.49 1.49 0 01-.78-.22 197.4 197.4 0 01-35.5-29.36C63.93 387.43 45 360.62 46.22 329a1.49 1.49 0 011.93-1.38c.65.2 66 20.41 86.46 75.54a1.5 1.5 0 11-2.81 1.05c-18-48.53-71.87-69.36-82.64-73.1-.67 57.56 67.26 99.6 68 100a1.5 1.5 0 01-.78 2.78z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M125.23 423.87a1.5 1.5 0 01-1.29-.73c-26.84-44.91-63.33-77.07-63.69-77.39a1.5 1.5 0 012-2.26c.37.33 37.22 32.8 64.3 78.11a1.5 1.5 0 01-.52 2 1.46 1.46 0 01-.8.27z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M89.87 375.57a1.49 1.49 0 01-1.47-1.21l-5.28-27.19a1.5 1.5 0 112.94-.57l5.28 27.19a1.49 1.49 0 01-1.19 1.75 1.33 1.33 0 01-.28.03zM114 406.55a1.51 1.51 0 01-1.41-1.58l1.83-31a1.5 1.5 0 013 .18l-1.82 31a1.5 1.5 0 01-1.6 1.4zM81.53 366.29h-.22L52.77 362a1.5 1.5 0 01.44-3l28.55 4.31a1.5 1.5 0 01-.23 3zM104.34 393.27h-.09l-34.95-2.21a1.5 1.5 0 01.19-3l35 2.21a1.5 1.5 0 01-.1 3zM58.83 258.93a34.58 34.58 0 110-69.16 1.5 1.5 0 01.79 2.78c-.14.08-14.15 9.2-14.23 31.81-.09 22.23 14.11 31.72 14.25 31.81a1.5 1.5 0 01-.81 2.76zm-4.55-65.83a31.58 31.58 0 00.07 62.51c-4.64-4.59-12-14.54-12-31.26.1-16.91 7.32-26.71 11.93-31.25zM332.41 417a11.9 11.9 0 1111.9-11.9 11.91 11.91 0 01-11.9 11.9zm0-20.8a8.9 8.9 0 108.9 8.9 8.91 8.91 0 00-8.9-8.95zM383.88 112.3h-.27a1.5 1.5 0 01-1.21-1.75c.52-2.88-3.33-4.85-8.82-7.32-5-2.25-10.21-4.59-10.21-9 0-6.18 3.63-7.6 6.54-8.75 2.75-1.08 4.73-1.86 4.91-6 .32-7.49-10.57-13.69-10.68-13.76a1.5 1.5 0 111.46-2.61c.52.28 12.62 7.16 12.22 16.5-.26 6.12-3.89 7.55-6.81 8.7s-4.64 1.82-4.64 6c0 2.46 4.29 4.39 8.44 6.26 5.4 2.42 11.52 5.17 10.54 10.59a1.5 1.5 0 01-1.47 1.14z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M366.45 108.38a1.54 1.54 0 01-.46-.08c-.6-.19-14.67-4.83-15.23-13.81-.39-6.28 3.7-9.66 7-12.37 2.07-1.7 3.85-3.17 3.87-4.81.06-5.27-11.18-6.07-11.3-6.07a1.51 1.51 0 01-1.41-1.59 1.53 1.53 0 011.59-1.41c.58 0 14.22.92 14.12 9.11 0 3-2.43 5-5 7.08-3 2.52-6.19 5.12-5.9 9.87.36 5.78 9.63 10 13.16 11.15a1.5 1.5 0 01-.46 2.93zM389.14 106a1.5 1.5 0 01-1.48-1.24c-.64-3.76-3.6-4.87-7-6.15-.84-.31-1.71-.63-2.55-1a1.5 1.5 0 011.21-2.75c.76.34 1.55.63 2.39.94 3.75 1.4 8 3 8.94 8.45a1.5 1.5 0 01-1.25 1.75 1.18 1.18 0 01-.26 0zM143.37 433.93h-9.63a1.5 1.5 0 01-1.5-1.5V212a1.5 1.5 0 011.5-1.5h9.63a1.5 1.5 0 011.5 1.5v220.43a1.5 1.5 0 01-1.5 1.5zm-8.13-3h6.63V213.48h-6.63zM170.11 433.93H161a1.5 1.5 0 01-1.5-1.5V212a1.5 1.5 0 011.5-1.5h9.09a1.5 1.5 0 011.5 1.5v220.43a1.5 1.5 0 01-1.48 1.5zm-7.59-3h6.09V213.48h-6.09zM217.49 433.93h-9.36a1.5 1.5 0 01-1.5-1.5v-57.08a1.5 1.5 0 013 0v55.58H216v-54.35a1.5 1.5 0 113 0v55.85a1.5 1.5 0 01-1.51 1.5zM208.13 344.38a1.51 1.51 0 01-1.5-1.5V212a1.5 1.5 0 011.5-1.5h9.36A1.5 1.5 0 01219 212v129.25a1.5 1.5 0 01-3 0V213.48h-6.36v129.4a1.5 1.5 0 01-1.51 1.5zM246.79 433.93H238a1.5 1.5 0 01-1.5-1.5V212a1.5 1.5 0 011.5-1.5h8.88a1.51 1.51 0 011.5 1.49c.16 58.36-.07 193.89-.12 220.46a1.5 1.5 0 01-1.47 1.48zm-7.26-3h5.77c0-29.55.27-159.36.11-217.45h-5.88zM405.53 213.08a1.47 1.47 0 01-1.22-.64 1.5 1.5 0 01.35-2.09 72.4 72.4 0 0016.39-15.75l-21.27 3a1.5 1.5 0 01-1.09-2.7c19.09-13.78 29.5-26.59 33.27-31.74l-18.29.63a1.5 1.5 0 01-1.14-2.52 224.77 224.77 0 0032.34-43.92c-19.48 5.58-40.16 27.56-40.38 27.79a1.49 1.49 0 01-2.51-1.5l6.42-19c-15.19 11.12-33.6 40.31-33.8 40.62a1.5 1.5 0 01-2.74-1.12l5.27-23.63c-17.73 18-29.21 57.4-29.33 57.82a1.5 1.5 0 01-2.93-.24l-2.4-20.33c-4.74 7.8-7.74 19.06-8.93 33.54a1.5 1.5 0 11-3-.25c1.42-17.2 5.37-30.11 11.75-38.35a1.51 1.51 0 012.68.74l2.03 17.41c1.55-4.6 3.92-11.15 7-18.22 7.78-18 16.08-30.62 24.67-37.61a1.5 1.5 0 012.41 1.49l-4.52 20.31c7.25-10.62 21.86-30.48 33.91-37.09a1.49 1.49 0 012.14 1.79l-5.75 17c7.9-7.5 24.69-21.83 40.57-24.88a1.49 1.49 0 011.64 2.12c-.1.21-10.12 20.83-31.93 44.9l17.69-.61a1.49 1.49 0 011.33 2.28c-.39.64-9.31 14.82-31 31.49l18.84-2.65a1.49 1.49 0 011.45.65 1.52 1.52 0 01.06 1.59c-.24.4-5.92 10.08-19.09 19.39a1.5 1.5 0 01-.89.28z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M361.83 213.08a1.47 1.47 0 01-.73-.19 1.51 1.51 0 01-.59-2c15.28-27.66 30.5-47.66 45.22-59.46a1.5 1.5 0 011.88 2.34c-14.42 11.55-29.38 31.26-44.47 58.57a1.49 1.49 0 01-1.31.74z\" }), _jsx(\"path\", { fill: \"#1d1d1b\", d: \"M360.61 212.46h-.13a1.51 1.51 0 01-1.36-1.63l3.38-39.05a1.5 1.5 0 113 .26l-3.37 39.05a1.51 1.51 0 01-1.52 1.37zM378.2 186.38a1.5 1.5 0 01-.51-2.92l30.87-10.94a1.5 1.5 0 111 2.83l-30.86 10.94a1.51 1.51 0 01-.5.09z\" })] }) }));\n};\nexport default SideSomIkkeFinnesSvg;\n","var __glob = (map) => (path) => {\n var fn = map[path];\n if (fn) return fn();\n throw new Error(\"Module not found in bundle: \" + path);\n};\n\n// src/resources/index.ts\nimport LanguageLocales from \"@helsenorge/core-utils/constants/languages\";\nimport Projects from \"@helsenorge/framework-utils/constants/projects\";\nimport { getModifiedResourcesForTest } from \"@helsenorge/framework-utils/resources\";\nimport frameworkNbNo from \"./HN.Core.Framework.NPM.JS.nb-NO.json\";\nimport contentNbNo from \"./HN.Tjenester.Content.nb-NO.json\";\n\n// import(\"./**/*.*.json\") in src/resources/index.ts\nvar globImport_json = __glob({\n \"./HN.Core.Framework.NPM.JS.en-GB.json\": () => import(\"./HN.Core.Framework.NPM.JS.en-GB.json\"),\n \"./HN.Core.Framework.NPM.JS.lt-LT.json\": () => import(\"./HN.Core.Framework.NPM.JS.lt-LT.json\"),\n \"./HN.Core.Framework.NPM.JS.nb-NO.json\": () => import(\"./HN.Core.Framework.NPM.JS.nb-NO.json\"),\n \"./HN.Core.Framework.NPM.JS.nn-NO.json\": () => import(\"./HN.Core.Framework.NPM.JS.nn-NO.json\"),\n \"./HN.Core.Framework.NPM.JS.pl-PL.json\": () => import(\"./HN.Core.Framework.NPM.JS.pl-PL.json\"),\n \"./HN.Core.Framework.NPM.JS.ro-RO.json\": () => import(\"./HN.Core.Framework.NPM.JS.ro-RO.json\"),\n \"./HN.Core.Framework.NPM.JS.ru-RU.json\": () => import(\"./HN.Core.Framework.NPM.JS.ru-RU.json\"),\n \"./HN.Core.Framework.NPM.JS.se-NO.json\": () => import(\"./HN.Core.Framework.NPM.JS.se-NO.json\"),\n \"./HN.CoreFrontend.NPM.Packages.CMS.nb-NO.json\": () => import(\"./HN.CoreFrontend.NPM.Packages.CMS.nb-NO.json\"),\n \"./HN.CoreFrontend.NPM.Packages.Framework.nb-NO.json\": () => import(\"./HN.CoreFrontend.NPM.Packages.Framework.nb-NO.json\"),\n \"./HN.CoreFrontend.Web.Forside.nb-NO.json\": () => import(\"./HN.CoreFrontend.Web.Forside.nb-NO.json\"),\n \"./HN.MinHelse.Common.JS.en-GB.json\": () => import(\"./HN.MinHelse.Common.JS.en-GB.json\"),\n \"./HN.MinHelse.Common.JS.lt-LT.json\": () => import(\"./HN.MinHelse.Common.JS.lt-LT.json\"),\n \"./HN.MinHelse.Common.JS.nb-NO.json\": () => import(\"./HN.MinHelse.Common.JS.nb-NO.json\"),\n \"./HN.MinHelse.Common.JS.nn-NO.json\": () => import(\"./HN.MinHelse.Common.JS.nn-NO.json\"),\n \"./HN.MinHelse.Common.JS.pl-PL.json\": () => import(\"./HN.MinHelse.Common.JS.pl-PL.json\"),\n \"./HN.MinHelse.Common.JS.ro-RO.json\": () => import(\"./HN.MinHelse.Common.JS.ro-RO.json\"),\n \"./HN.MinHelse.Common.JS.ru-RU.json\": () => import(\"./HN.MinHelse.Common.JS.ru-RU.json\"),\n \"./HN.MinHelse.Common.JS.se-NO.json\": () => import(\"./HN.MinHelse.Common.JS.se-NO.json\"),\n \"./HN.MinHelse.Content.en-GB.json\": () => import(\"./HN.MinHelse.Content.en-GB.json\"),\n \"./HN.MinHelse.Content.nb-NO.json\": () => import(\"./HN.MinHelse.Content.nb-NO.json\"),\n \"./HN.MinHelse.Content.nn-NO.json\": () => import(\"./HN.MinHelse.Content.nn-NO.json\"),\n \"./HN.MinHelse.Content.se-NO.json\": () => import(\"./HN.MinHelse.Content.se-NO.json\"),\n \"./HN.Tjenester.Content.en-GB.json\": () => import(\"./HN.Tjenester.Content.en-GB.json\"),\n \"./HN.Tjenester.Content.nb-NO.json\": () => import(\"./HN.Tjenester.Content.nb-NO.json\"),\n \"./HN.Tjenester.Content.nn-NO.json\": () => import(\"./HN.Tjenester.Content.nn-NO.json\"),\n \"./HN.Tjenester.Content.se-NO.json\": () => import(\"./HN.Tjenester.Content.se-NO.json\")\n});\n\n// src/resources/index.ts\nvar getResourceItem = (projectName, language) => {\n if (projectName === Projects.FRAMEWORK && language === LanguageLocales.NORWEGIAN) {\n return frameworkNbNo;\n }\n if (projectName === Projects.CONTENT && language === LanguageLocales.NORWEGIAN) {\n return contentNbNo;\n }\n};\nvar getResources = async (projectName, language) => {\n const resources = getResourceItem(projectName, language);\n if (resources) {\n return Promise.resolve(resources);\n }\n try {\n const resources2 = await globImport_json(`./${projectName}.${language}.json`);\n return resources2.default;\n } catch (error) {\n throw new Error(`Failed to load resources for ${projectName} in ${language}: ${error}`);\n }\n};\nvar getResourcesTestHelper = async (projectName, language) => {\n const resources = await getResources(projectName, language);\n if (resources) {\n return getModifiedResourcesForTest(resources);\n }\n throw new Error(`Mangler ressurs ${projectName}.${language}`);\n};\nexport {\n getResources,\n getResourcesTestHelper\n};\n","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useEffect } from 'react';\nimport Button from '@helsenorge/designsystem-react/components/Button';\nimport Loader from '@helsenorge/designsystem-react/components/Loader';\nimport Title from '@helsenorge/designsystem-react/components/Title';\nimport { track404 } from '@helsenorge/framework-utils/adobe-analytics';\nimport Projects from '@helsenorge/framework-utils/constants/projects';\nimport { isAuthorized } from '@helsenorge/framework-utils/hn-authorize';\nimport { getTjenesterUrl, getHelsenorgeUrl } from '@helsenorge/framework-utils/hn-proxy-service';\nimport useResources from '@helsenorge/framework-utils/resources/useResources';\nimport SideSomIkkeFinnesSvg from './side-som-ikke-finnes-svg';\nimport { getResources } from '../resources';\nimport styles from './styles.module.scss';\nconst PageNotFound = () => {\n const resources = useResources(Projects.FRAMEWORK, getResources);\n const forsideUrl = isAuthorized() ? getTjenesterUrl() : getHelsenorgeUrl();\n useEffect(() => {\n track404();\n }, []);\n if (!resources) {\n return _jsx(Loader, { overlay: \"screen\", size: 'medium' });\n }\n return (!!resources && (_jsxs(\"div\", { className: \"container mb-6 mb-lg-7\", children: [_jsx(\"div\", { className: \"row\", children: _jsxs(\"div\", { className: \"col-md-10 offset-md-1 col-lg-8 offset-lg-2\", children: [_jsx(Title, { htmlMarkup: \"h2\", appearance: \"title1\", children: resources.pageNotFoundHeader }), _jsx(\"p\", { className: styles['page-not-found__preamble'], children: resources.pageNotFoundDescription }), _jsx(Button, { htmlMarkup: \"a\", href: forsideUrl, children: resources.pageNotFoundToStart })] }) }), _jsx(\"div\", { className: \"row\", children: _jsx(\"div\", { className: \"col-md-10 offset-md-1 col-lg-8 offset-lg-2\", children: _jsx(\"div\", { className: \"mt-7\", children: _jsx(SideSomIkkeFinnesSvg, {}) }) }) })] })));\n};\nexport default PageNotFound;\n","/**\n * Returnerer Path fra HN.Page objektet - eller tom string hvis den ikke finnes\n */\nexport const getPath = () => {\n return window.HN?.Page?.Path ?? '';\n};\n/**\n * Returnerer Version fra HN.Page objektet\n */\nexport const getVersion = () => {\n return window.HN?.Page?.Version;\n};\n/**\n * Returnerer Assets fra HN.Page objektet\n */\nexport const getAssets = () => {\n return window.HN?.Page?.Assets;\n};\n/**\n * Returnerer Assets fra HN.Page objektet - eller tom string hvis den ikke finnes\n */\nexport const getAssetsUrl = () => {\n return window.HN?.Page?.Assets ?? '';\n};\n/**\n * Returnerer VerticalAssetsPath fra HN.Page objektet - eller tom string hvis den ikke finnes\n */\nexport const getVerticalAssetsPath = () => {\n return window.HN?.Page?.VerticalAssetsPath ?? '';\n};\n/**\n * Oppdaterer Path key på HN.Page objektet\n * @param newPath verdien som settes i Path\n */\nexport const setPath = (newPath) => {\n window.HN = window.HN || {};\n window.HN.Page = window.HN.Page || {};\n window.HN.Page.Path = newPath;\n};\n/**\n * Hent ID som skal brukes på h1-elementet på siden\n * @returns ID\n */\nexport const getSidetittelId = () => 'sidetittel';\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport ReactDOM, { render } from 'react-dom';\nimport { error } from './../logger';\nimport { RegisterWebCompSetup } from './helpers';\nexport const isCustomElementRegistered = (name) => {\n return !!window.customElements.get(name);\n};\nexport function registerWebComp(ChildComponent, name, config, templateName) {\n class WebComponent extends HTMLElement {\n constructor() {\n super();\n Object.defineProperty(this, \"mountPoint\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"props\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"observer\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"eventDispatcher\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: (event) => {\n this.dispatchEvent(event);\n }\n });\n // Listen to Events from outside\n Object.defineProperty(this, \"subscribeDispatcher\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: (eventname, callback) => {\n this.addEventListener(eventname, e => {\n return callback(e);\n });\n }\n });\n }\n connectedCallback() {\n this.mountReactComponent();\n this.observer = new MutationObserver(mutations => {\n let shouldRerender = false;\n mutations.forEach(mutation => {\n if (mutation.type === 'attributes' &&\n mutation.attributeName &&\n mutation.oldValue !== mutation.target.getAttribute(mutation.attributeName)) {\n shouldRerender = true;\n }\n });\n if (shouldRerender) {\n this.renderReactComponent();\n }\n });\n this.observer.observe(this, { attributes: true });\n }\n disconnectedCallback() {\n if (this.mountPoint) {\n ReactDOM.unmountComponentAtNode(this.mountPoint);\n }\n this.observer?.disconnect();\n }\n get value() {\n return Array.from(this.attributes).reduce((p, c) => {\n p[c.name] = c.value;\n return p;\n }, {});\n }\n mountReactComponent() {\n this.mountPoint = document.createElement('div');\n if (!templateName) {\n error('Registrering av webcomp feiler: finner ikke template name');\n return;\n }\n // TEMPLATE\n // Her settes id til templatet\n const tmpl = document.getElementById(templateName);\n if (!tmpl) {\n error(`Kunne ikke finne html