/* Metro module 888; source: unknown; dependencies: [57, 65, 857, 832, 833, 889, 879, 836, 853, 847, 890, 891, 892, 834] */ function _fun9641(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#9641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:6, offset: 0x00d6d3bf, size: 174 bytes, params: 8, frame: 21 const env0_0 = require; const setLogAttribute = function(a0, a1, a2) { var r7; r7 = arguments.length > 3 && arguments[3] !== undefined; if (!(a2 ? a0[a1] && !(r7 ? arguments[3] : !r7) : !a2)) { a0[a1] = a2; } }; const closure = _INTERNAL_captureSerializedLog; const closure2 = _INTERNAL_flushLogsBuffer; const closure3 = _INTERNAL_getLogBuffer; const env0_2 = require(57) /* metro dependency 57 */; const env0_3 = require(65) /* metro dependency 65 */; const Object = global.Object; const defineProperty = Object.defineProperty; const Symbol = global.Symbol; Reflect.apply(defineProperty, Object, [exports, Symbol.toStringTag, {value: 'Module'}]); exports._INTERNAL_captureLog = _INTERNAL_captureLog; exports._INTERNAL_captureSerializedLog = closure; exports._INTERNAL_flushLogsBuffer = closure2; exports._INTERNAL_getLogBuffer = closure3; } function _INTERNAL_captureSerializedLog(a0, a1) { // fn#9643, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:235, offset: 0x00d6d4b5, size: 141 bytes, params: 3, frame: 21 var items2; const value2 = _getBufferMap(); const value3 = _INTERNAL_getLogBuffer(a0); if (value3 === undefined) { value2.set(a0, [a1]); } else if (value3.length >= 100) { _INTERNAL_flushLogsBuffer(a0, value3); value2.set(a0, [a1]); } else { items2 = []; value2.set(a0, items2.concat(env0_3(value3), [a1])); } } function _INTERNAL_flushLogsBuffer(a0, a1) { // fn#9644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:443, offset: 0x00d6d542, size: 176 bytes, params: 3, frame: 20 var moduleValue; let value = a1; let r8 = value ?? _INTERNAL_getLogBuffer(a0); r8 = r8 ?? []; if (r8.length !== 0) { value = a0.getOptions(); moduleValue = require(892) /* metro dependency 892 */; value = moduleValue.createLogEnvelope(r8, value._metadata, value.tunnel, a0.getDsn()); _getBufferMap().set(a0, []); a0.emit('flushLogs'); a0.sendEnvelope(value); } } function _getBufferMap() { // fn#9646, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:774, offset: 0x00d6d60e, size: 52 bytes, params: 1, frame: 13 return (require(834) /* metro dependency 834 */).getGlobalSingleton('clientToLogBufferMap', function() { var WeakMap = global.WeakMap; var value = Object.create(WeakMap.prototype, {constructor: {value: WeakMap}}); var value2 = new WeakMap(); return value2 instanceof Object ? value2 : value; }); } function _INTERNAL_captureLog(a0) { // fn#9648, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:914, offset: 0x00d6d660, size: 1380 bytes, params: 2, frame: 33 var environment; var r3; var r13; var r9; var r16; var r11; const DEBUG_BUILD = (require(832) /* metro dependency 832 */).DEBUG_BUILD; const debug = (require(833) /* metro dependency 833 */).debug; var options; var release; var enableLogs; var property; var Object; var assign; var attributes; var value15; var moduleValue4; var getCombinedScopeData; var moduleValue5; var value16; var user; var id; var email; var username; var object2; var setLogAttributeBinding; var sdkMetadata; var name; var version; var integrationByName; var message; var moduleValue6; var __sentry_template_string__; var __sentry_template_values__; var value23; var value24; var level; var severityNumber; const value = undefined; const r14 = arguments.length > 1 && value !== arguments[1] ? arguments[1] : (require(857) /* metro dependency 857 */).getCurrentScope(); const r2 = arguments.length > 2 && value !== arguments[2] ? arguments[2] : _INTERNAL_captureSerializedLog; let r4 = r14 == null ? value : r14.getClient(); r4 = r4 ?? (require(857) /* metro dependency 857 */).getClient(); if (r4) { options = r4.getOptions(); release = options.release; environment = options.environment; enableLogs = options.enableLogs; r3 = value !== enableLogs && enableLogs; if (r3) { property = env0_2((require(889) /* metro dependency 889 */)._getTraceInfoFromScope(r4, r14), 2)[1]; Object = global.Object; assign = Object.assign; attributes = a0.attributes; value15 = Reflect.apply(assign, Object, [{}, attributes]); moduleValue4 = require(879) /* metro dependency 879 */; getCombinedScopeData = moduleValue4.getCombinedScopeData; moduleValue5 = require(857) /* metro dependency 857 */; value16 = Reflect.apply(getCombinedScopeData, moduleValue4, [moduleValue5.getIsolationScope(), r14]); user = value16.user; id = user.id; email = user.email; username = user.username; attributes = value16.attributes; r13 = value !== attributes ? attributes : {}; setLogAttributeBinding = setLogAttribute; setLogAttributeBinding(value15, 'user.id', id, false); setLogAttributeBinding(value15, 'user.email', email, false); setLogAttributeBinding(value15, 'user.name', username, false); setLogAttributeBinding(value15, 'sentry.release', release); setLogAttributeBinding(value15, 'sentry.environment', environment); sdkMetadata = r4.getSdkMetadata(); r9 = (sdkMetadata == null ? value : sdkMetadata.sdk) ?? ({}); name = r9.name; version = r9.version; setLogAttributeBinding = setLogAttribute; setLogAttributeBinding(value15, 'sentry.sdk.name', name); setLogAttributeBinding(value15, 'sentry.sdk.version', version); integrationByName = r4.getIntegrationByName('Replay'); r9 = integrationByName == null ? value : integrationByName.getReplayId(true); setLogAttribute(value15, 'sentry.replay_id', r9); r9 = r9 && (integrationByName == null ? value : integrationByName.getRecordingMode()) === 'buffer'; if (r9) { setLogAttribute(value15, 'sentry._internal.replay_is_buffering', true); } message = a0.message; moduleValue6 = require(836) /* metro dependency 836 */; if (moduleValue6.isParameterizedString(message)) { __sentry_template_string__ = message.__sentry_template_string__; __sentry_template_values__ = message.__sentry_template_values__; r16 = value !== __sentry_template_values__ ? __sentry_template_values__ : []; if (r16 != null && r16.length) { value15['sentry.message.template'] = __sentry_template_string__; } r16.forEach(_fun9649); } value23 = (require(853) /* metro dependency 853 */)._getSpanForScope(r14); setLogAttribute(value15, 'sentry.trace.parent_span_id', value23 == null ? value : value23.spanContext().spanId); Object = global.Object; assign = Object.assign; object2 = {attributes: value15}; value24 = Reflect.apply(assign, Object, [{}, a0, object2]); r4.emit('beforeCaptureLog', value24); r3 = options.beforeSendLog ? (require(833) /* metro dependency 833 */).consoleSandbox(_fun9650) : value24; if (r3) { level = r3.level; message = r3.message; attributes = r3.attributes; r11 = value !== attributes ? attributes : {}; severityNumber = r3.severityNumber; object2 = {}; object2.timestamp = (require(847) /* metro dependency 847 */).timestampInSeconds(); object2.level = level; object2.body = message; object2.trace_id = property == null ? value : property.trace_id; object2.severity_number = severityNumber ?? (require(890) /* metro dependency 890 */).SEVERITY_TEXT_TO_SEVERITY_NUMBER[level]; Object = global.Object; object2.attributes = Object.assign({}, (require(891) /* metro dependency 891 */).serializeAttributes(r13), (require(891) /* metro dependency 891 */).serializeAttributes(r11, true)); r2(r4, object2); r4.emit('afterCaptureLog', r3); return value; } r4.recordDroppedEvent('before_send', 'log_item', 1); if (DEBUG_BUILD) { debug.warn('beforeSendLog returned null, log will not be captured.'); } return value; } if (DEBUG_BUILD) { debug.warn('logging option not enabled, log will not be captured.'); } } else if (DEBUG_BUILD) { debug.warn('No client available to capture log.'); } return value; } function _fun9649(a0, a1) { // fn#9649, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:2302, offset: 0x00d6dbc4, size: 45 bytes, params: 3, frame: 12 env0_1['sentry.message.parameter.' + a1] = a0; } function _fun9650() { // fn#9650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1015:2579, offset: 0x00d6dbf1, size: 20 bytes, params: 1, frame: 11 return beforeSendLog(env0_2); }