From d0fd4478c0d81150802a307a56582abcac6e31a7 Mon Sep 17 00:00:00 2001 From: Gildas Garcia <1122076+djhi@users.noreply.github.com> Date: Fri, 15 May 2026 15:20:28 +0200 Subject: [PATCH] chore: migrate Popover usages to Shadcn components (#45980) ## Problem We have multiple Popover components ## Solution - [x] migrate Popover usages to Shadcn components - Migrated JSON and text editor in the `TableEditor` (inline row edition) - Migrated the template popover in the logs explorer templates page - [x] remove `_Shadcn_` suffix from Popover components (renaming + prettier) ## Summary by CodeRabbit * **Refactor** * Unified popover implementation across the app and design system; dropdowns, calendars, menus and tooltips now use a consistent popover API with no visual or interaction changes. * **Chores** * Minor prop typing update for the logs date-picker to align with the consolidated popover content type. [![Review Change Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/supabase/supabase/pull/45980) --- .../default/example/calendar-form.tsx | 18 +-- .../example/calendar-react-hook-form.tsx | 18 +-- .../default/example/combobox-demo.tsx | 18 +-- .../default/example/combobox-form.tsx | 18 +-- .../default/example/combobox-popover.tsx | 18 +-- .../default/example/combobox-responsive.tsx | 18 +-- .../default/example/date-picker-demo.tsx | 20 +-- .../default/example/date-picker-form.tsx | 18 +-- .../example/date-picker-with-presets.tsx | 18 +-- .../example/date-picker-with-range.tsx | 20 +-- .../example/form-patterns-pagelayout.tsx | 18 +-- .../example/form-patterns-sidepanel.tsx | 18 +-- .../registry/default/example/popover-demo.tsx | 21 +-- .../deployment/terraform/reference/page.tsx | 26 ++-- .../ProjectConfigVariables.ComboBox.tsx | 6 +- apps/docs/features/ui/McpConfigPanel.tsx | 30 ++--- .../grid/components/editor/DateTimeEditor.tsx | 18 +-- .../grid/components/editor/JsonEditor.tsx | 57 ++++---- .../grid/components/editor/TextEditor.tsx | 65 ++++----- .../formatter/ForeignKeyFormatter.tsx | 14 +- .../header/filter/FilterPopoverPrimitive.tsx | 22 ++- .../header/sort/SortPopoverPrimitive.tsx | 22 ++- .../PermissionResourceSelector.tsx | 18 +-- .../Scoped/Form/Permissions/Permissions.tsx | 21 +-- .../Account/Preferences/TimezoneSettings.tsx | 21 ++- .../Auth/AuthProvidersForm/FormField.tsx | 18 +-- .../PolicyEditorPanel/PolicyDetailsV2.tsx | 18 +-- .../Auth/RLSTester/UserSelector.tsx | 18 +-- .../ThirdPartyAuthForm/AwsRegionSelector.tsx | 18 +-- .../NewPaymentMethodElement.tsx | 6 +- .../BranchManagement/BranchSelector.tsx | 18 +-- .../interfaces/Connect/ConnectDropdown.tsx | 18 +-- .../ConnectSheet/FrameworkSelector.tsx | 18 +-- .../Backups/PITR/TimezoneSelection.tsx | 18 +-- .../Database/Indexes/CreateIndexSidePanel.tsx | 51 +++---- .../DestinationForm/PublicationsComboBox.tsx | 18 +-- .../interfaces/Database/Tables/TableList.tsx | 18 +-- .../interfaces/Home/ServiceStatus.tsx | 20 +-- .../CronJobs/EdgeFunctionSection.tsx | 18 +-- .../Integrations/Queues/QueueTab.tsx | 22 +-- .../Vercel/OrganizationPicker.tsx | 23 ++-- .../VercelGithub/ProjectLinker.tsx | 23 ++-- .../Integrations/Wrappers/ColumnType.tsx | 23 ++-- .../Wrappers/WrapperTableEditor.tsx | 18 +-- .../BillingCustomerDataForm.tsx | 6 +- .../Apps/CreateAppSheet/CreateAppSheet.tsx | 18 +-- .../ProjectAPIDocs/LanguageSelector.tsx | 18 +-- .../ProjectAPIDocs/SecondLevelNav.Layout.tsx | 18 +-- .../ProjectCreation/ProjectCreationFooter.tsx | 4 +- .../Inspector/ChooseChannelPopover.tsx | 18 +-- .../RealtimeFilterPopover/TableSelector.tsx | 18 +-- .../Inspector/RealtimeFilterPopover/index.tsx | 18 +-- .../Reports/ReportFilterPopover.tsx | 22 +-- .../RoleImpersonationPopover.tsx | 14 +- .../interfaces/SQLEditor/MoveQueryModal.tsx | 23 ++-- .../Settings/API/ExposedFunctionSelector.tsx | 18 +-- .../Settings/API/ExposedSchemaSelector.tsx | 18 +-- .../Settings/API/ExposedTableSelector.tsx | 18 +-- .../GitHubRepositoryField.tsx | 23 ++-- .../Settings/Logs/Logs.DatePickers.tsx | 20 +-- .../Settings/Logs/LogsQueryPanel.tsx | 18 +-- .../VectorBucketTableExamplesSheet.tsx | 18 +-- .../TableGridEditor/GridHeaderActions.tsx | 30 ++--- .../TableGridEditor/IndexAdvisorPopover.tsx | 14 +- .../SecurityDefinerViewPopover.tsx | 14 +- .../ColumnEditor/ColumnType.tsx | 23 ++-- .../SidePanelEditor/TableEditor/Column.tsx | 30 ++--- .../shared/TruncatedTextWithPopover.tsx | 14 +- .../layouts/AppLayout/AppLayoutDropdown.tsx | 14 +- .../EdgeFunctionDetailsLayout.tsx | 18 +-- .../FeedbackDropdown/FeedbackDropdown.tsx | 22 ++- .../FeedbackDropdown/FeedbackWidget.tsx | 6 +- .../LayoutHeader/LocalVersionPopover.tsx | 22 +-- .../Navigation/NavigationBar/OrgSelector.tsx | 16 +-- .../NavigationBar/ProjectBranchSelector.tsx | 18 +-- .../TableEditorLayout/TableEditorMenu.tsx | 21 +-- .../AIAssistantChatSelector.tsx | 18 +-- .../ui/AIAssistantPanel/Message.Actions.tsx | 18 +-- .../ui/AIAssistantPanel/ModelSelector.tsx | 18 +-- .../ui/DataTable/DataTableViewOptions.tsx | 6 +- .../studio/components/ui/DatabaseSelector.tsx | 18 +-- .../studio/components/ui/DatePicker/index.tsx | 20 +-- .../components/ui/EditorPanel/EditorPanel.tsx | 30 ++--- apps/studio/components/ui/FilterPopover.tsx | 18 +-- .../studio/components/ui/FunctionSelector.tsx | 18 +-- .../ui/OrganizationProjectSelector.tsx | 18 +-- .../ui/QueryBlock/BlockViewConfiguration.tsx | 18 +-- apps/studio/components/ui/SchemaComboBox.tsx | 18 +-- apps/studio/components/ui/SchemaSelector.tsx | 18 +-- .../pages/project/[ref]/functions/new.tsx | 18 +-- .../project/[ref]/logs/explorer/templates.tsx | 35 +++-- .../tanstack-db-generator/ComboBox.tsx | 6 +- .../components/Contribute/FilterPopover.tsx | 19 +-- .../Contribute/UnansweredThreadsTable.tsx | 20 +-- apps/www/components/Pricing/UpgradePlan.tsx | 18 +-- .../src/FilterBar/FilterCondition.tsx | 45 +++---- .../ui-patterns/src/FilterBar/FilterGroup.tsx | 16 +-- .../components/ClientSelectDropdown.tsx | 18 +-- .../src/multi-select/multi-select.tsx | 9 +- packages/ui/index.tsx | 10 +- .../src/components/Popover/Popover.module.css | 63 --------- .../ui/src/components/Popover/Popover.tsx | 125 ------------------ packages/ui/src/components/Popover/index.tsx | 1 - packages/ui/src/lib/theme/defaultTheme.ts | 61 --------- 104 files changed, 899 insertions(+), 1318 deletions(-) delete mode 100644 packages/ui/src/components/Popover/Popover.module.css delete mode 100644 packages/ui/src/components/Popover/Popover.tsx delete mode 100644 packages/ui/src/components/Popover/index.tsx diff --git a/apps/design-system/registry/default/example/calendar-form.tsx b/apps/design-system/registry/default/example/calendar-form.tsx index aaad24692e9..c94a7f56050 100644 --- a/apps/design-system/registry/default/example/calendar-form.tsx +++ b/apps/design-system/registry/default/example/calendar-form.tsx @@ -15,9 +15,9 @@ import { FormItem, FormLabel, FormMessage, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { z } from 'zod' @@ -53,8 +53,8 @@ export default function CalendarForm() { render={({ field }) => ( Date of birth - - + + - - + + date > new Date() || date < new Date('1900-01-01')} initialFocus /> - - + + Your date of birth is used to calculate your age. diff --git a/apps/design-system/registry/default/example/calendar-react-hook-form.tsx b/apps/design-system/registry/default/example/calendar-react-hook-form.tsx index fbe9c6685e1..fd580854922 100644 --- a/apps/design-system/registry/default/example/calendar-react-hook-form.tsx +++ b/apps/design-system/registry/default/example/calendar-react-hook-form.tsx @@ -15,9 +15,9 @@ import { FormItem, FormLabel, FormMessage, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { z } from 'zod' @@ -53,8 +53,8 @@ export default function CalendarForm() { render={({ field }) => ( Date of birth - - + + - - + + date > new Date() || date < new Date('1900-01-01')} initialFocus /> - - + + Your date of birth is used to calculate your age. diff --git a/apps/design-system/registry/default/example/combobox-demo.tsx b/apps/design-system/registry/default/example/combobox-demo.tsx index eccdefbc137..558d83237e4 100644 --- a/apps/design-system/registry/default/example/combobox-demo.tsx +++ b/apps/design-system/registry/default/example/combobox-demo.tsx @@ -10,9 +10,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { cn } from '@/lib/utils' @@ -45,8 +45,8 @@ export default function ComboboxDemo() { const [value, setValue] = React.useState('') return ( - - + + - - + + @@ -87,7 +87,7 @@ export default function ComboboxDemo() { - - + + ) } diff --git a/apps/design-system/registry/default/example/combobox-form.tsx b/apps/design-system/registry/default/example/combobox-form.tsx index edf91161049..b83b07f07fa 100644 --- a/apps/design-system/registry/default/example/combobox-form.tsx +++ b/apps/design-system/registry/default/example/combobox-form.tsx @@ -19,9 +19,9 @@ import { FormItem, FormLabel, FormMessage, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { z } from 'zod' @@ -69,8 +69,8 @@ export default function ComboboxForm() { render={({ field }) => ( Language - - + + - - + + @@ -112,8 +112,8 @@ export default function ComboboxPopover() { - - + + ) } diff --git a/apps/design-system/registry/default/example/combobox-responsive.tsx b/apps/design-system/registry/default/example/combobox-responsive.tsx index 85b412dff9d..d09a1fd6285 100644 --- a/apps/design-system/registry/default/example/combobox-responsive.tsx +++ b/apps/design-system/registry/default/example/combobox-responsive.tsx @@ -13,9 +13,9 @@ import { Drawer, DrawerContent, DrawerTrigger, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { useMediaQuery } from '@/hooks/use-media-query' @@ -55,8 +55,8 @@ export default function ComboBoxResponsive() { if (isDesktop) { return ( - - + + - - + + - - + + ) } diff --git a/apps/design-system/registry/default/example/date-picker-demo.tsx b/apps/design-system/registry/default/example/date-picker-demo.tsx index 841b6316fcd..3d1bd8ae6f8 100644 --- a/apps/design-system/registry/default/example/date-picker-demo.tsx +++ b/apps/design-system/registry/default/example/date-picker-demo.tsx @@ -3,13 +3,7 @@ import { format } from 'date-fns' import { Calendar as CalendarIcon } from 'lucide-react' import * as React from 'react' -import { - Button, - Calendar, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Calendar, Popover, PopoverContent, PopoverTrigger } from 'ui' import { cn } from '@/lib/utils' @@ -17,8 +11,8 @@ export default function DatePickerDemo() { const [date, setDate] = React.useState() return ( - - + + - - + + - - + + ) } diff --git a/apps/design-system/registry/default/example/date-picker-form.tsx b/apps/design-system/registry/default/example/date-picker-form.tsx index 0f81cc719b9..3e04211b3e4 100644 --- a/apps/design-system/registry/default/example/date-picker-form.tsx +++ b/apps/design-system/registry/default/example/date-picker-form.tsx @@ -15,9 +15,9 @@ import { FormItem, FormLabel, FormMessage, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { z } from 'zod' @@ -53,8 +53,8 @@ export default function DatePickerForm() { render={({ field }) => ( Date of birth - - + + - - + + date > new Date() || date < new Date('1900-01-01')} initialFocus /> - - + + Your date of birth is used to calculate your age. diff --git a/apps/design-system/registry/default/example/date-picker-with-presets.tsx b/apps/design-system/registry/default/example/date-picker-with-presets.tsx index be271ab5fdc..eb142bbad83 100644 --- a/apps/design-system/registry/default/example/date-picker-with-presets.tsx +++ b/apps/design-system/registry/default/example/date-picker-with-presets.tsx @@ -6,9 +6,9 @@ import * as React from 'react' import { Button, Calendar, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Select_Shadcn_, SelectContent_Shadcn_, SelectItem_Shadcn_, @@ -22,8 +22,8 @@ export default function DatePickerWithPresets() { const [date, setDate] = React.useState() return ( - - + + - - + + setDate(addDays(new Date(), parseInt(value)))}> @@ -50,7 +50,7 @@ export default function DatePickerWithPresets() {
-
-
+ + ) } diff --git a/apps/design-system/registry/default/example/date-picker-with-range.tsx b/apps/design-system/registry/default/example/date-picker-with-range.tsx index 94fedd237cf..5ba900c01a6 100644 --- a/apps/design-system/registry/default/example/date-picker-with-range.tsx +++ b/apps/design-system/registry/default/example/date-picker-with-range.tsx @@ -4,13 +4,7 @@ import { addDays, format } from 'date-fns' import { Calendar as CalendarIcon } from 'lucide-react' import * as React from 'react' import { DateRange } from 'react-day-picker' -import { - Button, - Calendar, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Calendar, Popover, PopoverContent, PopoverTrigger } from 'ui' import { cn } from '@/lib/utils' @@ -22,8 +16,8 @@ export default function DatePickerWithRange({ className }: React.HTMLAttributes< return (
- - + + - - + + - - + +
) } diff --git a/apps/design-system/registry/default/example/form-patterns-pagelayout.tsx b/apps/design-system/registry/default/example/form-patterns-pagelayout.tsx index 3637afc32c3..fc26fb664a7 100644 --- a/apps/design-system/registry/default/example/form-patterns-pagelayout.tsx +++ b/apps/design-system/registry/default/example/form-patterns-pagelayout.tsx @@ -19,9 +19,9 @@ import { InputGroup, InputGroupAddon, InputGroupText, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, RadioGroupStacked, RadioGroupStackedItem, Select_Shadcn_, @@ -673,8 +673,8 @@ export default function FormPatternsPageLayout() { description="Date selection with calendar popover" > - - + + - - + + - - + + )} diff --git a/apps/design-system/registry/default/example/form-patterns-sidepanel.tsx b/apps/design-system/registry/default/example/form-patterns-sidepanel.tsx index f23464f886f..f71fe6bc00e 100644 --- a/apps/design-system/registry/default/example/form-patterns-sidepanel.tsx +++ b/apps/design-system/registry/default/example/form-patterns-sidepanel.tsx @@ -16,9 +16,9 @@ import { InputGroupAddon, InputGroupInput, InputGroupText, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, RadioGroupStacked, RadioGroupStackedItem, Select_Shadcn_, @@ -669,8 +669,8 @@ export default function FormPatternsSidePanel() { description="Date selection with calendar popover" > - - + + - - + + - - + + )} diff --git a/apps/design-system/registry/default/example/popover-demo.tsx b/apps/design-system/registry/default/example/popover-demo.tsx index 63674f67373..8180aea5fff 100644 --- a/apps/design-system/registry/default/example/popover-demo.tsx +++ b/apps/design-system/registry/default/example/popover-demo.tsx @@ -1,19 +1,12 @@ -import { - Button, - Input, - Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Input, Label_Shadcn_, Popover, PopoverContent, PopoverTrigger } from 'ui' export default function PopoverDemo() { return ( - - + + - - + +

Dimensions

@@ -38,7 +31,7 @@ export default function PopoverDemo() {
-
-
+ + ) } diff --git a/apps/docs/app/guides/deployment/terraform/reference/page.tsx b/apps/docs/app/guides/deployment/terraform/reference/page.tsx index 220d551479a..d703ea17cb3 100644 --- a/apps/docs/app/guides/deployment/terraform/reference/page.tsx +++ b/apps/docs/app/guides/deployment/terraform/reference/page.tsx @@ -2,7 +2,7 @@ import { codeBlock } from 'common-tags' import { Check, PlusCircle } from 'lucide-react' import Link from 'next/link' import ReactMarkdown from 'react-markdown' -import { Heading, Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Heading, Popover, PopoverContent, PopoverTrigger } from 'ui' import { CodeBlock } from 'ui-patterns/CodeBlock' import { @@ -141,14 +141,14 @@ function Resources({ schema }: { schema: any }) { {schema[resource].block.attributes[attribute].type ?? ( - - + + - - + +
    {Object.keys( schema[resource].block.attributes[attribute].nested_type.attributes @@ -178,8 +178,8 @@ function Resources({ schema }: { schema: any }) { ))}
-
-
+ + )} @@ -267,14 +267,14 @@ function DataSources({ schema }: { schema: any }) { {schema[dataSource].block.attributes[attribute].type ?? ( - - + + - - + + {schema[dataSource].block.attributes[attribute].nested_type .nesting_mode === 'set' && 'Array of:'}
    @@ -307,8 +307,8 @@ function DataSources({ schema }: { schema: any }) { ))}
-
-
+ + )} diff --git a/apps/docs/components/ProjectConfigVariables/ProjectConfigVariables.ComboBox.tsx b/apps/docs/components/ProjectConfigVariables/ProjectConfigVariables.ComboBox.tsx index 3433857be1d..fc8d2a50cf5 100644 --- a/apps/docs/components/ProjectConfigVariables/ProjectConfigVariables.ComboBox.tsx +++ b/apps/docs/components/ProjectConfigVariables/ProjectConfigVariables.ComboBox.tsx @@ -9,9 +9,9 @@ import { CommandInput_Shadcn_ as CommandInput, CommandItem_Shadcn_ as CommandItem, CommandList_Shadcn_ as CommandList, - Popover_Shadcn_ as Popover, - PopoverContent_Shadcn_ as PopoverContent, - PopoverTrigger_Shadcn_ as PopoverTrigger, + Popover as Popover, + PopoverContent as PopoverContent, + PopoverTrigger as PopoverTrigger, ScrollArea, } from 'ui' import ShimmeringLoader from 'ui-patterns/ShimmeringLoader' diff --git a/apps/docs/features/ui/McpConfigPanel.tsx b/apps/docs/features/ui/McpConfigPanel.tsx index e3d29032384..e4723715f4a 100644 --- a/apps/docs/features/ui/McpConfigPanel.tsx +++ b/apps/docs/features/ui/McpConfigPanel.tsx @@ -13,9 +13,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' import { Admonition } from 'ui-patterns' @@ -90,7 +90,7 @@ function ProjectSelector({ }, [isLoading, isFetching, isFetchingNextPage, hasNextPage, entry?.isIntersecting, fetchNextPage]) return ( - { @@ -110,7 +110,7 @@ function ProjectSelector({ ) : ( - + - + )} - + - - + + ) } @@ -205,13 +205,13 @@ function PlatformSelector({ const [open, setOpen] = useState(false) return ( - +
Platform - +
- + - + @@ -257,8 +257,8 @@ function PlatformSelector({ - -
+ + ) } diff --git a/apps/studio/components/grid/components/editor/DateTimeEditor.tsx b/apps/studio/components/grid/components/editor/DateTimeEditor.tsx index 321308e17c9..a546af127e1 100644 --- a/apps/studio/components/grid/components/editor/DateTimeEditor.tsx +++ b/apps/studio/components/grid/components/editor/DateTimeEditor.tsx @@ -9,9 +9,9 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { TimestampInfo, timestampLocalFormatter } from 'ui-patterns' import { Input } from 'ui-patterns/DataInputs/Input' @@ -75,13 +75,13 @@ function BaseEditor({ }, []) return ( - - + +
{value === null ? 'NULL' : value}
-
- + + ({ )} - -
+ + ) } diff --git a/apps/studio/components/grid/components/editor/JsonEditor.tsx b/apps/studio/components/grid/components/editor/JsonEditor.tsx index 58822f49b77..1c9012cfadb 100644 --- a/apps/studio/components/grid/components/editor/JsonEditor.tsx +++ b/apps/studio/components/grid/components/editor/JsonEditor.tsx @@ -3,7 +3,14 @@ import { Maximize } from 'lucide-react' import { useCallback, useState } from 'react' import type { RenderEditCellProps } from 'react-data-grid' import { toast } from 'sonner' -import { Popover, Tooltip, TooltipContent, TooltipTrigger } from 'ui' +import { + Popover, + PopoverContent, + PopoverTrigger, + Tooltip, + TooltipContent, + TooltipTrigger, +} from 'ui' import { BlockKeys } from '../common/BlockKeys' import { MonacoEditor } from '../common/MonacoEditor' @@ -153,31 +160,26 @@ export const JsonEditor = ({ } return ( - - {}} - width={`${column.width}px`} - value={value ?? ''} - language="markdown" - /> + + +
setIsPopoverOpen(!isPopoverOpen)} + > + {value === null || value === '' ? : jsonString} +
+
+ + {isTruncated && !isSuccess ? ( +
+ {}} value={value ?? ''} language="markdown" />
) : ( ({ - ) - } - > -
setIsPopoverOpen(!isPopoverOpen)} - > - {value === null || value === '' ? : jsonString} -
+ )} +
) } diff --git a/apps/studio/components/grid/components/editor/TextEditor.tsx b/apps/studio/components/grid/components/editor/TextEditor.tsx index 7ffbc6cb4ff..0b3bfe907c4 100644 --- a/apps/studio/components/grid/components/editor/TextEditor.tsx +++ b/apps/studio/components/grid/components/editor/TextEditor.tsx @@ -3,7 +3,16 @@ import { Maximize } from 'lucide-react' import { useCallback, useState } from 'react' import type { RenderEditCellProps } from 'react-data-grid' import { toast } from 'sonner' -import { Button, cn, Popover, Tooltip, TooltipContent, TooltipTrigger } from 'ui' +import { + Button, + cn, + Popover, + PopoverContent, + PopoverTrigger, + Tooltip, + TooltipContent, + TooltipTrigger, +} from 'ui' import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { BlockKeys } from '../common/BlockKeys' @@ -105,25 +114,22 @@ export const TextEditor = ({ return ( <> - - {}} - width={`${column.width}px`} - value={value ?? ''} - language="markdown" - /> + + +
setIsPopoverOpen(!isPopoverOpen)} + > + {value === null ? : value === '' ? : value} +
+
+ + {isTruncated && !isSuccess ? ( +
+ {}} value={value ?? ''} language="markdown" />
) : ( @@ -133,12 +139,7 @@ export const TextEditor = ({ onEnter={saveChanges} ignoreOutsideClicks={isConfirmNextModalOpen} > - + {isEditable && (
@@ -189,18 +190,8 @@ export const TextEditor = ({
)} - ) - } - > -
setIsPopoverOpen(!isPopoverOpen)} - > - {value === null ? : value === '' ? : value} -
+ {
)} {!isLoadingTargetTable && targetTable !== undefined && ( - - + + { onClick={(e) => e.stopPropagation()} tooltip={{ content: { side: 'bottom', text: 'View referencing record' } }} /> - - + { @@ -100,8 +100,8 @@ export const ForeignKeyFormatter = (props: Props) => { column={relationship.target_column_name} value={formattedValue} /> - - +
+
)} )} diff --git a/apps/studio/components/grid/components/header/filter/FilterPopoverPrimitive.tsx b/apps/studio/components/grid/components/header/filter/FilterPopoverPrimitive.tsx index d19cecd56f5..eb584ba0d37 100644 --- a/apps/studio/components/grid/components/header/filter/FilterPopoverPrimitive.tsx +++ b/apps/studio/components/grid/components/header/filter/FilterPopoverPrimitive.tsx @@ -1,13 +1,7 @@ import { isEqual } from 'lodash' import { Filter as FilterIcon, Plus } from 'lucide-react' import { KeyboardEvent, useCallback, useMemo, useState } from 'react' -import { - Button, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverSeparator_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Popover, PopoverContent, PopoverSeparator, PopoverTrigger } from 'ui' import FilterRow from './FilterRow' import type { Filter } from '@/components/grid/types' @@ -86,13 +80,13 @@ export const FilterPopoverPrimitive = ({ } return ( - - + + - - + +
{localFilters.map((filter, index) => ( @@ -114,7 +108,7 @@ export const FilterPopoverPrimitive = ({
)}
- +
-
-
+ +
) } diff --git a/apps/studio/components/grid/components/header/sort/SortPopoverPrimitive.tsx b/apps/studio/components/grid/components/header/sort/SortPopoverPrimitive.tsx index 1faf873420a..0853bfa803d 100644 --- a/apps/studio/components/grid/components/header/sort/SortPopoverPrimitive.tsx +++ b/apps/studio/components/grid/components/header/sort/SortPopoverPrimitive.tsx @@ -18,13 +18,7 @@ import { useParams } from 'common' import { isEqual } from 'lodash' import { ChevronDown, List } from 'lucide-react' import { useCallback, useEffect, useMemo, useRef, useState } from 'react' -import { - Button, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverSeparator_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Popover, PopoverContent, PopoverSeparator, PopoverTrigger } from 'ui' import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { DropdownControl } from '../../common/DropdownControl' @@ -237,13 +231,13 @@ export const SortPopoverPrimitive = ({ return ( <> - - + + - - + +
)} - +
{dropdownOptions && dropdownOptions.length > 0 ? (
-
-
+ +
- + + - - + + @@ -84,7 +84,7 @@ export const PermissionResourceSelector = - - + + ) } diff --git a/apps/studio/components/interfaces/Account/AccessTokens/Scoped/Form/Permissions/Permissions.tsx b/apps/studio/components/interfaces/Account/AccessTokens/Scoped/Form/Permissions/Permissions.tsx index d21dfde5773..8c252188997 100644 --- a/apps/studio/components/interfaces/Account/AccessTokens/Scoped/Form/Permissions/Permissions.tsx +++ b/apps/studio/components/interfaces/Account/AccessTokens/Scoped/Form/Permissions/Permissions.tsx @@ -1,13 +1,6 @@ import { ChevronDown, RotateCcw, X } from 'lucide-react' import { Path, PathValue } from 'react-hook-form' -import { - Button, - Checkbox, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, - WarningIcon, -} from 'ui' +import { Button, Checkbox, Popover, PopoverContent, PopoverTrigger, WarningIcon } from 'ui' import { PermissionResourceSelector } from './PermissionResourceSelector' import { PermissionRow, PermissionsFormValues, PermissionsProps } from './Permissions.types' @@ -86,8 +79,8 @@ export const Permissions =
{selectedResource && ( - - + + - - + + @@ -155,8 +152,8 @@ export const TimezoneSettings = () => { - - + + diff --git a/apps/studio/components/interfaces/Auth/AuthProvidersForm/FormField.tsx b/apps/studio/components/interfaces/Auth/AuthProvidersForm/FormField.tsx index 2d89a01b9f2..61acdac26e2 100644 --- a/apps/studio/components/interfaces/Auth/AuthProvidersForm/FormField.tsx +++ b/apps/studio/components/interfaces/Auth/AuthProvidersForm/FormField.tsx @@ -11,9 +11,9 @@ import { Input, InputGroup, InputGroupAddon, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Select_Shadcn_, SelectContent_Shadcn_, SelectItem_Shadcn_, @@ -119,8 +119,8 @@ const FormField = ({ } > - - + + - - + + - - + + )} diff --git a/apps/studio/components/interfaces/Auth/Policies/PolicyEditorPanel/PolicyDetailsV2.tsx b/apps/studio/components/interfaces/Auth/Policies/PolicyEditorPanel/PolicyDetailsV2.tsx index c04701692e0..11547172004 100644 --- a/apps/studio/components/interfaces/Auth/Policies/PolicyEditorPanel/PolicyDetailsV2.tsx +++ b/apps/studio/components/interfaces/Auth/Policies/PolicyEditorPanel/PolicyDetailsV2.tsx @@ -23,9 +23,9 @@ import { FormLabel, FormMessage, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, RadioGroup, RadioGroupLargeItem, ScrollArea, @@ -154,8 +154,8 @@ export const PolicyDetailsV2 = ({ {authContext === 'database' && ( - - + +
- + - - - + + )} {authContext === 'realtime' && ( diff --git a/apps/studio/components/interfaces/Auth/RLSTester/UserSelector.tsx b/apps/studio/components/interfaces/Auth/RLSTester/UserSelector.tsx index 914cc3cd07b..17daee2762c 100644 --- a/apps/studio/components/interfaces/Auth/RLSTester/UserSelector.tsx +++ b/apps/studio/components/interfaces/Auth/RLSTester/UserSelector.tsx @@ -12,9 +12,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' import { Admonition, GenericSkeletonLoader } from 'ui-patterns' @@ -67,8 +67,8 @@ export const UserSelector = () => { return ( - - + + - - + + { )} - - + + ) } diff --git a/apps/studio/components/interfaces/Auth/ThirdPartyAuthForm/AwsRegionSelector.tsx b/apps/studio/components/interfaces/Auth/ThirdPartyAuthForm/AwsRegionSelector.tsx index d772399542e..f6682a1b187 100644 --- a/apps/studio/components/interfaces/Auth/ThirdPartyAuthForm/AwsRegionSelector.tsx +++ b/apps/studio/components/interfaces/Auth/ThirdPartyAuthForm/AwsRegionSelector.tsx @@ -10,9 +10,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, FormControl, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' @@ -59,8 +59,8 @@ export const AwsRegionSelector = ({ const listboxId = useId() return ( - - + + - + - + @@ -107,7 +107,7 @@ export const ConnectDropdown = ({ - - + + ) } diff --git a/apps/studio/components/interfaces/ConnectSheet/FrameworkSelector.tsx b/apps/studio/components/interfaces/ConnectSheet/FrameworkSelector.tsx index e0478b64cd4..1d372e1bdf2 100644 --- a/apps/studio/components/interfaces/ConnectSheet/FrameworkSelector.tsx +++ b/apps/studio/components/interfaces/ConnectSheet/FrameworkSelector.tsx @@ -9,9 +9,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { ConnectionType } from '@/components/interfaces/ConnectSheet/Connect.constants' @@ -42,9 +42,9 @@ export const FrameworkSelector = ({ } return ( - +
- + - +
- - -
+ + ) } diff --git a/apps/studio/components/interfaces/Database/Backups/PITR/TimezoneSelection.tsx b/apps/studio/components/interfaces/Database/Backups/PITR/TimezoneSelection.tsx index 8f7a3c94a3b..a0a8d24f945 100644 --- a/apps/studio/components/interfaces/Database/Backups/PITR/TimezoneSelection.tsx +++ b/apps/studio/components/interfaces/Database/Backups/PITR/TimezoneSelection.tsx @@ -9,9 +9,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' @@ -34,8 +34,8 @@ export const TimezoneSelection = ({ return (
- - + + - - + + @@ -84,8 +84,8 @@ export const TimezoneSelection = ({ - - + +
) } diff --git a/apps/studio/components/interfaces/Database/Indexes/CreateIndexSidePanel.tsx b/apps/studio/components/interfaces/Database/Indexes/CreateIndexSidePanel.tsx index e9f5eeb8c06..4949ccf6738 100644 --- a/apps/studio/components/interfaces/Database/Indexes/CreateIndexSidePanel.tsx +++ b/apps/studio/components/interfaces/Database/Indexes/CreateIndexSidePanel.tsx @@ -11,9 +11,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Select_Shadcn_, SelectContent_Shadcn_, SelectItem_Shadcn_, @@ -179,12 +179,8 @@ CREATE INDEX ON "${selectedSchema}"."${selectedEntity}" USING ${selectedIndexTyp
- - + + - - + + - - + + ) } diff --git a/apps/studio/components/interfaces/Database/Tables/TableList.tsx b/apps/studio/components/interfaces/Database/Tables/TableList.tsx index 9482d574220..5eb4251e7ce 100644 --- a/apps/studio/components/interfaces/Database/Tables/TableList.tsx +++ b/apps/studio/components/interfaces/Database/Tables/TableList.tsx @@ -16,9 +16,9 @@ import { DropdownMenuSeparator, DropdownMenuTrigger, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Table, TableBody, TableCell, @@ -247,16 +247,16 @@ export const TableList = ({ onOpenChange={setSchemaSelectorOpen} /> - - + +
{ }, [isProjectNew]) return ( - - + + - - + + {services.map((service) => ( {
)} - - + + ) } diff --git a/apps/studio/components/interfaces/Integrations/CronJobs/EdgeFunctionSection.tsx b/apps/studio/components/interfaces/Integrations/CronJobs/EdgeFunctionSection.tsx index 745fea8d776..3c11ea3e4bc 100644 --- a/apps/studio/components/interfaces/Integrations/CronJobs/EdgeFunctionSection.tsx +++ b/apps/studio/components/interfaces/Integrations/CronJobs/EdgeFunctionSection.tsx @@ -21,9 +21,9 @@ import { InputGroupAddon, InputGroupInput, InputGroupText, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Select_Shadcn_, SelectContent_Shadcn_, @@ -125,8 +125,8 @@ export const EdgeFunctionSection = ({ form }: HTTPRequestFieldsProps) => { return ( Edge Function - - + + - - + + @@ -182,8 +182,8 @@ export const EdgeFunctionSection = ({ form }: HTTPRequestFieldsProps) => { - - + + ) diff --git a/apps/studio/components/interfaces/Integrations/Queues/QueueTab.tsx b/apps/studio/components/interfaces/Integrations/Queues/QueueTab.tsx index 37c29c8d191..8d1fd402c40 100644 --- a/apps/studio/components/interfaces/Integrations/Queues/QueueTab.tsx +++ b/apps/studio/components/interfaces/Integrations/Queues/QueueTab.tsx @@ -4,15 +4,7 @@ import Link from 'next/link' import { parseAsBoolean, useQueryState } from 'nuqs' import { useMemo, useState } from 'react' import { toast } from 'sonner' -import { - Button, - cn, - LoadingLine, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, - Separator, -} from 'ui' +import { Button, cn, LoadingLine, Popover, PopoverContent, PopoverTrigger, Separator } from 'ui' import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { ShimmeringLoader } from 'ui-patterns/ShimmeringLoader' @@ -192,17 +184,17 @@ export const QueueTab = () => { )} ) : ( - setOpenRlsPopover(!openRlsPopover)} > - + - - + +

Row Level Security (RLS)

@@ -241,8 +233,8 @@ You may opt to manage your queues via any Supabase client libraries or PostgREST )} -
-
+ + )} - - + + @@ -123,8 +118,8 @@ const OrganizationPicker = ({ - - + + ) } diff --git a/apps/studio/components/interfaces/Integrations/VercelGithub/ProjectLinker.tsx b/apps/studio/components/interfaces/Integrations/VercelGithub/ProjectLinker.tsx index 0d43f41bc82..f08401a8858 100644 --- a/apps/studio/components/interfaces/Integrations/VercelGithub/ProjectLinker.tsx +++ b/apps/studio/components/interfaces/Integrations/VercelGithub/ProjectLinker.tsx @@ -14,9 +14,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, CommandSeparator_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { OrganizationProjectSelector } from '@/components/ui/OrganizationProjectSelector' @@ -296,11 +296,11 @@ const ProjectLinker = ({ {integrationIcon} - - + - - + + @@ -372,8 +367,8 @@ const ProjectLinker = ({ )} - - + + )} diff --git a/apps/studio/components/interfaces/Integrations/Wrappers/ColumnType.tsx b/apps/studio/components/interfaces/Integrations/Wrappers/ColumnType.tsx index 3451caf89b9..e258d44edc6 100644 --- a/apps/studio/components/interfaces/Integrations/Wrappers/ColumnType.tsx +++ b/apps/studio/components/interfaces/Integrations/Wrappers/ColumnType.tsx @@ -30,9 +30,9 @@ import { FormItem, FormLabel, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' import { FormItemLayout } from 'ui-patterns/form/FormItemLayout/FormItemLayout' @@ -134,8 +134,8 @@ export const ColumnType = ({ Type - - + + - - + + @@ -170,8 +170,8 @@ const WrapperTableEditor = ({ - - + + {selectedTable && ( diff --git a/apps/studio/components/interfaces/Organization/BillingSettings/BillingCustomerData/BillingCustomerDataForm.tsx b/apps/studio/components/interfaces/Organization/BillingSettings/BillingCustomerData/BillingCustomerDataForm.tsx index fb4e7d52898..a91acb83ca6 100644 --- a/apps/studio/components/interfaces/Organization/BillingSettings/BillingCustomerData/BillingCustomerDataForm.tsx +++ b/apps/studio/components/interfaces/Organization/BillingSettings/BillingCustomerData/BillingCustomerDataForm.tsx @@ -20,9 +20,9 @@ import { FormField, FormMessage, Input, - Popover_Shadcn_ as Popover, - PopoverContent_Shadcn_ as PopoverContent, - PopoverTrigger_Shadcn_ as PopoverTrigger, + Popover, + PopoverContent, + PopoverTrigger, Tooltip, TooltipContent, TooltipTrigger, diff --git a/apps/studio/components/interfaces/Organization/PrivateApps/Apps/CreateAppSheet/CreateAppSheet.tsx b/apps/studio/components/interfaces/Organization/PrivateApps/Apps/CreateAppSheet/CreateAppSheet.tsx index 3532bf5c994..1128f408b19 100644 --- a/apps/studio/components/interfaces/Organization/PrivateApps/Apps/CreateAppSheet/CreateAppSheet.tsx +++ b/apps/studio/components/interfaces/Organization/PrivateApps/Apps/CreateAppSheet/CreateAppSheet.tsx @@ -12,9 +12,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Sheet, SheetContent, @@ -190,12 +190,12 @@ export function CreateAppSheet({ visible, onClose, onCreated }: CreateAppSheetPr disabled={isLoading} /> )} - - + - - + + @@ -236,8 +236,8 @@ export function CreateAppSheet({ visible, onClose, onCreated }: CreateAppSheetPr - - + + diff --git a/apps/studio/components/interfaces/ProjectAPIDocs/LanguageSelector.tsx b/apps/studio/components/interfaces/ProjectAPIDocs/LanguageSelector.tsx index 05468575b79..ca77123d885 100644 --- a/apps/studio/components/interfaces/ProjectAPIDocs/LanguageSelector.tsx +++ b/apps/studio/components/interfaces/ProjectAPIDocs/LanguageSelector.tsx @@ -6,9 +6,9 @@ import { CommandGroup_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { BASE_PATH } from '@/lib/constants' @@ -32,8 +32,8 @@ const LanguageSelector = ({ simplifiedVersion = false }: LanguageSelectorProps) return (
- - + +
) } diff --git a/apps/studio/components/interfaces/ProjectAPIDocs/SecondLevelNav.Layout.tsx b/apps/studio/components/interfaces/ProjectAPIDocs/SecondLevelNav.Layout.tsx index 478e8521347..85991d8d16b 100644 --- a/apps/studio/components/interfaces/ProjectAPIDocs/SecondLevelNav.Layout.tsx +++ b/apps/studio/components/interfaces/ProjectAPIDocs/SecondLevelNav.Layout.tsx @@ -6,9 +6,9 @@ import { AlertTitle, Button, cn, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { navigateToSection } from './Content/Content.utils' @@ -113,8 +113,8 @@ const ResourcePicker = ({ category, resource, renderResourceList }: ResourcePick } return ( - - + + - - + + {renderResourceList({ selectedResource: resource, onSelect: handleSelect, closePopover: () => setOpen(false), })} - - + + ) } diff --git a/apps/studio/components/interfaces/ProjectCreation/ProjectCreationFooter.tsx b/apps/studio/components/interfaces/ProjectCreation/ProjectCreationFooter.tsx index 790bdf4afc5..ff1bf50028a 100644 --- a/apps/studio/components/interfaces/ProjectCreation/ProjectCreationFooter.tsx +++ b/apps/studio/components/interfaces/ProjectCreation/ProjectCreationFooter.tsx @@ -4,7 +4,7 @@ import { UseFormReturn } from 'react-hook-form' import { Badge, Button, - PopoverSeparator_Shadcn_, + PopoverSeparator, Table, TableBody, TableCell, @@ -135,7 +135,7 @@ export const ProjectCreationFooter = ({ - + diff --git a/apps/studio/components/interfaces/Realtime/Inspector/ChooseChannelPopover.tsx b/apps/studio/components/interfaces/Realtime/Inspector/ChooseChannelPopover.tsx index d239d593e9f..609514a2763 100644 --- a/apps/studio/components/interfaces/Realtime/Inspector/ChooseChannelPopover.tsx +++ b/apps/studio/components/interfaces/Realtime/Inspector/ChooseChannelPopover.tsx @@ -12,9 +12,9 @@ import { FormItem, FormLabel, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Switch, } from 'ui' import * as z from 'zod' @@ -81,8 +81,8 @@ export const ChooseChannelPopover = ({ config, onChangeConfig }: ChooseChannelPo } return ( - - + + - - + +
{config.channelName.length === 0 ? ( <> @@ -203,7 +203,7 @@ export const ChooseChannelPopover = ({ config, onChangeConfig }: ChooseChannelPo
)} -
-
+ + ) } diff --git a/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/TableSelector.tsx b/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/TableSelector.tsx index 4915dff9f99..b6ed1cb238f 100644 --- a/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/TableSelector.tsx +++ b/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/TableSelector.tsx @@ -12,9 +12,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' @@ -76,8 +76,8 @@ const TableSelector = ({ return (
- - + + - - + + - - + +
) } diff --git a/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/index.tsx b/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/index.tsx index 317b13560fb..f47d91b8a5d 100644 --- a/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/index.tsx +++ b/apps/studio/components/interfaces/Realtime/Inspector/RealtimeFilterPopover/index.tsx @@ -10,9 +10,9 @@ import { IconDatabaseChanges, IconPresence, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Switch, } from 'ui' import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' @@ -69,8 +69,8 @@ export const RealtimeFilterPopover = ({ config, onChangeConfig }: RealtimeFilter return ( <> - - + + - - + +
Listen to event types
@@ -229,8 +229,8 @@ export const RealtimeFilterPopover = ({ config, onChangeConfig }: RealtimeFilter -
-
+ + - + + - - + +
{localFilters.map((filter, index) => ( @@ -364,7 +364,7 @@ export const ReportFilterPopover = ({
)}
- +
-
- + + ) } diff --git a/apps/studio/components/interfaces/RoleImpersonationSelector/RoleImpersonationPopover.tsx b/apps/studio/components/interfaces/RoleImpersonationSelector/RoleImpersonationPopover.tsx index 7e5df2e25bd..286e52cd3df 100644 --- a/apps/studio/components/interfaces/RoleImpersonationSelector/RoleImpersonationPopover.tsx +++ b/apps/studio/components/interfaces/RoleImpersonationSelector/RoleImpersonationPopover.tsx @@ -1,7 +1,7 @@ import { RoleImpersonationSelector } from '.' import { ChevronDown, User as IconUser } from 'lucide-react' import { useState } from 'react' -import { Button, cn, Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Button, cn, Popover, PopoverContent, PopoverTrigger } from 'ui' import { getAvatarUrl, getDisplayName } from '../Auth/Users/Users.utils' import type { User } from '@/data/auth/users-infinite-query' @@ -29,8 +29,8 @@ export const RoleImpersonationPopover = ({ const currentRole = state.role?.role ?? serviceRoleLabel ?? 'postgres' return ( - - + + - - + + - - + + ) } diff --git a/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx b/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx index 6fc52d5ac45..3435edbd4d3 100644 --- a/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx +++ b/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx @@ -30,9 +30,9 @@ import { FormMessage, Input, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' import * as z from 'zod' @@ -230,8 +230,8 @@ export const MoveQueryModal = ({ visible, snippets = [], onClose }: MoveQueryMod
Select a folder - - + + - - + + @@ -328,8 +323,8 @@ export const MoveQueryModal = ({ visible, snippets = [], onClose }: MoveQueryMod - - + +
{selectedId === 'new-folder' && ( diff --git a/apps/studio/components/interfaces/Settings/API/ExposedFunctionSelector.tsx b/apps/studio/components/interfaces/Settings/API/ExposedFunctionSelector.tsx index ff41cbfb55e..e7f1cee472e 100644 --- a/apps/studio/components/interfaces/Settings/API/ExposedFunctionSelector.tsx +++ b/apps/studio/components/interfaces/Settings/API/ExposedFunctionSelector.tsx @@ -10,9 +10,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Tooltip, TooltipContent, @@ -96,8 +96,8 @@ export const ExposedFunctionSelector = ({ }, [entry?.isIntersecting, hasNextPage, isFetching, isFetchingNextPage, isPending, fetchNextPage]) return ( - - + + - - + - - + + ) } diff --git a/apps/studio/components/interfaces/Settings/API/ExposedSchemaSelector.tsx b/apps/studio/components/interfaces/Settings/API/ExposedSchemaSelector.tsx index 5049f4a7ca8..396ef368cfa 100644 --- a/apps/studio/components/interfaces/Settings/API/ExposedSchemaSelector.tsx +++ b/apps/studio/components/interfaces/Settings/API/ExposedSchemaSelector.tsx @@ -9,9 +9,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' import { ShimmeringLoader } from 'ui-patterns/ShimmeringLoader' @@ -61,8 +61,8 @@ export const ExposedSchemaSelector = ({ const selectedCount = schemas.filter((s) => selectedSet.has(s.name)).length return ( - - + + - - + - - + + ) } diff --git a/apps/studio/components/interfaces/Settings/API/ExposedTableSelector.tsx b/apps/studio/components/interfaces/Settings/API/ExposedTableSelector.tsx index ab1da9b51ae..e7ecfd3411b 100644 --- a/apps/studio/components/interfaces/Settings/API/ExposedTableSelector.tsx +++ b/apps/studio/components/interfaces/Settings/API/ExposedTableSelector.tsx @@ -10,9 +10,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Tooltip, TooltipContent, @@ -90,8 +90,8 @@ export const ExposedTableSelector = ({ }, [entry?.isIntersecting, hasNextPage, isFetching, isFetchingNextPage, isPending, fetchNextPage]) return ( - - + + - - + - - + + ) } diff --git a/apps/studio/components/interfaces/Settings/Integrations/GithubIntegration/GitHubRepositoryField.tsx b/apps/studio/components/interfaces/Settings/Integrations/GithubIntegration/GitHubRepositoryField.tsx index 909fb352a9a..e76a04a69dc 100644 --- a/apps/studio/components/interfaces/Settings/Integrations/GithubIntegration/GitHubRepositoryField.tsx +++ b/apps/studio/components/interfaces/Settings/Integrations/GithubIntegration/GitHubRepositoryField.tsx @@ -12,9 +12,9 @@ import { CommandSeparator_Shadcn_, FormControl, FormField, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { FormItemLayout } from 'ui-patterns/form/FormItemLayout/FormItemLayout' @@ -151,8 +151,8 @@ export const GitHubRepositoryField = ({ ) : ( - - + + - - + + @@ -250,8 +245,8 @@ export const GitHubRepositoryField = ({ )} - - + + )} )} diff --git a/apps/studio/components/interfaces/Settings/Logs/Logs.DatePickers.tsx b/apps/studio/components/interfaces/Settings/Logs/Logs.DatePickers.tsx index 1120614d7f9..c0c2226ca9a 100644 --- a/apps/studio/components/interfaces/Settings/Logs/Logs.DatePickers.tsx +++ b/apps/studio/components/interfaces/Settings/Logs/Logs.DatePickers.tsx @@ -11,9 +11,9 @@ import { cn, copyToClipboard, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { LOGS_LARGE_DATE_RANGE_DAYS_THRESHOLD } from './Logs.constants' @@ -93,7 +93,7 @@ interface LogsDatePickerProps { helpers: DatetimeHelper[] onSubmit: (value: DatePickerValue) => void buttonTriggerProps?: ButtonProps - popoverContentProps?: typeof PopoverContent_Shadcn_ + popoverContentProps?: typeof PopoverContent hideWarnings?: boolean align?: 'start' | 'end' | 'center' } @@ -317,15 +317,15 @@ export const LogsDatePicker = ({ } return ( - - + + - - + Apply - - + + ) } diff --git a/apps/studio/components/interfaces/Settings/Logs/LogsQueryPanel.tsx b/apps/studio/components/interfaces/Settings/Logs/LogsQueryPanel.tsx index 9c20fb4bebd..b52a483ec68 100644 --- a/apps/studio/components/interfaces/Settings/Logs/LogsQueryPanel.tsx +++ b/apps/studio/components/interfaces/Settings/Logs/LogsQueryPanel.tsx @@ -19,9 +19,9 @@ import { DropdownMenuItem, DropdownMenuTrigger, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, SidePanel, Switch, Tooltip, @@ -266,8 +266,8 @@ const LogsQueryPanel = ({
- - + + - - + + @@ -306,8 +306,8 @@ const LogsQueryPanel = ({ - - + +
diff --git a/apps/studio/components/interfaces/Storage/VectorBuckets/VectorBucketDetails/VectorBucketTableExamplesSheet.tsx b/apps/studio/components/interfaces/Storage/VectorBuckets/VectorBucketDetails/VectorBucketTableExamplesSheet.tsx index 83c801298e0..1000795a3f2 100644 --- a/apps/studio/components/interfaces/Storage/VectorBuckets/VectorBucketDetails/VectorBucketTableExamplesSheet.tsx +++ b/apps/studio/components/interfaces/Storage/VectorBuckets/VectorBucketDetails/VectorBucketTableExamplesSheet.tsx @@ -12,9 +12,9 @@ import { CommandGroup_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Sheet, SheetContent, SheetHeader, @@ -212,8 +212,8 @@ const result = await index.putVectors({

- - + +
Language @@ -226,8 +226,8 @@ const result = await index.putVectors({ {language === 'javascript' ? 'JavaScript' : 'SQL'}
-
- + + @@ -248,8 +248,8 @@ const result = await index.putVectors({ - -
+ + ) : tableHasLints ? ( - - + + - - + +

Row Level Security (RLS)

@@ -294,8 +294,8 @@ export const GridHeaderActions = ({ table, isRefetching }: GridHeaderActionsProp )}
- - + + ) : null ) : null} @@ -313,13 +313,13 @@ export const GridHeaderActions = ({ table, isRefetching }: GridHeaderActionsProp )} {isForeignTable && table.schema === 'public' && ( - - + + - - + +

Secure Foreign table

@@ -341,8 +341,8 @@ export const GridHeaderActions = ({ table, isRefetching }: GridHeaderActionsProp
- - + + )} diff --git a/apps/studio/components/interfaces/TableGridEditor/IndexAdvisorPopover.tsx b/apps/studio/components/interfaces/TableGridEditor/IndexAdvisorPopover.tsx index 0f96f06c698..e96a5cb6d11 100644 --- a/apps/studio/components/interfaces/TableGridEditor/IndexAdvisorPopover.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/IndexAdvisorPopover.tsx @@ -1,17 +1,17 @@ import { Lightbulb } from 'lucide-react' -import { Button, Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Button, Popover, PopoverContent, PopoverTrigger } from 'ui' import { EnableIndexAdvisorButton } from '../QueryPerformance/IndexAdvisor/EnableIndexAdvisorButton' export const IndexAdvisorPopover = () => { return ( - - + + - - + +

Index Advisor

@@ -22,7 +22,7 @@ export const IndexAdvisorPopover = () => { -
-
+ + ) } diff --git a/apps/studio/components/interfaces/TableGridEditor/SecurityDefinerViewPopover.tsx b/apps/studio/components/interfaces/TableGridEditor/SecurityDefinerViewPopover.tsx index d512c231dce..a5f911f8bb5 100644 --- a/apps/studio/components/interfaces/TableGridEditor/SecurityDefinerViewPopover.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/SecurityDefinerViewPopover.tsx @@ -1,7 +1,7 @@ import { useParams } from 'common' import { Unlock } from 'lucide-react' import Link from 'next/link' -import { Button, Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Button, Popover, PopoverContent, PopoverTrigger } from 'ui' import { type Lint } from '@/data/lint/lint-query' @@ -15,13 +15,13 @@ export const SecurityDefinerViewPopover = ({ const { ref } = useParams() return ( - - + + - - + +

Secure your view

@@ -50,7 +50,7 @@ export const SecurityDefinerViewPopover = ({ -
-
+ + ) } diff --git a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/ColumnEditor/ColumnType.tsx b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/ColumnEditor/ColumnType.tsx index e0cec443f61..3f6007587cc 100644 --- a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/ColumnEditor/ColumnType.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/ColumnEditor/ColumnType.tsx @@ -30,9 +30,9 @@ import { InputGroupAddon, InputGroupInput, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Tooltip, TooltipContent, @@ -186,8 +186,8 @@ const ColumnType = ({ return (
{showLabel && Type} - - + + ) : ( - - + + - - + - - + + )}
@@ -298,8 +298,8 @@ export const Column = ({
{(!column.isPrimaryKey || column.format.includes('int')) && ( - - + @@ -311,8 +311,8 @@ export const Column = ({
-
- + +
Extra options
@@ -387,8 +387,8 @@ export const Column = ({ )}
- - + + )}
{!hasImportContent && ( diff --git a/apps/studio/components/interfaces/UnifiedLogs/ServiceFlow/components/shared/TruncatedTextWithPopover.tsx b/apps/studio/components/interfaces/UnifiedLogs/ServiceFlow/components/shared/TruncatedTextWithPopover.tsx index 0b93858b239..809f06a994e 100644 --- a/apps/studio/components/interfaces/UnifiedLogs/ServiceFlow/components/shared/TruncatedTextWithPopover.tsx +++ b/apps/studio/components/interfaces/UnifiedLogs/ServiceFlow/components/shared/TruncatedTextWithPopover.tsx @@ -1,5 +1,5 @@ import { useState } from 'react' -import { Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Popover, PopoverContent, PopoverTrigger } from 'ui' interface TruncatedTextWithPopoverProps { text: string @@ -25,13 +25,13 @@ export const TruncatedTextWithPopover = ({ // If truncated, render with popover return ( - - + + {children || truncatedText} - - + +
{text}
-
-
+ + ) } diff --git a/apps/studio/components/layouts/AppLayout/AppLayoutDropdown.tsx b/apps/studio/components/layouts/AppLayout/AppLayoutDropdown.tsx index c1c2a68ac47..a82f21b72d6 100644 --- a/apps/studio/components/layouts/AppLayout/AppLayoutDropdown.tsx +++ b/apps/studio/components/layouts/AppLayout/AppLayoutDropdown.tsx @@ -1,7 +1,7 @@ import { AlertCircle, ChevronsUpDown } from 'lucide-react' import Link from 'next/link' import { forwardRef, type ReactNode } from 'react' -import { Button, cn, Popover_Shadcn_, PopoverContent_Shadcn_, PopoverTrigger_Shadcn_ } from 'ui' +import { Button, cn, Popover, PopoverContent, PopoverTrigger } from 'ui' interface AppLayoutDropdownErrorProps { message: string @@ -55,18 +55,18 @@ export function AppLayoutDropdownWithPopover({ triggerButtonClassName, }: AppLayoutDropdownWithPopoverProps) { return ( - +
{linkContent} - + - +
- + {commandContent} - -
+ + ) } diff --git a/apps/studio/components/layouts/EdgeFunctionsLayout/EdgeFunctionDetailsLayout.tsx b/apps/studio/components/layouts/EdgeFunctionsLayout/EdgeFunctionDetailsLayout.tsx index 180f2d46fb6..823aa5f44dc 100644 --- a/apps/studio/components/layouts/EdgeFunctionsLayout/EdgeFunctionDetailsLayout.tsx +++ b/apps/studio/components/layouts/EdgeFunctionsLayout/EdgeFunctionDetailsLayout.tsx @@ -19,9 +19,9 @@ import { HoverCardTrigger, NavMenu, NavMenuItem, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Separator, } from 'ui' import { TimestampInfo } from 'ui-patterns' @@ -330,13 +330,13 @@ const EdgeFunctionDetailsLayout = ({
- - + + - - + + {IS_PLATFORM && ( <>
@@ -363,8 +363,8 @@ const EdgeFunctionDetailsLayout = ({ Download as ZIP
-
-
+ + {!!functionSlug && ( - - + { onSupportClick={() => setIsOpen(false)} />
- +
- +
- +

Current version:

@@ -195,7 +195,7 @@ export const LocalVersionPopover = () => {
)}
- - + + ) } diff --git a/apps/studio/components/layouts/Navigation/NavigationBar/OrgSelector.tsx b/apps/studio/components/layouts/Navigation/NavigationBar/OrgSelector.tsx index d36060ef005..d6a9f12c618 100644 --- a/apps/studio/components/layouts/Navigation/NavigationBar/OrgSelector.tsx +++ b/apps/studio/components/layouts/Navigation/NavigationBar/OrgSelector.tsx @@ -11,9 +11,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, CommandSeparator_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, SidebarMenu, SidebarMenuButton, @@ -104,9 +104,9 @@ export function OrgSelector() { return ( - - {triggerButton} - + + {triggerButton} + @@ -164,8 +164,8 @@ export function OrgSelector() { )} - - + + ) diff --git a/apps/studio/components/layouts/Navigation/NavigationBar/ProjectBranchSelector.tsx b/apps/studio/components/layouts/Navigation/NavigationBar/ProjectBranchSelector.tsx index 5cdb3e75d26..e5b106f8b2a 100644 --- a/apps/studio/components/layouts/Navigation/NavigationBar/ProjectBranchSelector.tsx +++ b/apps/studio/components/layouts/Navigation/NavigationBar/ProjectBranchSelector.tsx @@ -2,9 +2,9 @@ import { useBreakpoint, useParams } from 'common' import { useRouter } from 'next/router' import { useState } from 'react' import { - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, SidebarMenu, SidebarMenuButton, SidebarMenuItem, @@ -103,14 +103,14 @@ export function ProjectBranchSelector() { return ( - - + + - - + + setOpen(false)} /> - - + + ) diff --git a/apps/studio/components/layouts/TableEditorLayout/TableEditorMenu.tsx b/apps/studio/components/layouts/TableEditorLayout/TableEditorMenu.tsx index 0505eb54d19..3fecc4f5488 100644 --- a/apps/studio/components/layouts/TableEditorLayout/TableEditorMenu.tsx +++ b/apps/studio/components/layouts/TableEditorLayout/TableEditorMenu.tsx @@ -3,14 +3,7 @@ import { keepPreviousData } from '@tanstack/react-query' import { useParams } from 'common' import { Filter, Plus } from 'lucide-react' import { useCallback, useEffect, useMemo, useState } from 'react' -import { - Button, - Checkbox, - Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, -} from 'ui' +import { Button, Checkbox, Label_Shadcn_, Popover, PopoverContent, PopoverTrigger } from 'ui' import { InnerSideBarEmptyPanel, InnerSideBarFilters, @@ -224,15 +217,15 @@ export const TableEditorMenu = () => { - - + + - - + + @@ -211,7 +211,7 @@ export const AIAssistantChatSelector = ({ disabled = false }: AIAssistantChatSel - - + + ) } diff --git a/apps/studio/components/ui/AIAssistantPanel/Message.Actions.tsx b/apps/studio/components/ui/AIAssistantPanel/Message.Actions.tsx index 184935fdb5c..e65e5f58381 100644 --- a/apps/studio/components/ui/AIAssistantPanel/Message.Actions.tsx +++ b/apps/studio/components/ui/AIAssistantPanel/Message.Actions.tsx @@ -8,9 +8,9 @@ import { Form, FormControl, FormField, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, TextArea, } from 'ui' import { FormItemLayout } from 'ui-patterns/form/FormItemLayout/FormItemLayout' @@ -151,8 +151,8 @@ function MessageActionsThumbsDown({ }, [form.formState.isSubmitSuccessful]) return ( - - + + - - + + {form.formState.isSubmitSuccessful ? (

We appreciate your feedback!

) : ( @@ -206,8 +206,8 @@ function MessageActionsThumbsDown({ )} -
-
+ + ) } MessageActions.ThumbsDown = MessageActionsThumbsDown diff --git a/apps/studio/components/ui/AIAssistantPanel/ModelSelector.tsx b/apps/studio/components/ui/AIAssistantPanel/ModelSelector.tsx index 819745a92dc..f9c4740b9a0 100644 --- a/apps/studio/components/ui/AIAssistantPanel/ModelSelector.tsx +++ b/apps/studio/components/ui/AIAssistantPanel/ModelSelector.tsx @@ -8,9 +8,9 @@ import { CommandGroup_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Tooltip, TooltipContent, TooltipTrigger, @@ -53,8 +53,8 @@ export const ModelSelector = ({ selectedModel, onSelectModel }: ModelSelectorPro } return ( - - + + - - + + @@ -99,7 +99,7 @@ export const ModelSelector = ({ selectedModel, onSelectModel }: ModelSelectorPro - - + + ) } diff --git a/apps/studio/components/ui/DataTable/DataTableViewOptions.tsx b/apps/studio/components/ui/DataTable/DataTableViewOptions.tsx index 4cba9a12f44..c83218cfde5 100644 --- a/apps/studio/components/ui/DataTable/DataTableViewOptions.tsx +++ b/apps/studio/components/ui/DataTable/DataTableViewOptions.tsx @@ -8,9 +8,9 @@ import { CommandInput_Shadcn_ as CommandInput, CommandItem_Shadcn_ as CommandItem, CommandList_Shadcn_ as CommandList, - Popover_Shadcn_ as Popover, - PopoverContent_Shadcn_ as PopoverContent, - PopoverTrigger_Shadcn_ as PopoverTrigger, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { ButtonTooltip } from '../ButtonTooltip' diff --git a/apps/studio/components/ui/DatabaseSelector.tsx b/apps/studio/components/ui/DatabaseSelector.tsx index c02aa78e69a..59796bb70e7 100644 --- a/apps/studio/components/ui/DatabaseSelector.tsx +++ b/apps/studio/components/ui/DatabaseSelector.tsx @@ -13,9 +13,9 @@ import { CommandGroup_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Tooltip, TooltipContent, @@ -81,8 +81,8 @@ export const DatabaseSelector = ({ }, [_selectedDatabaseId]) return ( - - + +
{!isForm && ( @@ -121,8 +121,8 @@ export const DatabaseSelector = ({ )}
-
- + + {additionalOptions.length > 0 && ( @@ -240,7 +240,7 @@ export const DatabaseSelector = ({ )} - -
+ + ) } diff --git a/apps/studio/components/ui/DatePicker/index.tsx b/apps/studio/components/ui/DatePicker/index.tsx index 3295fcca0b7..f67e55de27a 100644 --- a/apps/studio/components/ui/DatePicker/index.tsx +++ b/apps/studio/components/ui/DatePicker/index.tsx @@ -6,9 +6,9 @@ import { Button, Calendar as CalendarPicker, Popover, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + PopoverContent, + PopoverSeparator, + PopoverTrigger, } from 'ui' import { ButtonProps } from 'ui/src/components/Button/Button' @@ -210,8 +210,8 @@ export function DatePicker({ } return ( - - + + - - + + <> {hideTime ? null : ( <> @@ -307,7 +307,7 @@ export function DatePicker({ from: startDate?.toISOString() || null, to: endDate?.toISOString() || null, })} - +
{!hideClear && (
-
-
+ + ) } diff --git a/apps/studio/components/ui/EditorPanel/EditorPanel.tsx b/apps/studio/components/ui/EditorPanel/EditorPanel.tsx index 416fad3c0e9..a249bf05528 100644 --- a/apps/studio/components/ui/EditorPanel/EditorPanel.tsx +++ b/apps/studio/components/ui/EditorPanel/EditorPanel.tsx @@ -29,9 +29,9 @@ import { HoverCardContent_Shadcn_, HoverCardTrigger_Shadcn_, KeyboardShortcut, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, SQL_ICON, } from 'ui' import { Admonition } from 'ui-patterns/admonition' @@ -310,8 +310,8 @@ export const EditorPanel = () => { onClick={() => editorPanelState.openAsNew()} /> )} - - + + { }, }} > - - + + { - - + + {templates.length > 0 && ( - - + + - - + + @@ -419,8 +419,8 @@ export const EditorPanel = () => { - - + + )} >({ ]) return ( - - + + - - + @@ -295,7 +295,7 @@ export const FilterPopover = >({ Save - - + + ) } diff --git a/apps/studio/components/ui/FunctionSelector.tsx b/apps/studio/components/ui/FunctionSelector.tsx index 53c9eee9714..bb99e250b85 100644 --- a/apps/studio/components/ui/FunctionSelector.tsx +++ b/apps/studio/components/ui/FunctionSelector.tsx @@ -16,9 +16,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, CommandSeparator_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' @@ -99,8 +99,8 @@ const FunctionSelector = ({ )} {isSuccess && ( - - + + - - + + - - + + )} ) diff --git a/apps/studio/components/ui/OrganizationProjectSelector.tsx b/apps/studio/components/ui/OrganizationProjectSelector.tsx index cadf884ad58..62e5fc72fa0 100644 --- a/apps/studio/components/ui/OrganizationProjectSelector.tsx +++ b/apps/studio/components/ui/OrganizationProjectSelector.tsx @@ -9,9 +9,9 @@ import { CommandGroup_Shadcn_, CommandInput_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Tooltip, TooltipContent, @@ -260,8 +260,8 @@ export const OrganizationProjectSelector = ({ } return ( - - + + {renderTrigger ? ( renderTrigger({ isLoading: isLoadingProjects || isFetching, @@ -287,8 +287,8 @@ export const OrganizationProjectSelector = ({ )} )} - - + {commandContent} - - + + ) } diff --git a/apps/studio/components/ui/QueryBlock/BlockViewConfiguration.tsx b/apps/studio/components/ui/QueryBlock/BlockViewConfiguration.tsx index 2da070cd55e..1b28d4aeef8 100644 --- a/apps/studio/components/ui/QueryBlock/BlockViewConfiguration.tsx +++ b/apps/studio/components/ui/QueryBlock/BlockViewConfiguration.tsx @@ -2,9 +2,9 @@ import { BarChart2, Settings2, Table } from 'lucide-react' import { Checkbox, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Select_Shadcn_, SelectContent_Shadcn_, SelectGroup_Shadcn_, @@ -37,8 +37,8 @@ export const BlockViewConfiguration = ({ updateChartConfig, }: BlockViewConfigurationProps) => { return ( - - + + } tooltip={{ content: { side: 'bottom', text: 'View data' } }} /> - - + +
)} -
-
+ + ) } diff --git a/apps/studio/components/ui/SchemaComboBox.tsx b/apps/studio/components/ui/SchemaComboBox.tsx index dbc6b79e51f..673f41754ac 100644 --- a/apps/studio/components/ui/SchemaComboBox.tsx +++ b/apps/studio/components/ui/SchemaComboBox.tsx @@ -11,9 +11,9 @@ import { CommandInput_Shadcn_, CommandItem_Shadcn_, CommandList_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, } from 'ui' @@ -91,8 +91,8 @@ export const SchemaComboBox = ({ )} {isSchemasSuccess && ( - - + + - - + + @@ -131,8 +131,8 @@ export const SchemaComboBox = ({ - - + + )} ) diff --git a/apps/studio/components/ui/SchemaSelector.tsx b/apps/studio/components/ui/SchemaSelector.tsx index a248575bae5..8426adf79e1 100644 --- a/apps/studio/components/ui/SchemaSelector.tsx +++ b/apps/studio/components/ui/SchemaSelector.tsx @@ -13,9 +13,9 @@ import { CommandItem_Shadcn_, CommandList_Shadcn_, CommandSeparator_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, ScrollArea, Skeleton, } from 'ui' @@ -117,8 +117,8 @@ export const SchemaSelector = forwardRef( )} {isSchemasSuccess && ( - - + + - - + ( )} - - + + )} ) diff --git a/apps/studio/pages/project/[ref]/functions/new.tsx b/apps/studio/pages/project/[ref]/functions/new.tsx index 5827e0515a7..1e06b605f29 100644 --- a/apps/studio/pages/project/[ref]/functions/new.tsx +++ b/apps/studio/pages/project/[ref]/functions/new.tsx @@ -22,9 +22,9 @@ import { FormItem, Input, Label_Shadcn_, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Tooltip, TooltipContent, TooltipTrigger, @@ -299,8 +299,8 @@ const NewFunctionPage = () => { ]} primaryActions={ <> - - + + - - + + @@ -348,8 +348,8 @@ const NewFunctionPage = () => { - - + + + +
                 {template.searchString}
               
- } - > - +
} diff --git a/apps/ui-library/components/tanstack-db-generator/ComboBox.tsx b/apps/ui-library/components/tanstack-db-generator/ComboBox.tsx index b8e3d32a9a2..208ab15dc9c 100644 --- a/apps/ui-library/components/tanstack-db-generator/ComboBox.tsx +++ b/apps/ui-library/components/tanstack-db-generator/ComboBox.tsx @@ -11,9 +11,9 @@ import { CommandInput_Shadcn_ as CommandInput, CommandItem_Shadcn_ as CommandItem, CommandList_Shadcn_ as CommandList, - Popover_Shadcn_ as Popover, - PopoverContent_Shadcn_ as PopoverContent, - PopoverTrigger_Shadcn_ as PopoverTrigger, + Popover as Popover, + PopoverContent as PopoverContent, + PopoverTrigger as PopoverTrigger, ScrollArea, } from 'ui' import ShimmeringLoader from 'ui-patterns/ShimmeringLoader' diff --git a/apps/www/components/Contribute/FilterPopover.tsx b/apps/www/components/Contribute/FilterPopover.tsx index 557b9deb3f8..2fa3baa7efe 100644 --- a/apps/www/components/Contribute/FilterPopover.tsx +++ b/apps/www/components/Contribute/FilterPopover.tsx @@ -3,14 +3,7 @@ import { X } from 'lucide-react' import { parseAsArrayOf, parseAsString, useQueryState } from 'nuqs' import { useState } from 'react' -import { - Button, - cn, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, - ScrollArea, -} from 'ui' +import { Button, cn, Popover, PopoverContent, PopoverTrigger, ScrollArea } from 'ui' interface FilterPopoverProps { allProductAreas: string[] @@ -57,9 +50,9 @@ export function FilterPopover({ allProductAreas, allStacks, trigger }: FilterPop } return ( - - {trigger} - + {trigger} + - - + + ) } diff --git a/apps/www/components/Contribute/UnansweredThreadsTable.tsx b/apps/www/components/Contribute/UnansweredThreadsTable.tsx index 0e3f69a80b4..a4c91c5ccd4 100644 --- a/apps/www/components/Contribute/UnansweredThreadsTable.tsx +++ b/apps/www/components/Contribute/UnansweredThreadsTable.tsx @@ -1,5 +1,6 @@ 'use client' +import type { ThreadRow } from '~/types/contribute' import { Filter, MessageSquareReply, Search, X } from 'lucide-react' import Link from 'next/link' import { parseAsString, useQueryState } from 'nuqs' @@ -11,9 +12,9 @@ import { Card, cn, Input, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, Table, TableBody, TableCaption, @@ -23,7 +24,6 @@ import { TableRow, } from 'ui' -import type { ThreadRow } from '~/types/contribute' import { FilterPopover } from './FilterPopover' import { ChannelIcon, DiscordIcon, GitHubIcon, RedditIcon } from './Icons' @@ -507,8 +507,8 @@ function ThreadRow({ ) })} {filteredStack.length > 5 && ( - - + + - - + +
{overflowStacks.map((tech: string) => { const isActive = currentStack === tech @@ -559,8 +559,8 @@ function ThreadRow({ ) })}
-
-
+ + )} ) diff --git a/apps/www/components/Pricing/UpgradePlan.tsx b/apps/www/components/Pricing/UpgradePlan.tsx index 56dfb70a48e..d0371567367 100644 --- a/apps/www/components/Pricing/UpgradePlan.tsx +++ b/apps/www/components/Pricing/UpgradePlan.tsx @@ -25,9 +25,9 @@ import { DialogSection, DialogTitle, DialogTrigger, - Popover_Shadcn_, - PopoverContent_Shadcn_, - PopoverTrigger_Shadcn_, + Popover, + PopoverContent, + PopoverTrigger, } from 'ui' import { Organization } from '~/data/organizations' @@ -58,8 +58,8 @@ const UpgradePlan = ({ organizations = [], onClick, size = 'large', planId }: Up - - + + - + - + @@ -124,7 +124,7 @@ export const ClientSelectDropdown = ({ )} - - + + ) } diff --git a/packages/ui-patterns/src/multi-select/multi-select.tsx b/packages/ui-patterns/src/multi-select/multi-select.tsx index fcdc6baff5a..52152d27ec1 100644 --- a/packages/ui-patterns/src/multi-select/multi-select.tsx +++ b/packages/ui-patterns/src/multi-select/multi-select.tsx @@ -5,14 +5,7 @@ import { Check, ChevronsUpDown, X as RemoveIcon } from 'lucide-react' // @ts-ignore Required to avoid TS error: The inferred type of MultiSelectorContent cannot be named without a reference to @radix-ui import type { Popover as PopoverPrimitive } from 'radix-ui' import React, { useEffect } from 'react' -import { - Badge, - cn, - Popover_Shadcn_ as Popover, - PopoverAnchor_Shadcn_ as PopoverAnchor, - PopoverContent_Shadcn_ as PopoverContent, - PopoverContentProps_Shadcn_ as PopoverContentProps, -} from 'ui' +import { Badge, cn, Popover, PopoverAnchor, PopoverContent, PopoverContentProps } from 'ui' import { Command, CommandEmpty, diff --git a/packages/ui/index.tsx b/packages/ui/index.tsx index d98a1c03e81..5a0145b8060 100644 --- a/packages/ui/index.tsx +++ b/packages/ui/index.tsx @@ -17,7 +17,6 @@ export * from './src/components/NavMenu' export * from './src/components/Modal' export * from './src/components/SidePanel' -export * from './src/components/Popover' // HTML @@ -87,14 +86,7 @@ export * from './src/components/shadcn/ui/field' export * from './src/components/shadcn/ui/form' -export { - Popover as Popover_Shadcn_, - PopoverTrigger as PopoverTrigger_Shadcn_, - PopoverContent as PopoverContent_Shadcn_, - PopoverAnchor as PopoverAnchor_Shadcn_, - PopoverSeparator as PopoverSeparator_Shadcn_, - type PopoverContentProps as PopoverContentProps_Shadcn_, -} from './src/components/shadcn/ui/popover' +export * from './src/components/shadcn/ui/popover' export { Accordion as Accordion_Shadcn_, diff --git a/packages/ui/src/components/Popover/Popover.module.css b/packages/ui/src/components/Popover/Popover.module.css deleted file mode 100644 index 670513d55e3..00000000000 --- a/packages/ui/src/components/Popover/Popover.module.css +++ /dev/null @@ -1,63 +0,0 @@ -.sbui-popover__content { - @apply bg-background p-0; - @apply border; - @apply rounded-sm; - @apply shadow-sm; - border-style: solid; - border-width: 1px; -} - -/* @keyframes fadeIn { - from { - transform: scale(0.95); - opacity: 0; - } - to { - transform: scale(1); - opacity: 1; - } -} - -@keyframes fadeOut { - from { - transform: scale(1); - opacity: 1; - } - to { - transform: scale(0.95); - opacity: 0; - } -} */ - -/* .sbui-popover__content { - transform-origin: var(--radix-popover-menu-content-transform-origin); -} - -.sbui-popover__content[data-state='open'] { - animation: fadeIn 50ms ease-out; -} - -.sbui-popover__content[data-state='closed'] { - animation: fadeOut 50ms ease-in; -} */ - -/* .sbui-popover__trigger { - @apply border-none bg-transparent p-0 focus:ring-0; -} */ - -.sbui-popover__arrow { - @apply fill-current text-background; - @apply border-0 border-t; - border-style: solid; -} - -.sbui-popover__close { - @apply absolute top-1 right-0; - @apply bg-transparent cursor-pointer border-none; - - @apply text-background-surface-100; - @apply hover:text-background-surface-200; - - @apply dark:text-background-surface-200; - @apply dark:hover:text-background-surface-00; -} diff --git a/packages/ui/src/components/Popover/Popover.tsx b/packages/ui/src/components/Popover/Popover.tsx deleted file mode 100644 index 3c1d916594e..00000000000 --- a/packages/ui/src/components/Popover/Popover.tsx +++ /dev/null @@ -1,125 +0,0 @@ -'use client' - -import { X } from 'lucide-react' -import { Popover as RadixPopover } from 'radix-ui' -import * as React from 'react' - -import styleHandler from '../../lib/theme/styleHandler' - -interface RootProps { - align?: RadixPopover.PopoverContentProps['align'] - ariaLabel?: string - arrow?: boolean - children?: React.ReactNode - className?: string - defaultOpen?: boolean - disabled?: boolean - modal?: boolean - onOpenChange?: RadixPopover.PopoverProps['onOpenChange'] - open?: boolean - overlay?: React.ReactNode - showClose?: boolean - side?: RadixPopover.PopoverContentProps['side'] - sideOffset?: RadixPopover.PopoverContentProps['sideOffset'] - style?: React.CSSProperties - header?: React.ReactNode - footer?: React.ReactNode - size?: 'tiny' | 'small' | 'medium' | 'large' | 'xlarge' | 'content' - 'data-testid'?: string -} - -/** - * @deprecated Use `import { Popover_shadcn_ } from "ui"` instead - */ -function Popover({ - align = 'center', - ariaLabel, - arrow = false, - children, - className, - defaultOpen = false, - modal, - onOpenChange, - open, - overlay, - side = 'bottom', - sideOffset = 6, - style, - header, - footer, - size = 'content', - disabled, - 'data-testid': dataTestId, -}: RootProps) { - const __styles = styleHandler('popover') - - let classes = [__styles.content, __styles.size[size]] - if (className) { - classes.push(className) - } - - return ( - - - {children} - - - - - {arrow && ( - - )} - {header &&
{header}
} - {overlay} - {footer &&
{footer}
} -
-
-
- ) -} - -/** - * @deprecated Use ./Popover_shadcn_ instead - */ -function Close() { - const __styles = styleHandler('popover') - - return ( - - - - ) -} - -/** - * @deprecated Use ./PopoverSeparator_Shadcn_ instead - */ -function Separator() { - const __styles = styleHandler('popover') - - return
-} - -Popover.Separator = Separator -Popover.Close = Close -export default Popover diff --git a/packages/ui/src/components/Popover/index.tsx b/packages/ui/src/components/Popover/index.tsx deleted file mode 100644 index c6e06a314a2..00000000000 --- a/packages/ui/src/components/Popover/index.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default as Popover } from './Popover' diff --git a/packages/ui/src/lib/theme/defaultTheme.ts b/packages/ui/src/lib/theme/defaultTheme.ts index 1d76ff3763f..97387a3aeb6 100644 --- a/packages/ui/src/lib/theme/defaultTheme.ts +++ b/packages/ui/src/lib/theme/defaultTheme.ts @@ -531,67 +531,6 @@ export default { }, }, - /* - * Popover - */ - - popover: { - trigger: ` - flex - border-none - rounded-sm - bg-transparent - p-0 - outline-hidden - outline-offset-1 - transition-all - focus:outline-4 - focus:outline-border-control - `, - content: ` - z-40 - bg-overlay - border border-overlay - rounded-sm - shadow-lg - data-open:animate-dropdown-content-show - data-closed:animate-dropdown-content-hide - min-w-fit - - origin-popover - data-open:animate-dropdown-content-show - data-closed:animate-dropdown-content-hide - `, - size: { - tiny: `w-40`, - small: `w-48`, - medium: `w-64`, - large: `w-80`, - xlarge: `w-96`, - content: `w-auto`, - }, - header: ` - bg-surface-200 - space-y-1 py-1.5 px-3 - border-b border-overlay - `, - footer: ` - bg-surface-200 - py-1.5 px-3 - border-t border-overlay - `, - close: ` - transition - text-foreground-lighter - `, - separator: ` - w-full - h-px - my-2 - bg-border-overlay - `, - }, - /* * Menu */