SYMBOL INDEX (524 symbols across 97 files) FILE: e2e/helpers.ts constant FIXTURE_URL (line 3) | const FIXTURE_URL = '/?example=e2e-fixture'; function gotoFixture (line 5) | async function gotoFixture(page: Page): Promise { function getRenderCount (line 36) | async function getRenderCount(page: Page): Promise { function waitForRenders (line 40) | async function waitForRenders( function isReactScanActive (line 70) | async function isReactScanActive(page: Page): Promise { function hasShadowRoot (line 76) | async function hasShadowRoot(page: Page): Promise { FILE: e2e/outlines.spec.ts function clickAndCountRenders (line 4) | async function clickAndCountRenders( FILE: kitchen-sink/src/examples/e2e-fixture/index.tsx function Counter (line 12) | function Counter(): JSX.Element { function UnstableProps (line 24) | function UnstableProps(): JSX.Element { function ContextConsumer (line 52) | function ContextConsumer(): JSX.Element { function ThemeToggle (line 57) | function ThemeToggle(): JSX.Element { function SlowComponent (line 75) | function SlowComponent(): JSX.Element { function RapidUpdater (line 97) | function RapidUpdater(): JSX.Element { function E2EFixture (line 116) | function E2EFixture(): JSX.Element { FILE: kitchen-sink/src/examples/sierpinski/index.tsx constant TARGET (line 17) | const TARGET = 50; type SlowTriangleProps (line 56) | interface SlowTriangleProps { type TriangleProps (line 82) | interface TriangleProps { type DotProps (line 99) | interface DotProps { function App (line 131) | function App(): JSX.Element { FILE: kitchen-sink/src/examples/todo-list/index.tsx type TodoItem (line 12) | interface TodoItem { type TodoListItemProps (line 18) | interface TodoListItemProps { function TodoListItem (line 23) | function TodoListItem({ item, setList }: TodoListItemProps): JSX.Element { type TodoListFormProps (line 61) | interface TodoListFormProps { function TodoListForm (line 67) | function TodoListForm({ function TodoList (line 106) | function TodoList(): JSX.Element { function App (line 121) | function App(): JSX.Element { FILE: kitchen-sink/src/main.tsx type Example (line 4) | interface Example { function Home (line 14) | function Home(): JSX.Element { FILE: packages/extension/src/background/icon.ts type IconState (line 3) | enum IconState { FILE: packages/extension/src/types/global.d.ts type Window (line 4) | interface Window { FILE: packages/extension/src/types/messages.ts type BroadcastMessage (line 13) | type BroadcastMessage = z.infer; type IEvents (line 15) | interface IEvents { FILE: packages/extension/src/utils/constants.ts constant STORAGE_KEY (line 1) | const STORAGE_KEY = 'react-scan-options'; constant EXTENSION_STORAGE_KEY (line 2) | const EXTENSION_STORAGE_KEY = 'react-scan-extension'; FILE: packages/extension/src/utils/helpers.ts constant IS_CLIENT (line 5) | const IS_CLIENT = typeof window !== 'undefined'; type ReactRootContainer (line 14) | interface ReactRootContainer { type EventCallback (line 189) | type EventCallback = (data: T) => void; FILE: packages/extension/vite.config.ts constant BROWSER_TYPES (line 7) | const BROWSER_TYPES = { type BrowserType (line 13) | type BrowserType = (typeof BROWSER_TYPES)[keyof typeof BROWSER_TYPES]; FILE: packages/scan/postcss.rem2px.mjs method prepare (line 17) | prepare() { FILE: packages/scan/src/core/fast-serialize.test.ts class CustomClass (line 51) | class CustomClass {} FILE: packages/scan/src/core/index.ts type RootContainer (line 30) | interface RootContainer { type Options (line 55) | interface Options { type StoreType (line 143) | interface StoreType { type OutlineKey (line 157) | type OutlineKey = `${string}-${string}`; type Internals (line 159) | interface Internals { type FunctionalComponentStateChange (line 169) | type FunctionalComponentStateChange = { type ClassComponentStateChange (line 176) | type ClassComponentStateChange = { type StateChange (line 184) | type StateChange = type PropsChange (line 187) | type PropsChange = { type ContextChange (line 194) | type ContextChange = { type Change (line 203) | type Change = StateChange | PropsChange | ContextChange; type ChangesPayload (line 205) | type ChangesPayload = { type ChangesListener (line 212) | type ChangesListener = (changes: ChangesPayload) => void; type LocalStorageOptions (line 251) | type LocalStorageOptions = Omit< FILE: packages/scan/src/core/instrumentation.ts type RenderPhase (line 37) | enum RenderPhase { constant RENDER_PHASE_STRING_TO_ENUM (line 43) | const RENDER_PHASE_STRING_TO_ENUM = { type AggregatedChange (line 49) | interface AggregatedChange { type AggregatedRender (line 54) | interface AggregatedRender { type ChangeReason (line 128) | const enum ChangeReason { type AggregatedChange (line 135) | interface AggregatedChange { type Render (line 140) | interface Render { function fastSerialize (line 156) | function fastSerialize(value: unknown, depth = 0): string { type ContextFiber (line 269) | interface ContextFiber { function getContextChangesTraversal (line 286) | function getContextChangesTraversal( type OnRenderHandler (line 329) | type OnRenderHandler = (fiber: Fiber, renders: Array) => void; type OnCommitStartHandler (line 330) | type OnCommitStartHandler = () => void; type OnCommitFinishHandler (line 331) | type OnCommitFinishHandler = () => void; type OnErrorHandler (line 332) | type OnErrorHandler = (error: unknown) => void; type IsValidFiberHandler (line 333) | type IsValidFiberHandler = (fiber: Fiber) => boolean; type OnActiveHandler (line 334) | type OnActiveHandler = () => void; type InstrumentationConfig (line 336) | interface InstrumentationConfig { type InstrumentationInstance (line 350) | interface InstrumentationInstance { type Instrumentation (line 356) | interface Instrumentation { type IsRenderUnnecessaryState (line 366) | interface IsRenderUnnecessaryState { function isRenderUnnecessaryTraversal (line 370) | function isRenderUnnecessaryTraversal( constant TRACK_UNNECESSARY_RENDERS (line 423) | const TRACK_UNNECESSARY_RENDERS = false; type RenderData (line 425) | interface RenderData { type OldRenderData (line 432) | interface OldRenderData { constant RENDER_DEBOUNCE_MS (line 443) | const RENDER_DEBOUNCE_MS = 16; function getFiberIdentifier (line 447) | function getFiberIdentifier(fiber: Fiber) { function getRenderData (line 451) | function getRenderData(fiber: Fiber) { function setRenderData (line 462) | function setRenderData(fiber: Fiber, value: RenderData) { method onCommitFiberRoot (line 527) | onCommitFiberRoot(_rendererID, root) { method onPostCommitFiberRoot (line 653) | onPostCommitFiberRoot() { FILE: packages/scan/src/core/notifications/event-tracking.ts type FinalInteraction (line 22) | type FinalInteraction = { type NewInteractionStoreState (line 47) | type NewInteractionStoreState = { type InteractionEvent (line 75) | type InteractionEvent = { type LongRenderPipeline (line 88) | type LongRenderPipeline = { type SlowdownEvent (line 101) | type SlowdownEvent = (InteractionEvent | LongRenderPipeline) & { type ToolbarEventStoreState (line 105) | type ToolbarEventStoreState = { type DebugEvent (line 116) | type DebugEvent = { constant EVENT_STORE_CAPACITY (line 152) | const EVENT_STORE_CAPACITY = 200; constant HIGH_SEVERITY_FPS_DROP_TIME (line 324) | const HIGH_SEVERITY_FPS_DROP_TIME = 150; function startLongPipelineTracking (line 328) | function startLongPipelineTracking() { FILE: packages/scan/src/core/notifications/interaction-store.ts type Subscriber (line 4) | type Subscriber = (data: T) => void; class Store (line 6) | class Store { method constructor (line 10) | constructor(initialValue: T) { method subscribe (line 14) | subscribe(subscriber: Subscriber): () => void { method setState (line 24) | setState(data: T) { method getCurrentState (line 29) | getCurrentState(): T { constant MAX_INTERACTION_BATCH (line 33) | const MAX_INTERACTION_BATCH = 150; FILE: packages/scan/src/core/notifications/outline-overlay.ts type TransitionHighlightState (line 9) | type TransitionHighlightState = { type HighlightState (line 22) | type HighlightState = constant FADE_SPEED (line 47) | const FADE_SPEED = 1.8; constant MAX_DELTA (line 48) | const MAX_DELTA = 0.05; constant DEFAULT_DELTA (line 49) | const DEFAULT_DELTA = 1 / 60; function cleanup (line 215) | function cleanup() { FILE: packages/scan/src/core/notifications/performance-store.ts type UnSubscribe (line 4) | type UnSubscribe = () => void; type Callback (line 5) | type Callback = (item: T) => void; type Updater (line 6) | type Updater = (state: BoundedArray) => BoundedArray; type ChanelName (line 7) | type ChanelName = string; type PerformanceEntryChannelsType (line 9) | type PerformanceEntryChannelsType = { constant MAX_CHANNEL_SIZE (line 29) | const MAX_CHANNEL_SIZE = 50; class PerformanceEntryChannels (line 33) | class PerformanceEntryChannels implements PerformanceEntryChannelsTyp... method publish (line 35) | publish(item: T, to: ChanelName, createIfNoChannel = true) { method getAvailableChannels (line 53) | getAvailableChannels() { method subscribe (line 56) | subscribe(to: ChanelName, cb: Callback, dropFirst: boolean = false) { method updateChannelState (line 86) | updateChannelState( method getChannelState (line 111) | getChannelState(channel: ChanelName) { FILE: packages/scan/src/core/notifications/performance-utils.ts type Node (line 16) | type Node = Map< constant THROW_INVARIANTS (line 64) | const THROW_INVARIANTS = false; class BoundedArray (line 74) | class BoundedArray extends Array { method constructor (line 75) | constructor(private capacity: number = 25) { method push (line 79) | push(...items: T[]): number { method fromArray (line 87) | static fromArray(array: Array, capacity: number) { FILE: packages/scan/src/core/notifications/performance.ts type PathFilters (line 30) | interface PathFilters { constant DEFAULT_PATH_FILTERS (line 39) | const DEFAULT_PATH_FILTERS: PathFilters = { constant PATH_FILTER_PATTERNS (line 48) | const PATH_FILTER_PATTERNS = { type FiberType (line 103) | interface FiberType { type FiberRenders (line 177) | type FiberRenders = Record< type InteractionStartStage (line 202) | type InteractionStartStage = { type JSEndStage (line 218) | type JSEndStage = Omit & { type RAFStage (line 223) | type RAFStage = Omit & { type TimeoutStage (line 228) | type TimeoutStage = Omit & { type PerformanceEntryChannelEvent (line 234) | type PerformanceEntryChannelEvent = type CompletedInteraction (line 245) | type CompletedInteraction = { type UnInitializedStage (line 252) | type UnInitializedStage = { type CurrentInteraction (line 259) | type CurrentInteraction = { type Task (line 440) | type Task = { constant MAX_INTERACTION_TASKS (line 449) | const MAX_INTERACTION_TASKS = 25; type ShouldContinue (line 508) | type ShouldContinue = boolean; type LastInteractionRef (line 576) | type LastInteractionRef = { FILE: packages/scan/src/core/notifications/types.ts type PerformanceInteractionEntry (line 1) | interface PerformanceInteractionEntry extends PerformanceEntry { type PerformanceInteraction (line 11) | interface PerformanceInteraction { FILE: packages/scan/src/core/utils.ts function descending (line 42) | function descending(a: number, b: number): number { type ComponentData (line 46) | interface ComponentData { function getComponentGroupNames (line 52) | function getComponentGroupNames(group: ComponentData[]): string { function getComponentGroupTotalTime (line 65) | function getComponentGroupTotalTime(group: ComponentData[]): number { function componentGroupHasForget (line 75) | function componentGroupHasForget(group: ComponentData[]): boolean { type RenderData (line 166) | interface RenderData { function isEqual (line 175) | function isEqual(a: unknown, b: unknown): boolean { FILE: packages/scan/src/new-outlines/canvas.ts constant OUTLINE_ARRAY_SIZE (line 3) | const OUTLINE_ARRAY_SIZE = 7; constant MONO_FONT (line 4) | const MONO_FONT = constant INTERPOLATION_SPEED (line 7) | const INTERPOLATION_SPEED = 0.2; constant SNAP_THRESHOLD (line 8) | const SNAP_THRESHOLD = 0.5; constant MAX_PARTS_LENGTH (line 15) | const MAX_PARTS_LENGTH = 4; constant MAX_LABEL_LENGTH (line 16) | const MAX_LABEL_LENGTH = 40; constant TOTAL_FRAMES (line 17) | const TOTAL_FRAMES = 45; constant PRIMARY_COLOR (line 19) | const PRIMARY_COLOR = '115,97,230'; function sortEntry (line 21) | function sortEntry(prev: [number, string[]], next: [number, string[]]): ... function getSortedEntries (line 25) | function getSortedEntries( function getLabelTextPart (line 32) | function getLabelTextPart([count, names]: [number, string[]]): string { FILE: packages/scan/src/new-outlines/index.ts type IntersectionState (line 101) | interface IntersectionState { function onIntersect (line 108) | function onIntersect( constant IS_OFFSCREEN_CANVAS_WORKER_SUPPORTED (line 289) | const IS_OFFSCREEN_CANVAS_WORKER_SUPPORTED = method onPostCommitFiberRoot (line 620) | onPostCommitFiberRoot() { FILE: packages/scan/src/new-outlines/types.ts type OutlineData (line 1) | interface OutlineData { type InlineOutlineData (line 12) | type InlineOutlineData = [ type ActiveOutline (line 22) | interface ActiveOutline { type BlueprintOutline (line 38) | interface BlueprintOutline { FILE: packages/scan/src/react-component-name/__tests__/utils.ts type TransformFn (line 3) | type TransformFn = ( FILE: packages/scan/src/react-component-name/babel/get-descriptive-name.ts function getDescriptiveName (line 3) | function getDescriptiveName( FILE: packages/scan/src/react-component-name/babel/get-root-statement-path.ts function getRootStatementPath (line 4) | function getRootStatementPath(path: babel.NodePath): babel.NodePath { FILE: packages/scan/src/react-component-name/babel/index.ts function getAssignedDisplayNames (line 8) | function getAssignedDisplayNames(path: NodePath): Set { function isValidFunction (line 33) | function isValidFunction( function assignDisplayName (line 39) | function assignDisplayName( constant REACT_CLASS (line 75) | const REACT_CLASS = ['Component', 'PureComponent']; function isNamespaceExport (line 77) | function isNamespaceExport( function isReactClassComponent (line 99) | function isReactClassComponent(path: NodePath): boolean { function isStyledComponent (line 115) | function isStyledComponent( constant REACT_FACTORY (line 174) | const REACT_FACTORY = [ function isReactComponent (line 181) | function isReactComponent( method Program (line 236) | Program(path) { FILE: packages/scan/src/react-component-name/babel/is-componentish-name.ts function isComponentishName (line 7) | function isComponentishName(name: string, flags: Options['flags']) { FILE: packages/scan/src/react-component-name/babel/is-nested-expression.ts type NestedExpression (line 2) | type NestedExpression = FILE: packages/scan/src/react-component-name/babel/is-path-valid.ts type TypeFilter (line 4) | type TypeFilter = (node: t.Node) => node is V; FILE: packages/scan/src/react-component-name/babel/is-statement-top-level.ts function isStatementTopLevel (line 4) | function isStatementTopLevel( FILE: packages/scan/src/react-component-name/babel/unwrap.ts type TrueTypeFilter (line 6) | type TrueTypeFilter = (node: t.Node) => node is U; type TypeCheck (line 7) | type TypeCheck = K extends TrueTypeFilter ? U : never; type NodeTypeFilter (line 9) | type NodeTypeFilter = (node: t.Node) => boolean; type PathTypeFilter (line 27) | type PathTypeFilter = (node: t.Node) => node is V; FILE: packages/scan/src/react-component-name/core/options.ts type Options (line 3) | interface Options { type Overwrite (line 15) | type Overwrite = Pick> & U; type OptionsResolved (line 17) | type OptionsResolved = Overwrite< function resolveOptions (line 22) | function resolveOptions(options: Options): OptionsResolved { FILE: packages/scan/src/react-component-name/index.ts constant DEFAULT_INCLUDE (line 49) | const DEFAULT_INCLUDE = '**/*.{mtsx,mjsx,tsx,jsx}'; constant DEFAULT_EXCLUDE (line 50) | const DEFAULT_EXCLUDE = '**/node_modules/**'; method transform (line 70) | async transform(code, id) { FILE: packages/scan/src/react-component-name/loader.ts type LoaderContext (line 4) | interface LoaderContext { function ReactComponentNameLoader (line 14) | async function ReactComponentNameLoader( FILE: packages/scan/src/types.ts type ReactScanInternals (line 3) | type ReactScanInternals = typeof import('./core/index')['ReactScanIntern... type Scan (line 4) | type Scan = typeof import('./index')['scan']; type ExtendedReactRenderer (line 6) | interface ExtendedReactRenderer { type TTimer (line 36) | type TTimer = NodeJS.Timeout; type Window (line 38) | interface Window { FILE: packages/scan/src/web/components/copy-to-clipboard/index.tsx type CopyToClipboardProps (line 6) | interface CopyToClipboardProps { FILE: packages/scan/src/web/components/icon/index.tsx type SVGIconProps (line 4) | interface SVGIconProps { FILE: packages/scan/src/web/components/slider/index.tsx type SliderProps (line 4) | interface SliderProps { FILE: packages/scan/src/web/components/sticky-section/index.tsx type StickyRenderProps (line 5) | interface StickyRenderProps { type StickyProps (line 11) | interface StickyProps { FILE: packages/scan/src/web/components/toggle/index.tsx type ToggleProps (line 4) | interface ToggleProps extends JSX.HTMLAttributes { FILE: packages/scan/src/web/constants.ts constant SAFE_AREA (line 1) | const SAFE_AREA = 24; constant MIN_SIZE (line 2) | const MIN_SIZE = { constant MIN_CONTAINER_WIDTH (line 8) | const MIN_CONTAINER_WIDTH = 240; constant LOCALSTORAGE_KEY (line 10) | const LOCALSTORAGE_KEY = "react-scan-widget-settings-v2"; constant LOCALSTORAGE_COLLAPSED_KEY (line 11) | const LOCALSTORAGE_COLLAPSED_KEY = "react-scan-widget-collapsed-v1"; constant LOCALSTORAGE_LAST_VIEW_KEY (line 12) | const LOCALSTORAGE_LAST_VIEW_KEY = "react-scan-widget-last-view-v1"; FILE: packages/scan/src/web/hooks/use-merged-refs.ts type PossibleRef (line 4) | type PossibleRef = Ref | undefined; FILE: packages/scan/src/web/hooks/use-virtual-list.ts type VirtualItem (line 9) | interface VirtualItem { FILE: packages/scan/src/web/state.ts type SlowDowns (line 85) | interface SlowDowns { type WidgetStates (line 90) | type WidgetStates = FILE: packages/scan/src/web/toolbar.tsx class ToolbarErrorBoundary (line 7) | class ToolbarErrorBoundary extends Component { method getDerivedStateFromError (line 10) | static getDerivedStateFromError(error: Error) { method render (line 18) | render() { FILE: packages/scan/src/web/utils/constants.ts constant IS_CLIENT (line 1) | const IS_CLIENT = typeof window !== 'undefined'; FILE: packages/scan/src/web/utils/create-store.ts type SetStateInternal (line 8) | type SetStateInternal = { type StoreApi (line 16) | interface StoreApi { type ExtractState (line 29) | type ExtractState = S extends { getState: () => infer T } ? T : never; type Get (line 31) | type Get = K extends keyof T ? T[K] : F; type Mutate (line 33) | type Mutate = number extends Ms['length' & keyof Ms] type StateCreator (line 41) | type StateCreator< type StoreMutators (line 53) | interface StoreMutators {} type StoreMutatorIdentifier (line 54) | type StoreMutatorIdentifier = keyof StoreMutators; type CreateStore (line 56) | type CreateStore = { type CreateStoreImpl (line 66) | type CreateStoreImpl = < type TState (line 74) | type TState = ReturnType; type Listener (line 75) | type Listener = (state: TState, prevState: TState) => void; FILE: packages/scan/src/web/utils/helpers.ts type WrapperBadge (line 82) | interface WrapperBadge { type ExtendedDisplayName (line 88) | interface ExtendedDisplayName { FILE: packages/scan/src/web/utils/preact/constant.ts function CONSTANT_UPDATE (line 8) | function CONSTANT_UPDATE() { function constant (line 12) | function constant

( FILE: packages/scan/src/web/views/index.tsx type ContentViewProps (line 78) | interface ContentViewProps { FILE: packages/scan/src/web/views/inspector/components-tree/index.tsx type TreeNodeItemProps (line 92) | interface TreeNodeItemProps { constant VALID_TYPES (line 102) | const VALID_TYPES = ['memo', 'forwardRef', 'lazy', 'suspense']; FILE: packages/scan/src/web/views/inspector/components-tree/state.ts type TreeNode (line 5) | interface TreeNode { type FlattenedNode (line 14) | interface FlattenedNode extends TreeNode { type TreeItem (line 31) | interface TreeItem { FILE: packages/scan/src/web/views/inspector/flash-overlay.ts type FlashEntry (line 1) | interface FlashEntry { method create (line 28) | create(container: HTMLElement) { method cleanup (line 89) | cleanup(container: HTMLElement) { method cleanupAll (line 107) | cleanupAll() { FILE: packages/scan/src/web/views/inspector/index.tsx class InspectorErrorBoundary (line 38) | class InspectorErrorBoundary extends Component { method getDerivedStateFromError (line 44) | static getDerivedStateFromError(e: Error) { method render (line 53) | render() { FILE: packages/scan/src/web/views/inspector/logging.ts function safeStringify (line 4) | function safeStringify(value: unknown): string { FILE: packages/scan/src/web/views/inspector/overlay/index.tsx type DrawKind (line 17) | type DrawKind = 'locked' | 'inspecting'; type Rect (line 19) | interface Rect { type LockIconRect (line 26) | interface LockIconRect { constant ANIMATION_CONFIG (line 33) | const ANIMATION_CONFIG = { constant OVERLAY_DPR (line 42) | const OVERLAY_DPR = IS_CLIENT FILE: packages/scan/src/web/views/inspector/properties.tsx type ValueMetadata (line 32) | interface ValueMetadata { type PropertyElementProps (line 42) | interface PropertyElementProps { type PropertySectionProps (line 53) | interface PropertySectionProps { type EditableValueProps (line 61) | interface EditableValueProps { FILE: packages/scan/src/web/views/inspector/states.ts type MinimalFiberInfo (line 7) | interface MinimalFiberInfo { type TimelineUpdate (line 16) | interface TimelineUpdate { type TimelineState (line 25) | interface TimelineState { constant TIMELINE_MAX_UPDATES (line 37) | const TIMELINE_MAX_UPDATES = 1000; FILE: packages/scan/src/web/views/inspector/timeline/index.tsx type TimelineProps (line 10) | interface TimelineProps { FILE: packages/scan/src/web/views/inspector/timeline/utils.ts type ChangeTrackingInfo (line 14) | interface ChangeTrackingInfo { type ChangeKey (line 21) | type ChangeKey = string | number; constant STATE_NAME_REGEX (line 28) | const STATE_NAME_REGEX = /\[(?\w+),\s*set\w+\]/g; constant PROPS_ORDER_REGEX (line 29) | const PROPS_ORDER_REGEX = /\(\s*{\s*(?[^}]+)\s*}\s*\)/; type SectionData (line 95) | interface SectionData { type InspectorData (line 101) | interface InspectorData { type InspectorDataResult (line 154) | interface InspectorDataResult { type BaseChange (line 159) | interface BaseChange { type PropChange (line 165) | interface PropChange extends BaseChange { type StateChange (line 169) | interface StateChange extends BaseChange { type ContextChange (line 173) | interface ContextChange extends BaseChange { type CollectorResult (line 178) | interface CollectorResult { type ContextInfo (line 385) | interface ContextInfo { FILE: packages/scan/src/web/views/inspector/utils.ts type StateItem (line 20) | interface StateItem { type States (line 26) | type States = type ReactRootContainer (line 43) | interface ReactRootContainer { type ReactInternalProps (line 53) | interface ReactInternalProps { type OverrideMethods (line 302) | interface OverrideMethods { type InspectableElement (line 470) | interface InspectableElement { type DiffResult (line 564) | type DiffResult = { type DiffChange (line 575) | type DiffChange = { type InspectableValue (line 582) | type InspectableValue = type AggregatedChanges (line 601) | type AggregatedChanges = { function hackyJsFormatter (line 1173) | function hackyJsFormatter(code: string) { type TimelineSliderValues (line 1536) | interface TimelineSliderValues { type ExtendedMemoizedState (line 1575) | interface ExtendedMemoizedState extends MemoizedState { FILE: packages/scan/src/web/views/inspector/what-changed.tsx type Setter (line 28) | type Setter = Dispatch>; type SectionProps (line 262) | interface SectionProps { FILE: packages/scan/src/web/views/inspector/whats-changed/use-change-store.ts constant CHANGES_QUEUE_INTERVAL (line 12) | const CHANGES_QUEUE_INTERVAL = 50; type SectionData (line 14) | interface SectionData { type InspectorData (line 19) | interface InspectorData { type InspectorState (line 24) | interface InspectorState extends InspectorData { type AggregatedChanges (line 35) | type AggregatedChanges = { type AllAggregatedChanges (line 44) | type AllAggregatedChanges = { FILE: packages/scan/src/web/views/notifications/collapsed-event.tsx type CollapsedDroppedFrame (line 12) | type CollapsedDroppedFrame = { type CollapsedKeyboardInput (line 18) | type CollapsedKeyboardInput = { FILE: packages/scan/src/web/views/notifications/data.ts type GroupedFiberRender (line 8) | type GroupedFiberRender = { type DroppedFramesTiming (line 62) | type DroppedFramesTiming = { type InteractionTiming (line 67) | type InteractionTiming = { type InteractionEvent (line 117) | type InteractionEvent = { type DroppedFramesEvent (line 128) | type DroppedFramesEvent = { type NotificationEvent (line 138) | type NotificationEvent = InteractionEvent | DroppedFramesEvent; type NotificationsState (line 140) | type NotificationsState = { constant NOTIFICATIONS_BORDER (line 208) | const NOTIFICATIONS_BORDER = '#27272A'; FILE: packages/scan/src/web/views/notifications/other-visualization.tsx type BaseTimeDataItem (line 14) | type BaseTimeDataItem = { type TimeData (line 26) | type TimeData = Array; type OverviewInput (line 303) | type OverviewInput = FILE: packages/scan/src/web/views/notifications/popover.tsx type PopoverState (line 13) | type PopoverState = 'closed' | 'opening' | 'open' | 'closing'; FILE: packages/scan/src/web/views/notifications/render-bar-chart.tsx type Bars (line 53) | type Bars = Array< constant NO_PURGE (line 60) | const NO_PURGE = ['hover:bg-[#0f0f0f]']; FILE: packages/scan/src/web/views/notifications/slowdown-history.tsx type CollapsedKeyboardInput (line 202) | type CollapsedKeyboardInput = { type HistoryEvent (line 208) | type HistoryEvent = FILE: packages/scan/src/web/widget/helpers.ts class WindowDimensions (line 4) | class WindowDimensions { method constructor (line 8) | constructor( method rightEdge (line 16) | rightEdge(width: number): number { method bottomEdge (line 20) | bottomEdge(height: number): number { method isFullWidth (line 24) | isFullWidth(width: number): boolean { method isFullHeight (line 28) | isFullHeight(height: number): boolean { FILE: packages/scan/src/web/widget/index.tsx constant COLLAPSED_SIZE (line 38) | const COLLAPSED_SIZE = { FILE: packages/scan/src/web/widget/types.ts type Position (line 1) | interface Position { type Size (line 6) | interface Size { type Corner (line 11) | type Corner = "top-left" | "top-right" | "bottom-left" | "bottom-right"; type CollapsedPosition (line 13) | type CollapsedPosition = { type ResizeHandleProps (line 18) | interface ResizeHandleProps { type WidgetDimensions (line 22) | interface WidgetDimensions { type ComponentsTreeConfig (line 30) | interface ComponentsTreeConfig { type WidgetConfig (line 34) | interface WidgetConfig { type WidgetSettings (line 41) | interface WidgetSettings { FILE: packages/scan/src/worker-shim.ts function createInlineWorker (line 2) | function createInlineWorker(code: string) { FILE: packages/scan/tsup.config.ts constant DIST_PATH (line 9) | const DIST_PATH = './dist'; method onSuccess (line 136) | async onSuccess() { FILE: packages/scan/worker-plugin.ts method setup (line 10) | setup(build) { FILE: packages/vite-plugin-react-scan/src/index.ts function resolveModuleFileContent (line 9) | async function resolveModuleFileContent(moduleName: string, startDir: st... type Logger (line 24) | interface Logger { type ReactScanPluginOptions (line 44) | interface ReactScanPluginOptions { constant PLUGIN_NAME (line 69) | const PLUGIN_NAME = 'vite-plugin-react-scan'; constant DEFAULT_SCAN_OPTIONS (line 71) | const DEFAULT_SCAN_OPTIONS: Partial = {}; constant JSX_EXTENSIONS (line 94) | const JSX_EXTENSIONS = ['.jsx', '.tsx'] as const; constant REACT_SCAN_IDENTIFIER (line 95) | const REACT_SCAN_IDENTIFIER = 'react-scan'; method config (line 154) | config(config) { method configResolved (line 205) | configResolved(resolvedConfig) { method transformIndexHtml (line 225) | transformIndexHtml(html) { method resolveId (line 274) | resolveId(id) { method generateBundle (line 282) | async generateBundle() { method buildEnd (line 313) | buildEnd() { FILE: packages/website/app/api/waitlist/route.ts function POST (line 20) | async function POST(request: Request) { FILE: packages/website/app/layout.tsx function RootLayout (line 45) | function RootLayout({ children }: { children: React.ReactNode }) { FILE: packages/website/app/page.tsx function Home (line 9) | function Home() { FILE: packages/website/app/replay/page.tsx function ReplayPage (line 5) | function ReplayPage() { FILE: packages/website/components/cli.tsx function CLI (line 37) | function CLI({ command }: { command: string }) { FILE: packages/website/components/code.tsx function Code (line 1) | function Code({ FILE: packages/website/components/companies.tsx constant LOGO_FILTER (line 3) | const LOGO_FILTER = 'brightness(0) invert(1) drop-shadow(0 0 0 white) dr... type CompanyLogo (line 5) | interface CompanyLogo { constant LOGOS (line 11) | const LOGOS: CompanyLogo[] = [ function Companies (line 17) | function Companies() { FILE: packages/website/components/counter.tsx type CounterContextType (line 3) | interface CounterContextType { FILE: packages/website/components/footer.tsx function Footer (line 1) | function Footer() { FILE: packages/website/components/header.tsx function Header (line 7) | function Header() { FILE: packages/website/components/icons/types.ts type IconProps (line 1) | interface IconProps { FILE: packages/website/components/install-guide.tsx constant COPY_FEEDBACK_DURATION_MS (line 16) | const COPY_FEEDBACK_DURATION_MS = 2000; type InstallTab (line 24) | interface InstallTab { constant INSTALL_TABS (line 32) | const INSTALL_TABS: InstallTab[] = [ function InstallGuide (line 177) | function InstallGuide() { FILE: packages/website/components/todo-demo.tsx type Todo (line 5) | interface Todo { function TodoInput (line 11) | function TodoInput({ function AddButton (line 37) | function AddButton({ onClick }: { onClick: () => void }) { function TodoList (line 48) | function TodoList({ items, onDelete }: { function TodoItem (line 65) | function TodoItem({ todo, onDelete }: { function TodoDemo (line 87) | function TodoDemo({ closeAction }: { closeAction: () => void }) { FILE: packages/website/public/auto.global.js method inject (line 71) | inject(renderer) { method get (line 93) | get() { method set (line 96) | set(newHook) { method scheduleRefresh (line 154) | scheduleRefresh() { function traverseFiber (line 326) | function traverseFiber(fiber, selector, ascending = false) { function d (line 553) | function d(n3, l5) { function g (line 557) | function g(n3) { function _ (line 560) | function _(l5, u5, t4) { function m (line 566) | function m(n3, t4, i5, r5, o4) { function k (line 570) | function k(n3) { function x (line 573) | function x(n3, l5) { function S (line 576) | function S(n3, l5) { function C (line 581) | function C(n3) { function M (line 591) | function M(n3) { function $ (line 594) | function $() { function I (line 598) | function I(n3, l5, u5, t4, i5, r5, o4, e4, f5, c4, s5) { function P (line 603) | function P(n3, l5, u5, t4, i5) { function A (line 609) | function A(n3, l5, u5) { function H (line 621) | function H(n3, l5) { function L (line 626) | function L(n3, l5, u5, t4) { function T (line 641) | function T(n3, l5, u5) { function j (line 644) | function j(n3, l5, u5, t4, i5) { function F (line 662) | function F(n3) { function O (line 672) | function O(n3, u5, t4, i5, r5, o4, e4, f5, c4, s5) { function z (line 708) | function z(n3, u5, t4) { function N (line 720) | function N(n3) { function V (line 723) | function V(u5, t4, i5, r5, o4, e4, f5, c4, s5) { function q (line 751) | function q(n3, u5, t4) { function B (line 761) | function B(n3, u5, t4) { function D (line 774) | function D(n3, l5, u5) { function E (line 777) | function E(u5, t4, i5) { function K (line 781) | function K(n3) { function p2 (line 836) | function p2(n3, t4) { function d2 (line 841) | function d2(n3) { function h2 (line 844) | function h2(n3, u5, i5) { function y2 (line 878) | function y2(n3, u5) { function _2 (line 882) | function _2(n3, u5) { function A2 (line 886) | function A2(n3) { function T2 (line 891) | function T2(n3, r5) { function q2 (line 895) | function q2(n3, t4) { function x2 (line 900) | function x2(n3) { function j2 (line 904) | function j2() { function w2 (line 951) | function w2(n3) { function z2 (line 957) | function z2(n3) { function B2 (line 961) | function B2(n3) { function C2 (line 965) | function C2(n3, t4) { function D2 (line 970) | function D2(n3, t4) { function t3 (line 976) | function t3() { function n2 (line 1004) | function n2(i5) { function e3 (line 1017) | function e3(i5) { function u3 (line 1041) | function u3(i5, t4) { function d3 (line 1134) | function d3(i5, t4) { function c3 (line 1137) | function c3(i5) { function a3 (line 1141) | function a3(i5) { function l3 (line 1153) | function l3(i5) { function y3 (line 1168) | function y3(i5, t4) { function w3 (line 1240) | function w3(i5, t4) { function _3 (line 1243) | function _3(i5) { function b (line 1263) | function b(i5) { function g2 (line 1269) | function g2(i5) { function p3 (line 1277) | function p3(i5) { function E2 (line 1320) | function E2(i5) { function l4 (line 1333) | function l4(i5, n3) { function d4 (line 1337) | function d4(i5) { function h4 (line 1341) | function h4(i5) { function p4 (line 1433) | function p4(i5, r5, n3, t4) { function useSignal (line 1491) | function useSignal(i5) { function useSignalEffect (line 1496) | function useSignalEffect(i5) { function descending (line 1507) | function descending(a4, b3) { function getComponentGroupNames (line 1510) | function getComponentGroupNames(group) { function getComponentGroupTotalTime (line 1519) | function getComponentGroupTotalTime(group) { function componentGroupHasForget (line 1526) | function componentGroupHasForget(group) { function isEqual (line 1578) | function isEqual(a4, b3) { function g4 (line 1626) | function g4(n3, t4) { function E3 (line 1630) | function E3(n3, t4) { function C3 (line 1635) | function C3(n3, t4) { function x3 (line 1645) | function x3(n3) { function N2 (line 1654) | function N2(n3, t4) { function M2 (line 1657) | function M2(n3, e4) { function D3 (line 1675) | function D3(n3) { function V2 (line 1690) | function V2(n3, t4, e4) { function W (line 1697) | function W(n3, t4, e4) { function P3 (line 1702) | function P3() { function j3 (line 1705) | function j3(n3) { function B3 (line 1709) | function B3() { function Z (line 1753) | function Z(n3) { function Y (line 1758) | function Y(n3) { function $2 (line 1774) | function $2(n3, e4) { function rn (line 1814) | function rn() { function un (line 1816) | function un() { function on (line 1819) | function on() { function u4 (line 1859) | function u4(e4, t4, n3, o4, i5, u5) { function r4 (line 1918) | function r4(e4) { function clsx (line 1927) | function clsx() { method get (line 2077) | get(key) { method set (line 2087) | set(key, value) { function twJoin (line 2219) | function twJoin() { function createTailwindMerge (line 2250) | function createTailwindMerge(createConfigFirst, ...createConfigRest) { function CONSTANT_UPDATE (line 4560) | function CONSTANT_UPDATE() { function constant (line 4563) | function constant(Component) { method create (line 4685) | create(container) { method cleanup (line 4732) | cleanup(container) { method cleanupAll (line 4749) | cleanupAll() { method constructor (line 7023) | constructor() { method getDerivedStateFromError (line 7034) | static getDerivedStateFromError(e4) { method render (line 7037) | render() { function hackyJsFormatter (line 7530) | function hackyJsFormatter(code) { function getContextChangesTraversal (line 8172) | function getContextChangesTraversal(nextValue, prevValue) { function getFiberIdentifier (line 8194) | function getFiberIdentifier(fiber) { function getRenderData (line 8197) | function getRenderData(fiber) { function setRenderData (line 8205) | function setRenderData(fiber, value) { method onCommitFiberRoot (line 8248) | onCommitFiberRoot(_rendererID, root) { method onPostCommitFiberRoot (line 8346) | onPostCommitFiberRoot() { function sortEntry (line 8448) | function sortEntry(prev, next) { function getSortedEntries (line 8451) | function getSortedEntries(countByNames) { function getLabelTextPart (line 8455) | function getLabelTextPart([count, names]) { function onIntersect (line 8713) | function onIntersect(entries, observer) { method onPostCommitFiberRoot (line 9130) | onPostCommitFiberRoot() { method constructor (line 9355) | constructor(capacity = 25) { method push (line 9359) | push(...items) { method fromArray (line 9367) | static fromArray(array, capacity) { method constructor (line 9376) | constructor(initialValue) { method subscribe (line 9380) | subscribe(subscriber) { method setState (line 9387) | setState(data) { method getCurrentState (line 9391) | getCurrentState() { method constructor (line 9403) | constructor() { method publish (line 9406) | publish(item, to, createIfNoChannel = true) { method getAvailableChannels (line 9422) | getAvailableChannels() { method subscribe (line 9425) | subscribe(to, cb, dropFirst = false) { method updateChannelState (line 9454) | updateChannelState(channel, updater, createIfNoChannel = true) { method getChannelState (line 9471) | getChannelState(channel) { function startLongPipelineTracking (line 10316) | function startLongPipelineTracking() { function cleanup2 (line 12223) | function cleanup2() { method constructor (line 14895) | constructor(width, height) { method rightEdge (line 14901) | rightEdge(width) { method bottomEdge (line 14904) | bottomEdge(height) { method isFullWidth (line 14907) | isFullWidth(width) { method isFullHeight (line 14910) | isFullHeight(height) { method constructor (line 16058) | constructor() { method getDerivedStateFromError (line 16065) | static getDerivedStateFromError(error) { method render (line 16068) | render() { FILE: playwright.config.ts constant PORT (line 3) | const PORT = 5173; FILE: scripts/version-warning.mjs constant MESSAGES (line 22) | const MESSAGES = { function getWorkspacePackages (line 32) | function getWorkspacePackages() { function getPackageInfo (line 61) | function getPackageInfo() {