Skip to content

[BUG] interface parameters not being documented for getters  #1062

Closed
@sbuscher

Description

@sbuscher
Overview of the issue

Compodoc isn't generating documentation for setter parameter types which are TypeScript interfaces.

Operating System, Node.js, npm, compodoc version(s)

Windows 10
node 10.16
npm 6.9
compodoc 1.1.11

Angular configuration, a package.json file in the root folder
{
  "name": "map-components",
  "version": "0.0.1",
  "scripts": {
    "ng": "ng serve",
    "start": "ng serve",
    "build": "ng build",
    "watch": "ng build --watch",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "compodoc": "npx compodoc --tsconfig tsconfig.doc.json --serve --open --watch"
  },
  "peerDependencies": {
    "@angular/common": "^11.2.10",
    "@angular/core": "^11.2.10"
  },
  "dependencies": {
    "tslib": "^2.0.0"
  },
  "devDependencies": {
    "@compodoc/compodoc": "^1.1.11"
  }
}
Compodoc installed globally or locally ?

Local install

If possible sourcecode of the file where it breaks

Interface defined in separate module (map.model.ts):

export interface VisibleLayer {
  id: string,
  visible: boolean;
}

Angular component:

import { Layer, VisibleLayer } from './map.model'

/**
 * @param {VisibleLayer} value
 */
set visibleLayers(value: VisibleLayer) {
  this._visibleLayer.visible = value.visible;
}

Should be set visibleLayers(value: VisibleLayer)

image

If possible your terminal logs before the error

1.1.11

TypeScript version used by Compodoc : 2.9.1

Node.js version : v10.16.0

Operating system : Windows 10

[�[90m08:12:37�[39m] No configuration file found, switching to CLI flags.
[�[90m08:12:37�[39m] Using tsconfig file : C:\home\repos\web-gis\projects\map-components\tsconfig.doc.json
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\public-api.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\test.ts
[�[90m08:12:37�[39m] Ignoring : C:\home\repos\web-gis\projects\map-components\src\lib\map\map.component.spec.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\lib\map\map.component.module.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\lib\map\map.model.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\lib\map\map.component.ts
[�[90m08:12:37�[39m] Ignoring : C:\home\repos\web-gis\projects\map-components\src\lib\search\search.component.spec.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\lib\search\search.component.ts
[�[90m08:12:37�[39m] Including : C:\home\repos\web-gis\projects\map-components\src\lib\search\search.module.ts
[�[90m08:12:37�[39m] Searching package.json file
[�[90m08:12:37�[39m] package.json file found
[�[90m08:12:37�[39m] Processing package.json dependencies
[�[90m08:12:37�[39m] Processing package.json peerDependencies
[�[90m08:12:37�[39m] Searching README.md, CHANGELOG.md, CONTRIBUTING.md, LICENSE.md, TODO.md files
[�[90m08:12:37�[39m] README.md file found
[�[90m08:12:37�[39m] Error during C:\home\repos\web-gis\projects\map-components\CHANGELOG read
[�[90m08:12:37�[39m] Continuing without CHANGELOG.md file
[�[90m08:12:37�[39m] Error during C:\home\repos\web-gis\projects\map-components\CONTRIBUTING read
[�[90m08:12:37�[39m] Continuing without CONTRIBUTING.md file
[�[90m08:12:37�[39m] Error during C:\home\repos\web-gis\projects\map-components\LICENSE read
[�[90m08:12:37�[39m] Continuing without LICENSE.md file
[�[90m08:12:37�[39m] Error during C:\home\repos\web-gis\projects\map-components\TODO read
[�[90m08:12:37�[39m] Continuing without TODO.md file
[�[90m08:12:37�[39m] Get dependencies data
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/public-api.ts
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/test.ts
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/lib/map/map.component.module.ts
[�[90m08:12:37�[39m] found : MapComponentModule
[�[90m08:12:37�[39m] : - imports:
[�[90m08:12:37�[39m] : - CommonModule
[�[90m08:12:37�[39m] : - exports:
[�[90m08:12:37�[39m] : - MapComponent
[�[90m08:12:37�[39m] : - declarations:
[�[90m08:12:37�[39m] : - MapComponent
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/lib/map/map.model.ts
[�[90m08:12:37�[39m] found : Layer
[�[90m08:12:37�[39m] found : VisibleLayer
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/lib/map/map.component.ts
[�[90m08:12:37�[39m] found : MapComponent
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/lib/search/search.component.ts
[�[90m08:12:37�[39m] found : SearchComponent
[�[90m08:12:37�[39m] parsing : C:/home/repos/web-gis/projects/map-components/src/lib/search/search.module.ts
[�[90m08:12:37�[39m] found : SearchModule
[�[90m08:12:37�[39m] : - imports:
[�[90m08:12:37�[39m] : - CommonModule
[�[90m08:12:37�[39m] : - declarations:
[�[90m08:12:37�[39m] : - SearchComponent
[�[90m08:12:37�[39m] -------------------
[�[90m08:12:37�[39m] Project statistics
[�[90m08:12:37�[39m] - files : 7
[�[90m08:12:37�[39m] - module : 2
[�[90m08:12:37�[39m] - component : 2
[�[90m08:12:37�[39m] - interface : 2
[�[90m08:12:37�[39m] -------------------
[�[90m08:12:37�[39m] Prepare components
[�[90m08:12:37�[39m] MapComponent has styleUrls, include them
[�[90m08:12:37�[39m] SearchComponent has a templateUrl, include it
[�[90m08:12:37�[39m] SearchComponent has styleUrls, include them
[�[90m08:12:37�[39m] Prepare modules
[�[90m08:12:37�[39m] Prepare interfaces
[�[90m08:12:37�[39m] Prepare miscellaneous
[�[90m08:12:37�[39m] Process documentation coverage report
[�[90m08:12:37�[39m] Process main graph
[�[90m08:12:37�[39m] Process module graph : MapComponentModule
[�[90m08:12:37�[39m] Process module graph : SearchModule
[�[90m08:12:37�[39m] Process pages
[�[90m08:12:37�[39m] Process page : Layer
[�[90m08:12:38�[39m] Process page : MapComponent
[�[90m08:12:38�[39m] Process page : MapComponentModule
[�[90m08:12:38�[39m] Process page : SearchComponent
[�[90m08:12:38�[39m] Process page : SearchModule
[�[90m08:12:38�[39m] Process page : VisibleLayer
[�[90m08:12:38�[39m] Process page : coverage
[�[90m08:12:38�[39m] Process page : dependencies
[�[90m08:12:38�[39m] Process page : index
[�[90m08:12:38�[39m] Process page : modules
[�[90m08:12:38�[39m] Process page : overview
[�[90m08:12:38�[39m] Process page : variables
[�[90m08:12:38�[39m] Process menu...
[�[90m08:12:38�[39m] Copy main resources
[�[90m08:12:38�[39m] Documentation generated in ./documentation/ in 1.529 seconds using gitbook theme
[�[90m08:12:38�[39m] Serving documentation from ./documentation/ at http://127.0.0.1:8080
[�[90m08:12:38�[39m] Watching sources in src folder

Motivation for or Use Case

Doc consumer needs to know the type of parameter to set.

Reproduce the error
  1. Create a custom interface.
  2. Create a getter.
  3. Specify the getter parameter as the custom interface type.
  4. Generate docs.
Related issues

First time using compodoc.

Suggest a Fix

Unknown.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions