Home / File/ AccordionWindow.tsx — react Source File

AccordionWindow.tsx — react Source File

Architecture documentation for AccordionWindow.tsx, a tsx file in the react codebase. 3 imports, 1 dependents.

File tsx PlaygroundApp Stores 3 imports 1 dependents 2 functions

Entity Profile

Dependency Diagram

graph LR
  026af77a_8146_7891_6382_db3daa921f75["AccordionWindow.tsx"]
  17f774ac_71d5_1815_6a34_f58dd5c8a61b["transitionTypes.ts"]
  026af77a_8146_7891_6382_db3daa921f75 --> 17f774ac_71d5_1815_6a34_f58dd5c8a61b
  960ac0c1_705f_efd0_beac_76a8819749ba["re-resizable"]
  026af77a_8146_7891_6382_db3daa921f75 --> 960ac0c1_705f_efd0_beac_76a8819749ba
  ac587885_e294_a1e9_b13f_5e7b920fdb42["react"]
  026af77a_8146_7891_6382_db3daa921f75 --> ac587885_e294_a1e9_b13f_5e7b920fdb42
  034b2d8c_7261_f40f_c380_2b5db8fde033["Output.tsx"]
  034b2d8c_7261_f40f_c380_2b5db8fde033 --> 026af77a_8146_7891_6382_db3daa921f75
  style 026af77a_8146_7891_6382_db3daa921f75 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

import {Resizable} from 're-resizable';
import React, {
  useId,
  unstable_ViewTransition as ViewTransition,
  unstable_addTransitionType as addTransitionType,
  startTransition,
} from 'react';
import {EXPAND_ACCORDION_TRANSITION} from '../lib/transitionTypes';

type TabsRecord = Map<string, React.ReactNode>;

export default function AccordionWindow(props: {
  defaultTab: string | null;
  tabs: TabsRecord;
  tabsOpen: Set<string>;
  setTabsOpen: (newTab: Set<string>) => void;
  changedPasses: Set<string>;
}): React.ReactElement {
  return (
    <div className="flex-1 min-w-[550px] sm:min-w-0">
      <div className="flex flex-row h-full">
        {Array.from(props.tabs.keys()).map(name => {
          return (
            <AccordionWindowItem
              name={name}
              key={name}
              tabs={props.tabs}
              tabsOpen={props.tabsOpen}
              setTabsOpen={props.setTabsOpen}
              hasChanged={props.changedPasses.has(name)}
            />
          );
        })}
      </div>
    </div>
  );
}

function AccordionWindowItem({
  name,
  tabs,
  tabsOpen,
  setTabsOpen,
  hasChanged,
}: {
  name: string;
  tabs: TabsRecord;
  tabsOpen: Set<string>;
  setTabsOpen: (newTab: Set<string>) => void;
  hasChanged: boolean;
  isFailure: boolean;
}): React.ReactElement {
  const id = useId();
// ... (67 more lines)

Domain

Subdomains

Types

Dependencies

Frequently Asked Questions

What does AccordionWindow.tsx do?
AccordionWindow.tsx is a source file in the react codebase, written in tsx. It belongs to the PlaygroundApp domain, Stores subdomain.
What functions are defined in AccordionWindow.tsx?
AccordionWindow.tsx defines 2 function(s): AccordionWindow, AccordionWindowItem.
What does AccordionWindow.tsx depend on?
AccordionWindow.tsx imports 3 module(s): re-resizable, react, transitionTypes.ts.
What files import AccordionWindow.tsx?
AccordionWindow.tsx is imported by 1 file(s): Output.tsx.
Where is AccordionWindow.tsx in the architecture?
AccordionWindow.tsx is located at compiler/apps/playground/components/AccordionWindow.tsx (domain: PlaygroundApp, subdomain: Stores, directory: compiler/apps/playground/components).

Analyze Your Own Codebase

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

Try Supermodel Free