From d0095c757436f4a8e82f4a78d407d59f52ac8f7d Mon Sep 17 00:00:00 2001 From: Adam Setch Date: Thu, 13 Nov 2025 18:14:53 -0500 Subject: [PATCH] refactor: component props Signed-off-by: Adam Setch --- src/renderer/components/AllRead.tsx | 6 ++++-- src/renderer/components/Oops.tsx | 7 +++++-- .../components/avatars/AvatarWithFallback.test.tsx | 4 ++-- src/renderer/components/avatars/AvatarWithFallback.tsx | 4 ++-- src/renderer/components/fields/Checkbox.test.tsx | 4 ++-- src/renderer/components/fields/Checkbox.tsx | 6 +++--- src/renderer/components/fields/FieldLabel.test.tsx | 4 ++-- src/renderer/components/fields/FieldLabel.tsx | 4 ++-- src/renderer/components/fields/RadioGroup.test.tsx | 4 ++-- src/renderer/components/fields/RadioGroup.tsx | 4 ++-- src/renderer/components/fields/Tooltip.test.tsx | 4 ++-- src/renderer/components/fields/Tooltip.tsx | 4 ++-- src/renderer/components/filters/FilterSection.tsx | 4 ++-- src/renderer/components/icons/LogoIcon.tsx | 6 +++--- src/renderer/components/layout/Centered.tsx | 4 ++-- src/renderer/components/layout/EmojiSplash.tsx | 6 +++--- src/renderer/components/layout/Page.tsx | 4 ++-- src/renderer/components/metrics/MetricGroup.tsx | 6 +++--- src/renderer/components/metrics/MetricPill.test.tsx | 6 +++--- src/renderer/components/metrics/MetricPill.tsx | 4 ++-- .../components/notifications/AccountNotifications.tsx | 6 +++--- .../components/notifications/NotificationFooter.tsx | 6 +++--- .../components/notifications/NotificationHeader.tsx | 6 +++--- src/renderer/components/notifications/NotificationRow.tsx | 6 +++--- .../components/notifications/RepositoryNotifications.tsx | 4 ++-- src/renderer/components/primitives/CustomCounter.tsx | 4 ++-- src/renderer/components/primitives/Footer.tsx | 4 ++-- src/renderer/components/primitives/Header.tsx | 4 ++-- src/renderer/components/primitives/HoverButton.tsx | 6 +++--- src/renderer/components/primitives/HoverGroup.tsx | 6 +++--- src/renderer/components/primitives/Title.tsx | 4 ++-- 31 files changed, 78 insertions(+), 73 deletions(-) diff --git a/src/renderer/components/AllRead.tsx b/src/renderer/components/AllRead.tsx index a047d0de0..5b8956ae7 100644 --- a/src/renderer/components/AllRead.tsx +++ b/src/renderer/components/AllRead.tsx @@ -5,11 +5,13 @@ import { AppContext } from '../context/App'; import { hasActiveFilters } from '../utils/notifications/filters/filter'; import { EmojiSplash } from './layout/EmojiSplash'; -interface IAllRead { +interface AllReadProps { fullHeight?: boolean; } -export const AllRead: FC = ({ fullHeight = true }: IAllRead) => { +export const AllRead: FC = ({ + fullHeight = true, +}: AllReadProps) => { const { settings } = useContext(AppContext); const hasFilters = hasActiveFilters(settings); diff --git a/src/renderer/components/Oops.tsx b/src/renderer/components/Oops.tsx index 38beccb1c..a892585de 100644 --- a/src/renderer/components/Oops.tsx +++ b/src/renderer/components/Oops.tsx @@ -4,12 +4,15 @@ import type { GitifyError } from '../types'; import { Errors } from '../utils/errors'; import { EmojiSplash } from './layout/EmojiSplash'; -interface IOops { +interface OopsProps { error: GitifyError; fullHeight?: boolean; } -export const Oops: FC = ({ error, fullHeight = true }: IOops) => { +export const Oops: FC = ({ + error, + fullHeight = true, +}: OopsProps) => { const err = error ?? Errors.UNKNOWN; const emoji = useMemo( diff --git a/src/renderer/components/avatars/AvatarWithFallback.test.tsx b/src/renderer/components/avatars/AvatarWithFallback.test.tsx index e358c048a..090109855 100644 --- a/src/renderer/components/avatars/AvatarWithFallback.test.tsx +++ b/src/renderer/components/avatars/AvatarWithFallback.test.tsx @@ -3,11 +3,11 @@ import { fireEvent, render, screen } from '@testing-library/react'; import { type Link, Size } from '../../types'; import { AvatarWithFallback, - type IAvatarWithFallback, + type AvatarWithFallbackProps, } from './AvatarWithFallback'; describe('renderer/components/avatars/AvatarWithFallback.tsx', () => { - const props: IAvatarWithFallback = { + const props: AvatarWithFallbackProps = { src: 'https://avatars.githubusercontent.com/u/133795385?s=200&v=4' as Link, alt: 'gitify-app', name: '@gitify-app', diff --git a/src/renderer/components/avatars/AvatarWithFallback.tsx b/src/renderer/components/avatars/AvatarWithFallback.tsx index 2f1116af1..59700e9ec 100644 --- a/src/renderer/components/avatars/AvatarWithFallback.tsx +++ b/src/renderer/components/avatars/AvatarWithFallback.tsx @@ -8,7 +8,7 @@ import type { UserType } from '../../typesGitHub'; import { getDefaultUserIcon } from '../../utils/icons'; import { isNonHumanUser } from '../../utils/notifications/filters/userType'; -export interface IAvatarWithFallback { +export interface AvatarWithFallbackProps { src?: Link; alt?: string; name?: string; @@ -16,7 +16,7 @@ export interface IAvatarWithFallback { userType?: UserType; } -export const AvatarWithFallback: React.FC = ({ +export const AvatarWithFallback: React.FC = ({ src, alt, name, diff --git a/src/renderer/components/fields/Checkbox.test.tsx b/src/renderer/components/fields/Checkbox.test.tsx index 7d004caf7..0050b58c6 100644 --- a/src/renderer/components/fields/Checkbox.test.tsx +++ b/src/renderer/components/fields/Checkbox.test.tsx @@ -1,9 +1,9 @@ import { render } from '@testing-library/react'; -import { Checkbox, type ICheckbox } from './Checkbox'; +import { Checkbox, type CheckboxProps } from './Checkbox'; describe('renderer/components/fields/Checkbox.tsx', () => { - const props: ICheckbox = { + const props: CheckboxProps = { name: 'appearance', label: 'Appearance', checked: true, diff --git a/src/renderer/components/fields/Checkbox.tsx b/src/renderer/components/fields/Checkbox.tsx index f78e54c32..1ce3bc9fb 100644 --- a/src/renderer/components/fields/Checkbox.tsx +++ b/src/renderer/components/fields/Checkbox.tsx @@ -6,7 +6,7 @@ import { cn } from '../../utils/cn'; import { CustomCounter } from '../primitives/CustomCounter'; import { Tooltip } from './Tooltip'; -export interface ICheckbox { +export interface CheckboxProps { name: string; label: string; counter?: number; @@ -17,10 +17,10 @@ export interface ICheckbox { onChange: (evt: React.ChangeEvent) => void; } -export const Checkbox: FC = ({ +export const Checkbox: FC = ({ visible = true, ...props -}: ICheckbox) => { +}: CheckboxProps) => { const counter = props?.counter === 0 ? '0' : props.counter; return ( diff --git a/src/renderer/components/fields/FieldLabel.test.tsx b/src/renderer/components/fields/FieldLabel.test.tsx index e10a2e655..26a243bfa 100644 --- a/src/renderer/components/fields/FieldLabel.test.tsx +++ b/src/renderer/components/fields/FieldLabel.test.tsx @@ -1,9 +1,9 @@ import { render } from '@testing-library/react'; -import { FieldLabel, type IFieldLabel } from './FieldLabel'; +import { FieldLabel, type FieldLabelProps } from './FieldLabel'; describe('renderer/components/fields/FieldLabel.tsx', () => { - const props: IFieldLabel = { + const props: FieldLabelProps = { name: 'appearance', label: 'Appearance', }; diff --git a/src/renderer/components/fields/FieldLabel.tsx b/src/renderer/components/fields/FieldLabel.tsx index 1234ea3e5..4d9dec3a4 100644 --- a/src/renderer/components/fields/FieldLabel.tsx +++ b/src/renderer/components/fields/FieldLabel.tsx @@ -1,11 +1,11 @@ import type { FC } from 'react'; -export interface IFieldLabel { +export interface FieldLabelProps { name: string; label: string; } -export const FieldLabel: FC = (props: IFieldLabel) => { +export const FieldLabel: FC = (props: FieldLabelProps) => { return (