Initial commit

This commit is contained in:
janisslsm committed 2026-07-27 16:20:00 +03:00
commit af3b49f756
16065 files changed
+2938410

No files matched your search

+62
View File
@@ -0,0 +1,62 @@
/* Metro module 9906; source: modules/feedback/Constants.tsx; dependencies: [1314, 2] */
function _fun77638(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77638, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10092:6, offset: 0x01e052fd, size: 1047 bytes, params: 8, frame: 32
var object2;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
object2 = {BAD: 'bad', NEUTRAL: 'neutral', GOOD: 'good'};
const InAppFeedbackType = (require(1314) /* metro dependency 1314: preloaded_user_settings */).InAppFeedbackType;
const VIDEO_BACKGROUND = InAppFeedbackType.VIDEO_BACKGROUND;
const STREAM = InAppFeedbackType.STREAM;
const ACTIVITY = InAppFeedbackType.ACTIVITY;
const VOICE = InAppFeedbackType.VOICE;
const IN_APP_REPORTS = InAppFeedbackType.IN_APP_REPORTS;
const SEARCH_RESULTS = InAppFeedbackType.SEARCH_RESULTS;
const value = [VIDEO_BACKGROUND, STREAM, ACTIVITY, VOICE, IN_APP_REPORTS, SEARCH_RESULTS].reduce(function(a0, a1,
a2) {
var r2;
var object = {};
copyDataProperties(object, a0, r2);
object[a1] = a2;
return object;
}, {});
const BAD = object2.BAD;
const items2 = [BAD];
const NEUTRAL = object2.NEUTRAL;
items2[1] = NEUTRAL;
const GOOD = object2.GOOD;
items2[2] = GOOD;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/Constants.tsx');
exports.FeedbackRating = object2;
exports.FEEDBACK_FREEFORM_LENGTH = 1024;
exports.FeedbackType = InAppFeedbackType;
exports.FeedbackGroup = {AV: 'AV', SOCIAL: 'SOCIAL', SEARCH: 'SEARCH', SAFETY: 'SAFETY'};
exports.FeedbackTypePrecedence = value;
exports.DEFAULT_RATINGS = items2;
exports.MAX_REPRESENTABLE_DATE = 8640000000000000;
exports.FeedbackCategory = {CONNECTION: 'CONNECTION', AUDIO: 'AUDIO', VIDEO: 'VIDEO', STREAMING: 'STREAMING',
STREAM_WATCHING: 'STREAM_WATCHING', PEOPLE: 'PEOPLE'};
exports.ConnectionFeedbackOption = {FREEFORM: 'FREEFORM', COULD_NOT_CONNECT: 'COULD_NOT_CONNECT',
HIGH_TTC: 'HIGH_TTC', HIGH_LATENCY: 'HIGH_LATENCY', ROBOT_VOICE: 'ROBOT_VOICE', DESYNC: 'DESYNC',
CUTTING: 'CUTTING'};
exports.AudioFeedbackOption = {FREEFORM: 'FREEFORM', NO_AUDIO: 'NO_AUDIO', LOW_QUALITY_AUDIO: 'LOW_QUALITY_AUDIO',
ROBOT_VOICE: 'ROBOT', ECHO: 'ECHO', TOO_QUIET: 'TOO_QUIET', TOO_LOUD: 'TOO_LOUD',
TOO_QUIET_OR_LOUD: 'TOO_QUIET_OR_LOUD', CUTTING: 'CUTTING', DELAYED: 'DELAYED',
BACKGROUND_NOISE: 'BACKGROUND_NOISE', UNABLE_TO_FIND_DEVICE: 'UNABLE_TO_FIND_DEVICE',
UNABLE_TO_FIND_INPUT_DEVICE: 'UNABLE_TO_FIND_INPUT_DEVICE',
UNABLE_TO_FIND_OUTPUT_DEVICE: 'UNABLE_TO_FIND_OUTPUT_DEVICE',
TROUBLE_WITH_SPEAKERPHONE: 'TROUBLE_WITH_SPEAKERPHONE', COMPLAINTS: 'COMPLAINTS',
NO_GAME_AUDIO: 'NO_GAME_AUDIO'};
exports.VideoFeedbackOption = {FREEFORM: 'FREEFORM', NO_VIDEO: 'NO_VIDEO',
FREEZING_OR_HITCHING: 'FREEZING_OR_HITCHING', BLURRY_OR_PIXELATED: 'BLURRY_OR_PIXELATED',
UNABLE_TO_ENABLE_DEVICE: 'UNABLE_TO_ENABLE_DEVICE', DESYNC: 'DESYNC'};
exports.VideoBackgroundFeedbackOption = {OUTLINE_FUZZY_OR_HALO: 'OUTLINE_FUZZY_OR_HALO',
INACCURATE_BACKGROUND_DETECTION: 'INACCURATE_BACKGROUND_DETECTION',
FLICKERING_ARTIFACTS: 'FLICKERING_ARTIFACTS', LAG_ON_MOVEMENT: 'LAG_ON_MOVEMENT'};
exports.StreamFeedbackOption = {FREEFORM: 'FREEFORM', COULD_NOT_LOAD: 'COULD_NOT_LOAD',
BLACK_SCREEN: 'BLACK_SCREEN', FREEZING_OR_HITCHING: 'FREEZING_OR_HITCHING', LAG: 'LAG',
BLURRY_OR_PIXELATED: 'BLURRY_OR_PIXELATED', NO_AUDIO: 'NO_AUDIO', BAD_AUDIO: 'BAD_AUDIO',
STOPPED_UNEXPECTEDLY: 'STOPPED_UNEXPECTEDLY', DESYNC: 'DESYNC', NO_GAME_AUDIO: 'NO_GAME_AUDIO'};
exports.PeopleFeedbackOption = {FREEFORM: 'FREEFORM', TOXIC_OR_INAPPROPRIATE: 'TOXIC_OR_INAPPROPRIATE'};
exports.FeedbackOptionVariant = {UNSPECIFIED: 'UNSPECIFIED', SELF: 'SELF', SOMEONE: 'SOMEONE', OTHERS: 'OTHERS'};
}
@@ -0,0 +1,431 @@
/* Metro module 15711; source: modules/feedback/FeedbackManager.tsx; dependencies: [6, 7, 15, 17, 18, 6825, 4294, 15712, 9906, 6824, 3829, 587, 22, 15713, 4860, 2] */
function _fun120555(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120555, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:6, offset: 0x0252faa1, size: 933 bytes, params: 8, frame: 29
var object6;
const env0_0 = require;
const _arrayLikeToArray_120561 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const triggerRateEligibilityCheck = function(a0) {
var Math = global.Math;
return Math.random() < a0.chance;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const env0_4 = importDefault(15) /* metro dependency 15 */;
const env0_5 = importDefault(17) /* metro dependency 17 */;
const env0_6 = importDefault(18) /* metro dependency 18 */;
const hotspotStore = importDefault(6825) /* metro dependency 6825: HotspotStore */;
const rtcConnectionStore = importDefault(4294) /* metro dependency 4294: RTCConnectionStore */;
const feedbackOverrideStore = importDefault(15712) /* metro dependency 15712: FeedbackOverrideStore */;
let value = require(9906) /* metro dependency 9906: Constants */;
const FeedbackGroup = value.FeedbackGroup;
const FeedbackType = value.FeedbackType;
const env0_10 = value.FeedbackTypePrecedence;
const env0_11 = value.MAX_REPRESENTABLE_DATE;
object6 = {'chance': 0.2, 'cooldown': 86400000};
const object7 = {};
const VOICE = FeedbackType.VOICE;
const object9 = {};
copyDataProperties(object9, object6, undefined);
let AV = FeedbackGroup.AV;
object9['group'] = AV;
const HotspotLocations = (require(6824) /* metro dependency 6824: hotspot */).HotspotLocations;
const VOICE_CALL_FEEDBACK = HotspotLocations.VOICE_CALL_FEEDBACK;
object9['hotspot'] = VOICE_CALL_FEEDBACK;
object9['storageKey'] = 'lastVoiceFeedback';
const VOICE2 = FeedbackType.VOICE;
object9['feedbackType'] = VOICE2;
object9['eligibilityChecks'] = [function() {
if (RTCConnectionStore.getWasEverRtcConnected()) {
return RTCConnectionStore.getWasEverMultiParticipant();
}
return true;
}];
object7[VOICE] = object9;
const STREAM = FeedbackType.STREAM;
const object10 = {};
copyDataProperties(object10, object6, undefined);
AV = FeedbackGroup.AV;
object10['group'] = AV;
const REPORT_PROBLEM_POST_STREAM = HotspotLocations.REPORT_PROBLEM_POST_STREAM;
object10['hotspot'] = REPORT_PROBLEM_POST_STREAM;
object10['storageKey'] = 'lastStreamFeedback';
const STREAM2 = FeedbackType.STREAM;
object10['feedbackType'] = STREAM2;
object7[STREAM] = object10;
const VIDEO_BACKGROUND = FeedbackType.VIDEO_BACKGROUND;
const object11 = {};
copyDataProperties(object11, object6, undefined);
AV = FeedbackGroup.AV;
object11['group'] = AV;
const VIDEO_BACKGROUND_FEEDBACK = HotspotLocations.VIDEO_BACKGROUND_FEEDBACK;
object11['hotspot'] = VIDEO_BACKGROUND_FEEDBACK;
object11['storageKey'] = 'lastVideoBackgroundFeedback';
const VIDEO_BACKGROUND2 = FeedbackType.VIDEO_BACKGROUND;
object11['feedbackType'] = VIDEO_BACKGROUND2;
object7[VIDEO_BACKGROUND] = object11;
const ACTIVITY = FeedbackType.ACTIVITY;
AV = FeedbackGroup.AV;
const POST_ACTIVITY_FEEDBACK = HotspotLocations.POST_ACTIVITY_FEEDBACK;
const ACTIVITY2 = FeedbackType.ACTIVITY;
object7[ACTIVITY] = {'cooldown': 0, 'chance': 0.5, 'group': null, 'hotspot': null,
'storageKey': 'lastActivityFeedback', group: AV, hotspot: POST_ACTIVITY_FEEDBACK, feedbackType: ACTIVITY2};
const IN_APP_REPORTS = FeedbackType.IN_APP_REPORTS;
const SAFETY = FeedbackGroup.SAFETY;
const IN_APP_REPORTS_FEEDBACK = HotspotLocations.IN_APP_REPORTS_FEEDBACK;
const IN_APP_REPORTS2 = FeedbackType.IN_APP_REPORTS;
object7[IN_APP_REPORTS] = {'cooldown': 172800000, 'chance': 0.5, 'group': null, 'hotspot': null,
'storageKey': 'inAppReportsFeedback', group: SAFETY, hotspot: IN_APP_REPORTS_FEEDBACK,
feedbackType: IN_APP_REPORTS2};
const SEARCH_RESULTS = FeedbackType.SEARCH_RESULTS;
const object12 = {};
copyDataProperties(object12, object6, undefined);
const SEARCH = FeedbackGroup.SEARCH;
object12['group'] = SEARCH;
const SEARCH_RESULTS_FEEDBACK = HotspotLocations.SEARCH_RESULTS_FEEDBACK;
object12['hotspot'] = SEARCH_RESULTS_FEEDBACK;
object12['storageKey'] = 'searchResultsFeedback';
const SEARCH_RESULTS2 = FeedbackType.SEARCH_RESULTS;
object12['feedbackType'] = SEARCH_RESULTS2;
object12['eligibilityChecks'] = [searchResultsEligibilityCheck];
object7[SEARCH_RESULTS] = object12;
value = importDefault(4860) /* metro dependency 4860: AutomaticLifecycleManager */;
value = _fun120571(value);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/FeedbackManager.tsx');
exports.default = value;
exports.FeedbackConfig = object7;
}
function _isNativeReflectConstruct_120556() { // fn#120556, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:280, offset: 0x0252fe46, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_120556_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _createForOfIteratorHelperLoose_120559(a0, a1) { // fn#120559, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:473, offset: 0x0252fea8, size: 372 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun120560;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_120561(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_120561(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_120561(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun120560;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function optOutEligibilityCheck(a0) { // fn#120562, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:2666, offset: 0x0253001c, size: 218 bytes, params: 2, frame: 17
const env0_0 = a0;
const value2 = undefined;
const InAppFeedbackStates = (require(3829) /* metro dependency 3829: UserSettings */).InAppFeedbackStates;
const property = InAppFeedbackStates.getSetting()[a0.feedbackType];
const optOutExpiryTime = property == null ? value2 : property.optOutExpiryTime;
const r2 = optOutExpiryTime != null && !global.Number.isNaN(optOutExpiryTime) && global.Date.now() < optOutExpiryTime;
const hasHotspot2 = HotspotStore.hasHotspot(a0.hotspot);
const value7 = !hasHotspot2;
if (hasHotspot2 ? value7 : !r2) {
InAppFeedbackStates.updateSetting(_fun120563);
}
return !r2 && !value7;
}
function recencyEligibilityCheck({cooldown}, a1) { // fn#120565, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3082, offset: 0x0253015d, size: 355 bytes, params: 3, frame: 19
var r2;
var r4;
var Storage;
const env0_0 = a1;
const InAppFeedbackStates = (require(3829) /* metro dependency 3829: UserSettings */).InAppFeedbackStates;
const lastImpressionTime = InAppFeedbackStates.getSetting()[a1.feedbackType]?.lastImpressionTime;
let r7 = lastImpressionTime != null && !global.Number.isNaN(lastImpressionTime);
r7 = !r7 ? a1.storageKey == null : r7;
if (r7) {
r4 = undefined;
} else {
Storage = (require(587) /* metro dependency 587: Storage */).Storage;
r2 = Storage.get(a1.storageKey) ?? undefined;
if (r2 == null || global.Number.isNaN(r2)) {
r4 = r2;
} else {
InAppFeedbackStates.updateSetting(_fun120566);
r4 = r2;
}
}
let value = require(22) /* metro dependency 22 */;
value = value.max([lastImpressionTime, r4]);
value = (value ?? 0) + cooldown;
const Date = global.Date;
return value < Date.now();
}
function groupRecencyEligibilityCheck(a0) { // fn#120567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3555, offset: 0x02530303, size: 115 bytes, params: 2, frame: 16
var value6;
var value7;
const env0_0 = a0;
const _createForOfIteratorHelperLoose_120559Binding = _createForOfIteratorHelperLoose_120559;
const Object = global.Object;
const value4 = _createForOfIteratorHelperLoose_120559Binding(Object.values(env0_12).filter(_fun120568));
const value5 = value4();
let done = value5.done;
if (done) {
return true;
}
let r1 = value5;
loopExit1: while (true) {
value6 = r1.value;
if (recencyEligibilityCheck(a0, value6)) {
value7 = value4();
done = value7.done;
if (done) {
return true;
}
r1 = value7;
continue;
}
break loopExit1;
}
return false;
}
function searchResultsEligibilityCheck() { // fn#120570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:2529, offset: 0x025303bc, size: 56 bytes, params: 1, frame: 12
const value = require(15713) /* metro dependency 15713: SearchResultsFeedbackExperiment */;
const getIsSearchResultsFeedbackExperimentEnabled = value.getIsSearchResultsFeedbackExperimentEnabled;
return !!Reflect.apply(getIsSearchResultsFeedbackExperimentEnabled, value, [{location: 'FeedbackManager'}]);
}
function _fun120571(a0) { // fn#120571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3780, offset: 0x025303f4, size: 72 bytes, params: 2, frame: 15
const closure = FeedbackManager_120572;
env0_6(closure, a0);
return env0_3(closure, [{key: 'possiblyShowFeedbackModal', value: value_120576}]);
}
function _fun120563(a0) { // fn#120563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:2932, offset: 0x025300f6, size: 70 bytes, params: 2, frame: 14
const object3 = {};
copyDataProperties(object3, a0, a0);
const binding = env0_0;
const feedbackType = binding.feedbackType;
const object4 = {};
copyDataProperties(object4, a0[binding.feedbackType], a0);
object4['optOutExpiryTime'] = MAX_REPRESENTABLE_DATE;
object3[feedbackType] = object4;
return object3;
}
function _fun120566(a0) { // fn#120566, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3414, offset: 0x025302c0, size: 67 bytes, params: 2, frame: 15
const object3 = {};
copyDataProperties(object3, a0, a0);
const feedbackType = require.feedbackType;
const object4 = {};
copyDataProperties(object4, a0[require.feedbackType], a0);
object4['lastImpressionTime'] = env0_1;
object3[feedbackType] = object4;
return object3;
}
function _fun120568({group}) { // fn#120568, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3665, offset: 0x02530376, size: 28 bytes, params: 2, frame: 2
return group === env0_0.group;
}
function FeedbackManager_120572(a0) { // fn#120572, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:3792, offset: 0x0253043c, size: 188 bytes, params: 2, frame: 21
var r0;
var Reflect;
let value = copyRestArgs(0, undefined);
let binding = env1_2;
binding(this, FeedbackManager_120572);
const items2 = [];
arraySpread(items2, value, 0, items2);
value = env1_5(FeedbackManager_120572);
binding = env1_4;
if (_isNativeReflectConstruct_120556()) {
Reflect = global.Reflect;
value = Reflect.construct(value, items2, env1_5(this).constructor);
r0 = value;
} else {
value = value.apply(this, items2);
r0 = value;
}
value = binding(this, r0);
value.feedbackTypeToShow = null;
value.showFeedbackModalDebounced = (require(22) /* metro dependency 22 */).debounce(_fun120573, 200);
return value;
}
function value_120576(a0, a1, a2) { // fn#120576, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:4435, offset: 0x025305c5, size: 100 bytes, params: 4, frame: 15
var environment;
var value;
if (feedbackTypeIsEligibleToBeShown(a0)) {
if (this.feedbackTypeToShow == null) {
this.feedbackTypeToShow = a0;
this.showFeedbackModalDebounced(a1, a2);
} else {
value = environment.__proto__;
if (FeedbackTypePrecedence[this.feedbackTypeToShow] < FeedbackTypePrecedence[a0]) {
if (a2 != null) {
a2();
}
} else {
this.feedbackTypeToShow = a0;
this.showFeedbackModalDebounced(a1, a2);
}
}
} else if (a2 != null) {
a2();
}
}
function _fun120573(a0, a1) { // fn#120573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:4098, offset: 0x025304f8, size: 77 bytes, params: 3, frame: 13
var binding;
if (env0_0.feedbackTypeToShow != null) {
binding = env0_0;
((a0) => {
var env0_0 = a0;
var InAppFeedbackStates = (require(3829) /* metro dependency 3829: UserSettings */).InAppFeedbackStates;
InAppFeedbackStates.updateSetting(_fun120575);
})(binding.feedbackTypeToShow);
binding.feedbackTypeToShow = null;
a0();
} else if (a1 != null) {
a1();
}
}
function feedbackTypeIsEligibleToBeShown(a0) { // fn#120577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:4452, owner: value_120576.feedbackTypeIsEligibleToBeShown, offset: 0x02530629, size: 128 bytes, params: 2, frame: 14
var environment;
const value = environment.__proto__.__proto__;
let r3 = FeedbackOverrideStore.getFeedbackConfig(a0) ?? env2_12[a0];
r3 = r3.eligibilityChecks ?? [];
return [triggerRateEligibilityCheck, optOutEligibilityCheck,
groupRecencyEligibilityCheck].every(_fun120578) && r3.every(_fun120579);
}
function updateLastFeedbackDate(a0) { // fn#120574, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:4135, offset: 0x02530545, size: 60 bytes, params: 2, frame: 12
const env0_0 = a0;
const InAppFeedbackStates = (require(3829) /* metro dependency 3829: UserSettings */).InAppFeedbackStates;
InAppFeedbackStates.updateSetting(_fun120575);
}
function _fun120575(a0) { // fn#120575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15919:4215, offset: 0x02530581, size: 68 bytes, params: 2, frame: 14
const object3 = {};
copyDataProperties(object3, a0, undefined);
const binding = env0_0;
const object4 = {};
copyDataProperties(object4, a0[binding], undefined);
const Date = global.Date;
object4['lastImpressionTime'] = Date.now();
object3[binding] = object4;
return object3;
}
@@ -0,0 +1,72 @@
/* Metro module 15712; source: modules/feedback/FeedbackOverrideStore.tsx; dependencies: [6, 7, 15, 17, 18, 15711, 566, 694, 2] */
function _fun120580(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15920:6, offset: 0x025306a9, size: 307 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const env0_4 = importDefault(15) /* metro dependency 15 */;
const env0_5 = importDefault(17) /* metro dependency 17 */;
const env0_6 = importDefault(18) /* metro dependency 18 */;
const env0_7 = {};
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
let value = _fun120584(Store);
value.displayName = 'FeedbackOverrideStore';
value.persistKey = 'feedbackOverrides';
value = new value(importDefault(694) /* metro dependency 694: Dispatcher */,
{FEEDBACK_OVERRIDE_SET: FEEDBACK_OVERRIDE_SET, FEEDBACK_OVERRIDE_CLEAR: FEEDBACK_OVERRIDE_CLEAR});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/FeedbackOverrideStore.tsx');
exports.default = value;
}
function _isNativeReflectConstruct_120581() { // fn#120581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15920:148, offset: 0x025307dc, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_120581_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun120584(a0) { // fn#120584, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15920:356, offset: 0x0253083e, size: 99 bytes, params: 2, frame: 16
const closure = HotspotStore_120585;
env0_6(closure, a0);
return env0_3(closure, [{key: 'initialize', value: function() {
}}, {key: 'getFeedbackConfig', value: value_120587}]);
}
function FEEDBACK_OVERRIDE_SET({feedbackType, cooldown, chance}) { // fn#120588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15920:849, offset: 0x025308a1, size: 93 bytes, params: 2, frame: 17
const binding = env0_7;
const object2 = {};
const FeedbackConfig = (require(15711) /* metro dependency 15711: FeedbackManager */).FeedbackConfig;
copyDataProperties(object2, FeedbackConfig[feedbackType], require);
object2['cooldown'] = cooldown;
object2['chance'] = chance;
binding[feedbackType] = object2;
}
function FEEDBACK_OVERRIDE_CLEAR({feedbackType}) { // fn#120589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15920:1003, offset: 0x025308fe, size: 24 bytes, params: 2, frame: 2
delete env0_7[feedbackType];
}
+505
View File
@@ -0,0 +1,505 @@
/* Metro module 9909; source: modules/feedback/FeedbackUtils.tsx; dependencies: [9906, 661, 22, 683, 3829, 1244, 2454, 2] */
function _fun77652(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77652, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:6, offset: 0x01e05f13, size: 330 bytes, params: 8, frame: 18
const env0_0 = require;
const filterOptions = function(a0) {
return a0.filter(_fun77654).map(_fun77655);
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const constantsModule = require(9906) /* metro dependency 9906: Constants */;
const env0_3 = constantsModule.ConnectionFeedbackOption;
const env0_4 = constantsModule.AudioFeedbackOption;
const env0_5 = constantsModule.VideoFeedbackOption;
const env0_6 = constantsModule.VideoBackgroundFeedbackOption;
const env0_7 = constantsModule.StreamFeedbackOption;
const env0_8 = constantsModule.FeedbackOptionVariant;
const env0_9 = constantsModule.FeedbackType;
const env0_10 = constantsModule.MAX_REPRESENTABLE_DATE;
const env0_11 = constantsModule.PeopleFeedbackOption;
const env0_12 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/FeedbackUtils.tsx');
exports.shuffleProblems = shuffleProblems;
exports.processOptOut = processOptOut;
exports.getConnectionFeedbackOptions = getConnectionFeedbackOptions;
exports.getAudioFeedbackOptions = getAudioFeedbackOptions;
exports.getVideoFeedbackOptions = getVideoFeedbackOptions;
exports.getVideoBackgroundFeedbackOptions = getVideoBackgroundFeedbackOptions;
exports.getStreamFeedbackOptions = getStreamFeedbackOptions;
exports.getPeopleFeedbackOptions = function() {
var filterOptionsBinding = filterOptions;
var object = {};
object.value = PeopleFeedbackOption.TOXIC_OR_INAPPROPRIATE;
object.variant = FeedbackOptionVariant.OTHERS;
object.label = require(dependencyMap[5]).intl.string(importDefault(dependencyMap[6]).PLBRzF);
return filterOptionsBinding([object]);
};
}
function filterOptions(a0) { // fn#77653, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:362, offset: 0x01e0605d, size: 41 bytes, params: 2, frame: 12
return a0.filter(function(a0) {
return !a0.disabled;
}).map(function(a0) {
a0.disabled;
var value = Object.create(null);
value.disabled = 0;
return copyDataProperties({}, a0, value, a0);
});
}
function shuffleProblems(a0, a1) { // fn#77656, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:542, offset: 0x01e060a7, size: 107 bytes, params: 3, frame: 14
var property;
const env0_0 = a1;
let value = importDefault(22) /* metro dependency 22 */;
value = value.shuffle(a0);
const index = value.findIndex(function({value}) {
return value === require;
});
if (index > -1) {
property = value[index];
value.splice(index, 1);
value.push(property);
}
return value;
}
function processOptOut(a0) { // fn#77658, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:677, offset: 0x01e06112, size: 134 bytes, params: 2, frame: 19
const feedbackType = a0.feedbackType;
a0.location;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_SETTINGS_IN_APP_FEEDBACK_OPTED_OUT = AnalyticEvents.USER_SETTINGS_IN_APP_FEEDBACK_OPTED_OUT;
Reflect.apply(track, defaultImport, [USER_SETTINGS_IN_APP_FEEDBACK_OPTED_OUT,
{feedback_type: FeedbackType[feedbackType], opted_out_until: MAX_REPRESENTABLE_DATE}]);
const InAppFeedbackStates = (require(3829) /* metro dependency 3829: UserSettings */).InAppFeedbackStates;
InAppFeedbackStates.updateSetting(function(a0) {
var r4;
var object = {};
copyDataProperties(object, a0, r4);
var feedbackTypeBinding = feedbackType;
var object2 = {};
copyDataProperties(object2, a0[feedbackTypeBinding], r4);
object2['optOutExpiryTime'] = MAX_REPRESENTABLE_DATE;
object[feedbackTypeBinding] = object2;
return object;
});
}
function getConnectionFeedbackOptions() { // fn#77660, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:947, offset: 0x01e061d2, size: 472 bytes, params: 1, frame: 22
const filterOptionsBinding = filterOptions;
let object2 = {};
let SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
const COULD_NOT_CONNECT = ConnectionFeedbackOption.COULD_NOT_CONNECT;
object2.value = COULD_NOT_CONNECT;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.label = Reflect.apply(string, intl,
[(importDefault(2454) /* metro dependency 2454: FeedbackMessages */).gMHKDJ]);
const items2 = [object2];
object2 = {};
const HIGH_TTC = ConnectionFeedbackOption.HIGH_TTC;
object2.value = HIGH_TTC;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).y06Ayn);
items2[1] = object2;
object2 = {};
const HIGH_LATENCY = ConnectionFeedbackOption.HIGH_LATENCY;
object2.value = HIGH_LATENCY;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).y5k8Jq);
items2[2] = object2;
object2 = {};
const ROBOT_VOICE = ConnectionFeedbackOption.ROBOT_VOICE;
object2.value = ROBOT_VOICE;
let SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).f2914v);
items2[3] = object2;
object2 = {};
const DESYNC = ConnectionFeedbackOption.DESYNC;
object2.value = DESYNC;
const UNSPECIFIED = FeedbackOptionVariant.UNSPECIFIED;
object2.variant = UNSPECIFIED;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['zk+QL1']);
items2[4] = object2;
object2 = {};
const CUTTING = ConnectionFeedbackOption.CUTTING;
object2.value = CUTTING;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
string = intl.string;
const K5vYQA = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).K5vYQA;
object2.label = Reflect.apply(string, intl, [K5vYQA]);
items2[5] = object2;
return filterOptionsBinding(items2);
}
function getAudioFeedbackOptions({isMobile}) { // fn#77661, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:1523, offset: 0x01e063aa, size: 985 bytes, params: 2, frame: 23
const filterOptionsBinding = filterOptions;
let object2 = {};
let NO_AUDIO = AudioFeedbackOption.NO_AUDIO;
object2.value = NO_AUDIO;
let SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.label = Reflect.apply(string, intl,
[(importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['GWypH+']]);
const items2 = [object2];
object2 = {};
NO_AUDIO = AudioFeedbackOption.NO_AUDIO;
object2.value = NO_AUDIO;
let OTHERS = FeedbackOptionVariant.OTHERS;
object2.variant = OTHERS;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).ftSvQ0);
items2[1] = object2;
object2 = {};
const LOW_QUALITY_AUDIO = AudioFeedbackOption.LOW_QUALITY_AUDIO;
object2.value = LOW_QUALITY_AUDIO;
OTHERS = FeedbackOptionVariant.OTHERS;
object2.variant = OTHERS;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['1DnNRO']);
items2[2] = object2;
object2 = {};
const ROBOT_VOICE = AudioFeedbackOption.ROBOT_VOICE;
object2.value = ROBOT_VOICE;
let SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).yGe0BL);
items2[3] = object2;
object2 = {};
const ECHO = AudioFeedbackOption.ECHO;
object2.value = ECHO;
OTHERS = FeedbackOptionVariant.OTHERS;
object2.variant = OTHERS;
string = intl.string;
const Q5Dsaz = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).Q5Dsaz;
object2.label = Reflect.apply(string, intl, [Q5Dsaz]);
items2[4] = object2;
object2 = {};
const TOO_QUIET_OR_LOUD = AudioFeedbackOption.TOO_QUIET_OR_LOUD;
object2.value = TOO_QUIET_OR_LOUD;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['1o77I3']);
items2[5] = object2;
object2 = {};
const CUTTING = AudioFeedbackOption.CUTTING;
object2.value = CUTTING;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
string = intl.string;
const RK9DUi = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).RK9DUi;
object2.label = Reflect.apply(string, intl, [RK9DUi]);
items2[6] = object2;
object2 = {};
const DELAYED = AudioFeedbackOption.DELAYED;
object2.value = DELAYED;
const UNSPECIFIED = FeedbackOptionVariant.UNSPECIFIED;
object2.variant = UNSPECIFIED;
string = intl.string;
const RGRgmM = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).RGRgmM;
object2.label = Reflect.apply(string, intl, [RGRgmM]);
items2[7] = object2;
object2 = {};
const BACKGROUND_NOISE = AudioFeedbackOption.BACKGROUND_NOISE;
object2.value = BACKGROUND_NOISE;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['anHk1/']);
items2[8] = object2;
object2 = {};
const UNABLE_TO_FIND_DEVICE = AudioFeedbackOption.UNABLE_TO_FIND_DEVICE;
object2.value = UNABLE_TO_FIND_DEVICE;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['05VSjm']);
items2[9] = object2;
object2 = {};
const COMPLAINTS = AudioFeedbackOption.COMPLAINTS;
object2.value = COMPLAINTS;
OTHERS = FeedbackOptionVariant.OTHERS;
object2.variant = OTHERS;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).kbbtwi);
items2[10] = object2;
object2 = {};
const TROUBLE_WITH_SPEAKERPHONE = AudioFeedbackOption.TROUBLE_WITH_SPEAKERPHONE;
object2.value = TROUBLE_WITH_SPEAKERPHONE;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['4qlGrO']);
object2.disabled = !isMobile;
items2[11] = object2;
object2 = {};
const NO_GAME_AUDIO = AudioFeedbackOption.NO_GAME_AUDIO;
object2.value = NO_GAME_AUDIO;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['2IG95D']);
items2[12] = object2;
return filterOptionsBinding(items2);
}
function getVideoFeedbackOptions() { // fn#77662, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:2729, offset: 0x01e06783, size: 472 bytes, params: 1, frame: 22
const filterOptionsBinding = filterOptions;
let object2 = {};
let NO_VIDEO = VideoFeedbackOption.NO_VIDEO;
object2.value = NO_VIDEO;
let SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.label = Reflect.apply(string, intl,
[(importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['Bh+02d']]);
const items2 = [object2];
object2 = {};
NO_VIDEO = VideoFeedbackOption.NO_VIDEO;
object2.value = NO_VIDEO;
let SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['R+wqwU']);
items2[1] = object2;
object2 = {};
const FREEZING_OR_HITCHING = VideoFeedbackOption.FREEZING_OR_HITCHING;
object2.value = FREEZING_OR_HITCHING;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['8I/GUL']);
items2[2] = object2;
object2 = {};
const BLURRY_OR_PIXELATED = VideoFeedbackOption.BLURRY_OR_PIXELATED;
object2.value = BLURRY_OR_PIXELATED;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).k7Idoz);
items2[3] = object2;
object2 = {};
const UNABLE_TO_ENABLE_DEVICE = VideoFeedbackOption.UNABLE_TO_ENABLE_DEVICE;
object2.value = UNABLE_TO_ENABLE_DEVICE;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
string = intl.string;
const QbC6La = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).QbC6La;
object2.label = Reflect.apply(string, intl, [QbC6La]);
items2[4] = object2;
object2 = {};
const DESYNC = VideoFeedbackOption.DESYNC;
object2.value = DESYNC;
const UNSPECIFIED = FeedbackOptionVariant.UNSPECIFIED;
object2.variant = UNSPECIFIED;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).vRDE5O);
items2[5] = object2;
return filterOptionsBinding(items2);
}
function getVideoBackgroundFeedbackOptions() { // fn#77663, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:3342, offset: 0x01e0695b, size: 330 bytes, params: 1, frame: 22
const filterOptionsBinding = filterOptions;
let object2 = {};
const OUTLINE_FUZZY_OR_HALO = VideoBackgroundFeedbackOption.OUTLINE_FUZZY_OR_HALO;
object2.value = OUTLINE_FUZZY_OR_HALO;
let SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).calUNv);
const items2 = [object2];
object2 = {};
const INACCURATE_BACKGROUND_DETECTION = VideoBackgroundFeedbackOption.INACCURATE_BACKGROUND_DETECTION;
object2.value = INACCURATE_BACKGROUND_DETECTION;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).zYumoj);
items2[1] = object2;
object2 = {};
const FLICKERING_ARTIFACTS = VideoBackgroundFeedbackOption.FLICKERING_ARTIFACTS;
object2.value = FLICKERING_ARTIFACTS;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).ie5nCG);
items2[2] = object2;
object2 = {};
const LAG_ON_MOVEMENT = VideoBackgroundFeedbackOption.LAG_ON_MOVEMENT;
object2.value = LAG_ON_MOVEMENT;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['Gg/Y1X']);
items2[3] = object2;
return filterOptionsBinding(items2);
}
function getStreamFeedbackOptions({isStreamer}) { // fn#77664, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10095:3801, offset: 0x01e06aa5, size: 1510 bytes, params: 2, frame: 23
const filterOptionsBinding = filterOptions;
let object2 = {};
let COULD_NOT_LOAD = StreamFeedbackOption.COULD_NOT_LOAD;
object2.value = COULD_NOT_LOAD;
let SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.label = Reflect.apply(string, intl,
[(importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['w+kiDF']]);
const value = !isStreamer;
object2.disabled = value;
const items2 = [object2];
object2 = {};
let BLACK_SCREEN = StreamFeedbackOption.BLACK_SCREEN;
object2.value = BLACK_SCREEN;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
string = intl.string;
const RRZZZb = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).RRZZZb;
object2.label = Reflect.apply(string, intl, [RRZZZb]);
object2.disabled = value;
items2[1] = object2;
object2 = {};
let FREEZING_OR_HITCHING = StreamFeedbackOption.FREEZING_OR_HITCHING;
object2.value = FREEZING_OR_HITCHING;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['3PKSkd']);
object2.disabled = value;
items2[2] = object2;
object2 = {};
let LAG = StreamFeedbackOption.LAG;
object2.value = LAG;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).iMxexK);
object2.disabled = value;
items2[3] = object2;
object2 = {};
let BLURRY_OR_PIXELATED = StreamFeedbackOption.BLURRY_OR_PIXELATED;
object2.value = BLURRY_OR_PIXELATED;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['8ceyQy']);
object2.disabled = value;
items2[4] = object2;
object2 = {};
let NO_AUDIO = StreamFeedbackOption.NO_AUDIO;
object2.value = NO_AUDIO;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
string = intl.string;
const HaZSC3 = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).HaZSC3;
object2.label = Reflect.apply(string, intl, [HaZSC3]);
object2.disabled = value;
items2[5] = object2;
object2 = {};
let BAD_AUDIO = StreamFeedbackOption.BAD_AUDIO;
object2.value = BAD_AUDIO;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['zIC+8Y']);
object2.disabled = value;
items2[6] = object2;
object2 = {};
let STOPPED_UNEXPECTEDLY = StreamFeedbackOption.STOPPED_UNEXPECTEDLY;
object2.value = STOPPED_UNEXPECTEDLY;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */)['/nlKuG']);
object2.disabled = value;
items2[7] = object2;
object2 = {};
let DESYNC = StreamFeedbackOption.DESYNC;
object2.value = DESYNC;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
string = intl.string;
const JS6akP = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).JS6akP;
object2.label = Reflect.apply(string, intl, [JS6akP]);
object2.disabled = value;
items2[8] = object2;
object2 = {};
const NO_GAME_AUDIO = StreamFeedbackOption.NO_GAME_AUDIO;
object2.value = NO_GAME_AUDIO;
SELF = FeedbackOptionVariant.SELF;
object2.variant = SELF;
string = intl.string;
const TaIrh5 = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).TaIrh5;
object2.label = Reflect.apply(string, intl, [TaIrh5]);
object2.disabled = value;
items2[9] = object2;
object2 = {};
COULD_NOT_LOAD = StreamFeedbackOption.COULD_NOT_LOAD;
object2.value = COULD_NOT_LOAD;
let SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).jU9Zs8);
object2.disabled = isStreamer;
items2[10] = object2;
object2 = {};
BLACK_SCREEN = StreamFeedbackOption.BLACK_SCREEN;
object2.value = BLACK_SCREEN;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).aml28x);
object2.disabled = isStreamer;
items2[11] = object2;
object2 = {};
FREEZING_OR_HITCHING = StreamFeedbackOption.FREEZING_OR_HITCHING;
object2.value = FREEZING_OR_HITCHING;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
string = intl.string;
const V3EeCH = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).V3EeCH;
object2.label = Reflect.apply(string, intl, [V3EeCH]);
object2.disabled = isStreamer;
items2[12] = object2;
object2 = {};
LAG = StreamFeedbackOption.LAG;
object2.value = LAG;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).hi1Y39);
object2.disabled = isStreamer;
items2[13] = object2;
object2 = {};
BLURRY_OR_PIXELATED = StreamFeedbackOption.BLURRY_OR_PIXELATED;
object2.value = BLURRY_OR_PIXELATED;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).qdBn3L);
object2.disabled = isStreamer;
items2[14] = object2;
object2 = {};
NO_AUDIO = StreamFeedbackOption.NO_AUDIO;
object2.value = NO_AUDIO;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
string = intl.string;
const DOOlop = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).DOOlop;
object2.label = Reflect.apply(string, intl, [DOOlop]);
object2.disabled = isStreamer;
items2[15] = object2;
object2 = {};
BAD_AUDIO = StreamFeedbackOption.BAD_AUDIO;
object2.value = BAD_AUDIO;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).k7bdGE);
object2.disabled = isStreamer;
items2[16] = object2;
object2 = {};
STOPPED_UNEXPECTEDLY = StreamFeedbackOption.STOPPED_UNEXPECTEDLY;
object2.value = STOPPED_UNEXPECTEDLY;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
object2.label = intl.string((importDefault(2454) /* metro dependency 2454: FeedbackMessages */).jPD998);
object2.disabled = isStreamer;
items2[17] = object2;
object2 = {};
DESYNC = StreamFeedbackOption.DESYNC;
object2.value = DESYNC;
SOMEONE = FeedbackOptionVariant.SOMEONE;
object2.variant = SOMEONE;
string = intl.string;
const JfAvQp = (importDefault(2454) /* metro dependency 2454: FeedbackMessages */).JfAvQp;
object2.label = Reflect.apply(string, intl, [JfAvQp]);
object2.disabled = isStreamer;
items2[18] = object2;
return filterOptionsBinding(items2);
}
@@ -0,0 +1,289 @@
/* Metro module 2454; source: modules/feedback/intl/Feedback.messages.js; dependencies: [1247, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, 2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, 2482, 2483, 2484, 2485, 1282, 2] */
function _fun23364(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#23364, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:6, offset: 0x00f0cefc, size: 453 bytes, params: 8, frame: 19
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
object2 = {bg: bg_23365, cs: cs_23367, da: da_23369, de: de_23371, el: el_23373};
object2['en-GB'] = _fun23375;
object2['es-419'] = _fun23377;
object2['es-ES'] = _fun23379;
object2.fi = fi_23381;
object2.fr = fr_23383;
object2.hi = hi_23385;
object2.hr = hr_23387;
object2.hu = hu_23389;
object2.it = it_23391;
object2.ja = ja_23393;
object2.ko = ko_23395;
object2.lt = lt_23397;
object2.nl = nl_23399;
object2.no = no_23401;
object2.pl = pl_23403;
object2['pt-BR'] = _fun23405;
object2.ro = ro_23407;
object2.ru = ru_23409;
object2['sv-SE'] = _fun23411;
object2.th = th_23413;
object2.tr = tr_23415;
object2.uk = uk_23417;
object2.vi = vi_23419;
object2['zh-CN'] = _fun23421;
object2['zh-TW'] = _fun23423;
object2['en-US'] = _fun23425;
let value = require(1282) /* metro dependency 1282 */;
value = value.createLoader(object2, 'en-US');
const messagesProxy = (require(1282) /* metro dependency 1282 */).makeMessagesProxy(value);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/intl/Feedback.messages.js');
exports.default = messagesProxy;
exports.messagesLoader = value;
}
function bg_23365() { // fn#23365, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:102, offset: 0x00f0d0c1, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2455) /* metro dependency 2455 */);
return value.then(function(a0) {
return {default: a0};
});
}
function cs_23367() { // fn#23367, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:165, offset: 0x00f0d102, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2456) /* metro dependency 2456 */);
return value.then(function(a0) {
return {default: a0};
});
}
function da_23369() { // fn#23369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:228, offset: 0x00f0d143, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2457) /* metro dependency 2457 */);
return value.then(function(a0) {
return {default: a0};
});
}
function de_23371() { // fn#23371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:291, offset: 0x00f0d184, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2458) /* metro dependency 2458 */);
return value.then(function(a0) {
return {default: a0};
});
}
function el_23373() { // fn#23373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:354, offset: 0x00f0d1c5, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2459) /* metro dependency 2459 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23375() { // fn#23375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:422, offset: 0x00f0d206, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2460) /* metro dependency 2460 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23377() { // fn#23377, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:491, offset: 0x00f0d247, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2461) /* metro dependency 2461 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23379() { // fn#23379, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:559, offset: 0x00f0d288, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2462) /* metro dependency 2462 */);
return value.then(function(a0) {
return {default: a0};
});
}
function fi_23381() { // fn#23381, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:622, offset: 0x00f0d2c9, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2463) /* metro dependency 2463 */);
return value.then(function(a0) {
return {default: a0};
});
}
function fr_23383() { // fn#23383, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:685, offset: 0x00f0d30a, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2464) /* metro dependency 2464 */);
return value.then(function(a0) {
return {default: a0};
});
}
function hi_23385() { // fn#23385, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:749, offset: 0x00f0d34b, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2465) /* metro dependency 2465 */);
return value.then(function(a0) {
return {default: a0};
});
}
function hr_23387() { // fn#23387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:813, offset: 0x00f0d38c, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2466) /* metro dependency 2466 */);
return value.then(function(a0) {
return {default: a0};
});
}
function hu_23389() { // fn#23389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:877, offset: 0x00f0d3cd, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2467) /* metro dependency 2467 */);
return value.then(function(a0) {
return {default: a0};
});
}
function it_23391() { // fn#23391, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:941, offset: 0x00f0d40e, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2468) /* metro dependency 2468 */);
return value.then(function(a0) {
return {default: a0};
});
}
function ja_23393() { // fn#23393, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1005, offset: 0x00f0d44f, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2469) /* metro dependency 2469 */);
return value.then(function(a0) {
return {default: a0};
});
}
function ko_23395() { // fn#23395, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1069, offset: 0x00f0d490, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2470) /* metro dependency 2470 */);
return value.then(function(a0) {
return {default: a0};
});
}
function lt_23397() { // fn#23397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1133, offset: 0x00f0d4d1, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2471) /* metro dependency 2471 */);
return value.then(function(a0) {
return {default: a0};
});
}
function nl_23399() { // fn#23399, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1197, offset: 0x00f0d512, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2472) /* metro dependency 2472 */);
return value.then(function(a0) {
return {default: a0};
});
}
function no_23401() { // fn#23401, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1261, offset: 0x00f0d553, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2473) /* metro dependency 2473 */);
return value.then(function(a0) {
return {default: a0};
});
}
function pl_23403() { // fn#23403, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1325, offset: 0x00f0d594, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2474) /* metro dependency 2474 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23405() { // fn#23405, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1394, offset: 0x00f0d5d5, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2475) /* metro dependency 2475 */);
return value.then(function(a0) {
return {default: a0};
});
}
function ro_23407() { // fn#23407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1458, offset: 0x00f0d616, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2476) /* metro dependency 2476 */);
return value.then(function(a0) {
return {default: a0};
});
}
function ru_23409() { // fn#23409, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1522, offset: 0x00f0d657, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2477) /* metro dependency 2477 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23411() { // fn#23411, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1591, offset: 0x00f0d698, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2478) /* metro dependency 2478 */);
return value.then(function(a0) {
return {default: a0};
});
}
function th_23413() { // fn#23413, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1655, offset: 0x00f0d6d9, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2479) /* metro dependency 2479 */);
return value.then(function(a0) {
return {default: a0};
});
}
function tr_23415() { // fn#23415, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1719, offset: 0x00f0d71a, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2480) /* metro dependency 2480 */);
return value.then(function(a0) {
return {default: a0};
});
}
function uk_23417() { // fn#23417, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1783, offset: 0x00f0d75b, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2481) /* metro dependency 2481 */);
return value.then(function(a0) {
return {default: a0};
});
}
function vi_23419() { // fn#23419, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1847, offset: 0x00f0d79c, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2482) /* metro dependency 2482 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23421() { // fn#23421, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1916, offset: 0x00f0d7dd, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2483) /* metro dependency 2483 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23423() { // fn#23423, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:1985, offset: 0x00f0d81e, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2484) /* metro dependency 2484 */);
return value.then(function(a0) {
return {default: a0};
});
}
function _fun23425() { // fn#23425, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2581:2054, offset: 0x00f0d85f, size: 65 bytes, params: 1, frame: 14
let value = require(1247) /* metro dependency 1247: AssetJsonUtils */;
value = value.loadJsonAsset(require(2485) /* metro dependency 2485 */);
return value.then(function(a0) {
return {default: a0};
});
}
@@ -0,0 +1,182 @@
/* Metro module 9927; source: modules/feedback/native/FeedbackActionSheet.tsx; dependencies: [57, 31, 27, 9906, 33, 4501, 697, 4080, 6266, 22, 9909, 4594, 5080, 9928, 1962, 1585, 6275, 6758, 6806, 6277, 4573, 9910, 6231, 6238, 8950, 1244, 2] */
function _fun77713(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77713, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:6, offset: 0x01e080c2, size: 326 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const env0_6 = (require(9906) /* metro dependency 9906: Constants */).FeedbackRating;
let value = require(33) /* metro dependency 33 */;
const env0_7 = value.jsx;
const env0_8 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.container = {padding: PX_16};
object2.ratingsHeader = {textAlign: 'center'};
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.reasonsList = {marginBottom: PX_16};
const env0_9 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/FeedbackActionSheet.tsx');
exports.default = FeedbackActionSheet;
}
function FeedbackActionSheet({headerLabel, showHeaderCloseButton, hideDontShowAgainCheckbox, ratingOptions, ratingTextLabels, ratingsBodyLabel, reasonsHeaderLabel, reasons, feedbackReasons, otherKey, trackOpen, trackReport, getFreeformDescription}) { // fn#77715, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:482, offset: 0x01e0822d, size: 1203 bytes, params: 2, frame: 37
var r8;
var TableCheckboxRow;
var intl;
const styles = useStyles();
const binding = trackReport;
const value4 = binding.useRef(null);
const value5 = (importDefault(6266) /* metro dependency 6266: usePrevious */)(reasons);
let useState = binding.useState;
const defaultImport = importDefault(22) /* metro dependency 22 */;
const value6 = Reflect.apply(useState, binding, [defaultImport.shuffle(reasons)]);
const binding2 = trackOpen;
const value7 = binding2(value6, 2);
const property = value7[0];
const env0_8 = value7[1];
binding.useEffect(_fun77716, [reasons, value5, otherKey]);
useState = binding.useState;
const value9 = binding2(Reflect.apply(useState, binding, [null]), 2);
const property2 = value9[0];
const env0_10 = value9[1];
useState = binding.useState;
const value10 = binding2(Reflect.apply(useState, binding, [null]), 2);
const env0_11 = value10[0];
const env0_12 = value10[1];
useState = binding.useState;
const value11 = binding2(Reflect.apply(useState, binding, [false]), 2);
const env0_13 = value11[0];
const env0_14 = value11[1];
useState = binding.useState;
const value12 = binding2(Reflect.apply(useState, binding, [false]), 2);
const property3 = value12[0];
const env0_16 = value12[1];
(importDefault(4594) /* metro dependency 4594: useMountEffect */)(function() {
trackOpen();
});
(require(4594) /* metro dependency 4594: useMountEffect */).useUnmountEffect(_fun77718);
const value13 = binding.useCallback(_fun77719, []);
const env0_17 = binding.useCallback(_fun77720, [feedbackReasons]);
const r14 = property2 !== null && property2 !== FeedbackRating.GOOD;
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const value17 = 232 + (hideDontShowAgainCheckbox ? 0 : 48) + bottom;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const bottomSheetProps = {scrollable: true, ref: value4, startHeight: value17,
maxHeight: property2 == null ? value17 : undefined};
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
bottomSheetProps.header = <BottomSheetTitleHeader title={headerLabel} trailing={showHeaderCloseButton ? ((ActionSheetCloseButton) => <ActionSheetCloseButton onPress={closeActionSheet_77714} />)((require(6806) /* metro dependency 6806: ActionSheetCloseButtonNative */).ActionSheetCloseButton) : null} />;
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
const items3 = [styles.container];
items3[1] = {paddingBottom: styles.container.padding + bottom};
const items2 = [ratingsBodyLabel != null ? ((Text) => <Text style={styles.ratingsHeader} variant="text-md/medium" color="text-default">{ratingsBodyLabel}</Text>)((require(4573) /* metro dependency 4573: Text */).Text) : null];
items2[1] = ((Component) => <Component ratingOptions={ratingOptions} textLabels={ratingTextLabels} selectedRating={property2} onChangeRating={value13} />)(importDefault(9910) /* metro dependency 9910: RatingSelector */);
items2[2] = r14 ? <View style={styles.reasonsList}>{((TableRowGroup) => <TableRowGroup title={reasonsHeaderLabel} hasIcons={false}>{property.map(function(a0,
a1) {
var env0_0 = a0;
return a0.label != null ? ((TableRow) => <TableRow label={a0.label} labelLineClamp={2} onPress={_fun77722} key={a1} />)(require(dependencyMap[23]).TableRow) : undefined;
})}</TableRowGroup>)((require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup)}</View> : null;
if (hideDontShowAgainCheckbox) {
r8 = null;
} else {
TableCheckboxRow = (require(8950) /* metro dependency 8950: TableCheckboxRowNative */).TableCheckboxRow;
var tableCheckboxRowProps = {'start': true, 'end': true, checked: property3};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
tableCheckboxRowProps.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5E9SB9']);
tableCheckboxRowProps.onPress = onPress_77723;
r8 = <TableCheckboxRow {...tableCheckboxRowProps} />;
}
items2[3] = r8;
return (
<BottomSheet {...bottomSheetProps}>
<BottomSheetScrollView contentContainerStyle={items3}>
{items2}
</BottomSheetScrollView>
</BottomSheet>
);
}
function _fun77716() { // fn#77716, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:856, offset: 0x01e086e0, size: 102 bytes, params: 1, frame: 16
let value = environment.__proto__;
const defaultImport = importDefault(22) /* metro dependency 22 */;
const isEqual = defaultImport.isEqual;
let binding = env0_7;
if (!Reflect.apply(isEqual, defaultImport, [binding, reasons])) {
binding = env0_8;
value = require(9909) /* metro dependency 9909: FeedbackUtils */;
binding(value.shuffleProblems(reasons, otherKey));
}
}
function _fun77718() { // fn#77718, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:1146, offset: 0x01e08746, size: 220 bytes, params: 1, frame: 18
var object2;
var value2;
var value3;
var defaultImport;
var pushLazy;
var value4;
if (env0_13) {
value2 = environment.__proto__;
value3 = undefined;
defaultImport = importDefault(dependencyMap[12]);
pushLazy = defaultImport.pushLazy;
value4 = require(dependencyMap[14])(dependencyMap[13], dependencyMap.paths);
object2 = {};
object2.result = {rating: env0_9, reason: env0_11, dontShowAgain: env0_15};
object2.trackReport = trackReport;
object2.descriptionLabel = (getFreeformDescription == null ? value3 : getFreeformDescription(env0_11)) ?? value3;
Reflect.apply(pushLazy, defaultImport, [value4, object2]);
} else {
trackReport({rating: env0_9, reason: env0_11, dontShowAgain: env0_15});
}
}
function _fun77719(a0) { // fn#77719, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:1381, offset: 0x01e08822, size: 93 bytes, params: 2, frame: 13
var current;
env0_10(a0);
const GOOD = FeedbackRating.GOOD;
if (a0 === GOOD) {
env0_12(null);
env0_14(false);
closeActionSheet_77714();
} else {
current = env0_6.current;
if (current != null) {
current.expandActionSheet();
}
}
}
function _fun77720(a0) { // fn#77720, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:1510, offset: 0x01e0887f, size: 76 bytes, params: 2, frame: 14
env0_12(a0);
if (feedbackReasons != null && feedbackReasons.includes(a0.value)) {
env0_14(true);
}
closeActionSheet_77714();
}
function _fun77721(a0, a1) { // fn#77721, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:2278, offset: 0x01e088cb, size: 102 bytes, params: 3, frame: 18
const env0_0 = a0;
if (a0.label != null) {
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
return (
<TableRow
label={a0.label}
labelLineClamp={2}
onPress={onPress_77722}
key={a1}
/>
);
} else {
return undefined;
}
}
function FeedbackActionSheetOnPress() { // fn#77723, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10113:2509, owner: FeedbackActionSheet.onPress, offset: 0x01e08931, size: 23 bytes, params: 1, frame: 11
return env0_16(!env0_15);
}
@@ -0,0 +1,309 @@
/* Metro module 15699; source: modules/feedback/native/FeedbackActionSheetV2.tsx; dependencies: [57, 31, 27, 9906, 33, 4501, 697, 4080, 22, 6266, 4594, 5080, 9928, 1962, 1244, 4573, 9910, 8950, 6231, 6238, 4578, 1585, 6275, 6758, 6806, 6277, 2] */
function _fun120503(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120503, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:6, offset: 0x0252cf71, size: 347 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const env0_6 = (require(9906) /* metro dependency 9906: Constants */).FeedbackRating;
let value = require(33) /* metro dependency 33 */;
const env0_7 = value.jsx;
const env0_8 = value.Fragment;
const env0_9 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.container = {padding: PX_16};
object2.ratingsBody = {textAlign: 'center'};
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.problemsList = {marginBottom: PX_16};
const env0_10 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/FeedbackActionSheetV2.tsx');
exports.default = FeedbackActionSheetV2;
}
function shuffleOptionsTree(a0) { // fn#120505, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:425, offset: 0x0252d0cc, size: 60 bytes, params: 2, frame: 13
const value = importDefault(22) /* metro dependency 22 */;
return value.shuffle(a0.map(_fun120506));
}
function FeedbackActionSheetV2({headerLabel, ratingBody, ratingOptions, showHeaderCloseButton, hideDontShowAgainCheckbox, categoriesHeader, initialRating, optionsTree, onMount, trackOpen, trackReport}) { // fn#120507, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:663, offset: 0x0252d166, size: 1737 bytes, params: 2, frame: 43
var r7;
var r16;
var r13;
var problemsHeader;
var jsxRuntimeEnv0_8Binding;
var items4;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var items2;
var items3;
var TableCheckboxRow;
initialRating = initialRating === undefined ? null : initialRating;
let env0_4 = undefined;
const styles = useStyles();
let binding = env0_4;
const value5 = binding.useRef(null);
env0_4 = value5;
const value6 = (importDefault(6266) /* metro dependency 6266: usePrevious */)(optionsTree);
let useState = binding.useState;
const value7 = Reflect.apply(useState, binding, [shuffleOptionsTree(optionsTree)]);
const binding2 = trackReport;
const value8 = binding2(value7, 2);
const property = value8[0];
const env0_7 = value8[1];
binding.useEffect(_fun120508, [optionsTree, value6]);
useState = binding.useState;
const value10 = binding2(Reflect.apply(useState, binding, [false]), 2);
const property2 = value10[0];
const env0_9 = value10[1];
useState = binding.useState;
const value11 = binding2(Reflect.apply(useState, binding, [initialRating]), 2);
const property3 = value11[0];
const env0_11 = value11[1];
const value12 = binding.useState(property.length !== 1 ? null : property[0]);
binding = trackReport;
const value13 = binding(value12, 2);
const property5 = value13[0];
const env0_13 = value13[1];
const binding3 = env0_4;
useState = binding3.useState;
const value14 = binding(Reflect.apply(useState, binding3, [null]), 2);
const property6 = value14[0];
const env0_15 = value14[1];
useState = binding3.useState;
const value15 = binding(Reflect.apply(useState, binding3, [false]), 2);
const env0_16 = value15[0];
const env0_17 = value15[1];
(importDefault(4594) /* metro dependency 4594: useMountEffect */)(function() {
if (onMount != null) {
onMount();
}
trackOpen();
});
(require(4594) /* metro dependency 4594: useMountEffect */).useUnmountEffect(_fun120510);
const value16 = binding3.useCallback(_fun120512, []);
const env0_18 = binding3.useCallback(_fun120513, []);
const env0_19 = binding3.useCallback(_fun120514, [property5]);
if (property3 == null) {
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
if (ratingBody != null) {
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
r16 = <Text style={styles.ratingsBody} variant="text-md/medium" color="text-default">{ratingBody}</Text>;
} else {
r16 = null;
}
items3 = [r16];
items3[1] = ((Component) => <Component ratingOptions={ratingOptions} selectedRating={property3} onChangeRating={value16} />)(importDefault(9910) /* metro dependency 9910: RatingSelector */);
if (hideDontShowAgainCheckbox) {
r16 = null;
} else {
TableCheckboxRow = (require(8950) /* metro dependency 8950: TableCheckboxRowNative */).TableCheckboxRow;
r16 = <TableCheckboxRow start end checked={property2} label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5E9SB9'])} onPress={onPress_120515} />;
}
items3[2] = r16;
r7 = <>{items3}</>;
r13 = headerLabel;
} else if (property3 === FeedbackRating.GOOD) {
if (property5 != null && property6 == null) {
problemsHeader = property5.problemsHeader;
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
items4 = [<View style={styles.problemsList}>{((TableRowGroup) => <TableRowGroup hasIcons={false}>{property5.problemOptions.map(_fun120519)}</TableRowGroup>)((require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup)}</View>];
items4[1] = <Button variant="secondary" size="sm" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['13/7kX'])} onPress={onPress_120521} />;
r7 = <>{items4}</>;
r13 = problemsHeader;
} else {
r7 = undefined;
r13 = headerLabel;
}
} else if (property5 == null) {
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
items2 = [<View style={styles.problemsList}>{((TableRowGroup) => <TableRowGroup hasIcons={false}>{property.map(_fun120516)}</TableRowGroup>)((require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup)}</View>];
items2[1] = <Button variant="secondary" size="sm" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['13/7kX'])} onPress={onPress_120518} />;
r7 = <>{items2}</>;
r13 = categoriesHeader;
} else if (property5 != null && property6 == null) {
problemsHeader = property5.problemsHeader;
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
items4 = [<View style={styles.problemsList}>{((TableRowGroup) => <TableRowGroup hasIcons={false}>{property5.problemOptions.map(_fun120519)}</TableRowGroup>)((require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup)}</View>];
items4[1] = <Button variant="secondary" size="sm" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['13/7kX'])} onPress={onPress_120521} />;
r7 = <>{items4}</>;
r13 = problemsHeader;
} else {
r7 = undefined;
r13 = headerLabel;
}
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const value27 = 232 + (hideDontShowAgainCheckbox ? 0 : 48) + bottom;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const bottomSheetProps = {scrollable: true, ref: value5, startHeight: value27,
maxHeight: property3 == null ? value27 : undefined};
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
bottomSheetProps.header = <BottomSheetTitleHeader title={r13} trailing={showHeaderCloseButton ? ((ActionSheetCloseButton) => <ActionSheetCloseButton onPress={closeActionSheet_120504} />)((require(6806) /* metro dependency 6806: ActionSheetCloseButtonNative */).ActionSheetCloseButton) : null} />;
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
return (
<BottomSheet {...bottomSheetProps}>
<BottomSheetScrollView
contentContainerStyle={[styles.container, {paddingBottom: styles.container.padding + bottom}]}
>
{r7}
</BottomSheetScrollView>
</BottomSheet>
);
}
function _fun120506(a0) { // fn#120506, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:452, offset: 0x0252d108, size: 94 bytes, params: 2, frame: 14
const object2 = {};
copyDataProperties(object2, a0, undefined);
let value = environment.__proto__;
value = Reflect.apply((importDefault(22) /* metro dependency 22 */).shuffle, value, [a0.problemOptions]);
value = value.concat(a0.freeformConfig ?? []);
object2['problemOptions'] = value;
return object2;
}
function _fun120508() { // fn#120508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:995, offset: 0x0252d82f, size: 75 bytes, params: 1, frame: 16
const defaultImport = importDefault(22) /* metro dependency 22 */;
if (!defaultImport.isEqual(env0_5, optionsTree)) {
env0_7(shuffleOptionsTree(optionsTree));
}
}
function _fun120510() { // fn#120510, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:1345, offset: 0x0252d89d, size: 388 bytes, params: 1, frame: 21
var environment;
var r4;
var trackReportBinding;
var object2;
var value2;
var value5;
var value6;
var defaultImport;
var pushLazy;
var value7;
var intl;
if (env0_16) {
value5 = environment.__proto__;
value6 = undefined;
defaultImport = importDefault(dependencyMap[11]);
pushLazy = defaultImport.pushLazy;
value7 = require(dependencyMap[13])(dependencyMap[12], dependencyMap.paths);
object2 = {};
object2.result = {rating: env0_10, category: env0_12 == null ? value6 : env0_12.value, reason: env0_14,
dontShowAgain: env0_8};
object2.trackReport = trackReport;
object2.titleLabel = env0_12 == null ? value6 : env0_12.problemsHeader;
intl = require(dependencyMap[14]).intl;
object2.descriptionLabel = intl.string(require(dependencyMap[14]).t.h95hcn);
object2.hideHelpdeskLink = env0_12 == null || env0_12.freeformConfig == null ? value6 : env0_12.freeformConfig.hideHelpdeskLink;
Reflect.apply(pushLazy, defaultImport, [value7, object2]);
} else {
trackReportBinding = trackReport;
value2 = null;
r4 = value2 == env0_12 ? undefined : env0_12.value;
trackReportBinding({rating: env0_10, category: value2 != r4 ? r4 : value2, reason: env0_14,
dontShowAgain: env0_8,
feedback: ''});
}
}
function _fun120512(a0) { // fn#120512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:1931, offset: 0x0252da7b, size: 102 bytes, params: 2, frame: 13
var current;
env0_11(a0);
const GOOD = FeedbackRating.GOOD;
if (a0 === GOOD) {
env0_13(null);
env0_15(null);
env0_17(false);
closeActionSheet_120504();
} else {
current = env0_4.current;
if (current != null) {
current.expandActionSheet();
}
}
}
function _fun120513(a0) { // fn#120513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2069, offset: 0x0252dae1, size: 53 bytes, params: 2, frame: 12
env0_13(a0);
env0_15(null);
const current = env0_4.current;
if (current != null) {
current.expandActionSheet();
}
}
function _fun120514(a0) { // fn#120514, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2159, offset: 0x0252db16, size: 101 bytes, params: 2, frame: 14
var freeformConfig;
const value2 = undefined;
env0_15(a0);
if (env0_12 == null) {
env0_17(false);
} else if (a0 == null) {
env0_17(false);
} else {
freeformConfig = env0_12.freeformConfig;
if ((freeformConfig == null ? value2 : freeformConfig.value) === a0.value) {
env0_17(true);
} else {
env0_17(false);
}
}
closeActionSheet_120504();
return value2;
}
function FeedbackActionSheetV2OnPress() { // fn#120515, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2607, owner: FeedbackActionSheetV2.onPress, offset: 0x0252db7b, size: 23 bytes, params: 1, frame: 11
return env0_9(!env0_8);
}
function _fun120516(a0, a1) { // fn#120516, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2754, offset: 0x0252db92, size: 86 bytes, params: 3, frame: 16
const env0_0 = a0;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
return (
<TableRow
label={a0.label}
labelLineClamp={2}
onPress={onPress_120517}
key={a1}
/>
);
}
function FeedbackActionSheetV2OnPress_120518() { // fn#120518, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2946, owner: FeedbackActionSheetV2.onPress, offset: 0x0252dbff, size: 18 bytes, params: 1, frame: 11
return env0_11(null);
}
function _fun120519(a0, a1) { // fn#120519, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:3124, offset: 0x0252dc11, size: 86 bytes, params: 3, frame: 16
const env0_0 = a0;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
return (
<TableRow
label={a0.label}
labelLineClamp={2}
onPress={onPress_120520}
key={a1}
/>
);
}
function FeedbackActionSheetV2OnPress_120521() { // fn#120521, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:3316, owner: FeedbackActionSheetV2.onPress, offset: 0x0252dc7e, size: 49 bytes, params: 1, frame: 12
return env0_6.length === 1 ? env0_11(null) : env0_13(null);
}
function trackReport({rating, category, reason, dontShowAgain, feedback}) { // fn#120511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:1491, offset: 0x0252da21, size: 90 bytes, params: 2, frame: 13
const value = environment.__proto__;
trackReport({rating: rating, category: category, reason: reason, dontShowAgain: dontShowAgain,
feedback: feedback ?? ''});
}
function onPress_120517() { // fn#120517, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:2821, offset: 0x0252dbe8, size: 23 bytes, params: 1, frame: 11
return env1_18(env0_0);
}
function onPress_120520() { // fn#120520, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15907:3191, offset: 0x0252dc67, size: 23 bytes, params: 1, frame: 11
return env1_19(env0_0);
}
@@ -0,0 +1,146 @@
/* Metro module 9908; source: modules/feedback/native/FeedbackForm.tsx; dependencies: [57, 31, 9906, 33, 4501, 697, 6266, 22, 9909, 4594, 7972, 4573, 6239, 9910, 1244, 2] */
function _fun77643(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77643, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:6, offset: 0x01e057fa, size: 342 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(9906) /* metro dependency 9906: Constants */).FeedbackRating;
let value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.ratingsLabel = {textAlign: 'center'};
object2.reasonsHeader = {marginBottom: 8};
object2.reasonsList = {'overflow': 'hidden', 'marginBottom': 12, 'padding': 0};
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
object2.reason = {color: INTERACTIVE_TEXT_ACTIVE};
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.doNotShowAgainContainer = {'paddingHorizontal': 0, 'paddingVertical': 8,
backgroundColor: BACKGROUND_SURFACE_HIGH};
const env0_8 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/FeedbackForm.tsx');
exports.FeedbackForm = FeedbackForm;
}
function FeedbackForm({showDoNotShowAgainCheckbox, ratingsBodyLabel, reasonsHeaderLabel, reasons, otherKey, onFeedbackChanged, trackOpen}) { // fn#77644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:584, offset: 0x01e05950, size: 933 bytes, params: 2, frame: 30
var FormRow;
var Checkbox;
var doNotShowAgain;
var Label;
var intl;
const styles = useStyles();
const env0_4 = styles;
const value2 = (importDefault(6266) /* metro dependency 6266: usePrevious */)(reasons);
const binding = env0_4;
let useState = binding.useState;
const defaultImport = importDefault(22) /* metro dependency 22 */;
const value3 = Reflect.apply(useState, binding, [defaultImport.shuffle(reasons)]);
const binding2 = trackOpen;
const value4 = binding2(value3, 2);
const property = value4[0];
const env0_6 = value4[1];
binding.useEffect(_fun77645, [reasons, value2, otherKey]);
useState = binding.useState;
const value5 = binding2(Reflect.apply(useState, binding, [{}]), 2);
const property2 = value5[0];
const env0_8 = value5[1];
(importDefault(4594) /* metro dependency 4594: useMountEffect */)(function() {
trackOpen();
});
const value6 = binding.useCallback(_fun77647, [property2, onFeedbackChanged]);
let r5 = property2.rating != null ? property2.rating === FeedbackRating.GOOD ? null : <env0_4.Fragment>{((Text) => <Text style={styles.reasonsHeader} variant="eyebrow" color="text-default">{reasonsHeaderLabel}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}{((Card) => <Card border="subtle" style={styles.reasonsList}>{property.filter(function(a0) {
return a0.label;
}).map(_fun77649)}</Card>)((require(6239) /* metro dependency 6239: CardNative */).Card)}</env0_4.Fragment> : null;
const Fragment = env0_4.Fragment;
const items2 = [ratingsBodyLabel != null ? ((Text) => <Text style={styles.ratingsLabel} variant="heading-md/semibold" color="text-default">{ratingsBodyLabel}</Text>)((require(4573) /* metro dependency 4573: Text */).Text) : null];
items2[1] = ((Component) => <Component selectedRating={property2.rating ?? null} onChangeRating={onChangeRating} />)(importDefault(9910) /* metro dependency 9910: RatingSelector */);
items2[2] = r5;
if (showDoNotShowAgainCheckbox) {
FormRow = (require(7972) /* metro dependency 7972: native */).FormRow;
var formRowProps = {style: styles.doNotShowAgainContainer};
Checkbox = (require(7972) /* metro dependency 7972: native */).FormRow.Checkbox;
doNotShowAgain = property2.doNotShowAgain;
formRowProps.leading = <Checkbox selected={doNotShowAgain != null && doNotShowAgain} />;
Label = (require(7972) /* metro dependency 7972: native */).FormRow.Label;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
formRowProps.label = <Label text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5E9SB9'])} />;
formRowProps.onPress = value6;
r5 = <FormRow {...formRowProps} />;
} else {
r5 = null;
}
items2[3] = r5;
return (
<Fragment>
{items2}
</Fragment>
);
}
function _fun77645() { // fn#77645, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:829, offset: 0x01e05cf5, size: 102 bytes, params: 1, frame: 16
let value = environment.__proto__;
const defaultImport = importDefault(22) /* metro dependency 22 */;
const isEqual = defaultImport.isEqual;
let binding = env0_5;
if (!Reflect.apply(isEqual, defaultImport, [binding, reasons])) {
binding = env0_6;
value = require(9909) /* metro dependency 9909: FeedbackUtils */;
binding(value.shuffleProblems(reasons, otherKey));
}
}
function _fun77647() { // fn#77647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:987, offset: 0x01e05d5b, size: 75 bytes, params: 1, frame: 15
const doNotShowAgain = env0_7.doNotShowAgain;
const r0 = doNotShowAgain != null && doNotShowAgain;
const binding = env0_8;
const object2 = {};
const binding2 = env0_7;
copyDataProperties(object2, binding2, undefined);
object2['doNotShowAgain'] = !r0;
binding(object2);
onFeedbackChanged(binding2);
}
function _fun77649(a0, a1) { // fn#77649, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:1102, offset: 0x01e05da6, size: 220 bytes, params: 3, frame: 25
const env0_0 = a0;
const Fragment = env1_4.Fragment;
const r6 = a1 > 0 ? ((FormDivider) => <FormDivider />)((require(7972) /* metro dependency 7972: native */).FormDivider) : null;
const FormRow = (require(7972) /* metro dependency 7972: native */).FormRow;
const FormLabel = (require(7972) /* metro dependency 7972: native */).FormLabel;
return (
<Fragment key={a1}>
{r6}
<FormRow
labelStyle={styles.reason}
label={<FormLabel text={a0.label} numberOfLines={2} />}
onPress={onPress_77650}
/>
</Fragment>
);
}
function onChangeRating(a0) { // fn#77651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:1795, owner: FeedbackForm.onChangeRating, offset: 0x01e05eb8, size: 91 bytes, params: 2, frame: 14
const value = environment.__proto__;
const GOOD = FeedbackRating.GOOD;
const reason = a0 === GOOD ? null : env0_7.reason;
const object2 = {};
copyDataProperties(object2, env0_7, a0);
object2['rating'] = a0;
object2['reason'] = reason;
env0_8(object2);
onFeedbackChanged(object2);
}
function onPress_77650() { // fn#77650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10094:1276, offset: 0x01e05e82, size: 54 bytes, params: 1, frame: 13
const binding = env0_0;
const object2 = {};
copyDataProperties(object2, env1_7, binding);
object2['reason'] = binding;
env1_8(object2);
onFeedbackChanged(object2);
}
@@ -0,0 +1,246 @@
/* Metro module 15697; source: modules/feedback/native/FeedbackManager.tsx; dependencies: [7, 6, 15, 17, 18, 4234, 1379, 4294, 4395, 9906, 4285, 15698, 1962, 5459, 4080, 3774, 15702, 15705, 15707, 15711, 2] */
function _fun120476(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120476, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:6, offset: 0x0252c12f, size: 316 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(7) /* metro dependency 7 */;
const env0_4 = importDefault(6) /* metro dependency 6 */;
const env0_5 = importDefault(15) /* metro dependency 15 */;
const env0_6 = importDefault(17) /* metro dependency 17 */;
const env0_7 = importDefault(18) /* metro dependency 18 */;
const applicationStore = importDefault(4234) /* metro dependency 4234: ApplicationStore */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const rtcConnectionStore = importDefault(4294) /* metro dependency 4294: RTCConnectionStore */;
const streamRTCConnectionStore = importDefault(4395) /* metro dependency 4395: StreamRTCConnectionStore */;
const env0_12 = (require(9906) /* metro dependency 9906: Constants */).FeedbackType;
let value = importDefault(15711) /* metro dependency 15711: FeedbackManager */;
value = _fun120480(value);
value = new value();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/FeedbackManager.tsx');
exports.default = value;
}
function _isNativeReflectConstruct_120477() { // fn#120477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:211, offset: 0x0252c26b, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_120477_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun120480(a0) { // fn#120480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:414, offset: 0x0252c2cd, size: 42 bytes, params: 2, frame: 14
const closure = FeedbackManager_120481;
env0_7(closure, a0);
return env0_3(closure);
}
function FeedbackManager_120481(a0) { // fn#120481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:426, offset: 0x0252c2f7, size: 244 bytes, params: 2, frame: 20
var r0;
var Reflect;
let value = copyRestArgs(0, undefined);
let binding = env1_4;
binding(this, FeedbackManager_120481);
const items = [];
arraySpread(items, value, 0, items);
value = env1_6(FeedbackManager_120481);
binding = env1_5;
if (_isNativeReflectConstruct_120477()) {
Reflect = global.Reflect;
value = Reflect.construct(value, items, env1_6(this).constructor);
r0 = value;
} else {
value = value.apply(this, items);
r0 = value;
}
value = binding(this, r0);
value.actions = {VOICE_CHANNEL_SHOW_FEEDBACK: VOICE_CHANNEL_SHOW_FEEDBACK, STREAM_CLOSE: STREAM_CLOSE_120483,
EMBEDDED_ACTIVITY_CLOSE: EMBEDDED_ACTIVITY_CLOSE_120484,
IN_APP_REPORTS_SHOW_FEEDBACK: IN_APP_REPORTS_SHOW_FEEDBACK};
value.handleShowStreamFeedback = handleShowStreamFeedback;
value.handleShowActivityFeedback = handleShowActivityFeedback;
value.handleShowVoiceFeedback = function({analyticsData}) {
var binding = analyticsData;
var VOICE = FeedbackType.VOICE;
binding.possiblyShowFeedbackModal(VOICE, _fun120493);
};
value.handleInAppReportsFeedback = function({reportId, reportType}) {
var binding = reportId;
var IN_APP_REPORTS = FeedbackType.IN_APP_REPORTS;
binding.possiblyShowFeedbackModal(IN_APP_REPORTS, _fun120496);
};
return value;
}
function VOICE_CHANNEL_SHOW_FEEDBACK(a0) { // fn#120482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:696, owner: FeedbackManager_120481.VOICE_CHANNEL_SHOW_FEEDBACK, offset: 0x0252c3eb, size: 23 bytes, params: 2, frame: 11
return env0_0.handleShowVoiceFeedback(a0);
}
function FeedbackManager_120481STREAM_CLOSE(a0) { // fn#120483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:741, owner: FeedbackManager_120481.STREAM_CLOSE, offset: 0x0252c402, size: 23 bytes, params: 2, frame: 11
return env0_0.handleShowStreamFeedback(a0);
}
function FeedbackManager_120481EMBEDDED_ACTIVITY_CLOSE(a0) { // fn#120484, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:798, owner: FeedbackManager_120481.EMBEDDED_ACTIVITY_CLOSE, offset: 0x0252c419, size: 23 bytes, params: 2, frame: 11
return env0_0.handleShowActivityFeedback(a0);
}
function IN_APP_REPORTS_SHOW_FEEDBACK(a0) { // fn#120485, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:862, owner: FeedbackManager_120481.IN_APP_REPORTS_SHOW_FEEDBACK, offset: 0x0252c430, size: 23 bytes, params: 2, frame: 11
return env0_0.handleInAppReportsFeedback(a0);
}
function handleShowStreamFeedback(a0) { // fn#120486, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:925, owner: FeedbackManager_120481.handleShowStreamFeedback, offset: 0x0252c447, size: 67 bytes, params: 2, frame: 13
var environment;
var value;
var streamKey;
var possiblyShowFeedbackModal;
if (a0.canShowFeedback) {
streamKey = a0.streamKey;
possiblyShowFeedbackModal = streamKey.possiblyShowFeedbackModal;
value = environment.__proto__.__proto__;
Reflect.apply(possiblyShowFeedbackModal, streamKey, [FeedbackType.STREAM, _fun120487]);
}
}
function handleShowActivityFeedback({applicationId, location, showFeedback}) { // fn#120489, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1466, owner: FeedbackManager_120481.handleShowActivityFeedback, offset: 0x0252c601, size: 155 bytes, params: 2, frame: 17
var binding;
const env0_0 = applicationId;
const application = ApplicationStore.getApplication(applicationId);
const env0_3 = ChannelStore.getChannel((require(3774) /* metro dependency 3774: embeddedActivityLocationUtils */).getEmbeddedActivityLocationChannelId(location));
if (application != null && showFeedback) {
binding = env0_0;
binding.possiblyShowFeedbackModal(FeedbackType.ACTIVITY, _fun120490);
}
}
function handleShowVoiceFeedback({analyticsData}) { // fn#120492, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1977, owner: FeedbackManager_120481.handleShowVoiceFeedback, offset: 0x0252c78e, size: 58 bytes, params: 2, frame: 13
const binding = analyticsData;
const possiblyShowFeedbackModal = binding.possiblyShowFeedbackModal;
const VOICE = FeedbackType.VOICE;
Reflect.apply(possiblyShowFeedbackModal, binding, [VOICE, _fun120493]);
}
function handleInAppReportsFeedback({reportId, reportType}) { // fn#120495, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:2213, owner: FeedbackManager_120481.handleInAppReportsFeedback, offset: 0x0252c873, size: 68 bytes, params: 2, frame: 13
const binding = reportId;
const possiblyShowFeedbackModal = binding.possiblyShowFeedbackModal;
const IN_APP_REPORTS = FeedbackType.IN_APP_REPORTS;
Reflect.apply(possiblyShowFeedbackModal, binding, [IN_APP_REPORTS, _fun120496]);
}
function _fun120487() { // fn#120487, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1002, offset: 0x0252c48a, size: 277 bytes, params: 1, frame: 17
var environment;
var r4;
var object2;
var getMediaSessionId;
let value = environment.__proto__.__proto__.__proto__;
const moduleValue = require(dependencyMap[10]);
const channel = ChannelStore.getChannel(moduleValue.decodeStreamKey(streamKey).channelId);
if (channel == null) {
r4 = StreamRTCConnectionStore.getVideoStats(streamKey) ?? ({});
object2 = {};
getMediaSessionId = StreamRTCConnectionStore.getMediaSessionId;
streamKeyBinding = streamKey;
object2.media_session_id = Reflect.apply(getMediaSessionId, StreamRTCConnectionStore, [streamKeyBinding]);
object2.rtc_connection_id = StreamRTCConnectionStore.getRtcConnectionId(streamKeyBinding);
object2.stream_region = StreamRTCConnectionStore.getRegion(streamKeyBinding);
object2.max_viewers = StreamRTCConnectionStore.getMaxViewers(streamKeyBinding);
copyDataProperties(object2, r4, StreamRTCConnectionStore);
value = require(dependencyMap[12]);
var env0_2 = value(dependencyMap[11], dependencyMap.paths);
value = require(dependencyMap[13]);
value.runAfterInteractions(_fun120488);
} else if (!channel.isGuildStageVoice()) {
r4 = StreamRTCConnectionStore.getVideoStats(streamKey) ?? ({});
object2 = {};
getMediaSessionId = StreamRTCConnectionStore.getMediaSessionId;
streamKeyBinding = streamKey;
object2.media_session_id = Reflect.apply(getMediaSessionId, StreamRTCConnectionStore, [streamKeyBinding]);
object2.rtc_connection_id = StreamRTCConnectionStore.getRtcConnectionId(streamKeyBinding);
object2.stream_region = StreamRTCConnectionStore.getRegion(streamKeyBinding);
object2.max_viewers = StreamRTCConnectionStore.getMaxViewers(streamKeyBinding);
copyDataProperties(object2, r4, StreamRTCConnectionStore);
value = require(dependencyMap[12]);
var env0_2 = value(dependencyMap[11], dependencyMap.paths);
value = require(dependencyMap[13]);
value.runAfterInteractions(_fun120488);
}
}
function _fun120490() { // fn#120490, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1661, offset: 0x0252c69c, size: 121 bytes, params: 1, frame: 17
var environment;
const value = environment.__proto__.__proto__.__proto__;
const env0_0 = require(dependencyMap[12])(dependencyMap[16], dependencyMap.paths);
const object2 = {};
object2.media_session_id = RTCConnectionStore.getMediaSessionId();
object2.rtc_connection_id = RTCConnectionStore.getRTCConnectionId();
require(dependencyMap[13]).runAfterInteractions(_fun120491);
}
function _fun120493() { // fn#120493, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:2036, offset: 0x0252c7c8, size: 81 bytes, params: 1, frame: 16
var environment;
const value = environment.__proto__.__proto__.__proto__;
const env0_0 = require(dependencyMap[12])(dependencyMap[17], dependencyMap.paths);
require(dependencyMap[13]).runAfterInteractions(_fun120494);
}
function _fun120496() { // fn#120496, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:2289, offset: 0x0252c8b7, size: 81 bytes, params: 1, frame: 16
var environment;
const value = environment.__proto__.__proto__.__proto__;
const env0_0 = require(dependencyMap[12])(dependencyMap[18], dependencyMap.paths);
require(dependencyMap[13]).runAfterInteractions(_fun120497);
}
function _fun120488() { // fn#120488, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1355, offset: 0x0252c59f, size: 98 bytes, params: 1, frame: 18
let value = environment.__proto__.__proto__.__proto__.__proto__;
value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
value.openLazy(env0_2, 'StreamFeedback' + streamKey, {stream: env0_0, analyticsData: env0_1});
}
function _fun120491() { // fn#120491, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:1811, offset: 0x0252c715, size: 121 bytes, params: 1, frame: 21
let value = environment.__proto__.__proto__.__proto__.__proto__;
value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
const openLazy = value.openLazy;
const binding = env0_0;
const locationBinding = location;
Reflect.apply(openLazy, value, [binding, 'ActivityFeedback' + locationBinding.id + applicationId,
{analyticsData: env0_1, activityApplication: env1_2, channel: env1_3,
embeddedActivityLocation: locationBinding}]);
}
function _fun120494() { // fn#120494, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:2102, offset: 0x0252c819, size: 90 bytes, params: 1, frame: 18
let value = environment.__proto__.__proto__.__proto__.__proto__;
value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
const openLazy = value.openLazy;
const binding = env0_0;
const analyticsDataBinding = analyticsData;
Reflect.apply(openLazy, value, [binding, 'VoiceFeedback' + analyticsDataBinding.channel_id,
{analyticsData: analyticsDataBinding}]);
}
function _fun120497() { // fn#120497, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15905:2355, offset: 0x0252c908, size: 120 bytes, params: 1, frame: 19
let value = environment.__proto__.__proto__.__proto__.__proto__;
value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
value.openLazy(env0_0, 'ReportingFeedback' + reportType + (reportId ?? ''), {reportId: reportId,
reportType: reportType});
}
@@ -0,0 +1,106 @@
/* Metro module 9928; source: modules/feedback/native/FeedbackModal.tsx; dependencies: [57, 31, 27, 33, 4501, 7972, 1244, 6766, 1948, 4578, 5080, 5280, 5282, 2] */
function _fun77724(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77724, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:6, offset: 0x01e08948, size: 289 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_5 = value.View;
const env0_6 = value.ScrollView;
value = require(33) /* metro dependency 33 */;
const env0_7 = value.jsx;
const env0_8 = value.jsxs;
const env0_9 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({helpDeskLabel: {'lineHeight': 16,
'marginTop': 8}, bottomContainer: {paddingHorizontal: 16}, submitButton: {'marginTop': 24, 'marginBottom': 24}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/FeedbackModal.tsx');
exports.default = FeedbackModal;
}
function FeedbackForm_77725({result, trackReport, titleLabel, descriptionLabel, hideHelpdeskLink}) { // fn#77725, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:328, offset: 0x01e08a69, size: 841 bytes, params: 2, frame: 36
var r9;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var TextWithIOSLinkWorkaround;
var format;
var ybi2tD;
var object;
const styles = useStyles();
const reason = result.reason;
const [property, property2] = env0_3(env0_4.useState(''), 2);
const FormSection = (require(7972) /* metro dependency 7972: native */).FormSection;
const FormInput = (require(7972) /* metro dependency 7972: native */).FormInput;
const items2 = [<FormInput value={reason?.label} title={titleLabel ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.vcqwCj)} disabled key="channel-input" />];
const FormDivider = (require(7972) /* metro dependency 7972: native */).FormDivider;
items2[1] = <FormDivider />;
items2[2] = <FormInput value={property} title={descriptionLabel ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.h95hcn)} onChange={property2} multiline numberOfLines={4} autoCorrect />;
const formSection = <FormSection>{items2}</FormSection>;
if (hideHelpdeskLink) {
r9 = !hideHelpdeskLink;
} else {
TextWithIOSLinkWorkaround = (require(6766) /* metro dependency 6766: TextWithIOSLinkWorkaround */).TextWithIOSLinkWorkaround;
var textWithIOSLinkWorkaroundProps = {'style': null, 'variant': 'text-xs/medium', 'color': 'text-muted',
style: styles.helpDeskLabel};
format = intl.format;
ybi2tD = (require(1244) /* metro dependency 1244: indexNative */).t.ybi2tD;
object = {};
object.helpdeskURL = (importDefault(1948) /* metro dependency 1948: HelpdeskUtils */).getSubmitRequestURL();
r9 = <TextWithIOSLinkWorkaround {...textWithIOSLinkWorkaroundProps}>{Reflect.apply(format, intl, [ybi2tD,
object])}</TextWithIOSLinkWorkaround>;
}
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<ScrollView keyboardShouldPersistTaps="handled">
{formSection}
<View style={styles.bottomContainer}>
{r9}
<View style={styles.submitButton}>
<Button
disabled={property == null || property === ''}
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.geKm7t)}
onPress={onPress_77726}
/>
</View>
</View>
</ScrollView>
);
}
function FeedbackModal(a0) { // fn#77727, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:1388, offset: 0x01e08dfd, size: 267 bytes, params: 2, frame: 22
const env0_0 = a0;
const env0_3 = env0_4.useRef({result: a0.result, trackReport: a0.trackReport});
env0_4.useEffect(_fun77728);
const value2 = env0_4.useCallback(_fun77729, []);
const Navigator = (require(5280) /* metro dependency 5280: NavigatorNative */).Navigator;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['dBx+Cn']);
object.headerLeft = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).getHeaderCloseButton(value2);
object.render = render_77730;
return <Navigator initialRouteName="Feedback" screens={{Feedback: object}} />;
}
function FeedbackForm_77725OnPress() { // fn#77726, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:1250, owner: FeedbackForm_77725.onPress, offset: 0x01e08db2, size: 75 bytes, params: 1, frame: 14
const value = environment.__proto__;
(importDefault(5080) /* metro dependency 5080: ModalActionCreators */).pop();
const trackReportBinding = trackReport;
const object2 = {};
copyDataProperties(object2, result, undefined);
object2['feedback'] = env0_2;
trackReportBinding(object2);
}
function _fun77728() { // fn#77728, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:1495, offset: 0x01e08f08, size: 37 bytes, params: 1, frame: 4
env0_3.current = {result: result, trackReport: trackReport};
}
function _fun77729() { // fn#77729, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:1559, offset: 0x01e08f2d, size: 66 bytes, params: 1, frame: 11
const value = environment.__proto__;
(importDefault(5080) /* metro dependency 5080: ModalActionCreators */).pop();
const current = env0_3.current;
current.trackReport(current.result);
}
function FeedbackModalRender() { // fn#77730, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10114:1807, owner: FeedbackModal.render, offset: 0x01e08f6f, size: 37 bytes, params: 1, frame: 13
return <FeedbackForm_77725 {...env0_0} />;
}
@@ -0,0 +1,100 @@
/* Metro module 9910; source: modules/feedback/native/RatingSelector.tsx; dependencies: [31, 27, 9906, 33, 4501, 9911, 9912, 1244, 9916, 9917, 9921, 9922, 7975, 5278, 2] */
function _fun77666(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77666, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10096:6, offset: 0x01e07100, size: 354 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_3 = value.View;
const env0_4 = value.Image;
value = require(9906) /* metro dependency 9906: Constants */;
const env0_5 = value.DEFAULT_RATINGS;
const env0_6 = value.FeedbackRating;
const env0_7 = (require(33) /* metro dependency 33 */).jsx;
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({ratings: {'flexDirection': 'row',
'alignItems': 'center', 'justifyContent': 'center'}, rating: {}, emoji: {'width': 64, 'height': 64,
'marginVertical': 24, 'marginHorizontal': 12}});
const env0_9 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({ratings: {'flexDirection': 'column',
'alignItems': 'flex-start', 'justifyContent': 'flex-start', 'gap': 16, 'marginBottom': 12},
rating: {width: '100%'}, emoji: {'width': 32, 'height': 32}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/RatingSelector.tsx');
exports.default = RatingSelector;
}
function RatingSelector({ratingOptions = DEFAULT_RATINGS, textLabels, selectedRating, onChangeRating}) { // fn#77667, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10096:641, offset: 0x01e07262, size: 151 bytes, params: 2, frame: 17
const styles = useStyles();
return (
<View style={(textLabels == null ? useStyles() : styles).ratings}>
{useEmojiConfigs(ratingOptions).map(_fun77673)}
</View>
);
}
function useEmojiConfigs(a0) { // fn#77668, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10096:765, owner: RatingSelector.useEmojiConfigs, offset: 0x01e072f9, size: 309 bytes, params: 2, frame: 21
var environment;
const object2 = {};
const value = environment.__proto__;
const BAD = FeedbackRating.BAD;
const object4 = {};
object4.selected = importDefault(9911) /* metro dependency 9911 */;
object4.normal = (require(9912) /* metro dependency 9912: FeedbackModalSadDesaturated */).useFeedbackModalSadDesaturatedSource();
const BAD2 = FeedbackRating.BAD;
object2[BAD] = {source: object4, getLabel: function() {
return require(dependencyMap[7]).intl.string(require(dependencyMap[7]).t['C/12Tt']);
}, rating: BAD2};
const NEUTRAL = FeedbackRating.NEUTRAL;
const object6 = {selected: importDefault(9916) /* metro dependency 9916 */};
object6.normal = (require(9917) /* metro dependency 9917: FeedbackModalNeutralDesaturated */).useFeedbackModalNeutralDesaturatedSource();
const NEUTRAL2 = FeedbackRating.NEUTRAL;
object2[NEUTRAL] = {source: object6, getLabel: function() {
return require(dependencyMap[7]).intl.string(require(dependencyMap[7]).t.Xcb4cF);
}, rating: NEUTRAL2};
const GOOD = FeedbackRating.GOOD;
const object8 = {selected: importDefault(9921) /* metro dependency 9921 */};
object8.normal = (require(9922) /* metro dependency 9922: FeedbackModalHappyDesaturated */).useFeedbackModalHappyDesaturatedSource();
const GOOD2 = FeedbackRating.GOOD;
object2[GOOD] = {source: object8, getLabel: function() {
return require(dependencyMap[7]).intl.string(require(dependencyMap[7]).t['1Vyb5J']);
}, rating: GOOD2};
return a0.map(_fun77672);
}
function _fun77673(a0) { // fn#77673, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10096:1359, offset: 0x01e074ee, size: 368 bytes, params: 2, frame: 26
var environment;
var r0;
var value2;
var PressableOpacity;
var object2;
var value3;
var value4;
var RowButton;
var object3;
var value5;
const rating = a0.rating;
const {selected, normal} = a0.source;
const getLabel = a0.getLabel;
if (textLabels != null) {
value4 = environment.__proto__;
var viewBindingProps = {style: env0_3.rating};
RowButton = (require(7975) /* metro dependency 7975: RowButtonNative */).RowButton;
object3 = {accessibilityRole: 'button', accessibilityLabel: getLabel()};
value5 = selectedRating === rating;
object3.accessibilityState = {selected: value5};
object3.onPress = function() {
return onChangeRating(rating);
};
object3.icon = <Image style={env0_3.emoji} source={value5 ? selected : normal} />;
object3.label = textLabels[rating];
r0 = <View {...viewBindingProps} key={rating}><RowButton {...object3} /></View>;
} else {
value2 = environment.__proto__;
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
object2 = {accessibilityRole: 'button', accessibilityLabel: getLabel()};
value3 = selectedRating === rating;
object2.accessibilityState = {selected: value3};
object2.onPress = onPress_77675;
r0 = <PressableOpacity {...object2} key={rating}><Image style={env0_3.emoji} source={value3 ? selected : normal} /></PressableOpacity>;
}
return r0;
}
@@ -0,0 +1,11 @@
/* Metro module 12545; source: modules/feedback/native/RequestReviewNoTTIExperiment.tsx; dependencies: [1854, 2] */
function _fun95876(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#95876, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12735:6, offset: 0x021511f2, size: 158 bytes, params: 8, frame: 21
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = require(1854) /* metro dependency 1854: apex */;
value = value.createApexExperiment({'name': '2026-05-mobile-request-review-no-tti', 'kind': 'user',
defaultConfig: {skipTTICheck: false}, variations: {[0]: {skipTTICheck: false}, [1]: {skipTTICheck: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/RequestReviewNoTTIExperiment.tsx');
exports.RequestReviewNoTTIExperiment = value;
}
@@ -0,0 +1,168 @@
/* Metro module 12544; source: modules/feedback/native/RequestReviewStore.tsx; dependencies: [6, 7, 15, 17, 18, 4107, 1220, 1934, 661, 12545, 12546, 4008, 4007, 6996, 676, 587, 683, 566, 694, 2] */
function _fun95859(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#95859, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:6, offset: 0x02150ad3, size: 484 bytes, params: 8, frame: 20
const env0_0 = require;
const closure = function() {
cancelExistingTimeout();
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(6) /* metro dependency 6 */;
const env0_4 = importDefault(7) /* metro dependency 7 */;
const env0_5 = importDefault(15) /* metro dependency 15 */;
const env0_6 = importDefault(17) /* metro dependency 17 */;
const env0_7 = importDefault(18) /* metro dependency 18 */;
const experimentStore = importDefault(4107) /* metro dependency 4107: ExperimentStore */;
const apexExperimentStore = importDefault(1220) /* metro dependency 1220: ApexExperimentStore */;
const selectedChannelStore = importDefault(1934) /* metro dependency 1934: SelectedChannelStore */;
const env0_11 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
const env0_14 = {'revision': 0, 'firstUse': 0};
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
let value = _fun95868(Store);
value.displayName = 'RequestReviewStore';
value = new value(importDefault(694) /* metro dependency 694: Dispatcher */,
{CONNECTION_OPEN: CONNECTION_OPEN_95871, CONNECTION_RESUMED: function() {
delayShowReviewRequestModal();
}, CONNECTION_CLOSED: closure, CONNECTION_INTERRUPTED: closure, TTI_RECORDED: function(a0) {
env0_12 = a0.tti;
delayShowReviewRequestModal();
}, APP_STATE_UPDATE: function({state}) {
if (state === require(dependencyMap[14]).AppStates.ACTIVE) {
delayShowReviewRequestModal();
} else {
cancelExistingTimeout();
}
}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/RequestReviewStore.tsx');
exports.default = value;
}
function _isNativeReflectConstruct_95860() { // fn#95860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:203, offset: 0x02150cb7, size: 98 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_95860_isNativeReflectConstruct = function() {
return !!result;
})();
}
function delayShowReviewRequestModal() { // fn#95863, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:461, offset: 0x02150d19, size: 142 bytes, params: 1, frame: 16
cancelExistingTimeout();
const RequestReviewNoTTIExperiment = (require(12545) /* metro dependency 12545: RequestReviewNoTTIExperiment */).RequestReviewNoTTIExperiment;
const getConfig = RequestReviewNoTTIExperiment.getConfig;
if (env0_15 && (Reflect.apply(getConfig, RequestReviewNoTTIExperiment,
[{location: 'RequestReviewStore'}]).skipTTICheck || env0_12 !== undefined && env0_12 < 2300)) {
env0_16 = global.setTimeout(showReviewRequestModal, 60000);
}
}
function showReviewRequestModal() { // fn#95864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:730, offset: 0x02150da7, size: 371 bytes, params: 1, frame: 18
var moduleValue2;
var defaultImport;
var defaultImport2;
const rootNavigationRef = (require(4008) /* metro dependency 4008: RootNavigationRefNative */).getRootNavigationRef();
const object2 = {};
let r2 = rootNavigationRef != null && rootNavigationRef.isReady();
if (r2) {
moduleValue2 = require(4007) /* metro dependency 4007: NavigationRouteUtilsNative */;
r2 = moduleValue2.coerceGuildsRoute(rootNavigationRef.getCurrentRoute()) != null;
}
object2.isViewingChat = r2;
object2.isKeyboardOpen = (require(6996) /* metro dependency 6996: useKeyboardIsOpen */).getKeyboardIsOpen();
const getVoiceChannelId = SelectedChannelStore.getVoiceChannelId;
object2.isInVoice = Reflect.apply(getVoiceChannelId, SelectedChannelStore, []) != null;
if (object2.isViewingChat) {
if (object2.isKeyboardOpen) {
defaultImport2 = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
defaultImport2.track(AnalyticEvents.REVIEW_REQUEST_DEFERRED, {is_keyboard_open: object2.isKeyboardOpen,
is_in_voice: object2.isInVoice, is_viewing_chat: object2.isViewingChat});
delayShowReviewRequestModal();
} else if (object2.isInVoice) {
defaultImport2 = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
defaultImport2.track(AnalyticEvents.REVIEW_REQUEST_DEFERRED, {is_keyboard_open: object2.isKeyboardOpen,
is_in_voice: object2.isInVoice, is_viewing_chat: object2.isViewingChat});
delayShowReviewRequestModal();
} else {
defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
defaultImport.track(AnalyticEvents.REVIEW_REQUEST_SHOW_ATTEMPTED);
env0_14.revision = 1;
writePersistedState();
(importDefault(12546) /* metro dependency 12546: requestReviewModal */)();
}
} else {
defaultImport2 = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
defaultImport2.track(AnalyticEvents.REVIEW_REQUEST_DEFERRED, {is_keyboard_open: object2.isKeyboardOpen,
is_in_voice: object2.isInVoice, is_viewing_chat: object2.isViewingChat});
delayShowReviewRequestModal();
}
}
function cancelExistingTimeout() { // fn#95866, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:1531, offset: 0x02150f29, size: 44 bytes, params: 1, frame: 13
if (env0_16 !== -1) {
global.clearTimeout(env0_16);
}
}
function writePersistedState() { // fn#95867, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:1595, offset: 0x02150f55, size: 52 bytes, params: 1, frame: 14
const Storage = (require(587) /* metro dependency 587: Storage */).Storage;
Storage.set(env0_13, env0_14);
}
function _fun95868(a0) { // fn#95868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:1658, offset: 0x02150f89, size: 72 bytes, params: 2, frame: 15
const closure = RequestReviewStore;
env0_7(closure, a0);
return env0_4(closure, [{key: 'initialize', value: value_95870}]);
}
function CONNECTION_OPEN_95871({user, guilds}) { // fn#95871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:2205, offset: 0x02151034, size: 331 bytes, params: 2, frame: 16
var defaultImport;
let firstUse = env0_14.firstUse;
if (firstUse === 0) {
env0_14.firstUse = global.Date.now();
writePersistedState();
}
const object2 = {};
firstUse = env0_14.firstUse;
const Date = global.Date;
object2.isInstallOldEnough = firstUse < Date.now() - 864000000;
object2.isInLargeEnoughGuild = guilds.some(function(a0) {
return a0.member_count >= 5;
});
object2.isAccountVerified = user.verified === true;
object2.isNewRevision = env0_14.revision < 1;
if (object2.isNewRevision) {
defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
defaultImport.track(AnalyticEvents.REVIEW_REQUEST_ELIGIBILITY_CHECKED, {is_hfu: true,
is_install_old_enough: object2.isInstallOldEnough, is_in_large_enough_guild: object2.isInLargeEnoughGuild,
is_account_verified: object2.isAccountVerified});
}
const r1 = object2.isInstallOldEnough && object2.isAccountVerified && object2.isInLargeEnoughGuild && object2.isNewRevision;
delayShowReviewRequestModal();
}
function value_95870() { // fn#95870, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12734:1978, offset: 0x02150fd1, size: 99 bytes, params: 1, frame: 16
const Storage = (require(587) /* metro dependency 587: Storage */).Storage;
env1_14 = Storage.get(env1_13) ?? ({'firstUse': 0, 'revision': 0});
this.waitFor(ApexExperimentStore, ExperimentStore, SelectedChannelStore);
}
@@ -0,0 +1,71 @@
/* Metro module 15701; source: modules/feedback/native/UploadLogsActionSheet.tsx; dependencies: [31, 27, 661, 33, 4501, 697, 6275, 6758, 1244, 4573, 4578, 11216, 683, 4080, 2] */
function _fun120524(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120524, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15909:6, offset: 0x0252dda2, size: 327 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(27) /* metro dependency 27 */).View;
let value = require(661) /* metro dependency 661: Constants */;
const env0_4 = value.AnalyticEvents;
const env0_5 = value.DebugLogCategory;
value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.container = {padding: PX_16};
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.body = {textAlign: 'center', marginBottom: PX_16};
const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object2.buttonSpacer = {height: PX_8};
const env0_8 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/UploadLogsActionSheet.tsx');
exports.default = UploadLogsActionSheet;
}
function UploadLogsActionSheet({mediaSessionId, rtcConnectionId}) { // fn#120525, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15909:456, offset: 0x0252dee9, size: 503 bytes, params: 2, frame: 28
const styles = useStyles();
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const object2 = {};
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const KTjjrG = (require(1244) /* metro dependency 1244: indexNative */).t.KTjjrG;
object2.header = <BottomSheetTitleHeader title={Reflect.apply(string, intl, [KTjjrG])} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text variant="text-sm/normal" color="text-muted" style={styles.body}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ZvRR/t'])}</Text>];
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
string = intl.string;
const EbwFfR = (require(1244) /* metro dependency 1244: indexNative */).t.EbwFfR;
items2[1] = <Button text={Reflect.apply(string, intl, [EbwFfR])} onPress={onPress_120526} />;
items2[2] = <View style={styles.buttonSpacer} />;
items2[3] = <Button text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ETE/oC'])} variant="secondary" onPress={onPress_120527} />;
return (
<BottomSheet {...object2}>
<View style={styles.container}>
{items2}
</View>
</BottomSheet>
);
}
function UploadLogsActionSheetOnPress() { // fn#120526, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15909:889, owner: UploadLogsActionSheet.onPress, offset: 0x0252e0e0, size: 166 bytes, params: 1, frame: 19
const value = environment.__proto__;
const debugUploadManagerModule = require(11216) /* metro dependency 11216: DebugUploadManager */;
const uploadDebugLogFiles = debugUploadManagerModule.uploadDebugLogFiles;
const RTC = DebugLogCategory.RTC;
Reflect.apply(uploadDebugLogFiles, debugUploadManagerModule, [RTC]);
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const DEBUG_LOG_UPLOADED = AnalyticEvents.DEBUG_LOG_UPLOADED;
const mediaSessionIdBinding = mediaSessionId;
const value3 = null;
Reflect.apply(track, defaultImport, [DEBUG_LOG_UPLOADED,
{media_session_id: value3 != mediaSessionIdBinding ? mediaSessionId : value3,
rtc_connection_id: value3 != rtcConnectionId ? rtcConnectionId : value3}]);
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
@@ -0,0 +1,159 @@
/* Metro module 12546; source: modules/feedback/native/requestReviewModal.tsx; dependencies: [5, 27, 3, 12547, 477, 2] */
function _fun95877(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#95877, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12736:6, offset: 0x02151290, size: 193 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = (require(27) /* metro dependency 27 */).NativeModules;
let value = importDefault(3) /* metro dependency 3: Logger */;
value = new value('requestReviewModal');
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/native/requestReviewModal.tsx');
exports.default = function() {
if (require(dependencyMap[4]).isAndroid()) {
_fun95882();
} else {
NativeModules.AppStoreManager.requestReview();
}
};
}
function _showAndroidRatingRequest() { // fn#95878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12736:169, offset: 0x02151351, size: 50 bytes, params: 1, frame: 14
return env0_3(_fun95880).apply(this, arguments);
}
function requestReviewModal() { // fn#95881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12736:491, offset: 0x0215141b, size: 77 bytes, params: 1, frame: 12
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
if (platformUtilsModule.isAndroid()) {
(function() {
return _showAndroidRatingRequest.apply(this, arguments);
})();
} else {
NativeModules.AppStoreManager.requestReview();
}
}
function* _fun95880() { // fn#95880, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12736:242, offset: 0x0215138e, size: 141 bytes, params: 1, frame: 14
var r1;
var binding;
var binding2;
var property;
var value4;
var value5;
var binding3;
var value6;
var requestRating;
var value7;
var value8;
var value9;
var error;
if (true) {
value = environment.__proto__.__proto__;
try {
binding = env2_1;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
binding2 = env2_2;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
property = binding2[3];
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
var value3 = undefined;
try {
value4 = binding(property);
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
value5 = value4 == null;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
if (value5) {
yield value3;
try {
value8 = undefined;
value9 = false;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
if (value9) {
return value8;
}
} else {
try {
binding = env2_1;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
binding3 = env2_2;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
property = binding3[3];
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
value6 = binding(property);
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
requestRating = value6.requestRating;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
try {
value7 = Reflect.apply(requestRating, value6, []);
r1 = value7;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
yield r1;
try {
value8 = undefined;
value9 = false;
} catch (error) {
binding = env2_5;
binding.error('Failed to show Android rating request: ' + error);
return undefined;
}
if (value9) {
return value8;
}
}
}
}
@@ -0,0 +1,27 @@
/* Metro module 15700; source: modules/feedback/shouldShowLogUploadForCategory.tsx; dependencies: [9906, 2] */
function _fun120522(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#120522, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15908:6, offset: 0x0252dcaf, size: 115 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_0 = (require(9906) /* metro dependency 9906: Constants */).FeedbackRating;
const env0_1 = {};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/feedback/shouldShowLogUploadForCategory.tsx');
exports.shouldShowLogUploadForCategory = shouldShowLogUploadForCategory;
}
function shouldShowLogUploadForCategory(a0, a1, a2) { // fn#120523, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15908:244, offset: 0x0252dd22, size: 128 bytes, params: 4, frame: 12
const BAD = FeedbackRating.BAD;
if (a0 !== BAD) {
var NEUTRAL = FeedbackRating.NEUTRAL;
if (a0 !== NEUTRAL) {
return false;
}
}
if (a1 == null) {
return false;
}
const property = env0_1[a1];
const r1 = property != null && property[a2.value] != null ? property[a2.value] : 0.01;
const Math = global.Math;
return Math.random() < r1;
}