@microsoft/api-documenter 7.14.0 → 7.14.1

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 CHANGED
@@ -1,6 +1,27 @@
1
1
  {
2
2
  "name": "@microsoft/api-documenter",
3
3
  "entries": [
4
+ {
5
+ "version": "7.14.1",
6
+ "tag": "@microsoft/api-documenter_v7.14.1",
7
+ "date": "Wed, 05 Jan 2022 16:07:47 GMT",
8
+ "comments": {
9
+ "dependency": [
10
+ {
11
+ "comment": "Updating dependency \"@microsoft/api-extractor-model\" to `7.15.3`"
12
+ },
13
+ {
14
+ "comment": "Updating dependency \"@rushstack/node-core-library\" to `3.45.0`"
15
+ },
16
+ {
17
+ "comment": "Updating dependency \"@rushstack/heft\" to `0.44.2`"
18
+ },
19
+ {
20
+ "comment": "Updating dependency \"@rushstack/heft-node-rig\" to `1.5.2`"
21
+ }
22
+ ]
23
+ }
24
+ },
4
25
  {
5
26
  "version": "7.14.0",
6
27
  "tag": "@microsoft/api-documenter_v7.14.0",
package/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  # Change Log - @microsoft/api-documenter
2
2
 
3
- This log was last generated on Wed, 05 Jan 2022 01:09:53 GMT and should not be manually modified.
3
+ This log was last generated on Wed, 05 Jan 2022 16:07:47 GMT and should not be manually modified.
4
+
5
+ ## 7.14.1
6
+ Wed, 05 Jan 2022 16:07:47 GMT
7
+
8
+ _Version update only_
4
9
 
5
10
  ## 7.14.0
6
11
  Wed, 05 Jan 2022 01:09:53 GMT
@@ -57,7 +57,7 @@ class BaseAction extends ts_command_line_1.CommandLineAction {
57
57
  }
58
58
  const outputFolder = this._outputFolderParameter.value || `./${this.actionName}`;
59
59
  node_core_library_1.FileSystem.ensureFolder(outputFolder);
60
- for (const filename of node_core_library_1.FileSystem.readFolder(inputFolder)) {
60
+ for (const filename of node_core_library_1.FileSystem.readFolderItemNames(inputFolder)) {
61
61
  if (filename.match(/\.api\.json$/i)) {
62
62
  console.log(`Reading ${filename}`);
63
63
  const filenamePath = path.join(inputFolder, filename);
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAction.js","sourceRoot":"","sources":["../../src/cli/BaseAction.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport * as path from 'path';\nimport * as tsdoc from '@microsoft/tsdoc';\nimport colors from 'colors';\n\nimport { CommandLineAction, CommandLineStringParameter } from '@rushstack/ts-command-line';\nimport { FileSystem } from '@rushstack/node-core-library';\nimport {\n ApiModel,\n ApiItem,\n ApiItemContainerMixin,\n ApiDocumentedItem,\n IResolveDeclarationReferenceResult\n} from '@microsoft/api-extractor-model';\n\nexport interface IBuildApiModelResult {\n apiModel: ApiModel;\n inputFolder: string;\n outputFolder: string;\n}\n\nexport abstract class BaseAction extends CommandLineAction {\n private _inputFolderParameter!: CommandLineStringParameter;\n private _outputFolderParameter!: CommandLineStringParameter;\n\n protected onDefineParameters(): void {\n // override\n this._inputFolderParameter = this.defineStringParameter({\n parameterLongName: '--input-folder',\n parameterShortName: '-i',\n argumentName: 'FOLDER1',\n description:\n `Specifies the input folder containing the *.api.json files to be processed.` +\n ` If omitted, the default is \"./input\"`\n });\n\n this._outputFolderParameter = this.defineStringParameter({\n parameterLongName: '--output-folder',\n parameterShortName: '-o',\n argumentName: 'FOLDER2',\n description:\n `Specifies the output folder where the documentation will be written.` +\n ` ANY EXISTING CONTENTS WILL BE DELETED!` +\n ` If omitted, the default is \"./${this.actionName}\"`\n });\n }\n\n protected buildApiModel(): IBuildApiModelResult {\n const apiModel: ApiModel = new ApiModel();\n\n const inputFolder: string = this._inputFolderParameter.value || './input';\n if (!FileSystem.exists(inputFolder)) {\n throw new Error('The input folder does not exist: ' + inputFolder);\n }\n\n const outputFolder: string = this._outputFolderParameter.value || `./${this.actionName}`;\n FileSystem.ensureFolder(outputFolder);\n\n for (const filename of FileSystem.readFolder(inputFolder)) {\n if (filename.match(/\\.api\\.json$/i)) {\n console.log(`Reading ${filename}`);\n const filenamePath: string = path.join(inputFolder, filename);\n apiModel.loadPackage(filenamePath);\n }\n }\n\n this._applyInheritDoc(apiModel, apiModel);\n\n return { apiModel, inputFolder, outputFolder };\n }\n\n // TODO: This is a temporary workaround. The long term plan is for API Extractor's DocCommentEnhancer\n // to apply all @inheritDoc tags before the .api.json file is written.\n // See DocCommentEnhancer._applyInheritDoc() for more info.\n private _applyInheritDoc(apiItem: ApiItem, apiModel: ApiModel): void {\n if (apiItem instanceof ApiDocumentedItem) {\n if (apiItem.tsdocComment) {\n const inheritDocTag: tsdoc.DocInheritDocTag | undefined = apiItem.tsdocComment.inheritDocTag;\n\n if (inheritDocTag && inheritDocTag.declarationReference) {\n // Attempt to resolve the declaration reference\n const result: IResolveDeclarationReferenceResult = apiModel.resolveDeclarationReference(\n inheritDocTag.declarationReference,\n apiItem\n );\n\n if (result.errorMessage) {\n console.log(\n colors.yellow(\n `Warning: Unresolved @inheritDoc tag for ${apiItem.displayName}: ` + result.errorMessage\n )\n );\n } else {\n if (\n result.resolvedApiItem instanceof ApiDocumentedItem &&\n result.resolvedApiItem.tsdocComment &&\n result.resolvedApiItem !== apiItem\n ) {\n this._copyInheritedDocs(apiItem.tsdocComment, result.resolvedApiItem.tsdocComment);\n }\n }\n }\n }\n }\n\n // Recurse members\n if (ApiItemContainerMixin.isBaseClassOf(apiItem)) {\n for (const member of apiItem.members) {\n this._applyInheritDoc(member, apiModel);\n }\n }\n }\n\n /**\n * Copy the content from `sourceDocComment` to `targetDocComment`.\n * This code is borrowed from DocCommentEnhancer as a temporary workaround.\n */\n private _copyInheritedDocs(targetDocComment: tsdoc.DocComment, sourceDocComment: tsdoc.DocComment): void {\n targetDocComment.summarySection = sourceDocComment.summarySection;\n targetDocComment.remarksBlock = sourceDocComment.remarksBlock;\n\n targetDocComment.params.clear();\n for (const param of sourceDocComment.params) {\n targetDocComment.params.add(param);\n }\n for (const typeParam of sourceDocComment.typeParams) {\n targetDocComment.typeParams.add(typeParam);\n }\n targetDocComment.returnsBlock = sourceDocComment.returnsBlock;\n\n targetDocComment.inheritDocTag = undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"BaseAction.js","sourceRoot":"","sources":["../../src/cli/BaseAction.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport * as path from 'path';\nimport * as tsdoc from '@microsoft/tsdoc';\nimport colors from 'colors';\n\nimport { CommandLineAction, CommandLineStringParameter } from '@rushstack/ts-command-line';\nimport { FileSystem } from '@rushstack/node-core-library';\nimport {\n ApiModel,\n ApiItem,\n ApiItemContainerMixin,\n ApiDocumentedItem,\n IResolveDeclarationReferenceResult\n} from '@microsoft/api-extractor-model';\n\nexport interface IBuildApiModelResult {\n apiModel: ApiModel;\n inputFolder: string;\n outputFolder: string;\n}\n\nexport abstract class BaseAction extends CommandLineAction {\n private _inputFolderParameter!: CommandLineStringParameter;\n private _outputFolderParameter!: CommandLineStringParameter;\n\n protected onDefineParameters(): void {\n // override\n this._inputFolderParameter = this.defineStringParameter({\n parameterLongName: '--input-folder',\n parameterShortName: '-i',\n argumentName: 'FOLDER1',\n description:\n `Specifies the input folder containing the *.api.json files to be processed.` +\n ` If omitted, the default is \"./input\"`\n });\n\n this._outputFolderParameter = this.defineStringParameter({\n parameterLongName: '--output-folder',\n parameterShortName: '-o',\n argumentName: 'FOLDER2',\n description:\n `Specifies the output folder where the documentation will be written.` +\n ` ANY EXISTING CONTENTS WILL BE DELETED!` +\n ` If omitted, the default is \"./${this.actionName}\"`\n });\n }\n\n protected buildApiModel(): IBuildApiModelResult {\n const apiModel: ApiModel = new ApiModel();\n\n const inputFolder: string = this._inputFolderParameter.value || './input';\n if (!FileSystem.exists(inputFolder)) {\n throw new Error('The input folder does not exist: ' + inputFolder);\n }\n\n const outputFolder: string = this._outputFolderParameter.value || `./${this.actionName}`;\n FileSystem.ensureFolder(outputFolder);\n\n for (const filename of FileSystem.readFolderItemNames(inputFolder)) {\n if (filename.match(/\\.api\\.json$/i)) {\n console.log(`Reading ${filename}`);\n const filenamePath: string = path.join(inputFolder, filename);\n apiModel.loadPackage(filenamePath);\n }\n }\n\n this._applyInheritDoc(apiModel, apiModel);\n\n return { apiModel, inputFolder, outputFolder };\n }\n\n // TODO: This is a temporary workaround. The long term plan is for API Extractor's DocCommentEnhancer\n // to apply all @inheritDoc tags before the .api.json file is written.\n // See DocCommentEnhancer._applyInheritDoc() for more info.\n private _applyInheritDoc(apiItem: ApiItem, apiModel: ApiModel): void {\n if (apiItem instanceof ApiDocumentedItem) {\n if (apiItem.tsdocComment) {\n const inheritDocTag: tsdoc.DocInheritDocTag | undefined = apiItem.tsdocComment.inheritDocTag;\n\n if (inheritDocTag && inheritDocTag.declarationReference) {\n // Attempt to resolve the declaration reference\n const result: IResolveDeclarationReferenceResult = apiModel.resolveDeclarationReference(\n inheritDocTag.declarationReference,\n apiItem\n );\n\n if (result.errorMessage) {\n console.log(\n colors.yellow(\n `Warning: Unresolved @inheritDoc tag for ${apiItem.displayName}: ` + result.errorMessage\n )\n );\n } else {\n if (\n result.resolvedApiItem instanceof ApiDocumentedItem &&\n result.resolvedApiItem.tsdocComment &&\n result.resolvedApiItem !== apiItem\n ) {\n this._copyInheritedDocs(apiItem.tsdocComment, result.resolvedApiItem.tsdocComment);\n }\n }\n }\n }\n }\n\n // Recurse members\n if (ApiItemContainerMixin.isBaseClassOf(apiItem)) {\n for (const member of apiItem.members) {\n this._applyInheritDoc(member, apiModel);\n }\n }\n }\n\n /**\n * Copy the content from `sourceDocComment` to `targetDocComment`.\n * This code is borrowed from DocCommentEnhancer as a temporary workaround.\n */\n private _copyInheritedDocs(targetDocComment: tsdoc.DocComment, sourceDocComment: tsdoc.DocComment): void {\n targetDocComment.summarySection = sourceDocComment.summarySection;\n targetDocComment.remarksBlock = sourceDocComment.remarksBlock;\n\n targetDocComment.params.clear();\n for (const param of sourceDocComment.params) {\n targetDocComment.params.add(param);\n }\n for (const typeParam of sourceDocComment.typeParams) {\n targetDocComment.typeParams.add(typeParam);\n }\n targetDocComment.returnsBlock = sourceDocComment.returnsBlock;\n\n targetDocComment.inheritDocTag = undefined;\n }\n}\n"]}
@@ -17,7 +17,7 @@ function convert(inputPath, outputPath) {
17
17
  console.error(`input path: ${inputPath} is not exist`);
18
18
  return;
19
19
  }
20
- node_core_library_1.FileSystem.readFolder(inputPath).forEach((name) => {
20
+ node_core_library_1.FileSystem.readFolderItemNames(inputPath).forEach((name) => {
21
21
  const fpath = path_1.default.join(inputPath, name);
22
22
  if (node_core_library_1.FileSystem.getStatistics(fpath).isFile()) {
23
23
  // only convert yaml
@@ -1 +1 @@
1
- {"version":3,"file":"ToSdpConvertHelper.js","sourceRoot":"","sources":["../../src/utils/ToSdpConvertHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n IYamlItem,\n IYamlApiFile,\n IYamlSyntax,\n IYamlReferenceSpec,\n IYamlReference\n} from '../yaml/IYamlApiFile';\nimport {\n PackageYamlModel,\n EnumYamlModel,\n TypeAliasYamlModel,\n TypeYamlModel,\n FieldYamlModel,\n FunctionYamlModel,\n CommonYamlModel\n} from '../yaml/ISDPYamlFile';\nimport path from 'path';\nimport { FileSystem, Encoding, NewlineKind } from '@rushstack/node-core-library';\nimport yaml = require('js-yaml');\n\nexport function convertUDPYamlToSDP(folderPath: string): void {\n convert(folderPath, folderPath);\n}\n\nfunction convert(inputPath: string, outputPath: string): void {\n console.log();\n if (!FileSystem.exists(inputPath)) {\n console.error(`input path: ${inputPath} is not exist`);\n return;\n }\n\n FileSystem.readFolder(inputPath).forEach((name) => {\n const fpath: string = path.join(inputPath, name);\n if (FileSystem.getStatistics(fpath).isFile()) {\n // only convert yaml\n if (!name.endsWith('.yml')) {\n return;\n }\n // parse file\n const yamlContent: string = FileSystem.readFile(fpath, { encoding: Encoding.Utf8 });\n // only convert universalreference yaml\n const isLegacyYaml: boolean = yamlContent.startsWith('### YamlMime:UniversalReference');\n if (!isLegacyYaml) {\n return;\n }\n\n console.log(`convert file ${fpath} from udp to sdp`);\n\n const file: IYamlApiFile = yaml.safeLoad(yamlContent) as IYamlApiFile;\n const result: { model: CommonYamlModel; type: string } | undefined = convertToSDP(file);\n if (result && result.model) {\n const stringified: string = `### YamlMime:TS${result.type}\\n${yaml.safeDump(result.model, {\n lineWidth: 120\n })}`;\n FileSystem.writeFile(`${outputPath}/${name}`, stringified, {\n convertLineEndings: NewlineKind.CrLf,\n ensureFolderExists: true\n });\n } else {\n console.log('not target file ', fpath);\n }\n } else {\n // read contents\n convert(fpath, path.join(outputPath, name));\n }\n });\n}\n\nfunction convertToPackageSDP(transfomredClass: IYamlApiFile): PackageYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const packageModel: PackageYamlModel = {\n uid: element.uid,\n name: element.name!,\n type: 'package'\n };\n if (element.summary) {\n packageModel.summary = element.summary;\n } else {\n packageModel.summary = '';\n }\n\n // search in children\n if (element.children) {\n element.children.forEach((child) => {\n if (child.endsWith(':class')) {\n assignPackageModelFields(packageModel, 'classes', child);\n } else if (child.endsWith(':interface')) {\n assignPackageModelFields(packageModel, 'interfaces', child);\n } else if (child.endsWith(':enum')) {\n assignPackageModelFields(packageModel, 'enums', child);\n } else if (child.endsWith(':type')) {\n // version 1 ignore typeAlias\n // assignPackageModelFields(packageModel, \"typeAliases\", child);\n } else {\n // console.log(\"other type: \", child)\n }\n });\n }\n\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n switch (ele.type) {\n case 'typealias':\n // need generate typeAlias file for this\n break;\n case 'function':\n if (!packageModel.functions) {\n packageModel.functions = [];\n }\n packageModel.functions.push(convertToFunctionSDP(ele, element.uid, transfomredClass));\n break;\n default:\n // console.log(transfomredClass.items[0].name)\n console.log('[warning] not applied type(package): ', ele.type);\n }\n }\n\n return packageModel;\n}\n\nfunction assignPackageModelFields(\n packageModel: PackageYamlModel,\n name: 'classes' | 'interfaces' | 'enums' | 'typeAliases',\n uid: string\n): void {\n if (!packageModel[name]) {\n packageModel[name] = [];\n }\n packageModel[name]!.push(uid);\n}\n\nfunction convertToSDP(transfomredClass: IYamlApiFile): { model: CommonYamlModel; type: string } | undefined {\n const element: IYamlItem = transfomredClass.items[0];\n switch (element.type) {\n case 'class':\n case 'interface':\n return {\n model: convertToTypeSDP(transfomredClass, element.type === 'class'),\n type: 'Type'\n };\n case 'enum':\n if (transfomredClass.items.length < 2) {\n console.log(`[warning] enum ${element.uid}/${element.name} does not have fields`);\n return undefined;\n }\n return { model: convertToEnumSDP(transfomredClass), type: 'Enum' };\n case 'typealias':\n return { model: convertToTypeAliasSDP(element, transfomredClass), type: 'TypeAlias' };\n case 'package':\n return {\n model: convertToPackageSDP(transfomredClass),\n type: 'Package'\n };\n default:\n console.log('not applied type: ', element.type);\n return undefined;\n }\n}\n\nfunction convertToEnumSDP(transfomredClass: IYamlApiFile): EnumYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const fields: FieldYamlModel[] = [];\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n const field: FieldYamlModel = {\n name: ele.name!,\n uid: ele.uid,\n package: element.package!\n };\n\n if (ele.summary) {\n field.summary = ele.summary;\n } else {\n field.summary = '';\n }\n\n if (ele.numericValue) {\n field.value = ele.numericValue;\n }\n fields.push(field);\n }\n\n const result: EnumYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass),\n fields: fields\n };\n return result;\n}\n\nfunction convertToTypeAliasSDP(element: IYamlItem, transfomredClass: IYamlApiFile): TypeAliasYamlModel {\n const result: TypeAliasYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass)\n } as TypeAliasYamlModel;\n\n if (element.syntax) {\n result.syntax = element.syntax.content!;\n }\n return result;\n}\n\nfunction convertToTypeSDP(transfomredClass: IYamlApiFile, isClass: boolean): TypeYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const constructors: CommonYamlModel[] = [];\n const properties: CommonYamlModel[] = [];\n const methods: CommonYamlModel[] = [];\n const events: CommonYamlModel[] = [];\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n const item: CommonYamlModel = convertCommonYamlModel(ele, element.package!, transfomredClass);\n if (ele.type === 'constructor') {\n // interface does not need this field\n if (isClass) {\n constructors.push(item);\n }\n } else if (ele.type === 'property') {\n properties.push(item);\n } else if (ele.type === 'method') {\n methods.push(item);\n } else if (ele.type === 'event') {\n events.push(item);\n } else {\n console.log(`[warning] ${ele.uid}#${ele.name} is not applied sub type ${ele.type} for type yaml`);\n }\n }\n const result: TypeYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass),\n type: isClass ? 'class' : 'interface'\n };\n delete result.syntax;\n\n if (constructors.length > 0) {\n result.constructors = constructors;\n }\n\n if (properties.length > 0) {\n result.properties = properties;\n }\n\n if (methods.length > 0) {\n result.methods = methods;\n }\n\n if (events.length > 0) {\n result.events = events;\n }\n\n if (element.extends && element.extends.length > 0) {\n result.extends = convertSelfTypeToXref(element.extends[0] as string, transfomredClass);\n }\n return result;\n}\n\nfunction convertToFunctionSDP(\n element: IYamlItem,\n packageName: string,\n transfomredClass: IYamlApiFile\n): FunctionYamlModel {\n const model: CommonYamlModel = convertCommonYamlModel(element, packageName, transfomredClass);\n // don't need these fields\n delete model.fullName;\n return model;\n}\n\nfunction convertCommonYamlModel(\n element: IYamlItem,\n packageName: string,\n transfomredClass: IYamlApiFile\n): CommonYamlModel {\n const result: CommonYamlModel = {\n name: element.name!,\n uid: element.uid,\n package: packageName\n };\n\n if (element.fullName) {\n result.fullName = element.fullName;\n }\n\n if (element.summary) {\n result.summary = element.summary;\n } else {\n result.summary = '';\n }\n\n // because mustache meet same variable in different level\n // such as: { \"pre\": true, \"list\": [{}]}\n // if item in list wants to use pre but the pre is not assigned, it will use outer pre field.\n // so, there need to set below variable explict\n\n if (element.remarks) {\n result.remarks = element.remarks;\n } else {\n result.remarks = '';\n }\n\n if (element.example) {\n result.example = element.example;\n } else {\n result.example = [];\n }\n\n result.isPreview = element.isPreview;\n if (!result.isPreview) {\n result.isPreview = false;\n }\n\n if (element.deprecated) {\n result.isDeprecated = true;\n result.customDeprecatedMessage = element.deprecated.content;\n } else {\n result.isDeprecated = false;\n }\n\n if (element.syntax) {\n result.syntax = {};\n\n const syntax: IYamlSyntax = element.syntax;\n result.syntax.content = syntax.content;\n if (syntax.parameters && syntax.parameters.length > 0) {\n syntax.parameters?.forEach((it) => {\n delete it.optional;\n delete it.defaultValue;\n });\n result.syntax.parameters = syntax.parameters.map((it) => {\n return {\n ...it,\n id: it.id!,\n type: convertSelfTypeToXref(escapeMarkdown(it.type![0] as string), transfomredClass)\n };\n });\n }\n\n if (syntax.return) {\n result.syntax.return = {\n ...syntax.return,\n type: convertSelfTypeToXref(escapeMarkdown(syntax.return.type![0] as string), transfomredClass)\n };\n }\n }\n\n return result;\n}\n\nfunction escapeMarkdown(name: string): string {\n // eg: [key: string]: string\n const markdownLinkRegEx: RegExp = /^\\s*(\\[.+\\]):(.+)/g;\n return name.replace(markdownLinkRegEx, `$1\\\\:$2`);\n}\n\nfunction convertSelfTypeToXref(name: string, transfomredClass: IYamlApiFile): string {\n let result: string = name;\n\n // if complex type, need to get real type from references\n if (result.endsWith(':complex')) {\n const specs: IYamlReferenceSpec[] | undefined = transfomredClass.references?.find((item) => {\n return item.uid === name;\n })?.['spec.typeScript'];\n\n if (specs && specs.length > 0) {\n result = '';\n for (const spec of specs) {\n // start with ! will be node base type\n if (spec.uid && !spec.uid.startsWith('!')) {\n result += spec.uid;\n } else {\n result += spec.name;\n }\n }\n }\n } else if (result.startsWith('!')) {\n // uid: '!Object:interface'\n // name: Object\n // start with !, not complex type, use reference name directly\n const ref: IYamlReference | undefined = transfomredClass.references?.find((item) => {\n return item.uid === name;\n });\n if (ref && ref.name) {\n result = ref.name;\n }\n }\n // parse < >\n result = result.replace(/</g, '&lt;').replace(/>/g, '&gt;');\n const uidRegEx: RegExp = /(@?[\\w\\d\\-/!~\\.]+\\:[\\w\\d\\-\\(/]+)/g;\n\n return result.replace(uidRegEx, `<xref uid=\"$1\" />`);\n}\n"]}
1
+ {"version":3,"file":"ToSdpConvertHelper.js","sourceRoot":"","sources":["../../src/utils/ToSdpConvertHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n IYamlItem,\n IYamlApiFile,\n IYamlSyntax,\n IYamlReferenceSpec,\n IYamlReference\n} from '../yaml/IYamlApiFile';\nimport {\n PackageYamlModel,\n EnumYamlModel,\n TypeAliasYamlModel,\n TypeYamlModel,\n FieldYamlModel,\n FunctionYamlModel,\n CommonYamlModel\n} from '../yaml/ISDPYamlFile';\nimport path from 'path';\nimport { FileSystem, Encoding, NewlineKind } from '@rushstack/node-core-library';\nimport yaml = require('js-yaml');\n\nexport function convertUDPYamlToSDP(folderPath: string): void {\n convert(folderPath, folderPath);\n}\n\nfunction convert(inputPath: string, outputPath: string): void {\n console.log();\n if (!FileSystem.exists(inputPath)) {\n console.error(`input path: ${inputPath} is not exist`);\n return;\n }\n\n FileSystem.readFolderItemNames(inputPath).forEach((name) => {\n const fpath: string = path.join(inputPath, name);\n if (FileSystem.getStatistics(fpath).isFile()) {\n // only convert yaml\n if (!name.endsWith('.yml')) {\n return;\n }\n // parse file\n const yamlContent: string = FileSystem.readFile(fpath, { encoding: Encoding.Utf8 });\n // only convert universalreference yaml\n const isLegacyYaml: boolean = yamlContent.startsWith('### YamlMime:UniversalReference');\n if (!isLegacyYaml) {\n return;\n }\n\n console.log(`convert file ${fpath} from udp to sdp`);\n\n const file: IYamlApiFile = yaml.safeLoad(yamlContent) as IYamlApiFile;\n const result: { model: CommonYamlModel; type: string } | undefined = convertToSDP(file);\n if (result && result.model) {\n const stringified: string = `### YamlMime:TS${result.type}\\n${yaml.safeDump(result.model, {\n lineWidth: 120\n })}`;\n FileSystem.writeFile(`${outputPath}/${name}`, stringified, {\n convertLineEndings: NewlineKind.CrLf,\n ensureFolderExists: true\n });\n } else {\n console.log('not target file ', fpath);\n }\n } else {\n // read contents\n convert(fpath, path.join(outputPath, name));\n }\n });\n}\n\nfunction convertToPackageSDP(transfomredClass: IYamlApiFile): PackageYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const packageModel: PackageYamlModel = {\n uid: element.uid,\n name: element.name!,\n type: 'package'\n };\n if (element.summary) {\n packageModel.summary = element.summary;\n } else {\n packageModel.summary = '';\n }\n\n // search in children\n if (element.children) {\n element.children.forEach((child) => {\n if (child.endsWith(':class')) {\n assignPackageModelFields(packageModel, 'classes', child);\n } else if (child.endsWith(':interface')) {\n assignPackageModelFields(packageModel, 'interfaces', child);\n } else if (child.endsWith(':enum')) {\n assignPackageModelFields(packageModel, 'enums', child);\n } else if (child.endsWith(':type')) {\n // version 1 ignore typeAlias\n // assignPackageModelFields(packageModel, \"typeAliases\", child);\n } else {\n // console.log(\"other type: \", child)\n }\n });\n }\n\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n switch (ele.type) {\n case 'typealias':\n // need generate typeAlias file for this\n break;\n case 'function':\n if (!packageModel.functions) {\n packageModel.functions = [];\n }\n packageModel.functions.push(convertToFunctionSDP(ele, element.uid, transfomredClass));\n break;\n default:\n // console.log(transfomredClass.items[0].name)\n console.log('[warning] not applied type(package): ', ele.type);\n }\n }\n\n return packageModel;\n}\n\nfunction assignPackageModelFields(\n packageModel: PackageYamlModel,\n name: 'classes' | 'interfaces' | 'enums' | 'typeAliases',\n uid: string\n): void {\n if (!packageModel[name]) {\n packageModel[name] = [];\n }\n packageModel[name]!.push(uid);\n}\n\nfunction convertToSDP(transfomredClass: IYamlApiFile): { model: CommonYamlModel; type: string } | undefined {\n const element: IYamlItem = transfomredClass.items[0];\n switch (element.type) {\n case 'class':\n case 'interface':\n return {\n model: convertToTypeSDP(transfomredClass, element.type === 'class'),\n type: 'Type'\n };\n case 'enum':\n if (transfomredClass.items.length < 2) {\n console.log(`[warning] enum ${element.uid}/${element.name} does not have fields`);\n return undefined;\n }\n return { model: convertToEnumSDP(transfomredClass), type: 'Enum' };\n case 'typealias':\n return { model: convertToTypeAliasSDP(element, transfomredClass), type: 'TypeAlias' };\n case 'package':\n return {\n model: convertToPackageSDP(transfomredClass),\n type: 'Package'\n };\n default:\n console.log('not applied type: ', element.type);\n return undefined;\n }\n}\n\nfunction convertToEnumSDP(transfomredClass: IYamlApiFile): EnumYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const fields: FieldYamlModel[] = [];\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n const field: FieldYamlModel = {\n name: ele.name!,\n uid: ele.uid,\n package: element.package!\n };\n\n if (ele.summary) {\n field.summary = ele.summary;\n } else {\n field.summary = '';\n }\n\n if (ele.numericValue) {\n field.value = ele.numericValue;\n }\n fields.push(field);\n }\n\n const result: EnumYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass),\n fields: fields\n };\n return result;\n}\n\nfunction convertToTypeAliasSDP(element: IYamlItem, transfomredClass: IYamlApiFile): TypeAliasYamlModel {\n const result: TypeAliasYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass)\n } as TypeAliasYamlModel;\n\n if (element.syntax) {\n result.syntax = element.syntax.content!;\n }\n return result;\n}\n\nfunction convertToTypeSDP(transfomredClass: IYamlApiFile, isClass: boolean): TypeYamlModel {\n const element: IYamlItem = transfomredClass.items[0];\n const constructors: CommonYamlModel[] = [];\n const properties: CommonYamlModel[] = [];\n const methods: CommonYamlModel[] = [];\n const events: CommonYamlModel[] = [];\n for (let i: number = 1; i < transfomredClass.items.length; i++) {\n const ele: IYamlItem = transfomredClass.items[i];\n const item: CommonYamlModel = convertCommonYamlModel(ele, element.package!, transfomredClass);\n if (ele.type === 'constructor') {\n // interface does not need this field\n if (isClass) {\n constructors.push(item);\n }\n } else if (ele.type === 'property') {\n properties.push(item);\n } else if (ele.type === 'method') {\n methods.push(item);\n } else if (ele.type === 'event') {\n events.push(item);\n } else {\n console.log(`[warning] ${ele.uid}#${ele.name} is not applied sub type ${ele.type} for type yaml`);\n }\n }\n const result: TypeYamlModel = {\n ...convertCommonYamlModel(element, element.package!, transfomredClass),\n type: isClass ? 'class' : 'interface'\n };\n delete result.syntax;\n\n if (constructors.length > 0) {\n result.constructors = constructors;\n }\n\n if (properties.length > 0) {\n result.properties = properties;\n }\n\n if (methods.length > 0) {\n result.methods = methods;\n }\n\n if (events.length > 0) {\n result.events = events;\n }\n\n if (element.extends && element.extends.length > 0) {\n result.extends = convertSelfTypeToXref(element.extends[0] as string, transfomredClass);\n }\n return result;\n}\n\nfunction convertToFunctionSDP(\n element: IYamlItem,\n packageName: string,\n transfomredClass: IYamlApiFile\n): FunctionYamlModel {\n const model: CommonYamlModel = convertCommonYamlModel(element, packageName, transfomredClass);\n // don't need these fields\n delete model.fullName;\n return model;\n}\n\nfunction convertCommonYamlModel(\n element: IYamlItem,\n packageName: string,\n transfomredClass: IYamlApiFile\n): CommonYamlModel {\n const result: CommonYamlModel = {\n name: element.name!,\n uid: element.uid,\n package: packageName\n };\n\n if (element.fullName) {\n result.fullName = element.fullName;\n }\n\n if (element.summary) {\n result.summary = element.summary;\n } else {\n result.summary = '';\n }\n\n // because mustache meet same variable in different level\n // such as: { \"pre\": true, \"list\": [{}]}\n // if item in list wants to use pre but the pre is not assigned, it will use outer pre field.\n // so, there need to set below variable explict\n\n if (element.remarks) {\n result.remarks = element.remarks;\n } else {\n result.remarks = '';\n }\n\n if (element.example) {\n result.example = element.example;\n } else {\n result.example = [];\n }\n\n result.isPreview = element.isPreview;\n if (!result.isPreview) {\n result.isPreview = false;\n }\n\n if (element.deprecated) {\n result.isDeprecated = true;\n result.customDeprecatedMessage = element.deprecated.content;\n } else {\n result.isDeprecated = false;\n }\n\n if (element.syntax) {\n result.syntax = {};\n\n const syntax: IYamlSyntax = element.syntax;\n result.syntax.content = syntax.content;\n if (syntax.parameters && syntax.parameters.length > 0) {\n syntax.parameters?.forEach((it) => {\n delete it.optional;\n delete it.defaultValue;\n });\n result.syntax.parameters = syntax.parameters.map((it) => {\n return {\n ...it,\n id: it.id!,\n type: convertSelfTypeToXref(escapeMarkdown(it.type![0] as string), transfomredClass)\n };\n });\n }\n\n if (syntax.return) {\n result.syntax.return = {\n ...syntax.return,\n type: convertSelfTypeToXref(escapeMarkdown(syntax.return.type![0] as string), transfomredClass)\n };\n }\n }\n\n return result;\n}\n\nfunction escapeMarkdown(name: string): string {\n // eg: [key: string]: string\n const markdownLinkRegEx: RegExp = /^\\s*(\\[.+\\]):(.+)/g;\n return name.replace(markdownLinkRegEx, `$1\\\\:$2`);\n}\n\nfunction convertSelfTypeToXref(name: string, transfomredClass: IYamlApiFile): string {\n let result: string = name;\n\n // if complex type, need to get real type from references\n if (result.endsWith(':complex')) {\n const specs: IYamlReferenceSpec[] | undefined = transfomredClass.references?.find((item) => {\n return item.uid === name;\n })?.['spec.typeScript'];\n\n if (specs && specs.length > 0) {\n result = '';\n for (const spec of specs) {\n // start with ! will be node base type\n if (spec.uid && !spec.uid.startsWith('!')) {\n result += spec.uid;\n } else {\n result += spec.name;\n }\n }\n }\n } else if (result.startsWith('!')) {\n // uid: '!Object:interface'\n // name: Object\n // start with !, not complex type, use reference name directly\n const ref: IYamlReference | undefined = transfomredClass.references?.find((item) => {\n return item.uid === name;\n });\n if (ref && ref.name) {\n result = ref.name;\n }\n }\n // parse < >\n result = result.replace(/</g, '&lt;').replace(/>/g, '&gt;');\n const uidRegEx: RegExp = /(@?[\\w\\d\\-/!~\\.]+\\:[\\w\\d\\-\\(/]+)/g;\n\n return result.replace(uidRegEx, `<xref uid=\"$1\" />`);\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/api-documenter",
3
- "version": "7.14.0",
3
+ "version": "7.14.1",
4
4
  "description": "Read JSON files from api-extractor, generate documentation pages",
5
5
  "repository": {
6
6
  "type": "git",
@@ -15,9 +15,9 @@
15
15
  "main": "lib/index.js",
16
16
  "typings": "dist/rollup.d.ts",
17
17
  "dependencies": {
18
- "@microsoft/api-extractor-model": "7.15.2",
18
+ "@microsoft/api-extractor-model": "7.15.3",
19
19
  "@microsoft/tsdoc": "0.13.2",
20
- "@rushstack/node-core-library": "3.44.3",
20
+ "@rushstack/node-core-library": "3.45.0",
21
21
  "@rushstack/ts-command-line": "4.10.6",
22
22
  "colors": "~1.2.1",
23
23
  "js-yaml": "~3.13.1",
@@ -25,8 +25,8 @@
25
25
  },
26
26
  "devDependencies": {
27
27
  "@rushstack/eslint-config": "2.5.1",
28
- "@rushstack/heft": "0.44.1",
29
- "@rushstack/heft-node-rig": "1.5.1",
28
+ "@rushstack/heft": "0.44.2",
29
+ "@rushstack/heft-node-rig": "1.5.2",
30
30
  "@types/heft-jest": "1.0.1",
31
31
  "@types/js-yaml": "3.12.1",
32
32
  "@types/node": "12.20.24",