Skip to content

[BUG] Interface could extends multiple other interfaces #1364

@angelaman

Description

@angelaman
Overview of the issue

All but first interfaces extended ignored.

interface Person extends Foo, Bar, Baz { ... }

result documentation.json

{
  ...
  "interfaces": [{
      "name": "Person",
      ...
      "extends": "Foo"
  }]
  ...
}

extends for "Person" interface is 'Foo', but rest are lost.

Related use case, when interface uses typescript type like Omit, actual extended interface lost

interface Person extends Omit<Foo, 'name'> { ... }

extends for "Person" interface is 'Omit', actual interface Foo is lost.

Operating System, Node.js, npm, compodoc version(s)
  • macos 13.14.1
  • node 18.14.0
  • compodoc 1.1.19
Angular configuration, a package.json file in the root folder
Compodoc installed globally or locally ?

locally

Motivation for or Use Case

Some times an interface needs to extends multiple other interfaces, losing all but first will result in missed properties in result documentation.

Reproduce the error

See overview section

Suggest a Fix

Suggestion for first of this bug, perhaps turn extends into array, or comma separated string

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions