@microsoft/api-documenter 7.13.73 → 7.13.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.json +69 -0
- package/CHANGELOG.md +21 -1
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/documenters/ExperimentalYamlDocumenter.js +2 -2
- package/lib/documenters/ExperimentalYamlDocumenter.js.map +1 -1
- package/lib/documenters/MarkdownDocumenter.js +58 -58
- package/lib/documenters/MarkdownDocumenter.js.map +1 -1
- package/lib/documenters/YamlDocumenter.js +42 -42
- package/lib/documenters/YamlDocumenter.js.map +1 -1
- package/package.json +6 -7
package/CHANGELOG.json
CHANGED
|
@@ -1,6 +1,75 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/api-documenter",
|
|
3
3
|
"entries": [
|
|
4
|
+
{
|
|
5
|
+
"version": "7.13.77",
|
|
6
|
+
"tag": "@microsoft/api-documenter_v7.13.77",
|
|
7
|
+
"date": "Tue, 14 Dec 2021 19:27:51 GMT",
|
|
8
|
+
"comments": {
|
|
9
|
+
"dependency": [
|
|
10
|
+
{
|
|
11
|
+
"comment": "Updating dependency \"@rushstack/heft\" to `0.44.0`"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"comment": "Updating dependency \"@rushstack/heft-node-rig\" to `1.5.0`"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"version": "7.13.76",
|
|
21
|
+
"tag": "@microsoft/api-documenter_v7.13.76",
|
|
22
|
+
"date": "Thu, 09 Dec 2021 20:34:41 GMT",
|
|
23
|
+
"comments": {
|
|
24
|
+
"dependency": [
|
|
25
|
+
{
|
|
26
|
+
"comment": "Updating dependency \"@microsoft/api-extractor-model\" to `7.15.1`"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"comment": "Updating dependency \"@rushstack/node-core-library\" to `3.44.2`"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"comment": "Updating dependency \"@rushstack/heft\" to `0.43.2`"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"comment": "Updating dependency \"@rushstack/heft-node-rig\" to `1.4.3`"
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"version": "7.13.75",
|
|
42
|
+
"tag": "@microsoft/api-documenter_v7.13.75",
|
|
43
|
+
"date": "Thu, 09 Dec 2021 00:21:54 GMT",
|
|
44
|
+
"comments": {
|
|
45
|
+
"dependency": [
|
|
46
|
+
{
|
|
47
|
+
"comment": "Updating dependency \"@microsoft/api-extractor-model\" to `7.15.0`"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"comment": "Updating dependency \"@rushstack/heft\" to `0.43.1`"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"comment": "Updating dependency \"@rushstack/heft-node-rig\" to `1.4.2`"
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"version": "7.13.74",
|
|
60
|
+
"tag": "@microsoft/api-documenter_v7.13.74",
|
|
61
|
+
"date": "Wed, 08 Dec 2021 19:05:08 GMT",
|
|
62
|
+
"comments": {
|
|
63
|
+
"dependency": [
|
|
64
|
+
{
|
|
65
|
+
"comment": "Updating dependency \"@rushstack/heft\" to `0.43.0`"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"comment": "Updating dependency \"@rushstack/heft-node-rig\" to `1.4.1`"
|
|
69
|
+
}
|
|
70
|
+
]
|
|
71
|
+
}
|
|
72
|
+
},
|
|
4
73
|
{
|
|
5
74
|
"version": "7.13.73",
|
|
6
75
|
"tag": "@microsoft/api-documenter_v7.13.73",
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
# Change Log - @microsoft/api-documenter
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Tue, 14 Dec 2021 19:27:51 GMT and should not be manually modified.
|
|
4
|
+
|
|
5
|
+
## 7.13.77
|
|
6
|
+
Tue, 14 Dec 2021 19:27:51 GMT
|
|
7
|
+
|
|
8
|
+
_Version update only_
|
|
9
|
+
|
|
10
|
+
## 7.13.76
|
|
11
|
+
Thu, 09 Dec 2021 20:34:41 GMT
|
|
12
|
+
|
|
13
|
+
_Version update only_
|
|
14
|
+
|
|
15
|
+
## 7.13.75
|
|
16
|
+
Thu, 09 Dec 2021 00:21:54 GMT
|
|
17
|
+
|
|
18
|
+
_Version update only_
|
|
19
|
+
|
|
20
|
+
## 7.13.74
|
|
21
|
+
Wed, 08 Dec 2021 19:05:08 GMT
|
|
22
|
+
|
|
23
|
+
_Version update only_
|
|
4
24
|
|
|
5
25
|
## 7.13.73
|
|
6
26
|
Wed, 08 Dec 2021 16:14:05 GMT
|
package/dist/tsdoc-metadata.json
CHANGED
|
@@ -26,7 +26,7 @@ class ExperimentalYamlDocumenter extends YamlDocumenter_1.YamlDocumenter {
|
|
|
26
26
|
const tocItems = [];
|
|
27
27
|
for (const apiItem of apiItems) {
|
|
28
28
|
let tocItem;
|
|
29
|
-
if (apiItem.kind ===
|
|
29
|
+
if (apiItem.kind === api_extractor_model_1.ApiItemKind.Namespace && !this.newDocfxNamespaces) {
|
|
30
30
|
tocItem = {
|
|
31
31
|
name: this._getTocItemName(apiItem)
|
|
32
32
|
};
|
|
@@ -40,7 +40,7 @@ class ExperimentalYamlDocumenter extends YamlDocumenter_1.YamlDocumenter {
|
|
|
40
40
|
name: this._getTocItemName(apiItem),
|
|
41
41
|
uid: this._getUid(apiItem)
|
|
42
42
|
};
|
|
43
|
-
if (apiItem.kind !==
|
|
43
|
+
if (apiItem.kind !== api_extractor_model_1.ApiItemKind.Package) {
|
|
44
44
|
this._filterItem(apiItem, tocItem);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExperimentalYamlDocumenter.js","sourceRoot":"","sources":["../../src/documenters/ExperimentalYamlDocumenter.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\r\n// See LICENSE in the project root for license information.\r\n\r\nimport { DocComment, DocInlineTag } from '@microsoft/tsdoc';\r\nimport { ApiModel, ApiItem, ApiItemKind, ApiDocumentedItem } from '@microsoft/api-extractor-model';\r\n\r\nimport { IConfigTableOfContents } from './IConfigFile';\r\nimport { IYamlTocItem, IYamlTocFile } from '../yaml/IYamlTocFile';\r\nimport { YamlDocumenter } from './YamlDocumenter';\r\nimport { DocumenterConfig } from './DocumenterConfig';\r\n\r\n/**\r\n * EXPERIMENTAL - This documenter is a prototype of a new config file driven mode of operation for\r\n * API Documenter. It is not ready for general usage yet. Its design may change in the future.\r\n */\r\nexport class ExperimentalYamlDocumenter extends YamlDocumenter {\r\n private _config: IConfigTableOfContents;\r\n private _tocPointerMap: { [key: string]: IYamlTocItem };\r\n private _catchAllPointer: IYamlTocItem | undefined;\r\n\r\n public constructor(apiModel: ApiModel, documenterConfig: DocumenterConfig) {\r\n super(apiModel, documenterConfig.configFile.newDocfxNamespaces);\r\n this._config = documenterConfig.configFile.tableOfContents!;\r\n\r\n this._tocPointerMap = {};\r\n\r\n this._generateTocPointersMap(this._config.tocConfig);\r\n }\r\n\r\n /** @override */\r\n protected buildYamlTocFile(apiItems: ReadonlyArray<ApiItem>): IYamlTocFile {\r\n this._buildTocItems2(apiItems);\r\n return this._config.tocConfig;\r\n }\r\n\r\n private _buildTocItems2(apiItems: ReadonlyArray<ApiItem>): IYamlTocItem[] {\r\n const tocItems: IYamlTocItem[] = [];\r\n for (const apiItem of apiItems) {\r\n let tocItem: IYamlTocItem;\r\n if (apiItem.kind === ApiItemKind.Namespace && !this.newDocfxNamespaces) {\r\n tocItem = {\r\n name: this._getTocItemName(apiItem)\r\n };\r\n } else {\r\n if (this._shouldEmbed(apiItem.kind)) {\r\n // Don't generate table of contents items for embedded definitions\r\n continue;\r\n }\r\n\r\n tocItem = {\r\n name: this._getTocItemName(apiItem),\r\n uid: this._getUid(apiItem)\r\n };\r\n\r\n if (apiItem.kind !== ApiItemKind.Package) {\r\n this._filterItem(apiItem, tocItem);\r\n }\r\n }\r\n\r\n tocItems.push(tocItem);\r\n\r\n const children: ApiItem[] = this._getLogicalChildren(apiItem);\r\n const childItems: IYamlTocItem[] = this._buildTocItems2(children);\r\n if (childItems.length > 0) {\r\n tocItem.items = childItems;\r\n }\r\n }\r\n return tocItems;\r\n }\r\n\r\n // Parses the tocConfig object to build a pointers map of nodes where we want to sort out the API items\r\n private _generateTocPointersMap(tocConfig: IYamlTocFile | IYamlTocItem): void {\r\n const { catchAllCategory } = this._config;\r\n\r\n if (tocConfig.items) {\r\n for (const tocItem of tocConfig.items) {\r\n if (tocItem.items && tocItem.items.length > 0 && this._shouldNotIncludeInPointersMap(tocItem)) {\r\n this._generateTocPointersMap(tocItem);\r\n } else {\r\n // check for presence of the `catchAllCategory` config option\r\n if (catchAllCategory && tocItem.name === catchAllCategory) {\r\n this._catchAllPointer = tocItem;\r\n } else {\r\n this._tocPointerMap[tocItem.name] = tocItem;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Filtering out the api-item by inlineTags or category name presence in the item name.\r\n */\r\n private _filterItem(apiItem: ApiItem, tocItem: IYamlTocItem): void {\r\n const { categoryInlineTag, categorizeByName } = this._config;\r\n const { name: itemName } = tocItem;\r\n let filtered: boolean = false;\r\n\r\n // First we attempt to filter by inline tag if provided.\r\n if (apiItem instanceof ApiDocumentedItem) {\r\n const docInlineTag: DocInlineTag | undefined = categoryInlineTag\r\n ? this._findInlineTagByName(categoryInlineTag, apiItem.tsdocComment)\r\n : undefined;\r\n\r\n const tagContent: string | undefined =\r\n docInlineTag && docInlineTag.tagContent && docInlineTag.tagContent.trim();\r\n\r\n if (tagContent && this._tocPointerMap[tagContent]) {\r\n // null assertion used because when pointer map was created we checked for presence of empty `items` array\r\n this._tocPointerMap[tagContent].items!.push(tocItem);\r\n filtered = true;\r\n }\r\n }\r\n\r\n // If not filtered by inline tag and `categorizeByName` config is enabled attempt to filter it by category name.\r\n if (!filtered && categorizeByName) {\r\n const pointers: string[] = Object.keys(this._tocPointerMap);\r\n for (let i: number = 0, length: number = pointers.length; i < length; i++) {\r\n if (itemName.indexOf(pointers[i]) !== -1) {\r\n // null assertion used because when pointer map was created we checked for presence of empty `items` array\r\n this._tocPointerMap[pointers[i]].items!.push(tocItem);\r\n filtered = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // If item still not filtered and a `catchAllCategory` config provided push it to it.\r\n if (!filtered && this._catchAllPointer && this._catchAllPointer.items) {\r\n this._catchAllPointer.items.push(tocItem);\r\n }\r\n }\r\n\r\n // This is a direct copy of a @docCategory inline tag finder in office-ui-fabric-react,\r\n // but is generic enough to be used for any inline tag\r\n private _findInlineTagByName(\r\n tagName: string,\r\n docComment: DocComment | undefined\r\n ): DocInlineTag | undefined {\r\n const tagNameToCheck: string = `@${tagName}`;\r\n\r\n if (docComment instanceof DocInlineTag) {\r\n if (docComment.tagName === tagNameToCheck) {\r\n return docComment;\r\n }\r\n }\r\n if (docComment) {\r\n for (const childNode of docComment.getChildNodes()) {\r\n const result: DocInlineTag | undefined = this._findInlineTagByName(tagName, childNode as DocComment);\r\n if (result !== undefined) {\r\n return result;\r\n }\r\n }\r\n }\r\n return undefined;\r\n }\r\n\r\n private _shouldNotIncludeInPointersMap(item: IYamlTocItem): boolean {\r\n const { nonEmptyCategoryNodeNames } = this._config;\r\n if (nonEmptyCategoryNodeNames && nonEmptyCategoryNodeNames.length) {\r\n return nonEmptyCategoryNodeNames.indexOf(item.name) === -1;\r\n }\r\n return true;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ExperimentalYamlDocumenter.js","sourceRoot":"","sources":["../../src/documenters/ExperimentalYamlDocumenter.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\r\n// See LICENSE in the project root for license information.\r\n\r\nimport { DocComment, DocInlineTag } from '@microsoft/tsdoc';\r\nimport { ApiModel, ApiItem, ApiItemKind, ApiDocumentedItem } from '@microsoft/api-extractor-model';\r\n\r\nimport { IConfigTableOfContents } from './IConfigFile';\r\nimport { IYamlTocItem, IYamlTocFile } from '../yaml/IYamlTocFile';\r\nimport { YamlDocumenter } from './YamlDocumenter';\r\nimport { DocumenterConfig } from './DocumenterConfig';\r\n\r\n/**\r\n * EXPERIMENTAL - This documenter is a prototype of a new config file driven mode of operation for\r\n * API Documenter. It is not ready for general usage yet. Its design may change in the future.\r\n */\r\nexport class ExperimentalYamlDocumenter extends YamlDocumenter {\r\n private _config: IConfigTableOfContents;\r\n private _tocPointerMap: { [key: string]: IYamlTocItem };\r\n private _catchAllPointer: IYamlTocItem | undefined;\r\n\r\n public constructor(apiModel: ApiModel, documenterConfig: DocumenterConfig) {\r\n super(apiModel, documenterConfig.configFile.newDocfxNamespaces);\r\n this._config = documenterConfig.configFile.tableOfContents!;\r\n\r\n this._tocPointerMap = {};\r\n\r\n this._generateTocPointersMap(this._config.tocConfig);\r\n }\r\n\r\n /** @override */\r\n protected buildYamlTocFile(apiItems: ReadonlyArray<ApiItem>): IYamlTocFile {\r\n this._buildTocItems2(apiItems);\r\n return this._config.tocConfig;\r\n }\r\n\r\n private _buildTocItems2(apiItems: ReadonlyArray<ApiItem>): IYamlTocItem[] {\r\n const tocItems: IYamlTocItem[] = [];\r\n for (const apiItem of apiItems) {\r\n let tocItem: IYamlTocItem;\r\n if (apiItem.kind === ApiItemKind.Namespace && !this.newDocfxNamespaces) {\r\n tocItem = {\r\n name: this._getTocItemName(apiItem)\r\n };\r\n } else {\r\n if (this._shouldEmbed(apiItem.kind)) {\r\n // Don't generate table of contents items for embedded definitions\r\n continue;\r\n }\r\n\r\n tocItem = {\r\n name: this._getTocItemName(apiItem),\r\n uid: this._getUid(apiItem)\r\n };\r\n\r\n if (apiItem.kind !== ApiItemKind.Package) {\r\n this._filterItem(apiItem, tocItem);\r\n }\r\n }\r\n\r\n tocItems.push(tocItem);\r\n\r\n const children: ApiItem[] = this._getLogicalChildren(apiItem);\r\n const childItems: IYamlTocItem[] = this._buildTocItems2(children);\r\n if (childItems.length > 0) {\r\n tocItem.items = childItems;\r\n }\r\n }\r\n return tocItems;\r\n }\r\n\r\n // Parses the tocConfig object to build a pointers map of nodes where we want to sort out the API items\r\n private _generateTocPointersMap(tocConfig: IYamlTocFile | IYamlTocItem): void {\r\n const { catchAllCategory } = this._config;\r\n\r\n if (tocConfig.items) {\r\n for (const tocItem of tocConfig.items) {\r\n if (tocItem.items && tocItem.items.length > 0 && this._shouldNotIncludeInPointersMap(tocItem)) {\r\n this._generateTocPointersMap(tocItem);\r\n } else {\r\n // check for presence of the `catchAllCategory` config option\r\n if (catchAllCategory && tocItem.name === catchAllCategory) {\r\n this._catchAllPointer = tocItem;\r\n } else {\r\n this._tocPointerMap[tocItem.name] = tocItem;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Filtering out the api-item by inlineTags or category name presence in the item name.\r\n */\r\n private _filterItem(apiItem: ApiItem, tocItem: IYamlTocItem): void {\r\n const { categoryInlineTag, categorizeByName } = this._config;\r\n const { name: itemName } = tocItem;\r\n let filtered: boolean = false;\r\n\r\n // First we attempt to filter by inline tag if provided.\r\n if (apiItem instanceof ApiDocumentedItem) {\r\n const docInlineTag: DocInlineTag | undefined = categoryInlineTag\r\n ? this._findInlineTagByName(categoryInlineTag, apiItem.tsdocComment)\r\n : undefined;\r\n\r\n const tagContent: string | undefined =\r\n docInlineTag && docInlineTag.tagContent && docInlineTag.tagContent.trim();\r\n\r\n if (tagContent && this._tocPointerMap[tagContent]) {\r\n // null assertion used because when pointer map was created we checked for presence of empty `items` array\r\n this._tocPointerMap[tagContent].items!.push(tocItem);\r\n filtered = true;\r\n }\r\n }\r\n\r\n // If not filtered by inline tag and `categorizeByName` config is enabled attempt to filter it by category name.\r\n if (!filtered && categorizeByName) {\r\n const pointers: string[] = Object.keys(this._tocPointerMap);\r\n for (let i: number = 0, length: number = pointers.length; i < length; i++) {\r\n if (itemName.indexOf(pointers[i]) !== -1) {\r\n // null assertion used because when pointer map was created we checked for presence of empty `items` array\r\n this._tocPointerMap[pointers[i]].items!.push(tocItem);\r\n filtered = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // If item still not filtered and a `catchAllCategory` config provided push it to it.\r\n if (!filtered && this._catchAllPointer && this._catchAllPointer.items) {\r\n this._catchAllPointer.items.push(tocItem);\r\n }\r\n }\r\n\r\n // This is a direct copy of a @docCategory inline tag finder in office-ui-fabric-react,\r\n // but is generic enough to be used for any inline tag\r\n private _findInlineTagByName(\r\n tagName: string,\r\n docComment: DocComment | undefined\r\n ): DocInlineTag | undefined {\r\n const tagNameToCheck: string = `@${tagName}`;\r\n\r\n if (docComment instanceof DocInlineTag) {\r\n if (docComment.tagName === tagNameToCheck) {\r\n return docComment;\r\n }\r\n }\r\n if (docComment) {\r\n for (const childNode of docComment.getChildNodes()) {\r\n const result: DocInlineTag | undefined = this._findInlineTagByName(tagName, childNode as DocComment);\r\n if (result !== undefined) {\r\n return result;\r\n }\r\n }\r\n }\r\n return undefined;\r\n }\r\n\r\n private _shouldNotIncludeInPointersMap(item: IYamlTocItem): boolean {\r\n const { nonEmptyCategoryNodeNames } = this._config;\r\n if (nonEmptyCategoryNodeNames && nonEmptyCategoryNodeNames.length) {\r\n return nonEmptyCategoryNodeNames.indexOf(item.name) === -1;\r\n }\r\n return true;\r\n }\r\n}\r\n"]}
|
|
@@ -78,45 +78,45 @@ class MarkdownDocumenter {
|
|
|
78
78
|
this._writeBreadcrumb(output, apiItem);
|
|
79
79
|
const scopedName = apiItem.getScopedNameWithinPackage();
|
|
80
80
|
switch (apiItem.kind) {
|
|
81
|
-
case
|
|
81
|
+
case api_extractor_model_1.ApiItemKind.Class:
|
|
82
82
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} class` }));
|
|
83
83
|
break;
|
|
84
|
-
case
|
|
84
|
+
case api_extractor_model_1.ApiItemKind.Enum:
|
|
85
85
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} enum` }));
|
|
86
86
|
break;
|
|
87
|
-
case
|
|
87
|
+
case api_extractor_model_1.ApiItemKind.Interface:
|
|
88
88
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} interface` }));
|
|
89
89
|
break;
|
|
90
|
-
case
|
|
91
|
-
case
|
|
90
|
+
case api_extractor_model_1.ApiItemKind.Constructor:
|
|
91
|
+
case api_extractor_model_1.ApiItemKind.ConstructSignature:
|
|
92
92
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: scopedName }));
|
|
93
93
|
break;
|
|
94
|
-
case
|
|
95
|
-
case
|
|
94
|
+
case api_extractor_model_1.ApiItemKind.Method:
|
|
95
|
+
case api_extractor_model_1.ApiItemKind.MethodSignature:
|
|
96
96
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} method` }));
|
|
97
97
|
break;
|
|
98
|
-
case
|
|
98
|
+
case api_extractor_model_1.ApiItemKind.Function:
|
|
99
99
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} function` }));
|
|
100
100
|
break;
|
|
101
|
-
case
|
|
101
|
+
case api_extractor_model_1.ApiItemKind.Model:
|
|
102
102
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `API Reference` }));
|
|
103
103
|
break;
|
|
104
|
-
case
|
|
104
|
+
case api_extractor_model_1.ApiItemKind.Namespace:
|
|
105
105
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} namespace` }));
|
|
106
106
|
break;
|
|
107
|
-
case
|
|
107
|
+
case api_extractor_model_1.ApiItemKind.Package:
|
|
108
108
|
console.log(`Writing ${apiItem.displayName} package`);
|
|
109
109
|
const unscopedPackageName = node_core_library_1.PackageName.getUnscopedName(apiItem.displayName);
|
|
110
110
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${unscopedPackageName} package` }));
|
|
111
111
|
break;
|
|
112
|
-
case
|
|
113
|
-
case
|
|
112
|
+
case api_extractor_model_1.ApiItemKind.Property:
|
|
113
|
+
case api_extractor_model_1.ApiItemKind.PropertySignature:
|
|
114
114
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} property` }));
|
|
115
115
|
break;
|
|
116
|
-
case
|
|
116
|
+
case api_extractor_model_1.ApiItemKind.TypeAlias:
|
|
117
117
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} type` }));
|
|
118
118
|
break;
|
|
119
|
-
case
|
|
119
|
+
case api_extractor_model_1.ApiItemKind.Variable:
|
|
120
120
|
output.appendNode(new DocHeading_1.DocHeading({ configuration, title: `${scopedName} variable` }));
|
|
121
121
|
break;
|
|
122
122
|
default:
|
|
@@ -173,47 +173,47 @@ class MarkdownDocumenter {
|
|
|
173
173
|
}
|
|
174
174
|
let appendRemarks = true;
|
|
175
175
|
switch (apiItem.kind) {
|
|
176
|
-
case
|
|
177
|
-
case
|
|
178
|
-
case
|
|
179
|
-
case
|
|
176
|
+
case api_extractor_model_1.ApiItemKind.Class:
|
|
177
|
+
case api_extractor_model_1.ApiItemKind.Interface:
|
|
178
|
+
case api_extractor_model_1.ApiItemKind.Namespace:
|
|
179
|
+
case api_extractor_model_1.ApiItemKind.Package:
|
|
180
180
|
this._writeRemarksSection(output, apiItem);
|
|
181
181
|
appendRemarks = false;
|
|
182
182
|
break;
|
|
183
183
|
}
|
|
184
184
|
switch (apiItem.kind) {
|
|
185
|
-
case
|
|
185
|
+
case api_extractor_model_1.ApiItemKind.Class:
|
|
186
186
|
this._writeClassTables(output, apiItem);
|
|
187
187
|
break;
|
|
188
|
-
case
|
|
188
|
+
case api_extractor_model_1.ApiItemKind.Enum:
|
|
189
189
|
this._writeEnumTables(output, apiItem);
|
|
190
190
|
break;
|
|
191
|
-
case
|
|
191
|
+
case api_extractor_model_1.ApiItemKind.Interface:
|
|
192
192
|
this._writeInterfaceTables(output, apiItem);
|
|
193
193
|
break;
|
|
194
|
-
case
|
|
195
|
-
case
|
|
196
|
-
case
|
|
197
|
-
case
|
|
198
|
-
case
|
|
194
|
+
case api_extractor_model_1.ApiItemKind.Constructor:
|
|
195
|
+
case api_extractor_model_1.ApiItemKind.ConstructSignature:
|
|
196
|
+
case api_extractor_model_1.ApiItemKind.Method:
|
|
197
|
+
case api_extractor_model_1.ApiItemKind.MethodSignature:
|
|
198
|
+
case api_extractor_model_1.ApiItemKind.Function:
|
|
199
199
|
this._writeParameterTables(output, apiItem);
|
|
200
200
|
this._writeThrowsSection(output, apiItem);
|
|
201
201
|
break;
|
|
202
|
-
case
|
|
202
|
+
case api_extractor_model_1.ApiItemKind.Namespace:
|
|
203
203
|
this._writePackageOrNamespaceTables(output, apiItem);
|
|
204
204
|
break;
|
|
205
|
-
case
|
|
205
|
+
case api_extractor_model_1.ApiItemKind.Model:
|
|
206
206
|
this._writeModelTable(output, apiItem);
|
|
207
207
|
break;
|
|
208
|
-
case
|
|
208
|
+
case api_extractor_model_1.ApiItemKind.Package:
|
|
209
209
|
this._writePackageOrNamespaceTables(output, apiItem);
|
|
210
210
|
break;
|
|
211
|
-
case
|
|
212
|
-
case
|
|
211
|
+
case api_extractor_model_1.ApiItemKind.Property:
|
|
212
|
+
case api_extractor_model_1.ApiItemKind.PropertySignature:
|
|
213
213
|
break;
|
|
214
|
-
case
|
|
214
|
+
case api_extractor_model_1.ApiItemKind.TypeAlias:
|
|
215
215
|
break;
|
|
216
|
-
case
|
|
216
|
+
case api_extractor_model_1.ApiItemKind.Variable:
|
|
217
217
|
break;
|
|
218
218
|
default:
|
|
219
219
|
throw new Error('Unsupported API item kind: ' + apiItem.kind);
|
|
@@ -293,7 +293,7 @@ class MarkdownDocumenter {
|
|
|
293
293
|
}
|
|
294
294
|
}
|
|
295
295
|
if (apiItem instanceof api_extractor_model_1.ApiTypeAlias) {
|
|
296
|
-
const refs = apiItem.excerptTokens.filter((token) => token.kind ===
|
|
296
|
+
const refs = apiItem.excerptTokens.filter((token) => token.kind === api_extractor_model_1.ExcerptTokenKind.Reference &&
|
|
297
297
|
token.canonicalReference &&
|
|
298
298
|
this._apiModel.resolveDeclarationReference(token.canonicalReference, undefined).resolvedApiItem);
|
|
299
299
|
if (refs.length > 0) {
|
|
@@ -371,7 +371,7 @@ class MarkdownDocumenter {
|
|
|
371
371
|
this._createDescriptionCell(apiMember)
|
|
372
372
|
]);
|
|
373
373
|
switch (apiMember.kind) {
|
|
374
|
-
case
|
|
374
|
+
case api_extractor_model_1.ApiItemKind.Package:
|
|
375
375
|
packagesTable.addRow(row);
|
|
376
376
|
this._writeApiItemPage(apiMember);
|
|
377
377
|
break;
|
|
@@ -415,7 +415,7 @@ class MarkdownDocumenter {
|
|
|
415
415
|
configuration,
|
|
416
416
|
headerTitles: ['Type Alias', 'Description']
|
|
417
417
|
});
|
|
418
|
-
const apiMembers = apiContainer.kind ===
|
|
418
|
+
const apiMembers = apiContainer.kind === api_extractor_model_1.ApiItemKind.Package
|
|
419
419
|
? apiContainer.entryPoints[0].members
|
|
420
420
|
: apiContainer.members;
|
|
421
421
|
for (const apiMember of apiMembers) {
|
|
@@ -424,31 +424,31 @@ class MarkdownDocumenter {
|
|
|
424
424
|
this._createDescriptionCell(apiMember)
|
|
425
425
|
]);
|
|
426
426
|
switch (apiMember.kind) {
|
|
427
|
-
case
|
|
427
|
+
case api_extractor_model_1.ApiItemKind.Class:
|
|
428
428
|
classesTable.addRow(row);
|
|
429
429
|
this._writeApiItemPage(apiMember);
|
|
430
430
|
break;
|
|
431
|
-
case
|
|
431
|
+
case api_extractor_model_1.ApiItemKind.Enum:
|
|
432
432
|
enumerationsTable.addRow(row);
|
|
433
433
|
this._writeApiItemPage(apiMember);
|
|
434
434
|
break;
|
|
435
|
-
case
|
|
435
|
+
case api_extractor_model_1.ApiItemKind.Interface:
|
|
436
436
|
interfacesTable.addRow(row);
|
|
437
437
|
this._writeApiItemPage(apiMember);
|
|
438
438
|
break;
|
|
439
|
-
case
|
|
439
|
+
case api_extractor_model_1.ApiItemKind.Namespace:
|
|
440
440
|
namespacesTable.addRow(row);
|
|
441
441
|
this._writeApiItemPage(apiMember);
|
|
442
442
|
break;
|
|
443
|
-
case
|
|
443
|
+
case api_extractor_model_1.ApiItemKind.Function:
|
|
444
444
|
functionsTable.addRow(row);
|
|
445
445
|
this._writeApiItemPage(apiMember);
|
|
446
446
|
break;
|
|
447
|
-
case
|
|
447
|
+
case api_extractor_model_1.ApiItemKind.TypeAlias:
|
|
448
448
|
typeAliasesTable.addRow(row);
|
|
449
449
|
this._writeApiItemPage(apiMember);
|
|
450
450
|
break;
|
|
451
|
-
case
|
|
451
|
+
case api_extractor_model_1.ApiItemKind.Variable:
|
|
452
452
|
variablesTable.addRow(row);
|
|
453
453
|
this._writeApiItemPage(apiMember);
|
|
454
454
|
break;
|
|
@@ -506,7 +506,7 @@ class MarkdownDocumenter {
|
|
|
506
506
|
});
|
|
507
507
|
for (const apiMember of apiClass.members) {
|
|
508
508
|
switch (apiMember.kind) {
|
|
509
|
-
case
|
|
509
|
+
case api_extractor_model_1.ApiItemKind.Constructor: {
|
|
510
510
|
constructorsTable.addRow(new DocTableRow_1.DocTableRow({ configuration }, [
|
|
511
511
|
this._createTitleCell(apiMember),
|
|
512
512
|
this._createModifiersCell(apiMember),
|
|
@@ -515,7 +515,7 @@ class MarkdownDocumenter {
|
|
|
515
515
|
this._writeApiItemPage(apiMember);
|
|
516
516
|
break;
|
|
517
517
|
}
|
|
518
|
-
case
|
|
518
|
+
case api_extractor_model_1.ApiItemKind.Method: {
|
|
519
519
|
methodsTable.addRow(new DocTableRow_1.DocTableRow({ configuration }, [
|
|
520
520
|
this._createTitleCell(apiMember),
|
|
521
521
|
this._createModifiersCell(apiMember),
|
|
@@ -524,7 +524,7 @@ class MarkdownDocumenter {
|
|
|
524
524
|
this._writeApiItemPage(apiMember);
|
|
525
525
|
break;
|
|
526
526
|
}
|
|
527
|
-
case
|
|
527
|
+
case api_extractor_model_1.ApiItemKind.Property: {
|
|
528
528
|
if (apiMember.isEventProperty) {
|
|
529
529
|
eventsTable.addRow(new DocTableRow_1.DocTableRow({ configuration }, [
|
|
530
530
|
this._createTitleCell(apiMember),
|
|
@@ -611,8 +611,8 @@ class MarkdownDocumenter {
|
|
|
611
611
|
});
|
|
612
612
|
for (const apiMember of apiClass.members) {
|
|
613
613
|
switch (apiMember.kind) {
|
|
614
|
-
case
|
|
615
|
-
case
|
|
614
|
+
case api_extractor_model_1.ApiItemKind.ConstructSignature:
|
|
615
|
+
case api_extractor_model_1.ApiItemKind.MethodSignature: {
|
|
616
616
|
methodsTable.addRow(new DocTableRow_1.DocTableRow({ configuration }, [
|
|
617
617
|
this._createTitleCell(apiMember),
|
|
618
618
|
this._createDescriptionCell(apiMember)
|
|
@@ -620,7 +620,7 @@ class MarkdownDocumenter {
|
|
|
620
620
|
this._writeApiItemPage(apiMember);
|
|
621
621
|
break;
|
|
622
622
|
}
|
|
623
|
-
case
|
|
623
|
+
case api_extractor_model_1.ApiItemKind.PropertySignature: {
|
|
624
624
|
if (apiMember.isEventProperty) {
|
|
625
625
|
eventsTable.addRow(new DocTableRow_1.DocTableRow({ configuration }, [
|
|
626
626
|
this._createTitleCell(apiMember),
|
|
@@ -721,7 +721,7 @@ class MarkdownDocumenter {
|
|
|
721
721
|
// discard any newlines and let the renderer do normal word-wrapping.
|
|
722
722
|
const unwrappedTokenText = token.text.replace(/[\r\n]+/g, ' ');
|
|
723
723
|
// If it's hyperlinkable, then append a DocLinkTag
|
|
724
|
-
if (token.kind ===
|
|
724
|
+
if (token.kind === api_extractor_model_1.ExcerptTokenKind.Reference && token.canonicalReference) {
|
|
725
725
|
const apiItemResult = this._apiModel.resolveDeclarationReference(token.canonicalReference, undefined);
|
|
726
726
|
if (apiItemResult.resolvedApiItem) {
|
|
727
727
|
docNodeContainer.appendNode(new tsdoc_1.DocLinkTag({
|
|
@@ -815,8 +815,8 @@ class MarkdownDocumenter {
|
|
|
815
815
|
}));
|
|
816
816
|
for (const hierarchyItem of apiItem.getHierarchy()) {
|
|
817
817
|
switch (hierarchyItem.kind) {
|
|
818
|
-
case
|
|
819
|
-
case
|
|
818
|
+
case api_extractor_model_1.ApiItemKind.Model:
|
|
819
|
+
case api_extractor_model_1.ApiItemKind.EntryPoint:
|
|
820
820
|
// We don't show the model as part of the breadcrumb because it is the root-level container.
|
|
821
821
|
// We don't show the entry point because today API Extractor doesn't support multiple entry points;
|
|
822
822
|
// this may change in the future.
|
|
@@ -865,7 +865,7 @@ class MarkdownDocumenter {
|
|
|
865
865
|
}
|
|
866
866
|
}
|
|
867
867
|
_getFilenameForApiItem(apiItem) {
|
|
868
|
-
if (apiItem.kind ===
|
|
868
|
+
if (apiItem.kind === api_extractor_model_1.ApiItemKind.Model) {
|
|
869
869
|
return 'index.md';
|
|
870
870
|
}
|
|
871
871
|
let baseName = '';
|
|
@@ -880,11 +880,11 @@ class MarkdownDocumenter {
|
|
|
880
880
|
}
|
|
881
881
|
}
|
|
882
882
|
switch (hierarchyItem.kind) {
|
|
883
|
-
case
|
|
884
|
-
case
|
|
885
|
-
case
|
|
883
|
+
case api_extractor_model_1.ApiItemKind.Model:
|
|
884
|
+
case api_extractor_model_1.ApiItemKind.EntryPoint:
|
|
885
|
+
case api_extractor_model_1.ApiItemKind.EnumMember:
|
|
886
886
|
break;
|
|
887
|
-
case
|
|
887
|
+
case api_extractor_model_1.ApiItemKind.Package:
|
|
888
888
|
baseName = Utilities_1.Utilities.getSafeFilenameForName(node_core_library_1.PackageName.getUnscopedName(hierarchyItem.displayName));
|
|
889
889
|
break;
|
|
890
890
|
default:
|