prettier/prettier
### [`v2.3.1`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#231)
[Compare Source](https://togithub.com/prettier/prettier/compare/2.3.0...2.3.1)
[diff](https://togithub.com/prettier/prettier/compare/2.3.0...2.3.1)
##### Support TypeScript 4.3 ([#10945](https://togithub.com/prettier/prettier/issues/10945) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
##### [`override` modifiers in class elements](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#override)
```ts
class Foo extends {
override method() {}
}
```
##### [static index signatures (`[key: KeyType]: ValueType`) in classes](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#static-index-signatures)
```ts
class Foo {
static [key: string]: Bar;
}
```
##### [`get` / `set` in type declarations](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#separate-write-types)
```ts
interface Foo {
set foo(value);
get foo(): string;
}
```
##### Preserve attributes order for element node ([#10958](https://togithub.com/prettier/prettier/issues/10958) by [@dcyriller](https://togithub.com/dcyriller))
```handlebars
{{!-- Input --}}
{{!-- Prettier stable --}}
{{!-- Prettier main --}}
```
##### Track cursor position properly when itβs at the end of the range to format ([#10938](https://togithub.com/prettier/prettier/issues/10938) by [@j-f1](https://togithub.com/j-f1))
Previously, if the cursor was at the end of the range to format, it would simply be placed back at the end of the updated range.
Now, it will be repositioned if Prettier decides to add additional code to the end of the range (such as a semicolon).
```jsx
// Input (<|> represents the cursor)
const someVariable = myOtherVariable<|>
// range to format: ^^^^^^^^^^^^^^^
// Prettier stable
const someVariable = myOtherVariable;<|>
// range to format: ^^^^^^^^^^^^^^^
// Prettier main
const someVariable = myOtherVariable<|>;
// range to format: ^^^^^^^^^^^^^^^
```
##### Break the LHS of type alias that has complex type parameters ([#10901](https://togithub.com/prettier/prettier/issues/10901) by [@sosukesusuzki](https://togithub.com/sosukesusuzki))
```ts
// Input
type FieldLayoutWith<
T extends string,
S extends unknown = { width: string }
> = {
type: T;
code: string;
size: S;
};
// Prettier stable
type FieldLayoutWith =
{
type: T;
code: string;
size: S;
};
// Prettier main
type FieldLayoutWith<
T extends string,
S extends unknown = { width: string }
> = {
type: T;
code: string;
size: S;
};
```
##### Break the LHS of assignments that has complex type parameters ([#10916](https://togithub.com/prettier/prettier/issues/10916) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```ts
// Input
const map: Map<
Function,
Map
> = new Map();
// Prettier stable
const map: Map> =
new Map();
// Prettier main
const map: Map<
Function,
Map
> = new Map();
```
##### Fix incorrectly wrapped arrow functions with return types ([#10940](https://togithub.com/prettier/prettier/issues/10940) by [@thorn0](https://togithub.com/thorn0))
```ts
// Input
longfunctionWithCall12("bla", foo, (thing: string): complex> => {
code();
});
// Prettier stable
longfunctionWithCall12("bla", foo, (thing: string): complex<
type
> => {
code();
});
// Prettier main
longfunctionWithCall12(
"bla",
foo,
(thing: string): complex> => {
code();
}
);
```
##### Avoid breaking call expressions after assignments with complex type arguments ([#10949](https://togithub.com/prettier/prettier/issues/10949) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```ts
// Input
const foo = call<{
prop1: string;
prop2: string;
prop3: string;
}>();
// Prettier stable
const foo =
call<{
prop1: string;
prop2: string;
prop3: string;
}>();
// Prettier main
const foo = call<{
prop1: string;
prop2: string;
prop3: string;
}>();
```
##### Fix order of `override` modifiers ([#10961](https://togithub.com/prettier/prettier/issues/10961) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```ts
// Input
class Foo extends Bar {
abstract override foo: string;
}
// Prettier stable
class Foo extends Bar {
abstract override foo: string;
}
// Prettier main
class Foo extends Bar {
abstract override foo: string;
}
```
Configuration
π Schedule: At any time (no schedule defined).
π¦ Automerge: Enabled.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box.
This PR contains the following updates:
2.3.0
->2.3.1
Release Notes
prettier/prettier
### [`v2.3.1`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#231) [Compare Source](https://togithub.com/prettier/prettier/compare/2.3.0...2.3.1) [diff](https://togithub.com/prettier/prettier/compare/2.3.0...2.3.1) ##### Support TypeScript 4.3 ([#10945](https://togithub.com/prettier/prettier/issues/10945) by [@sosukesuzuki](https://togithub.com/sosukesuzuki)) ##### [`override` modifiers in class elements](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#override) ```ts class Foo extends { override method() {} } ``` ##### [static index signatures (`[key: KeyType]: ValueType`) in classes](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#static-index-signatures) ```ts class Foo { static [key: string]: Bar; } ``` ##### [`get` / `set` in type declarations](https://devblogs.microsoft.com/typescript/announcing-typescript-4-3/#separate-write-types) ```ts interface Foo { set foo(value); get foo(): string; } ``` ##### Preserve attributes order for element node ([#10958](https://togithub.com/prettier/prettier/issues/10958) by [@dcyriller](https://togithub.com/dcyriller)) ```handlebars {{!-- Input --}}Configuration
π Schedule: At any time (no schedule defined).
π¦ Automerge: Enabled.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.