{"version":3,"mappings":"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","names":["arrayBufferToBase64","buffer","bytes","string","encoder","sha256","text","textUint8","internalDomains","isInternalUser","email","localpart","domain","setupPendo","apiKey","p","e","n","d","o","v","w","x","y","z","m","signedInUser","user","setupAppInsights","handleError","error","event","status","message","track","matchers","switch_value","ctx","dirty","create_if_block_1","insert_hydration","target","div","anchor","create_if_block","stores","$$props","page","constructors","components","form","data_0","data_1","data_2","afterUpdate","mounted","navigated","title","onMount","unsubscribe","$$invalidate","tick","$$value","nodes","__vitePreload","server_loads","dictionary","hooks","client_hooks.handleError"],"sources":["../../../../../../src/lib/helpers/pendo.js","../../../../../../src/hooks.client.js","../../../../../generated/client-optimized/matchers.js","../../../../../generated/root.svelte","../../../../../generated/client-optimized/app.js"],"sourcesContent":["/* eslint-disable prettier/prettier */\nimport { signedInUser } from '@ctm/auth/store';\n\n/*globals pendo */\n\nfunction arrayBufferToBase64(buffer) {\n const bytes = new Uint8Array(buffer);\n let string = '';\n for (let i = 0; i < bytes.byteLength; i++) {\n string += String.fromCharCode(bytes[i]);\n }\n return btoa(string);\n}\n\nconst encoder = new TextEncoder();\nasync function sha256(text) {\n const textUint8 = encoder.encode(text); // encode as (utf-8) Uint8Array\n const buffer = await crypto.subtle.digest(\"SHA-256\", textUint8); // hash the message\n return arrayBufferToBase64(buffer);\n}\n\nconst internalDomains = new Set(['travelctm.com', 'travelqac.com', 'ctmportal.com', 'mailinator.com', 'local', 'example.com'])\nfunction isInternalUser(email) {\n const [localpart, domain] = email.split('@');\n if (internalDomains.has(domain)) {\n return true;\n }\n if (localpart.toLowerCase().startsWith('test') && localpart.includes('.')) {\n return true;\n }\n return false;\n}\n\nexport function setupPendo(apiKey) {\n (function(p,e,n,d,o){var v,w,x,y,z;o=p[d]=p[d]||{};o._q=o._q||[];\n v=['initialize','identify','updateOptions','pageLoad','track'];for(w=0,x=v.length;w {\n if (initialized || !user) {\n return;\n }\n \n // This function creates visitors and accounts in Pendo\n // You will need to replace and with values you use in your app\n // Please use Strings, Numbers, or Bools for value types.\n pendo?.initialize({\n visitor: {\n id: await sha256(user.email), // Required if user is logged in\n // email: user.email, // Recommended if using Pendo Feedback, or NPS Email\n // full_name: user.name, // Recommended if using Pendo Feedback\n internal: isInternalUser(user.email),\n role: user.roleTypeName.toLowerCase(), // Optional\n\n // You can add any additional visitor level key-values here,\n // as long as it's not one of the above reserved names.\n },\n\n account: {\n id: user.debtor, // Highly recommended, required if using Pendo Feedback\n name: user.debtorName, // Optional\n // is_paying: // Recommended if using Pendo Feedback\n // monthly_value: // Recommended if using Pendo Feedback\n // planLevel: // Optional\n // planPrice: // Optional\n // creationDate: // Optional\n\n // You can add any additional account level key-values here,\n // as long as it's not one of the above reserved names.\n }\n });\n\t});\n}\n","import { setupAppInsights, track } from '$lib/helpers/appInsights.js';\nimport { setupPendo } from '$lib/helpers/pendo.js';\n\nsetupAppInsights();\nif (environmentSettings.pendoApiKey) {\n\tsetupPendo(environmentSettings.pendoApiKey);\n}\n\nexport function handleError({ error, event, status, message }) {\n\ttrack.exception(error, { event, status, message });\n\treturn {\n\t\tmessage,\n\t\terror,\n\t};\n}\n","export const matchers = {};","\n\n\n\n{#if constructors[1]}\n\t\n\t\t{#if constructors[2]}\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t{:else}\n\t\t\t\n\t\t{/if}\n\t\n{:else}\n\t\n{/if}\n\n{#if mounted}\n\t
\n\t\t{#if navigated}\n\t\t\t{title}\n\t\t{/if}\n\t
\n{/if}","import * as client_hooks from '../../../src/hooks.client.js';\n\n\nexport { matchers } from './matchers.js';\n\nexport const nodes = [\n\t() => import('./nodes/0'),\n\t() => import('./nodes/1'),\n\t() => import('./nodes/2'),\n\t() => import('./nodes/3'),\n\t() => import('./nodes/4'),\n\t() => import('./nodes/5'),\n\t() => import('./nodes/6'),\n\t() => import('./nodes/7'),\n\t() => import('./nodes/8'),\n\t() => import('./nodes/9'),\n\t() => import('./nodes/10'),\n\t() => import('./nodes/11'),\n\t() => import('./nodes/12'),\n\t() => import('./nodes/13'),\n\t() => import('./nodes/14')\n];\n\nexport const server_loads = [];\n\nexport const dictionary = {\n\t\t\"/(sigin-in)\": [10],\n\t\t\"/approve-hotel-review/[id]/[approver]\": [11],\n\t\t\"/covid-hub\": [12],\n\t\t\"/(authenticated)/credits\": [3,[2]],\n\t\t\"/(authenticated)/dashboard\": [4,[2]],\n\t\t\"/hotel-review/[id]\": [13],\n\t\t\"/(authenticated)/itinerary/[bookingRef]/[passengerRef]\": [5,[2]],\n\t\t\"/(authenticated)/people\": [6,[2]],\n\t\t\"/(authenticated)/people/[profileId]\": [7,[2]],\n\t\t\"/(authenticated)/risk-hub\": [8,[2]],\n\t\t\"/sso\": [14],\n\t\t\"/(authenticated)/track\": [9,[2]]\n\t};\n\nexport const hooks = {\n\thandleError: client_hooks.handleError || (({ error }) => { console.error(error) }),\n\n\treroute: (() => {})\n};\n\nexport { default as root } from '../root.svelte';"],"file":"_app/immutable/entry/app.eC_Ld1E3.js"}