diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index b43368905e8ab..21cf827da05de 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -36,6 +36,7 @@ - `CustomSelectControlV2`: fix trigger button font size. ([#63131](https://github.com/WordPress/gutenberg/pull/63131)) - Extract `TimeInput` component from `TimePicker` ([#60613](https://github.com/WordPress/gutenberg/pull/60613)). - `TimeInput`: Add `label` prop ([#63106](https://github.com/WordPress/gutenberg/pull/63106)). +- Method style type signatures have been changed to function style ([#62718](https://github.com/WordPress/gutenberg/pull/62718)). ## 28.2.0 (2024-06-26) diff --git a/packages/components/src/menu-items-choice/types.ts b/packages/components/src/menu-items-choice/types.ts index 87d8e7687a4fb..a722d5e03709e 100644 --- a/packages/components/src/menu-items-choice/types.ts +++ b/packages/components/src/menu-items-choice/types.ts @@ -20,7 +20,8 @@ export type MenuItemsChoiceProps = { * Callback function to be called with the selected choice when user * selects a new choice. */ - onSelect( value: string ): void; + onSelect: ( value: string ) => void; + /** * Callback function to be called with a choice when user * hovers over a new choice (will be empty on mouse leave). diff --git a/packages/components/src/resizable-box/resize-tooltip/utils.ts b/packages/components/src/resizable-box/resize-tooltip/utils.ts index 09484baaf6a78..895f521c80ae2 100644 --- a/packages/components/src/resizable-box/resize-tooltip/utils.ts +++ b/packages/components/src/resizable-box/resize-tooltip/utils.ts @@ -25,7 +25,7 @@ interface UseResizeLabelProps { interface UseResizeLabelArgs { axis?: Axis; fadeTimeout: number; - onResize( data: { width: number | null; height: number | null } ): void; + onResize: ( data: { width: number | null; height: number | null } ) => void; position: Position; showPx: boolean; } diff --git a/packages/compose/CHANGELOG.md b/packages/compose/CHANGELOG.md index 7c29649f5bce8..6e620f05d5757 100644 --- a/packages/compose/CHANGELOG.md +++ b/packages/compose/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +### Internal + +- Method style type signatures have been changed to function style ([#62718](https://github.com/WordPress/gutenberg/pull/62718)). + ## 7.2.0 (2024-06-26) ## 7.1.0 (2024-06-15) diff --git a/packages/compose/src/utils/debounce/index.ts b/packages/compose/src/utils/debounce/index.ts index ea9d97050baa4..d86fefeea8791 100644 --- a/packages/compose/src/utils/debounce/index.ts +++ b/packages/compose/src/utils/debounce/index.ts @@ -59,7 +59,7 @@ export interface DebouncedFunc< T extends ( ...args: any[] ) => any > { /** * Throw away any pending invocation of the debounced function. */ - cancel(): void; + cancel: () => void; /** * If there is a pending invocation of the debounced function, invoke it immediately and return @@ -68,7 +68,7 @@ export interface DebouncedFunc< T extends ( ...args: any[] ) => any > { * Otherwise, return the value from the last invocation, or undefined if the debounced function * was never invoked. */ - flush(): ReturnType< T > | undefined; + flush: () => ReturnType< T > | undefined; } /** diff --git a/packages/compose/src/utils/observable-map/index.ts b/packages/compose/src/utils/observable-map/index.ts index 3442c1a3f94c8..904b8df7ec670 100644 --- a/packages/compose/src/utils/observable-map/index.ts +++ b/packages/compose/src/utils/observable-map/index.ts @@ -1,8 +1,8 @@ export type ObservableMap< K, V > = { - get( name: K ): V | undefined; - set( name: K, value: V ): void; - delete( name: K ): void; - subscribe( name: K, listener: () => void ): () => void; + get: ( name: K ) => V | undefined; + set: ( name: K, value: V ) => void; + delete: ( name: K ) => void; + subscribe: ( name: K, listener: () => void ) => () => void; }; /** diff --git a/packages/dataviews/CHANGELOG.md b/packages/dataviews/CHANGELOG.md index be0b434483599..595a3e5171984 100644 --- a/packages/dataviews/CHANGELOG.md +++ b/packages/dataviews/CHANGELOG.md @@ -4,7 +4,11 @@ ### New features -- Added a new `DataForm` component to render controls from a given configuration (fields, form), and data. +- Added a new `DataForm` component to render controls from a given configuration (fields, form), and data. + +### Internal + +- Method style type signatures have been changed to function style ([#62718](https://github.com/WordPress/gutenberg/pull/62718)). ## 2.2.0 (2024-06-26) diff --git a/packages/dataviews/src/types.ts b/packages/dataviews/src/types.ts index 9e140f686d65f..9c611b3882a7e 100644 --- a/packages/dataviews/src/types.ts +++ b/packages/dataviews/src/types.ts @@ -406,7 +406,7 @@ export interface ViewBaseProps< Item > { fields: NormalizedField< Item >[]; getItemId: ( item: Item ) => string; isLoading?: boolean; - onChangeView( view: View ): void; + onChangeView: ( view: View ) => void; onSelectionChange: SetSelection; selection: string[]; setOpenedFilter: ( fieldId: string ) => void; diff --git a/packages/eslint-plugin/CHANGELOG.md b/packages/eslint-plugin/CHANGELOG.md index 35abe863afb3e..d6763095ba4a2 100644 --- a/packages/eslint-plugin/CHANGELOG.md +++ b/packages/eslint-plugin/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +### Breaking Changes + +- Add [`@typescript-eslint/method-signature-style` rule](https://typescript-eslint.io/rules/method-signature-style) to the recommended TypeScript ruleset ([#62718](https://github.com/WordPress/gutenberg/pull/62718)). + ## 19.2.0 (2024-06-26) ## 19.1.0 (2024-06-15) diff --git a/packages/eslint-plugin/configs/recommended.js b/packages/eslint-plugin/configs/recommended.js index 72425c493fe41..28c6812fc3f84 100644 --- a/packages/eslint-plugin/configs/recommended.js +++ b/packages/eslint-plugin/configs/recommended.js @@ -60,6 +60,7 @@ if ( isPackageInstalled( 'typescript' ) ) { // no-shadow doesn't work correctly in TS, so let's use a TS-dedicated version instead. 'no-shadow': 'off', '@typescript-eslint/no-shadow': 'error', + '@typescript-eslint/method-signature-style': 'error', }, }, ];