// Module ID: 6434 // Function ID: 6435 // Name: createTransport // Dependencies: [6435, 6415, 6436, 6395, 6399, 6371, 6428] // Module 6434 (createTransport) const require = arg1; let dependencyMap = arg6; arg5.DEFAULT_TRANSPORT_BUFFER_SIZE = 64; arg5.createTransport = function createTransport(bufferSize) { const _require = bufferSize; const dependencyMap = arg1; let promiseBuffer = arg2; if (arg2 === undefined) { let obj = _require(6435); let num = bufferSize.bufferSize; if (!num) { num = 64; } promiseBuffer = obj.makePromiseBuffer(num); } let closure_3 = {}; obj = { send(arg0) { const items = []; bufferSize(table[1]).forEachEnvelopeItem(arg0, (arg0, arg1) => { const result = items(6415).envelopeItemTypeToDataCategory(arg1); const obj = items(6415); if (obj2.isRateLimited(outer1_3, result)) { if ("event" === arg1) { const _Array = Array; let tmp6; if (Array.isArray(arg0)) { tmp6 = arg0[1]; } const tmp4 = tmp6; } items.recordDroppedEvent("ratelimit_backoff", result, tmp4); } else { items.push(arg0); } }); if (0 === items.length) { let tmpResult = tmp(tmp2[3]); return tmpResult.resolvedSyncPromise({}); } else { tmpResult = tmp(tmp2[1]); table = tmpResult.createEnvelope(arg0[0], items); function recordEnvelopeLoss(arg0) { } return recordEnvelopeLoss.add(() => { const obj = { body: null }; obj[0] = items(6415).serializeEnvelope(dependencyMap); const obj2 = items(6415); return dependencyMap(obj).then((statusCode) => { let DEBUG_BUILD = undefined !== statusCode.statusCode; if (DEBUG_BUILD) { let tmp = statusCode.statusCode < 200; if (!tmp) { tmp = statusCode.statusCode >= 300; } DEBUG_BUILD = tmp; } if (DEBUG_BUILD) { DEBUG_BUILD = outer1_0(outer1_1[4]).DEBUG_BUILD; } if (DEBUG_BUILD) { const logger = outer1_0(outer1_1[5]).logger; const _HermesInternal = HermesInternal; logger.warn("Sentry responded with status code " + statusCode.statusCode + " to sent event."); } closure_3 = outer1_0(outer1_1[2]).updateRateLimits(closure_3, statusCode); return statusCode; }, (arg0) => { if (typeof closure_2 !== "fileFinishedImporting") { HermesBuiltin.throwTypeError(); } const network_error = "network_error"; items(table[1]).forEachEnvelopeItem(table, (arg0, arg1) => { if ("event" === arg1) { const _Array = Array; let tmp4; if (Array.isArray(arg0)) { tmp4 = arg0[1]; } const tmp = tmp4; } network_error.recordDroppedEvent(network_error, outer2_0(outer2_1[1]).envelopeItemTypeToDataCategory(arg1), tmp); }); throw arg0; }); }).then((arg0) => arg0, (arg0) => { if (arg0 instanceof items(6428).SentryError) { if (tmp(6399).DEBUG_BUILD) { const logger = tmp(6371).logger; logger.error("Skipped sending event because buffer is full."); } if (typeof recordEnvelopeLoss !== "fileFinishedImporting") { HermesBuiltin.throwTypeError(); } const queue_overflow = "queue_overflow"; let tmpResult = tmp(6415); tmpResult.forEachEnvelopeItem(dependencyMap, (arg0, arg1) => { if ("event" === arg1) { const _Array = Array; let tmp4; if (Array.isArray(arg0)) { tmp4 = arg0[1]; } const tmp = tmp4; } network_error.recordDroppedEvent(network_error, outer2_0(outer2_1[1]).envelopeItemTypeToDataCategory(arg1), tmp); }); tmpResult = tmp(6395); return tmpResult.resolvedSyncPromise({}); } else { throw arg0; } }); } let obj = bufferSize(table[1]); }, flush(arg0) { return promiseBuffer.drain(arg0); } }; return obj; };