{"version":3,"sources":["webpack:///./app/javascript/packs/sentry.tsx"],"names":["document","addEventListener","trackingId","Cookies","get","sentryCookie","sentryProperties","decodedSentry","decodeURIComponent","JSON","parse","Error","cookieConsent","localStorage","getItem","consent","state","preferences","analytics","Sentry","dsn","process","release","environment","normalizeDepth","tracesSampleRate","integrations","ignoreErrors","setUser","id","subscriptionId","subscriptionStatus"],"mappings":"2IAAA,yDAYAA,SAASC,iBAAiB,oBAAoB,KAC5C,IAAMC,EAAaC,IAAQC,IAAI,eACzBC,EAAeF,IAAQC,IAAI,qBAE7BE,EAAmB,GAEvB,GAAID,EAAc,CAChB,IAAME,EAAgBC,mBAAmBH,GACzCC,EAAmBG,KAAKC,MAAMH,GAGhC,IAAKL,EACH,MAAM,IAAIS,MAAM,kCAGlB,IA0BMC,EACJC,aAAaC,QAAQ,kBAAoB,wBACrCC,EAAUN,KAAKC,MAAME,GAGzBG,GACkB,aAAlBA,EAAQC,OACRD,EAAQE,YAAYC,YAhCpBC,IAAY,CACVC,IAAKC,6DACLC,QAASD,2CACTE,YAAaF,aACbG,eAAgB,GAChBC,iBAAkB,GAClBC,aAAc,CAACP,OACfQ,aAAc,CACZ,YACA,qBACA,yDACA,YACA,eAIUR,MAERS,QAAQ,CACZC,GAAI3B,EACJ,kBAAqBI,EAAiBwB,eACtC,sBAAyBxB,EAAiByB,2B","file":"js/sentry-63de49d7b2f89df8c365.chunk.js","sourcesContent":["/* eslint-disable no-useless-computed-key */\n// @noflow\nimport * as Sentry from '@sentry/browser'\nimport Cookies from 'js-cookie'\n\nimport { SubscriptionStatus } from '@/types'\n\ntype SentryProperties = {\n subscriptionId: number | string\n subscriptionStatus: SubscriptionStatus\n}\n\ndocument.addEventListener('DOMContentLoaded', (): void => {\n const trackingId = Cookies.get('tracking_id')\n const sentryCookie = Cookies.get('sentry_properties')\n\n let sentryProperties = {} as SentryProperties\n\n if (sentryCookie) {\n const decodedSentry = decodeURIComponent(sentryCookie)\n sentryProperties = JSON.parse(decodedSentry)\n }\n\n if (!trackingId) {\n throw new Error('Could not find the tracking Id')\n }\n\n const initSentry = (): void => {\n Sentry.init({\n dsn: process.env.SENTRY_FRONTEND_DSN,\n release: process.env.HEROKU_SLUG_COMMIT,\n environment: process.env.NODE_ENV,\n normalizeDepth: 10,\n tracesSampleRate: 0.8,\n integrations: [Sentry.browserTracingIntegration()],\n ignoreErrors: [\n 'cancelled',\n 'å·²å–消',\n 'ã‚ャンセルã—ã¾ã—ãŸ',\n 'anulowane',\n 'cancelado'\n ]\n })\n\n const scope = Sentry.getCurrentScope()\n\n scope.setUser({\n id: trackingId,\n ['Subscription ID']: sentryProperties.subscriptionId,\n ['Subscription Status']: sentryProperties.subscriptionStatus\n })\n }\n\n const cookieConsent =\n localStorage.getItem('cookieConsent') || '{ \"preferences\": {} }'\n const consent = JSON.parse(cookieConsent)\n\n if (\n consent &&\n consent.state === 'accepted' &&\n consent.preferences.analytics\n ) {\n initSentry()\n }\n})\n"],"sourceRoot":""}