Break on implements instead of extends (#1730)
There can often be something that breaks inside of `extends` so it's looking weird to break twice. It now only breaks on `implements` and make sure to put each element on its own line. Fixes #1520master
parent
ffc1b3702e
commit
d06c46d045
|
@ -3399,21 +3399,20 @@ function printClass(path, options, print) {
|
|||
|
||||
const partsGroup = [];
|
||||
if (n.superClass) {
|
||||
partsGroup.push(
|
||||
line,
|
||||
"extends ",
|
||||
parts.push(
|
||||
" extends ",
|
||||
path.call(print, "superClass"),
|
||||
path.call(print, "superTypeParameters")
|
||||
);
|
||||
} else if (n.extends && n.extends.length > 0) {
|
||||
partsGroup.push(line, "extends ", join(", ", path.map(print, "extends")));
|
||||
parts.push(" extends ", join(", ", path.map(print, "extends")));
|
||||
}
|
||||
|
||||
if (n["implements"] && n["implements"].length > 0) {
|
||||
partsGroup.push(
|
||||
line,
|
||||
"implements ",
|
||||
join(", ", path.map(print, "implements"))
|
||||
indent(join(concat([",", line]), path.map(print, "implements")))
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -17,13 +17,63 @@ exports[`break.js 1`] = `
|
|||
class MyContractSelectionWidget extends React.Component<void, MyContractSelectionWidgetPropsType, void> implements SomethingLarge {
|
||||
method() {}
|
||||
}
|
||||
|
||||
class DisplayObject
|
||||
extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget,
|
||||
somethingElse_SomeOtherThing,
|
||||
somethingElseAgain_RunningOutOfNames {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter implements interaction_InteractiveTarget {}
|
||||
class Readable extends events.EventEmitter implements NodeJS_ReadableStream {}
|
||||
class InMemoryAppender extends log4javascript.Appender implements ICachedLogMessageProvider {}
|
||||
|
||||
class Foo extends Immutable.Record({
|
||||
ipaddress: '',
|
||||
}) {
|
||||
ipaddress: string;
|
||||
}
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
class MyContractSelectionWidget
|
||||
extends React.Component<void, MyContractSelectionWidgetPropsType, void>
|
||||
implements SomethingLarge {
|
||||
class MyContractSelectionWidget extends React.Component<
|
||||
void,
|
||||
MyContractSelectionWidgetPropsType,
|
||||
void
|
||||
> implements SomethingLarge {
|
||||
method() {}
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget,
|
||||
somethingElse_SomeOtherThing,
|
||||
somethingElseAgain_RunningOutOfNames {}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {}
|
||||
class Readable extends events.EventEmitter implements NodeJS_ReadableStream {}
|
||||
class InMemoryAppender extends log4javascript.Appender
|
||||
implements ICachedLogMessageProvider {}
|
||||
|
||||
class Foo extends Immutable.Record({
|
||||
ipaddress: ""
|
||||
}) {
|
||||
ipaddress: string;
|
||||
}
|
||||
|
||||
`;
|
||||
|
||||
exports[`call.js 1`] = `
|
||||
|
|
|
@ -1,3 +1,28 @@
|
|||
class MyContractSelectionWidget extends React.Component<void, MyContractSelectionWidgetPropsType, void> implements SomethingLarge {
|
||||
method() {}
|
||||
}
|
||||
|
||||
class DisplayObject
|
||||
extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter
|
||||
implements interaction_InteractiveTarget,
|
||||
somethingElse_SomeOtherThing,
|
||||
somethingElseAgain_RunningOutOfNames {
|
||||
}
|
||||
|
||||
class DisplayObject extends utils.EventEmitter implements interaction_InteractiveTarget {}
|
||||
class Readable extends events.EventEmitter implements NodeJS_ReadableStream {}
|
||||
class InMemoryAppender extends log4javascript.Appender implements ICachedLogMessageProvider {}
|
||||
|
||||
class Foo extends Immutable.Record({
|
||||
ipaddress: '',
|
||||
}) {
|
||||
ipaddress: string;
|
||||
}
|
||||
|
|
|
@ -71,20 +71,30 @@ export class BinaryExpression<
|
|||
|
||||
export type ArithmeticExpression = PlusOp | MinusOp | MulOp | DivOp | ModOp;
|
||||
|
||||
export class PlusOp
|
||||
extends BinaryExpression<ArithmeticExpression, ArithmeticExpression> {}
|
||||
export class PlusOp extends BinaryExpression<
|
||||
ArithmeticExpression,
|
||||
ArithmeticExpression
|
||||
> {}
|
||||
|
||||
export class MinusOp
|
||||
extends BinaryExpression<ArithmeticExpression, ArithmeticExpression> {}
|
||||
export class MinusOp extends BinaryExpression<
|
||||
ArithmeticExpression,
|
||||
ArithmeticExpression
|
||||
> {}
|
||||
|
||||
export class MulOp
|
||||
extends BinaryExpression<ArithmeticExpression, ArithmeticExpression> {}
|
||||
export class MulOp extends BinaryExpression<
|
||||
ArithmeticExpression,
|
||||
ArithmeticExpression
|
||||
> {}
|
||||
|
||||
export class DivOp
|
||||
extends BinaryExpression<ArithmeticExpression, ArithmeticExpression> {}
|
||||
export class DivOp extends BinaryExpression<
|
||||
ArithmeticExpression,
|
||||
ArithmeticExpression
|
||||
> {}
|
||||
|
||||
export class ModOp
|
||||
extends BinaryExpression<ArithmeticExpression, ArithmeticExpression> {}
|
||||
export class ModOp extends BinaryExpression<
|
||||
ArithmeticExpression,
|
||||
ArithmeticExpression
|
||||
> {}
|
||||
|
||||
`;
|
||||
|
||||
|
|
|
@ -20,8 +20,11 @@ export interface Environment1
|
|||
extends GenericEnvironment<SomeType, AnotherType, YetAnotherType> {
|
||||
m(): void
|
||||
}
|
||||
export class Environment2
|
||||
extends GenericEnvironment<SomeType, AnotherType, YetAnotherType> {
|
||||
export class Environment2 extends GenericEnvironment<
|
||||
SomeType,
|
||||
AnotherType,
|
||||
YetAnotherType
|
||||
> {
|
||||
m() {}
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,8 @@ this.isTabActionBar((e.target || e.srcElement) as HTMLElement);
|
|||
"current" in (props.pagination as Object);
|
||||
start + (yearSelectTotal as number);
|
||||
scrollTop > (visibilityHeight as number);
|
||||
export default class Column<T>
|
||||
extends (RcTable.Column as React.ComponentClass<ColumnProps<T>>) {}
|
||||
export default class Column<T> extends (RcTable.Column as React.ComponentClass<
|
||||
ColumnProps<T>
|
||||
>) {}
|
||||
|
||||
`;
|
||||
|
|
Loading…
Reference in New Issue