{"version":3,"file":"urlTypeService-DyfC0HnJ.js","sources":["../../../../Coloplast.UI/src/shared/services/urlTypeService.js"],"sourcesContent":["export function isExternalUrl(url) {\r\n\tconst urlRegex = /^https?:\\/\\/([^\\/]+)\\//;\r\n\tlet match = urlRegex.exec(url.toLowerCase());\r\n\tif (match) {\r\n\t\treturn match[1] != location.host;\r\n\t}\r\n\treturn false;\r\n}\r\n\r\nexport function isFileUrl(url) {\r\n\t// Find the last file like path of the url. This most come after an `/`, and contain a `.`.\r\n\tconst fileLinkRegex = /\\/(([^\\/\\.]*)\\.([^\\/\\.\\?]+))\\??[^\\/\\.]*$/;\r\n\t// Ensure we only affect the pathname of the URL\r\n\tlet m = fileLinkRegex.exec(url.split('?')[0].toLowerCase());\r\n\r\n\tif (m) {\r\n\t\treturn {\r\n\t\t\tname: m[1],\r\n\t\t\textension: m[3],\r\n\t\t}\r\n\t}\r\n\treturn null;\r\n}\r\n\r\nexport function extractTopLevelDomain(url) {\r\n\tconst urlParts = new URL(url).hostname.split('.');\r\n\treturn urlParts\r\n\t\t.slice(0)\r\n\t\t.slice(-(urlParts.length === 4 ? 3 : 2))\r\n\t\t.join('.');\r\n}\r\n\r\nexport function isExternalDomain(url) {\r\n\treturn isExternalUrl(url) && url.indexOf(extractTopLevelDomain(location)) === -1;\r\n}\r\n\r\n//depends on marketing permission\r\nexport function youtubeVideoUrl() {\r\n\tif (!window.marketingPermissions) {\r\n\t\treturn 'https://www.youtube-nocookie.com/embed/'\r\n\t}\r\n\telse {\r\n\t\treturn 'https://www.youtube.com/embed/'\r\n\t}\r\n}\r\n\r\nexport function trackedgNoTrackedVideoUrl(isVimeo, marketingPermissions, videoUrl) {\r\n\tif (!isVimeo) {\r\n\t\tif (marketingPermissions) {\r\n\t\t\tvideoUrl = videoUrl.replace('youtube-nocookie', 'youtube');\r\n\t\t}\r\n\t\telse if (!videoUrl.includes('youtube-nocookie')) {\r\n\t\t\tvideoUrl = videoUrl.replace('youtube', 'youtube-nocookie');\r\n\t\t}\r\n\t}\r\n\telse {\r\n\t\tconst searchParam = 'dnt=true';\r\n\t\tif (marketingPermissions) {\r\n\t\t\tlet paramsToReplace;\r\n\t\t\tif (videoUrl.includes(searchParam)) {\r\n\t\t\t\t//detect what sign is before 'dnt' is it '&' or '?' and remove the right part\r\n\t\t\t\tparamsToReplace = videoUrl[videoUrl.indexOf(searchParam) - 1];\r\n\t\t\t\tparamsToReplace += searchParam;\r\n\t\t\t\tvideoUrl = videoUrl.replace(paramsToReplace, '');\r\n\t\t\t}\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (videoUrl.includes('?')) {\r\n\t\t\t\tvideoUrl += '&' + searchParam;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tvideoUrl += '?' + searchParam;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn videoUrl;\r\n}\r\n"],"names":["isExternalUrl","url","match","extractTopLevelDomain","urlParts","isExternalDomain","youtubeVideoUrl","trackedgNoTrackedVideoUrl","isVimeo","marketingPermissions","videoUrl","searchParam","paramsToReplace"],"mappings":"AAAO,SAASA,EAAcC,EAAK,CAElC,IAAIC,EADa,yBACI,KAAKD,EAAI,YAAa,CAAA,EAC3C,OAAIC,EACIA,EAAM,CAAC,GAAK,SAAS,KAEtB,EACR,CAiBO,SAASC,EAAsBF,EAAK,CAC1C,MAAMG,EAAW,IAAI,IAAIH,CAAG,EAAE,SAAS,MAAM,GAAG,EAChD,OAAOG,EACL,MAAM,CAAC,EACP,MAAM,EAAEA,EAAS,SAAW,EAAI,EAAI,EAAE,EACtC,KAAK,GAAG,CACX,CAEO,SAASC,EAAiBJ,EAAK,CACrC,OAAOD,EAAcC,CAAG,GAAKA,EAAI,QAAQE,EAAsB,QAAQ,CAAC,IAAM,EAC/E,CAGO,SAASG,GAAkB,CACjC,OAAK,OAAO,qBAIJ,iCAHA,yCAKT,CAEO,SAASC,EAA0BC,EAASC,EAAsBC,EAAU,CAClF,GAAI,CAACF,EACAC,EACHC,EAAWA,EAAS,QAAQ,mBAAoB,SAAS,EAEhDA,EAAS,SAAS,kBAAkB,IAC7CA,EAAWA,EAAS,QAAQ,UAAW,kBAAkB,OAGtD,CACJ,MAAMC,EAAc,WACpB,GAAIF,EAAsB,CACzB,IAAIG,EACAF,EAAS,SAASC,CAAW,IAEhCC,EAAkBF,EAASA,EAAS,QAAQC,CAAW,EAAI,CAAC,EAC5DC,GAAmBD,EACnBD,EAAWA,EAAS,QAAQE,EAAiB,EAAE,EAEhD,MAEIF,EAAS,SAAS,GAAG,EACxBA,GAAY,IAAMC,EAGlBD,GAAY,IAAMC,CAGpB,CACD,OAAOD,CACR"}