MCPcopy Create free account
hub / github.com/adobe/react-spectrum / renderWrapper

Function renderWrapper

packages/react-aria-components/src/Virtualizer.tsx:177–214  ·  view source on GitHub ↗
(
  parent: View | null,
  reusableView: View,
  renderDropIndicator?: (target: ItemDropTarget) => ReactNode,
  shouldObserveItemSize?: boolean
)

Source from the content-addressed store, hash-verified

175}
176
177function renderWrapper(
178 parent: View | null,
179 reusableView: View,
180 renderDropIndicator?: (target: ItemDropTarget) => ReactNode,
181 shouldObserveItemSize?: boolean
182): ReactNode {
183 let rendered = (
184 <VirtualizerItem
185 key={reusableView.key}
186 layoutInfo={reusableView.layoutInfo!}
187 virtualizer={reusableView.virtualizer}
188 parent={parent?.layoutInfo}
189 shouldObserveItemSize={shouldObserveItemSize}>
190 {reusableView.rendered}
191 </VirtualizerItem>
192 );
193
194 let {collection, layout} = reusableView.virtualizer;
195 let node = reusableView.content;
196 if (node?.type === 'item' && renderDropIndicator && layout.getDropTargetLayoutInfo) {
197 rendered = (
198 <React.Fragment key={reusableView.key}>
199 {renderDropIndicatorWrapper(
200 parent,
201 reusableView,
202 {type: 'item', key: reusableView.content!.key, dropPosition: 'before'},
203 renderDropIndicator
204 )}
205 {rendered}
206 {renderAfterDropIndicators(collection, node, target =>
207 renderDropIndicatorWrapper(parent, reusableView, target, renderDropIndicator)
208 )}
209 </React.Fragment>
210 );
211 }
212
213 return rendered;
214}
215
216function renderDropIndicatorWrapper(
217 parent: View | null,

Callers 3

renderChildrenFunction · 0.85
renderChildrenFunction · 0.85
renderChildrenFunction · 0.85

Calls 2

Tested by

no test coverage detected