Home / Function/ applyNodeProps() — react Function Reference

applyNodeProps() — react Function Reference

Architecture documentation for the applyNodeProps() function in ReactFiberConfigART.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  75ce423e_6f2a_b462_47ad_f971dc38650b["applyNodeProps()"]
  18cde195_5800_e07a_4f5e_1af7f71a810d["ReactFiberConfigART.js"]
  75ce423e_6f2a_b462_47ad_f971dc38650b -->|defined in| 18cde195_5800_e07a_4f5e_1af7f71a810d
  f17ea8c7_7310_1f1a_f775_a028ab4a2c50["applyClippingRectangleProps()"]
  f17ea8c7_7310_1f1a_f775_a028ab4a2c50 -->|calls| 75ce423e_6f2a_b462_47ad_f971dc38650b
  13c1c50b_7957_465c_5028_35ad8e321f97["applyGroupProps()"]
  13c1c50b_7957_465c_5028_35ad8e321f97 -->|calls| 75ce423e_6f2a_b462_47ad_f971dc38650b
  8059b2ed_0e5c_78b6_bb11_5c9e7fc9b67d["applyRenderableNodeProps()"]
  8059b2ed_0e5c_78b6_bb11_5c9e7fc9b67d -->|calls| 75ce423e_6f2a_b462_47ad_f971dc38650b
  cba28491_d382_803f_02a5_b68c76ec0fa1["getScaleX()"]
  75ce423e_6f2a_b462_47ad_f971dc38650b -->|calls| cba28491_d382_803f_02a5_b68c76ec0fa1
  7eb6f4ea_a0ea_9a61_589e_10489f9c2012["getScaleY()"]
  75ce423e_6f2a_b462_47ad_f971dc38650b -->|calls| 7eb6f4ea_a0ea_9a61_589e_10489f9c2012
  f843a04b_a1b8_554a_de35_6b83906114d1["addEventListeners()"]
  75ce423e_6f2a_b462_47ad_f971dc38650b -->|calls| f843a04b_a1b8_554a_de35_6b83906114d1
  style 75ce423e_6f2a_b462_47ad_f971dc38650b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/react-art/src/ReactFiberConfigART.js lines 140–184

function applyNodeProps(instance, props, prevProps = {}) {
  const scaleX = getScaleX(props);
  const scaleY = getScaleY(props);

  pooledTransform
    .transformTo(1, 0, 0, 1, 0, 0)
    .move(props.x || 0, props.y || 0)
    .rotate(props.rotation || 0, props.originX, props.originY)
    .scale(scaleX, scaleY, props.originX, props.originY);

  if (props.transform != null) {
    pooledTransform.transform(props.transform);
  }

  if (
    instance.xx !== pooledTransform.xx ||
    instance.yx !== pooledTransform.yx ||
    instance.xy !== pooledTransform.xy ||
    instance.yy !== pooledTransform.yy ||
    instance.x !== pooledTransform.x ||
    instance.y !== pooledTransform.y
  ) {
    instance.transformTo(pooledTransform);
  }

  if (props.cursor !== prevProps.cursor || props.title !== prevProps.title) {
    instance.indicate(props.cursor, props.title);
  }

  if (instance.blend && props.opacity !== prevProps.opacity) {
    instance.blend(props.opacity == null ? 1 : props.opacity);
  }

  if (props.visible !== prevProps.visible) {
    if (props.visible == null || props.visible) {
      instance.show();
    } else {
      instance.hide();
    }
  }

  for (const type in EVENT_TYPES) {
    addEventListeners(instance, EVENT_TYPES[type], props[type]);
  }
}

Domain

Subdomains

Frequently Asked Questions

What does applyNodeProps() do?
applyNodeProps() is a function in the react codebase, defined in packages/react-art/src/ReactFiberConfigART.js.
Where is applyNodeProps() defined?
applyNodeProps() is defined in packages/react-art/src/ReactFiberConfigART.js at line 140.
What does applyNodeProps() call?
applyNodeProps() calls 3 function(s): addEventListeners, getScaleX, getScaleY.
What calls applyNodeProps()?
applyNodeProps() is called by 3 function(s): applyClippingRectangleProps, applyGroupProps, applyRenderableNodeProps.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free