// Metro module 5470 (f5471). import Module19, { useCallback, useLayoutEffect, useMemo, useRef } from "react"; import { getInvertedTransformStyle } from "./Module5433"; import { CompatView } from "./Module5466"; export const ViewHolder = Module19.memo((a0) => { const ref = useRef(null); const { index, refHolder, layout, onSizeChanged, renderItem, extraData, item, target } = a0; let CellRendererComponent = a0.CellRendererComponent; const { ItemSeparatorComponent, trailingItem, horizontal, hidden, inverted } = a0; useLayoutEffect(() => { refHolder.set(index, ref); return () => { if (refHolder.get(index) === ref) { refHolder.delete(index); } }; }, [index, refHolder]); const callback = useCallback((a0) => { if (onSizeChanged != null) { onSizeChanged(index, a0.nativeEvent.layout); } }, [index, onSizeChanged]); const memo = useMemo(() => ItemSeparatorComponent ? trailingItem !== void 0 ? : null : null, [ItemSeparatorComponent, item, trailingItem]); const memo2 = useMemo(() => { let r3 = renderItem == null ? void 0 : renderItem({ item, index, extraData, target }); if (r3 == null) { r3 = null; } return r3; }, [item, extraData, target, renderItem]); const style = { flexDirection: horizontal ? "row" : "column", position: target === "StickyHeader" ? "relative" : "absolute", width: layout.enforcedWidth ? layout.width : void 0, height: layout.enforcedHeight ? layout.height : void 0, minHeight: layout.minHeight, minWidth: layout.minWidth, maxHeight: layout.maxHeight, maxWidth: layout.maxWidth, left: layout.x, top: layout.y, opacity: hidden ? 0 : 1, ...inverted ? getInvertedTransformStyle(horizontal) : void 0 }; if (CellRendererComponent == null) { CellRendererComponent = CompatView; } return {memo2} {memo} ; }, (a0, a1) => { let r0 = a0.index === a1.index; if (r0) { const layout = a0.layout; const layout2 = a1.layout; r0 = layout.x === layout2.x && layout.y === layout2.y && layout.width === layout2.width && layout.height === layout2.height && layout.enforcedWidth === layout2.enforcedWidth && layout.enforcedHeight === layout2.enforcedHeight && layout.minWidth === layout2.minWidth && layout.minHeight === layout2.minHeight && layout.maxWidth === layout2.maxWidth && layout.maxHeight === layout2.maxHeight; } if (r0) { r0 = a0.refHolder === a1.refHolder; } if (r0) { r0 = a0.onSizeChanged === a1.onSizeChanged; } if (r0) { r0 = a0.extraData === a1.extraData; } if (r0) { r0 = a0.target === a1.target; } if (r0) { r0 = a0.item === a1.item; } if (r0) { r0 = a0.renderItem === a1.renderItem; } if (r0) { r0 = a0.CellRendererComponent === a1.CellRendererComponent; } if (r0) { r0 = a0.ItemSeparatorComponent === a1.ItemSeparatorComponent; } if (r0) { r0 = a0.trailingItem === a1.trailingItem; } if (r0) { r0 = a0.horizontal === a1.horizontal; } if (r0) { r0 = a0.hidden === a1.hidden; } if (r0) { r0 = a0.inverted === a1.inverted; } return r0; });