From 08a8952c4ac532ce5d90d50707c2d2fded5b5382 Mon Sep 17 00:00:00 2001 From: Mikkel Laursen Date: Tue, 8 Oct 2024 22:01:37 -0400 Subject: [PATCH] refactor: do not use method syntax for weirdness with this --- .../chip/ChipWithCircularProgressExample.tsx | 2 +- .../dialog/NestedDialogsExample.tsx | 2 +- .../dialog/NestedDialogsVisibleExample.tsx | 2 +- .../progress/DisableDeterminateTransition.tsx | 4 +-- .../table/SortableColumnsExample.tsx | 2 +- .../AutomaticAddonPaddingExample.tsx | 2 +- .../tooltip/ProgressbarTooltipExample.tsx | 2 +- .../(markdown)/migration/v5-to-v6/page.mdx | 2 +- .../material-icons-and-symbols/types.ts | 20 +++++------ apps/docs/src/app/(main)/error.tsx | 2 +- .../src/components/PrismThemeProvider.tsx | 2 +- apps/docs/src/components/SegmentedButtons.tsx | 3 +- apps/docs/src/utils/serverCookies.ts | 2 +- packages/code/src/CopyToClipboard.tsx | 4 +-- packages/code/src/DangerousCodeRunner.tsx | 2 +- packages/code/src/PackageManagerProvider.tsx | 4 +-- .../code/src/TypescriptEnabledProvider.tsx | 4 +-- packages/code/src/useCodeEditHistory.ts | 8 ++--- packages/code/src/useDangerousCodeRunner.tsx | 2 +- .../core/src/__tests__/useAsyncFunction.tsx | 2 +- .../src/__tests__/useThrottledFunction.tsx | 2 +- .../core/src/autocomplete/Autocomplete.tsx | 6 ++-- .../AutocompleteListboxChildren.tsx | 6 ++-- packages/core/src/autocomplete/types.ts | 23 ++++++------- packages/core/src/autocomplete/utils.ts | 6 ++-- packages/core/src/button/AsyncButton.tsx | 2 +- packages/core/src/delegateEvent.ts | 4 +-- packages/core/src/dialog/Dialog.tsx | 2 +- packages/core/src/dialog/FixedDialog.tsx | 2 +- packages/core/src/draggable/useDraggable.ts | 8 ++--- packages/core/src/draggable/utils.ts | 6 ++-- .../src/expansion-panel/ExpansionPanel.tsx | 2 +- packages/core/src/files/useFileUpload.ts | 6 ++-- packages/core/src/form/ListboxProvider.ts | 2 ++ packages/core/src/form/Select.tsx | 2 +- packages/core/src/form/Slider.tsx | 11 +++--- packages/core/src/form/SliderThumb.tsx | 8 ++--- packages/core/src/form/SliderValueMarks.tsx | 8 ++--- packages/core/src/form/useCheckboxGroup.ts | 34 +++++++++---------- packages/core/src/form/useCombobox.ts | 27 ++++++--------- packages/core/src/form/useRadioGroup.ts | 12 +++---- packages/core/src/form/useTextField.ts | 2 +- packages/core/src/hoverMode/useHoverMode.ts | 6 ++-- .../src/hoverMode/useHoverModeProvider.ts | 8 ++--- packages/core/src/interaction/types.ts | 4 +-- .../core/src/layout/useExpandableLayout.ts | 6 ++-- .../core/src/layout/useTemporaryLayout.ts | 4 +-- packages/core/src/menu/Menu.tsx | 4 +-- packages/core/src/menu/useContextMenu.ts | 6 ++-- packages/core/src/movement/types.ts | 10 +++--- .../src/navigation/CollapsibleNavGroup.tsx | 2 +- packages/core/src/navigation/Navigation.tsx | 2 +- packages/core/src/navigation/types.ts | 2 +- .../core/src/navigation/useActiveHeadingId.ts | 2 +- .../src/positioning/useFixedPositioning.ts | 4 +-- packages/core/src/searching/utils.ts | 2 +- .../src/snackbar/useCurrentToastActions.ts | 10 +++--- packages/core/src/tabs/TabList.tsx | 2 +- packages/core/src/tabs/__tests__/TabList.tsx | 2 +- packages/core/src/tabs/useTabList.ts | 2 +- packages/core/src/tabs/useTabs.ts | 10 +++--- packages/core/src/test-utils/matchMedia.ts | 2 +- packages/core/src/tooltip/useTooltip.ts | 16 ++++----- packages/core/src/transition/types.ts | 2 +- packages/core/src/transition/useCarousel.ts | 6 ++-- packages/core/src/tree/useTreeExpansion.ts | 2 +- packages/core/src/tree/useTreeSelection.ts | 2 +- packages/core/src/types.ts | 4 ++- .../typography/WritingDirectionProvider.tsx | 2 +- packages/core/src/useDropzone.ts | 8 ++--- packages/core/src/useIntersectionObserver.ts | 10 +++--- packages/core/src/useLocalStorage.ts | 4 +-- packages/core/src/useMutationObserver.ts | 2 +- packages/core/src/usePageInactive.ts | 4 +-- packages/core/src/useReadonlySet.ts | 2 +- packages/core/src/useResizeListener.ts | 2 +- packages/core/src/useToggle.ts | 6 ++-- packages/core/src/utils/RenderRecursively.tsx | 2 +- packages/core/src/utils/alphaNumericSort.ts | 2 +- 79 files changed, 210 insertions(+), 210 deletions(-) diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/chip/ChipWithCircularProgressExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/chip/ChipWithCircularProgressExample.tsx index 9aec299310..fefdca16ec 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/chip/ChipWithCircularProgressExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/chip/ChipWithCircularProgressExample.tsx @@ -28,7 +28,7 @@ export default function ChipWithCircularProgressExample(): ReactElement { interface DemoStateHookResult { enabled: boolean; loading: boolean; - onClick(): void; + onClick: () => void; } function useDemoState(): DemoStateHookResult { diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsExample.tsx index 8e5b901f1e..bc7ce2ed8d 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsExample.tsx @@ -15,7 +15,7 @@ export default function NestedDialogsExample(): ReactElement { interface InfiniteDialogProps { depth: number; - closeAll(): void; + closeAll: () => void; } function InfiniteDialog(props: InfiniteDialogProps): ReactElement { diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsVisibleExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsVisibleExample.tsx index 5056f69c6c..15e8b07618 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsVisibleExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/dialog/NestedDialogsVisibleExample.tsx @@ -15,7 +15,7 @@ export default function NestedDialogsVisibleExample(): ReactElement { interface InfiniteDialogProps { depth: number; - closeAll(): void; + closeAll: () => void; } function InfiniteDialog(props: InfiniteDialogProps): ReactElement { diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/progress/DisableDeterminateTransition.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/progress/DisableDeterminateTransition.tsx index 33f5c5ceef..b126a2c916 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/progress/DisableDeterminateTransition.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/progress/DisableDeterminateTransition.tsx @@ -27,8 +27,8 @@ export default function DisableDeterminateTransition(): ReactElement { const UPDATE_INTERVAL = 10; interface ProgressControls { - toggle(): void; - restart(): void; + toggle: () => void; + restart: () => void; running: boolean; progress: number; } diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/table/SortableColumnsExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/table/SortableColumnsExample.tsx index 3a5d9666af..f4b397dd41 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/table/SortableColumnsExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/table/SortableColumnsExample.tsx @@ -88,7 +88,7 @@ interface SortState { } interface SortedColumnsHookResult extends SortState { - update(sortKey: DessertKey): void; + update: (sortKey: DessertKey) => void; } function useSortedColumns(): SortedColumnsHookResult { diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/text-field/AutomaticAddonPaddingExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/text-field/AutomaticAddonPaddingExample.tsx index ef6b93a815..dbcfe4b4a8 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/text-field/AutomaticAddonPaddingExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/text-field/AutomaticAddonPaddingExample.tsx @@ -93,7 +93,7 @@ const max = ADDONS.length - 1; interface RotatingAddonsProps extends Pick { - toggle(): void; + toggle: () => void; running: boolean; } diff --git a/apps/docs/src/app/(main)/(markdown)/(demos)/components/tooltip/ProgressbarTooltipExample.tsx b/apps/docs/src/app/(main)/(markdown)/(demos)/components/tooltip/ProgressbarTooltipExample.tsx index 5cafae4c48..825fc7e351 100644 --- a/apps/docs/src/app/(main)/(markdown)/(demos)/components/tooltip/ProgressbarTooltipExample.tsx +++ b/apps/docs/src/app/(main)/(markdown)/(demos)/components/tooltip/ProgressbarTooltipExample.tsx @@ -44,7 +44,7 @@ export default function ProgressbarTooltipExample(): ReactElement { function useIncrementingValue(): { value: number; - toggle(): void; + toggle: () => void; toggled: boolean; } { const { toggled, toggle } = useToggle(); diff --git a/apps/docs/src/app/(main)/(markdown)/migration/v5-to-v6/page.mdx b/apps/docs/src/app/(main)/(markdown)/migration/v5-to-v6/page.mdx index 4ba238f818..dcf39e4389 100644 --- a/apps/docs/src/app/(main)/(markdown)/migration/v5-to-v6/page.mdx +++ b/apps/docs/src/app/(main)/(markdown)/migration/v5-to-v6/page.mdx @@ -2485,7 +2485,7 @@ used instead. +import { SimplePosition, useTooltip } from "react-md"; interface Test1Props { - onClick?(event: MouseEvent): void; + onClick?: (event: MouseEvent) => void; ``` ### 🔧 update-tooltip-props diff --git a/apps/docs/src/app/(main)/components/material-icons-and-symbols/types.ts b/apps/docs/src/app/(main)/components/material-icons-and-symbols/types.ts index 6f870a0083..3d2f70d584 100644 --- a/apps/docs/src/app/(main)/components/material-icons-and-symbols/types.ts +++ b/apps/docs/src/app/(main)/components/material-icons-and-symbols/types.ts @@ -65,11 +65,11 @@ export interface MaterialIconsAndSymbolsContext weight: MaterialSymbolWeight; grade: MaterialSymbolGrade; opticalSize: MaterialSymbolOpticalSize; - selectIcon(name: MaterialIconAndSymbolName): void; - deselectIcon(): void; - toggleFilters(): void; - resetSymbols(): void; - resetFilters(): void; + selectIcon: (name: MaterialIconAndSymbolName) => void; + deselectIcon: () => void; + toggleFilters: () => void; + resetSymbols: () => void; + resetFilters: () => void; isFillChanged: boolean; isGradeChanged: boolean; isWeightChanged: boolean; @@ -81,9 +81,9 @@ export interface MaterialIconsAndSymbolsContext isFontFamilyChanged: boolean; isSymbolCustomizationChanged: boolean; isResettable: boolean; - setSearch(search: string): void; - setIconType(iconType: IconType): void; - setIconFamily(iconFamily: MaterialIconFamily): void; - setIconCategory(iconCategory: IconCategoryFilter): void; - changeSvgToFont(): void; + setSearch: (search: string) => void; + setIconType: (iconType: IconType) => void; + setIconFamily: (iconFamily: MaterialIconFamily) => void; + setIconCategory: (iconCategory: IconCategoryFilter) => void; + changeSvgToFont: () => void; } diff --git a/apps/docs/src/app/(main)/error.tsx b/apps/docs/src/app/(main)/error.tsx index 15d1616c1e..a12795cd8c 100644 --- a/apps/docs/src/app/(main)/error.tsx +++ b/apps/docs/src/app/(main)/error.tsx @@ -6,7 +6,7 @@ import { type ReactElement } from "react"; export interface ErrorPageProps { error: Error & { digest?: string }; - reset(): void; + reset: () => void; } export default function ErrorPage(props: ErrorPageProps): ReactElement { diff --git a/apps/docs/src/components/PrismThemeProvider.tsx b/apps/docs/src/components/PrismThemeProvider.tsx index 2e6a80f8c2..e8a2fc7c81 100644 --- a/apps/docs/src/components/PrismThemeProvider.tsx +++ b/apps/docs/src/components/PrismThemeProvider.tsx @@ -15,7 +15,7 @@ import { export interface PrismThemeContext { prismTheme: PrismTheme; - setPrismTheme(theme: PrismTheme): void; + setPrismTheme: (theme: PrismTheme) => void; } const context = createContext(null); diff --git a/apps/docs/src/components/SegmentedButtons.tsx b/apps/docs/src/components/SegmentedButtons.tsx index 4f3990ec15..45379f6c08 100644 --- a/apps/docs/src/components/SegmentedButtons.tsx +++ b/apps/docs/src/components/SegmentedButtons.tsx @@ -12,11 +12,10 @@ const noop = (): ReactNode => undefined; export interface SegmentedButtonsProps extends Omit { textTransform?: TextTransform; - icon?: Record | ((item: V) => ReactNode); items: readonly V[]; value: V; - setValue(nextValue: V): void; + setValue: (nextValue: V) => void; } export function SegmentedButtons( diff --git a/apps/docs/src/utils/serverCookies.ts b/apps/docs/src/utils/serverCookies.ts index 42577776f9..93dead9b70 100644 --- a/apps/docs/src/utils/serverCookies.ts +++ b/apps/docs/src/utils/serverCookies.ts @@ -3,7 +3,7 @@ import "server-only"; interface GetCookieOptions { name: string; - isValid(value: string): value is V; + isValid: (value: string) => value is V; defaultValue: V; instance: ReturnType; } diff --git a/packages/code/src/CopyToClipboard.tsx b/packages/code/src/CopyToClipboard.tsx index 69026258d1..3db32526f0 100644 --- a/packages/code/src/CopyToClipboard.tsx +++ b/packages/code/src/CopyToClipboard.tsx @@ -12,9 +12,9 @@ const noop = (): void => { }; export interface CopyToClipboardProps extends TooltippedButtonProps { - onCopied?(text: string): void; + onCopied?: (text: string) => void; copyText?: string; - getCopyText?(button: HTMLButtonElement): string; + getCopyText?: (button: HTMLButtonElement) => string; } export function CopyToClipboard( diff --git a/packages/code/src/DangerousCodeRunner.tsx b/packages/code/src/DangerousCodeRunner.tsx index a5618ec89c..b5a3c49e07 100644 --- a/packages/code/src/DangerousCodeRunner.tsx +++ b/packages/code/src/DangerousCodeRunner.tsx @@ -8,7 +8,7 @@ import { type RunnableCodeScope } from "./types.js"; import { type DangerouslyRunCodeOptions } from "./useDangerousCodeRunner.js"; export interface DangerousCodeRunnerProps extends DangerouslyRunCodeOptions { - onRendered(error: Error | null): void; + onRendered: (error: Error | null) => void; } export interface DangerousCodeRunnerState { diff --git a/packages/code/src/PackageManagerProvider.tsx b/packages/code/src/PackageManagerProvider.tsx index 73ac752be6..66ecd8d0a7 100644 --- a/packages/code/src/PackageManagerProvider.tsx +++ b/packages/code/src/PackageManagerProvider.tsx @@ -24,7 +24,7 @@ export const DEFAULT_PACKAGE_MANAGERS: readonly PackageManager[] = [ export interface PackageManagerContext { packageManager: PackageManager; packageManagers: readonly PackageManager[]; - setPackageManager(packageManager: PackageManager): void; + setPackageManager: (packageManager: PackageManager) => void; } const context = createContext(null); @@ -44,7 +44,7 @@ export interface PackageManagerProviderProps { children: ReactNode; defaultValue?: UseStateInitializer; packageManagers?: readonly PackageManager[]; - onPackageManagerChange?(nextPackageManager: PackageManager): void; + onPackageManagerChange?: (nextPackageManager: PackageManager) => void; } export function PackageManagerProvider( diff --git a/packages/code/src/TypescriptEnabledProvider.tsx b/packages/code/src/TypescriptEnabledProvider.tsx index e364d7d00d..ca6694bf86 100644 --- a/packages/code/src/TypescriptEnabledProvider.tsx +++ b/packages/code/src/TypescriptEnabledProvider.tsx @@ -15,7 +15,7 @@ const noop = (): void => { export interface TypescriptEnabledContext { isTypescriptEnabled: boolean; - setTypescriptEnabled(enabled: boolean): void; + setTypescriptEnabled: (enabled: boolean) => void; } const context = createContext(null); @@ -34,7 +34,7 @@ export function useTypescriptEnabledContext(): TypescriptEnabledContext { export interface TypescriptEnabledProviderProps { children: ReactNode; defaultValue?: UseStateInitializer; - onTypescriptEnabledChange?(enabled: boolean): void; + onTypescriptEnabledChange?: (enabled: boolean) => void; } export function TypescriptEnabledProvider( diff --git a/packages/code/src/useCodeEditHistory.ts b/packages/code/src/useCodeEditHistory.ts index 7c7c6cd940..c5892b672c 100644 --- a/packages/code/src/useCodeEditHistory.ts +++ b/packages/code/src/useCodeEditHistory.ts @@ -35,7 +35,7 @@ export interface CodeEditHistory { interface HandleKeydownOptions extends Required { event: KeyboardEvent; - update(editAction: CodeEditTextAction): void; + update: (editAction: CodeEditTextAction) => void; } const TAB_TEXT = " ".repeat(2); @@ -199,9 +199,9 @@ export interface CodeEditHistoryImplementation { onChange: ChangeEventHandler; onKeyDown: KeyboardEventHandler; }; - setCode(nextCode: string): void; - editCode(action: CodeEditAction): void; - updateTextArea(action: CodeEditTextAction): void; + setCode: (nextCode: string) => void; + editCode: (action: CodeEditAction) => void; + updateTextArea: (action: CodeEditTextAction) => void; } export function useCodeEditHistory( diff --git a/packages/code/src/useDangerousCodeRunner.tsx b/packages/code/src/useDangerousCodeRunner.tsx index 6b2b55f20e..dbdded2142 100644 --- a/packages/code/src/useDangerousCodeRunner.tsx +++ b/packages/code/src/useDangerousCodeRunner.tsx @@ -12,7 +12,7 @@ const noop = (): void => { }; export interface DangerouslyRunCodeOptions extends DangerouslyEvalCodeOptions { - onRendered?(error: Error | null): void; + onRendered?: (error: Error | null) => void; } export interface DangerouslyRunCodeResult { diff --git a/packages/core/src/__tests__/useAsyncFunction.tsx b/packages/core/src/__tests__/useAsyncFunction.tsx index 73ae60eae9..04c5d25546 100644 --- a/packages/core/src/__tests__/useAsyncFunction.tsx +++ b/packages/core/src/__tests__/useAsyncFunction.tsx @@ -14,7 +14,7 @@ import { CircularProgress } from "../progress/CircularProgress.js"; import { useAsyncFunction } from "../useAsyncFunction.js"; interface TestProps extends ButtonProps { - onClick(event: MouseEvent): Promise; + onClick: (event: MouseEvent) => Promise; hookDisabled?: boolean; } diff --git a/packages/core/src/__tests__/useThrottledFunction.tsx b/packages/core/src/__tests__/useThrottledFunction.tsx index 5d116fbdb7..d13faf9418 100644 --- a/packages/core/src/__tests__/useThrottledFunction.tsx +++ b/packages/core/src/__tests__/useThrottledFunction.tsx @@ -50,7 +50,7 @@ const fakeFetch = jest.fn((search: string) => interface AsyncTestProps { unmounted: MutableRefObject; - onUnmounted(): void; + onUnmounted: () => void; } function AsyncTest(props: AsyncTestProps): ReactElement { diff --git a/packages/core/src/autocomplete/Autocomplete.tsx b/packages/core/src/autocomplete/Autocomplete.tsx index be84a77e97..62fd4e4f59 100644 --- a/packages/core/src/autocomplete/Autocomplete.tsx +++ b/packages/core/src/autocomplete/Autocomplete.tsx @@ -84,9 +84,9 @@ export interface AutocompleteBaseProps