HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/shop.komma.nl/node_modules/@sentry/browser/esm/transports/xhr.js.map
{"version":3,"file":"xhr.js","sourceRoot":"","sources":["../../src/transports/xhr.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAmB,MAAM,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,4BAA4B;AAC5B;IAAkC,gCAAa;IAA/C;QAAA,qEA0DC;QAzDC,mDAAmD;QAC3C,oBAAc,GAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;;IAwDtD,CAAC;IAtDC;;OAEG;IACI,gCAAS,GAAhB,UAAiB,KAAY;QAA7B,iBAkDC;QAjDC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE;YAC9C,OAAO,OAAO,CAAC,MAAM,CAAC;gBACpB,KAAK,OAAA;gBACL,MAAM,EAAE,2BAAyB,IAAI,CAAC,cAAc,+BAA4B;gBAChF,MAAM,EAAE,GAAG;aACZ,CAAC,CAAC;SACJ;QAED,IAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CACrB,IAAI,WAAW,CAAW,UAAC,OAAO,EAAE,MAAM;YACxC,IAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;YAErC,OAAO,CAAC,kBAAkB,GAAG;gBAC3B,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,EAAE;oBAC5B,OAAO;iBACR;gBAED,IAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAEnD,IAAI,MAAM,KAAK,MAAM,CAAC,OAAO,EAAE;oBAC7B,OAAO,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;oBACpB,OAAO;iBACR;gBAED,IAAI,MAAM,KAAK,MAAM,CAAC,SAAS,EAAE;oBAC/B,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvB;;;uBAGG;oBACH,IAAM,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;oBAClE,KAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC;oBACnF,MAAM,CAAC,IAAI,CAAC,0CAAwC,KAAI,CAAC,cAAgB,CAAC,CAAC;iBAC5E;gBAED,MAAM,CAAC,OAAO,CAAC,CAAC;YAClB,CAAC,CAAC;YAEF,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YACpC,KAAK,IAAM,MAAM,IAAI,KAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACzC,IAAI,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;oBAC/C,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;iBAChE;aACF;YACD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACH,mBAAC;AAAD,CAAC,AA1DD,CAAkC,aAAa,GA0D9C","sourcesContent":["import { eventToSentryRequest } from '@sentry/core';\nimport { Event, Response, Status } from '@sentry/types';\nimport { logger, parseRetryAfterHeader, SyncPromise } from '@sentry/utils';\n\nimport { BaseTransport } from './base';\n\n/** `XHR` based transport */\nexport class XHRTransport extends BaseTransport {\n  /** Locks transport after receiving 429 response */\n  private _disabledUntil: Date = new Date(Date.now());\n\n  /**\n   * @inheritDoc\n   */\n  public sendEvent(event: Event): PromiseLike<Response> {\n    if (new Date(Date.now()) < this._disabledUntil) {\n      return Promise.reject({\n        event,\n        reason: `Transport locked till ${this._disabledUntil} due to too many requests.`,\n        status: 429,\n      });\n    }\n\n    const sentryReq = eventToSentryRequest(event, this._api);\n\n    return this._buffer.add(\n      new SyncPromise<Response>((resolve, reject) => {\n        const request = new XMLHttpRequest();\n\n        request.onreadystatechange = (): void => {\n          if (request.readyState !== 4) {\n            return;\n          }\n\n          const status = Status.fromHttpCode(request.status);\n\n          if (status === Status.Success) {\n            resolve({ status });\n            return;\n          }\n\n          if (status === Status.RateLimit) {\n            const now = Date.now();\n            /**\n             * \"The search for the header name is case-insensitive.\"\n             * https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getResponseHeader\n             */\n            const retryAfterHeader = request.getResponseHeader('Retry-After');\n            this._disabledUntil = new Date(now + parseRetryAfterHeader(now, retryAfterHeader));\n            logger.warn(`Too many requests, backing off till: ${this._disabledUntil}`);\n          }\n\n          reject(request);\n        };\n\n        request.open('POST', sentryReq.url);\n        for (const header in this.options.headers) {\n          if (this.options.headers.hasOwnProperty(header)) {\n            request.setRequestHeader(header, this.options.headers[header]);\n          }\n        }\n        request.send(sentryReq.body);\n      }),\n    );\n  }\n}\n"]}