decord/source/modules/native_permissions/mobile/NativePermissionUtils.native.tsx
github-actions e510164e6b chore: update source for alpha 346.2
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4759.js (118.4 MB)
2026-09-10 05:38:07 +00:00

218 lines
7.9 KiB
TypeScript

// Module ID: 5160
// Function ID: 5161
// Name: mobile/NativePermissionUtils
// Dependencies: [5, 19, 17, 4784, 21, 1115, 1608, 5157, 3, 5161, 5163, 1896, 4920, 1114, 2]
// Module 5160 (mobile/NativePermissionUtils)
import LoggerDefault from "Logger" /* 3 */;
import util from "util" /* 1114 */;
import useAlertStore from "useAlertStore" /* 4920 */;
import openPrivacySettingsDefault from "openPrivacySettings" /* 5161 */;
import asyncGeneratorStep from "asyncGeneratorStep" /* 5 */;
import noop from "module_19" /* 19 */;
require = fn;
function combineStatuses() {
const self = this;
const apply = closure_9.apply;
if (typeof apply === "unknown") {
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
} else {
applyArgumentsResult = apply(self, arguments);
}
return applyArgumentsResult;
}
let closure_9 = async function _combineStatuses(arg0) {
dependencyMap = arg0;
c7 = 0;
c8 = 0;
c6 = 0;
return (async (arg0, value) => {
if (c8 === 2) {
c8 = 3;
throw new TypeError("Generator functions may not be called on executing generators");
} else if (tmp4 === 3) {
if (arg0 === 1) {
throw value;
} else if (arg0 === 2) {
const obj2 = { value, done: true };
return obj2;
} else {
return { value: "HermesInternal", done: null };
}
} else {
while (true) {
c8 = 2;
if (0 === c7) {
if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c8 = 3;
let obj3 = { value, done: true };
return obj3;
} else {
closure_4 = tmp;
closure_3 = tmp2;
closure_131_0 = undefined;
closure_131_1 = undefined;
closure_2 = dependencyMap;
closure_1 = dependencyMap[Symbol.iterator]();
}
} else if (1 === tmp5) {
c6 = 0;
closure_1.return();
throw closure_1_5;
} else if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c6 = 0;
closure_1.return();
c8 = 3;
let obj4 = { value, done: true };
return obj4;
} else {
closure_131_1 = value;
if (closure_131_1 !== closure_132_6.AUTHORIZED) {
c6 = 0;
let tmp11 = closure_131_1;
closure_1.return();
c8 = 3;
let obj = { value: tmp11, done: true };
return obj;
} else {
c6 = 0;
}
}
if (closure_1 === undefined) {
c8 = 3;
let obj5 = { value: closure_132_6.AUTHORIZED, done: true };
return obj5;
} else {
c6 = 1;
closure_131_0 = tmp19;
c7 = 2;
c8 = 1;
let obj6 = { value: closure_131_0(), done: false };
return obj6;
}
}
}
})();
};
get_ActivityIndicator = fn(17);
const NativeModules = get_ActivityIndicator.NativeModules;
const NativePermissionConstants = fn(4784);
({ NativePermissionTypes, NativePermissionStatus: metroRequire } = NativePermissionConstants);
const jsx = fn(21).jsx;
let PlatformUtils = fn(1115);
PlatformUtils = PlatformUtils.isAndroid();
if (PlatformUtils) {
PlatformUtils = get_ActivityIndicator.Platform.constants.Version <= 28;
}
let MetaQuestUtils = fn(1608);
MetaQuestUtils = MetaQuestUtils.isMetaQuest();
if (PlatformUtils) {
let items = [NativeModules.NativePermissionManager.requestExternalStorageAuthorization];
let items1 = items;
} else {
items1 = [];
}
const items2 = [...items1];
const NativePermissionManager = NativeModules.NativePermissionManager;
if (MetaQuestUtils) {
const items3 = [NativePermissionManager.requestAvatarCameraAuthorization];
let items4 = items3;
} else {
items4 = [NativePermissionManager.requestCameraAuthorization];
}
HermesBuiltin.arraySpread(items4, tmp6);
if (PlatformUtils) {
const items5 = [NativeModules.NativePermissionManager.hasExternalStorageAuthorization];
let items6 = items5;
} else {
items6 = [];
}
const items7 = [...items6];
const NativePermissionManager2 = NativeModules.NativePermissionManager;
if (MetaQuestUtils) {
const items8 = [NativePermissionManager2.hasAvatarCameraAuthorization];
let items9 = items8;
} else {
items9 = [NativePermissionManager2.hasCameraAuthorization];
}
HermesBuiltin.arraySpread(items9, tmp8);
let NativePermissionIOSUtils;
const NativePermissionBaseUtils = fn(5157).NativePermissionBaseUtils;
class NativePermissionIOSUtils extends NativePermissionBaseUtils {
}
const prototype = NativePermissionIOSUtils.prototype;
prototype["requestPermissionCore"] = function requestPermissionCore(arg0, arg1) {
return this.performRequest(NativePermissionIOSUtils.requestPermissionLookup, arg0, arg1);
};
prototype["hasPermissionCore"] = function hasPermissionCore(arg0, arg1) {
return this.performRequest(NativePermissionIOSUtils.hasPermissionLookup, arg0, arg1);
};
prototype["performRequest"] = function performRequest(hasPermissionLookup, arg1, arg2) {
if (null == hasPermissionLookup[arg1]) {
const obj = new LoggerDefault("NativePermissionUtils");
const _HermesInternal = HermesInternal;
obj.error("Unable to locate permission type " + arg1);
let resolved = Promise.resolve(false);
} else {
const self = this;
resolved = this.requestAuthorization(arg1, tmp, arg2);
}
return resolved;
};
prototype["didHavePermission"] = function didHavePermission(arg0) {
const storage = this.storage;
return storage.hasPermission(arg0);
};
prototype["openSettings"] = function openSettings() {
openPrivacySettingsDefault();
};
prototype["openAlertModal"] = function openAlertModal(arg0) {
({ body, onConfirm } = arg0);
const lazyResult = noop.lazy(() => require("asyncRequireImpl")(paths[10], paths.paths));
const obj2 = { title: null, body: null, onConfirm: null };
const intl = util.intl;
obj2.title = intl.string(util.t.sMFVrS);
obj2.body = body;
obj2.onConfirm = onConfirm;
useAlertStore.openAlert("permission-denied", <lazyResult title={null} body={null} onConfirm={null} />);
};
let obj3 = { [NativePermissionTypes.CAMERA]: () => combineStatuses(items2), [NativePermissionTypes.HEADSET_CAMERA]: NativeModules.NativePermissionManager.requestHeadsetCameraAuthorization };
PlatformUtils = fn(1115);
if (PlatformUtils.isAndroid()) {
fn = () => {
const items = [NativeModules.NativePermissionManager.requestMicrophoneAuthorization, NativeModules.NativePermissionManager.requestModifyAudioAuthorization];
return combineStatuses(items);
};
} else {
fn = NativeModules.NativePermissionManager.requestMicrophoneAuthorization;
}
obj3[NativePermissionTypes.AUDIO] = fn;
obj3[NativePermissionTypes.PHOTOS] = NativeModules.NativePermissionManager.requestPhotoAuthorization;
obj3[NativePermissionTypes.CONTACTS] = NativeModules.NativePermissionManager.requestContactsAuthorization;
obj3[NativePermissionTypes.INPUT_MONITORING] = () => Promise.resolve(constants.AUTHORIZED);
NativePermissionIOSUtils.requestPermissionLookup = obj3;
let obj5 = { [NativePermissionTypes.CAMERA]: () => combineStatuses(items7), [NativePermissionTypes.HEADSET_CAMERA]: NativeModules.NativePermissionManager.hasHeadsetCameraAuthorization };
PlatformUtils = fn(1115);
if (PlatformUtils.isAndroid()) {
let fn2 = () => {
const items = [NativeModules.NativePermissionManager.hasMicrophoneAuthorization, NativeModules.NativePermissionManager.hasModifyAudioAuthorization];
return combineStatuses(items);
};
} else {
fn2 = NativeModules.NativePermissionManager.hasMicrophoneAuthorization;
}
obj5[NativePermissionTypes.AUDIO] = fn2;
obj5[NativePermissionTypes.INPUT_MONITORING] = () => Promise.resolve(constants.AUTHORIZED);
NativePermissionIOSUtils.hasPermissionLookup = obj5;
const nativePermissionIOSUtils = new NativePermissionIOSUtils();
const size = fn(2);
const result = size.fileFinishedImporting("modules/native_permissions/mobile/NativePermissionUtils.native.tsx");
export default nativePermissionIOSUtils;