Initial commit
This commit is contained in:
commit
af3b49f756
16065 files changed
+2938410
No files matched your search
@@ -0,0 +1,11 @@
|
||||
/* Metro module 15485; source: modules/go_live/native/AndroidAudioCaptureBugWarningExperiment.tsx; dependencies: [1854, 2] */
|
||||
function _fun118550(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118550, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15682:6, offset: 0x024e15f0, size: 147 bytes, params: 8, frame: 20
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
let value = require(1854) /* metro dependency 1854: apex */;
|
||||
value = value.createApexExperiment({'name': '2026-05-android-audio-capture-bug-warning', 'kind': 'user',
|
||||
defaultConfig: {showAudioCaptureBugWarning: false}, variations: {[1]: {showAudioCaptureBugWarning: true}}});
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/AndroidAudioCaptureBugWarningExperiment.tsx');
|
||||
exports.default = value;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
/* Metro module 16189; source: modules/go_live/native/ApplicationStreamingManager.tsx; dependencies: [6, 7, 15, 17, 18, 31, 4399, 4282, 4291, 33, 3, 4496, 16190, 1962, 10801, 8899, 16192, 2] */
|
||||
function _fun125080(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#125080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:6, offset: 0x025cd6f8, size: 379 bytes, params: 8, frame: 20
|
||||
const env0_0 = require;
|
||||
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 */;
|
||||
importAll(31) /* metro dependency 31 */;
|
||||
const applicationStreamingSettingsStore = importDefault(4399) /* metro dependency 4399: ApplicationStreamingSettingsStore */;
|
||||
const env0_9 = (require(4282) /* metro dependency 4282: StreamSettingsConstants */).ApplicationStreamPresets;
|
||||
const env0_10 = (require(4291) /* metro dependency 4291: Constants */).MediaEngineContextTypes;
|
||||
const env0_11 = (require(33) /* metro dependency 33 */).jsx;
|
||||
let value = importDefault(3) /* metro dependency 3: Logger */;
|
||||
value = new value('ApplicationStreamingManager');
|
||||
value.enableNativeLogger(true);
|
||||
value = importDefault(16192) /* metro dependency 16192: ApplicationStreamingManager */;
|
||||
value = _fun125084(value);
|
||||
value = new value();
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/ApplicationStreamingManager.tsx');
|
||||
exports.default = value;
|
||||
}
|
||||
|
||||
function _isNativeReflectConstruct_125081() { // fn#125081, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:251, offset: 0x025cd873, 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_125081_isNativeReflectConstruct = function() {
|
||||
return !!result;
|
||||
})();
|
||||
}
|
||||
|
||||
function _fun125084(a0) { // fn#125084, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:526, offset: 0x025cd8d5, size: 128 bytes, params: 2, frame: 16
|
||||
const closure = ApplicationStreamingManager;
|
||||
env0_7(closure, a0);
|
||||
return env0_4(closure, [{key: 'platformShowStreamFull', value: value_125086}, {key: 'platformHandleStreamStart',
|
||||
value: value_125090}, {key: 'platformHandleVoiceStateUpdate', value: function() {
|
||||
}}]);
|
||||
}
|
||||
|
||||
function value_125086() { // fn#125086, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:903, offset: 0x025cd955, size: 54 bytes, params: 1, frame: 13
|
||||
var environment;
|
||||
let value = environment.__proto__;
|
||||
value = importDefault(4496) /* metro dependency 4496: AlertActionCreators */;
|
||||
value.openLazy({importer: importer_125087});
|
||||
}
|
||||
|
||||
function value_125090({sourceId}) { // fn#125090, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:1051, offset: 0x025cda06, size: 285 bytes, params: 2, frame: 19
|
||||
var r0;
|
||||
var value;
|
||||
var defaultImport;
|
||||
if (sourceId != null) {
|
||||
value = environment.__proto__;
|
||||
defaultImport = importDefault(10801) /* metro dependency 10801: MobileGoLiveUpsellExperiment */;
|
||||
r0 = defaultImport.getConfig({location: 'platformHandleStreamStart'}).showMobileGoLiveUpsell ? ApplicationStreamingSettingsStore.getState() : {'preset': null,
|
||||
|
||||
'resolution': 720, 'fps': 30, 'soundshareEnabled': true, preset: ApplicationStreamPresets.PRESET_CUSTOM};
|
||||
(importDefault(8899) /* metro dependency 8899: AudioActionCreators */).setGoLiveSource({desktopSettings: {sourceId: sourceId,
|
||||
|
||||
sound: r0.soundshareEnabled}, qualityOptions: {preset: r0.preset, resolution: r0.resolution,
|
||||
frameRate: r0.fps},
|
||||
context: MediaEngineContextTypes.STREAM});
|
||||
} else {
|
||||
value = environment.__proto__;
|
||||
env1_12.warn('invalid start_stream: both application + display modes were specified (source-id: ' + sourceId + ')');
|
||||
}
|
||||
}
|
||||
|
||||
function value_125086Importer() { // fn#125087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:942, owner: value_125086.importer, offset: 0x025cd98b, size: 64 bytes, params: 1, frame: 13
|
||||
var environment;
|
||||
let value = environment.__proto__.__proto__;
|
||||
value = require(dependencyMap[13]);
|
||||
value = value(dependencyMap[12], dependencyMap.paths);
|
||||
return value.then(function({default: env0_0}) {
|
||||
return _fun125089;
|
||||
});
|
||||
}
|
||||
|
||||
function _fun125088({default: env0_0}) { // fn#125088, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:976, offset: 0x025cd9cb, size: 23 bytes, params: 2, frame: 2
|
||||
return _fun125089;
|
||||
}
|
||||
|
||||
function _fun125089(a0) { // fn#125089, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16397:991, offset: 0x025cd9e2, size: 36 bytes, params: 2, frame: 13
|
||||
return ((Component) => <Component {...a0} />)(env0_0);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,349 @@
|
||||
/* Metro module 10795; source: modules/go_live/native/MobileGoLiveActionSheet.tsx; dependencies: [57, 31, 4502, 4399, 4492, 1379, 1867, 1934, 1878, 4282, 661, 4291, 33, 4501, 697, 478, 4080, 10795, 1962, 480, 566, 10796, 10801, 6771, 6789, 4017, 8913, 8899, 8990, 1244, 2096, 10802, 10804, 6821, 4573, 3859, 8619, 6275, 6277, 6618, 6231, 7988, 7882, 676, 7987, 8617, 7892, 4578, 7954, 6808, 10794, 2] */
|
||||
function _fun82920(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#82920, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:6, offset: 0x01f06203, size: 667 bytes, params: 8, frame: 25
|
||||
var object2;
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = importDefault(57) /* metro dependency 57 */;
|
||||
let value = importAll(31) /* metro dependency 31 */;
|
||||
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
|
||||
const applicationStreamingSettingsStore = importDefault(4399) /* metro dependency 4399: ApplicationStreamingSettingsStore */;
|
||||
const applicationStreamingStore = importDefault(4492) /* metro dependency 4492: ApplicationStreamingStore */;
|
||||
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
|
||||
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
|
||||
const selectedChannelStore = importDefault(1934) /* metro dependency 1934: SelectedChannelStore */;
|
||||
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
|
||||
const ApplicationStreamPresets = (require(4282) /* metro dependency 4282: StreamSettingsConstants */).ApplicationStreamPresets;
|
||||
const env0_13 = (require(661) /* metro dependency 661: Constants */).ApplicationStreamStates;
|
||||
const env0_14 = (require(4291) /* metro dependency 4291: Constants */).MediaEngineContextTypes;
|
||||
const value2 = require(33) /* metro dependency 33 */;
|
||||
const env0_15 = value2.jsx;
|
||||
const env0_16 = value2.jsxs;
|
||||
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
|
||||
const createStyles = createStylesModule.createStyles;
|
||||
object2 = {};
|
||||
const PX_24 = (importDefault(697) /* metro dependency 697: native */).space.PX_24;
|
||||
object2.wrapper = {gap: PX_24};
|
||||
object2.header = {textAlign: 'center'};
|
||||
const PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
|
||||
object2.section = {marginHorizontal: PX_16};
|
||||
const PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
|
||||
object2.highQualityLabel = {'flexDirection': 'row', 'alignItems': 'center', gap: PX_4};
|
||||
object2.nitroWheelIcon = {'bottom': -1, 'width': 22, 'height': 16};
|
||||
const env0_17 = Reflect.apply(createStyles, createStylesModule, [object2]);
|
||||
const PRESET_MOBILE_DEFAULT = ApplicationStreamPresets.PRESET_MOBILE_DEFAULT;
|
||||
const items2 = [{preset: PRESET_MOBILE_DEFAULT, enabled: true}];
|
||||
object2 = {};
|
||||
const PRESET_MOBILE_PERFORMANCE = ApplicationStreamPresets.PRESET_MOBILE_PERFORMANCE;
|
||||
object2.preset = PRESET_MOBILE_PERFORMANCE;
|
||||
const platformUtilsModule = require(478) /* metro dependency 478: PlatformUtils */;
|
||||
object2.enabled = !platformUtilsModule.isIOS();
|
||||
items2[1] = object2;
|
||||
const PRESET_MOBILE_HIGH_QUALITY = ApplicationStreamPresets.PRESET_MOBILE_HIGH_QUALITY;
|
||||
items2[2] = {preset: PRESET_MOBILE_HIGH_QUALITY, enabled: true};
|
||||
const env0_18 = items2.filter(function(a0) {
|
||||
return a0.enabled;
|
||||
}).map(function(a0) {
|
||||
return a0.preset;
|
||||
});
|
||||
value = value.memo(MobileGoLiveActionSheet);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/MobileGoLiveActionSheet.tsx');
|
||||
exports.default = value;
|
||||
exports.showMobileGoLiveActionSheet = showMobileGoLiveActionSheet;
|
||||
}
|
||||
|
||||
function MobileGoLiveActionSheet() { // fn#82923, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:842, offset: 0x01f064a9, size: 1951 bytes, params: 1, frame: 45
|
||||
var r15;
|
||||
var NativeView;
|
||||
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
|
||||
var object12;
|
||||
var object;
|
||||
var object2;
|
||||
const {preset,
|
||||
soundshareEnabled} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([ApplicationStreamingSettingsStore],
|
||||
function() {
|
||||
return ApplicationStreamingSettingsStore.getState();
|
||||
});
|
||||
const {user,
|
||||
guildPremiumTier} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([UserStore,
|
||||
SelectedChannelStore, ChannelStore, GuildStore], _fun82926);
|
||||
let binding = env0_4;
|
||||
const value4 = binding.useCallback(_fun82927, [user, guildPremiumTier]);
|
||||
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([ApplicationStreamingStore],
|
||||
_fun82928);
|
||||
const isStreaming = value5.isStreaming;
|
||||
const env0_3 = isStreaming;
|
||||
const activeSourceId = value5.activeSourceId;
|
||||
var env0_4 = activeSourceId;
|
||||
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
|
||||
function() {
|
||||
return AccessibilityStore.useReducedMotion;
|
||||
});
|
||||
let defaultImport = importDefault(10801) /* metro dependency 10801: MobileGoLiveUpsellExperiment */;
|
||||
const useConfig = defaultImport.useConfig;
|
||||
const goLiveUpsellVariant = Reflect.apply(useConfig, defaultImport,
|
||||
[{location: 'MobileGoLiveActionSheet'}]).goLiveUpsellVariant;
|
||||
const defaultImport2 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
|
||||
const MOBILE_GO_LIVE_ACTION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).MOBILE_GO_LIVE_ACTION_SHEET;
|
||||
const analyticsLocations = defaultImport2(MOBILE_GO_LIVE_ACTION_SHEET).analyticsLocations;
|
||||
const styles = useStyles();
|
||||
let useState = binding.useState;
|
||||
const PRESET_MOBILE_DEFAULT = ApplicationStreamPresets.PRESET_MOBILE_DEFAULT;
|
||||
let r9 = preset === PRESET_MOBILE_DEFAULT || preset === ApplicationStreamPresets.PRESET_MOBILE_PERFORMANCE;
|
||||
r9 = !r9 ? preset === ApplicationStreamPresets.PRESET_MOBILE_HIGH_QUALITY : r9;
|
||||
const value9 = Reflect.apply(useState, binding,
|
||||
[r9 && env0_18.includes(preset) && value4(preset) ? preset : ApplicationStreamPresets.PRESET_MOBILE_DEFAULT]);
|
||||
binding = env0_3;
|
||||
const value10 = binding(value9, 2);
|
||||
const property = value10[0];
|
||||
const env0_8 = value10[1];
|
||||
const binding3 = env0_4;
|
||||
useState = binding3.useState;
|
||||
const value11 = binding(Reflect.apply(useState, binding3, [soundshareEnabled]), 2);
|
||||
const property2 = value11[0];
|
||||
const env0_10 = value11[1];
|
||||
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
|
||||
const useSharedValue = reanimatedRexportModule.useSharedValue;
|
||||
const PRESET_MOBILE_HIGH_QUALITY = ApplicationStreamPresets.PRESET_MOBILE_HIGH_QUALITY;
|
||||
const value12 = Reflect.apply(useSharedValue, reanimatedRexportModule, [!value4(PRESET_MOBILE_HIGH_QUALITY)]);
|
||||
const env0_11 = binding3.useCallback(_fun82930, [user, guildPremiumTier, activeSourceId, isStreaming]);
|
||||
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
|
||||
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
|
||||
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
|
||||
const SafeAreaPaddingView = (require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView;
|
||||
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
const string = intl.string;
|
||||
const CrNjqp = (importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).CrNjqp;
|
||||
const items2 = [<Text style={styles.header} variant="redesign/heading-18/bold" color="text-strong" accessibilityRole="header">{Reflect.apply(string,
|
||||
intl, [CrNjqp])}</Text>];
|
||||
const NativeView2 = importDefault(6821) /* metro dependency 6821: NativeView */;
|
||||
let section = styles.section;
|
||||
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
|
||||
const tableRowGroupProps = {title: (require(1244) /* metro dependency 1244: indexNative */).intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */)['/XSr8v']),
|
||||
hasIcons: false};
|
||||
const TableRadioGroup = (require(7988) /* metro dependency 7988: TableRadioGroupNative */).TableRadioGroup;
|
||||
items2[1] = <NativeView2 style={section}><TableRowGroup {...tableRowGroupProps}><TableRadioGroup value={property} onChange={onChange_82931} hasIcons>{env0_18.map(_fun82932)}</TableRadioGroup></TableRowGroup></NativeView2>;
|
||||
let r13 = goLiveUpsellVariant === 'one-step' && value12.get() && <NativeView2 style={styles.section}>{((Component) => <Component featureName={(require(7892) /* metro dependency 7892: EntitlementFeatureNames */).EntitlementFeatureNames.STREAM_HIGH_QUALITY} shouldShow={value12} />)(importDefault(8617) /* metro dependency 8617: PremiumFeatureUpsell */)}</NativeView2>;
|
||||
items2[2] = r13;
|
||||
r13 = goLiveUpsellVariant === 'two-step' && value12.get();
|
||||
if (r13) {
|
||||
NativeView = NativeView2;
|
||||
r13 = <NativeView style={styles.section}><Button text={intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).u72Prd)} size="lg" onPress={function() {
|
||||
var defaultImport = importDefault(dependencyMap[42]);
|
||||
var object = {};
|
||||
object.initialUpsellKey = require(dependencyMap[43]).UpsellTypes.STREAM_HIGH_QUALITY;
|
||||
object.analyticsLocations = analyticsLocations;
|
||||
defaultImport.handleShowUpsellAlert(object);
|
||||
}} icon={((NitroWheelIcon) => <NitroWheelIcon style={styles.nitroWheelIcon} color={(importDefault(697) /* metro dependency 697: native */).colors.WHITE} size="custom" />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)} iconPosition="start" variant="experimental_premium-primary" shiny={!useReducedMotion} /></NativeView>;
|
||||
}
|
||||
items2[3] = r13;
|
||||
const defaultImport7 = NativeView2;
|
||||
section = styles.section;
|
||||
const tableRowGroupProps2 = {title: (require(1244) /* metro dependency 1244: indexNative */).intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */)['j+eAMQ']),
|
||||
hasIcons: false};
|
||||
const TableSwitchRow = (require(6808) /* metro dependency 6808: TableSwitchRowNative */).TableSwitchRow;
|
||||
items2[4] = ((Component) => <Component style={section}><TableRowGroup {...tableRowGroupProps2}><TableSwitchRow label={intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).uwMBDo)} value={property2} onValueChange={onValueChange_82934} /></TableRowGroup></Component>)(defaultImport7);
|
||||
const defaultImport8 = NativeView2;
|
||||
section = styles.section;
|
||||
if (isStreaming) {
|
||||
object2 = {'size': 'lg', 'variant': 'destructive'};
|
||||
object2.text = intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).OsS9Ll);
|
||||
object2.onPress = onPress_82935;
|
||||
r15 = object2;
|
||||
} else {
|
||||
object = {'size': 'lg', 'variant': 'primary'};
|
||||
object.text = intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */)['3wwZ/Q']);
|
||||
object.onPress = onPress_82936;
|
||||
r15 = object;
|
||||
}
|
||||
items2[5] = ((Component) => <Component style={section}><Button {...r15} /></Component>)(defaultImport8);
|
||||
return (
|
||||
<AnalyticsLocationProvider value={analyticsLocations}>
|
||||
<BottomSheet startExpanded>
|
||||
<BottomSheetScrollView>
|
||||
<SafeAreaPaddingView bottom style={styles.wrapper}>
|
||||
{items2}
|
||||
</SafeAreaPaddingView>
|
||||
</BottomSheetScrollView>
|
||||
</BottomSheet>
|
||||
</AnalyticsLocationProvider>
|
||||
);
|
||||
}
|
||||
|
||||
function showMobileGoLiveActionSheet(a0) { // fn#82937, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:5605, offset: 0x01f07375, size: 126 bytes, params: 2, frame: 18
|
||||
const defaultImport = importDefault(dependencyMap[16]);
|
||||
const openLazy = defaultImport.openLazy;
|
||||
let value = require(dependencyMap[18]);
|
||||
value = value(dependencyMap[17], dependencyMap.paths);
|
||||
const ImpressionNames = require(dependencyMap[19]).ImpressionNames;
|
||||
const MOBILE_GO_LIVE_ACTION_SHEET = ImpressionNames.MOBILE_GO_LIVE_ACTION_SHEET;
|
||||
Reflect.apply(openLazy, defaultImport, [value, 'MobileGoLiveActionSheet',
|
||||
{impressionName: MOBILE_GO_LIVE_ACTION_SHEET, impressionProperties: {location_stack: a0}}]);
|
||||
}
|
||||
|
||||
function getTableRadioRowConfig(a0) { // fn#82924, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:2465, owner: MobileGoLiveActionSheet.getTableRadioRowConfig, offset: 0x01f06c48, size: 798 bytes, params: 2, frame: 33
|
||||
var r5;
|
||||
var intl2;
|
||||
const value = environment.__proto__;
|
||||
const getStreamSettingsForPresetModule = require(10796) /* metro dependency 10796: getStreamSettingsForPreset */;
|
||||
let getMaxSettingsForPreset = getStreamSettingsForPresetModule.getMaxSettingsForPreset;
|
||||
let PRESET_MOBILE_DEFAULT = ApplicationStreamPresets.PRESET_MOBILE_DEFAULT;
|
||||
const value2 = Reflect.apply(getMaxSettingsForPreset, getStreamSettingsForPresetModule, [PRESET_MOBILE_DEFAULT]);
|
||||
const moduleValue2 = getStreamSettingsForPresetModule;
|
||||
getMaxSettingsForPreset = moduleValue2.getMaxSettingsForPreset;
|
||||
let PRESET_MOBILE_PERFORMANCE = ApplicationStreamPresets.PRESET_MOBILE_PERFORMANCE;
|
||||
const value3 = Reflect.apply(getMaxSettingsForPreset, moduleValue2, [PRESET_MOBILE_PERFORMANCE]);
|
||||
const moduleValue3 = getStreamSettingsForPresetModule;
|
||||
getMaxSettingsForPreset = moduleValue3.getMaxSettingsForPreset;
|
||||
let PRESET_MOBILE_HIGH_QUALITY = ApplicationStreamPresets.PRESET_MOBILE_HIGH_QUALITY;
|
||||
const value4 = Reflect.apply(getMaxSettingsForPreset, moduleValue3, [PRESET_MOBILE_HIGH_QUALITY]);
|
||||
const object6 = {value: a0};
|
||||
const object7 = {};
|
||||
PRESET_MOBILE_DEFAULT = ApplicationStreamPresets.PRESET_MOBILE_DEFAULT;
|
||||
const object8 = {};
|
||||
const MobilePhoneIcon = (require(8990) /* metro dependency 8990: MobilePhoneIcon */).MobilePhoneIcon;
|
||||
object8.icon = <MobilePhoneIcon />;
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
object8.label = intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */)['2qmQ8N']);
|
||||
const value5 = '';
|
||||
object8.subLabel = value2 != null ? intl.formatToPlainString((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).ibH7vy,
|
||||
value2) : value5;
|
||||
object7[PRESET_MOBILE_DEFAULT] = object8;
|
||||
PRESET_MOBILE_PERFORMANCE = ApplicationStreamPresets.PRESET_MOBILE_PERFORMANCE;
|
||||
const object9 = {};
|
||||
const SpeedometerIcon = (require(10802) /* metro dependency 10802: SpeedometerIcon */).SpeedometerIcon;
|
||||
object9.icon = <SpeedometerIcon />;
|
||||
object9.label = intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */)['5eO4/m']);
|
||||
object9.subLabel = value3 != null ? intl.formatToPlainString((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).fN0UQY,
|
||||
value3) : value5;
|
||||
object7[PRESET_MOBILE_PERFORMANCE] = object9;
|
||||
PRESET_MOBILE_HIGH_QUALITY = ApplicationStreamPresets.PRESET_MOBILE_HIGH_QUALITY;
|
||||
const object10 = {};
|
||||
const ImageSparkleIcon = (require(10804) /* metro dependency 10804: ImageSparkleIcon */).ImageSparkleIcon;
|
||||
object10.icon = <ImageSparkleIcon />;
|
||||
const NativeView = importDefault(6821) /* metro dependency 6821: NativeView */;
|
||||
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
|
||||
const text = <Text variant="text-md/semibold" color="text-strong">{intl.string((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).nMcXo1)}</Text>;
|
||||
const BaseIconImage = (require(3859) /* metro dependency 3859: BaseIconImage */).BaseIconImage;
|
||||
object10.label = <NativeView style={styles.highQualityLabel}>{text}<BaseIconImage source={importDefault(8619) /* metro dependency 8619 */} size="xs" /></NativeView>;
|
||||
if (value4 != null) {
|
||||
intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
r5 = intl2.formatToPlainString((importDefault(2096) /* metro dependency 2096: MobileGoLiveActionSheetMessages */).q4gYBi,
|
||||
|
||||
value4);
|
||||
} else {
|
||||
r5 = value5;
|
||||
}
|
||||
object10.subLabel = r5;
|
||||
object7[PRESET_MOBILE_HIGH_QUALITY] = object10;
|
||||
copyDataProperties(object6, object7[a0], intl);
|
||||
return object6;
|
||||
}
|
||||
|
||||
function _fun82926() { // fn#82926, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:1021, offset: 0x01f06f79, size: 108 bytes, params: 1, frame: 16
|
||||
let value = environment.__proto__;
|
||||
const currentUser = UserStore.getCurrentUser();
|
||||
const getChannel = ChannelStore.getChannel;
|
||||
const getVoiceChannelId = SelectedChannelStore.getVoiceChannelId;
|
||||
const value3 = Reflect.apply(getChannel, ChannelStore, [Reflect.apply(getVoiceChannelId, SelectedChannelStore, [])]);
|
||||
const object2 = {user: currentUser};
|
||||
value = undefined;
|
||||
const guild = GuildStore.getGuild(value3 == null ? value : value3.getGuildId());
|
||||
object2.guildPremiumTier = guild == null ? value : guild.premiumTier;
|
||||
return object2;
|
||||
}
|
||||
|
||||
function _fun82927(a0) { // fn#82927, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:1246, offset: 0x01f06fe5, size: 54 bytes, params: 2, frame: 15
|
||||
let value = environment.__proto__;
|
||||
value = require(10796) /* metro dependency 10796: getStreamSettingsForPreset */;
|
||||
return value.canStreamWithPreset(a0, user, guildPremiumTier);
|
||||
}
|
||||
|
||||
function _fun82928() { // fn#82928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:1334, offset: 0x01f0701b, size: 100 bytes, params: 1, frame: 13
|
||||
let value = environment.__proto__;
|
||||
const currentUserActiveStream = ApplicationStreamingStore.getCurrentUserActiveStream();
|
||||
const object2 = {};
|
||||
const value3 = null;
|
||||
object2.isStreaming = value3 != currentUserActiveStream && currentUserActiveStream.state === ApplicationStreamStates.ACTIVE;
|
||||
value = ApplicationStreamingStore.getStreamerActiveStreamMetadata();
|
||||
const sourceId = value3 == value ? undefined : value.sourceId;
|
||||
object2.activeSourceId = value3 != sourceId ? sourceId : value3;
|
||||
return object2;
|
||||
}
|
||||
|
||||
function _fun82930(a0, a1) { // fn#82930, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:2114, offset: 0x01f0707f, size: 260 bytes, params: 3, frame: 22
|
||||
var object2;
|
||||
var moduleValue;
|
||||
var updateStreamSettings;
|
||||
const value = environment.__proto__;
|
||||
const value4 = env1_3((importDefault(10796) /* metro dependency 10796: getStreamSettingsForPreset */)(a0, user,
|
||||
guildPremiumTier) ?? [], 2);
|
||||
const property = value4[0];
|
||||
const property2 = value4[1];
|
||||
if (property != null) {
|
||||
if (property2 != null) {
|
||||
moduleValue = require(8913) /* metro dependency 8913: StreamActionCreators */;
|
||||
updateStreamSettings = moduleValue.updateStreamSettings;
|
||||
object2 = {preset: a0, resolution: property, frameRate: property2, soundshareEnabled: a1};
|
||||
Reflect.apply(updateStreamSettings, moduleValue, [object2]);
|
||||
if (isStreaming) {
|
||||
object2 = {};
|
||||
object2.qualityOptions = {preset: a0, resolution: property, frameRate: property2};
|
||||
object2.context = MediaEngineContextTypes.STREAM;
|
||||
if (activeSourceId != null) {
|
||||
object2.desktopSettings = {sourceId: activeSourceId, sound: a1};
|
||||
}
|
||||
(importDefault(8899) /* metro dependency 8899: AudioActionCreators */).setGoLiveSource(object2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function MobileGoLiveActionSheetOnChange(a0) { // fn#82931, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:4017, owner: MobileGoLiveActionSheet.onChange, offset: 0x01f07183, size: 172 bytes, params: 2, frame: 18
|
||||
var value2;
|
||||
var defaultImport;
|
||||
var handleShowUpsellAlert;
|
||||
var object2;
|
||||
var value;
|
||||
if (env0_2(a0)) {
|
||||
env0_8(a0);
|
||||
env0_11(a0, env0_9);
|
||||
if (isStreaming) {
|
||||
value = environment.__proto__;
|
||||
value = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
|
||||
value.hideActionSheet('MobileGoLiveActionSheet');
|
||||
}
|
||||
} else {
|
||||
value2 = environment.__proto__;
|
||||
defaultImport = importDefault(7882) /* metro dependency 7882: PremiumUpsellUtils */;
|
||||
handleShowUpsellAlert = defaultImport.handleShowUpsellAlert;
|
||||
object2 = {};
|
||||
object2.initialUpsellKey = (require(676) /* metro dependency 676: ConstantsIOS */).UpsellTypes.STREAM_HIGH_QUALITY;
|
||||
object2.analyticsLocations = analyticsLocations;
|
||||
Reflect.apply(handleShowUpsellAlert, defaultImport, [object2]);
|
||||
}
|
||||
}
|
||||
|
||||
function _fun82932(a0) { // fn#82932, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:4213, offset: 0x01f0722f, size: 68 bytes, params: 2, frame: 16
|
||||
const TableRadioRow = (require(7987) /* metro dependency 7987: TableRadioRowNative */).TableRadioRow;
|
||||
return <TableRadioRow {...getTableRadioRowConfig(a0)} key={a0} />;
|
||||
}
|
||||
|
||||
function MobileGoLiveActionSheetOnValueChange(a0) { // fn#82934, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:5096, owner: MobileGoLiveActionSheet.onValueChange, offset: 0x01f072c8, size: 33 bytes, params: 2, frame: 13
|
||||
env0_10(a0);
|
||||
env0_11(env0_7, a0);
|
||||
}
|
||||
|
||||
function MobileGoLiveActionSheetOnPress_82935() { // fn#82935, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:5260, owner: MobileGoLiveActionSheet.onPress, offset: 0x01f072e9, size: 70 bytes, params: 1, frame: 13
|
||||
const value = environment.__proto__;
|
||||
(require(10794) /* metro dependency 10794: useScreenshareUtils */).stopScreenshare();
|
||||
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet('MobileGoLiveActionSheet');
|
||||
}
|
||||
|
||||
function MobileGoLiveActionSheetOnPress_82936() { // fn#82936, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10981:5405, owner: MobileGoLiveActionSheet.onPress, offset: 0x01f0732f, size: 70 bytes, params: 1, frame: 14
|
||||
const value = environment.__proto__;
|
||||
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet('MobileGoLiveActionSheet');
|
||||
(require(10794) /* metro dependency 10794: useScreenshareUtils */).startStream();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
/* Metro module 10801; source: modules/go_live/native/MobileGoLiveUpsellExperiment.tsx; dependencies: [1854, 2] */
|
||||
function _fun82959(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#82959, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10987:6, offset: 0x01f08144, size: 172 bytes, params: 8, frame: 19
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
let value = require(1854) /* metro dependency 1854: apex */;
|
||||
value = value.createApexExperiment({'name': '2026-04-mobile-go-live-upsell', 'kind': 'user',
|
||||
defaultConfig: {showMobileGoLiveUpsell: false}, variations: {[1]: {'showMobileGoLiveUpsell': true,
|
||||
'goLiveUpsellVariant': 'one-step'}, [2]: {'showMobileGoLiveUpsell': true, 'goLiveUpsellVariant': 'two-step'}}});
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/MobileGoLiveUpsellExperiment.tsx');
|
||||
exports.default = value;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,198 @@
|
||||
/* Metro module 10689; source: modules/go_live/native/StreamQualityLiveIndicator.tsx; dependencies: [57, 31, 27, 661, 1880, 4291, 33, 4501, 697, 7723, 8620, 6771, 4017, 4504, 1305, 8912, 10690, 683, 5080, 7028, 1962, 7940, 3802, 5278, 5475, 7938, 2] */
|
||||
function _fun82165(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#82165, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10875:6, offset: 0x01eed06a, size: 568 bytes, params: 8, frame: 24
|
||||
var object4;
|
||||
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(661) /* metro dependency 661: Constants */).AnalyticEvents;
|
||||
let value = require(1880) /* metro dependency 1880: PremiumConstants */;
|
||||
const env0_7 = value.PremiumTypes;
|
||||
const env0_8 = value.PremiumUpsellTypes;
|
||||
const env0_9 = (require(4291) /* metro dependency 4291: Constants */).ResolutionTypes;
|
||||
value = require(33) /* metro dependency 33 */;
|
||||
const env0_10 = value.jsx;
|
||||
const env0_11 = value.jsxs;
|
||||
value = require(4501) /* metro dependency 4501: createStyles */;
|
||||
const createStyles = value.createStyles;
|
||||
object4 = {liveIndicator: {'flexDirection': 'row', 'alignItems': 'center', 'height': 18}};
|
||||
const object5 = {};
|
||||
object5.borderBottomLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.none;
|
||||
object5.borderTopLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.none;
|
||||
object5.height = 18;
|
||||
object5.textAlign = 'center';
|
||||
object4.liveTag = object5;
|
||||
const object6 = {'borderBottomLeftRadius': null, 'borderTopLeftRadius': null, 'backgroundColor': null,
|
||||
'opacity': 0.8, 'paddingLeft': 8, 'paddingRight': 4, 'flexDirection': 'row', 'alignItems': 'center',
|
||||
'height': 18};
|
||||
object6.borderBottomLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
||||
object6.borderTopLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
||||
const PRIMARY_800 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_800;
|
||||
object6.backgroundColor = PRIMARY_800;
|
||||
object4.qualityTag = object6;
|
||||
object4.qualityTagText = {'color': '#fff', 'textAlign': 'center', 'fontWeight': '700'};
|
||||
const PRIMARY_300 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_300;
|
||||
object4.reducedQualityTagText = {color: PRIMARY_300};
|
||||
object4.nitroWheel = {'width': 20, 'marginLeft': -4};
|
||||
const env0_12 = Reflect.apply(createStyles, value, [object4]);
|
||||
object4 = {code: 'function StreamQualityLiveIndicatorTsx1(){const{withTiming,reveal,STANDARD_EASING}=this.__closure;return{opacity:withTiming(reveal?1:0,{easing:STANDARD_EASING,duration:250})};}'};
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/StreamQualityLiveIndicator.tsx');
|
||||
exports.default = _default_82166;
|
||||
}
|
||||
|
||||
function _default_82166({participant, style}) { // fn#82166, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10875:1072, offset: 0x01eed2a2, size: 1381 bytes, params: 2, frame: 40
|
||||
var r23;
|
||||
var r3;
|
||||
var r0;
|
||||
var r02;
|
||||
var property2;
|
||||
var moduleValue4;
|
||||
var isPremiumFPS2;
|
||||
var error;
|
||||
var property3;
|
||||
var moduleValue5;
|
||||
var isPremiumResolution2;
|
||||
var defaultImport2;
|
||||
var defaultImport4;
|
||||
var View2;
|
||||
var PressableOpacity;
|
||||
var items3;
|
||||
var LegacyText;
|
||||
var object5;
|
||||
var moduleValue6;
|
||||
var value19;
|
||||
var moduleValue7;
|
||||
var env0_0;
|
||||
var env0_1;
|
||||
const styles = useStyles();
|
||||
let binding = env0_4;
|
||||
const useContext = binding.useContext;
|
||||
const RevealContext = require(dependencyMap[9]).RevealContext;
|
||||
const reveal = Reflect.apply(useContext, binding, [RevealContext]).reveal;
|
||||
let moduleValue = require(dependencyMap[10]);
|
||||
const useAnalyticsContext = moduleValue.useAnalyticsContext;
|
||||
const location = Reflect.apply(useAnalyticsContext, moduleValue, []).location;
|
||||
const env0_3 = location;
|
||||
const analyticsLocations = importDefault(dependencyMap[11])().analyticsLocations;
|
||||
var env0_4 = analyticsLocations;
|
||||
const [property, env0_6] = env0_3(binding.useState(false), 2);
|
||||
const moduleValue2 = require(dependencyMap[12]);
|
||||
const useAnimatedStyle = moduleValue2.useAnimatedStyle;
|
||||
const closure = function() {
|
||||
var r2;
|
||||
var moduleValue = require(dependencyMap[13]);
|
||||
var withTiming = moduleValue.withTiming;
|
||||
r2 = reveal ? 1 : 0;
|
||||
var object2 = {};
|
||||
object2.easing = require(dependencyMap[14]).STANDARD_EASING;
|
||||
object2.duration = 250;
|
||||
return {opacity: Reflect.apply(withTiming, moduleValue, [r2, object2])};
|
||||
};
|
||||
let object2 = {};
|
||||
object2.withTiming = require(dependencyMap[13]).withTiming;
|
||||
object2.reveal = reveal;
|
||||
const STANDARD_EASING = require(dependencyMap[14]).STANDARD_EASING;
|
||||
object2.STANDARD_EASING = STANDARD_EASING;
|
||||
closure.__closure = object2;
|
||||
closure.__workletHash = 14676679064575;
|
||||
closure.__initData = env0_13;
|
||||
const value6 = Reflect.apply(useAnimatedStyle, moduleValue2, [closure]);
|
||||
const value7 = require(dependencyMap[15]).useMaxQuality(participant);
|
||||
const value10 = importDefault(dependencyMap[16])(participant) != null;
|
||||
try {
|
||||
property2 = dependencyMap[15];
|
||||
moduleValue4 = require(property2);
|
||||
isPremiumFPS2 = moduleValue4.isPremiumFPS(value7);
|
||||
env0_0 = isPremiumFPS2;
|
||||
r23 = isPremiumFPS2;
|
||||
} catch (error) {
|
||||
env0_0 = false;
|
||||
r23 = false;
|
||||
}
|
||||
try {
|
||||
property3 = dependencyMap[15];
|
||||
moduleValue5 = require(property3);
|
||||
isPremiumResolution2 = moduleValue5.isPremiumResolution(value7);
|
||||
env0_1 = isPremiumResolution2;
|
||||
r3 = isPremiumResolution2;
|
||||
} catch (error) {
|
||||
env0_1 = false;
|
||||
r3 = false;
|
||||
}
|
||||
const r14 = r23 || r3;
|
||||
binding = env0_4;
|
||||
binding.useEffect(_fun82168, [analyticsLocations, property, r14, r23, r3]);
|
||||
const value11 = binding.useCallback(_fun82169, [location, analyticsLocations]);
|
||||
const defaultImport = importDefault(dependencyMap[22]);
|
||||
const isPremium = defaultImport.isPremium;
|
||||
let user = participant.user;
|
||||
let TIER_1 = PremiumTypes.TIER_1;
|
||||
const isPremium2 = Reflect.apply(isPremium, defaultImport, [user, TIER_1]);
|
||||
if (isPremium2) {
|
||||
r0 = !isPremium2;
|
||||
} else {
|
||||
defaultImport2 = importDefault(dependencyMap[22]);
|
||||
r0 = !defaultImport2.canStreamQuality(importDefault(dependencyMap[22]).StreamQuality.MID, participant.user);
|
||||
}
|
||||
const defaultImport3 = importDefault(dependencyMap[22]);
|
||||
const isPremiumExactly = defaultImport3.isPremiumExactly;
|
||||
user = participant.user;
|
||||
TIER_1 = PremiumTypes.TIER_1;
|
||||
const r1 = Reflect.apply(isPremiumExactly, defaultImport3, [user,
|
||||
TIER_1]) && (value7 == null ? undefined : value7.maxResolution.type) === ResolutionTypes.SOURCE;
|
||||
if (r1) {
|
||||
defaultImport4 = importDefault(dependencyMap[22]);
|
||||
r02 = !defaultImport4.canStreamQuality(importDefault(dependencyMap[22]).StreamQuality.HIGH);
|
||||
} else {
|
||||
r02 = r1;
|
||||
}
|
||||
if (value7 == null) {
|
||||
r0 = null;
|
||||
} else {
|
||||
View2 = importDefault(dependencyMap[12]).View;
|
||||
var view2Props = {pointerEvents: r14 && (r0 || r02) ? 'auto' : 'none', style: [style, value6]};
|
||||
PressableOpacity = require(dependencyMap[23]).PressableOpacity;
|
||||
var pressableOpacityProps = {accessibilityRole: 'button', style: [styles.liveIndicator, style],
|
||||
onPress: value11};
|
||||
var viewBindingProps = {style: styles.qualityTag};
|
||||
items3 = [r14 && ((Component) => <Component source={importDefault(dependencyMap[25])} style={styles.nitroWheel} resizeMode="contain" />)(importDefault(dependencyMap[24]))];
|
||||
LegacyText = require(dependencyMap[14]).LegacyText;
|
||||
var legacyTextProps = {style: [styles.qualityTagText, value10 ? styles.reducedQualityTagText : null]};
|
||||
moduleValue6 = require(dependencyMap[15]);
|
||||
value19 = moduleValue6.getResolutionText(value7.maxResolution);
|
||||
moduleValue7 = require(dependencyMap[15]);
|
||||
items3[1] = <LegacyText {...legacyTextProps}>{'' + value19 + ' ' + moduleValue7.getFPSText(value7.maxFrameRate)}</LegacyText>;
|
||||
r0 = <View2 {...view2Props}><PressableOpacity {...pressableOpacityProps}><View {...viewBindingProps}>{items3}</View>{((LiveTag) => <LiveTag style={styles.liveTag} />)(require(dependencyMap[14]).LiveTag)}</PressableOpacity></View2>;
|
||||
}
|
||||
return r0;
|
||||
}
|
||||
|
||||
function _fun82168() { // fn#82168, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10875:1721, offset: 0x01eed86a, size: 128 bytes, params: 1, frame: 16
|
||||
var value3;
|
||||
var defaultImport;
|
||||
if (!env0_5 && env0_7) {
|
||||
value3 = environment.__proto__;
|
||||
defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
|
||||
defaultImport.track(AnalyticEvents.PREMIUM_UPSELL_VIEWED, {type: PremiumUpsellTypes.STREAM_QUALITY_INDICATOR,
|
||||
has_premium_stream_fps: env0_0, has_premium_stream_resolution: env0_1, location_stack: analyticsLocations});
|
||||
env0_6(true);
|
||||
}
|
||||
}
|
||||
|
||||
function _fun82169() { // fn#82169, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10875:1925, offset: 0x01eed8ea, size: 125 bytes, params: 1, frame: 18
|
||||
let value = environment.__proto__;
|
||||
const defaultImport = importDefault(dependencyMap[18]);
|
||||
const pushLazy = defaultImport.pushLazy;
|
||||
value = require(dependencyMap[20]);
|
||||
value = value(dependencyMap[19], dependencyMap.paths);
|
||||
const object2 = {};
|
||||
object2.analyticsLocation = location;
|
||||
object2.analyticsLocations = analyticsLocations;
|
||||
const PremiumFeatureCardOrder = require(dependencyMap[21]).PremiumFeatureCardOrder;
|
||||
const TIER_0_LEADING = PremiumFeatureCardOrder.TIER_0_LEADING;
|
||||
object2.premiumFeatureCardOrder = TIER_0_LEADING;
|
||||
Reflect.apply(pushLazy, defaultImport, [value, object2]);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,414 @@
|
||||
/* Metro module 4491; source: modules/go_live/native/VoiceEngineStreamingManager.tsx; dependencies: [6, 7, 15, 17, 18, 99, 100, 5, 27, 4492, 1379, 1934, 661, 4237, 3, 4041, 3829, 694, 507, 4285, 8913, 4261, 44, 7712, 1478, 10794, 10741, 1244, 4561, 2] */
|
||||
function _fun38261(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#38261, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:6, offset: 0x010bb011, size: 596 bytes, params: 8, frame: 22
|
||||
const env0_0 = require;
|
||||
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 env0_8 = importDefault(99) /* metro dependency 99 */;
|
||||
let value = importDefault(100) /* metro dependency 100 */;
|
||||
const env0_9 = importDefault(5) /* metro dependency 5 */;
|
||||
const env0_10 = (require(27) /* metro dependency 27 */).Linking;
|
||||
const applicationStreamingStore = importDefault(4492) /* metro dependency 4492: ApplicationStreamingStore */;
|
||||
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
|
||||
const selectedChannelStore = importDefault(1934) /* metro dependency 1934: SelectedChannelStore */;
|
||||
const constantsModule = require(661) /* metro dependency 661: Constants */;
|
||||
const env0_14 = constantsModule.Base64JPEGPrefix;
|
||||
const env0_15 = constantsModule.Endpoints;
|
||||
const env0_16 = constantsModule.NOOP_NULL;
|
||||
const env0_17 = constantsModule.IOS_BUNDLE_ID;
|
||||
const env0_18 = (require(4237) /* metro dependency 4237: Constants */).getAppIntentScheme;
|
||||
const logger = importDefault(3) /* metro dependency 3: Logger */;
|
||||
const value5 = Object.create(logger.prototype, {constructor: {value: logger}});
|
||||
const logger2 = new logger('VoiceEngineStreamingManager');
|
||||
(logger2 instanceof Object ? logger2 : value5).enableNativeLogger(true);
|
||||
const Timeout = (require(4041) /* metro dependency 4041: Timers */).Timeout;
|
||||
let timeout = new Timeout();
|
||||
timeout = new Timeout();
|
||||
const env0_23 = [];
|
||||
const env0_24 = _fun38265();
|
||||
const env0_25 = selectedChannelStore.getVoiceChannelId();
|
||||
const env0_26 = value('handleVoiceChannelSelect');
|
||||
value = importDefault(4561) /* metro dependency 4561: LifecycleManager */;
|
||||
value = _fun38270(value);
|
||||
value = new value();
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/go_live/native/VoiceEngineStreamingManager.tsx');
|
||||
exports.default = value;
|
||||
}
|
||||
|
||||
function _isNativeReflectConstruct_38262() { // fn#38262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:336, offset: 0x010bb265, size: 94 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_38262_isNativeReflectConstruct = function() {
|
||||
return !!result;
|
||||
})();
|
||||
}
|
||||
|
||||
function _fun38265() { // fn#38265, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:666, offset: 0x010bb2c3, size: 32 bytes, params: 1, frame: 12
|
||||
const env0_0 = env0_9(_fun38267);
|
||||
return _fun38269;
|
||||
}
|
||||
|
||||
function _fun38270(a0) { // fn#38270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1167, offset: 0x010bb456, size: 116 bytes, params: 2, frame: 16
|
||||
const closure = VoiceEngineStreamingManager;
|
||||
env0_7(closure, a0);
|
||||
return env0_4(closure, [{key: '_initialize', value: value_38274}, {key: '_terminate', value: value_38281},
|
||||
{key: 'getApplicationNames', value: value_38282}]);
|
||||
}
|
||||
|
||||
function* _fun38267(a0, a1) { // fn#38267, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:686, offset: 0x010bb2ec, size: 334 bytes, params: 3, frame: 20
|
||||
var environment;
|
||||
var binding;
|
||||
var DisableStreamPreviews;
|
||||
var getSetting;
|
||||
var stop;
|
||||
var HermesInternal;
|
||||
var concat;
|
||||
var value3;
|
||||
var value4;
|
||||
var dispatch;
|
||||
var object3;
|
||||
var binding2;
|
||||
var property;
|
||||
var value5;
|
||||
var HTTP;
|
||||
var post;
|
||||
var STREAM_PREVIEW;
|
||||
var value6;
|
||||
var object4;
|
||||
var value7;
|
||||
var value8;
|
||||
var value9;
|
||||
var error;
|
||||
var error2;
|
||||
var start;
|
||||
if (true) {
|
||||
reduciblePort28: while (true) {
|
||||
exceptionLanding27: while (true) {
|
||||
var env0_0 = a0;
|
||||
var env0_1 = a1;
|
||||
value = environment.__proto__.__proto__;
|
||||
binding = env2_0;
|
||||
DisableStreamPreviews = binding(env2_2[16]).DisableStreamPreviews;
|
||||
getSetting = DisableStreamPreviews.getSetting;
|
||||
if (Reflect.apply(getSetting, DisableStreamPreviews, [])) {
|
||||
break reduciblePort28;
|
||||
}
|
||||
binding = env2_21;
|
||||
stop = binding.stop;
|
||||
Reflect.apply(stop, binding, []);
|
||||
binding = env2_14;
|
||||
HermesInternal = global.HermesInternal;
|
||||
concat = HermesInternal.concat;
|
||||
value3 = '' + binding + a1;
|
||||
binding = env2_1;
|
||||
value4 = binding(env2_2[17]);
|
||||
dispatch = value4.dispatch;
|
||||
Reflect.apply(dispatch, value4, [{type: 'STREAM_PREVIEW_FETCH_SUCCESS', streamKey: a0,
|
||||
previewURL: value3}]);
|
||||
try {
|
||||
binding = env2_0;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
binding2 = env2_2;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
property = binding2[18];
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
value5 = binding(property);
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
HTTP = value5.HTTP;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
post = HTTP.post;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object3 = {};
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
binding = env2_15;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
STREAM_PREVIEW = binding.STREAM_PREVIEW;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
value6 = Reflect.apply(STREAM_PREVIEW, binding, [a0]);
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object3.url = value6;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object4 = {};
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object4.thumbnail = value3;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object3.body = object4;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object3.oldFormErrors = true;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
object3.rejectWithError = false;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
try {
|
||||
value7 = Reflect.apply(post, HTTP, [object3]);
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
yield value7;
|
||||
try {
|
||||
value8 = undefined;
|
||||
value9 = false;
|
||||
} catch (error) {
|
||||
break exceptionLanding27;
|
||||
}
|
||||
if (value9) {
|
||||
return value8;
|
||||
}
|
||||
break reduciblePort28;
|
||||
}
|
||||
binding = env2_19;
|
||||
error2 = binding.error;
|
||||
Reflect.apply(error2, binding, ['Failed to post stream preview', error]);
|
||||
binding = env2_21;
|
||||
start = binding.start;
|
||||
Reflect.apply(start, binding, [60000, _fun38268]);
|
||||
break reduciblePort28;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function VoiceEngineStreamingManager(a0) { // fn#38271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1179, offset: 0x010bb4ca, size: 170 bytes, params: 2, frame: 20
|
||||
var r0;
|
||||
var Reflect;
|
||||
let value = copyRestArgs(0, undefined);
|
||||
let binding = env1_3;
|
||||
binding(this, VoiceEngineStreamingManager);
|
||||
const items = [];
|
||||
arraySpread(items, value, 0, items);
|
||||
value = env1_6(VoiceEngineStreamingManager);
|
||||
binding = env1_5;
|
||||
if (_isNativeReflectConstruct_38262()) {
|
||||
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);
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(value, env1_26, {writable: true, value: value_38272});
|
||||
return value;
|
||||
}
|
||||
|
||||
function value_38274() { // fn#38274, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1781, offset: 0x010bb61b, size: 172 bytes, params: 1, frame: 16
|
||||
const voiceEngine = (require(4261) /* metro dependency 4261: inject */).getVoiceEngine();
|
||||
env1_20 = voiceEngine;
|
||||
voiceEngine.setBroadcastRequestCallback(_fun38275);
|
||||
let binding = env1_20;
|
||||
binding.setBroadcastFinishedCallback(_fun38278);
|
||||
env1_20.setBroadcastAnnotatedCallback(_fun38279);
|
||||
env1_20.setBroadcastBlockedCallback(_fun38280);
|
||||
const defaultImport = importDefault(694) /* metro dependency 694: Dispatcher */;
|
||||
const subscribe = defaultImport.subscribe;
|
||||
binding = env1_8;
|
||||
const binding2 = env1_26;
|
||||
Reflect.apply(subscribe, defaultImport, ['VOICE_CHANNEL_SELECT', binding(this, binding2)[binding2]]);
|
||||
}
|
||||
|
||||
function value_38281() { // fn#38281, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:3164, offset: 0x010bba7b, size: 176 bytes, params: 1, frame: 15
|
||||
const voiceEngine = (require(4261) /* metro dependency 4261: inject */).getVoiceEngine();
|
||||
if (voiceEngine != null) {
|
||||
voiceEngine.setBroadcastRequestCallback(NOOP_NULL);
|
||||
voiceEngine.setBroadcastFinishedCallback(NOOP_NULL);
|
||||
voiceEngine.setBroadcastAnnotatedCallback(NOOP_NULL);
|
||||
voiceEngine.setBroadcastBlockedCallback(NOOP_NULL);
|
||||
}
|
||||
let binding = env1_21;
|
||||
binding.stop();
|
||||
env1_22.stop();
|
||||
const defaultImport = importDefault(694) /* metro dependency 694: Dispatcher */;
|
||||
const unsubscribe = defaultImport.unsubscribe;
|
||||
binding = env1_8;
|
||||
const binding2 = env1_26;
|
||||
Reflect.apply(unsubscribe, defaultImport, ['VOICE_CHANNEL_SELECT', binding(this, binding2)[binding2]]);
|
||||
}
|
||||
|
||||
function _fun38268() { // fn#38268, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1034, offset: 0x010bb43a, size: 28 bytes, params: 1, frame: 13
|
||||
return env3_24(env0_0, require);
|
||||
}
|
||||
|
||||
function VoiceEngineStreamingManagerValue({channelId}) { // fn#38272, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1491, owner: VoiceEngineStreamingManager.value, offset: 0x010bb574, size: 82 bytes, params: 2, frame: 13
|
||||
var binding;
|
||||
if (env2_25 !== channelId) {
|
||||
binding = env2_20;
|
||||
if (binding != null) {
|
||||
binding.stopBroadcast();
|
||||
}
|
||||
ApplicationStreamingStore.getAllActiveStreams().forEach(_fun38273);
|
||||
}
|
||||
}
|
||||
|
||||
function _fun38275() { // fn#38275, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1851, offset: 0x010bb6c7, size: 385 bytes, params: 1, frame: 22
|
||||
var guildId;
|
||||
var moduleValue;
|
||||
var startStream;
|
||||
var id;
|
||||
var currentUserActiveStream;
|
||||
var defaultImport2;
|
||||
var selectParticipant;
|
||||
var moduleValue2;
|
||||
env2_19.log('Broadcast Requested');
|
||||
(importDefault(44) /* metro dependency 44 */)(env2_20 != null, 'Voice Engine should be initialized in callback');
|
||||
env2_23 = [];
|
||||
const channel = ChannelStore.getChannel(SelectedChannelStore.getVoiceChannelId());
|
||||
const currentAppIntent = ApplicationStreamingStore.getCurrentAppIntent();
|
||||
if (channel != null) {
|
||||
guildId = channel.getGuildId();
|
||||
moduleValue = require(8913) /* metro dependency 8913: StreamActionCreators */;
|
||||
startStream = moduleValue.startStream;
|
||||
id = channel.id;
|
||||
Reflect.apply(startStream, moduleValue, [guildId, id, {sourceId: 'screen:0'}]);
|
||||
currentUserActiveStream = ApplicationStreamingStore.getCurrentUserActiveStream();
|
||||
if (currentUserActiveStream != null) {
|
||||
defaultImport2 = importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */;
|
||||
selectParticipant = defaultImport2.selectParticipant;
|
||||
id = channel.id;
|
||||
moduleValue2 = require(4285) /* metro dependency 4285: StreamKeyUtils */;
|
||||
Reflect.apply(selectParticipant, defaultImport2, [id,
|
||||
moduleValue2.encodeStreamKey(currentUserActiveStream)]);
|
||||
if (env2_20.platform === 'android') {
|
||||
env2_22.start(15000, _fun38276);
|
||||
}
|
||||
if (currentAppIntent != null) {
|
||||
Linking.openURL(getAppIntentScheme(currentAppIntent));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
env2_20.stopBroadcastWithError(-1, 'Not currently in a voice channel');
|
||||
}
|
||||
}
|
||||
|
||||
function _fun38278() { // fn#38278, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:2707, offset: 0x010bb949, size: 86 bytes, params: 1, frame: 12
|
||||
const value = environment.__proto__.__proto__;
|
||||
env2_19.log('Broadcast Finished');
|
||||
env2_21.stop();
|
||||
env2_22.stop();
|
||||
(require(10794) /* metro dependency 10794: useScreenshareUtils */).handleCloseScreenshare();
|
||||
}
|
||||
|
||||
function _fun38279(a0) { // fn#38279, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:2828, offset: 0x010bb99f, size: 101 bytes, params: 2, frame: 15
|
||||
var value2;
|
||||
let binding = env2_19;
|
||||
binding.log('Broadcast Annotated:', a0);
|
||||
if (a0 !== IOS_BUNDLE_ID) {
|
||||
binding = env2_23;
|
||||
value2 = binding.indexOf(a0, 0);
|
||||
if (value2 > -1) {
|
||||
env2_23.splice(value2, 1);
|
||||
}
|
||||
binding = env2_23;
|
||||
binding.push(a0);
|
||||
}
|
||||
}
|
||||
|
||||
function _fun38280() { // fn#38280, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:2960, offset: 0x010bba04, size: 119 bytes, params: 1, frame: 17
|
||||
env2_19.log('Broadcast Blocked');
|
||||
const defaultImport = importDefault(10741) /* metro dependency 10741: PushNotification */;
|
||||
const presentLocalNotification = defaultImport.presentLocalNotification;
|
||||
const object2 = {};
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
object2.alertBody = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.iYQlwv);
|
||||
Reflect.apply(presentLocalNotification, defaultImport, [object2]);
|
||||
}
|
||||
|
||||
function _fun38273(a0) { // fn#38273, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:1587, offset: 0x010bb5c6, size: 85 bytes, params: 2, frame: 15
|
||||
const channelId2 = a0.channelId;
|
||||
var value;
|
||||
if (channelId2 !== channelId) {
|
||||
value = environment.__proto__.__proto__.__proto__;
|
||||
value = require(4285) /* metro dependency 4285: StreamKeyUtils */;
|
||||
value = value.encodeStreamKey(a0);
|
||||
(require(8913) /* metro dependency 8913: StreamActionCreators */).stopStream(value, false);
|
||||
}
|
||||
}
|
||||
|
||||
function _fun38276() { // fn#38276, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:2260, offset: 0x010bb848, size: 172 bytes, params: 1, frame: 18
|
||||
(importDefault(44) /* metro dependency 44 */)(env3_20 != null, 'Voice Engine should be initialized in callback');
|
||||
const windowDimensions = (require(1478) /* metro dependency 1478: useWindowDimensionsNative */).getWindowDimensions();
|
||||
const value3 = 512 / windowDimensions.width;
|
||||
const value4 = 288 / windowDimensions.height;
|
||||
const Math = global.Math;
|
||||
const value5 = Math.min(value3, value4);
|
||||
env3_20.setBroadcastThumbnailCallback(windowDimensions.width * value5, windowDimensions.height * value5, 300,
|
||||
_fun38277);
|
||||
}
|
||||
|
||||
function _fun38277(a0) { // fn#38277, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4669:2480, offset: 0x010bb8f4, size: 85 bytes, params: 2, frame: 15
|
||||
const binding = env4_19;
|
||||
binding.log('Broadcast thumbnail of size:', a0.length);
|
||||
env4_24((require(4285) /* metro dependency 4285: StreamKeyUtils */).encodeStreamKey(env1_0), a0);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user