From de4ee59cba964d45489a2fbc3ab1a2f7937557aa Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Wed, 7 Oct 2026 16:35:13 -0700 Subject: [PATCH] perf(renderer): import published Radix primitives directly (#26256) --- src/renderer/src/components/JiraIssueWorkspace.tsx | 2 +- src/renderer/src/components/LinearIssueWorkspace.tsx | 2 +- src/renderer/src/components/artifacts/ArtifactDetailDrawer.tsx | 2 +- src/renderer/src/components/file-path-cursor-tooltip.tsx | 2 +- .../src/components/github-project/ProjectItemSlugDialog.tsx | 2 +- .../components/gitlab-item-dialog/gitlab-item-dialog-view.tsx | 2 +- src/renderer/src/components/linear-item-drawer-sheet.tsx | 2 +- src/renderer/src/components/ui/accordion.tsx | 2 +- src/renderer/src/components/ui/badge.tsx | 2 +- src/renderer/src/components/ui/button.tsx | 2 +- src/renderer/src/components/ui/checkbox.tsx | 2 +- src/renderer/src/components/ui/collapsible.tsx | 2 +- src/renderer/src/components/ui/command.tsx | 2 +- src/renderer/src/components/ui/context-menu.tsx | 2 +- src/renderer/src/components/ui/dialog.tsx | 2 +- src/renderer/src/components/ui/dropdown-menu.tsx | 2 +- src/renderer/src/components/ui/hover-card.tsx | 2 +- src/renderer/src/components/ui/label.tsx | 2 +- src/renderer/src/components/ui/popover.tsx | 2 +- src/renderer/src/components/ui/progress.tsx | 2 +- src/renderer/src/components/ui/scroll-area.tsx | 2 +- src/renderer/src/components/ui/select.tsx | 2 +- src/renderer/src/components/ui/separator.tsx | 2 +- src/renderer/src/components/ui/sheet.tsx | 2 +- src/renderer/src/components/ui/slider.tsx | 2 +- src/renderer/src/components/ui/switch.tsx | 2 +- src/renderer/src/components/ui/tabs.tsx | 2 +- src/renderer/src/components/ui/toggle-group.tsx | 2 +- src/renderer/src/components/ui/toggle.tsx | 2 +- src/renderer/src/components/ui/tooltip.tsx | 2 +- 30 files changed, 30 insertions(+), 30 deletions(-) diff --git a/src/renderer/src/components/JiraIssueWorkspace.tsx b/src/renderer/src/components/JiraIssueWorkspace.tsx index 6572692929a..e8676b14b69 100644 --- a/src/renderer/src/components/JiraIssueWorkspace.tsx +++ b/src/renderer/src/components/JiraIssueWorkspace.tsx @@ -1,7 +1,7 @@ /* oxlint-disable react-doctor/no-adjust-state-on-prop-change -- Why: Jira issue hydration, comments, transitions, priorities, and user options are loaded from provider IPC for the selected issue. */ import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react' import { toast } from 'sonner' -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/ui/sheet' import { getCommentBodySubmitState, diff --git a/src/renderer/src/components/LinearIssueWorkspace.tsx b/src/renderer/src/components/LinearIssueWorkspace.tsx index e5808aa5459..cafe1be1506 100644 --- a/src/renderer/src/components/LinearIssueWorkspace.tsx +++ b/src/renderer/src/components/LinearIssueWorkspace.tsx @@ -1,5 +1,5 @@ import React, { useCallback, useMemo } from 'react' -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import { LinearIssueTextEditor } from '@/components/LinearIssueTextEditor' import { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/ui/sheet' diff --git a/src/renderer/src/components/artifacts/ArtifactDetailDrawer.tsx b/src/renderer/src/components/artifacts/ArtifactDetailDrawer.tsx index a95f5170e77..b77c6028fab 100644 --- a/src/renderer/src/components/artifacts/ArtifactDetailDrawer.tsx +++ b/src/renderer/src/components/artifacts/ArtifactDetailDrawer.tsx @@ -1,4 +1,4 @@ -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import type { ArtifactListItem } from '../../../../shared/artifacts' import { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/ui/sheet' import { translate } from '@/i18n/i18n' diff --git a/src/renderer/src/components/file-path-cursor-tooltip.tsx b/src/renderer/src/components/file-path-cursor-tooltip.tsx index 4d28b5cae88..f346a2c32b0 100644 --- a/src/renderer/src/components/file-path-cursor-tooltip.tsx +++ b/src/renderer/src/components/file-path-cursor-tooltip.tsx @@ -1,5 +1,5 @@ import React from 'react' -import { Slot } from 'radix-ui' +import * as Slot from 'radix-ui/slot' import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip' // Clears the pointer without putting the label under the cursor's own hotspot. diff --git a/src/renderer/src/components/github-project/ProjectItemSlugDialog.tsx b/src/renderer/src/components/github-project/ProjectItemSlugDialog.tsx index bf176e802c3..06dc94deb4c 100644 --- a/src/renderer/src/components/github-project/ProjectItemSlugDialog.tsx +++ b/src/renderer/src/components/github-project/ProjectItemSlugDialog.tsx @@ -8,7 +8,7 @@ // simplified surface; it also routes every write through slug-addressed // mutation helpers and patches the Project table cache on success. import React from 'react' -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/ui/sheet' import type { GitHubItemDialogProjectOrigin } from '@/components/GitHubItemDialog' import { SlugDialogBody } from './slug-dialog/SlugDialogBody' diff --git a/src/renderer/src/components/gitlab-item-dialog/gitlab-item-dialog-view.tsx b/src/renderer/src/components/gitlab-item-dialog/gitlab-item-dialog-view.tsx index 5a4bc3efed3..08fbda90682 100644 --- a/src/renderer/src/components/gitlab-item-dialog/gitlab-item-dialog-view.tsx +++ b/src/renderer/src/components/gitlab-item-dialog/gitlab-item-dialog-view.tsx @@ -1,6 +1,6 @@ import { ImeTextarea } from '@/lib/ime-text-field' import { CircleDot, ExternalLink, GitMerge, LoaderCircle, RefreshCw, Send, X } from 'lucide-react' -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import { Button } from '@/components/ui/button' import { Sheet, diff --git a/src/renderer/src/components/linear-item-drawer-sheet.tsx b/src/renderer/src/components/linear-item-drawer-sheet.tsx index 94d4263bbf7..247266424b0 100644 --- a/src/renderer/src/components/linear-item-drawer-sheet.tsx +++ b/src/renderer/src/components/linear-item-drawer-sheet.tsx @@ -8,7 +8,7 @@ import { Plus, X } from 'lucide-react' -import { VisuallyHidden } from 'radix-ui' +import * as VisuallyHidden from 'radix-ui/visually-hidden' import { Button } from '@/components/ui/button' import { ButtonGroup } from '@/components/ui/button-group' diff --git a/src/renderer/src/components/ui/accordion.tsx b/src/renderer/src/components/ui/accordion.tsx index c5ed9d31348..993b40010fa 100644 --- a/src/renderer/src/components/ui/accordion.tsx +++ b/src/renderer/src/components/ui/accordion.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { ChevronDown } from 'lucide-react' -import { Accordion as AccordionPrimitive } from 'radix-ui' +import * as AccordionPrimitive from 'radix-ui/accordion' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/badge.tsx b/src/renderer/src/components/ui/badge.tsx index 2d2d0027e5c..25b701f014f 100644 --- a/src/renderer/src/components/ui/badge.tsx +++ b/src/renderer/src/components/ui/badge.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' -import { Slot } from 'radix-ui' +import * as Slot from 'radix-ui/slot' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/button.tsx b/src/renderer/src/components/ui/button.tsx index 016cd15341a..0d46fe49255 100644 --- a/src/renderer/src/components/ui/button.tsx +++ b/src/renderer/src/components/ui/button.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' -import { Slot } from 'radix-ui' +import * as Slot from 'radix-ui/slot' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/checkbox.tsx b/src/renderer/src/components/ui/checkbox.tsx index 2e9e53e55e7..415332c0c9b 100644 --- a/src/renderer/src/components/ui/checkbox.tsx +++ b/src/renderer/src/components/ui/checkbox.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { CheckIcon, MinusIcon } from 'lucide-react' -import { Checkbox as CheckboxPrimitive } from 'radix-ui' +import * as CheckboxPrimitive from 'radix-ui/checkbox' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/collapsible.tsx b/src/renderer/src/components/ui/collapsible.tsx index d441988a90f..2931c0a3be5 100644 --- a/src/renderer/src/components/ui/collapsible.tsx +++ b/src/renderer/src/components/ui/collapsible.tsx @@ -3,7 +3,7 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' import { cn } from '@/lib/utils' -import { Collapsible as CollapsiblePrimitive } from 'radix-ui' +import * as CollapsiblePrimitive from 'radix-ui/collapsible' function Collapsible({ ...props diff --git a/src/renderer/src/components/ui/command.tsx b/src/renderer/src/components/ui/command.tsx index 3ed78d03d47..2178933ea08 100644 --- a/src/renderer/src/components/ui/command.tsx +++ b/src/renderer/src/components/ui/command.tsx @@ -4,7 +4,7 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' import { Command as CommandPrimitive } from 'cmdk' import { SearchIcon } from 'lucide-react' -import { Dialog as DialogPrimitive } from 'radix-ui' +import * as DialogPrimitive from 'radix-ui/dialog' import { cn } from '@/lib/utils' import { handleImeOverlayEscape } from '@/lib/ime-overlay-escape' diff --git a/src/renderer/src/components/ui/context-menu.tsx b/src/renderer/src/components/ui/context-menu.tsx index 5fa36fe1ebe..c57948cde04 100644 --- a/src/renderer/src/components/ui/context-menu.tsx +++ b/src/renderer/src/components/ui/context-menu.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { ChevronRightIcon, CircleIcon } from 'lucide-react' -import { ContextMenu as ContextMenuPrimitive } from 'radix-ui' +import * as ContextMenuPrimitive from 'radix-ui/context-menu' import { cn } from '@/lib/utils' import { handleImeOverlayEscape } from '@/lib/ime-overlay-escape' diff --git a/src/renderer/src/components/ui/dialog.tsx b/src/renderer/src/components/ui/dialog.tsx index f996d91b1b6..5a74593bda1 100644 --- a/src/renderer/src/components/ui/dialog.tsx +++ b/src/renderer/src/components/ui/dialog.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { XIcon } from 'lucide-react' -import { Dialog as DialogPrimitive } from 'radix-ui' +import * as DialogPrimitive from 'radix-ui/dialog' import { cn } from '@/lib/utils' import { handleImeOverlayEscape } from '@/lib/ime-overlay-escape' diff --git a/src/renderer/src/components/ui/dropdown-menu.tsx b/src/renderer/src/components/ui/dropdown-menu.tsx index 7026c397c04..c02282d8abb 100644 --- a/src/renderer/src/components/ui/dropdown-menu.tsx +++ b/src/renderer/src/components/ui/dropdown-menu.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react' -import { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui' +import * as DropdownMenuPrimitive from 'radix-ui/dropdown-menu' import { cn } from '@/lib/utils' import { handleImeOverlayEscape } from '@/lib/ime-overlay-escape' diff --git a/src/renderer/src/components/ui/hover-card.tsx b/src/renderer/src/components/ui/hover-card.tsx index c9ee04f500d..a6b69b003a1 100644 --- a/src/renderer/src/components/ui/hover-card.tsx +++ b/src/renderer/src/components/ui/hover-card.tsx @@ -1,7 +1,7 @@ 'use client' import * as React from 'react' -import { HoverCard as HoverCardPrimitive } from 'radix-ui' +import * as HoverCardPrimitive from 'radix-ui/hover-card' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/label.tsx b/src/renderer/src/components/ui/label.tsx index b1feae48794..27a52a92455 100644 --- a/src/renderer/src/components/ui/label.tsx +++ b/src/renderer/src/components/ui/label.tsx @@ -1,7 +1,7 @@ 'use client' import * as React from 'react' -import { Label as LabelPrimitive } from 'radix-ui' +import * as LabelPrimitive from 'radix-ui/label' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/popover.tsx b/src/renderer/src/components/ui/popover.tsx index 1652805a59b..2f5ed292b46 100644 --- a/src/renderer/src/components/ui/popover.tsx +++ b/src/renderer/src/components/ui/popover.tsx @@ -1,7 +1,7 @@ 'use client' import * as React from 'react' -import { Popover as PopoverPrimitive } from 'radix-ui' +import * as PopoverPrimitive from 'radix-ui/popover' import { cn } from '@/lib/utils' import { handleImeOverlayEscape } from '@/lib/ime-overlay-escape' diff --git a/src/renderer/src/components/ui/progress.tsx b/src/renderer/src/components/ui/progress.tsx index 06175fb40e4..ed239b53ce7 100644 --- a/src/renderer/src/components/ui/progress.tsx +++ b/src/renderer/src/components/ui/progress.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { Progress as ProgressPrimitive } from 'radix-ui' +import * as ProgressPrimitive from 'radix-ui/progress' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/scroll-area.tsx b/src/renderer/src/components/ui/scroll-area.tsx index c3e41209953..6017b861062 100644 --- a/src/renderer/src/components/ui/scroll-area.tsx +++ b/src/renderer/src/components/ui/scroll-area.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { ScrollArea as ScrollAreaPrimitive } from 'radix-ui' +import * as ScrollAreaPrimitive from 'radix-ui/scroll-area' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/select.tsx b/src/renderer/src/components/ui/select.tsx index a27f230538d..aebaf6f2228 100644 --- a/src/renderer/src/components/ui/select.tsx +++ b/src/renderer/src/components/ui/select.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from 'lucide-react' -import { Select as SelectPrimitive } from 'radix-ui' +import * as SelectPrimitive from 'radix-ui/select' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/separator.tsx b/src/renderer/src/components/ui/separator.tsx index 84f76bb9d0e..5375486a302 100644 --- a/src/renderer/src/components/ui/separator.tsx +++ b/src/renderer/src/components/ui/separator.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { Separator as SeparatorPrimitive } from 'radix-ui' +import * as SeparatorPrimitive from 'radix-ui/separator' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/sheet.tsx b/src/renderer/src/components/ui/sheet.tsx index 26199a56a33..ec179062dd5 100644 --- a/src/renderer/src/components/ui/sheet.tsx +++ b/src/renderer/src/components/ui/sheet.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { XIcon } from 'lucide-react' -import { Dialog as SheetPrimitive } from 'radix-ui' +import * as SheetPrimitive from 'radix-ui/dialog' import { cva, type VariantProps } from 'class-variance-authority' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/slider.tsx b/src/renderer/src/components/ui/slider.tsx index c1e6a70c7f2..78672dbc1ea 100644 --- a/src/renderer/src/components/ui/slider.tsx +++ b/src/renderer/src/components/ui/slider.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { Slider as SliderPrimitive } from 'radix-ui' +import * as SliderPrimitive from 'radix-ui/slider' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/switch.tsx b/src/renderer/src/components/ui/switch.tsx index 5213b703e73..fdf1a31666f 100644 --- a/src/renderer/src/components/ui/switch.tsx +++ b/src/renderer/src/components/ui/switch.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { Switch as SwitchPrimitive } from 'radix-ui' +import * as SwitchPrimitive from 'radix-ui/switch' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/tabs.tsx b/src/renderer/src/components/ui/tabs.tsx index 626a94f4554..41d21ca6e96 100644 --- a/src/renderer/src/components/ui/tabs.tsx +++ b/src/renderer/src/components/ui/tabs.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' -import { Tabs as TabsPrimitive } from 'radix-ui' +import * as TabsPrimitive from 'radix-ui/tabs' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/toggle-group.tsx b/src/renderer/src/components/ui/toggle-group.tsx index c8821237b4f..41144a6ca90 100644 --- a/src/renderer/src/components/ui/toggle-group.tsx +++ b/src/renderer/src/components/ui/toggle-group.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import type { VariantProps } from 'class-variance-authority' -import { ToggleGroup as ToggleGroupPrimitive } from 'radix-ui' +import * as ToggleGroupPrimitive from 'radix-ui/toggle-group' import { cn } from '@/lib/utils' import { toggleVariants } from '@/components/ui/toggle' diff --git a/src/renderer/src/components/ui/toggle.tsx b/src/renderer/src/components/ui/toggle.tsx index efd54a62db3..591668f735d 100644 --- a/src/renderer/src/components/ui/toggle.tsx +++ b/src/renderer/src/components/ui/toggle.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { cva, type VariantProps } from 'class-variance-authority' -import { Toggle as TogglePrimitive } from 'radix-ui' +import * as TogglePrimitive from 'radix-ui/toggle' import { cn } from '@/lib/utils' diff --git a/src/renderer/src/components/ui/tooltip.tsx b/src/renderer/src/components/ui/tooltip.tsx index 72c4d1cbebb..222d8c44723 100644 --- a/src/renderer/src/components/ui/tooltip.tsx +++ b/src/renderer/src/components/ui/tooltip.tsx @@ -1,5 +1,5 @@ import * as React from 'react' -import { Tooltip as TooltipPrimitive } from 'radix-ui' +import * as TooltipPrimitive from 'radix-ui/tooltip' import { cn } from '@/lib/utils'