From f9f0412502ba580fce1e1dfafa4b661eb1ec542b Mon Sep 17 00:00:00 2001 From: BrunoQuaresma Date: Sun, 25 May 2025 04:01:32 +0000 Subject: [PATCH] chore: remove unused exports --- site/.knip.jsonc | 7 +------ site/pnpm-lock.yaml | 13 ++----------- site/src/api/errors.ts | 4 ++-- site/src/api/queries/workspaces.ts | 2 +- .../components/ActiveUserChart/ActiveUserChart.tsx | 2 +- site/src/components/Avatar/AvatarData.tsx | 2 +- site/src/components/Badge/Badge.tsx | 2 +- site/src/components/CodeExample/CodeExample.tsx | 2 +- .../CollapsibleSummary/CollapsibleSummary.tsx | 2 +- site/src/components/Conditionals/ChooseOne.tsx | 2 +- .../Dialogs/DeleteDialog/DeleteDialog.tsx | 2 +- site/src/components/Expander/Expander.tsx | 2 +- site/src/components/FileUpload/FileUpload.tsx | 2 +- site/src/components/Filter/Filter.tsx | 2 +- site/src/components/Filter/SelectFilter.tsx | 2 +- .../FullPageForm/FullPageHorizontalForm.tsx | 2 +- .../GlobalSnackbar/EnterpriseSnackbar.tsx | 2 +- site/src/components/Link/Link.tsx | 2 +- site/src/components/Logs/Logs.tsx | 2 +- .../MultiSelectCombobox/MultiSelectCombobox.tsx | 2 +- .../OrganizationAutocomplete.tsx | 2 +- site/src/components/PageHeader/PageHeader.tsx | 2 +- site/src/components/Paywall/Paywall.tsx | 2 +- site/src/components/Paywall/PopoverPaywall.tsx | 2 +- site/src/components/Pill/Pill.tsx | 2 +- .../RichParameterInput/RichParameterInput.tsx | 7 ++----- site/src/components/SelectMenu/SelectMenu.tsx | 2 +- site/src/components/Stack/Stack.tsx | 2 +- site/src/components/TableEmpty/TableEmpty.tsx | 2 +- site/src/components/TagInput/TagInput.tsx | 2 +- site/src/components/Timeline/Timeline.tsx | 2 +- .../UserAutocomplete/UserAutocomplete.tsx | 8 ++++---- site/src/hooks/useSearchParamsKey.ts | 4 ++-- site/src/modules/apps/apps.ts | 2 +- site/src/modules/builds/BuildAvatar/BuildAvatar.tsx | 2 +- .../AnnouncementBanners/AnnouncementBannerView.tsx | 2 +- .../DeploymentBanner/DeploymentBannerView.tsx | 2 +- .../dashboard/LicenseBanner/LicenseBannerView.tsx | 2 +- site/src/modules/dashboard/Navbar/NavbarView.tsx | 2 +- .../dashboard/Navbar/UserDropdown/UserDropdown.tsx | 2 +- .../Navbar/UserDropdown/UserDropdownContent.tsx | 2 +- .../management/OrganizationSettingsLayout.tsx | 2 +- site/src/modules/permissions/RequirePermission.tsx | 2 +- site/src/modules/permissions/index.ts | 2 +- site/src/modules/resources/AgentMetadata.tsx | 2 +- site/src/modules/resources/AgentRowPreview.tsx | 2 +- site/src/modules/resources/AppLink/AppLink.tsx | 2 +- site/src/modules/resources/AppLink/ShareIcon.tsx | 2 +- site/src/modules/resources/PortForwardButton.tsx | 2 +- site/src/modules/resources/ResourceAvatar.tsx | 2 +- site/src/modules/resources/ResourceCard.tsx | 2 +- site/src/modules/resources/SSHButton/SSHButton.tsx | 4 ++-- .../modules/resources/TerminalLink/TerminalLink.tsx | 2 +- .../VSCodeDesktopButton/VSCodeDesktopButton.tsx | 2 +- .../VSCodeDevContainerButton.tsx | 2 +- .../TemplateResourcesTable.tsx | 2 +- .../DynamicParameter/DynamicParameter.tsx | 2 +- .../WorkspaceDormantBadge/WorkspaceDormantBadge.tsx | 2 +- .../ChangeWorkspaceVersionDialog.tsx | 2 +- .../UpdateBuildParametersDialog.tsx | 2 +- .../workspaces/WorkspaceTiming/ResourcesChart.tsx | 2 +- .../workspaces/WorkspaceTiming/ScriptsChart.tsx | 2 +- .../workspaces/WorkspaceTiming/StagesChart.tsx | 2 +- site/src/pages/AuditPage/AuditFilter.tsx | 6 ++---- .../src/pages/AuditPage/AuditLogRow/AuditLogRow.tsx | 2 +- site/src/pages/AuditPage/AuditPageView.tsx | 2 +- site/src/pages/ChatPage/ChatLayout.tsx | 4 ++-- site/src/pages/CliAuthPage/CliAuthPageView.tsx | 2 +- .../CreateTemplateGalleryPageView.tsx | 2 +- .../CreateTemplateGalleryPage/StarterTemplates.tsx | 2 +- .../pages/CreateTemplatePage/CreateTemplateForm.tsx | 2 +- site/src/pages/CreateTemplatePage/VariableInput.tsx | 2 +- site/src/pages/CreateUserPage/CreateUserForm.tsx | 2 +- .../CreateWorkspacePageExperimental.tsx | 4 ++-- .../CreateWorkspacePage/CreateWorkspacePageView.tsx | 2 +- .../CreateWorkspacePageViewExperimental.tsx | 2 +- .../CreateWorkspacePage/ExternalAuthButton.tsx | 2 +- .../pages/CreateWorkspacePage/SelectedTemplate.tsx | 2 +- .../AppearanceSettingsPageView.tsx | 2 +- .../ExternalAuthSettingsPageView.tsx | 2 +- .../LicenseSeatConsumptionChart.tsx | 2 +- .../NetworkSettingsPage/NetworkSettingsPageView.tsx | 2 +- .../EditOAuth2AppPageView.tsx | 2 +- .../ObservabilitySettingsPageView.tsx | 2 +- .../OverviewPage/OverviewPageView.tsx | 2 +- .../OverviewPage/UserEngagementChart.tsx | 2 +- .../PremiumPage/PremiumPageView.tsx | 2 +- .../SecuritySettingsPageView.tsx | 2 +- .../UserAuthSettingsPageView.tsx | 2 +- site/src/pages/GroupsPage/CreateGroupPageView.tsx | 2 +- site/src/pages/GroupsPage/GroupSettingsPageView.tsx | 2 +- site/src/pages/GroupsPage/GroupsPageView.tsx | 2 +- .../LoginOAuthDevicePageView.tsx | 2 +- site/src/pages/LoginPage/LoginPageView.tsx | 2 +- site/src/pages/LoginPage/SignInForm.tsx | 2 +- .../CustomRolesPage/CreateEditRolePageView.tsx | 2 +- .../ProvisionerVersion.tsx | 2 +- .../UserTable/EditRolesButton.tsx | 2 +- site/src/pages/SetupPage/SetupPageView.tsx | 2 +- .../StarterTemplatePage/StarterTemplatePageView.tsx | 2 +- site/src/pages/TemplatePage/TemplatePageHeader.tsx | 2 +- .../TemplateResourcesPageView.tsx | 2 +- site/src/pages/TemplatePage/TemplateStats.tsx | 2 +- .../TemplateVersionsPage/VersionRow.tsx | 2 +- .../TemplateVersionsPage/VersionsTable.tsx | 2 +- .../TemplateSettingsPageView.tsx | 2 +- .../TemplatePermissionsPageView.tsx | 2 +- .../UserOrGroupAutocomplete.tsx | 2 +- .../TemplateSchedulePage/ScheduleDialog.tsx | 2 +- .../TemplateScheduleAutostart.tsx | 2 +- .../TemplateSchedulePageView.tsx | 2 +- .../TemplateVariablesPage/TemplateVariableField.tsx | 2 +- .../TemplateVariablesPageView.tsx | 2 +- .../MissingTemplateVariablesDialog.tsx | 5 +---- .../ProvisionerTagsPopover.tsx | 2 +- .../PublishTemplateVersionDialog.tsx | 2 +- .../TemplateVersionEditor.tsx | 2 +- site/src/pages/TemplatesPage/TemplatesPageView.tsx | 2 +- .../UserSettingsPage/AccountPage/AccountForm.tsx | 2 +- .../AppearancePage/AppearanceForm.tsx | 2 +- .../ExternalAuthPage/ExternalAuthPageView.tsx | 2 +- .../OAuth2ProviderPage/OAuth2ProviderPageView.tsx | 2 +- .../SSHKeysPage/SSHKeysPageView.tsx | 2 +- .../UserSettingsPage/SchedulePage/ScheduleForm.tsx | 4 ++-- site/src/pages/UserSettingsPage/Section.tsx | 2 +- .../UserSettingsPage/SecurityPage/SecurityForm.tsx | 2 +- .../TokensPage/ConfirmDeleteDialog.tsx | 2 +- .../UserSettingsPage/TokensPage/TokensPageView.tsx | 2 +- .../WorkspaceProxyPage/WorkspaceProxyView.tsx | 2 +- site/src/pages/UsersPage/ResetPasswordDialog.tsx | 2 +- site/src/pages/UsersPage/UsersFilter.tsx | 2 +- site/src/pages/UsersPage/UsersPageView.tsx | 2 +- site/src/pages/UsersPage/UsersTable/UsersTable.tsx | 2 +- .../WorkspaceBuildPage/WorkspaceBuildPageView.tsx | 2 +- site/src/pages/WorkspacePage/AppStatuses.tsx | 2 +- site/src/pages/WorkspacePage/Workspace.tsx | 2 +- .../WorkspaceActions/WorkspaceActions.tsx | 2 +- .../pages/WorkspacePage/WorkspaceBuildProgress.tsx | 2 +- .../pages/WorkspacePage/WorkspaceDeletedBanner.tsx | 2 +- site/src/pages/WorkspacePage/WorkspaceTopbar.tsx | 2 +- .../WorkspaceParametersPage.tsx | 2 +- .../WorkspaceParametersPageViewExperimental.tsx | 3 ++- .../WorkspaceSchedulePage/schedule.ts | 4 ++-- .../WorkspaceSettingsPageView.tsx | 2 +- .../src/pages/WorkspacesPage/WorkspacesPageView.tsx | 3 +-- site/src/pages/WorkspacesPage/WorkspacesTable.tsx | 2 +- site/src/testHelpers/hooks.tsx | 6 +++--- site/src/utils/tar.ts | 4 ++-- site/src/utils/time.ts | 2 +- 149 files changed, 166 insertions(+), 188 deletions(-) diff --git a/site/.knip.jsonc b/site/.knip.jsonc index f4c082a76ecbf..1d620f9134781 100644 --- a/site/.knip.jsonc +++ b/site/.knip.jsonc @@ -8,10 +8,5 @@ "@types/react-virtualized-auto-sizer", "jest_workaround", "ts-proto" - ], - // Don't report unused exports of types as long as they are used within the file. - "ignoreExportsUsedInFile": { - "interface": true, - "type": true - } + ] } diff --git a/site/pnpm-lock.yaml b/site/pnpm-lock.yaml index 442e5511ce229..99536634297f9 100644 --- a/site/pnpm-lock.yaml +++ b/site/pnpm-lock.yaml @@ -3635,6 +3635,7 @@ packages: eslint@8.52.0: resolution: {integrity: sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==, tarball: https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. hasBin: true espree@9.6.1: @@ -4019,10 +4020,6 @@ packages: immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==, tarball: https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz} - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, tarball: https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz} - engines: {node: '>=6'} - import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==, tarball: https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz} engines: {node: '>=6'} @@ -9456,7 +9453,7 @@ snapshots: cosmiconfig@7.1.0: dependencies: '@types/parse-json': 4.0.0 - import-fresh: 3.3.0 + import-fresh: 3.3.1 parse-json: 5.2.0 path-type: 4.0.0 yaml: 1.10.2 @@ -10358,16 +10355,10 @@ snapshots: immediate@3.0.6: {} - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 - optional: true import-local@3.2.0: dependencies: diff --git a/site/src/api/errors.ts b/site/src/api/errors.ts index bb51bebce651b..c9a328803bf15 100644 --- a/site/src/api/errors.ts +++ b/site/src/api/errors.ts @@ -11,7 +11,7 @@ export interface FieldError { detail: string; } -export type FieldErrors = Record; +type FieldErrors = Record; export interface ApiErrorResponse { message: string; @@ -19,7 +19,7 @@ export interface ApiErrorResponse { validations?: FieldError[]; } -export type ApiError = AxiosError & { +type ApiError = AxiosError & { response: AxiosResponse; }; diff --git a/site/src/api/queries/workspaces.ts b/site/src/api/queries/workspaces.ts index 86417e4f13655..dbfd89f8d209e 100644 --- a/site/src/api/queries/workspaces.ts +++ b/site/src/api/queries/workspaces.ts @@ -355,7 +355,7 @@ export const agentLogs = (agentId: string) => { }; // workspace usage options -export interface WorkspaceUsageOptions { +interface WorkspaceUsageOptions { usageApp: UsageAppName; connectionStatus: ConnectionStatus; workspaceId: string | undefined; diff --git a/site/src/components/ActiveUserChart/ActiveUserChart.tsx b/site/src/components/ActiveUserChart/ActiveUserChart.tsx index faf92a82384d7..084ed7b16559f 100644 --- a/site/src/components/ActiveUserChart/ActiveUserChart.tsx +++ b/site/src/components/ActiveUserChart/ActiveUserChart.tsx @@ -20,7 +20,7 @@ const chartConfig = { color: "hsl(var(--highlight-purple))", }, } satisfies ChartConfig; -export interface ActiveUserChartProps { +interface ActiveUserChartProps { data: { date: string; amount: number }[]; } diff --git a/site/src/components/Avatar/AvatarData.tsx b/site/src/components/Avatar/AvatarData.tsx index 8f55e1e7ae39b..2762e90e7fcd6 100644 --- a/site/src/components/Avatar/AvatarData.tsx +++ b/site/src/components/Avatar/AvatarData.tsx @@ -1,7 +1,7 @@ import { Avatar } from "components/Avatar/Avatar"; import type { FC, ReactNode } from "react"; -export interface AvatarDataProps { +interface AvatarDataProps { title: ReactNode; subtitle?: ReactNode; src?: string; diff --git a/site/src/components/Badge/Badge.tsx b/site/src/components/Badge/Badge.tsx index b4d405055bb98..7c646615cb7ee 100644 --- a/site/src/components/Badge/Badge.tsx +++ b/site/src/components/Badge/Badge.tsx @@ -50,7 +50,7 @@ const badgeVariants = cva( }, ); -export interface BadgeProps +interface BadgeProps extends React.HTMLAttributes, VariantProps { asChild?: boolean; diff --git a/site/src/components/CodeExample/CodeExample.tsx b/site/src/components/CodeExample/CodeExample.tsx index b2c8bd16cf0a1..474dcb1fac225 100644 --- a/site/src/components/CodeExample/CodeExample.tsx +++ b/site/src/components/CodeExample/CodeExample.tsx @@ -3,7 +3,7 @@ import type { FC } from "react"; import { MONOSPACE_FONT_FAMILY } from "theme/constants"; import { CopyButton } from "../CopyButton/CopyButton"; -export interface CodeExampleProps { +interface CodeExampleProps { code: string; secret?: boolean; className?: string; diff --git a/site/src/components/CollapsibleSummary/CollapsibleSummary.tsx b/site/src/components/CollapsibleSummary/CollapsibleSummary.tsx index 675500685adf3..ef68d1816dbcf 100644 --- a/site/src/components/CollapsibleSummary/CollapsibleSummary.tsx +++ b/site/src/components/CollapsibleSummary/CollapsibleSummary.tsx @@ -20,7 +20,7 @@ const collapsibleSummaryVariants = cva( }, ); -export interface CollapsibleSummaryProps +interface CollapsibleSummaryProps extends VariantProps { /** * The label to display for the collapsible section diff --git a/site/src/components/Conditionals/ChooseOne.tsx b/site/src/components/Conditionals/ChooseOne.tsx index d4d309acfeb50..cfd5dada2a9e7 100644 --- a/site/src/components/Conditionals/ChooseOne.tsx +++ b/site/src/components/Conditionals/ChooseOne.tsx @@ -5,7 +5,7 @@ import { type ReactNode, } from "react"; -export interface CondProps { +interface CondProps { condition?: boolean; children?: ReactNode; } diff --git a/site/src/components/Dialogs/DeleteDialog/DeleteDialog.tsx b/site/src/components/Dialogs/DeleteDialog/DeleteDialog.tsx index e3d47ccfd0281..9bee94fe24714 100644 --- a/site/src/components/Dialogs/DeleteDialog/DeleteDialog.tsx +++ b/site/src/components/Dialogs/DeleteDialog/DeleteDialog.tsx @@ -4,7 +4,7 @@ import { type FC, type FormEvent, useId, useState } from "react"; import { Stack } from "../../Stack/Stack"; import { ConfirmDialog } from "../ConfirmDialog/ConfirmDialog"; -export interface DeleteDialogProps { +interface DeleteDialogProps { isOpen: boolean; onConfirm: () => void; onCancel: () => void; diff --git a/site/src/components/Expander/Expander.tsx b/site/src/components/Expander/Expander.tsx index 7f0e4312e14fc..394f6081e2897 100644 --- a/site/src/components/Expander/Expander.tsx +++ b/site/src/components/Expander/Expander.tsx @@ -4,7 +4,7 @@ import Link from "@mui/material/Link"; import { DropdownArrow } from "components/DropdownArrow/DropdownArrow"; import type { FC, ReactNode } from "react"; -export interface ExpanderProps { +interface ExpanderProps { expanded: boolean; setExpanded: (val: boolean) => void; children?: ReactNode; diff --git a/site/src/components/FileUpload/FileUpload.tsx b/site/src/components/FileUpload/FileUpload.tsx index 79535debb56ee..67ec27054ade4 100644 --- a/site/src/components/FileUpload/FileUpload.tsx +++ b/site/src/components/FileUpload/FileUpload.tsx @@ -6,7 +6,7 @@ import { useClickable } from "hooks/useClickable"; import { CloudUploadIcon, FolderIcon, TrashIcon } from "lucide-react"; import { type DragEvent, type FC, type ReactNode, useRef } from "react"; -export interface FileUploadProps { +interface FileUploadProps { isUploading: boolean; onUpload: (file: File) => void; onRemove?: () => void; diff --git a/site/src/components/Filter/Filter.tsx b/site/src/components/Filter/Filter.tsx index 1d568e84a5d2b..736592116730d 100644 --- a/site/src/components/Filter/Filter.tsx +++ b/site/src/components/Filter/Filter.tsx @@ -18,7 +18,7 @@ import { ChevronDownIcon } from "lucide-react"; import { type FC, type ReactNode, useEffect, useRef, useState } from "react"; import type { useSearchParams } from "react-router-dom"; -export type PresetFilter = { +type PresetFilter = { name: string; query: string; }; diff --git a/site/src/components/Filter/SelectFilter.tsx b/site/src/components/Filter/SelectFilter.tsx index 09aac251cec8b..f7354e1854f5b 100644 --- a/site/src/components/Filter/SelectFilter.tsx +++ b/site/src/components/Filter/SelectFilter.tsx @@ -20,7 +20,7 @@ export type SelectFilterOption = { value: string; }; -export type SelectFilterProps = { +type SelectFilterProps = { options: SelectFilterOption[] | undefined; selectedOption?: SelectFilterOption; // Used to add a accessibility label to the select diff --git a/site/src/components/FullPageForm/FullPageHorizontalForm.tsx b/site/src/components/FullPageForm/FullPageHorizontalForm.tsx index e3f30eb789dc7..7be86788a7b05 100644 --- a/site/src/components/FullPageForm/FullPageHorizontalForm.tsx +++ b/site/src/components/FullPageForm/FullPageHorizontalForm.tsx @@ -7,7 +7,7 @@ import { } from "components/PageHeader/PageHeader"; import type { FC, ReactNode } from "react"; -export interface FullPageHorizontalFormProps { +interface FullPageHorizontalFormProps { title: string; detail?: ReactNode; onCancel?: () => void; diff --git a/site/src/components/GlobalSnackbar/EnterpriseSnackbar.tsx b/site/src/components/GlobalSnackbar/EnterpriseSnackbar.tsx index 816a5ae34e24e..e7c9fbcce3863 100644 --- a/site/src/components/GlobalSnackbar/EnterpriseSnackbar.tsx +++ b/site/src/components/GlobalSnackbar/EnterpriseSnackbar.tsx @@ -9,7 +9,7 @@ import type { FC } from "react"; type EnterpriseSnackbarVariant = "error" | "info" | "success"; -export interface EnterpriseSnackbarProps extends MuiSnackbarProps { +interface EnterpriseSnackbarProps extends MuiSnackbarProps { /** Called when the snackbar should close, either from timeout or clicking close */ onClose: () => void; /** Variant of snackbar, for theming */ diff --git a/site/src/components/Link/Link.tsx b/site/src/components/Link/Link.tsx index a8b935e45020e..f861ae2e197f7 100644 --- a/site/src/components/Link/Link.tsx +++ b/site/src/components/Link/Link.tsx @@ -23,7 +23,7 @@ const linkVariants = cva( }, ); -export interface LinkProps +interface LinkProps extends React.AnchorHTMLAttributes, VariantProps { asChild?: boolean; diff --git a/site/src/components/Logs/Logs.tsx b/site/src/components/Logs/Logs.tsx index 5ba9a2cbe16d2..75a7acc961913 100644 --- a/site/src/components/Logs/Logs.tsx +++ b/site/src/components/Logs/Logs.tsx @@ -5,7 +5,7 @@ import { type Line, LogLine, LogLinePrefix } from "./LogLine"; export const DEFAULT_LOG_LINE_SIDE_PADDING = 24; -export interface LogsProps { +interface LogsProps { lines: Line[]; hideTimestamps?: boolean; className?: string; diff --git a/site/src/components/MultiSelectCombobox/MultiSelectCombobox.tsx b/site/src/components/MultiSelectCombobox/MultiSelectCombobox.tsx index 249af7918df28..2cfe69a25df52 100644 --- a/site/src/components/MultiSelectCombobox/MultiSelectCombobox.tsx +++ b/site/src/components/MultiSelectCombobox/MultiSelectCombobox.tsx @@ -97,7 +97,7 @@ interface MultiSelectComboboxProps { hideClearAllButton?: boolean; } -export interface MultiSelectComboboxRef { +interface MultiSelectComboboxRef { selectedValue: Option[]; input: HTMLInputElement; focus: () => void; diff --git a/site/src/components/OrganizationAutocomplete/OrganizationAutocomplete.tsx b/site/src/components/OrganizationAutocomplete/OrganizationAutocomplete.tsx index 3e894e6a18f96..59bb1af5197b2 100644 --- a/site/src/components/OrganizationAutocomplete/OrganizationAutocomplete.tsx +++ b/site/src/components/OrganizationAutocomplete/OrganizationAutocomplete.tsx @@ -10,7 +10,7 @@ import { AvatarData } from "components/Avatar/AvatarData"; import { type ComponentProps, type FC, useEffect, useState } from "react"; import { useQuery } from "react-query"; -export type OrganizationAutocompleteProps = { +type OrganizationAutocompleteProps = { onChange: (organization: Organization | null) => void; label?: string; className?: string; diff --git a/site/src/components/PageHeader/PageHeader.tsx b/site/src/components/PageHeader/PageHeader.tsx index 0a45b6b50c3cf..c839700c995ac 100644 --- a/site/src/components/PageHeader/PageHeader.tsx +++ b/site/src/components/PageHeader/PageHeader.tsx @@ -1,7 +1,7 @@ import type { FC, PropsWithChildren, ReactNode } from "react"; import { Stack } from "../Stack/Stack"; -export interface PageHeaderProps { +interface PageHeaderProps { actions?: ReactNode; className?: string; children?: ReactNode; diff --git a/site/src/components/Paywall/Paywall.tsx b/site/src/components/Paywall/Paywall.tsx index 56c0e9cc390de..3a4ce74f68e07 100644 --- a/site/src/components/Paywall/Paywall.tsx +++ b/site/src/components/Paywall/Paywall.tsx @@ -6,7 +6,7 @@ import { Stack } from "components/Stack/Stack"; import { CircleCheckBigIcon } from "lucide-react"; import type { FC, ReactNode } from "react"; -export interface PaywallProps { +interface PaywallProps { message: string; description?: ReactNode; documentationLink?: string; diff --git a/site/src/components/Paywall/PopoverPaywall.tsx b/site/src/components/Paywall/PopoverPaywall.tsx index 2b999c7014d16..360c8b87ced0b 100644 --- a/site/src/components/Paywall/PopoverPaywall.tsx +++ b/site/src/components/Paywall/PopoverPaywall.tsx @@ -6,7 +6,7 @@ import { Stack } from "components/Stack/Stack"; import { CircleCheckBigIcon } from "lucide-react"; import type { FC, ReactNode } from "react"; -export interface PopoverPaywallProps { +interface PopoverPaywallProps { message: string; description?: ReactNode; documentationLink?: string; diff --git a/site/src/components/Pill/Pill.tsx b/site/src/components/Pill/Pill.tsx index 8d6b338062a7c..4915bac308058 100644 --- a/site/src/components/Pill/Pill.tsx +++ b/site/src/components/Pill/Pill.tsx @@ -11,7 +11,7 @@ import { } from "react"; import type { ThemeRole } from "theme/roles"; -export type PillProps = HTMLAttributes & { +type PillProps = HTMLAttributes & { icon?: ReactNode; type?: ThemeRole; size?: "md" | "lg"; diff --git a/site/src/components/RichParameterInput/RichParameterInput.tsx b/site/src/components/RichParameterInput/RichParameterInput.tsx index 1af3245b98c7b..c60951df71090 100644 --- a/site/src/components/RichParameterInput/RichParameterInput.tsx +++ b/site/src/components/RichParameterInput/RichParameterInput.tsx @@ -121,7 +121,7 @@ const styles = { }), } satisfies Record>; -export interface ParameterLabelProps { +interface ParameterLabelProps { parameter: TemplateVersionParameter; isPreset?: boolean; } @@ -191,10 +191,7 @@ const ParameterLabel: FC = ({ parameter, isPreset }) => { type Size = "medium" | "small"; -export type RichParameterInputProps = Omit< - TextFieldProps, - "size" | "onChange" -> & { +type RichParameterInputProps = Omit & { parameter: TemplateVersionParameter; parameterAutofill?: AutofillBuildParameter; onChange: (value: string) => void; diff --git a/site/src/components/SelectMenu/SelectMenu.tsx b/site/src/components/SelectMenu/SelectMenu.tsx index c56be65460d90..846b7bf7afa29 100644 --- a/site/src/components/SelectMenu/SelectMenu.tsx +++ b/site/src/components/SelectMenu/SelectMenu.tsx @@ -29,7 +29,7 @@ export const SelectMenuTrigger = PopoverTrigger; export const SelectMenuContent = PopoverContent; -export type SelectMenuButtonProps = ButtonProps & { +type SelectMenuButtonProps = ButtonProps & { startIcon?: React.ReactNode; }; diff --git a/site/src/components/Stack/Stack.tsx b/site/src/components/Stack/Stack.tsx index dd2dbc49c7b7d..98904422d4733 100644 --- a/site/src/components/Stack/Stack.tsx +++ b/site/src/components/Stack/Stack.tsx @@ -1,7 +1,7 @@ import type { CSSObject } from "@emotion/react"; import { forwardRef } from "react"; -export type StackProps = { +type StackProps = { className?: string; direction?: "column" | "row"; spacing?: number; diff --git a/site/src/components/TableEmpty/TableEmpty.tsx b/site/src/components/TableEmpty/TableEmpty.tsx index 8dea86ccc44a1..554ba84baa3ce 100644 --- a/site/src/components/TableEmpty/TableEmpty.tsx +++ b/site/src/components/TableEmpty/TableEmpty.tsx @@ -6,7 +6,7 @@ import { } from "components/EmptyState/EmptyState"; import type { FC } from "react"; -export type TableEmptyProps = EmptyStateProps; +type TableEmptyProps = EmptyStateProps; export const TableEmpty: FC = (props) => { return ( diff --git a/site/src/components/TagInput/TagInput.tsx b/site/src/components/TagInput/TagInput.tsx index 40e89625502a6..09f3dcb86a1e2 100644 --- a/site/src/components/TagInput/TagInput.tsx +++ b/site/src/components/TagInput/TagInput.tsx @@ -2,7 +2,7 @@ import Chip from "@mui/material/Chip"; import FormHelperText from "@mui/material/FormHelperText"; import { type FC, useId, useMemo } from "react"; -export type TagInputProps = { +type TagInputProps = { label: string; id?: string; values: string[]; diff --git a/site/src/components/Timeline/Timeline.tsx b/site/src/components/Timeline/Timeline.tsx index 28994e49ca26c..59da6028898a9 100644 --- a/site/src/components/Timeline/Timeline.tsx +++ b/site/src/components/Timeline/Timeline.tsx @@ -22,7 +22,7 @@ const groupByDate = ( return itemsByDate; }; -export interface TimelineProps { +interface TimelineProps { items: readonly TData[]; getDate: GetDateFn; row: (item: TData) => JSX.Element; diff --git a/site/src/components/UserAutocomplete/UserAutocomplete.tsx b/site/src/components/UserAutocomplete/UserAutocomplete.tsx index c1b86e4d23afc..7769b8c8ddcf6 100644 --- a/site/src/components/UserAutocomplete/UserAutocomplete.tsx +++ b/site/src/components/UserAutocomplete/UserAutocomplete.tsx @@ -19,13 +19,13 @@ import { useQuery } from "react-query"; import { prepareQuery } from "utils/filters"; // The common properties between users and org members that we need. -export type SelectedUser = { +type SelectedUser = { avatar_url?: string; email: string; username: string; }; -export type CommonAutocompleteProps = { +type CommonAutocompleteProps = { className?: string; label?: string; onChange: (user: T | null) => void; @@ -34,7 +34,7 @@ export type CommonAutocompleteProps = { value: T | null; }; -export type UserAutocompleteProps = CommonAutocompleteProps; +type UserAutocompleteProps = CommonAutocompleteProps; export const UserAutocomplete: FC = (props) => { const [filter, setFilter] = useState(); @@ -58,7 +58,7 @@ export const UserAutocomplete: FC = (props) => { ); }; -export type MemberAutocompleteProps = +type MemberAutocompleteProps = CommonAutocompleteProps & { organizationId: string; }; diff --git a/site/src/hooks/useSearchParamsKey.ts b/site/src/hooks/useSearchParamsKey.ts index fcc9899a6afed..b2c452c8a00d7 100644 --- a/site/src/hooks/useSearchParamsKey.ts +++ b/site/src/hooks/useSearchParamsKey.ts @@ -1,13 +1,13 @@ import { useSearchParams } from "react-router-dom"; -export type UseSearchParamsKeyConfig = Readonly<{ +type UseSearchParamsKeyConfig = Readonly<{ key: string; searchParams?: URLSearchParams; defaultValue?: string; replace?: boolean; }>; -export type UseSearchParamKeyResult = Readonly<{ +type UseSearchParamKeyResult = Readonly<{ value: string; setValue: (newValue: string) => void; deleteValue: () => void; diff --git a/site/src/modules/apps/apps.ts b/site/src/modules/apps/apps.ts index a9b4ba499c17b..d154b632dc1ca 100644 --- a/site/src/modules/apps/apps.ts +++ b/site/src/modules/apps/apps.ts @@ -79,7 +79,7 @@ export const openAppInNewWindow = (href: string) => { window.open(href, "_blank", "width=900,height=600"); }; -export type GetAppHrefParams = { +type GetAppHrefParams = { path: string; host: string; workspace: Workspace; diff --git a/site/src/modules/builds/BuildAvatar/BuildAvatar.tsx b/site/src/modules/builds/BuildAvatar/BuildAvatar.tsx index e1be56e995b3f..3f10323b08f42 100644 --- a/site/src/modules/builds/BuildAvatar/BuildAvatar.tsx +++ b/site/src/modules/builds/BuildAvatar/BuildAvatar.tsx @@ -6,7 +6,7 @@ import { useClassName } from "hooks/useClassName"; import type { FC } from "react"; import { getDisplayWorkspaceBuildStatus } from "utils/workspace"; -export interface BuildAvatarProps { +interface BuildAvatarProps { build: WorkspaceBuild; size?: AvatarProps["size"]; } diff --git a/site/src/modules/dashboard/AnnouncementBanners/AnnouncementBannerView.tsx b/site/src/modules/dashboard/AnnouncementBanners/AnnouncementBannerView.tsx index b0bc70a450f8f..34d67aa83ec16 100644 --- a/site/src/modules/dashboard/AnnouncementBanners/AnnouncementBannerView.tsx +++ b/site/src/modules/dashboard/AnnouncementBanners/AnnouncementBannerView.tsx @@ -3,7 +3,7 @@ import { InlineMarkdown } from "components/Markdown/Markdown"; import type { FC } from "react"; import { readableForegroundColor } from "utils/colors"; -export interface AnnouncementBannerViewProps { +interface AnnouncementBannerViewProps { message?: string; backgroundColor?: string; } diff --git a/site/src/modules/dashboard/DeploymentBanner/DeploymentBannerView.tsx b/site/src/modules/dashboard/DeploymentBanner/DeploymentBannerView.tsx index 2fb5fdd819a03..1a5ef6ebb4cfb 100644 --- a/site/src/modules/dashboard/DeploymentBanner/DeploymentBannerView.tsx +++ b/site/src/modules/dashboard/DeploymentBanner/DeploymentBannerView.tsx @@ -38,7 +38,7 @@ import { getDisplayWorkspaceStatus } from "utils/workspace"; const bannerHeight = 36; -export interface DeploymentBannerViewProps { +interface DeploymentBannerViewProps { health?: HealthcheckReport; stats?: DeploymentStats; fetchStats?: () => void; diff --git a/site/src/modules/dashboard/LicenseBanner/LicenseBannerView.tsx b/site/src/modules/dashboard/LicenseBanner/LicenseBannerView.tsx index 7c761aeedbc7a..f9d1f39b868ed 100644 --- a/site/src/modules/dashboard/LicenseBanner/LicenseBannerView.tsx +++ b/site/src/modules/dashboard/LicenseBanner/LicenseBannerView.tsx @@ -36,7 +36,7 @@ const formatMessage = (message: string) => { return message; }; -export interface LicenseBannerViewProps { +interface LicenseBannerViewProps { errors: readonly string[]; warnings: readonly string[]; } diff --git a/site/src/modules/dashboard/Navbar/NavbarView.tsx b/site/src/modules/dashboard/Navbar/NavbarView.tsx index 8cefde8cb86e3..b55ac23f16bd7 100644 --- a/site/src/modules/dashboard/Navbar/NavbarView.tsx +++ b/site/src/modules/dashboard/Navbar/NavbarView.tsx @@ -15,7 +15,7 @@ import { MobileMenu } from "./MobileMenu"; import { ProxyMenu } from "./ProxyMenu"; import { UserDropdown } from "./UserDropdown/UserDropdown"; -export interface NavbarViewProps { +interface NavbarViewProps { logo_url?: string; user?: TypesGen.User; buildInfo?: TypesGen.BuildInfoResponse; diff --git a/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdown.tsx b/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdown.tsx index 6fc41fe7232ec..aa425d1c85b5c 100644 --- a/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdown.tsx +++ b/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdown.tsx @@ -9,7 +9,7 @@ import { import { type FC, useState } from "react"; import { UserDropdownContent } from "./UserDropdownContent"; -export interface UserDropdownProps { +interface UserDropdownProps { user: TypesGen.User; buildInfo?: TypesGen.BuildInfoResponse; supportLinks?: readonly TypesGen.LinkConfig[]; diff --git a/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdownContent.tsx b/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdownContent.tsx index 99c77e8dbbdbf..7ebf1bdd00fba 100644 --- a/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdownContent.tsx +++ b/site/src/modules/dashboard/Navbar/UserDropdown/UserDropdownContent.tsx @@ -28,7 +28,7 @@ export const Language = { copyrightText: `\u00a9 ${new Date().getFullYear()} Coder Technologies, Inc.`, }; -export interface UserDropdownContentProps { +interface UserDropdownContentProps { user: TypesGen.User; buildInfo?: TypesGen.BuildInfoResponse; supportLinks?: readonly TypesGen.LinkConfig[]; diff --git a/site/src/modules/management/OrganizationSettingsLayout.tsx b/site/src/modules/management/OrganizationSettingsLayout.tsx index 7d30b4d76921e..c103bf47bf4e7 100644 --- a/site/src/modules/management/OrganizationSettingsLayout.tsx +++ b/site/src/modules/management/OrganizationSettingsLayout.tsx @@ -24,7 +24,7 @@ export const OrganizationSettingsContext = createContext< OrganizationSettingsValue | undefined >(undefined); -export type OrganizationSettingsValue = Readonly<{ +type OrganizationSettingsValue = Readonly<{ organizations: readonly Organization[]; organizationPermissionsByOrganizationId: Record< string, diff --git a/site/src/modules/permissions/RequirePermission.tsx b/site/src/modules/permissions/RequirePermission.tsx index 6e4b0f3aac186..097a6a08c6d48 100644 --- a/site/src/modules/permissions/RequirePermission.tsx +++ b/site/src/modules/permissions/RequirePermission.tsx @@ -9,7 +9,7 @@ import { import { Link } from "components/Link/Link"; import type { FC, ReactNode } from "react"; -export interface RequirePermissionProps { +interface RequirePermissionProps { children?: ReactNode; isFeatureVisible: boolean; } diff --git a/site/src/modules/permissions/index.ts b/site/src/modules/permissions/index.ts index 98356aa34b3d9..16d01d113f8ee 100644 --- a/site/src/modules/permissions/index.ts +++ b/site/src/modules/permissions/index.ts @@ -4,7 +4,7 @@ export type Permissions = { [k in PermissionName]: boolean; }; -export type PermissionName = keyof typeof permissionChecks; +type PermissionName = keyof typeof permissionChecks; /** * Site-wide permission checks diff --git a/site/src/modules/resources/AgentMetadata.tsx b/site/src/modules/resources/AgentMetadata.tsx index 713848f57a641..f8eba334f09ce 100644 --- a/site/src/modules/resources/AgentMetadata.tsx +++ b/site/src/modules/resources/AgentMetadata.tsx @@ -23,7 +23,7 @@ import type { OneWayWebSocket } from "utils/OneWayWebSocket"; type ItemStatus = "stale" | "valid" | "loading"; -export interface AgentMetadataViewProps { +interface AgentMetadataViewProps { metadata: WorkspaceAgentMetadata[]; } diff --git a/site/src/modules/resources/AgentRowPreview.tsx b/site/src/modules/resources/AgentRowPreview.tsx index eaccb5adca4fb..70de1450322da 100644 --- a/site/src/modules/resources/AgentRowPreview.tsx +++ b/site/src/modules/resources/AgentRowPreview.tsx @@ -13,7 +13,7 @@ interface AgentRowPreviewStyles { // When it is only one row, it is better to have than "flex" and not hard aligned alignValues?: boolean; } -export interface AgentRowPreviewProps extends AgentRowPreviewStyles { +interface AgentRowPreviewProps extends AgentRowPreviewStyles { agent: WorkspaceAgent; } diff --git a/site/src/modules/resources/AppLink/AppLink.tsx b/site/src/modules/resources/AppLink/AppLink.tsx index c1683df7384fa..74542abc710aa 100644 --- a/site/src/modules/resources/AppLink/AppLink.tsx +++ b/site/src/modules/resources/AppLink/AppLink.tsx @@ -24,7 +24,7 @@ export const DisplayAppNameMap: Record = { web_terminal: "Terminal", }; -export interface AppLinkProps { +interface AppLinkProps { workspace: TypesGen.Workspace; app: TypesGen.WorkspaceApp; agent: TypesGen.WorkspaceAgent; diff --git a/site/src/modules/resources/AppLink/ShareIcon.tsx b/site/src/modules/resources/AppLink/ShareIcon.tsx index 2c0daf2794964..9f1073f78c204 100644 --- a/site/src/modules/resources/AppLink/ShareIcon.tsx +++ b/site/src/modules/resources/AppLink/ShareIcon.tsx @@ -4,7 +4,7 @@ import Tooltip from "@mui/material/Tooltip"; import type * as TypesGen from "api/typesGenerated"; import { SquareArrowOutUpRightIcon } from "lucide-react"; -export interface ShareIconProps { +interface ShareIconProps { app: TypesGen.WorkspaceApp; } diff --git a/site/src/modules/resources/PortForwardButton.tsx b/site/src/modules/resources/PortForwardButton.tsx index 026db8601c800..2d756dd963440 100644 --- a/site/src/modules/resources/PortForwardButton.tsx +++ b/site/src/modules/resources/PortForwardButton.tsx @@ -62,7 +62,7 @@ import { } from "utils/portForward"; import * as Yup from "yup"; -export interface PortForwardButtonProps { +interface PortForwardButtonProps { host: string; username: string; workspaceName: string; diff --git a/site/src/modules/resources/ResourceAvatar.tsx b/site/src/modules/resources/ResourceAvatar.tsx index 0f930f4c0b2eb..788ebcd1b731c 100644 --- a/site/src/modules/resources/ResourceAvatar.tsx +++ b/site/src/modules/resources/ResourceAvatar.tsx @@ -3,7 +3,7 @@ import { Avatar } from "components/Avatar/Avatar"; import type { FC } from "react"; import { getResourceIconPath } from "utils/workspace"; -export type ResourceAvatarProps = { resource: WorkspaceResource }; +type ResourceAvatarProps = { resource: WorkspaceResource }; export const ResourceAvatar: FC = ({ resource }) => { const avatarSrc = resource.icon || getResourceIconPath(resource.type); diff --git a/site/src/modules/resources/ResourceCard.tsx b/site/src/modules/resources/ResourceCard.tsx index 14f308f36b642..94ab3a9f08f62 100644 --- a/site/src/modules/resources/ResourceCard.tsx +++ b/site/src/modules/resources/ResourceCard.tsx @@ -70,7 +70,7 @@ const styles = { }), } satisfies Record>; -export interface ResourceCardProps { +interface ResourceCardProps { resource: WorkspaceResource; agentRow: (agent: WorkspaceAgent) => JSX.Element; } diff --git a/site/src/modules/resources/SSHButton/SSHButton.tsx b/site/src/modules/resources/SSHButton/SSHButton.tsx index 42e2b3828f3ae..05558578cca24 100644 --- a/site/src/modules/resources/SSHButton/SSHButton.tsx +++ b/site/src/modules/resources/SSHButton/SSHButton.tsx @@ -17,7 +17,7 @@ import { ChevronDownIcon } from "lucide-react"; import type { FC } from "react"; import { docs } from "utils/docs"; -export interface AgentSSHButtonProps { +interface AgentSSHButtonProps { workspaceName: string; agentName: string; sshPrefix?: string; @@ -82,7 +82,7 @@ export const AgentSSHButton: FC = ({ ); }; -export interface AgentDevcontainerSSHButtonProps { +interface AgentDevcontainerSSHButtonProps { workspace: string; container: string; } diff --git a/site/src/modules/resources/TerminalLink/TerminalLink.tsx b/site/src/modules/resources/TerminalLink/TerminalLink.tsx index edb1000ce441b..bda9ca3233722 100644 --- a/site/src/modules/resources/TerminalLink/TerminalLink.tsx +++ b/site/src/modules/resources/TerminalLink/TerminalLink.tsx @@ -4,7 +4,7 @@ import type { FC, MouseEvent } from "react"; import { AgentButton } from "../AgentButton"; import { DisplayAppNameMap } from "../AppLink/AppLink"; -export interface TerminalLinkProps { +interface TerminalLinkProps { workspaceName: string; agentName?: string; userName?: string; diff --git a/site/src/modules/resources/VSCodeDesktopButton/VSCodeDesktopButton.tsx b/site/src/modules/resources/VSCodeDesktopButton/VSCodeDesktopButton.tsx index 1c5c3578682e1..56f3b5d07027c 100644 --- a/site/src/modules/resources/VSCodeDesktopButton/VSCodeDesktopButton.tsx +++ b/site/src/modules/resources/VSCodeDesktopButton/VSCodeDesktopButton.tsx @@ -10,7 +10,7 @@ import { type FC, useRef, useState } from "react"; import { AgentButton } from "../AgentButton"; import { DisplayAppNameMap } from "../AppLink/AppLink"; -export interface VSCodeDesktopButtonProps { +interface VSCodeDesktopButtonProps { userName: string; workspaceName: string; agentName?: string; diff --git a/site/src/modules/resources/VSCodeDevContainerButton/VSCodeDevContainerButton.tsx b/site/src/modules/resources/VSCodeDevContainerButton/VSCodeDevContainerButton.tsx index cbd5aba4efa90..42e0a5bd75db4 100644 --- a/site/src/modules/resources/VSCodeDevContainerButton/VSCodeDevContainerButton.tsx +++ b/site/src/modules/resources/VSCodeDevContainerButton/VSCodeDevContainerButton.tsx @@ -9,7 +9,7 @@ import { type FC, useRef, useState } from "react"; import { AgentButton } from "../AgentButton"; import { DisplayAppNameMap } from "../AppLink/AppLink"; -export interface VSCodeDevContainerButtonProps { +interface VSCodeDevContainerButtonProps { userName: string; workspaceName: string; agentName?: string; diff --git a/site/src/modules/templates/TemplateResourcesTable/TemplateResourcesTable.tsx b/site/src/modules/templates/TemplateResourcesTable/TemplateResourcesTable.tsx index 8bdc1a8faa3de..4be48b044e44a 100644 --- a/site/src/modules/templates/TemplateResourcesTable/TemplateResourcesTable.tsx +++ b/site/src/modules/templates/TemplateResourcesTable/TemplateResourcesTable.tsx @@ -3,7 +3,7 @@ import { AgentRowPreview } from "modules/resources/AgentRowPreview"; import { Resources } from "modules/resources/Resources"; import type { FC } from "react"; -export interface TemplateResourcesProps { +interface TemplateResourcesProps { resources: WorkspaceResource[]; } diff --git a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx index 96727cd0c796f..78b1a3e90eade 100644 --- a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx +++ b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx @@ -39,7 +39,7 @@ import { type FC, useEffect, useId, useRef, useState } from "react"; import type { AutofillBuildParameter } from "utils/richParameters"; import * as Yup from "yup"; -export interface DynamicParameterProps { +interface DynamicParameterProps { parameter: PreviewParameter; value?: string; onChange: (value: string) => void; diff --git a/site/src/modules/workspaces/WorkspaceDormantBadge/WorkspaceDormantBadge.tsx b/site/src/modules/workspaces/WorkspaceDormantBadge/WorkspaceDormantBadge.tsx index 06a4d340c74f4..1712d67e774cf 100644 --- a/site/src/modules/workspaces/WorkspaceDormantBadge/WorkspaceDormantBadge.tsx +++ b/site/src/modules/workspaces/WorkspaceDormantBadge/WorkspaceDormantBadge.tsx @@ -8,7 +8,7 @@ import { relativeTimeWithoutSuffix, } from "utils/time"; -export type WorkspaceDormantBadgeProps = { +type WorkspaceDormantBadgeProps = { workspace: Workspace; }; diff --git a/site/src/modules/workspaces/WorkspaceMoreActions/ChangeWorkspaceVersionDialog.tsx b/site/src/modules/workspaces/WorkspaceMoreActions/ChangeWorkspaceVersionDialog.tsx index eae14607275e8..ecedc5aef6b5f 100644 --- a/site/src/modules/workspaces/WorkspaceMoreActions/ChangeWorkspaceVersionDialog.tsx +++ b/site/src/modules/workspaces/WorkspaceMoreActions/ChangeWorkspaceVersionDialog.tsx @@ -20,7 +20,7 @@ import { type FC, useState } from "react"; import { useQuery } from "react-query"; import { createDayString } from "utils/createDayString"; -export type ChangeWorkspaceVersionDialogProps = DialogProps & { +type ChangeWorkspaceVersionDialogProps = DialogProps & { workspace: Workspace; onClose: () => void; onConfirm: (version: TemplateVersion) => void; diff --git a/site/src/modules/workspaces/WorkspaceMoreActions/UpdateBuildParametersDialog.tsx b/site/src/modules/workspaces/WorkspaceMoreActions/UpdateBuildParametersDialog.tsx index 32485c3d2f098..7241bbed439bb 100644 --- a/site/src/modules/workspaces/WorkspaceMoreActions/UpdateBuildParametersDialog.tsx +++ b/site/src/modules/workspaces/WorkspaceMoreActions/UpdateBuildParametersDialog.tsx @@ -22,7 +22,7 @@ import { } from "utils/richParameters"; import * as Yup from "yup"; -export type UpdateBuildParametersDialogProps = DialogProps & { +type UpdateBuildParametersDialogProps = DialogProps & { onClose: () => void; onUpdate: (buildParameters: WorkspaceBuildParameter[]) => void; missedParameters: TemplateVersionParameter[]; diff --git a/site/src/modules/workspaces/WorkspaceTiming/ResourcesChart.tsx b/site/src/modules/workspaces/WorkspaceTiming/ResourcesChart.tsx index 2d940c6d56191..8384d8c60857b 100644 --- a/site/src/modules/workspaces/WorkspaceTiming/ResourcesChart.tsx +++ b/site/src/modules/workspaces/WorkspaceTiming/ResourcesChart.tsx @@ -36,7 +36,7 @@ type ResourceTiming = { range: TimeRange; }; -export type ResourcesChartProps = { +type ResourcesChartProps = { stage: Stage; timings: ResourceTiming[]; onBack: () => void; diff --git a/site/src/modules/workspaces/WorkspaceTiming/ScriptsChart.tsx b/site/src/modules/workspaces/WorkspaceTiming/ScriptsChart.tsx index 3824913a87b43..3756589a8056a 100644 --- a/site/src/modules/workspaces/WorkspaceTiming/ScriptsChart.tsx +++ b/site/src/modules/workspaces/WorkspaceTiming/ScriptsChart.tsx @@ -36,7 +36,7 @@ type ScriptTiming = { range: TimeRange; }; -export type ScriptsChartProps = { +type ScriptsChartProps = { stage: Stage; timings: ScriptTiming[]; onBack: () => void; diff --git a/site/src/modules/workspaces/WorkspaceTiming/StagesChart.tsx b/site/src/modules/workspaces/WorkspaceTiming/StagesChart.tsx index 6ca814bb39afd..32e87f9ea5b76 100644 --- a/site/src/modules/workspaces/WorkspaceTiming/StagesChart.tsx +++ b/site/src/modules/workspaces/WorkspaceTiming/StagesChart.tsx @@ -70,7 +70,7 @@ type StageTiming = { error?: boolean; }; -export type StagesChartProps = { +type StagesChartProps = { timings: StageTiming[]; onSelectStage: (stage: Stage) => void; }; diff --git a/site/src/pages/AuditPage/AuditFilter.tsx b/site/src/pages/AuditPage/AuditFilter.tsx index 42a096dd8144a..a1c1bc57d8549 100644 --- a/site/src/pages/AuditPage/AuditFilter.tsx +++ b/site/src/pages/AuditPage/AuditFilter.tsx @@ -96,7 +96,7 @@ export const useActionFilterMenu = ({ }); }; -export type ActionFilterMenu = ReturnType; +type ActionFilterMenu = ReturnType; interface ActionMenuProps { menu: ActionFilterMenu; @@ -154,9 +154,7 @@ export const useResourceTypeFilterMenu = ({ }); }; -export type ResourceTypeFilterMenu = ReturnType< - typeof useResourceTypeFilterMenu ->; +type ResourceTypeFilterMenu = ReturnType; interface ResourceTypeMenuProps { menu: ResourceTypeFilterMenu; diff --git a/site/src/pages/AuditPage/AuditLogRow/AuditLogRow.tsx b/site/src/pages/AuditPage/AuditLogRow/AuditLogRow.tsx index 87b303f6014ef..a123e83214775 100644 --- a/site/src/pages/AuditPage/AuditLogRow/AuditLogRow.tsx +++ b/site/src/pages/AuditPage/AuditLogRow/AuditLogRow.tsx @@ -37,7 +37,7 @@ const httpStatusColor = (httpStatus: number): ThemeRole => { return "success"; }; -export interface AuditLogRowProps { +interface AuditLogRowProps { auditLog: AuditLog; // Useful for Storybook defaultIsDiffOpen?: boolean; diff --git a/site/src/pages/AuditPage/AuditPageView.tsx b/site/src/pages/AuditPage/AuditPageView.tsx index db78a3cd8330b..f69e62581d202 100644 --- a/site/src/pages/AuditPage/AuditPageView.tsx +++ b/site/src/pages/AuditPage/AuditPageView.tsx @@ -31,7 +31,7 @@ const Language = { subtitle: "View events in your audit log.", }; -export interface AuditPageViewProps { +interface AuditPageViewProps { auditLogs?: readonly AuditLog[]; isNonInitialPage: boolean; isAuditLogVisible: boolean; diff --git a/site/src/pages/ChatPage/ChatLayout.tsx b/site/src/pages/ChatPage/ChatLayout.tsx index b93272ec593b7..17417372e4495 100644 --- a/site/src/pages/ChatPage/ChatLayout.tsx +++ b/site/src/pages/ChatPage/ChatLayout.tsx @@ -24,7 +24,7 @@ import { import { useMutation, useQuery, useQueryClient } from "react-query"; import { Link, Outlet, useNavigate, useParams } from "react-router-dom"; -export interface ChatContext { +interface ChatContext { selectedModel: string; modelConfig: LanguageModelConfig; @@ -38,7 +38,7 @@ export const useChatContext = (): ChatContext => { return context; }; -export const ChatContext = createContext(undefined); +const ChatContext = createContext(undefined); const SELECTED_MODEL_KEY = "coder_chat_selected_model"; diff --git a/site/src/pages/CliAuthPage/CliAuthPageView.tsx b/site/src/pages/CliAuthPage/CliAuthPageView.tsx index a32345dcb5673..716f97a70c888 100644 --- a/site/src/pages/CliAuthPage/CliAuthPageView.tsx +++ b/site/src/pages/CliAuthPage/CliAuthPageView.tsx @@ -7,7 +7,7 @@ import { CheckIcon, CopyIcon } from "lucide-react"; import type { FC } from "react"; import { Link as RouterLink } from "react-router-dom"; -export interface CliAuthPageViewProps { +interface CliAuthPageViewProps { sessionToken?: string; } diff --git a/site/src/pages/CreateTemplateGalleryPage/CreateTemplateGalleryPageView.tsx b/site/src/pages/CreateTemplateGalleryPage/CreateTemplateGalleryPageView.tsx index bfa482ac55b94..51fbb26ef40dd 100644 --- a/site/src/pages/CreateTemplateGalleryPage/CreateTemplateGalleryPageView.tsx +++ b/site/src/pages/CreateTemplateGalleryPage/CreateTemplateGalleryPageView.tsx @@ -13,7 +13,7 @@ import { Link as RouterLink } from "react-router-dom"; import type { StarterTemplatesByTag } from "utils/starterTemplates"; import { StarterTemplates } from "./StarterTemplates"; -export interface CreateTemplateGalleryPageViewProps { +interface CreateTemplateGalleryPageViewProps { starterTemplatesByTag?: StarterTemplatesByTag; error?: unknown; } diff --git a/site/src/pages/CreateTemplateGalleryPage/StarterTemplates.tsx b/site/src/pages/CreateTemplateGalleryPage/StarterTemplates.tsx index ade9bf5f9df52..c293fea854abd 100644 --- a/site/src/pages/CreateTemplateGalleryPage/StarterTemplates.tsx +++ b/site/src/pages/CreateTemplateGalleryPage/StarterTemplates.tsx @@ -37,7 +37,7 @@ const sortVisibleTemplates = (templates: TemplateExample[]) => { }); }; -export interface StarterTemplatesProps { +interface StarterTemplatesProps { starterTemplatesByTag?: StarterTemplatesByTag; } diff --git a/site/src/pages/CreateTemplatePage/CreateTemplateForm.tsx b/site/src/pages/CreateTemplatePage/CreateTemplateForm.tsx index 3a05bf6f7c494..31d5b0637730e 100644 --- a/site/src/pages/CreateTemplatePage/CreateTemplateForm.tsx +++ b/site/src/pages/CreateTemplatePage/CreateTemplateForm.tsx @@ -172,7 +172,7 @@ type CopiedTemplateForm = { copiedTemplate: Template }; type StarterTemplateForm = { starterTemplate: TemplateExample }; type UploadTemplateForm = { upload: TemplateUploadProps }; -export type CreateTemplateFormProps = ( +type CreateTemplateFormProps = ( | CopiedTemplateForm | StarterTemplateForm | UploadTemplateForm diff --git a/site/src/pages/CreateTemplatePage/VariableInput.tsx b/site/src/pages/CreateTemplatePage/VariableInput.tsx index f2038957df58d..5526b4c42160d 100644 --- a/site/src/pages/CreateTemplatePage/VariableInput.tsx +++ b/site/src/pages/CreateTemplatePage/VariableInput.tsx @@ -27,7 +27,7 @@ const VariableLabel: FC = ({ variable }) => { ); }; -export interface VariableInputProps { +interface VariableInputProps { disabled?: boolean; variable: TemplateVersionVariable; onChange: (value: string) => void; diff --git a/site/src/pages/CreateUserPage/CreateUserForm.tsx b/site/src/pages/CreateUserPage/CreateUserForm.tsx index ef3a490a59a68..3cad2f2a718cb 100644 --- a/site/src/pages/CreateUserPage/CreateUserForm.tsx +++ b/site/src/pages/CreateUserPage/CreateUserForm.tsx @@ -77,7 +77,7 @@ type CreateUserFormData = { readonly password: string; }; -export interface CreateUserFormProps { +interface CreateUserFormProps { error?: unknown; isLoading: boolean; onSubmit: (user: CreateUserFormData) => void; diff --git a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx index fbb35c61ee047..aa6e43eedb3af 100644 --- a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx +++ b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx @@ -38,8 +38,8 @@ import { } from "./permissions"; const createWorkspaceModes = ["form", "auto", "duplicate"] as const; -export type CreateWorkspaceMode = (typeof createWorkspaceModes)[number]; -export type ExternalAuthPollingState = "idle" | "polling" | "abandoned"; +type CreateWorkspaceMode = (typeof createWorkspaceModes)[number]; +type ExternalAuthPollingState = "idle" | "polling" | "abandoned"; const CreateWorkspacePageExperimental: FC = () => { const { organization: organizationName = "default", template: templateName } = diff --git a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx index 6c561cf1322f0..64ea110709cf4 100644 --- a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx +++ b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx @@ -60,7 +60,7 @@ export const Language = { "Duplicating a workspace only copies its parameters. No state from the old workspace is copied over.", } as const; -export interface CreateWorkspacePageViewProps { +interface CreateWorkspacePageViewProps { mode: CreateWorkspaceMode; defaultName?: string | null; disabledParams?: string[]; diff --git a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx index b0d98a48a5e71..96648eb3857d9 100644 --- a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx +++ b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx @@ -61,7 +61,7 @@ import { ExperimentalFormContext } from "./ExperimentalFormContext"; import { ExternalAuthButton } from "./ExternalAuthButton"; import type { CreateWorkspacePermissions } from "./permissions"; -export interface CreateWorkspacePageViewExperimentalProps { +interface CreateWorkspacePageViewExperimentalProps { autofillParameters: AutofillBuildParameter[]; creatingWorkspace: boolean; defaultName?: string | null; diff --git a/site/src/pages/CreateWorkspacePage/ExternalAuthButton.tsx b/site/src/pages/CreateWorkspacePage/ExternalAuthButton.tsx index 9a647b507947e..5ce8cf4c3db1f 100644 --- a/site/src/pages/CreateWorkspacePage/ExternalAuthButton.tsx +++ b/site/src/pages/CreateWorkspacePage/ExternalAuthButton.tsx @@ -12,7 +12,7 @@ import { import { Check, Redo } from "lucide-react"; import type { FC } from "react"; -export interface ExternalAuthButtonProps { +interface ExternalAuthButtonProps { auth: TemplateVersionExternalAuth; displayRetry: boolean; isLoading: boolean; diff --git a/site/src/pages/CreateWorkspacePage/SelectedTemplate.tsx b/site/src/pages/CreateWorkspacePage/SelectedTemplate.tsx index 13687e4e45fcb..79887e83e87cd 100644 --- a/site/src/pages/CreateWorkspacePage/SelectedTemplate.tsx +++ b/site/src/pages/CreateWorkspacePage/SelectedTemplate.tsx @@ -4,7 +4,7 @@ import { Avatar } from "components/Avatar/Avatar"; import { Stack } from "components/Stack/Stack"; import type { FC } from "react"; -export interface SelectedTemplateProps { +interface SelectedTemplateProps { template: Template | TemplateExample; } diff --git a/site/src/pages/DeploymentSettingsPage/AppearanceSettingsPage/AppearanceSettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/AppearanceSettingsPage/AppearanceSettingsPageView.tsx index 4f72c67d02fb3..998939686675a 100644 --- a/site/src/pages/DeploymentSettingsPage/AppearanceSettingsPage/AppearanceSettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/AppearanceSettingsPage/AppearanceSettingsPageView.tsx @@ -24,7 +24,7 @@ import { getFormHelpers } from "utils/formUtils"; import { Fieldset } from "../Fieldset"; import { AnnouncementBannerSettings } from "./AnnouncementBannerSettings"; -export type AppearanceSettingsPageViewProps = { +type AppearanceSettingsPageViewProps = { appearance: UpdateAppearanceConfig; isEntitled: boolean; isPremium: boolean; diff --git a/site/src/pages/DeploymentSettingsPage/ExternalAuthSettingsPage/ExternalAuthSettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/ExternalAuthSettingsPage/ExternalAuthSettingsPageView.tsx index d2a916823f56e..ad61a7c188b3b 100644 --- a/site/src/pages/DeploymentSettingsPage/ExternalAuthSettingsPage/ExternalAuthSettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/ExternalAuthSettingsPage/ExternalAuthSettingsPageView.tsx @@ -17,7 +17,7 @@ import { import type { FC } from "react"; import { docs } from "utils/docs"; -export type ExternalAuthSettingsPageViewProps = { +type ExternalAuthSettingsPageViewProps = { config: DeploymentValues; }; diff --git a/site/src/pages/DeploymentSettingsPage/LicensesSettingsPage/LicenseSeatConsumptionChart.tsx b/site/src/pages/DeploymentSettingsPage/LicensesSettingsPage/LicenseSeatConsumptionChart.tsx index 3a3d191e030be..73fa3508aa58b 100644 --- a/site/src/pages/DeploymentSettingsPage/LicensesSettingsPage/LicenseSeatConsumptionChart.tsx +++ b/site/src/pages/DeploymentSettingsPage/LicensesSettingsPage/LicenseSeatConsumptionChart.tsx @@ -32,7 +32,7 @@ const chartConfig = { }, } satisfies ChartConfig; -export type LicenseSeatConsumptionChartProps = { +type LicenseSeatConsumptionChartProps = { limit: number | undefined; data: | { diff --git a/site/src/pages/DeploymentSettingsPage/NetworkSettingsPage/NetworkSettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/NetworkSettingsPage/NetworkSettingsPageView.tsx index c9e09a3558dfd..8518bfd8a8aa5 100644 --- a/site/src/pages/DeploymentSettingsPage/NetworkSettingsPage/NetworkSettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/NetworkSettingsPage/NetworkSettingsPageView.tsx @@ -15,7 +15,7 @@ import { import { docs } from "utils/docs"; import OptionsTable from "../OptionsTable"; -export type NetworkSettingsPageViewProps = { +type NetworkSettingsPageViewProps = { options: SerpentOption[]; }; diff --git a/site/src/pages/DeploymentSettingsPage/OAuth2AppsSettingsPage/EditOAuth2AppPageView.tsx b/site/src/pages/DeploymentSettingsPage/OAuth2AppsSettingsPage/EditOAuth2AppPageView.tsx index 6bc9834e040cb..11a257c0416c3 100644 --- a/site/src/pages/DeploymentSettingsPage/OAuth2AppsSettingsPage/EditOAuth2AppPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/OAuth2AppsSettingsPage/EditOAuth2AppPageView.tsx @@ -30,7 +30,7 @@ import { Link as RouterLink, useSearchParams } from "react-router-dom"; import { createDayString } from "utils/createDayString"; import { OAuth2AppForm } from "./OAuth2AppForm"; -export type MutatingResource = { +type MutatingResource = { updateApp: boolean; createSecret: boolean; deleteApp: boolean; diff --git a/site/src/pages/DeploymentSettingsPage/ObservabilitySettingsPage/ObservabilitySettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/ObservabilitySettingsPage/ObservabilitySettingsPageView.tsx index 543ea399ef884..54fbdc67c0b2b 100644 --- a/site/src/pages/DeploymentSettingsPage/ObservabilitySettingsPage/ObservabilitySettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/ObservabilitySettingsPage/ObservabilitySettingsPageView.tsx @@ -22,7 +22,7 @@ import { deploymentGroupHasParent } from "utils/deployOptions"; import { docs } from "utils/docs"; import OptionsTable from "../OptionsTable"; -export type ObservabilitySettingsPageViewProps = { +type ObservabilitySettingsPageViewProps = { options: SerpentOption[]; featureAuditLogEnabled: boolean; isPremium: boolean; diff --git a/site/src/pages/DeploymentSettingsPage/OverviewPage/OverviewPageView.tsx b/site/src/pages/DeploymentSettingsPage/OverviewPage/OverviewPageView.tsx index 98a6b1c051d00..505036a9c821f 100644 --- a/site/src/pages/DeploymentSettingsPage/OverviewPage/OverviewPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/OverviewPage/OverviewPageView.tsx @@ -19,7 +19,7 @@ import { Alert } from "../../../components/Alert/Alert"; import OptionsTable from "../OptionsTable"; import { UserEngagementChart } from "./UserEngagementChart"; -export type OverviewPageViewProps = { +type OverviewPageViewProps = { deploymentOptions: SerpentOption[]; dailyActiveUsers: DAUsResponse | undefined; readonly invalidExperiments: Experiments | string[]; diff --git a/site/src/pages/DeploymentSettingsPage/OverviewPage/UserEngagementChart.tsx b/site/src/pages/DeploymentSettingsPage/OverviewPage/UserEngagementChart.tsx index 711e57242ce88..c89295dbfabee 100644 --- a/site/src/pages/DeploymentSettingsPage/OverviewPage/UserEngagementChart.tsx +++ b/site/src/pages/DeploymentSettingsPage/OverviewPage/UserEngagementChart.tsx @@ -24,7 +24,7 @@ const chartConfig = { }, } satisfies ChartConfig; -export type UserEngagementChartProps = { +type UserEngagementChartProps = { data: | { date: string; diff --git a/site/src/pages/DeploymentSettingsPage/PremiumPage/PremiumPageView.tsx b/site/src/pages/DeploymentSettingsPage/PremiumPage/PremiumPageView.tsx index 168fe6e591892..b6915a7ccac8b 100644 --- a/site/src/pages/DeploymentSettingsPage/PremiumPage/PremiumPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/PremiumPage/PremiumPageView.tsx @@ -3,7 +3,7 @@ import { Activity, Coins, Expand, SquareArrowOutUpRight } from "lucide-react"; import type { FC } from "react"; import { docs } from "utils/docs"; -export type PremiumPageViewProps = { isEnterprise: boolean }; +type PremiumPageViewProps = { isEnterprise: boolean }; export const PremiumPageView: FC = ({ isEnterprise }) => { return isEnterprise ? : ; diff --git a/site/src/pages/DeploymentSettingsPage/SecuritySettingsPage/SecuritySettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/SecuritySettingsPage/SecuritySettingsPageView.tsx index 735623ecdb499..8f5e6484b09f5 100644 --- a/site/src/pages/DeploymentSettingsPage/SecuritySettingsPage/SecuritySettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/SecuritySettingsPage/SecuritySettingsPageView.tsx @@ -20,7 +20,7 @@ import { import { docs } from "utils/docs"; import OptionsTable from "../OptionsTable"; -export type SecuritySettingsPageViewProps = { +type SecuritySettingsPageViewProps = { options: SerpentOption[]; featureBrowserOnlyEnabled: boolean; }; diff --git a/site/src/pages/DeploymentSettingsPage/UserAuthSettingsPage/UserAuthSettingsPageView.tsx b/site/src/pages/DeploymentSettingsPage/UserAuthSettingsPage/UserAuthSettingsPageView.tsx index 46cc986f8b646..043206bea3388 100644 --- a/site/src/pages/DeploymentSettingsPage/UserAuthSettingsPage/UserAuthSettingsPageView.tsx +++ b/site/src/pages/DeploymentSettingsPage/UserAuthSettingsPage/UserAuthSettingsPageView.tsx @@ -14,7 +14,7 @@ import { import { docs } from "utils/docs"; import OptionsTable from "../OptionsTable"; -export type UserAuthSettingsPageViewProps = { +type UserAuthSettingsPageViewProps = { options: SerpentOption[]; }; diff --git a/site/src/pages/GroupsPage/CreateGroupPageView.tsx b/site/src/pages/GroupsPage/CreateGroupPageView.tsx index a0379ea7e23ce..6a3230e7ae646 100644 --- a/site/src/pages/GroupsPage/CreateGroupPageView.tsx +++ b/site/src/pages/GroupsPage/CreateGroupPageView.tsx @@ -30,7 +30,7 @@ const validationSchema = Yup.object({ name: nameValidator("Name"), }); -export type CreateGroupPageViewProps = { +type CreateGroupPageViewProps = { onSubmit: (data: CreateGroupRequest) => void; error?: unknown; isLoading: boolean; diff --git a/site/src/pages/GroupsPage/GroupSettingsPageView.tsx b/site/src/pages/GroupsPage/GroupSettingsPageView.tsx index 9f63b08cfd76d..c99495d1c92ab 100644 --- a/site/src/pages/GroupsPage/GroupSettingsPageView.tsx +++ b/site/src/pages/GroupsPage/GroupSettingsPageView.tsx @@ -132,7 +132,7 @@ const UpdateGroupForm: FC = ({ ); }; -export type SettingsGroupPageViewProps = { +type SettingsGroupPageViewProps = { onCancel: () => void; onSubmit: (data: FormData) => void; group: Group | undefined; diff --git a/site/src/pages/GroupsPage/GroupsPageView.tsx b/site/src/pages/GroupsPage/GroupsPageView.tsx index 296425d2ebad5..b3c4d35d8c41c 100644 --- a/site/src/pages/GroupsPage/GroupsPageView.tsx +++ b/site/src/pages/GroupsPage/GroupsPageView.tsx @@ -27,7 +27,7 @@ import type { FC } from "react"; import { Link as RouterLink, useNavigate } from "react-router-dom"; import { docs } from "utils/docs"; -export type GroupsPageViewProps = { +type GroupsPageViewProps = { groups: Group[] | undefined; canCreateGroup: boolean; groupsEnabled: boolean; diff --git a/site/src/pages/LoginOAuthDevicePage/LoginOAuthDevicePageView.tsx b/site/src/pages/LoginOAuthDevicePage/LoginOAuthDevicePageView.tsx index 9cdea2ed0aacb..2edde899e1807 100644 --- a/site/src/pages/LoginOAuthDevicePage/LoginOAuthDevicePageView.tsx +++ b/site/src/pages/LoginOAuthDevicePage/LoginOAuthDevicePageView.tsx @@ -6,7 +6,7 @@ import { SignInLayout } from "components/SignInLayout/SignInLayout"; import { Welcome } from "components/Welcome/Welcome"; import type { FC } from "react"; -export interface LoginOAuthDevicePageViewProps { +interface LoginOAuthDevicePageViewProps { authenticated: boolean; redirectUrl: string; externalAuthDevice?: ExternalAuthDevice; diff --git a/site/src/pages/LoginPage/LoginPageView.tsx b/site/src/pages/LoginPage/LoginPageView.tsx index bfa6424e276d8..1ef0cdf8f7d73 100644 --- a/site/src/pages/LoginPage/LoginPageView.tsx +++ b/site/src/pages/LoginPage/LoginPageView.tsx @@ -8,7 +8,7 @@ import { useLocation } from "react-router-dom"; import { SignInForm } from "./SignInForm"; import { TermsOfServiceLink } from "./TermsOfServiceLink"; -export interface LoginPageViewProps { +interface LoginPageViewProps { authMethods: AuthMethods | undefined; error: unknown; isLoading: boolean; diff --git a/site/src/pages/LoginPage/SignInForm.tsx b/site/src/pages/LoginPage/SignInForm.tsx index 9411bba182253..8bee2fb7405ab 100644 --- a/site/src/pages/LoginPage/SignInForm.tsx +++ b/site/src/pages/LoginPage/SignInForm.tsx @@ -50,7 +50,7 @@ const styles = { }, } satisfies Record>; -export interface SignInFormProps { +interface SignInFormProps { isSigningIn: boolean; redirectTo: string; error?: unknown; diff --git a/site/src/pages/OrganizationSettingsPage/CustomRolesPage/CreateEditRolePageView.tsx b/site/src/pages/OrganizationSettingsPage/CustomRolesPage/CreateEditRolePageView.tsx index 478bdf2b705cb..294f5f28d92a6 100644 --- a/site/src/pages/OrganizationSettingsPage/CustomRolesPage/CreateEditRolePageView.tsx +++ b/site/src/pages/OrganizationSettingsPage/CustomRolesPage/CreateEditRolePageView.tsx @@ -40,7 +40,7 @@ const validationSchema = Yup.object({ name: nameValidator("Name"), }); -export type CreateEditRolePageViewProps = { +type CreateEditRolePageViewProps = { role: AssignableRoles | undefined; onSubmit: (data: CustomRoleRequest) => void; error?: unknown; diff --git a/site/src/pages/OrganizationSettingsPage/OrganizationProvisionersPage/ProvisionerVersion.tsx b/site/src/pages/OrganizationSettingsPage/OrganizationProvisionersPage/ProvisionerVersion.tsx index bffe4e3569807..44d0c1c19fd3e 100644 --- a/site/src/pages/OrganizationSettingsPage/OrganizationProvisionersPage/ProvisionerVersion.tsx +++ b/site/src/pages/OrganizationSettingsPage/OrganizationProvisionersPage/ProvisionerVersion.tsx @@ -8,7 +8,7 @@ import { import { TriangleAlertIcon } from "lucide-react"; import type { FC } from "react"; -export type ProvisionerVersionProps = { +type ProvisionerVersionProps = { buildVersion: string | undefined; provisionerVersion: string; }; diff --git a/site/src/pages/OrganizationSettingsPage/UserTable/EditRolesButton.tsx b/site/src/pages/OrganizationSettingsPage/UserTable/EditRolesButton.tsx index a6d0d9f283dc3..f409b09724d86 100644 --- a/site/src/pages/OrganizationSettingsPage/UserTable/EditRolesButton.tsx +++ b/site/src/pages/OrganizationSettingsPage/UserTable/EditRolesButton.tsx @@ -66,7 +66,7 @@ const Option: FC = ({ ); }; -export interface EditRolesButtonProps { +interface EditRolesButtonProps { isLoading: boolean; roles: readonly SlimRole[]; selectedRoleNames: Set; diff --git a/site/src/pages/SetupPage/SetupPageView.tsx b/site/src/pages/SetupPage/SetupPageView.tsx index b8735cbf0dbfa..96654bdda8514 100644 --- a/site/src/pages/SetupPage/SetupPageView.tsx +++ b/site/src/pages/SetupPage/SetupPageView.tsx @@ -104,7 +104,7 @@ const iconStyles = { height: 16, }; -export interface SetupPageViewProps { +interface SetupPageViewProps { onSubmit: (firstUser: TypesGen.CreateFirstUserRequest) => void; error?: unknown; isLoading?: boolean; diff --git a/site/src/pages/StarterTemplatePage/StarterTemplatePageView.tsx b/site/src/pages/StarterTemplatePage/StarterTemplatePageView.tsx index 4615a6d322ead..2da189d2523d5 100644 --- a/site/src/pages/StarterTemplatePage/StarterTemplatePageView.tsx +++ b/site/src/pages/StarterTemplatePage/StarterTemplatePageView.tsx @@ -16,7 +16,7 @@ import { ExternalLinkIcon, PlusIcon } from "lucide-react"; import type { FC } from "react"; import { Link } from "react-router-dom"; -export interface StarterTemplatePageViewProps { +interface StarterTemplatePageViewProps { starterTemplate?: TemplateExample; error?: unknown; } diff --git a/site/src/pages/TemplatePage/TemplatePageHeader.tsx b/site/src/pages/TemplatePage/TemplatePageHeader.tsx index 94883e7b6c134..54c3c04de8bdf 100644 --- a/site/src/pages/TemplatePage/TemplatePageHeader.tsx +++ b/site/src/pages/TemplatePage/TemplatePageHeader.tsx @@ -163,7 +163,7 @@ const TemplateMenu: FC = ({ ); }; -export type TemplatePageHeaderProps = { +type TemplatePageHeaderProps = { template: Template; activeVersion: TemplateVersion; permissions: AuthorizationResponse; diff --git a/site/src/pages/TemplatePage/TemplateResourcesPage/TemplateResourcesPageView.tsx b/site/src/pages/TemplatePage/TemplateResourcesPage/TemplateResourcesPageView.tsx index d17796b41d336..3dd0f0518ad51 100644 --- a/site/src/pages/TemplatePage/TemplateResourcesPage/TemplateResourcesPageView.tsx +++ b/site/src/pages/TemplatePage/TemplateResourcesPage/TemplateResourcesPageView.tsx @@ -4,7 +4,7 @@ import { TemplateResourcesTable } from "modules/templates/TemplateResourcesTable import type { FC } from "react"; import { Navigate, useLocation } from "react-router-dom"; -export interface TemplateResourcesPageViewProps { +interface TemplateResourcesPageViewProps { resources?: WorkspaceResource[]; template: Template; } diff --git a/site/src/pages/TemplatePage/TemplateStats.tsx b/site/src/pages/TemplatePage/TemplateStats.tsx index 737a9be5a2ac4..479cfdd14bf8d 100644 --- a/site/src/pages/TemplatePage/TemplateStats.tsx +++ b/site/src/pages/TemplatePage/TemplateStats.tsx @@ -18,7 +18,7 @@ const Language = { createdByLabel: "Created by", }; -export interface TemplateStatsProps { +interface TemplateStatsProps { template: Template; activeVersion: TemplateVersion; } diff --git a/site/src/pages/TemplatePage/TemplateVersionsPage/VersionRow.tsx b/site/src/pages/TemplatePage/TemplateVersionsPage/VersionRow.tsx index e41ac97ec6217..5c140c816067a 100644 --- a/site/src/pages/TemplatePage/TemplateVersionsPage/VersionRow.tsx +++ b/site/src/pages/TemplatePage/TemplateVersionsPage/VersionRow.tsx @@ -11,7 +11,7 @@ import { useClickableTableRow } from "hooks/useClickableTableRow"; import type { FC } from "react"; import { useNavigate } from "react-router-dom"; -export interface VersionRowProps { +interface VersionRowProps { version: TemplateVersion; isActive: boolean; isLatest: boolean; diff --git a/site/src/pages/TemplatePage/TemplateVersionsPage/VersionsTable.tsx b/site/src/pages/TemplatePage/TemplateVersionsPage/VersionsTable.tsx index 523b2306ffa1a..81b68ffad50fe 100644 --- a/site/src/pages/TemplatePage/TemplateVersionsPage/VersionsTable.tsx +++ b/site/src/pages/TemplatePage/TemplateVersionsPage/VersionsTable.tsx @@ -17,7 +17,7 @@ const Language = { createdByLabel: "Created by", }; -export interface VersionsTableProps { +interface VersionsTableProps { activeVersionId: string; versions?: TypesGen.TemplateVersion[]; onPromoteClick?: (templateVersionId: string) => void; diff --git a/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPageView.tsx b/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPageView.tsx index 83c0a2a0c0aef..e267d25ce572e 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPageView.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPageView.tsx @@ -3,7 +3,7 @@ import { PageHeader, PageHeaderTitle } from "components/PageHeader/PageHeader"; import type { ComponentProps, FC } from "react"; import { TemplateSettingsForm } from "./TemplateSettingsForm"; -export interface TemplateSettingsPageViewProps { +interface TemplateSettingsPageViewProps { template: Template; onSubmit: (data: UpdateTemplateMeta) => void; onCancel: () => void; diff --git a/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/TemplatePermissionsPageView.tsx b/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/TemplatePermissionsPageView.tsx index 62de4d7d5271b..c2dc2b5c01bc3 100644 --- a/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/TemplatePermissionsPageView.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/TemplatePermissionsPageView.tsx @@ -158,7 +158,7 @@ const RoleSelect: FC = (props) => { ); }; -export interface TemplatePermissionsPageViewProps { +interface TemplatePermissionsPageViewProps { templateACL: TemplateACL | undefined; templateID: string; canUpdatePermissions: boolean; diff --git a/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/UserOrGroupAutocomplete.tsx b/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/UserOrGroupAutocomplete.tsx index 7b0f643eac39f..8cb2c29568b4d 100644 --- a/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/UserOrGroupAutocomplete.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/UserOrGroupAutocomplete.tsx @@ -13,7 +13,7 @@ import { getGroupSubtitle } from "utils/groups"; export type UserOrGroupAutocompleteValue = ReducedUser | Group | null; -export type UserOrGroupAutocompleteProps = { +type UserOrGroupAutocompleteProps = { value: UserOrGroupAutocompleteValue; onChange: (value: UserOrGroupAutocompleteValue) => void; templateID: string; diff --git a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/ScheduleDialog.tsx b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/ScheduleDialog.tsx index 8c9acda76f47b..33385da6cab7f 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/ScheduleDialog.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/ScheduleDialog.tsx @@ -6,7 +6,7 @@ import type { ConfirmDialogProps } from "components/Dialogs/ConfirmDialog/Confir import { Dialog, DialogActionButtons } from "components/Dialogs/Dialog"; import type { FC } from "react"; -export interface ScheduleDialogProps extends ConfirmDialogProps { +interface ScheduleDialogProps extends ConfirmDialogProps { readonly inactiveWorkspacesToGoDormant: number; readonly inactiveWorkspacesToGoDormantInWeek: number; readonly dormantWorkspacesToBeDeleted: number; diff --git a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateScheduleAutostart.tsx b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateScheduleAutostart.tsx index 3fca85cabf19c..d595ab553e334 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateScheduleAutostart.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateScheduleAutostart.tsx @@ -7,7 +7,7 @@ import { sortedDays, } from "utils/schedule"; -export interface TemplateScheduleAutostartProps { +interface TemplateScheduleAutostartProps { enabled: boolean; value: TemplateAutostartRequirementDaysValue[]; isSubmitting: boolean; diff --git a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateSchedulePageView.tsx b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateSchedulePageView.tsx index 3d4fc398e9465..6a371ed068060 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateSchedulePageView.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateSchedulePage/TemplateSchedulePageView.tsx @@ -3,7 +3,7 @@ import { PageHeader, PageHeaderTitle } from "components/PageHeader/PageHeader"; import type { ComponentProps, FC } from "react"; import { TemplateScheduleForm } from "./TemplateScheduleForm"; -export interface TemplateSchedulePageViewProps { +interface TemplateSchedulePageViewProps { template: Template; onSubmit: (data: UpdateTemplateMeta) => void; onCancel: () => void; diff --git a/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariableField.tsx b/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariableField.tsx index 79f5a9590ba47..ade837b93fb52 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariableField.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariableField.tsx @@ -13,7 +13,7 @@ export const SensitiveVariableHelperText: FC = () => { ); }; -export interface TemplateVariableFieldProps { +interface TemplateVariableFieldProps { templateVersionVariable: TemplateVersionVariable; initialValue: string; disabled: boolean; diff --git a/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariablesPageView.tsx b/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariablesPageView.tsx index 17ee1dba44ff3..fa41553045bc5 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariablesPageView.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateVariablesPage/TemplateVariablesPageView.tsx @@ -10,7 +10,7 @@ import { Stack } from "components/Stack/Stack"; import type { ComponentProps, FC } from "react"; import { TemplateVariablesForm } from "./TemplateVariablesForm"; -export interface TemplateVariablesPageViewProps { +interface TemplateVariablesPageViewProps { templateVersion?: TemplateVersion; templateVariables?: TemplateVersionVariable[]; onSubmit: (data: CreateTemplateVersionRequest) => void; diff --git a/site/src/pages/TemplateVersionEditorPage/MissingTemplateVariablesDialog.tsx b/site/src/pages/TemplateVersionEditorPage/MissingTemplateVariablesDialog.tsx index 6b781ca962b1b..a398fc090dee4 100644 --- a/site/src/pages/TemplateVersionEditorPage/MissingTemplateVariablesDialog.tsx +++ b/site/src/pages/TemplateVersionEditorPage/MissingTemplateVariablesDialog.tsx @@ -16,10 +16,7 @@ import { Loader } from "components/Loader/Loader"; import { VariableInput } from "pages/CreateTemplatePage/VariableInput"; import { type FC, useEffect, useState } from "react"; -export type MissingTemplateVariablesDialogProps = Omit< - DialogProps, - "onSubmit" -> & { +type MissingTemplateVariablesDialogProps = Omit & { onClose: () => void; onSubmit: (values: VariableValue[]) => void; missingVariables?: TemplateVersionVariable[]; diff --git a/site/src/pages/TemplateVersionEditorPage/ProvisionerTagsPopover.tsx b/site/src/pages/TemplateVersionEditorPage/ProvisionerTagsPopover.tsx index bb0e3f439ed49..3e8191b0f4817 100644 --- a/site/src/pages/TemplateVersionEditorPage/ProvisionerTagsPopover.tsx +++ b/site/src/pages/TemplateVersionEditorPage/ProvisionerTagsPopover.tsx @@ -13,7 +13,7 @@ import { ProvisionerTagsField } from "modules/provisioners/ProvisionerTagsField" import type { FC } from "react"; import { docs } from "utils/docs"; -export interface ProvisionerTagsPopoverProps { +interface ProvisionerTagsPopoverProps { tags: ProvisionerDaemon["tags"]; onTagsChange: (values: ProvisionerDaemon["tags"]) => void; } diff --git a/site/src/pages/TemplateVersionEditorPage/PublishTemplateVersionDialog.tsx b/site/src/pages/TemplateVersionEditorPage/PublishTemplateVersionDialog.tsx index 63c71220daa09..fcba193d8e8ae 100644 --- a/site/src/pages/TemplateVersionEditorPage/PublishTemplateVersionDialog.tsx +++ b/site/src/pages/TemplateVersionEditorPage/PublishTemplateVersionDialog.tsx @@ -31,7 +31,7 @@ export const Language = { activeVersionHelpBody: "Review the documentation", }; -export type PublishTemplateVersionDialogProps = DialogProps & { +type PublishTemplateVersionDialogProps = DialogProps & { defaultName: string; isPublishing: boolean; publishingError?: unknown; diff --git a/site/src/pages/TemplateVersionEditorPage/TemplateVersionEditor.tsx b/site/src/pages/TemplateVersionEditorPage/TemplateVersionEditor.tsx index c2e729d994569..c64a3e88bffae 100644 --- a/site/src/pages/TemplateVersionEditorPage/TemplateVersionEditor.tsx +++ b/site/src/pages/TemplateVersionEditorPage/TemplateVersionEditor.tsx @@ -64,7 +64,7 @@ import { TemplateVersionStatusBadge } from "./TemplateVersionStatusBadge"; type Tab = "logs" | "resources" | undefined; // Undefined is to hide the tab -export interface TemplateVersionEditorProps { +interface TemplateVersionEditorProps { template: Template; templateVersion: TemplateVersion; defaultFileTree: FileTree; diff --git a/site/src/pages/TemplatesPage/TemplatesPageView.tsx b/site/src/pages/TemplatesPage/TemplatesPageView.tsx index d81dc4e654994..856ce4bc5837b 100644 --- a/site/src/pages/TemplatesPage/TemplatesPageView.tsx +++ b/site/src/pages/TemplatesPage/TemplatesPageView.tsx @@ -182,7 +182,7 @@ const TemplateRow: FC = ({ ); }; -export interface TemplatesPageViewProps { +interface TemplatesPageViewProps { error?: unknown; filter: ReturnType; showOrganizations: boolean; diff --git a/site/src/pages/UserSettingsPage/AccountPage/AccountForm.tsx b/site/src/pages/UserSettingsPage/AccountPage/AccountForm.tsx index b5948d2b75a4d..7c16efa2a58da 100644 --- a/site/src/pages/UserSettingsPage/AccountPage/AccountForm.tsx +++ b/site/src/pages/UserSettingsPage/AccountPage/AccountForm.tsx @@ -25,7 +25,7 @@ const validationSchema = Yup.object({ name: Yup.string(), }); -export interface AccountFormProps { +interface AccountFormProps { editable: boolean; email: string; isLoading: boolean; diff --git a/site/src/pages/UserSettingsPage/AppearancePage/AppearanceForm.tsx b/site/src/pages/UserSettingsPage/AppearancePage/AppearanceForm.tsx index 5fadb5efc6850..43db670850a49 100644 --- a/site/src/pages/UserSettingsPage/AppearancePage/AppearanceForm.tsx +++ b/site/src/pages/UserSettingsPage/AppearancePage/AppearanceForm.tsx @@ -23,7 +23,7 @@ import { } from "theme/constants"; import { Section } from "../Section"; -export interface AppearanceFormProps { +interface AppearanceFormProps { isUpdating?: boolean; error?: unknown; initialValues: UpdateUserAppearanceSettingsRequest; diff --git a/site/src/pages/UserSettingsPage/ExternalAuthPage/ExternalAuthPageView.tsx b/site/src/pages/UserSettingsPage/ExternalAuthPage/ExternalAuthPageView.tsx index 7c325a20c7474..c81dd45c61cd5 100644 --- a/site/src/pages/UserSettingsPage/ExternalAuthPage/ExternalAuthPageView.tsx +++ b/site/src/pages/UserSettingsPage/ExternalAuthPage/ExternalAuthPageView.tsx @@ -32,7 +32,7 @@ import type { ExternalAuthPollingState } from "pages/CreateWorkspacePage/CreateW import { type FC, useCallback, useEffect, useState } from "react"; import { useQuery } from "react-query"; -export type ExternalAuthPageViewProps = { +type ExternalAuthPageViewProps = { isLoading: boolean; getAuthsError?: unknown; unlinked: number; diff --git a/site/src/pages/UserSettingsPage/OAuth2ProviderPage/OAuth2ProviderPageView.tsx b/site/src/pages/UserSettingsPage/OAuth2ProviderPage/OAuth2ProviderPageView.tsx index 1670f13471219..f5bfd0b015a30 100644 --- a/site/src/pages/UserSettingsPage/OAuth2ProviderPage/OAuth2ProviderPageView.tsx +++ b/site/src/pages/UserSettingsPage/OAuth2ProviderPage/OAuth2ProviderPageView.tsx @@ -12,7 +12,7 @@ import { Stack } from "components/Stack/Stack"; import { TableLoader } from "components/TableLoader/TableLoader"; import type { FC } from "react"; -export type OAuth2ProviderPageViewProps = { +type OAuth2ProviderPageViewProps = { isLoading: boolean; error: unknown; apps?: TypesGen.OAuth2ProviderApp[]; diff --git a/site/src/pages/UserSettingsPage/SSHKeysPage/SSHKeysPageView.tsx b/site/src/pages/UserSettingsPage/SSHKeysPage/SSHKeysPageView.tsx index 84856f7eba4e7..9f6cd2a6ef1ed 100644 --- a/site/src/pages/UserSettingsPage/SSHKeysPage/SSHKeysPageView.tsx +++ b/site/src/pages/UserSettingsPage/SSHKeysPage/SSHKeysPageView.tsx @@ -7,7 +7,7 @@ import { CodeExample } from "components/CodeExample/CodeExample"; import { Stack } from "components/Stack/Stack"; import type { FC } from "react"; -export interface SSHKeysPageViewProps { +interface SSHKeysPageViewProps { isLoading: boolean; getSSHKeyError?: unknown; sshKey?: GitSSHKey; diff --git a/site/src/pages/UserSettingsPage/SchedulePage/ScheduleForm.tsx b/site/src/pages/UserSettingsPage/SchedulePage/ScheduleForm.tsx index c408ea30416d2..5e38492790b55 100644 --- a/site/src/pages/UserSettingsPage/SchedulePage/ScheduleForm.tsx +++ b/site/src/pages/UserSettingsPage/SchedulePage/ScheduleForm.tsx @@ -17,7 +17,7 @@ import { quietHoursDisplay, timeToCron, validTime } from "utils/schedule"; import { getPreferredTimezone, timeZones } from "utils/timeZones"; import * as Yup from "yup"; -export interface ScheduleFormValues { +interface ScheduleFormValues { time: string; timezone: string; } @@ -37,7 +37,7 @@ const validationSchema = Yup.object({ timezone: Yup.string().required(), }); -export interface ScheduleFormProps { +interface ScheduleFormProps { isLoading: boolean; initialValues: UserQuietHoursScheduleResponse; submitError: unknown; diff --git a/site/src/pages/UserSettingsPage/Section.tsx b/site/src/pages/UserSettingsPage/Section.tsx index 90c375fd14398..0d162b73a7f6b 100644 --- a/site/src/pages/UserSettingsPage/Section.tsx +++ b/site/src/pages/UserSettingsPage/Section.tsx @@ -8,7 +8,7 @@ import type { FC, ReactNode } from "react"; type SectionLayout = "fixed" | "fluid"; -export interface SectionProps { +interface SectionProps { // Useful for testing id?: string; title?: ReactNode | string; diff --git a/site/src/pages/UserSettingsPage/SecurityPage/SecurityForm.tsx b/site/src/pages/UserSettingsPage/SecurityPage/SecurityForm.tsx index 3153841622e83..8a050f710d0f4 100644 --- a/site/src/pages/UserSettingsPage/SecurityPage/SecurityForm.tsx +++ b/site/src/pages/UserSettingsPage/SecurityPage/SecurityForm.tsx @@ -39,7 +39,7 @@ const validationSchema = Yup.object({ }), }); -export interface SecurityFormProps { +interface SecurityFormProps { disabled: boolean; isLoading: boolean; onSubmit: (values: SecurityFormValues) => void; diff --git a/site/src/pages/UserSettingsPage/TokensPage/ConfirmDeleteDialog.tsx b/site/src/pages/UserSettingsPage/TokensPage/ConfirmDeleteDialog.tsx index 9bd7d8e129e95..21e0e651deb41 100644 --- a/site/src/pages/UserSettingsPage/TokensPage/ConfirmDeleteDialog.tsx +++ b/site/src/pages/UserSettingsPage/TokensPage/ConfirmDeleteDialog.tsx @@ -5,7 +5,7 @@ import { displayError, displaySuccess } from "components/GlobalSnackbar/utils"; import type { FC } from "react"; import { useDeleteToken } from "./hooks"; -export interface ConfirmDeleteDialogProps { +interface ConfirmDeleteDialogProps { queryKey: (string | boolean)[]; token: APIKeyWithOwner | undefined; setToken: (arg: APIKeyWithOwner | undefined) => void; diff --git a/site/src/pages/UserSettingsPage/TokensPage/TokensPageView.tsx b/site/src/pages/UserSettingsPage/TokensPage/TokensPageView.tsx index 1be416a48c3b2..786a96712e8b5 100644 --- a/site/src/pages/UserSettingsPage/TokensPage/TokensPageView.tsx +++ b/site/src/pages/UserSettingsPage/TokensPage/TokensPageView.tsx @@ -25,7 +25,7 @@ const lastUsedOrNever = (lastUsed: string) => { return now.isBefore(t.add(100, "year")) ? t.fromNow() : "Never"; }; -export interface TokensPageViewProps { +interface TokensPageViewProps { tokens?: APIKeyWithOwner[]; getTokensError?: unknown; isLoading: boolean; diff --git a/site/src/pages/UserSettingsPage/WorkspaceProxyPage/WorkspaceProxyView.tsx b/site/src/pages/UserSettingsPage/WorkspaceProxyPage/WorkspaceProxyView.tsx index 453c54201607f..d066d1542853a 100644 --- a/site/src/pages/UserSettingsPage/WorkspaceProxyPage/WorkspaceProxyView.tsx +++ b/site/src/pages/UserSettingsPage/WorkspaceProxyPage/WorkspaceProxyView.tsx @@ -19,7 +19,7 @@ import type { ProxyLatencyReport } from "contexts/useProxyLatency"; import type { FC } from "react"; import { ProxyRow } from "./WorkspaceProxyRow"; -export interface WorkspaceProxyViewProps { +interface WorkspaceProxyViewProps { proxies?: readonly Region[]; proxyLatencies?: Record; getWorkspaceProxiesError?: unknown; diff --git a/site/src/pages/UsersPage/ResetPasswordDialog.tsx b/site/src/pages/UsersPage/ResetPasswordDialog.tsx index fef4bfa564f74..a958504263eac 100644 --- a/site/src/pages/UsersPage/ResetPasswordDialog.tsx +++ b/site/src/pages/UsersPage/ResetPasswordDialog.tsx @@ -3,7 +3,7 @@ import { CodeExample } from "components/CodeExample/CodeExample"; import { ConfirmDialog } from "components/Dialogs/ConfirmDialog/ConfirmDialog"; import type { FC } from "react"; -export interface ResetPasswordDialogProps { +interface ResetPasswordDialogProps { open: boolean; onClose: () => void; onConfirm: () => void; diff --git a/site/src/pages/UsersPage/UsersFilter.tsx b/site/src/pages/UsersPage/UsersFilter.tsx index 9666b0652ce7f..fb123c423a2c1 100644 --- a/site/src/pages/UsersPage/UsersFilter.tsx +++ b/site/src/pages/UsersPage/UsersFilter.tsx @@ -47,7 +47,7 @@ export const useStatusFilterMenu = ({ }); }; -export type StatusFilterMenu = ReturnType; +type StatusFilterMenu = ReturnType; const PRESET_FILTERS = [ { query: userFilterQuery.active, name: "Active users" }, diff --git a/site/src/pages/UsersPage/UsersPageView.tsx b/site/src/pages/UsersPage/UsersPageView.tsx index 03b4bff7d45f7..7f385ad2ee970 100644 --- a/site/src/pages/UsersPage/UsersPageView.tsx +++ b/site/src/pages/UsersPage/UsersPageView.tsx @@ -16,7 +16,7 @@ import { Link as RouterLink } from "react-router-dom"; import { UsersFilter } from "./UsersFilter"; import { UsersTable } from "./UsersTable/UsersTable"; -export interface UsersPageViewProps { +interface UsersPageViewProps { users?: readonly TypesGen.User[]; roles?: TypesGen.AssignableRoles[]; isUpdatingUserRoles?: boolean; diff --git a/site/src/pages/UsersPage/UsersTable/UsersTable.tsx b/site/src/pages/UsersPage/UsersTable/UsersTable.tsx index 84affe8b1977a..de0c4a651acf0 100644 --- a/site/src/pages/UsersPage/UsersTable/UsersTable.tsx +++ b/site/src/pages/UsersPage/UsersTable/UsersTable.tsx @@ -21,7 +21,7 @@ const Language = { loginTypeLabel: "Login Type", } as const; -export interface UsersTableProps { +interface UsersTableProps { users: readonly TypesGen.User[] | undefined; roles: TypesGen.AssignableRoles[] | undefined; groupsByUserId: GroupsByUserId | undefined; diff --git a/site/src/pages/WorkspaceBuildPage/WorkspaceBuildPageView.tsx b/site/src/pages/WorkspaceBuildPage/WorkspaceBuildPageView.tsx index f35b5b8465425..6add701c8b688 100644 --- a/site/src/pages/WorkspaceBuildPage/WorkspaceBuildPageView.tsx +++ b/site/src/pages/WorkspaceBuildPage/WorkspaceBuildPageView.tsx @@ -48,7 +48,7 @@ const sortLogsByCreatedAt = (logs: ProvisionerJobLog[]) => { ); }; -export interface WorkspaceBuildPageViewProps { +interface WorkspaceBuildPageViewProps { logs: ProvisionerJobLog[] | undefined; build: WorkspaceBuild | undefined; buildError?: unknown; diff --git a/site/src/pages/WorkspacePage/AppStatuses.tsx b/site/src/pages/WorkspacePage/AppStatuses.tsx index 921087b49c996..33dd7599b2c8d 100644 --- a/site/src/pages/WorkspacePage/AppStatuses.tsx +++ b/site/src/pages/WorkspacePage/AppStatuses.tsx @@ -101,7 +101,7 @@ const formatURI = (uri: string) => { // --- Component Implementation --- -export interface AppStatusesProps { +interface AppStatusesProps { workspace: Workspace; agent: WorkspaceAgent; /** Optional reference date for calculating relative time. Defaults to Date.now(). Useful for Storybook. */ diff --git a/site/src/pages/WorkspacePage/Workspace.tsx b/site/src/pages/WorkspacePage/Workspace.tsx index 6016ca8c423eb..f68cafbe9e320 100644 --- a/site/src/pages/WorkspacePage/Workspace.tsx +++ b/site/src/pages/WorkspacePage/Workspace.tsx @@ -25,7 +25,7 @@ import { WorkspaceDeletedBanner } from "./WorkspaceDeletedBanner"; import { WorkspaceTopbar } from "./WorkspaceTopbar"; import { resourceOptionValue, useResourcesNav } from "./useResourcesNav"; -export interface WorkspaceProps { +interface WorkspaceProps { workspace: TypesGen.Workspace; template: TypesGen.Template; permissions: WorkspacePermissions; diff --git a/site/src/pages/WorkspacePage/WorkspaceActions/WorkspaceActions.tsx b/site/src/pages/WorkspacePage/WorkspaceActions/WorkspaceActions.tsx index dd3e135901c84..708c90bac6d35 100644 --- a/site/src/pages/WorkspacePage/WorkspaceActions/WorkspaceActions.tsx +++ b/site/src/pages/WorkspacePage/WorkspaceActions/WorkspaceActions.tsx @@ -25,7 +25,7 @@ import { import { DebugButton } from "./DebugButton"; import { RetryButton } from "./RetryButton"; -export interface WorkspaceActionsProps { +interface WorkspaceActionsProps { workspace: Workspace; isUpdating: boolean; isRestarting: boolean; diff --git a/site/src/pages/WorkspacePage/WorkspaceBuildProgress.tsx b/site/src/pages/WorkspacePage/WorkspaceBuildProgress.tsx index 52f3e725c6003..715ceb136c262 100644 --- a/site/src/pages/WorkspacePage/WorkspaceBuildProgress.tsx +++ b/site/src/pages/WorkspacePage/WorkspaceBuildProgress.tsx @@ -59,7 +59,7 @@ const estimateFinish = ( return [p50percent, `Up to ${highGuess} seconds remaining...`]; }; -export interface WorkspaceBuildProgressProps { +interface WorkspaceBuildProgressProps { workspace: Workspace; transitionStats: TransitionStats; } diff --git a/site/src/pages/WorkspacePage/WorkspaceDeletedBanner.tsx b/site/src/pages/WorkspacePage/WorkspaceDeletedBanner.tsx index ddfe9e9d025bb..dee02d4a2aa98 100644 --- a/site/src/pages/WorkspacePage/WorkspaceDeletedBanner.tsx +++ b/site/src/pages/WorkspacePage/WorkspaceDeletedBanner.tsx @@ -2,7 +2,7 @@ import { Alert } from "components/Alert/Alert"; import { Button } from "components/Button/Button"; import type { FC } from "react"; -export interface WorkspaceDeletedBannerProps { +interface WorkspaceDeletedBannerProps { handleClick: () => void; } diff --git a/site/src/pages/WorkspacePage/WorkspaceTopbar.tsx b/site/src/pages/WorkspacePage/WorkspaceTopbar.tsx index 33aa5d29ea922..943b967de92c6 100644 --- a/site/src/pages/WorkspacePage/WorkspaceTopbar.tsx +++ b/site/src/pages/WorkspacePage/WorkspaceTopbar.tsx @@ -31,7 +31,7 @@ import { WorkspaceActions } from "./WorkspaceActions/WorkspaceActions"; import { WorkspaceNotifications } from "./WorkspaceNotifications/WorkspaceNotifications"; import { WorkspaceScheduleControls } from "./WorkspaceScheduleControls"; -export interface WorkspaceProps { +interface WorkspaceProps { isUpdating: boolean; isRestarting: boolean; workspace: TypesGen.Workspace; diff --git a/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPage.tsx b/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPage.tsx index bb41cdf79ae3a..63d832b06f66c 100644 --- a/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPage.tsx +++ b/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPage.tsx @@ -92,7 +92,7 @@ const WorkspaceParametersPage: FC = () => { ); }; -export type WorkspaceParametersPageViewProps = { +type WorkspaceParametersPageViewProps = { workspace: Workspace; canChangeVersions: boolean; data: Awaited> | undefined; diff --git a/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPageViewExperimental.tsx b/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPageViewExperimental.tsx index db408ba8f4ea9..a8679a82b8316 100644 --- a/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPageViewExperimental.tsx +++ b/site/src/pages/WorkspaceSettingsPage/WorkspaceParametersPage/WorkspaceParametersPageViewExperimental.tsx @@ -16,7 +16,8 @@ import { } from "modules/workspaces/DynamicParameter/DynamicParameter"; import type { FC } from "react"; import { docs } from "utils/docs"; -export type WorkspaceParametersPageViewExperimentalProps = { + +type WorkspaceParametersPageViewExperimentalProps = { workspace: Workspace; parameters: PreviewParameter[]; diagnostics: PreviewParameter["diagnostics"]; diff --git a/site/src/pages/WorkspaceSettingsPage/WorkspaceSchedulePage/schedule.ts b/site/src/pages/WorkspaceSettingsPage/WorkspaceSchedulePage/schedule.ts index ff22290ad8ca0..b188145cf8a92 100644 --- a/site/src/pages/WorkspaceSettingsPage/WorkspaceSchedulePage/schedule.ts +++ b/site/src/pages/WorkspaceSettingsPage/WorkspaceSchedulePage/schedule.ts @@ -14,7 +14,7 @@ import type { Autostop } from "./ttl"; dayjs.extend(utc); dayjs.extend(timezone); -export interface AutostartSchedule { +interface AutostartSchedule { sunday: boolean; monday: boolean; tuesday: boolean; @@ -26,7 +26,7 @@ export interface AutostartSchedule { timezone: string; } -export type Autostart = { +type Autostart = { autostartEnabled: boolean; } & AutostartSchedule; diff --git a/site/src/pages/WorkspaceSettingsPage/WorkspaceSettingsPageView.tsx b/site/src/pages/WorkspaceSettingsPage/WorkspaceSettingsPageView.tsx index adf9247743ff4..beedf9dffc48f 100644 --- a/site/src/pages/WorkspaceSettingsPage/WorkspaceSettingsPageView.tsx +++ b/site/src/pages/WorkspaceSettingsPage/WorkspaceSettingsPageView.tsx @@ -3,7 +3,7 @@ import { PageHeader, PageHeaderTitle } from "components/PageHeader/PageHeader"; import type { ComponentProps, FC } from "react"; import { WorkspaceSettingsForm } from "./WorkspaceSettingsForm"; -export type WorkspaceSettingsPageViewProps = { +type WorkspaceSettingsPageViewProps = { error: unknown; workspace: Workspace; onCancel: () => void; diff --git a/site/src/pages/WorkspacesPage/WorkspacesPageView.tsx b/site/src/pages/WorkspacesPage/WorkspacesPageView.tsx index 55dd59db6a512..db9c72568150e 100644 --- a/site/src/pages/WorkspacesPage/WorkspacesPageView.tsx +++ b/site/src/pages/WorkspacesPage/WorkspacesPageView.tsx @@ -40,8 +40,7 @@ const Language = { }; type TemplateQuery = UseQueryResult; - -export interface WorkspacesPageViewProps { +interface WorkspacesPageViewProps { error: unknown; workspaces?: readonly Workspace[]; checkedWorkspaces: readonly Workspace[]; diff --git a/site/src/pages/WorkspacesPage/WorkspacesTable.tsx b/site/src/pages/WorkspacesPage/WorkspacesTable.tsx index f812f2d05a854..453c0b1924ac0 100644 --- a/site/src/pages/WorkspacesPage/WorkspacesTable.tsx +++ b/site/src/pages/WorkspacesPage/WorkspacesTable.tsx @@ -84,7 +84,7 @@ import { } from "utils/workspace"; import { WorkspacesEmpty } from "./WorkspacesEmpty"; -export interface WorkspacesTableProps { +interface WorkspacesTableProps { workspaces?: readonly Workspace[]; checkedWorkspaces: readonly Workspace[]; error?: unknown; diff --git a/site/src/testHelpers/hooks.tsx b/site/src/testHelpers/hooks.tsx index 0366d941b57f3..ddb74dd33a4b1 100644 --- a/site/src/testHelpers/hooks.tsx +++ b/site/src/testHelpers/hooks.tsx @@ -25,7 +25,7 @@ import { createTestQueryClient, } from "./renderHelpers"; -export type RouterLocationSnapshot = Readonly<{ +type RouterLocationSnapshot = Readonly<{ search: URLSearchParams; pathname: string; state: Location["state"]; @@ -34,7 +34,7 @@ export type RouterLocationSnapshot = Readonly<{ export type GetLocationSnapshot = () => RouterLocationSnapshot; -export type RenderHookWithAuthResult< +type RenderHookWithAuthResult< TResult, TProps, TLocationState = unknown, @@ -54,7 +54,7 @@ export type RenderHookWithAuthResult< } >; -export type RenderHookWithAuthConfig = Readonly<{ +type RenderHookWithAuthConfig = Readonly<{ routingOptions?: Omit; renderOptions?: Omit, "wrapper">; }>; diff --git a/site/src/utils/tar.ts b/site/src/utils/tar.ts index fc809ca34f634..74b6e7b82530d 100644 --- a/site/src/utils/tar.ts +++ b/site/src/utils/tar.ts @@ -22,7 +22,7 @@ export interface ITarFileInfo { headerOffset: number; } -export interface ITarWriteItem { +interface ITarWriteItem { name: string; type: TarFileType; data: ArrayBuffer | Promise | null; @@ -30,7 +30,7 @@ export interface ITarWriteItem { opts?: Partial; } -export interface ITarWriteOptions { +interface ITarWriteOptions { uid: number; gid: number; mode: number; diff --git a/site/src/utils/time.ts b/site/src/utils/time.ts index dcf34a036c388..fec73268ccfae 100644 --- a/site/src/utils/time.ts +++ b/site/src/utils/time.ts @@ -24,7 +24,7 @@ const TIME_CONSTANTS = { }; export type TimeUnit = "days" | "hours"; -export type DateTimeInput = Date | string | number | Dayjs | null | undefined; +type DateTimeInput = Date | string | number | Dayjs | null | undefined; // Standard format strings // https://day.js.org/docs/en/display/format