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

128 lines
3.9 KiB
TypeScript
Raw Normal View History

2026-08-05 07:35:12 +00:00
// Module ID: 15938
// Function ID: 15939
2026-07-29 08:29:29 +00:00
// Name: useActivityWebViewLockManager
2026-08-05 07:35:12 +00:00
// Dependencies: [32, 19, 4116, 4599, 2]
2026-07-20 16:05:17 +00:00
// Exports: default, useLockedWebView
2026-08-05 07:35:12 +00:00
// Module 15938 (useActivityWebViewLockManager)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
2026-07-29 08:29:29 +00:00
import noop from "noop";
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-08-05 07:35:12 +00:00
let result = require("module_4116").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;
2026-07-29 08:29:29 +00:00
if (iter2 != null) {
2026-07-20 16:05:17 +00:00
value = iter2.value;
}
tmp = value === arg0;
const iter = set.values();
}
return tmp;
}
const set = new Set();
const map = new Map();
return () => {
2026-07-29 08:29:29 +00:00
const id = getCanRender.useId();
let tmp2 = map(getCanRender.useState(() => {
let tmp2 = 0 === tmp3.size;
if (!tmp2) {
const iter2 = tmp3.values().next();
let value;
if (iter2 != null) {
value = iter2.value;
}
tmp2 = value === tmp;
const iter = tmp3.values();
}
return tmp2;
}), 2);
2026-07-20 16:05:17 +00:00
const items = [id];
2026-07-29 08:29:29 +00:00
const insertionEffect = getCanRender.useInsertionEffect(() => {
let obj = tmp3;
2026-07-20 16:05:17 +00:00
tmp3.add(id);
2026-07-29 08:29:29 +00:00
obj = { callback: tmp3, canRender: null };
let tmp4 = 0 === tmp3.size;
if (!tmp4) {
const iter2 = obj.values().next();
let value;
if (iter2 != null) {
value = iter2.value;
}
tmp4 = value === tmp;
const iter = obj.values();
}
obj[1] = tmp4;
const result = outer1_2.set(tmp, obj);
2026-07-20 16:05:17 +00:00
return () => {
2026-07-29 08:29:29 +00:00
outer1_1.delete(closure_0);
outer1_2.delete(closure_0);
2026-07-20 16:05:17 +00:00
};
}, items);
const items1 = [id, tmp2[1]];
2026-07-29 08:29:29 +00:00
const layoutEffect = getCanRender.useLayoutEffect(() => {
if (null == closure_0) {
let resolved = Promise.resolve();
closure_0 = resolved.then(() => {
let tmp6;
let tmp8;
while (tmp2 !== undefined) {
let tmp4 = outer1_2;
let tmp5 = outer1_2(tmp3, 2);
[tmp6, tmp8] = tmp5;
let callback = tmp8.callback;
let tmp9 = callback;
let tmp7 = tmp6;
let tmp10 = callback(tmp6);
let tmp11 = tmp10;
if (tmp10 !== tmp8.canRender) {
let tmp12 = lib;
let tmp13 = tmp6;
let obj = { canRender: null, callback: null };
let tmp14 = tmp10;
obj[0] = tmp11;
let tmp15 = callback;
obj[1] = callback;
let result = lib.set(tmp7, obj);
let callbackResult = callback(tmp11);
}
continue;
}
let c0;
});
}
2026-07-20 16:05:17 +00:00
return () => {
2026-07-29 08:29:29 +00:00
if (null == closure_0) {
const resolved = Promise.resolve();
closure_0 = resolved.then(() => { ... });
}
2026-07-20 16:05:17 +00:00
};
}, items1);
return tmp2[0];
};
})[0];
};
export const useLockedWebView = function useLockedWebView(transitionState) {
transitionState = transitionState.transitionState;
2026-07-29 08:29:29 +00:00
let shown;
let renderWebView;
2026-07-23 10:11:24 +00:00
shown = transitionState(shown[2]).useSharedValue(false);
2026-07-29 08:29:29 +00:00
renderWebView = React.useContext(transitionState.context).useActivityWebViewLock();
2026-07-20 16:05:17 +00:00
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 };
};