decord/source/modules/activities/panel/native/useActivityWebViewLockManager.tsx

179 lines
5.3 KiB
TypeScript
Raw Normal View History

2026-07-27 11:26:19 +00:00
// Module ID: 15765
// Function ID: 121560
2026-07-20 16:05:17 +00:00
// Name: _createForOfIteratorHelperLoose
2026-07-25 08:10:48 +00:00
// Dependencies: [57, 31, 3992, 4477, 2]
2026-07-20 16:05:17 +00:00
// Exports: default, useLockedWebView
2026-07-27 11:26:19 +00:00
// Module 15765 (_createForOfIteratorHelperLoose)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
import result from "result";
const require = arg1;
function _createForOfIteratorHelperLoose(iterable) {
let closure_0 = iterable;
iterable = "undefined" !== typeof Symbol;
if (iterable) {
2026-07-20 16:05:17 +00:00
const _Symbol = Symbol;
2026-07-23 10:11:24 +00:00
iterable = iterable[Symbol.iterator];
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if (!iterable) {
iterable = iterable[Symbol.iterator];
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if (iterable) {
const iter = iterable.call(iterable);
2026-07-20 16:05:17 +00:00
const next = iter.next;
return next.bind(iter);
} else {
const _Array = Array;
2026-07-23 10:11:24 +00:00
let tmp = iterable;
if (!Array.isArray(iterable)) {
2026-07-20 16:05:17 +00:00
let tmp2;
2026-07-23 10:11:24 +00:00
if (iterable) {
if ("string" === typeof iterable) {
tmp2 = _arrayLikeToArray(iterable, undefined);
2026-07-20 16:05:17 +00:00
} else {
const toString = {}.toString;
2026-07-23 10:11:24 +00:00
const substr = toString.call(iterable).slice(8, -1);
2026-07-20 16:05:17 +00:00
let name = substr;
if (tmp3) {
2026-07-23 10:11:24 +00:00
name = iterable.constructor.name;
2026-07-20 16:05:17 +00:00
}
if ("Map" !== name) {
if ("Set" !== name) {
if ("Arguments" === name) {
2026-07-23 10:11:24 +00:00
let arr = _arrayLikeToArray(iterable, undefined);
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/;
2026-07-20 16:05:17 +00:00
}
}
tmp2 = arr;
}
const _Array2 = Array;
2026-07-23 10:11:24 +00:00
arr = Array.from(iterable);
const callResult = toString.call(iterable);
tmp3 = "Object" === substr && iterable.constructor;
2026-07-20 16:05:17 +00:00
}
}
tmp = tmp2;
if (!tmp2) {
const _TypeError = TypeError;
const typeError = new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
throw typeError;
}
}
if (tmp) {
2026-07-23 10:11:24 +00:00
closure_0 = tmp;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let c1 = 0;
2026-07-20 16:05:17 +00:00
return () => {
2026-07-23 10:11:24 +00:00
if (closure_1 >= length.length) {
2026-07-20 16:05:17 +00:00
let obj = { done: true };
} else {
obj = { done: false };
closure_1 = tmp3 + 1;
2026-07-23 10:11:24 +00:00
obj.value = length[+closure_1];
2026-07-20 16:05:17 +00:00
}
return obj;
};
}
}
function _arrayLikeToArray(arg0, arg1) {
let length;
if (tmp) {
length = arg0.length;
}
const ArrayResult = Array(length);
for (let num = 0; num < length; num = num + 1) {
ArrayResult[num] = arg0[num];
}
return ArrayResult;
}
2026-07-25 08:10:48 +00:00
let result = require("module_3992").fileFinishedImporting("modules/activities/panel/native/useActivityWebViewLockManager.tsx");
2026-07-20 16:05:17 +00:00
export default function useActivityWebViewLockManager() {
return React.useState(() => {
function getCanRender(arg0) {
let tmp = 0 === set.size;
if (!tmp) {
const iter2 = set.values().next();
let value;
if (null != iter2) {
value = iter2.value;
}
tmp = value === arg0;
const iter = set.values();
}
return tmp;
}
function queueRenderUpdate() {
if (null == closure_0) {
const resolved = Promise.resolve();
closure_0 = resolved.then(() => {
let iter2;
let tmp4;
let tmp5;
2026-07-23 10:11:24 +00:00
const tmp = outer3_4(outer1_2);
2026-07-20 16:05:17 +00:00
let iter = tmp();
if (!iter.done) {
do {
2026-07-23 10:11:24 +00:00
let tmp2 = outer3_2;
let tmp3 = outer3_2(iter.value, 2);
2026-07-20 16:05:17 +00:00
[tmp4, tmp5] = tmp3;
2026-07-23 10:11:24 +00:00
let callback = tmp5.callback;
let tmp6 = outer1_3;
let tmp7 = outer1_3(tmp4);
2026-07-20 16:05:17 +00:00
if (tmp7 !== tmp5.canRender) {
2026-07-23 10:11:24 +00:00
let tmp8 = outer1_2;
2026-07-20 16:05:17 +00:00
let obj = { canRender: tmp7, callback };
2026-07-23 10:11:24 +00:00
let result = outer1_2.set(tmp4, obj);
2026-07-20 16:05:17 +00:00
let callbackResult = callback(tmp7);
}
iter2 = tmp();
iter = iter2;
} while (!iter2.done);
}
let closure_0;
});
}
}
const set = new Set();
const map = new Map();
return () => {
2026-07-23 10:11:24 +00:00
const id = outer2_3.useId();
const tmp2 = outer2_2(outer2_3.useState(() => outer1_3(id)), 2);
2026-07-20 16:05:17 +00:00
const items = [id];
2026-07-23 10:11:24 +00:00
const insertionEffect = outer2_3.useInsertionEffect(() => {
2026-07-20 16:05:17 +00:00
tmp3.add(id);
2026-07-23 10:11:24 +00:00
const result = outer1_2.set(id, { callback: tmp3, canRender: outer1_3(id) });
2026-07-20 16:05:17 +00:00
return () => {
2026-07-23 10:11:24 +00:00
set.delete(outer1_0);
outer2_2.delete(outer1_0);
2026-07-20 16:05:17 +00:00
};
}, items);
const items1 = [id, tmp2[1]];
2026-07-23 10:11:24 +00:00
const layoutEffect = outer2_3.useLayoutEffect(() => {
outer1_4();
2026-07-20 16:05:17 +00:00
return () => {
2026-07-23 10:11:24 +00:00
outer2_4();
2026-07-20 16:05:17 +00:00
};
}, items1);
return tmp2[0];
};
})[0];
};
export const useLockedWebView = function useLockedWebView(transitionState) {
transitionState = transitionState.transitionState;
2026-07-23 10:11:24 +00:00
shown = transitionState(shown[2]).useSharedValue(false);
2026-07-20 16:05:17 +00:00
const renderWebView = React.useContext(transitionState.context).useActivityWebViewLock();
const items = [shown, transitionState, renderWebView];
const effect = React.useEffect(() => {
if (transitionState !== transitionState(shown[3]).TransitionStates.YEETED) {
if (renderWebView) {
const result = shown.set(true);
}
}
const result1 = shown.set(false);
}, items);
return { shown, renderWebView };
};