• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ckeditor / ckeditor5-dev / cdbaf6a4-9078-48d2-be37-d8185abc2a83

05 May 2025 12:01PM UTC coverage: 89.432% (+0.5%) from 88.905%
cdbaf6a4-9078-48d2-be37-d8185abc2a83

push

circleci

web-flow
Merge pull request #1091 from ckeditor/ck/epic/15619-typedoc-28

Other (typedoc-plugins): Introduced the `validate()` function that checks if the converted documentation is error-free.

The following cases are verified:

* An event in the `@fires` tag exists.
* An identifier in the `@link` tag points to an existing doclet.
* A module name matches the path to the file where the module is defined.
* Overloaded methods and functions are described with the mandatory and unique `@label` tag.
* An identifier in the `@see` tag points to an existing doclet.

Feature (docs): Support for `typedoc@0.28`. The package uses the latest (`0.28.4`) TypeDoc release when introducing this change.

Other (typedoc-plugins): Improved processing parameters of the CKEditor 5 error definitions.

MAJOR BREAKING CHANGE (docs): The API docs builder requires `typedoc` in version 0.28 or higher.

MAJOR BREAKING CHANGE (typedoc-plugins): The TypeDoc plugins require the `typedoc` dependency in a version `0.28` or higher.

MAJOR BREAKING CHANGE (typedoc-plugins): CKEditor 5 events are stored in the `#ckeditor5Events` property on a class or interface declaration.

MAJOR BREAKING CHANGE (typedoc-plugins): CKEditor 5 errors can be recognized by the `#isCKEditor5Error` flag on a declaration.

MINOR BREAKING CHANGE (docs): The `strict` option passed as a modifier to the `build()` function should be wrapped into the `validatorOptions` object.

MINOR BREAKING CHANGE (typedoc-plugins): Parameters of CKEditor 5 events and errors are now stored in the `#parameters` property (instead of `#typeParameters`).

1880 of 1955 branches covered (96.16%)

Branch coverage included in aggregate %.

998 of 1043 new or added lines in 34 files covered. (95.69%)

10712 of 12125 relevant lines covered (88.35%)

27.2 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

81.82
/packages/typedoc-plugins/src/utils/getnode.ts
1
/**
1✔
2
 * @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
3
 * For licensing, see LICENSE.md.
4
 */
5

6
import type { Context, DeclarationReflection, SignatureReflection, TypeScript } from 'typedoc';
7

8
/**
9
 * Returns the TypeScript node from the reflection.
10
 */
11
export function getNode( context: Context, reflection: DeclarationReflection | SignatureReflection ): TypeScript.Declaration | null {
1✔
12
        let symbol = null;
61✔
13
        let declarationIndex = 0;
61✔
14

15
        if ( reflection.isSignature() ) {
61✔
16
                // The TypeDoc project does not store symbols for signatures. To get the TypeScript node from a signature, we need to get the
17
                // symbol from its parent, which contains all nodes for each signature.
18
                symbol = context.getSymbolFromReflection( reflection.parent );
42✔
19

20
                declarationIndex = reflection.parent.signatures!.findIndex( signature => signature.id === reflection.id );
42✔
21
        } else {
57✔
22
                symbol = context.getSymbolFromReflection( reflection );
19✔
23
        }
19✔
24

25
        // Not a ES6 module.
26
        if ( !symbol ) {
61!
NEW
27
                return null;
×
NEW
28
        }
×
29

30
        return symbol.declarations![ declarationIndex ] || null;
61!
31
}
61✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc