Home / File/ exhaustive-deps.js — react Source File

exhaustive-deps.js — react Source File

Architecture documentation for exhaustive-deps.js, a javascript file in the react codebase. 2 imports, 0 dependents.

File javascript TestingUtilities Fixtures 2 imports 8 functions

Entity Profile

Dependency Diagram

graph LR
  9d1bae78_9fde_e5ba_7bb7_ce7c19eafcb8["exhaustive-deps.js"]
  ac587885_e294_a1e9_b13f_5e7b920fdb42["react"]
  9d1bae78_9fde_e5ba_7bb7_ce7c19eafcb8 --> ac587885_e294_a1e9_b13f_5e7b920fdb42
  006eec3d_77a9_4a47_e6c1_a96d7a6c9c05["shared-runtime"]
  9d1bae78_9fde_e5ba_7bb7_ce7c19eafcb8 --> 006eec3d_77a9_4a47_e6c1_a96d7a6c9c05
  style 9d1bae78_9fde_e5ba_7bb7_ce7c19eafcb8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// @validateExhaustiveMemoizationDependencies
import {useCallback, useMemo} from 'react';
import {makeObject_Primitives, Stringify} from 'shared-runtime';

function useHook1(x) {
  return useMemo(() => {
    return x?.y.z?.a;
  }, [x?.y.z?.a]);
}
function useHook2(x) {
  useMemo(() => {
    return x.y.z?.a;
  }, [x.y.z?.a]);
}
function useHook3(x) {
  return useMemo(() => {
    return x?.y.z.a?.b;
  }, [x?.y.z.a?.b]);
}
function useHook4(x, y, z) {
  return useMemo(() => {
    return x?.y?.[(console.log(y), z?.b)];
  }, [x?.y, y, z?.b]);
}
function useHook5(x) {
  return useMemo(() => {
    const e = [];
    const local = makeObject_Primitives(x);
    const fn = () => {
      e.push(local);
    };
    fn();
    return e;
  }, [x]);
}
function useHook6(x) {
  return useMemo(() => {
    const f = [];
    f.push(x.y.z);
    f.push(x.y);
    f.push(x);
    return f;
  }, [x]);
}

function useHook7(x) {
  const [state, setState] = useState(true);
  const f = () => {
    setState(x => !x);
  };
  return useCallback(() => {
    f();
  }, [f]);
}

function Component({x, y, z}) {
  const a = useHook1(x);
  const b = useHook2(x);
  const c = useHook3(x);
  const d = useHook4(x, y, z);
  const e = useHook5(x);
  const f = useHook6(x);
  const g = useHook7(x);
  return <Stringify results={[a, b, c, d, e, f, g]} />;
}

Subdomains

Dependencies

  • react
  • shared-runtime

Frequently Asked Questions

What does exhaustive-deps.js do?
exhaustive-deps.js is a source file in the react codebase, written in javascript. It belongs to the TestingUtilities domain, Fixtures subdomain.
What functions are defined in exhaustive-deps.js?
exhaustive-deps.js defines 8 function(s): Component, useHook1, useHook2, useHook3, useHook4, useHook5, useHook6, useHook7.
What does exhaustive-deps.js depend on?
exhaustive-deps.js imports 2 module(s): react, shared-runtime.
Where is exhaustive-deps.js in the architecture?
exhaustive-deps.js is located at compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps.js (domain: TestingUtilities, subdomain: Fixtures, directory: compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps).

Analyze Your Own Codebase

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

Try Supermodel Free