MCPcopy Index your code
hub / github.com/adobe/react-spectrum / style

Method style

packages/react-aria/src/collections/Document.ts:379–416  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

377 }
378
379 get style(): CSSProperties {
380 // React sets display: none to hide elements during Suspense.
381 // We'll handle this by setting the element to hidden and invalidating
382 // its siblings/parent. Hidden elements remain in the Document, but
383 // are removed from the Collection.
384 let element = this;
385 return {
386 get display() {
387 return element.isHidden ? 'none' : '';
388 },
389 set display(value) {
390 let isHidden = value === 'none';
391 if (element.isHidden !== isHidden) {
392 // Mark parent node dirty if this element is currently the first or last visible child.
393 if (
394 element.parentNode?.firstVisibleChild === element ||
395 element.parentNode?.lastVisibleChild === element
396 ) {
397 element.ownerDocument.markDirty(element.parentNode);
398 }
399
400 // Mark sibling visible elements dirty.
401 let prev = element.previousVisibleSibling;
402 let next = element.nextVisibleSibling;
403 if (prev) {
404 element.ownerDocument.markDirty(prev);
405 }
406 if (next) {
407 element.ownerDocument.markDirty(next);
408 }
409
410 // Mark self dirty.
411 element.isHidden = isHidden;
412 element.ownerDocument.markDirty(element);
413 }
414 }
415 };
416 }
417
418 hasAttribute(): void {}
419 setAttribute(): void {}

Callers 1

useContextPropsFunction · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected