This commit is contained in:
2024-02-07 01:33:07 -05:00
commit c1af19d441
4088 changed files with 1260170 additions and 0 deletions

View File

@ -0,0 +1,13 @@
import { TSDocConfiguration, TSDocTagDefinition } from '@microsoft/tsdoc';
/**
* @internal
* @deprecated - tsdoc configuration is now constructed from tsdoc.json files associated with each package.
*/
export declare class AedocDefinitions {
static readonly betaDocumentation: TSDocTagDefinition;
static readonly internalRemarks: TSDocTagDefinition;
static readonly preapprovedTag: TSDocTagDefinition;
static get tsdocConfiguration(): TSDocConfiguration;
private static _tsdocConfiguration;
}
//# sourceMappingURL=AedocDefinitions.d.ts.map

View File

@ -0,0 +1 @@
{"version":3,"file":"AedocDefinitions.d.ts","sourceRoot":"","sources":["../../src/aedoc/AedocDefinitions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAoC,MAAM,kBAAkB,CAAC;AAE5G;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,gBAAuB,iBAAiB,EAAE,kBAAkB,CAGzD;IAEH,gBAAuB,eAAe,EAAE,kBAAkB,CAGvD;IAEH,gBAAuB,cAAc,EAAE,kBAAkB,CAGtD;IAEH,WAAkB,kBAAkB,IAAI,kBAAkB,CA0CzD;IAED,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAiC;CACpE"}

View File

@ -0,0 +1,61 @@
"use strict";
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
// See LICENSE in the project root for license information.
Object.defineProperty(exports, "__esModule", { value: true });
exports.AedocDefinitions = void 0;
const tsdoc_1 = require("@microsoft/tsdoc");
/**
* @internal
* @deprecated - tsdoc configuration is now constructed from tsdoc.json files associated with each package.
*/
class AedocDefinitions {
static get tsdocConfiguration() {
if (!AedocDefinitions._tsdocConfiguration) {
const configuration = new tsdoc_1.TSDocConfiguration();
configuration.addTagDefinitions([
AedocDefinitions.betaDocumentation,
AedocDefinitions.internalRemarks,
AedocDefinitions.preapprovedTag
], true);
configuration.setSupportForTags([
tsdoc_1.StandardTags.alpha,
tsdoc_1.StandardTags.beta,
tsdoc_1.StandardTags.decorator,
tsdoc_1.StandardTags.defaultValue,
tsdoc_1.StandardTags.deprecated,
tsdoc_1.StandardTags.eventProperty,
tsdoc_1.StandardTags.example,
tsdoc_1.StandardTags.inheritDoc,
tsdoc_1.StandardTags.internal,
tsdoc_1.StandardTags.link,
tsdoc_1.StandardTags.override,
tsdoc_1.StandardTags.packageDocumentation,
tsdoc_1.StandardTags.param,
tsdoc_1.StandardTags.privateRemarks,
tsdoc_1.StandardTags.public,
tsdoc_1.StandardTags.readonly,
tsdoc_1.StandardTags.remarks,
tsdoc_1.StandardTags.returns,
tsdoc_1.StandardTags.sealed,
tsdoc_1.StandardTags.throws,
tsdoc_1.StandardTags.virtual
], true);
AedocDefinitions._tsdocConfiguration = configuration;
}
return AedocDefinitions._tsdocConfiguration;
}
}
AedocDefinitions.betaDocumentation = new tsdoc_1.TSDocTagDefinition({
tagName: '@betaDocumentation',
syntaxKind: tsdoc_1.TSDocTagSyntaxKind.ModifierTag
});
AedocDefinitions.internalRemarks = new tsdoc_1.TSDocTagDefinition({
tagName: '@internalRemarks',
syntaxKind: tsdoc_1.TSDocTagSyntaxKind.BlockTag
});
AedocDefinitions.preapprovedTag = new tsdoc_1.TSDocTagDefinition({
tagName: '@preapproved',
syntaxKind: tsdoc_1.TSDocTagSyntaxKind.ModifierTag
});
exports.AedocDefinitions = AedocDefinitions;
//# sourceMappingURL=AedocDefinitions.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"AedocDefinitions.js","sourceRoot":"","sources":["../../src/aedoc/AedocDefinitions.ts"],"names":[],"mappings":";AAAA,4FAA4F;AAC5F,2DAA2D;;;AAE3D,4CAA4G;AAE5G;;;GAGG;AACH,MAAa,gBAAgB;IAgBpB,MAAM,KAAK,kBAAkB;QAClC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE;YACzC,MAAM,aAAa,GAAuB,IAAI,0BAAkB,EAAE,CAAC;YACnE,aAAa,CAAC,iBAAiB,CAC7B;gBACE,gBAAgB,CAAC,iBAAiB;gBAClC,gBAAgB,CAAC,eAAe;gBAChC,gBAAgB,CAAC,cAAc;aAChC,EACD,IAAI,CACL,CAAC;YAEF,aAAa,CAAC,iBAAiB,CAC7B;gBACE,oBAAY,CAAC,KAAK;gBAClB,oBAAY,CAAC,IAAI;gBACjB,oBAAY,CAAC,SAAS;gBACtB,oBAAY,CAAC,YAAY;gBACzB,oBAAY,CAAC,UAAU;gBACvB,oBAAY,CAAC,aAAa;gBAC1B,oBAAY,CAAC,OAAO;gBACpB,oBAAY,CAAC,UAAU;gBACvB,oBAAY,CAAC,QAAQ;gBACrB,oBAAY,CAAC,IAAI;gBACjB,oBAAY,CAAC,QAAQ;gBACrB,oBAAY,CAAC,oBAAoB;gBACjC,oBAAY,CAAC,KAAK;gBAClB,oBAAY,CAAC,cAAc;gBAC3B,oBAAY,CAAC,MAAM;gBACnB,oBAAY,CAAC,QAAQ;gBACrB,oBAAY,CAAC,OAAO;gBACpB,oBAAY,CAAC,OAAO;gBACpB,oBAAY,CAAC,MAAM;gBACnB,oBAAY,CAAC,MAAM;gBACnB,oBAAY,CAAC,OAAO;aACrB,EACD,IAAI,CACL,CAAC;YAEF,gBAAgB,CAAC,mBAAmB,GAAG,aAAa,CAAC;SACtD;QACD,OAAO,gBAAgB,CAAC,mBAAmB,CAAC;IAC9C,CAAC;;AAzDsB,kCAAiB,GAAuB,IAAI,0BAAkB,CAAC;IACpF,OAAO,EAAE,oBAAoB;IAC7B,UAAU,EAAE,0BAAkB,CAAC,WAAW;CAC3C,CAAC,CAAC;AAEoB,gCAAe,GAAuB,IAAI,0BAAkB,CAAC;IAClF,OAAO,EAAE,kBAAkB;IAC3B,UAAU,EAAE,0BAAkB,CAAC,QAAQ;CACxC,CAAC,CAAC;AAEoB,+BAAc,GAAuB,IAAI,0BAAkB,CAAC;IACjF,OAAO,EAAE,cAAc;IACvB,UAAU,EAAE,0BAAkB,CAAC,WAAW;CAC3C,CAAC,CAAC;AAdQ,4CAAgB","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 { TSDocConfiguration, TSDocTagDefinition, TSDocTagSyntaxKind, StandardTags } from '@microsoft/tsdoc';\n\n/**\n * @internal\n * @deprecated - tsdoc configuration is now constructed from tsdoc.json files associated with each package.\n */\nexport class AedocDefinitions {\n public static readonly betaDocumentation: TSDocTagDefinition = new TSDocTagDefinition({\n tagName: '@betaDocumentation',\n syntaxKind: TSDocTagSyntaxKind.ModifierTag\n });\n\n public static readonly internalRemarks: TSDocTagDefinition = new TSDocTagDefinition({\n tagName: '@internalRemarks',\n syntaxKind: TSDocTagSyntaxKind.BlockTag\n });\n\n public static readonly preapprovedTag: TSDocTagDefinition = new TSDocTagDefinition({\n tagName: '@preapproved',\n syntaxKind: TSDocTagSyntaxKind.ModifierTag\n });\n\n public static get tsdocConfiguration(): TSDocConfiguration {\n if (!AedocDefinitions._tsdocConfiguration) {\n const configuration: TSDocConfiguration = new TSDocConfiguration();\n configuration.addTagDefinitions(\n [\n AedocDefinitions.betaDocumentation,\n AedocDefinitions.internalRemarks,\n AedocDefinitions.preapprovedTag\n ],\n true\n );\n\n configuration.setSupportForTags(\n [\n StandardTags.alpha,\n StandardTags.beta,\n StandardTags.decorator,\n StandardTags.defaultValue,\n StandardTags.deprecated,\n StandardTags.eventProperty,\n StandardTags.example,\n StandardTags.inheritDoc,\n StandardTags.internal,\n StandardTags.link,\n StandardTags.override,\n StandardTags.packageDocumentation,\n StandardTags.param,\n StandardTags.privateRemarks,\n StandardTags.public,\n StandardTags.readonly,\n StandardTags.remarks,\n StandardTags.returns,\n StandardTags.sealed,\n StandardTags.throws,\n StandardTags.virtual\n ],\n true\n );\n\n AedocDefinitions._tsdocConfiguration = configuration;\n }\n return AedocDefinitions._tsdocConfiguration;\n }\n\n private static _tsdocConfiguration: TSDocConfiguration | undefined;\n}\n"]}

View File

@ -0,0 +1,65 @@
/**
* A "release tag" is a custom TSDoc tag that is applied to an API to communicate the level of support
* provided for third-party developers.
*
* @remarks
*
* The four release tags are: `@internal`, `@alpha`, `@beta`, and `@public`. They are applied to API items such
* as classes, member functions, enums, etc. The release tag applies recursively to members of a container
* (e.g. class or interface). For example, if a class is marked as `@beta`, then all of its members automatically
* have this status; you DON'T need add the `@beta` tag to each member function. However, you could add
* `@internal` to a member function to give it a different release status.
*
* @public
*/
export declare enum ReleaseTag {
/**
* No release tag was specified in the AEDoc summary.
*/
None = 0,
/**
* Indicates that an API item is meant only for usage by other NPM packages from the same
* maintainer. Third parties should never use "internal" APIs. (To emphasize this, their
* names are prefixed by underscores.)
*/
Internal = 1,
/**
* Indicates that an API item is eventually intended to be public, but currently is in an
* early stage of development. Third parties should not use "alpha" APIs.
*/
Alpha = 2,
/**
* Indicates that an API item has been released in an experimental state. Third parties are
* encouraged to try it and provide feedback. However, a "beta" API should NOT be used
* in production.
*/
Beta = 3,
/**
* Indicates that an API item has been officially released. It is part of the supported
* contract (e.g. SemVer) for a package.
*/
Public = 4
}
/**
* Helper functions for working with the `ReleaseTag` enum.
* @public
*/
export declare namespace ReleaseTag {
/**
* Returns the TSDoc tag name for a `ReleaseTag` value.
*
* @remarks
* For example, `getTagName(ReleaseTag.Internal)` would return the string `@internal`.
*/
function getTagName(releaseTag: ReleaseTag): string;
/**
* Compares two `ReleaseTag` values. Their values must not be `ReleaseTag.None`.
* @returns 0 if `a` and `b` are equal, a positive number if `a` is more public than `b`,
* and a negative number if `a` is less public than `b`.
* @remarks
* For example, `compareReleaseTag(ReleaseTag.Beta, ReleaseTag.Alpha)` will return a positive
* number because beta is more public than alpha.
*/
function compare(a: ReleaseTag, b: ReleaseTag): number;
}
//# sourceMappingURL=ReleaseTag.d.ts.map

View File

@ -0,0 +1 @@
{"version":3,"file":"ReleaseTag.d.ts","sourceRoot":"","sources":["../../src/aedoc/ReleaseTag.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AACH,oBAAY,UAAU;IACpB;;OAEG;IACH,IAAI,IAAI;IACR;;;;OAIG;IACH,QAAQ,IAAI;IACZ;;;OAGG;IACH,KAAK,IAAI;IACT;;;;OAIG;IACH,IAAI,IAAI;IACR;;;OAGG;IACH,MAAM,IAAI;CACX;AAED;;;GAGG;AACH,yBAAiB,UAAU,CAAC;IAC1B;;;;;OAKG;IACH,SAAgB,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAezD;IAED;;;;;;;OAOG;IACH,SAAgB,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,CAE5D;CACF"}

View File

@ -0,0 +1,90 @@
"use strict";
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
// See LICENSE in the project root for license information.
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReleaseTag = void 0;
/**
* A "release tag" is a custom TSDoc tag that is applied to an API to communicate the level of support
* provided for third-party developers.
*
* @remarks
*
* The four release tags are: `@internal`, `@alpha`, `@beta`, and `@public`. They are applied to API items such
* as classes, member functions, enums, etc. The release tag applies recursively to members of a container
* (e.g. class or interface). For example, if a class is marked as `@beta`, then all of its members automatically
* have this status; you DON'T need add the `@beta` tag to each member function. However, you could add
* `@internal` to a member function to give it a different release status.
*
* @public
*/
var ReleaseTag;
(function (ReleaseTag) {
/**
* No release tag was specified in the AEDoc summary.
*/
ReleaseTag[ReleaseTag["None"] = 0] = "None";
/**
* Indicates that an API item is meant only for usage by other NPM packages from the same
* maintainer. Third parties should never use "internal" APIs. (To emphasize this, their
* names are prefixed by underscores.)
*/
ReleaseTag[ReleaseTag["Internal"] = 1] = "Internal";
/**
* Indicates that an API item is eventually intended to be public, but currently is in an
* early stage of development. Third parties should not use "alpha" APIs.
*/
ReleaseTag[ReleaseTag["Alpha"] = 2] = "Alpha";
/**
* Indicates that an API item has been released in an experimental state. Third parties are
* encouraged to try it and provide feedback. However, a "beta" API should NOT be used
* in production.
*/
ReleaseTag[ReleaseTag["Beta"] = 3] = "Beta";
/**
* Indicates that an API item has been officially released. It is part of the supported
* contract (e.g. SemVer) for a package.
*/
ReleaseTag[ReleaseTag["Public"] = 4] = "Public";
})(ReleaseTag = exports.ReleaseTag || (exports.ReleaseTag = {}));
/**
* Helper functions for working with the `ReleaseTag` enum.
* @public
*/
(function (ReleaseTag) {
/**
* Returns the TSDoc tag name for a `ReleaseTag` value.
*
* @remarks
* For example, `getTagName(ReleaseTag.Internal)` would return the string `@internal`.
*/
function getTagName(releaseTag) {
switch (releaseTag) {
case ReleaseTag.None:
return '(none)';
case ReleaseTag.Internal:
return '@internal';
case ReleaseTag.Alpha:
return '@alpha';
case ReleaseTag.Beta:
return '@beta';
case ReleaseTag.Public:
return '@public';
default:
throw new Error('Unsupported release tag');
}
}
ReleaseTag.getTagName = getTagName;
/**
* Compares two `ReleaseTag` values. Their values must not be `ReleaseTag.None`.
* @returns 0 if `a` and `b` are equal, a positive number if `a` is more public than `b`,
* and a negative number if `a` is less public than `b`.
* @remarks
* For example, `compareReleaseTag(ReleaseTag.Beta, ReleaseTag.Alpha)` will return a positive
* number because beta is more public than alpha.
*/
function compare(a, b) {
return a - b;
}
ReleaseTag.compare = compare;
})(ReleaseTag = exports.ReleaseTag || (exports.ReleaseTag = {}));
//# sourceMappingURL=ReleaseTag.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"ReleaseTag.js","sourceRoot":"","sources":["../../src/aedoc/ReleaseTag.ts"],"names":[],"mappings":";AAAA,4FAA4F;AAC5F,2DAA2D;;;AAE3D;;;;;;;;;;;;;GAaG;AACH,IAAY,UA2BX;AA3BD,WAAY,UAAU;IACpB;;OAEG;IACH,2CAAQ,CAAA;IACR;;;;OAIG;IACH,mDAAY,CAAA;IACZ;;;OAGG;IACH,6CAAS,CAAA;IACT;;;;OAIG;IACH,2CAAQ,CAAA;IACR;;;OAGG;IACH,+CAAU,CAAA;AACZ,CAAC,EA3BW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QA2BrB;AAED;;;GAGG;AACH,WAAiB,UAAU;IACzB;;;;;OAKG;IACH,SAAgB,UAAU,CAAC,UAAsB;QAC/C,QAAQ,UAAU,EAAE;YAClB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,QAAQ,CAAC;YAClB,KAAK,UAAU,CAAC,QAAQ;gBACtB,OAAO,WAAW,CAAC;YACrB,KAAK,UAAU,CAAC,KAAK;gBACnB,OAAO,QAAQ,CAAC;YAClB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,OAAO,CAAC;YACjB,KAAK,UAAU,CAAC,MAAM;gBACpB,OAAO,SAAS,CAAC;YACnB;gBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC9C;IACH,CAAC;IAfe,qBAAU,aAezB,CAAA;IAED;;;;;;;OAOG;IACH,SAAgB,OAAO,CAAC,CAAa,EAAE,CAAa;QAClD,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAFe,kBAAO,UAEtB,CAAA;AACH,CAAC,EAnCgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAmC1B","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\n/**\n * A \"release tag\" is a custom TSDoc tag that is applied to an API to communicate the level of support\n * provided for third-party developers.\n *\n * @remarks\n *\n * The four release tags are: `@internal`, `@alpha`, `@beta`, and `@public`. They are applied to API items such\n * as classes, member functions, enums, etc. The release tag applies recursively to members of a container\n * (e.g. class or interface). For example, if a class is marked as `@beta`, then all of its members automatically\n * have this status; you DON'T need add the `@beta` tag to each member function. However, you could add\n * `@internal` to a member function to give it a different release status.\n *\n * @public\n */\nexport enum ReleaseTag {\n /**\n * No release tag was specified in the AEDoc summary.\n */\n None = 0,\n /**\n * Indicates that an API item is meant only for usage by other NPM packages from the same\n * maintainer. Third parties should never use \"internal\" APIs. (To emphasize this, their\n * names are prefixed by underscores.)\n */\n Internal = 1,\n /**\n * Indicates that an API item is eventually intended to be public, but currently is in an\n * early stage of development. Third parties should not use \"alpha\" APIs.\n */\n Alpha = 2,\n /**\n * Indicates that an API item has been released in an experimental state. Third parties are\n * encouraged to try it and provide feedback. However, a \"beta\" API should NOT be used\n * in production.\n */\n Beta = 3,\n /**\n * Indicates that an API item has been officially released. It is part of the supported\n * contract (e.g. SemVer) for a package.\n */\n Public = 4\n}\n\n/**\n * Helper functions for working with the `ReleaseTag` enum.\n * @public\n */\nexport namespace ReleaseTag {\n /**\n * Returns the TSDoc tag name for a `ReleaseTag` value.\n *\n * @remarks\n * For example, `getTagName(ReleaseTag.Internal)` would return the string `@internal`.\n */\n export function getTagName(releaseTag: ReleaseTag): string {\n switch (releaseTag) {\n case ReleaseTag.None:\n return '(none)';\n case ReleaseTag.Internal:\n return '@internal';\n case ReleaseTag.Alpha:\n return '@alpha';\n case ReleaseTag.Beta:\n return '@beta';\n case ReleaseTag.Public:\n return '@public';\n default:\n throw new Error('Unsupported release tag');\n }\n }\n\n /**\n * Compares two `ReleaseTag` values. Their values must not be `ReleaseTag.None`.\n * @returns 0 if `a` and `b` are equal, a positive number if `a` is more public than `b`,\n * and a negative number if `a` is less public than `b`.\n * @remarks\n * For example, `compareReleaseTag(ReleaseTag.Beta, ReleaseTag.Alpha)` will return a positive\n * number because beta is more public than alpha.\n */\n export function compare(a: ReleaseTag, b: ReleaseTag): number {\n return a - b;\n }\n}\n"]}