oxc/crates
Alexander S. fe25b651bd
feat(prettier): indent for class definition (#6059)
trying to match the output for:
5b868377c0/tests/format/typescript/classes/__snapshots__/format.test.js.snap (L3-L92)

<details><summary>main branch output:</summary>

```typescript
class MyContractSelectionWidget extends React.Component<void, MyContractSelectionWidgetPropsType, void> implements SomethingLarge {
  method() {}
}

class DisplayObject1 extends utils.EventEmitter implements interaction_InteractiveTarget {}

class DisplayObject2 extends utils.EventEmitter implements interaction_InteractiveTarget {}

class DisplayObject3 extends utils.EventEmitter implements interaction_InteractiveTarget, somethingElse_SomeOtherThing, somethingElseAgain_RunningOutOfNames {}

class DisplayObject4 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;
}

export class VisTimelineComponent implements AfterViewInit, OnChanges, OnDestroy {}
export class VisTimelineComponent2 implements AfterViewInit, OnChanges, OnDestroy, AndSomethingReallyReallyLong {}
```

</details> 

<details><summary>this branch output:</summary>

```typescript
class MyContractSelectionWidget
  extends React.Component<void, MyContractSelectionWidgetPropsType, void>
  implements SomethingLarge
{
  method() {}
}

class DisplayObject1
  extends utils.EventEmitter
  implements interaction_InteractiveTarget {}

class DisplayObject2
  extends utils.EventEmitter
  implements interaction_InteractiveTarget {}

class DisplayObject3
  extends utils.EventEmitter
  implements
    interaction_InteractiveTarget,
    somethingElse_SomeOtherThing,
    somethingElseAgain_RunningOutOfNames {}

class DisplayObject4
  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;
}

export class VisTimelineComponent
  implements AfterViewInit, OnChanges, OnDestroy {}
export class VisTimelineComponent2
  implements
    AfterViewInit,
    OnChanges,
    OnDestroy,
    AndSomethingReallyReallyLong {}
```

</details> 

Sadly I can't fix the `class Readable` line :/
2024-10-06 22:23:24 +08:00
..
oxc feat(napi/transform): perform dce after define plugin (#6312) 2024-10-06 09:49:52 +00:00
oxc_allocator refactor(allocator): remove unnecessary Vec impl (#6213) 2024-10-01 10:54:47 +00:00
oxc_ast refactor(regular_expression)!: Simplify public APIs (#6262) 2024-10-03 02:47:08 +00:00
oxc_ast_macros release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_cfg release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_codegen refactor(codegen)!: change to CodegenReturn::code and CodegenReturn::map (#6310) 2024-10-06 05:05:47 +00:00
oxc_data_structures refactor(data_structures): NonEmptyStack::len hint that len is never 0 (#6220) 2024-10-01 14:58:36 +00:00
oxc_diagnostics release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_index release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_isolated_declarations refactor(codegen)!: change to CodegenReturn::code and CodegenReturn::map (#6310) 2024-10-06 05:05:47 +00:00
oxc_language_server feat(linter): allow fixing in files with source offsets (#6197) 2024-10-03 00:53:30 +00:00
oxc_linter refactor(linter): rename vars from ast_node_id to node_id (#6305) 2024-10-06 08:35:51 +00:00
oxc_macros feat(linter): add oxc-security/api-keys (#5906) 2024-09-22 22:39:56 +00:00
oxc_mangler release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_minifier refactor(codegen)!: change to CodegenReturn::code and CodegenReturn::map (#6310) 2024-10-06 05:05:47 +00:00
oxc_module_lexer release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_parser refactor(regular_expression)!: Simplify public APIs (#6262) 2024-10-03 02:47:08 +00:00
oxc_prettier feat(prettier): indent for class definition (#6059) 2024-10-06 22:23:24 +08:00
oxc_regular_expression refactor(regular_expression)!: Simplify public APIs (#6262) 2024-10-03 02:47:08 +00:00
oxc_semantic refactor(semantic): rename vars from ast_node_id to node_id (#6304) 2024-10-06 01:03:48 +00:00
oxc_sourcemap release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_span release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_syntax release(crates): v0.30.5 (#6163) 2024-09-29 15:20:19 +08:00
oxc_transformer refactor(codegen)!: change to CodegenReturn::code and CodegenReturn::map (#6310) 2024-10-06 05:05:47 +00:00
oxc_traverse refactor(traverse)!: generate_uid return a BoundIdentifier (#6294) 2024-10-05 16:00:50 +00:00
oxc_wasm refactor(codegen)!: change to CodegenReturn::code and CodegenReturn::map (#6310) 2024-10-06 05:05:47 +00:00