decord/source/modules/mfa/native/MFAModal.tsx

380 lines
12 KiB
TypeScript
Raw Normal View History

2026-08-25 06:04:03 +00:00
// Module ID: 15214
// Function ID: 15215
2026-07-20 16:05:17 +00:00
// Name: MFAModal
2026-08-25 06:04:03 +00:00
// Dependencies: [5, 19, 17, 21, 8635, 4611, 1236, 15215, 6117, 8178, 5376, 15216, 15217, 15222, 15225, 15226, 15227, 5889, 4745, 2]
2026-07-20 16:05:17 +00:00
// Exports: openMFAModal
2026-08-25 06:04:03 +00:00
// Module 15214 (MFAModal)
import _modDef4611 from "module_4611" /* 4611 */;
import _modDef4745 from "module_4745" /* 4745 */;
2026-08-24 06:08:38 +00:00
import closure_3 from "asyncGeneratorStep" /* 5 */;
import closure_4 from "noop" /* 19 */;
import get_ActivityIndicator from "get ActivityIndicator" /* 17 */;
import { jsx } from "jsxProd" /* 21 */;
2026-07-20 16:05:17 +00:00
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-20 16:05:17 +00:00
class MFAModal {
constructor(arg0) {
mfaChallenge = global.mfaChallenge;
2026-08-24 06:08:38 +00:00
closure_0 = mfaChallenge;
2026-07-20 16:05:17 +00:00
finish = global.finish;
cancel = global.cancel;
handleOnClose = global.handleOnClose;
flag = global.ignoreKeyboard;
if (flag === undefined) {
flag = false;
}
2026-07-23 10:11:24 +00:00
c4 = flag;
2026-07-29 08:29:29 +00:00
merged = Object.assign(global, Object.create(null));
2026-08-24 06:08:38 +00:00
closure_5 = undefined;
closure_6 = undefined;
closure_7 = undefined;
2026-07-20 16:05:17 +00:00
items = [];
items[0] = mfaChallenge;
2026-07-23 10:11:24 +00:00
memo = c4.useMemo(() => {
2026-07-29 08:29:29 +00:00
if (callback(cancel[4]).hasWebAuthn) {
2026-07-20 16:05:17 +00:00
let obj = tmp;
} else {
obj = {};
const merged = Object.assign(tmp);
const methods = tmp.methods;
2026-07-29 08:29:29 +00:00
obj.methods = methods.filter((type) => "webauthn" !== type.type);
2026-07-20 16:05:17 +00:00
}
return obj;
}, items);
2026-08-24 06:08:38 +00:00
closure_5 = memo;
closure_0 = undefined;
closure_0 = handleOnClose((arg0) => {
closure_0 = arg0;
c3 = 0;
c4 = 0;
2026-07-29 08:29:29 +00:00
const iter = (function*(arg0) {
if (c4 === 2) {
c4 = 3;
HermesBuiltin.throwTypeError();
} else if (tmp4 === 3) {
if (arg0 === 1) {
throw arg1;
} else if (arg0 === 2) {
let obj = { value: null, done: true };
obj[0] = arg1;
return obj;
} else {
2026-08-25 06:04:03 +00:00
return { value: "HermesInternal", done: "HermesInternal" };
2026-07-29 08:29:29 +00:00
}
} else {
try {
c4 = 2;
if (0 === c3) {
if (arg0 === 1) {
c4 = 3;
throw arg1;
} else if (arg0 === 2) {
c4 = 3;
obj = { value: null, done: true };
obj[0] = arg1;
return obj;
} else {
2026-08-24 06:08:38 +00:00
closure_2 = tmp5;
2026-07-29 08:29:29 +00:00
c1 = tmp2;
c0 = undefined;
c1 = undefined;
({ mfaType: c0, data: c1 } = c0);
c3 = 1;
c4 = 1;
2026-08-12 06:57:52 +00:00
return { value: "ct", done: true };
2026-07-29 08:29:29 +00:00
}
} else if (1 === tmp5) {
if (arg0 === 1) {
c4 = 3;
throw arg1;
} else if (arg0 === 2) {
c4 = 3;
2026-08-24 06:08:38 +00:00
obj1 = { value: null, done: true };
2026-07-29 08:29:29 +00:00
obj1[0] = arg1;
return obj1;
} else {
const obj2 = { mfaType: null, data: null, ticket: null };
obj2[0] = c0;
obj2[1] = c1;
2026-08-24 06:08:38 +00:00
obj2[2] = closure_1_5.ticket;
2026-07-29 08:29:29 +00:00
c3 = 2;
c4 = 1;
const obj3 = { value: null, done: false };
2026-08-24 06:08:38 +00:00
obj3[0] = closure_1_1(obj2);
2026-07-29 08:29:29 +00:00
return obj3;
}
} else if (arg0 === 1) {
c4 = 3;
throw arg1;
} else if (arg0 === 2) {
c4 = 3;
const obj4 = { value: null, done: true };
obj4[0] = arg1;
return obj4;
} else {
obj = finish(cancel[5]);
obj.popWithKey(callback1);
c4 = 3;
2026-08-25 06:04:03 +00:00
return { value: "HermesInternal", done: "HermesInternal" };
2026-07-29 08:29:29 +00:00
}
} catch (tmp18) {
c4 = tmp;
throw tmp18;
}
}
})();
iter.next();
return iter;
});
2026-07-20 16:05:17 +00:00
items1 = [, ];
items1[0] = finish;
items1[1] = memo.ticket;
2026-07-29 08:29:29 +00:00
callback = c4.useCallback(function() {
const self = this;
const apply = closure_0.apply;
if (typeof apply === "unknown") {
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
} else {
applyArgumentsResult = apply(self, arguments);
}
return applyArgumentsResult;
}, items1);
2026-08-24 06:08:38 +00:00
closure_6 = callback;
2026-07-20 16:05:17 +00:00
items2 = [, ];
items2[0] = cancel;
items2[1] = handleOnClose;
2026-07-23 10:11:24 +00:00
callback1 = c4.useCallback(() => {
2026-07-20 16:05:17 +00:00
if (null == handleOnClose) {
finish(cancel[5]).popWithKey(callback1);
2026-07-29 08:29:29 +00:00
if (cancel != null) {
2026-07-20 16:05:17 +00:00
const _Error = Error;
2026-07-29 08:29:29 +00:00
const intl = callback(tmp4[6]).intl;
2026-08-24 06:08:38 +00:00
error = new Error(intl.string(callback(tmp4[6]).t.N2yb9a));
2026-07-29 08:29:29 +00:00
tmp7(error);
2026-07-20 16:05:17 +00:00
}
const obj = finish(cancel[5]);
} else {
2026-07-29 08:29:29 +00:00
tmp();
2026-07-20 16:05:17 +00:00
}
}, items2);
2026-08-24 06:08:38 +00:00
closure_7 = callback1;
2026-07-20 16:05:17 +00:00
items3 = [, ];
items3[0] = memo;
items3[1] = callback;
items4 = [, , ];
items4[0] = callback1;
items4[1] = memo.methods;
items4[2] = flag;
2026-07-23 10:11:24 +00:00
memo1 = c4.useMemo(() => {
2026-07-29 08:29:29 +00:00
obj = { name: callback(cancel[7]).MfaScreens.SELECT, params: obj };
2026-07-20 16:05:17 +00:00
obj = { mfaChallenge: memo, finish: callback };
const first = memo.methods[0];
let type;
2026-07-29 08:29:29 +00:00
if (first != null) {
2026-07-20 16:05:17 +00:00
type = first.type;
}
if (undefined === type) {
const items = [obj];
let items1 = items;
} else {
2026-07-29 08:29:29 +00:00
obj = { name: null, params: null };
obj[0] = type;
2026-08-24 06:08:38 +00:00
obj1 = { mfaChallenge: null, finish: null };
2026-07-29 08:29:29 +00:00
obj1[0] = memo;
obj1[1] = callback;
obj[1] = obj1;
2026-07-20 16:05:17 +00:00
items1 = [obj];
}
return items1;
}, items3);
2026-07-23 10:11:24 +00:00
memo2 = c4.useMemo(() => {
2026-07-20 16:05:17 +00:00
function headerRight() {
2026-07-29 08:29:29 +00:00
const obj = { accessibilityLabel: null, onPress: null, source: null };
2026-08-24 06:08:38 +00:00
const intl = closure_1_0(closure_1_2[6]).intl;
obj[0] = intl.string(closure_1_0(closure_1_2[6]).t.cpT0Cq);
2026-07-29 08:29:29 +00:00
obj[1] = closure_7;
2026-08-24 06:08:38 +00:00
obj[2] = closure_1_1(closure_1_2[9]);
return closure_1_6(closure_1_0(closure_1_2[8]).HeaderActionButton, obj);
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let obj = { fullscreen: true, ignoreKeyboard: flag, headerTitle: "" };
2026-07-20 16:05:17 +00:00
obj = {};
obj = {};
2026-07-23 10:11:24 +00:00
let merged = Object.assign(obj);
2026-07-29 08:29:29 +00:00
let obj3 = callback(cancel[10]);
obj.headerLeft = obj3.getHeaderBackButton();
obj.headerRight = headerRight;
obj.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15216), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.SELECT] = obj;
2026-08-24 06:08:38 +00:00
obj1 = {};
2026-07-20 16:05:17 +00:00
const merged1 = Object.assign(obj);
const first = memo.methods[0];
let type;
2026-07-29 08:29:29 +00:00
if (first != null) {
2026-07-20 16:05:17 +00:00
type = first.type;
}
if ("webauthn" === type) {
2026-07-29 08:29:29 +00:00
let tmpResult = tmp(tmp2[10]);
let headerCloseButton = tmpResult.getHeaderCloseButton(callback1);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
tmpResult = tmp(tmp2[10]);
headerCloseButton = tmpResult.getHeaderBackButton();
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj1.headerLeft = headerCloseButton;
const first1 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type1;
2026-07-29 08:29:29 +00:00
if (first1 != null) {
2026-07-20 16:05:17 +00:00
type1 = first1.type;
}
2026-07-29 08:29:29 +00:00
let tmp12;
2026-07-20 16:05:17 +00:00
if ("webauthn" !== type1) {
2026-07-29 08:29:29 +00:00
tmp12 = headerRight;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj1.headerRight = tmp12;
obj1.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15217), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.WEBAUTHN] = obj1;
2026-07-20 16:05:17 +00:00
const obj2 = {};
const merged2 = Object.assign(obj);
2026-07-29 08:29:29 +00:00
const first2 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type2;
2026-07-29 08:29:29 +00:00
if (first2 != null) {
2026-07-20 16:05:17 +00:00
type2 = first2.type;
}
if ("totp" === type2) {
2026-07-29 08:29:29 +00:00
let headerCloseButton1 = tmp(tmp2[10]).getHeaderCloseButton(callback1);
const tmpResult1 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
headerCloseButton1 = tmp(tmp2[10]).getHeaderBackButton();
const tmpResult2 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj2.headerLeft = headerCloseButton1;
const first3 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type3;
2026-07-29 08:29:29 +00:00
if (first3 != null) {
2026-07-20 16:05:17 +00:00
type3 = first3.type;
}
2026-07-29 08:29:29 +00:00
let tmp20;
2026-07-20 16:05:17 +00:00
if ("totp" !== type3) {
2026-07-29 08:29:29 +00:00
tmp20 = headerRight;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj2.headerRight = tmp20;
obj2.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15222), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.TOTP] = obj2;
2026-07-20 16:05:17 +00:00
obj3 = {};
const merged3 = Object.assign(obj);
2026-07-29 08:29:29 +00:00
const first4 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type4;
2026-07-29 08:29:29 +00:00
if (first4 != null) {
2026-07-20 16:05:17 +00:00
type4 = first4.type;
}
if ("backup" === type4) {
2026-07-29 08:29:29 +00:00
let headerCloseButton2 = tmp(tmp2[10]).getHeaderCloseButton(callback1);
const tmpResult3 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
headerCloseButton2 = tmp(tmp2[10]).getHeaderBackButton();
const tmpResult4 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj3.headerLeft = headerCloseButton2;
const first5 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type5;
2026-07-29 08:29:29 +00:00
if (first5 != null) {
2026-07-20 16:05:17 +00:00
type5 = first5.type;
}
2026-07-29 08:29:29 +00:00
let tmp28;
2026-07-20 16:05:17 +00:00
if ("backup" !== type5) {
2026-07-29 08:29:29 +00:00
tmp28 = headerRight;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj3.headerRight = tmp28;
obj3.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15225), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.BACKUP] = obj3;
2026-07-20 16:05:17 +00:00
const obj4 = {};
const merged4 = Object.assign(obj);
2026-07-29 08:29:29 +00:00
const first6 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type6;
2026-07-29 08:29:29 +00:00
if (first6 != null) {
2026-07-20 16:05:17 +00:00
type6 = first6.type;
}
if ("sms" === type6) {
2026-07-29 08:29:29 +00:00
let headerCloseButton3 = tmp(tmp2[10]).getHeaderCloseButton(callback1);
const tmpResult5 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
headerCloseButton3 = tmp(tmp2[10]).getHeaderBackButton();
const tmpResult6 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj4.headerLeft = headerCloseButton3;
const first7 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type7;
2026-07-29 08:29:29 +00:00
if (first7 != null) {
2026-07-20 16:05:17 +00:00
type7 = first7.type;
}
2026-07-29 08:29:29 +00:00
let tmp36;
2026-07-20 16:05:17 +00:00
if ("sms" !== type7) {
2026-07-29 08:29:29 +00:00
tmp36 = headerRight;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj4.headerRight = tmp36;
obj4.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15226), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.SMS] = obj4;
const obj5 = {};
2026-07-20 16:05:17 +00:00
const merged5 = Object.assign(obj);
2026-07-29 08:29:29 +00:00
const first8 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type8;
2026-07-29 08:29:29 +00:00
if (first8 != null) {
2026-07-20 16:05:17 +00:00
type8 = first8.type;
}
if ("password" === type8) {
2026-07-29 08:29:29 +00:00
let headerCloseButton4 = tmp(tmp2[10]).getHeaderCloseButton(callback1);
const tmpResult7 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
headerCloseButton4 = tmp(tmp2[10]).getHeaderBackButton();
const tmpResult8 = tmp(tmp2[10]);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj5.headerLeft = headerCloseButton4;
const first9 = tmp5.methods[0];
2026-07-20 16:05:17 +00:00
let type9;
2026-07-29 08:29:29 +00:00
if (first9 != null) {
2026-07-20 16:05:17 +00:00
type9 = first9.type;
}
2026-07-29 08:29:29 +00:00
let tmp44;
2026-07-20 16:05:17 +00:00
if ("password" !== type9) {
2026-07-29 08:29:29 +00:00
tmp44 = headerRight;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj5.headerRight = tmp44;
obj5.render = function render(arg0) {
2026-07-20 16:05:17 +00:00
const merged = Object.assign(arg0);
2026-08-25 06:04:03 +00:00
return callback2(callback(15227), {});
2026-07-20 16:05:17 +00:00
};
2026-07-29 08:29:29 +00:00
obj[callback(cancel[7]).MfaScreens.PASSWORD] = obj5;
2026-07-20 16:05:17 +00:00
return obj;
}, items4);
2026-08-24 06:08:38 +00:00
obj = { screens: memo2, initialRouteStack: memo1, onWillFocus: closure_5.dismiss };
2026-07-20 16:05:17 +00:00
merged1 = Object.assign(merged);
2026-08-24 06:08:38 +00:00
return closure_6(require("NavigationStack").Navigator, obj);
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
({ Keyboard: c5, LogBox } = get_ActivityIndicator);
2026-07-23 10:11:24 +00:00
LogBox.ignoreLogs(["Non-serializable values were found in the navigation state"]);
const MFA_MODAL_KEY = "MFA_MODAL_KEY";
2026-08-24 06:08:38 +00:00
const result = require("set").fileFinishedImporting("modules/mfa/native/MFAModal.tsx");
2026-07-20 16:05:17 +00:00
export { MFAModal };
export const openMFAModal = function openMFAModal(mfaChallenge, finish, cancel) {
2026-08-25 06:04:03 +00:00
let arr = _modDef4611;
2026-07-23 10:11:24 +00:00
arr = arr.push(MFAModal, { mfaChallenge, finish, cancel }, MFA_MODAL_KEY);
2026-08-25 06:04:03 +00:00
_modDef4745.close();
2026-07-20 16:05:17 +00:00
};