{"version":3,"file":"Content.BseKYq_8.js","sources":["../../../../../../src/lib/utility/schema-marks-utils.ts","../../../../../../src/lib/utility/util.ts","../../../../../../src/lib/utility/range-pages/cleanUrlPath.ts","../../../../../../src/lib/utility/range-pages/getRangePageConvertedUrl.ts","../../../../../../src/lib/utility/page-meta/getTitle.ts","../../../../../../src/lib/utility/page-meta/getDescription.ts","../../../../../../src/lib/utility/page-meta/getKeywords.ts","../../../../../../src/lib/utility/page-meta/getCanonicalUrl.ts","../../../../../../src/lib/components/Content.svelte"],"sourcesContent":["const transformSchema = (schema) => {\n\tif (typeof schema !== 'object') return schema;\n\ttry {\n\t\tif (Array.isArray(schema))\n\t\t\treturn schema.map((item) => {\n\t\t\t\tif (Array.isArray(item) && Object.entries(item[0]).length === 1)\n\t\t\t\t\treturn item.map((item) => item[Object.keys(item)[0]]);\n\t\t\t\treturn transformSchema(item);\n\t\t\t}, {});\n\n\t\treturn Object.entries(schema).reduce((acc, [key, item]) => {\n\t\t\tif (Array.isArray(item) && item.length === 0) acc[key] = null;\n\t\t\telse if (Array.isArray(item) && Object.entries(item[0]).length === 1)\n\t\t\t\tacc[key] = item.map((item) => item[Object.keys(item)[0]]);\n\t\t\telse acc[key] = transformSchema(item);\n\t\t\treturn Object.fromEntries(Object.entries(acc).filter(([_, v]) => v != null));\n\t\t}, {});\n\t} catch (error) {\n\t\tconsole.error('Error generating schema:', error);\n\t\treturn {};\n\t}\n};\n\nexport const convertStructuredDataToLdJSON = (structuredData) => {\n\tif (!structuredData) return null;\n\n\tlet orgSchema =\n\t\tstructuredData.orgSchema && !structuredData.orgSchema.disableSchema\n\t\t\t? structuredData.orgSchema.orgSchema\n\t\t\t: null;\n\n\tif (orgSchema) {\n\t\torgSchema = {\n\t\t\t'@context': 'https://schema.org',\n\t\t\t'@type': 'Organization',\n\t\t\t...transformSchema(orgSchema),\n\t\t};\n\t}\n\n\tconst additionalSchemaKey = structuredData.additionalSchemaType + 'Schema';\n\n\tlet additionalSchema = structuredData[additionalSchemaKey]\n\t\t? structuredData[additionalSchemaKey][additionalSchemaKey]\n\t\t: null;\n\n\tif (additionalSchema) {\n\t\tadditionalSchema = {\n\t\t\t'@context': 'https://schema.org',\n\t\t\t'@type': structuredData.additionalSchemaType,\n\t\t\t...transformSchema(additionalSchema),\n\t\t};\n\t}\n\n\tconst jsonLd = [orgSchema, additionalSchema].filter(Boolean);\n\n\treturn orgSchema || additionalSchema ? serializeSchema(jsonLd) : null;\n};\n\nexport function serializeSchema(thing) {\n\treturn `<script type=\"application/ld+json\">${JSON.stringify(thing, null, 2).replaceAll('\"type\"', '\"@type\"')}</script>`;\n}\n","// external dependencies\nimport { browser } from '$app/environment';\n// internal dependencies\nimport * as constant from '$lib/config/constant';\nimport { PROD_DOMAIN } from '$lib/config/constant';\nimport { countryParam, languageParam } from '@se/common/stores';\nimport { logger } from '@se/core/services/logger';\nimport { get } from 'svelte/store';\n\nconst monthNames = [\n\t'January',\n\t'February',\n\t'March',\n\t'April',\n\t'May',\n\t'June',\n\t'July',\n\t'August',\n\t'September',\n\t'October',\n\t'November',\n\t'December',\n];\n\n/**\n * Get date from timestamp\n * @param value timestamp\n * @return formatted date string\n */\nexport function getDate(value: string): string {\n\tif (!value) {\n\t\treturn '';\n\t}\n\n\tconst dateObj = new Date(value);\n\treturn `${dateObj.getDate()} ${monthNames[dateObj.getMonth()]} ${dateObj.getFullYear()}`;\n}\n\n/**\n * check given string is a valid email format or not\n * @param value Given string\n */\nexport function emailValidator(value: string) {\n\treturn (\n\t\tvalue &&\n\t\t!!value.match(\n\t\t\t/^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n\t\t)\n\t);\n}\n\n/**\n * to get the base URL for API call\n */\nexport const resolveExternalURL = (apiUrl: string, source = '') => {\n\tlet country = get(countryParam);\n\tlet language = get(languageParam);\n\n\tif (browser) {\n\t\tconst params = getCountryLang();\n\t\tcountry = params.country;\n\t\tlanguage = params.language;\n\t}\n\tif (source === 'header') {\n\t\treturn apiUrl.replace('[locale]', `${country}_${language}`);\n\t}\n\treturn `${apiUrl}${language}-${country}`;\n};\n\n/**\n * to check if store update is required or not based on the current locale\n * @param country country param\n * @param language language param\n */\nexport const shouldUpdateParams = (country: string, language: string) => {\n\tconst currentCountry = get(countryParam);\n\tconst currentLanguage = get(languageParam);\n\n\t// if current country is not defined, return true\n\tif (!currentCountry) {\n\t\treturn true;\n\t}\n\n\tconst currentLocale = `${currentCountry?.toLowerCase()}-${currentLanguage?.toLowerCase()}`;\n\tconst locale = `${country?.toLowerCase()}-${language?.toLowerCase()}`;\n\n\t// if both locales matches do not reset the store\n\tif (currentLocale === locale) {\n\t\treturn false;\n\t}\n\n\t// if locale is supported, reset the store\n\tif (constant.SUPPORTED_LOCALES.includes(locale)) {\n\t\treturn true;\n\t}\n\n\treturn false;\n};\n\n/**\n * Get the country and language from the path name\n */\nexport function getCountryLang(): any {\n\tlet country = 'ww';\n\tlet language = 'en';\n\n\t// check if location is available\n\tif (browser) {\n\t\tlet path: string | any[] = location.pathname;\n\t\tpath = path.replace('/builder', '');\n\t\tpath = path.split('/');\n\n\t\t// set country and language based on the path name\n\t\tif (path.length > 2) {\n\t\t\tcountry = path[1];\n\t\t\tlanguage = path[2];\n\t\t}\n\t}\n\n\treturn { country, language };\n}\n\n/**\n * Retrieves the site URL based on the provided URL.\n * If the environment mode is not 'prod', the original URL is returned.\n * Otherwise, the URL's origin is replaced with the PROD_DOMAIN.\n *\n * @param url - The URL to retrieve the site URL from.\n * @returns The site URL.\n */\nexport const getSiteUrl = (url: string, isReverseProxy: boolean): string => {\n\tif (!url) return '';\n\tlogger.log(`siteUrl is - ${url} and is a reverse proxy ${isReverseProxy}`);\n\n\tif (import.meta.env.VITE_ENVIRONMENT_MODE !== 'prod') return url;\n\n\tconst urlOrigin = new URL(url).origin;\n\tif (isReverseProxy) return url.replace(urlOrigin, PROD_DOMAIN);\n\n\treturn url;\n};\n","/**\n * Cleans a given URL path by performing the following operations:\n * 1. Converts the first segment of the path to lowercase.\n * 2. Removes any segments that match the pattern `v{number}` (e.g., `v1`, `v2`).\n * 3. Retains the trailing slash if the original path had one.\n *\n * @param path - The URL path to be cleaned.\n * @returns The cleaned URL path.\n */\nexport const cleanUrlPath = (path: string) => {\n\tconst hasTrailingSlash = path.endsWith('/');\n\n\tlet segments = path.split('/').filter(Boolean);\n\n\tif (segments.length > 0) {\n\t\tsegments[0] = segments[0].toLowerCase();\n\t}\n\n\tsegments = segments.filter((segment) => !/^v\\d+$/.test(segment));\n\n\tlet cleanedPath = '/' + segments.join('/');\n\n\tif (hasTrailingSlash) {\n\t\tcleanedPath += '/';\n\t}\n\n\treturn cleanedPath;\n};\n","import { getSiteUrl } from '../util';\nimport { cleanUrlPath } from './cleanUrlPath';\n\ntype GetRangePageConvertedUrl = {\n\turlPath: string;\n\tpreviewUrl: string;\n\tisReverseProxy: boolean;\n};\n\n/**\n * Converts a given URL path to a new URL based on the preview URL and reverse proxy settings.\n *\n * @param {Object} params - The parameters for the function.\n * @param {string} params.urlPath - The URL path to be converted.\n * @param {string} params.previewUrl - The preview URL used to derive the new URL's origin.\n * @param {boolean} params.isReverseProxy - A flag indicating whether to use reverse proxy settings.\n * @returns {string} The converted URL or an empty string if the preview URL is not provided.\n */\nexport const getRangePageConvertedUrl = ({\n\turlPath,\n\tpreviewUrl,\n\tisReverseProxy,\n}: GetRangePageConvertedUrl) => {\n\tif (!previewUrl) {\n\t\treturn '';\n\t}\n\n\tconst previewOrigin = new URL(previewUrl).origin;\n\tconst cleanedUrlPath = cleanUrlPath(urlPath);\n\n\tconst newUrl = `${previewOrigin}${cleanedUrlPath}`;\n\n\treturn getSiteUrl(newUrl, isReverseProxy);\n};\n","import { PAGE_TITLE_STATIC_PART } from '$src/lib/config/constant';\n\nexport function getTitle({\n\tbuilderContent,\n\tpageStore,\n\tcountry,\n\tlanguage,\n\ttaxonomy,\n\tSeoCountryName,\n}) {\n\tconst enableBAsuffix = builderContent?.data?.enablebasuffix;\n\tconst pathWithoutCountry = pageStore.url.pathname.replace(`/${country}/${language}/`, '');\n\tconst isHomePage = pathWithoutCountry === '';\n\n\tconst seoTitle = builderContent?.data?.title || builderContent?.data?.page?.title || '';\n\n\tconst seoBussinessAreaPrefix =\n\t\tenableBAsuffix && taxonomy?.seoBussinessArea && taxonomy?.seoBussinessArea !== ''\n\t\t\t? ` - ${taxonomy?.seoBussinessArea} `\n\t\t\t: '';\n\n\tif (isHomePage) {\n\t\treturn `${PAGE_TITLE_STATIC_PART} ${SeoCountryName} ${seoTitle ? '|' : ''} ${seoTitle} `;\n\t}\n\treturn `${seoTitle}${seoBussinessAreaPrefix}${seoTitle ? '|' : ''} ${PAGE_TITLE_STATIC_PART} ${SeoCountryName}`;\n}\n","import { PAGE_TITLE_STATIC_PART } from '$src/lib/config/constant';\n\nexport function getDescription({ builderContent, SeoCountryName }) {\n\tconst seoDescription =\n\t\tbuilderContent?.data?.description || builderContent?.data?.page?.description || '';\n\treturn `${seoDescription} | ${PAGE_TITLE_STATIC_PART} ${SeoCountryName}`;\n}\n","export function getKeywords({ builderContent }) {\n\tconst keywords = builderContent?.data?.keywords || builderContent?.data?.page?.keywords;\n\tif (!Array.isArray(keywords)) {\n\t\treturn '';\n\t}\n\treturn keywords.map((data) => data.keyword).join(', ');\n}\n","import { getSiteUrl } from '../util';\n\nexport const getCanonicalUrl = (previewUrl: string, isReverseProxy: boolean) => {\n\treturn previewUrl\n\t\t? getSiteUrl(previewUrl?.endsWith('/') ? previewUrl : `${previewUrl}/`, isReverseProxy)\n\t\t: '';\n};\n","<script lang=\"ts\">\n\t// external dependencies\n\timport { Content, type BuilderContent, isPreviewing } from '@builder.io/sdk-svelte';\n\timport { page } from '$app/stores';\n\n\t// internal dependencies\n\timport { SEO_COUNTRIES } from '$lib/config/constant';\n\timport { convertStructuredDataToLdJSON } from '../utility/schema-marks-utils';\n\timport { onMount } from 'svelte';\n\timport { getSiteUrl } from '../utility/util';\n\timport { getAppContext } from '@se/common/utils';\n\timport { getRangePageConvertedUrl } from '../utility/range-pages/getRangePageConvertedUrl';\n\timport { getTitle } from '../utility/page-meta/getTitle';\n\timport { getDescription } from '../utility/page-meta/getDescription';\n\timport { getKeywords } from '../utility/page-meta/getKeywords';\n\timport { getCanonicalUrl } from '../utility/page-meta/getCanonicalUrl';\n\n\texport let enrich = false;\n\texport let model = 'page';\n\texport let apiKey = '';\n\texport let country = 'ww';\n\texport let language = 'en';\n\texport let locale = '';\n\texport let builderContent:\n\t\t| (BuilderContent & {\n\t\t\t\tpreviewUrl?: string;\n\t\t })\n\t\t| undefined;\n\texport let CUSTOM_COMPONENTS = [];\n\n\tconst DEFAULT_IS_NOT_INDEXABLE = false;\n\tconst RANGE_OG_TYPE = 'website';\n\tconst DEFAULT_OG_IMAGE =\n\t\t'https://www.se.com/ww/en/assets/wiztopic/6377672a9a2b2dda9503c02d/SE-logo-Life-is-On-png.png';\n\n\tconst appContext = getAppContext();\n\tconst taxonomy = appContext?.taxonomy;\n\tconst SeoCountryName =\n\t\ttaxonomy && taxonomy?.countryName && taxonomy?.countryName !== ''\n\t\t\t? taxonomy?.countryName\n\t\t\t: getCountryNameByLocale(false);\n\n\tfunction getCountryNameByLocale(getGlobal: boolean = true): string {\n\t\tconst global = getGlobal ? 'Global' : '';\n\t\tif (country === 'ww' && language === 'en') return global;\n\n\t\treturn new Intl.DisplayNames([language], { type: 'region' }).of(country.toUpperCase()) || '';\n\t}\n\n\tconst {\n\t\tisRangePage = false,\n\t\tpesData: {\n\t\t\trangesMetadata: {\n\t\t\t\ttitle: rangeMetaTitle,\n\t\t\t\tdescription: rangeMetaDescription,\n\t\t\t\tkeywords: rangeMetaKeywords,\n\t\t\t\tdisableGoogleIndexation,\n\t\t\t\trangeStatus,\n\t\t\t\trangeName,\n\t\t\t\trangeShortDesc,\n\t\t\t\trangeMasterRange,\n\t\t\t\trangeMasterRangeHighlighted,\n\t\t\t\trangeChannelCodes,\n\t\t\t\trangeMarketingRange,\n\t\t\t\togURL: rangeOgUrl,\n\t\t\t\togImageSource,\n\t\t\t\tcanonicalUrl: rangeCanonicalUrl,\n\t\t\t} = {},\n\t\t} = {},\n\t} = $page?.data || {};\n\n\tconst canShowContent = builderContent || isPreviewing();\n\tconst seoAlternateData = JSON.parse(SEO_COUNTRIES + '') || [];\n\n\tconst jsonLdScript = convertStructuredDataToLdJSON(builderContent?.data?.seo?.structuredData);\n\tconst isReverseProxy: boolean = $page?.data?.isReverseProxy;\n\tconst previewUrl = builderContent?.previewUrl;\n\n\tlet currentLocation: string = '';\n\tonMount(() => {\n\t\tcurrentLocation = window.location.href;\n\t});\n\n\tconst pageCanonicalUrl = getCanonicalUrl(previewUrl, isReverseProxy);\n\n\t// meta tags data for range pages and non-range pages below\n\tconst title = isRangePage\n\t\t? rangeMetaTitle\n\t\t: getTitle({ builderContent, pageStore: $page, country, language, taxonomy, SeoCountryName });\n\n\tconst description = isRangePage\n\t\t? rangeMetaDescription\n\t\t: getDescription({ builderContent, SeoCountryName });\n\n\tconst keywords = isRangePage ? rangeMetaKeywords : getKeywords({ builderContent });\n\n\tconst canonicalUrl = isRangePage\n\t\t? getRangePageConvertedUrl({ urlPath: rangeCanonicalUrl, previewUrl, isReverseProxy })\n\t\t: pageCanonicalUrl;\n\n\tconst ogTitle = builderContent?.data?.ogTitle || title;\n\tconst ogDescription = builderContent?.data?.ogDescription || description;\n\tconst ogType = isRangePage ? RANGE_OG_TYPE : builderContent?.data?.ogType;\n\tconst ogImage = isRangePage ? ogImageSource : builderContent?.data?.ogImage || DEFAULT_OG_IMAGE;\n\n\tconst ogUrl = isRangePage\n\t\t? getRangePageConvertedUrl({ urlPath: rangeOgUrl, previewUrl, isReverseProxy })\n\t\t: getSiteUrl(builderContent?.data?.ogUrl || currentLocation, isReverseProxy);\n\n\tconst isPageIndexationFieldPresent = typeof builderContent?.data?.indexation === 'boolean';\n\tconst isSectionModelIndexationFieldPresent =\n\t\ttypeof builderContent?.data?.page?.indexation === 'boolean';\n\n\tconst isPageNotIndexable = isRangePage\n\t\t? disableGoogleIndexation\n\t\t: isPageIndexationFieldPresent\n\t\t\t? !builderContent?.data?.indexation\n\t\t\t: isSectionModelIndexationFieldPresent\n\t\t\t\t? !builderContent?.data?.page?.indexation\n\t\t\t\t: DEFAULT_IS_NOT_INDEXABLE;\n</script>\n\n{#if canShowContent}\n\t<Content\n\t\t{model}\n\t\tcontent={builderContent}\n\t\t{apiKey}\n\t\t{locale}\n\t\tcustomComponents={CUSTOM_COMPONENTS}\n\t\t{enrich}\n\t/>\n{/if}\n\n<svelte:head>\n\t<title>{title}</title>\n\t<meta name=\"description\" content={description} />\n\t<meta name=\"keywords\" property=\"keywords\" content={keywords} />\n\t{#if canonicalUrl || isRangePage}\n\t\t<link rel=\"canonical\" href={canonicalUrl} />\n\t{/if}\n\t{#if isPageNotIndexable}\n\t\t<meta name=\"robots\" content={isRangePage ? 'noindex, follow' : 'noindex'} />\n\t{/if}\n\n\t<meta property=\"og:title\" content={ogTitle} />\n\t<meta property=\"og:description\" content={ogDescription} />\n\t<meta property=\"og:type\" content={ogType} />\n\t<meta property=\"og:url\" content={ogUrl} />\n\t<meta property=\"og:image\" content={ogImage} />\n\n\t{#if isRangePage}\n\t\t<meta property=\"og:keyword\" content={rangeMetaKeywords} />\n\t\t<meta property=\"og:locale\" content={`${language}_${country.toUpperCase()}`} />\n\t\t<meta http-equiv=\"X-UA-compatible\" content=\"IE=Edge\" />\n\t\t<meta name=\"range-status\" content={rangeStatus} />\n\t\t<meta name=\"range-name\" content={rangeName} />\n\t\t<meta name=\"range-shortdesc\" content={rangeShortDesc} />\n\n\t\t{#if rangeMasterRange}\n\t\t\t<meta name=\"range-masterrange\" content={rangeMasterRange} />\n\t\t{/if}\n\t\t{#if rangeMasterRangeHighlighted}\n\t\t\t<meta name=\"range-highlighted\" content={rangeMasterRangeHighlighted} />\n\t\t{/if}\n\t\t{#if rangeChannelCodes}\n\t\t\t<meta name=\"range-channels\" content={rangeChannelCodes} />\n\t\t{/if}\n\t\t{#if rangeMarketingRange}\n\t\t\t<meta name=\"range-marketingrange\" content={rangeMarketingRange} />\n\t\t{/if}\n\t{/if}\n\n\t{#if !isRangePage}\n\t\t<meta name=\"twitter:card\" property=\"twitter:card\" content={builderContent?.data?.twitterCard} />\n\t\t<meta name=\"twitter:site\" property=\"twitter:site\" content={builderContent?.data?.twitterSite} />\n\t{/if}\n\n\t{#each seoAlternateData as seoAlternate}\n\t\t<link rel=\"alternate\" href={seoAlternate.alternateUrl} hreflang={seoAlternate.locale} />\n\t{/each}\n</svelte:head>\n{#if jsonLdScript}\n\t{@html jsonLdScript}\n{/if}\n"],"names":["transformSchema","schema","item","acc","key","_","v","error","convertStructuredDataToLdJSON","structuredData","orgSchema","additionalSchemaKey","additionalSchema","jsonLd","serializeSchema","thing","getSiteUrl","url","isReverseProxy","logger","urlOrigin","PROD_DOMAIN","cleanUrlPath","path","hasTrailingSlash","segments","segment","cleanedPath","getRangePageConvertedUrl","urlPath","previewUrl","previewOrigin","cleanedUrlPath","newUrl","getTitle","builderContent","pageStore","country","language","taxonomy","SeoCountryName","enableBAsuffix","_a","isHomePage","seoTitle","_b","_d","_c","seoBussinessAreaPrefix","PAGE_TITLE_STATIC_PART","getDescription","getKeywords","keywords","data","getCanonicalUrl","ctx","insert_hydration","target","link","anchor","meta","create_if_block_6","create_if_block_5","create_if_block_4","create_if_block_3","meta0","meta1","meta2","meta3","meta4","meta5","if_block0","dirty","if_block1","if_block2","if_block3","attr","create_if_block_9","create_if_block_8","create_if_block_7","create_if_block_2","create_if_block_1","i","create_if_block","append_hydration","meta6","if_block4","if_block5","DEFAULT_IS_NOT_INDEXABLE","RANGE_OG_TYPE","DEFAULT_OG_IMAGE","enrich","$$props","model","apiKey","locale","CUSTOM_COMPONENTS","appContext","getAppContext","getCountryNameByLocale","getGlobal","global","isRangePage","rangeMetaTitle","rangeMetaDescription","rangeMetaKeywords","disableGoogleIndexation","rangeStatus","rangeName","rangeShortDesc","rangeMasterRange","rangeMasterRangeHighlighted","rangeChannelCodes","rangeMarketingRange","rangeOgUrl","ogImageSource","rangeCanonicalUrl","$page","canShowContent","isPreviewing","seoAlternateData","SEO_COUNTRIES","jsonLdScript","currentLocation","onMount","pageCanonicalUrl","title","description","canonicalUrl","ogTitle","ogDescription","_e","ogType","_f","ogImage","_g","ogUrl","_h","isPageIndexationFieldPresent","_i","isSectionModelIndexationFieldPresent","_k","_j","isPageNotIndexable","_l","_n","_m"],"mappings":"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"}