Files
discord-decomp/sources/by-id/module-06422-ViewHolder.jsx
2026-07-28 01:06:53 +03:00

103 lines
5.8 KiB
React

/* Metro module 6422; source: unknown; dependencies: [31, 33, 6418] */
import * as ReactModule from './module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from './module-00033-JsxRuntime.js'; /* Metro dependency 33 */
function _fun50366(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#50366, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:6, offset: 0x01217a63, size: 172 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ReactModule;
const env0_2 = value.useCallback;
const env0_3 = value.useLayoutEffect;
const env0_4 = value.useMemo;
const env0_5 = value.useRef;
value = importDefault(31) /* metro dependency 31 */;
exports.ViewHolder = value.memo(ViewHolderInternal, _fun50373);
function ViewHolderInternal({index, refHolder, layout, onSizeChanged, renderItem, extraData, item, target, CellRendererComponent, ItemSeparatorComponent, trailingItem, horizontal, hidden}) { // fn#50367, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:212, offset: 0x01217b0f, size: 481 bytes, params: 2, frame: 30
const value3 = useRef(null);
useLayoutEffect(_fun50368, [index, refHolder]);
return ((Component) => <Component ref={value3} onLayout={useCallback(function(a0) {
if (onSizeChanged != null) {
onSizeChanged(index, a0.nativeEvent.layout);
}
}, [index, onSizeChanged])} style={{flexDirection: horizontal ? 'row' : 'column',
position: target !== 'StickyHeader' ? 'absolute' : 'relative',
width: layout.enforcedWidth ? layout.width : undefined,
height: layout.enforcedHeight ? layout.height : undefined, minHeight: layout.minHeight,
minWidth: layout.minWidth, maxHeight: layout.maxHeight, maxWidth: layout.maxWidth, left: layout.x,
top: layout.y, opacity: hidden ? 0 : 1}} index={index}>{useMemo(_fun50372, [item, extraData, target,
renderItem])}{useMemo(_fun50371, [ItemSeparatorComponent, item,
trailingItem])}</Component>)(CellRendererComponent ?? (require(6418) /* metro dependency 6418 */).CompatView);
function _fun50368() { // fn#50368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:458, offset: 0x01217cf0, size: 35 bytes, params: 1, frame: 13
const refHolderBinding = refHolder;
refHolderBinding.set(index, env0_0);
return _fun50369;
function _fun50369() { // fn#50369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:487, offset: 0x01217d13, size: 51 bytes, params: 1, frame: 12
const refHolderBinding = refHolder;
const get = refHolderBinding.get;
if (Reflect.apply(get, refHolderBinding, [index]) === env1_0) {
refHolder.delete(index);
}
}
}
function _fun50371() { // fn#50371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:604, offset: 0x01217d76, size: 63 bytes, params: 1, frame: 16
const value2 = null;
return (
ItemSeparatorComponent
? (
trailingItem === undefined
? value2
: (
<ItemSeparatorComponent leadingItem={item} trailingItem={trailingItem} />
)
)
: value2
);
}
function _fun50372() { // fn#50372, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:693, offset: 0x01217db5, size: 79 bytes, params: 1, frame: 15
const renderItemBinding = renderItem;
const value2 = null;
const r1 = value2 == renderItemBinding ? undefined : renderItem({item: item, index: index, extraData: extraData,
target: target});
return value2 != r1 ? r1 : value2;
}
}
}
function _fun50373(a0, a1) { // fn#50373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6600:1176, offset: 0x01217e04, size: 429 bytes, params: 3, frame: 8
var r3;
var r0;
var layout;
var layout2;
const value = a0.index === a1.index;
if (value) {
layout = a0.layout;
layout2 = a1.layout;
r3 = layout.x === layout2.x && layout.y === layout2.y;
r3 = r3 && layout.width === layout2.width;
r3 = r3 && layout.height === layout2.height;
r3 = r3 && layout.enforcedWidth === layout2.enforcedWidth;
r3 = r3 && layout.enforcedHeight === layout2.enforcedHeight;
r3 = r3 && layout.minWidth === layout2.minWidth;
r3 = r3 && layout.minHeight === layout2.minHeight;
r3 = r3 && layout.maxWidth === layout2.maxWidth;
r3 = r3 && layout.maxHeight === layout2.maxHeight;
r0 = r3;
} else {
r0 = value;
}
r0 = r0 && a0.refHolder === a1.refHolder && a0.onSizeChanged === a1.onSizeChanged;
r0 = r0 && a0.extraData === a1.extraData && a0.target === a1.target;
r0 = r0 && a0.item === a1.item && a0.renderItem === a1.renderItem;
r0 = r0 && a0.CellRendererComponent === a1.CellRendererComponent && a0.ItemSeparatorComponent === a1.ItemSeparatorComponent;
r0 = r0 && a0.trailingItem === a1.trailingItem && a0.horizontal === a1.horizontal && a0.hidden === a1.hidden;
return r0;
}
global.__d(_fun50366, 6422, [31, 33, 6418]) /* metro module 6422, dependencies: [31, 33, 6418] */;