790 lines
33 KiB
TypeScript
790 lines
33 KiB
TypeScript
/* Metro module 12478; source: utils/web/KeyboardUtils.tsx; dependencies: [57, 5047, 477, 22, 12479, 12480, 12481, 1360, 2] */
|
|
import Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */
|
|
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
|
|
import * as KeyboardConstantsModule from '../../external/discord_common/js/shared/constants/KeyboardConstants.tsx'; /* Metro dependency 5047 */
|
|
import * as KeyboardLayoutMapUtilsModule from './KeyboardLayoutMapUtils.tsx'; /* Metro dependency 12480 */
|
|
|
|
function _fun94906(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#94906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:6, offset: 0x0212ba02, size: 1076 bytes, params: 8, frame: 33
|
|
var r11;
|
|
var r16;
|
|
let env0_1 = require;
|
|
const _arrayLikeToArray_94909 = 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 maybePlusConversion = function(a0) {
|
|
var value = a0;
|
|
return value === '+' ? 'plus' : value;
|
|
};
|
|
const getCodeToKeyLanguageCorrection2 = getCodeToKeyLanguageCorrection;
|
|
const getEnv_949122 = getEnv_94912;
|
|
const codeToKey2 = codeToKey;
|
|
const keyToCode2 = keyToCode;
|
|
const closure5 = function(a0) {
|
|
var value = a0.replace(RegExp('^(right|left) (shift|meta|ctrl|alt)$', ''), '$2');
|
|
value = value.replace('meta', 'command');
|
|
return value === 'pause' || value === 'break' ? 'pause/break' : value;
|
|
};
|
|
const toMetaKeyIndexKey = function(a0) {
|
|
return a0 + 'Key';
|
|
};
|
|
let Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = KeyboardConstantsModule;
|
|
const env0_5 = value.KeyboardDeviceTypes;
|
|
const LinuxKeyToCode = value.LinuxKeyToCode;
|
|
const MacosKeyToCode = value.MacosKeyToCode;
|
|
const WindowsKeyToCode = value.WindowsKeyToCode;
|
|
const env0_9 = value.KeyboardEnvs;
|
|
if (Reflect.apply((require(477) /* metro dependency 477: PlatformUtils */).isLinux, value, [])) {
|
|
r16 = LinuxKeyToCode;
|
|
} else {
|
|
value = require(477) /* metro dependency 477: PlatformUtils */;
|
|
if (value.isMac()) {
|
|
r11 = MacosKeyToCode;
|
|
} else {
|
|
value = require(477) /* metro dependency 477: PlatformUtils */;
|
|
r11 = value.isWindows() ? WindowsKeyToCode : {};
|
|
}
|
|
r16 = r11;
|
|
}
|
|
let invert = (importDefault(22) /* metro dependency 22 */).invert;
|
|
value = Reflect.apply(invert, value, [LinuxKeyToCode]);
|
|
value[223] = '`';
|
|
Object = global.Object;
|
|
let freeze = Object.freeze;
|
|
Reflect.apply(freeze, Object, [value]);
|
|
Object = global.Object;
|
|
freeze = Object.freeze;
|
|
value = importDefault(22) /* metro dependency 22 */;
|
|
const env0_12 = Reflect.apply(freeze, Object, [value.invert(MacosKeyToCode)]);
|
|
value = importDefault(22) /* metro dependency 22 */;
|
|
value = value.invert(WindowsKeyToCode);
|
|
value[223] = '`';
|
|
Object = global.Object;
|
|
Object.freeze(value);
|
|
invert = (importDefault(22) /* metro dependency 22 */).invert;
|
|
r16 = r16 ?? ({});
|
|
value = Reflect.apply(invert, value, [r16]);
|
|
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
|
|
if (!platformUtilsModule.isMac()) {
|
|
value[223] = '`';
|
|
}
|
|
Object = global.Object;
|
|
Object.freeze(value);
|
|
object = [['META', '⌘'], ['CMD', '⌘'], ['RIGHT META', 'RIGHT ⌘'], ['RIGHT CMD', 'RIGHT ⌘'], ['SHIFT', '⇧'],
|
|
['RIGHT SHIFT', 'RIGHT ⇧'], ['ALT', '⌥'], ['RIGHT ALT', 'RIGHT ⌥'], ['CTRL', '⌃'], ['RIGHT CTRL', 'RIGHT ⌃'],
|
|
['ENTER', '↵'], ['BACKSPACE', '⌫'], ['DEL', '⌦'], ['ESC', '⎋'], ['PAGEUP', '⇞'], ['PAGEDOWN', '⇟'], ['UP', '↑'],
|
|
['DOWN', '↓'], ['LEFT', '←'], ['RIGHT', '→'], ['HOME', '↖'], ['END', '↘'], ['TAB', '⇥'], ['SPACE', '␣']];
|
|
const env0_16 = RegExp('shift|meta|ctrl|alt$', '');
|
|
(FileImportTrackerModule).fileFinishedImporting('utils/web/KeyboardUtils.tsx');
|
|
exports.getRawCodeFromKey = getRawCodeFromKey;
|
|
exports.getCodeToKeyLanguageCorrection = getCodeToKeyLanguageCorrection2;
|
|
exports.getEnv = getEnv_949122;
|
|
exports.codeToKey = codeToKey2;
|
|
exports.keyToCode = keyToCode2;
|
|
exports.getKeyConversionForBrowser = closure5;
|
|
exports.toBrowserEvents = function(a0) {
|
|
var env0_0 = {'keyCode': 0, 'key': '', 'code': '', 'metaKey': false, 'shiftKey': false, 'altKey': false,
|
|
'ctrlKey': false};
|
|
return a0 == null ? [] : a0.reduce(_fun94920, []);
|
|
};
|
|
exports.toCombo = toCombo;
|
|
exports.toString = toString_94925;
|
|
exports.areKeyCombosEqual = function(a0, a1) {
|
|
var value = a2;
|
|
var env0_0 = a1;
|
|
var env0_1 = value !== undefined ? value : false;
|
|
return a0.length === a1.length && a0.every(_fun94928);
|
|
};
|
|
exports.isKeyboardActivatedMouseEvent = function(a0) {
|
|
var r0;
|
|
r0 = a0 != null && typeof a0 === 'object' && 'nativeEvent' in a0;
|
|
r0 = r0 && a0.nativeEvent.clientX === 0 && a0.nativeEvent.clientY === 0;
|
|
return r0;
|
|
};
|
|
function _createForOfIteratorHelperLoose_94907(a0, a1) { // fn#94907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:221, offset: 0x0212be36, 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 _fun94908;
|
|
}
|
|
value = undefined;
|
|
if (a0) {
|
|
if (typeof a0 === 'string') {
|
|
value = _arrayLikeToArray_94909(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_94909(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
|
|
if (regexp.test(r9)) {
|
|
value = _arrayLikeToArray_94909(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
r6 = value;
|
|
}
|
|
}
|
|
r5 = r6;
|
|
}
|
|
} else {
|
|
r5 = value;
|
|
}
|
|
if (r5) {
|
|
if (r5) {
|
|
}
|
|
return _fun94908;
|
|
}
|
|
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 _fun94908() { // fn#94908, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:792, offset: 0x00c39d73, size: 69 bytes, params: 1, frame: 5
|
|
return env0_1 >= env0_0.length ? {done: true} : {done: false,
|
|
value: env0_0[typeof env0_1 === 'bigint' ? env0_1 : +env0_1]};
|
|
}
|
|
|
|
}
|
|
|
|
function getCodeToKeyLanguageCorrection(a0, a1, a2) { // fn#94911, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:1428, offset: 0x0212bfc0, size: 253 bytes, params: 4, frame: 19
|
|
var r3;
|
|
const BACKTICK_CODES = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).BACKTICK_CODES;
|
|
var value5;
|
|
var moduleValue2;
|
|
var value6;
|
|
let value = a1;
|
|
if (a2 != null) {
|
|
var WINDOWS = KeyboardEnvs.WINDOWS;
|
|
if (a2 !== WINDOWS) {
|
|
return value;
|
|
}
|
|
}
|
|
if (BACKTICK_CODES.has(a0)) {
|
|
value5 = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getLayoutMap().get('Backquote');
|
|
if (value === value5) {
|
|
return maybePlusConversion(value);
|
|
}
|
|
moduleValue2 = require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */;
|
|
value6 = moduleValue2.getExactKeyboardEventMatchFromAny({key: value5, code: 'Backquote', keyCode: a0});
|
|
if (value === '\\') {
|
|
if (value5 === '`') {
|
|
r3 = value;
|
|
} else {
|
|
value = maybePlusConversion(value6 == null ? value5 ?? value : value6.key);
|
|
r3 = value;
|
|
}
|
|
} else if (value !== "'") {
|
|
value = maybePlusConversion(value6 == null ? value5 ?? value : value6.key);
|
|
r3 = value;
|
|
} else if (a0 === 192) {
|
|
value = maybePlusConversion(value6 == null ? value5 ?? value : value6.key);
|
|
r3 = value;
|
|
} else if (value5 === '`') {
|
|
r3 = value;
|
|
} else {
|
|
value = maybePlusConversion(value6 == null ? value5 ?? value : value6.key);
|
|
r3 = value;
|
|
}
|
|
return r3;
|
|
}
|
|
return value;
|
|
}
|
|
|
|
function getEnv_94912() { // fn#94912, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:1818, offset: 0x0212c0bd, size: 142 bytes, params: 1, frame: 13
|
|
var r0;
|
|
var moduleValue2;
|
|
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
|
|
if (platformUtilsModule.isLinux()) {
|
|
r0 = KeyboardEnvs.LINUX;
|
|
} else {
|
|
moduleValue2 = platformUtilsModule;
|
|
r0 = moduleValue2.isMac() ? KeyboardEnvs.MACOS : (require(477) /* metro dependency 477: PlatformUtils */).isWindows() ? KeyboardEnvs.WINDOWS : KeyboardEnvs.BROWSER;
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
function codeToKey(a0) { // fn#94913, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:1936, offset: 0x0212c14b, size: 423 bytes, params: 2, frame: 26
|
|
var r1;
|
|
var r2;
|
|
var r11;
|
|
var r112;
|
|
var r9;
|
|
var r4;
|
|
var item3;
|
|
var value5;
|
|
var item4;
|
|
var value6;
|
|
var value7;
|
|
var value8;
|
|
var value10;
|
|
const value2 = undefined;
|
|
const value3 = Module00057(a0, 3);
|
|
const property = value3[1];
|
|
const property2 = value3[2];
|
|
const iterator = a0[Symbol.iterator]();
|
|
const iterator2 = iterator.next;
|
|
let item2 = Reflect.apply(iterator2, iterator, []);
|
|
let item = item2.value;
|
|
item2 = item2.done ? undefined : iterator;
|
|
const value4 = item2 === value2;
|
|
if (value4) {
|
|
}
|
|
if (value4) {
|
|
r1 = item2;
|
|
r2 = value4;
|
|
r11 = value2;
|
|
} else {
|
|
item3 = Reflect.apply(iterator2, item2, []);
|
|
item = item3.value;
|
|
item3 = item3.done ? undefined : item2;
|
|
value5 = item3 === value2;
|
|
if (value5) {
|
|
r1 = item3;
|
|
r2 = value5;
|
|
r11 = value2;
|
|
} else {
|
|
r1 = item3;
|
|
r2 = value5;
|
|
r11 = item;
|
|
}
|
|
}
|
|
if (r2) {
|
|
r112 = value2;
|
|
} else {
|
|
item4 = Reflect.apply(iterator2, r1, []);
|
|
item = item4.value;
|
|
item4 = item4.done ? undefined : r1;
|
|
value6 = item4 === value2;
|
|
if (value6) {
|
|
r1 = item4;
|
|
r2 = value6;
|
|
r112 = value2;
|
|
} else {
|
|
r1 = item4;
|
|
r2 = value6;
|
|
r112 = item;
|
|
}
|
|
}
|
|
if (!r2) {
|
|
r1.return();
|
|
}
|
|
const LINUX = KeyboardEnvs.LINUX;
|
|
if (LINUX === r112) {
|
|
r9 = env0_11[String(r11)];
|
|
value10 = null;
|
|
r4 = value10 != r9 ? r9 : value10;
|
|
} else if (KeyboardEnvs.MACOS === r112) {
|
|
r9 = env0_12[String(r11)];
|
|
value10 = null;
|
|
r4 = value10 != r9 ? r9 : value10;
|
|
} else if (KeyboardEnvs.WINDOWS === r112) {
|
|
r9 = env0_13[String(r11)];
|
|
value10 = null;
|
|
r4 = value10 != r9 ? r9 : value10;
|
|
} else if (KeyboardEnvs.BROWSER === r112) {
|
|
value7 = (importDefault(12479) /* metro dependency 12479 */)(r11);
|
|
value8 = null;
|
|
if (value8 == value7) {
|
|
r4 = value8;
|
|
} else {
|
|
r9 = getKeyConversionForBrowser(value7);
|
|
value10 = null;
|
|
r4 = value10 != r9 ? r9 : value10;
|
|
}
|
|
} else {
|
|
r9 = env0_14[String(r11)];
|
|
value10 = null;
|
|
r4 = value10 != r9 ? r9 : value10;
|
|
}
|
|
const value11 = null;
|
|
if (value11 != r4) {
|
|
return getCodeToKeyLanguageCorrection(property, r4, property2);
|
|
}
|
|
const keyboardEventShapeFromKeycode = (KeyboardLayoutMapUtilsModule).getKeyboardEventShapeFromKeycode(property);
|
|
return value11 != keyboardEventShapeFromKeycode ? getCodeToKeyLanguageCorrection(keyboardEventShapeFromKeycode.keyCode,
|
|
keyboardEventShapeFromKeycode.key, property2) : value11;
|
|
}
|
|
|
|
function keyToCode(a0) { // fn#94914, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:2434, offset: 0x0212c2f2, size: 584 bytes, params: 2, frame: 20
|
|
var r0;
|
|
var keyboardEventShapeFromKey;
|
|
let value = a1;
|
|
const value2 = a2;
|
|
let r10 = value !== undefined ? value : getEnv_94912();
|
|
let r9 = value2 !== undefined ? value2 : KeyboardDeviceTypes.KEYBOARD_KEY;
|
|
r10 = r10 === undefined ? getEnv_94912() : r10;
|
|
r9 = r9 === undefined ? KeyboardDeviceTypes.KEYBOARD_KEY : r9;
|
|
value = null;
|
|
if (value == a0) {
|
|
r0 = value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
const KEYBOARD_KEY = KeyboardDeviceTypes.KEYBOARD_KEY;
|
|
let r2 = r9 === KEYBOARD_KEY || r9 === KeyboardDeviceTypes.KEYBOARD_MODIFIER_KEY;
|
|
if ((r2 && r10 === KeyboardEnvs.LINUX) === true) {
|
|
r2 = LinuxKeyToCode[a0];
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
if ((r2 && r10 === KeyboardEnvs.MACOS) === true) {
|
|
r2 = MacosKeyToCode[a0];
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
if ((r2 && r10 === KeyboardEnvs.WINDOWS) === true) {
|
|
r2 = a0 === '+' ? WindowsKeyToCode.plus : WindowsKeyToCode[a0];
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
if ((r2 && r10 === KeyboardEnvs.BROWSER) === true) {
|
|
r2 = (importDefault(12479) /* metro dependency 12479 */)(getKeyConversionForBrowser(a0));
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
if (r2 === true) {
|
|
r2 = env0_10[a0];
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
const MOUSE_BUTTON = KeyboardDeviceTypes.MOUSE_BUTTON;
|
|
if (r9 === MOUSE_BUTTON === true) {
|
|
r2 = global.parseInt(a0.replace('MOUSE', ''), 10);
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
const GAMEPAD_BUTTON = KeyboardDeviceTypes.GAMEPAD_BUTTON;
|
|
if (r9 === GAMEPAD_BUTTON === true) {
|
|
r2 = global.parseInt(a0.replace('GAMEPAD', ''), 10);
|
|
r0 = value != r2 ? r2 : value;
|
|
if (value != r0) {
|
|
return r0;
|
|
}
|
|
keyboardEventShapeFromKey = (require(12480) /* metro dependency 12480: KeyboardLayoutMapUtils */).getKeyboardEventShapeFromKey(a0);
|
|
return value != keyboardEventShapeFromKey ? keyboardEventShapeFromKey.keyCode : value;
|
|
}
|
|
const Error = global.Error;
|
|
value = 'Unrecognized DeviceType ' + r9 + '.';
|
|
const value10 = Object.create(Error.prototype, {constructor: {value: Error}});
|
|
const error = new Error(value);
|
|
throw error instanceof Object ? error : value10;
|
|
}
|
|
|
|
function toPrettyKey(a0) { // fn#94916, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:3823, offset: 0x0212c590, size: 102 bytes, params: 2, frame: 20
|
|
var value4;
|
|
var value5;
|
|
var property;
|
|
var property2;
|
|
var toUpperCase;
|
|
var value6;
|
|
const value2 = _createForOfIteratorHelperLoose_94907(env0_15);
|
|
const value3 = value2();
|
|
let done = value3.done;
|
|
if (done) {
|
|
return a0;
|
|
}
|
|
let r3 = value3;
|
|
loopExit1: while (true) {
|
|
value4 = r3.value;
|
|
value5 = Module00057(value4, 2);
|
|
property = value5[0];
|
|
property2 = value5[1];
|
|
toUpperCase = a0.toUpperCase;
|
|
if (property === Reflect.apply(toUpperCase, a0, [])) {
|
|
break loopExit1;
|
|
}
|
|
value6 = value2();
|
|
done = value6.done;
|
|
if (done) {
|
|
return a0;
|
|
}
|
|
r3 = value6;
|
|
continue;
|
|
}
|
|
return property2;
|
|
}
|
|
|
|
function getRawCodeFromKey(a0) { // fn#94918, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:4145, offset: 0x0212c603, size: 77 bytes, params: 2, frame: 14
|
|
const value = a1;
|
|
const r4 = value !== undefined ? value : getEnv_94912();
|
|
const BROWSER = KeyboardEnvs.BROWSER;
|
|
return r4 === BROWSER ? (importDefault(12479) /* metro dependency 12479 */)(a0) : env0_10[a0];
|
|
}
|
|
|
|
function toBrowserEvents(a0) { // fn#94919, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:4428, offset: 0x0212c650, size: 60 bytes, params: 2, frame: 13
|
|
const env0_0 = {'keyCode': 0, 'key': '', 'code': '', 'metaKey': false, 'shiftKey': false, 'altKey': false,
|
|
'ctrlKey': false};
|
|
return a0 == null ? [] : a0.reduce(_fun94920, []);
|
|
function _fun94920(a0, a1) { // fn#94920, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:4561, offset: 0x0212c68c, size: 225 bytes, params: 3, frame: 20
|
|
var environment;
|
|
var r8;
|
|
var push;
|
|
var object;
|
|
let value = environment.__proto__;
|
|
const value2 = codeToKey(a1);
|
|
const env0_0 = value2;
|
|
const object2 = {};
|
|
copyDataProperties(object2, env0_0, undefined);
|
|
if (value2 == null) {
|
|
push = a0.push;
|
|
object = {};
|
|
copyDataProperties(object, object2, undefined);
|
|
object['combo'] = a1;
|
|
Reflect.apply(push, a0, [object]);
|
|
} else {
|
|
var binding = env1_16;
|
|
if (binding.test(value2)) {
|
|
r8 = value2 === 'meta' || value2 === 'shift';
|
|
r8 = !r8 ? value2 === 'alt' : r8;
|
|
r8 = !r8 ? value2 === 'ctrl' : r8;
|
|
if (r8) {
|
|
env0_0[toMetaKeyIndexKey(value2)] = true;
|
|
return a0.map(_fun94921);
|
|
}
|
|
value = keyToCode(value2, KeyboardEnvs.BROWSER);
|
|
if (value != null) {
|
|
object2.keyCode = value;
|
|
}
|
|
a0.push(object2);
|
|
return a0;
|
|
}
|
|
value = keyToCode(value2, KeyboardEnvs.BROWSER);
|
|
if (value != null) {
|
|
object2.keyCode = value;
|
|
}
|
|
a0.push(object2);
|
|
}
|
|
return a0;
|
|
function _fun94921(a0) { // fn#94921, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:4774, offset: 0x0212c76d, size: 32 bytes, params: 2, frame: 12
|
|
const value = environment.__proto__.__proto__;
|
|
a0[toMetaKeyIndexKey(env0_0)] = true;
|
|
return a0;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function toCombo(a0) { // fn#94922, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:4899, offset: 0x0212c78d, size: 225 bytes, params: 2, frame: 16
|
|
let value = a1;
|
|
const value2 = a2;
|
|
if (value === undefined) {
|
|
value = getEnv_94912();
|
|
}
|
|
const env0_1 = value2 !== undefined ? value2 : KeyboardDeviceTypes.KEYBOARD_KEY;
|
|
value = a0.replace(RegExp('numpad plus', 'i'), '');
|
|
value = value.replace(RegExp('NUMPAD \\+', 'i'), 'numpad plus');
|
|
value = value.replace(RegExp('mod', 'i'), (require(12481) /* metro dependency 12481: KeybindModKeys */).modKey);
|
|
value = value.split('+');
|
|
value = value.map(function(a0) {
|
|
return a0.trim().replace('plus', '+');
|
|
});
|
|
return value.reduce(_fun94924, []);
|
|
function _fun94924(a0, a1) { // fn#94924, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:5109, offset: 0x0212c892, size: 181 bytes, params: 3, frame: 23
|
|
var r4;
|
|
var r5;
|
|
var value5;
|
|
var value6;
|
|
var property;
|
|
var property2;
|
|
var toUpperCase;
|
|
var value7;
|
|
var toLowerCase;
|
|
let value = a1;
|
|
const value3 = _createForOfIteratorHelperLoose_94907(env1_15);
|
|
const value4 = value3();
|
|
let done = value4.done;
|
|
if (done) {
|
|
r5 = value;
|
|
} else {
|
|
r4 = value4;
|
|
loopExit1: while (true) {
|
|
value5 = r4.value;
|
|
value6 = env1_4(value5, 2);
|
|
property = value6[0];
|
|
property2 = value6[1];
|
|
toUpperCase = value.toUpperCase;
|
|
if (property2 === Reflect.apply(toUpperCase, value, [])) {
|
|
toLowerCase = property.toLowerCase;
|
|
value = Reflect.apply(toLowerCase, property, []);
|
|
r5 = value;
|
|
break loopExit1;
|
|
}
|
|
value7 = value3();
|
|
done = value7.done;
|
|
if (done) {
|
|
r5 = value;
|
|
break loopExit1;
|
|
}
|
|
r4 = value7;
|
|
continue;
|
|
}
|
|
}
|
|
const value8 = keyToCode(r5, env0_0, env0_1);
|
|
if (value8 != null) {
|
|
a0.push([env0_1, value8, env0_0]);
|
|
}
|
|
return a0;
|
|
}
|
|
|
|
}
|
|
|
|
function toString_94925(a0) { // fn#94925, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:5372, offset: 0x0212c947, size: 181 bytes, params: 2, frame: 16
|
|
let value = a1;
|
|
let r0 = value !== undefined ? value : false;
|
|
value = Reflect.apply(a0.map(_fun94926).filter, value,
|
|
[(require(1360) /* metro dependency 1360: GlobalUtils */).isNotNullish]);
|
|
if (r0) {
|
|
value = (env0_0.navigator.appVersion.indexOf('Mac OS X') === -1 ? value : value.map(toPrettyKey)).join(' + ');
|
|
value = value.toUpperCase();
|
|
r0 = value;
|
|
} else {
|
|
value = value.join('+');
|
|
r0 = value;
|
|
}
|
|
return r0;
|
|
function _fun94926(a0) { // fn#94926, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:5411, offset: 0x0212c9fc, size: 337 bytes, params: 2, frame: 19
|
|
var r0;
|
|
var r1;
|
|
var r3;
|
|
var r6;
|
|
var item3;
|
|
var value3;
|
|
var item4;
|
|
var value4;
|
|
var codeToKeyBinding;
|
|
const iterator = a0[Symbol.iterator]();
|
|
const iterator2 = iterator.next;
|
|
let item2 = Reflect.apply(iterator2, iterator, []);
|
|
let item = item2.value;
|
|
item2 = item2.done ? undefined : iterator;
|
|
const value = undefined;
|
|
const value2 = item2 === value;
|
|
const r7 = value2 ? value : item;
|
|
if (value2) {
|
|
r0 = item2;
|
|
r1 = value2;
|
|
r3 = value;
|
|
} else {
|
|
item3 = Reflect.apply(iterator2, item2, []);
|
|
item = item3.value;
|
|
item3 = item3.done ? undefined : item2;
|
|
value3 = item3 === value;
|
|
if (value3) {
|
|
r0 = item3;
|
|
r1 = value3;
|
|
r3 = value;
|
|
} else {
|
|
r0 = item3;
|
|
r1 = value3;
|
|
r3 = item;
|
|
}
|
|
}
|
|
if (r1) {
|
|
r6 = value;
|
|
} else {
|
|
item4 = Reflect.apply(iterator2, r0, []);
|
|
item = item4.value;
|
|
item4 = item4.done ? undefined : r0;
|
|
value4 = item4 === value;
|
|
if (value4) {
|
|
r0 = item4;
|
|
r1 = value4;
|
|
r6 = value;
|
|
} else {
|
|
r0 = item4;
|
|
r1 = value4;
|
|
r6 = item;
|
|
}
|
|
}
|
|
if (!r1) {
|
|
r0.return();
|
|
}
|
|
r6 = typeof r6 !== 'number' ? getEnv_94912() : r6;
|
|
const KEYBOARD_KEY = KeyboardDeviceTypes.KEYBOARD_KEY;
|
|
if (KEYBOARD_KEY === r7) {
|
|
codeToKeyBinding = codeToKey;
|
|
r0 = r6 != null ? [r7, r3, r6] : [r7, r3];
|
|
r0 = codeToKeyBinding(r0) ?? 'UNK' + r3;
|
|
return r0;
|
|
}
|
|
const KEYBOARD_MODIFIER_KEY = KeyboardDeviceTypes.KEYBOARD_MODIFIER_KEY;
|
|
if (KEYBOARD_MODIFIER_KEY === r7) {
|
|
codeToKeyBinding = codeToKey;
|
|
r0 = r6 != null ? [r7, r3, r6] : [r7, r3];
|
|
r0 = codeToKeyBinding(r0) ?? 'UNK' + r3;
|
|
return r0;
|
|
}
|
|
const MOUSE_BUTTON = KeyboardDeviceTypes.MOUSE_BUTTON;
|
|
if (MOUSE_BUTTON === r7) {
|
|
return 'mouse' + r3;
|
|
}
|
|
const GAMEPAD_BUTTON = KeyboardDeviceTypes.GAMEPAD_BUTTON;
|
|
if (GAMEPAD_BUTTON === r7) {
|
|
return 'gamepad' + r3;
|
|
}
|
|
return 'dev' + r7 + ',' + r3;
|
|
}
|
|
|
|
}
|
|
|
|
function areKeyCombosEqual(a0, a1) { // fn#94927, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:5865, offset: 0x0212cb4d, size: 64 bytes, params: 3, frame: 13
|
|
const value = a2;
|
|
const env0_0 = a1;
|
|
const env0_1 = value !== undefined ? value : false;
|
|
return a0.length === a1.length && a0.every(_fun94928);
|
|
function _fun94928(a0, a1) { // fn#94928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12664:5939, offset: 0x0212cb8d, size: 176 bytes, params: 3, frame: 18
|
|
var r0;
|
|
var r1;
|
|
var r5;
|
|
var r3;
|
|
var item3;
|
|
var value3;
|
|
var item4;
|
|
var value4;
|
|
const iterator = a0[Symbol.iterator]();
|
|
const iterator2 = iterator.next;
|
|
let item2 = Reflect.apply(iterator2, iterator, []);
|
|
let item = item2.value;
|
|
item2 = item2.done ? undefined : iterator;
|
|
let value = undefined;
|
|
const value2 = item2 === value;
|
|
const r6 = value2 ? value : item;
|
|
if (value2) {
|
|
r0 = item2;
|
|
r1 = value2;
|
|
r5 = value;
|
|
} else {
|
|
item3 = Reflect.apply(iterator2, item2, []);
|
|
item = item3.value;
|
|
item3 = item3.done ? undefined : item2;
|
|
value3 = item3 === value;
|
|
if (value3) {
|
|
r0 = item3;
|
|
r1 = value3;
|
|
r5 = value;
|
|
} else {
|
|
r0 = item3;
|
|
r1 = value3;
|
|
r5 = item;
|
|
}
|
|
}
|
|
if (r1) {
|
|
r3 = value;
|
|
} else {
|
|
item4 = Reflect.apply(iterator2, r0, []);
|
|
item = item4.value;
|
|
item4 = item4.done ? undefined : r0;
|
|
value4 = item4 === value;
|
|
if (value4) {
|
|
r0 = item4;
|
|
r1 = value4;
|
|
r3 = value;
|
|
} else {
|
|
r0 = item4;
|
|
r1 = value4;
|
|
r3 = item;
|
|
}
|
|
}
|
|
if (!r1) {
|
|
r0.return();
|
|
}
|
|
value = env1_4(require[a1], 3);
|
|
return r6 === value[0] && r5 === value[1] && (env0_1 ? r3 === value[2] : !env0_1);
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
global.__d(_fun94906, 12478, [57, 5047, 477, 22, 12479, 12480, 12481, 1360,
|
|
2]) /* metro module 12478, dependencies: [57, 5047, 477, 22, 12479, 12480, 12481, 1360, 2] */;
|