diff --git a/.github/labeler.yml b/.github/labeler.yml
index 590039102..dcb29f1e7 100644
--- a/.github/labeler.yml
+++ b/.github/labeler.yml
@@ -14,6 +14,10 @@ chore:
- packages/discord.js/*
- packages/discord.js/**/*
+'packages:docgen':
+ - packages/docgen/*
+ - packages/docgen/**/*
+
'packages:proxy':
- packages/proxy/*
- packages/proxy/**/*
diff --git a/.github/labels.yml b/.github/labels.yml
index b644606f9..fc60b1b6c 100644
--- a/.github/labels.yml
+++ b/.github/labels.yml
@@ -50,6 +50,8 @@
color: 'fbca04'
- name: 'packages:discord.js'
color: 'fbca04'
+- name: 'packages:docgen'
+ color: 'fbca04'
- name: 'packages:proxy'
color: 'fbca04'
- name: 'packages:rest'
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 000000000..3f2939e87
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,8 @@
+**/CHANGELOG.md
+**/.turbo
+**/dist/
+**/docs/**/*
+**/!docs/index.yml
+**/!docs/README.md
+**/coverage/
+**/LICENSE
diff --git a/packages/actions/.prettierignore b/packages/actions/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/actions/.prettierignore
+++ b/packages/actions/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/actions/LICENSE b/packages/actions/LICENSE
index cbe9c6540..e2822e9d8 100644
--- a/packages/actions/LICENSE
+++ b/packages/actions/LICENSE
@@ -175,8 +175,7 @@
END OF TERMS AND CONDITIONS
- Copyright 2021 Noel Buechler
- Copyright 2021 Vlad Frangu
+ Copyright 2022 Noel Buechler
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/packages/builders/.prettierignore b/packages/builders/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/builders/.prettierignore
+++ b/packages/builders/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/collection/.prettierignore b/packages/collection/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/collection/.prettierignore
+++ b/packages/collection/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/collection/LICENSE b/packages/collection/LICENSE
index 52b53d446..d21f37a65 100644
--- a/packages/collection/LICENSE
+++ b/packages/collection/LICENSE
@@ -175,8 +175,8 @@
END OF TERMS AND CONDITIONS
- Copyright 2015 - 2021 Noel Buechler
- Copyright 2015 - 2021 Amish Shah
+ Copyright 2021 Noel Buechler
+ Copyright 2015 Amish Shah
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/packages/discord.js/.gitignore b/packages/discord.js/.gitignore
index c159805a3..1781cfe4a 100644
--- a/packages/discord.js/.gitignore
+++ b/packages/discord.js/.gitignore
@@ -15,11 +15,13 @@ pids
.env
test/auth.json
test/auth.js
-docs/deploy/deploy_key
-docs/deploy/deploy_key.pub
-deploy/deploy_key
-deploy/deploy_key.pub
# Dist
dist/
-docs/docs.json
+docs/**/*
+!docs/index.json
+
+# Miscellaneous
+.tmp/
+coverage/
+tsconfig.tsbuildinfo
diff --git a/packages/discord.js/.prettierignore b/packages/discord.js/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/discord.js/.prettierignore
+++ b/packages/discord.js/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/discord.js/LICENSE b/packages/discord.js/LICENSE
index 52b53d446..d21f37a65 100644
--- a/packages/discord.js/LICENSE
+++ b/packages/discord.js/LICENSE
@@ -175,8 +175,8 @@
END OF TERMS AND CONDITIONS
- Copyright 2015 - 2021 Noel Buechler
- Copyright 2015 - 2021 Amish Shah
+ Copyright 2021 Noel Buechler
+ Copyright 2015 Amish Shah
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/packages/discord.js/docs/index.json b/packages/discord.js/docs/index.json
new file mode 100644
index 000000000..557341ae9
--- /dev/null
+++ b/packages/discord.js/docs/index.json
@@ -0,0 +1 @@
+[{ "name": "General", "files": [{ "name": "Welcome", "id": "welcome", "path": "../../README.md" }] }]
diff --git a/packages/discord.js/docs/index.yml b/packages/discord.js/docs/index.yml
deleted file mode 100644
index 2c993519e..000000000
--- a/packages/discord.js/docs/index.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-- name: General
- files:
- - name: Welcome
- id: welcome
- path: ../../README.md
diff --git a/packages/discord.js/package.json b/packages/discord.js/package.json
index 7f360d6f6..95879477e 100644
--- a/packages/discord.js/package.json
+++ b/packages/discord.js/package.json
@@ -7,8 +7,8 @@
"test:typescript": "tsc --noEmit && tsd",
"lint": "prettier --check . && eslint src && tslint typings/index.d.ts",
"format": "prettier --write . && eslint src --fix",
- "docs": "docgen --source ./src --custom ./docs/index.yml --root ../../ --output ./docs/docs.json",
- "docs:test": "docgen --source ./src --custom ./docs/index.yml --root ../../",
+ "docs": "docgen -i ./src/*.js ./src/**/*.js -c ./docs/index.json -r ../../ -o ./docs/docs.json",
+ "docs:test": "docgen -i ./src/*.js ./src/**/*.js -c ./docs/index.json -r ../../",
"prepublishOnly": "yarn lint && yarn test",
"changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/discord.js/*'",
"release": "cliff-jumper --skip-tag --verbose"
@@ -61,7 +61,7 @@
"ws": "^8.7.0"
},
"devDependencies": {
- "@discordjs/docgen": "^0.11.1",
+ "@discordjs/docgen": "workspace:^",
"@favware/cliff-jumper": "^1.8.3",
"@types/node": "^16.11.38",
"dtslint": "^4.2.1",
diff --git a/packages/docgen/.eslintrc.json b/packages/docgen/.eslintrc.json
new file mode 100644
index 000000000..0998f03ac
--- /dev/null
+++ b/packages/docgen/.eslintrc.json
@@ -0,0 +1,12 @@
+{
+ "root": true,
+ "extends": "marine/prettier/node",
+ "parserOptions": {
+ "project": "./tsconfig.eslint.json",
+ "extraFileExtensions": [".mjs"]
+ },
+ "ignorePatterns": ["**/dist/*"],
+ "env": {
+ "jest": true
+ }
+}
diff --git a/packages/docgen/.gitignore b/packages/docgen/.gitignore
new file mode 100644
index 000000000..5189c6c61
--- /dev/null
+++ b/packages/docgen/.gitignore
@@ -0,0 +1,25 @@
+# Packages
+node_modules/
+
+# Log files
+logs/
+*.log
+npm-debug.log*
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Env
+.env
+
+# Dist
+dist/
+typings/
+
+docs/**/*
+
+# Miscellaneous
+.tmp/
+coverage/
diff --git a/packages/docgen/.prettierignore b/packages/docgen/.prettierignore
new file mode 100644
index 000000000..a8f763a7c
--- /dev/null
+++ b/packages/docgen/.prettierignore
@@ -0,0 +1,9 @@
+# Autogenerated
+CHANGELOG.md
+.turbo
+dist/
+docs/**/*
+!docs/index.yml
+!docs/README.md
+coverage/
+tsup.config.*.mjs
diff --git a/packages/docgen/.prettierrc.json b/packages/docgen/.prettierrc.json
new file mode 100644
index 000000000..eba3f4077
--- /dev/null
+++ b/packages/docgen/.prettierrc.json
@@ -0,0 +1,8 @@
+{
+ "printWidth": 120,
+ "useTabs": true,
+ "singleQuote": true,
+ "quoteProps": "as-needed",
+ "trailingComma": "all",
+ "endOfLine": "lf"
+}
diff --git a/packages/docgen/LICENSE b/packages/docgen/LICENSE
new file mode 100644
index 000000000..934d08520
--- /dev/null
+++ b/packages/docgen/LICENSE
@@ -0,0 +1,191 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ Copyright 2022 Noel Buechler
+ Copyright 2015 Amish Shah
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/packages/docgen/README.md b/packages/docgen/README.md
new file mode 100644
index 000000000..d1a9eca44
--- /dev/null
+++ b/packages/docgen/README.md
@@ -0,0 +1,31 @@
+
+
+## Links
+
+- [Website](https://discord.js.org/) ([source](https://github.com/discordjs/website))
+- [Documentation](https://discord.js.org/#/docs)
+- [Guide](https://discordjs.guide/) ([source](https://github.com/discordjs/guide))
+ See also the [Update Guide](https://discordjs.guide/additional-info/changes-in-v13.html), including updated and removed items in the library.
+- [discord.js Discord server](https://discord.gg/djs)
+- [Discord API Discord server](https://discord.gg/discord-api)
+- [GitHub](https://github.com/discordjs/discord.js/tree/main/packages/scripts)
+- [Related libraries](https://discord.com/developers/docs/topics/community-resources#libraries)
+
+## Contributing
+
+See [the contribution guide](https://github.com/discordjs/discord.js/blob/main/.github/CONTRIBUTING.md) if you'd like to submit a PR.
+
+## Help
+
+If you don't understand something in the documentation, you are experiencing problems, or you just need a gentle
+nudge in the right direction, please don't hesitate to join our official [discord.js Server](https://discord.gg/djs).
diff --git a/packages/docgen/package.json b/packages/docgen/package.json
new file mode 100644
index 000000000..a1da8b632
--- /dev/null
+++ b/packages/docgen/package.json
@@ -0,0 +1,74 @@
+{
+ "name": "@discordjs/docgen",
+ "version": "0.12.0-dev",
+ "description": "The docs.json generator for discord.js and its related projects",
+ "scripts": {
+ "build": "tsup",
+ "lint": "prettier --check . && eslint src --ext mjs,js,ts",
+ "format": "prettier --write . && eslint src --ext mjs,js,ts --fix",
+ "prepublishOnly": "yarn build && yarn lint && yarn test",
+ "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/docgen/*'",
+ "release": "cliff-jumper"
+ },
+ "bin": "./dist/index.js",
+ "main": "./dist/index.js",
+ "module": "./dist/index.mjs",
+ "types": "./dist/index.d.ts",
+ "exports": {
+ "import": "./dist/index.mjs",
+ "require": "./dist/index.js",
+ "types": "./dist/index.d.ts"
+ },
+ "directories": {
+ "lib": "src"
+ },
+ "files": [
+ "dist"
+ ],
+ "contributors": [
+ "Crawl ",
+ "Amish Shah ",
+ "Schuyler Cebulskie "
+ ],
+ "license": "Apache-2.0",
+ "keywords": [
+ "documentation",
+ "docs",
+ "generator",
+ "docgen",
+ "docsgen",
+ "node",
+ "discordjs"
+ ],
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/discordjs/discord.js.git"
+ },
+ "bugs": {
+ "url": "https://github.com/discordjs/discord.js/issues"
+ },
+ "homepage": "https://discord.js.org",
+ "dependencies": {
+ "@discordjs/collection": "workspace:^",
+ "commander": "^9.3.0",
+ "jsdoc-to-markdown": "^7.1.1",
+ "tslib": "^2.4.0"
+ },
+ "devDependencies": {
+ "@favware/cliff-jumper": "^1.8.3",
+ "@types/jsdoc-to-markdown": "^7.0.3",
+ "@types/node": "^16.11.38",
+ "@typescript-eslint/eslint-plugin": "^5.27.1",
+ "@typescript-eslint/parser": "^5.27.1",
+ "eslint": "^8.17.0",
+ "eslint-config-marine": "^9.4.1",
+ "eslint-config-prettier": "^8.5.0",
+ "eslint-plugin-import": "^2.26.0",
+ "prettier": "^2.6.2",
+ "tsup": "^6.1.0",
+ "typescript": "^4.7.3"
+ },
+ "engines": {
+ "node": ">=16.9.0"
+ }
+}
diff --git a/packages/docgen/src/documentation.ts b/packages/docgen/src/documentation.ts
new file mode 100644
index 000000000..8535c1d07
--- /dev/null
+++ b/packages/docgen/src/documentation.ts
@@ -0,0 +1,143 @@
+import { join } from 'path';
+import { Collection } from '@discordjs/collection';
+import type { ChildTypes, Class, Config, CustomDocs, RootTypes } from './interfaces/index.js';
+import { DocumentedClass } from './types/class.js';
+import { DocumentedConstructor } from './types/constructor.js';
+import { DocumentedEvent } from './types/event.js';
+import { DocumentedExternal } from './types/external.js';
+import { DocumentedInterface } from './types/interface.js';
+import { DocumentedMember } from './types/member.js';
+import { DocumentedMethod } from './types/method.js';
+import { DocumentedTypeDef } from './types/typedef.js';
+import packageFile from '../package.json';
+
+export class Documentation {
+ public readonly classes = new Collection();
+
+ public readonly functions = new Collection();
+
+ public readonly interfaces = new Collection();
+
+ public readonly typedefs = new Collection();
+
+ public readonly externals = new Collection();
+
+ public constructor(
+ data: RootTypes[],
+ private readonly config: Config,
+ private readonly custom?: Record,
+ ) {
+ let items = data;
+ for (const item of items) {
+ switch (item.kind) {
+ case 'class': {
+ this.classes.set(item.name, new DocumentedClass(item, config));
+ items = items.filter((i) => i.longname !== item.longname);
+ break;
+ }
+ case 'function': {
+ if (item.scope === 'global' || !item.memberof) {
+ this.functions.set(item.name, new DocumentedMethod(item, config));
+ items = items.filter((i) => i.longname !== item.longname);
+ }
+ break;
+ }
+ case 'interface': {
+ this.interfaces.set(item.name, new DocumentedInterface(item as unknown as Class, config));
+ items = items.filter((i) => i.longname !== item.longname);
+ break;
+ }
+ case 'typedef': {
+ this.typedefs.set(item.name, new DocumentedTypeDef(item, config));
+ items = items.filter((i) => i.longname !== item.longname);
+ break;
+ }
+ case 'external': {
+ this.externals.set(item.name, new DocumentedExternal(item, config));
+ items = items.filter((i) => i.longname !== item.longname);
+ break;
+ }
+ default:
+ break;
+ }
+ }
+
+ this.parse(items as ChildTypes[]);
+ }
+
+ public parse(items: ChildTypes[]) {
+ for (const member of items) {
+ let item: DocumentedMethod | DocumentedConstructor | DocumentedMember | DocumentedEvent | null = null;
+
+ switch (member.kind) {
+ case 'constructor': {
+ item = new DocumentedConstructor(member, this.config);
+ break;
+ }
+ case 'function': {
+ item = new DocumentedMethod(member, this.config);
+ break;
+ }
+ case 'member': {
+ item = new DocumentedMember(member, this.config);
+ break;
+ }
+ case 'event': {
+ item = new DocumentedEvent(member, this.config);
+ break;
+ }
+ default: {
+ // @ts-expect-error
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ console.warn(`- Unknown documentation kind "${member.kind}" - \n${JSON.stringify(member)}\n`);
+ }
+ }
+
+ const parent = this.classes.get(member.memberof ?? '') ?? this.interfaces.get(member.memberof ?? '');
+ if (parent) {
+ if (item) {
+ parent.add(item);
+ } else {
+ console.warn(
+ `- Documentation item could not be constructed for "${member.name}" - \n${JSON.stringify(member)}\n`,
+ );
+ }
+ continue;
+ }
+
+ const info = [];
+ const name = (member.name || item?.data.name) ?? 'UNKNOWN';
+ const memberof = member.memberof ?? item?.data.memberof;
+ const meta =
+ member.kind === 'constructor'
+ ? null
+ : { file: member.meta.filename, line: member.meta.lineno, path: member.meta.path };
+
+ if (memberof) info.push(`member of "${memberof}"`);
+ if (meta) info.push(`${join(meta.path, meta.file)}${meta.line ? `:${meta.line}` : ''}`);
+
+ console.warn(`- "${name}"${info.length ? ` (${info.join(', ')})` : ''} has no accessible parent.`);
+ if (!name && !info.length) console.warn('Raw object:', member);
+ }
+ }
+
+ public serialize() {
+ return {
+ meta: {
+ generator: packageFile.version,
+ format: Documentation.FORMAT_VERSION,
+ date: Date.now(),
+ },
+ classes: this.classes.map((c) => c.serialize()),
+ functions: this.functions.map((f) => f.serialize()),
+ interfaces: this.interfaces.map((i) => i.serialize()),
+ typedefs: this.typedefs.map((t) => t.serialize()),
+ externals: this.externals.map((e) => e.serialize()),
+ custom: this.custom,
+ };
+ }
+
+ public static get FORMAT_VERSION() {
+ return 30;
+ }
+}
diff --git a/packages/docgen/src/index.ts b/packages/docgen/src/index.ts
new file mode 100644
index 000000000..753ac66ae
--- /dev/null
+++ b/packages/docgen/src/index.ts
@@ -0,0 +1,88 @@
+#!/usr/bin/env node
+import { readFileSync, writeFileSync } from 'fs';
+import { join, basename, extname, dirname, relative } from 'path';
+import { createCommand } from 'commander';
+import jsdoc2md from 'jsdoc-to-markdown';
+import { Documentation } from './documentation.js';
+import type { ChildTypes, CustomDocs, RootTypes } from './interfaces/index.js';
+import packageFile from '../package.json';
+
+interface CLIOptions {
+ input: string[];
+ custom: string;
+ root: string;
+ output: string;
+}
+
+interface CustomFiles {
+ id?: string;
+ name: string;
+ path?: string;
+ files: {
+ id?: string;
+ name: string;
+ path: string;
+ }[];
+}
+
+const command = createCommand()
+ .version(packageFile.version)
+ .option('-i, --input ', 'Source directories to parse JSDocs in')
+ .option('-c, --custom ', 'Custom docs definition file to use')
+ .option('-r, --root [string]', 'Root directory of the project', '.')
+ .option('-o, --output ', 'Path to output file');
+
+const program = command.parse(process.argv);
+const options = program.opts();
+
+console.log('Parsing JSDocs in source files...');
+const data = jsdoc2md.getTemplateDataSync({ files: options.input }) as (RootTypes & ChildTypes)[];
+console.log(`${data.length} JSDoc items parsed.`);
+
+const custom: Record = {};
+if (options.custom) {
+ console.log('Loading custom docs files...');
+ const customDir = dirname(options.custom);
+ const file = readFileSync(options.custom, 'utf-8');
+ const data = JSON.parse(file) as CustomFiles[];
+
+ for (const category of data) {
+ const categoryId = category.id ?? category.name.toLowerCase();
+ const dir = join(customDir, category.path ?? categoryId);
+ custom[categoryId] = {
+ name: category.name || category.id,
+ files: {},
+ };
+
+ for (const f of category.files) {
+ const fileRootPath = join(dir, f.path);
+ const extension = extname(f.path);
+ const fileId = f.id ?? basename(f.path, extension);
+ const fileData = readFileSync(fileRootPath, 'utf-8');
+ custom[categoryId]!.files[fileId] = {
+ name: f.name,
+ type: extension.toLowerCase().replace(/^\./, ''),
+ content: fileData,
+ path: relative(options.root, fileRootPath).replace(/\\/g, '/'),
+ };
+ }
+ }
+
+ const fileCount = Object.keys(custom)
+ .map((k) => Object.keys(custom[k]!))
+ .reduce((prev, c) => prev + c.length, 0);
+ const categoryCount = Object.keys(custom).length;
+ console.log(
+ `${fileCount} custom docs file${fileCount === 1 ? '' : 's'} in ` +
+ `${categoryCount} categor${categoryCount === 1 ? 'y' : 'ies'} loaded.`,
+ );
+}
+
+console.log(`Serializing documentation with format version ${Documentation.FORMAT_VERSION}...`);
+const docs = new Documentation(data, options, custom);
+
+if (options.output) {
+ console.log(`Writing to ${options.output}...`);
+ writeFileSync(options.output, JSON.stringify(docs.serialize()));
+}
+console.log('Done!');
diff --git a/packages/docgen/src/interfaces/access.type.ts b/packages/docgen/src/interfaces/access.type.ts
new file mode 100644
index 000000000..29c4a4be0
--- /dev/null
+++ b/packages/docgen/src/interfaces/access.type.ts
@@ -0,0 +1 @@
+export type Access = 'public' | 'private' | 'protected';
diff --git a/packages/docgen/src/interfaces/childTypes.type.ts b/packages/docgen/src/interfaces/childTypes.type.ts
new file mode 100644
index 000000000..7c1181871
--- /dev/null
+++ b/packages/docgen/src/interfaces/childTypes.type.ts
@@ -0,0 +1,3 @@
+import type { Constructor, Event, Member, Method } from './index.js';
+
+export type ChildTypes = Constructor | Member | Method | Event;
diff --git a/packages/docgen/src/interfaces/class.interface.ts b/packages/docgen/src/interfaces/class.interface.ts
new file mode 100644
index 000000000..7ef86fe58
--- /dev/null
+++ b/packages/docgen/src/interfaces/class.interface.ts
@@ -0,0 +1,13 @@
+import type { Access, Item, Meta, Scope } from './index.js';
+
+export interface Class extends Item {
+ kind: 'class';
+ scope: Scope;
+ implements?: string[];
+ augments?: string[];
+ see?: string[];
+ access?: Access;
+ virtual?: boolean;
+ deprecated?: boolean | string;
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/config.interface.ts b/packages/docgen/src/interfaces/config.interface.ts
new file mode 100644
index 000000000..fc7b97ba9
--- /dev/null
+++ b/packages/docgen/src/interfaces/config.interface.ts
@@ -0,0 +1,3 @@
+export interface Config {
+ root: string;
+}
diff --git a/packages/docgen/src/interfaces/constructor.interface.ts b/packages/docgen/src/interfaces/constructor.interface.ts
new file mode 100644
index 000000000..2e18838b0
--- /dev/null
+++ b/packages/docgen/src/interfaces/constructor.interface.ts
@@ -0,0 +1,9 @@
+import type { Access, Item, Param } from './index.js';
+
+export interface Constructor extends Item {
+ kind: 'constructor';
+ memberof: string;
+ see?: string[];
+ access?: Access;
+ params?: Param[];
+}
diff --git a/packages/docgen/src/interfaces/customDocs.interface.ts b/packages/docgen/src/interfaces/customDocs.interface.ts
new file mode 100644
index 000000000..5ad119c8b
--- /dev/null
+++ b/packages/docgen/src/interfaces/customDocs.interface.ts
@@ -0,0 +1,12 @@
+export interface CustomDocs {
+ name?: string;
+ files: Record<
+ string,
+ {
+ name?: string;
+ type?: string;
+ content?: string;
+ path?: string;
+ }
+ >;
+}
diff --git a/packages/docgen/src/interfaces/event.interface.ts b/packages/docgen/src/interfaces/event.interface.ts
new file mode 100644
index 000000000..fc389b5c3
--- /dev/null
+++ b/packages/docgen/src/interfaces/event.interface.ts
@@ -0,0 +1,11 @@
+import type { Item, Meta, Param, Scope } from './index.js';
+
+export interface Event extends Item {
+ kind: 'event';
+ scope: Scope;
+ memberof: string;
+ see?: string[];
+ deprecated?: boolean | string;
+ params?: Param[];
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/exception.interface.ts b/packages/docgen/src/interfaces/exception.interface.ts
new file mode 100644
index 000000000..763bb541f
--- /dev/null
+++ b/packages/docgen/src/interfaces/exception.interface.ts
@@ -0,0 +1,7 @@
+import type { Type } from './index.js';
+
+export interface Exception {
+ type: Type;
+ nullable?: boolean;
+ description?: string;
+}
diff --git a/packages/docgen/src/interfaces/external.interface.ts b/packages/docgen/src/interfaces/external.interface.ts
new file mode 100644
index 000000000..aef5da7fd
--- /dev/null
+++ b/packages/docgen/src/interfaces/external.interface.ts
@@ -0,0 +1,7 @@
+import type { Item, Meta } from './index.js';
+
+export interface External extends Item {
+ kind: 'external';
+ see?: string[];
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/index.ts b/packages/docgen/src/interfaces/index.ts
new file mode 100644
index 000000000..11e2364a6
--- /dev/null
+++ b/packages/docgen/src/interfaces/index.ts
@@ -0,0 +1,21 @@
+export * from './access.type.js';
+export * from './childTypes.type';
+export * from './class.interface.js';
+export * from './config.interface.js';
+export * from './constructor.interface.js';
+export * from './customDocs.interface.js';
+export * from './event.interface.js';
+export * from './exception.interface.js';
+export * from './external.interface.js';
+export * from './interface.interface.js';
+export * from './item.interface.js';
+export * from './member.interface.js';
+export * from './meta.interface.js';
+export * from './method.interface.js';
+export * from './param.interface.js';
+export * from './return.interface.js';
+export * from './rootTypes.type.js';
+export * from './scope.type.js';
+export * from './type.interface.js';
+export * from './typedef.interface.js';
+export * from './var-type.interface';
diff --git a/packages/docgen/src/interfaces/interface.interface.ts b/packages/docgen/src/interfaces/interface.interface.ts
new file mode 100644
index 000000000..01aa7293e
--- /dev/null
+++ b/packages/docgen/src/interfaces/interface.interface.ts
@@ -0,0 +1,7 @@
+import type { Class } from './index.js';
+
+// @ts-expect-error
+export interface Interface extends Class {
+ kind: 'interface';
+ classdesc: string;
+}
diff --git a/packages/docgen/src/interfaces/item.interface.ts b/packages/docgen/src/interfaces/item.interface.ts
new file mode 100644
index 000000000..95c34b375
--- /dev/null
+++ b/packages/docgen/src/interfaces/item.interface.ts
@@ -0,0 +1,8 @@
+export interface Item {
+ id: string;
+ longname: string;
+ name: string;
+ kind: string;
+ description: string;
+ order: number;
+}
diff --git a/packages/docgen/src/interfaces/member.interface.ts b/packages/docgen/src/interfaces/member.interface.ts
new file mode 100644
index 000000000..c71a08379
--- /dev/null
+++ b/packages/docgen/src/interfaces/member.interface.ts
@@ -0,0 +1,17 @@
+import type { Access, Item, Meta, Param, Scope, Type } from './index.js';
+
+export interface Member extends Item {
+ kind: 'member';
+ see?: string[];
+ scope: Scope;
+ memberof: string;
+ type: Type;
+ access?: Access;
+ readonly?: boolean;
+ nullable?: boolean;
+ virtual?: boolean;
+ deprecated?: boolean | string;
+ default?: string;
+ properties?: Param[];
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/meta.interface.ts b/packages/docgen/src/interfaces/meta.interface.ts
new file mode 100644
index 000000000..df50bf525
--- /dev/null
+++ b/packages/docgen/src/interfaces/meta.interface.ts
@@ -0,0 +1,5 @@
+export interface Meta {
+ lineno: number;
+ filename: string;
+ path: string;
+}
diff --git a/packages/docgen/src/interfaces/method.interface.ts b/packages/docgen/src/interfaces/method.interface.ts
new file mode 100644
index 000000000..4d2421d20
--- /dev/null
+++ b/packages/docgen/src/interfaces/method.interface.ts
@@ -0,0 +1,22 @@
+import type { Access, Exception, Item, Meta, Param, Return, Scope } from './index.js';
+
+export interface Method extends Item {
+ kind: 'function';
+ see?: string[];
+ scope: Scope;
+ access?: Access;
+ inherits?: string;
+ inherited?: boolean;
+ implements?: string[];
+ examples?: string[];
+ virtual?: boolean;
+ deprecated?: boolean | string;
+ memberof?: string;
+ params?: Param[];
+ async?: boolean;
+ generator?: boolean;
+ fires?: string[];
+ returns?: Return[];
+ exceptions?: Exception[];
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/param.interface.ts b/packages/docgen/src/interfaces/param.interface.ts
new file mode 100644
index 000000000..d6bde6839
--- /dev/null
+++ b/packages/docgen/src/interfaces/param.interface.ts
@@ -0,0 +1,11 @@
+import type { Type } from './index.js';
+
+export interface Param {
+ type: Type;
+ description: string;
+ name: string;
+ optional?: boolean;
+ defaultvalue?: string;
+ variable?: string;
+ nullable?: boolean;
+}
diff --git a/packages/docgen/src/interfaces/return.interface.ts b/packages/docgen/src/interfaces/return.interface.ts
new file mode 100644
index 000000000..8a7e658ff
--- /dev/null
+++ b/packages/docgen/src/interfaces/return.interface.ts
@@ -0,0 +1,7 @@
+import type { Type } from './index.js';
+
+export interface Return {
+ type: Type;
+ nullable?: boolean;
+ description?: string;
+}
diff --git a/packages/docgen/src/interfaces/rootTypes.type.ts b/packages/docgen/src/interfaces/rootTypes.type.ts
new file mode 100644
index 000000000..0247aa03e
--- /dev/null
+++ b/packages/docgen/src/interfaces/rootTypes.type.ts
@@ -0,0 +1,3 @@
+import type { Class, External, Interface, Method, Typedef } from './index.js';
+
+export type RootTypes = Class | Method | Interface | Typedef | External;
diff --git a/packages/docgen/src/interfaces/scope.type.ts b/packages/docgen/src/interfaces/scope.type.ts
new file mode 100644
index 000000000..ee033faf9
--- /dev/null
+++ b/packages/docgen/src/interfaces/scope.type.ts
@@ -0,0 +1 @@
+export type Scope = 'global' | 'instance' | 'static';
diff --git a/packages/docgen/src/interfaces/type.interface.ts b/packages/docgen/src/interfaces/type.interface.ts
new file mode 100644
index 000000000..6e623deb4
--- /dev/null
+++ b/packages/docgen/src/interfaces/type.interface.ts
@@ -0,0 +1,3 @@
+export interface Type {
+ names?: string[];
+}
diff --git a/packages/docgen/src/interfaces/typedef.interface.ts b/packages/docgen/src/interfaces/typedef.interface.ts
new file mode 100644
index 000000000..73da28bbe
--- /dev/null
+++ b/packages/docgen/src/interfaces/typedef.interface.ts
@@ -0,0 +1,14 @@
+import type { Access, Item, Meta, Param, Return, Scope, Type } from './index.js';
+
+export interface Typedef extends Item {
+ kind: 'typedef';
+ scope: Scope;
+ see?: string[];
+ access?: Access;
+ deprecated?: boolean | string;
+ type: Type;
+ properties?: Param[];
+ params?: Param[];
+ returns?: Return[];
+ meta: Meta;
+}
diff --git a/packages/docgen/src/interfaces/var-type.interface.ts b/packages/docgen/src/interfaces/var-type.interface.ts
new file mode 100644
index 000000000..421fe06ca
--- /dev/null
+++ b/packages/docgen/src/interfaces/var-type.interface.ts
@@ -0,0 +1,6 @@
+import type { Type } from './index.js';
+
+export interface VarType extends Type {
+ description?: string;
+ nullable?: boolean;
+}
diff --git a/packages/docgen/src/types/class.ts b/packages/docgen/src/types/class.ts
new file mode 100644
index 000000000..b740c91c0
--- /dev/null
+++ b/packages/docgen/src/types/class.ts
@@ -0,0 +1,76 @@
+import { Collection } from '@discordjs/collection';
+import { DocumentedConstructor } from './constructor.js';
+import { DocumentedEvent } from './event.js';
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import { DocumentedMember } from './member.js';
+import { DocumentedMethod } from './method.js';
+import { DocumentedVarType } from './var-type.js';
+import type { Class, Config } from '../interfaces/index.js';
+
+export class DocumentedClass extends DocumentedItem {
+ public readonly props = new Collection();
+
+ public readonly methods = new Collection();
+
+ public readonly events = new Collection();
+
+ public construct: DocumentedConstructor | null = null;
+
+ public extends: DocumentedVarType | null = null;
+
+ public implements: DocumentedVarType | null = null;
+
+ public constructor(data: Class, config: Config) {
+ super(data, config);
+
+ if (data.augments) {
+ this.extends = new DocumentedVarType({ names: data.augments }, this.config);
+ }
+
+ if (data.implements) {
+ this.implements = new DocumentedVarType({ names: data.implements }, this.config);
+ }
+ }
+
+ public add(item: DocumentedConstructor | DocumentedMethod | DocumentedMember | DocumentedEvent) {
+ if (item instanceof DocumentedConstructor) {
+ if (this.construct) throw new Error(`Doc ${this.data.name} already has constructor`);
+ this.construct = item;
+ } else if (item instanceof DocumentedMethod) {
+ const prefix = item.data.scope === 'static' ? 's-' : '';
+ if (this.methods.has(prefix + item.data.name)) {
+ throw new Error(`Doc ${this.data.name} already has method ${item.data.name}`);
+ }
+ this.methods.set(prefix + item.data.name, item);
+ } else if (item instanceof DocumentedMember) {
+ if (this.props.has(item.data.name)) {
+ throw new Error(`Doc ${this.data.name} already has prop ${item.data.name}`);
+ }
+ this.props.set(item.data.name, item);
+ } else if (item instanceof DocumentedEvent) {
+ if (this.events.has(item.data.name)) {
+ throw new Error(`Doc ${this.data.name} already has event ${item.data.name}`);
+ }
+ this.events.set(item.data.name, item);
+ }
+ }
+
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ extends: this.extends?.serialize(),
+ implements: this.implements?.serialize(),
+ access: this.data.access,
+ abstract: this.data.virtual,
+ deprecated: this.data.deprecated,
+ construct: this.construct?.serialize(),
+ props: this.props.size ? this.props.map((p) => p.serialize()) : undefined,
+ methods: this.methods.size ? this.methods.map((m) => m.serialize()) : undefined,
+ events: this.events.size ? this.events.map((e) => e.serialize()) : undefined,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/constructor.ts b/packages/docgen/src/types/constructor.ts
new file mode 100644
index 000000000..eb9c029ca
--- /dev/null
+++ b/packages/docgen/src/types/constructor.ts
@@ -0,0 +1,17 @@
+import { DocumentedItem } from './item.js';
+import { DocumentedParam } from './param.js';
+import type { Constructor } from '../interfaces/index.js';
+
+export class DocumentedConstructor extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ access: this.data.access,
+ params: this.data.params?.length
+ ? this.data.params.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ };
+ }
+}
diff --git a/packages/docgen/src/types/event.ts b/packages/docgen/src/types/event.ts
new file mode 100644
index 000000000..25ca0fddf
--- /dev/null
+++ b/packages/docgen/src/types/event.ts
@@ -0,0 +1,19 @@
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import { DocumentedParam } from './param.js';
+import type { Event } from '../interfaces/index.js';
+
+export class DocumentedEvent extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ deprecated: this.data.deprecated,
+ params: this.data.params?.length
+ ? this.data.params.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/external.ts b/packages/docgen/src/types/external.ts
new file mode 100644
index 000000000..477797972
--- /dev/null
+++ b/packages/docgen/src/types/external.ts
@@ -0,0 +1,14 @@
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import type { External } from '../interfaces/index.js';
+
+export class DocumentedExternal extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/interface.ts b/packages/docgen/src/types/interface.ts
new file mode 100644
index 000000000..39b94f1d4
--- /dev/null
+++ b/packages/docgen/src/types/interface.ts
@@ -0,0 +1,11 @@
+import { DocumentedClass } from './class.js';
+import type { Interface } from '../interfaces/index.js';
+
+export class DocumentedInterface extends DocumentedClass {
+ public override serializer() {
+ const data = this.data as unknown as Interface;
+ const serialized = super.serializer();
+ serialized.description = data.classdesc;
+ return serialized;
+ }
+}
diff --git a/packages/docgen/src/types/item-meta.ts b/packages/docgen/src/types/item-meta.ts
new file mode 100644
index 000000000..a1c6c1064
--- /dev/null
+++ b/packages/docgen/src/types/item-meta.ts
@@ -0,0 +1,13 @@
+import { relative } from 'path';
+import { DocumentedItem } from './item.js';
+import type { Meta } from '../interfaces/index.js';
+
+export class DocumentedItemMeta extends DocumentedItem {
+ public override serializer() {
+ return {
+ line: this.data.lineno,
+ file: this.data.filename,
+ path: relative(this.config.root, this.data.path).replace(/\\/g, '/'),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/item.ts b/packages/docgen/src/types/item.ts
new file mode 100644
index 000000000..5814440f9
--- /dev/null
+++ b/packages/docgen/src/types/item.ts
@@ -0,0 +1,27 @@
+import type { Config, Item } from '../interfaces/index.js';
+
+export class DocumentedItem {
+ public constructor(public readonly data: T, public readonly config: Config) {}
+
+ public serialize() {
+ try {
+ return this.serializer();
+ } catch (err) {
+ const error = err as Error;
+ error.message = `Error while serializing ${this.detailedName()}: ${error.message}`;
+ throw error;
+ }
+ }
+
+ protected serializer() {
+ throw new Error("Method 'serializer()' must be implemented.");
+ }
+
+ private detailedName() {
+ const data = this.data as Item | undefined;
+ if (!data) return this.constructor.name;
+ if (data.id) return `${data.id} (${this.constructor.name})`;
+ if (data.name) return `${data.name} (${this.constructor.name})`;
+ return this.constructor.name;
+ }
+}
diff --git a/packages/docgen/src/types/member.ts b/packages/docgen/src/types/member.ts
new file mode 100644
index 000000000..0c82c1452
--- /dev/null
+++ b/packages/docgen/src/types/member.ts
@@ -0,0 +1,44 @@
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import { DocumentedParam } from './param.js';
+import { DocumentedVarType } from './var-type.js';
+import type { Member } from '../interfaces/index.js';
+
+export class DocumentedMember extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ scope: this.data.scope,
+ access: this.data.access,
+ readonly: this.data.readonly,
+ nullable: this.data.nullable,
+ abstract: this.data.virtual,
+ deprecated: this.data.deprecated,
+ default: this.data.default,
+ type: new DocumentedVarType(this.data.type, this.config).serialize(),
+ props: this.data.properties?.length
+ ? this.data.properties.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
+
+/*
+{ id: 'Client#rest',
+ longname: 'Client#rest',
+ name: 'rest',
+ scope: 'instance',
+ kind: 'member',
+ description: 'The REST manager of the client',
+ memberof: 'Client',
+ type: { names: [ 'RESTManager' ] },
+ access: 'private',
+ meta:
+ { lineno: 32,
+ filename: 'Client.js',
+ path: 'src/client' },
+ order: 11 }
+*/
diff --git a/packages/docgen/src/types/method.ts b/packages/docgen/src/types/method.ts
new file mode 100644
index 000000000..4c2b2011c
--- /dev/null
+++ b/packages/docgen/src/types/method.ts
@@ -0,0 +1,34 @@
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import { DocumentedParam } from './param.js';
+import { DocumentedVarType } from './var-type.js';
+import type { Method } from '../interfaces/index.js';
+
+export class DocumentedMethod extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ scope: this.data.scope,
+ access: this.data.access,
+ inherits: this.data.inherits,
+ inherited: this.data.inherited,
+ implements: this.data.implements,
+ examples: this.data.examples,
+ abstract: this.data.virtual && !this.data.inherited,
+ deprecated: this.data.deprecated,
+ emits: this.data.fires,
+ throws: this.data.exceptions,
+ params: this.data.params?.length
+ ? this.data.params.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ async: this.data.async,
+ generator: this.data.generator,
+ returns: this.data.returns?.length
+ ? this.data.returns.map((p) => new DocumentedVarType(p, this.config).serialize())
+ : undefined,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/param.ts b/packages/docgen/src/types/param.ts
new file mode 100644
index 000000000..86f7e6908
--- /dev/null
+++ b/packages/docgen/src/types/param.ts
@@ -0,0 +1,17 @@
+import { DocumentedItem } from './item.js';
+import { DocumentedVarType } from './var-type.js';
+import type { Param } from '../interfaces/index.js';
+
+export class DocumentedParam extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ optional: this.data.optional,
+ default: this.data.defaultvalue,
+ variable: this.data.variable,
+ nullable: this.data.nullable,
+ type: new DocumentedVarType(this.data.type, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/typedef.ts b/packages/docgen/src/types/typedef.ts
new file mode 100644
index 000000000..d7abca9c1
--- /dev/null
+++ b/packages/docgen/src/types/typedef.ts
@@ -0,0 +1,28 @@
+import { DocumentedItemMeta } from './item-meta.js';
+import { DocumentedItem } from './item.js';
+import { DocumentedParam } from './param.js';
+import { DocumentedVarType } from './var-type.js';
+import type { Typedef } from '../interfaces/index.js';
+
+export class DocumentedTypeDef extends DocumentedItem {
+ public override serializer() {
+ return {
+ name: this.data.name,
+ description: this.data.description,
+ see: this.data.see,
+ access: this.data.access,
+ deprecated: this.data.deprecated,
+ type: new DocumentedVarType(this.data.type, this.config).serialize(),
+ props: this.data.properties?.length
+ ? this.data.properties.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ params: this.data.params?.length
+ ? this.data.params.map((p) => new DocumentedParam(p, this.config).serialize())
+ : undefined,
+ returns: this.data.returns?.length
+ ? this.data.returns.map((p) => new DocumentedVarType(p, this.config).serialize())
+ : undefined,
+ meta: new DocumentedItemMeta(this.data.meta, this.config).serialize(),
+ };
+ }
+}
diff --git a/packages/docgen/src/types/var-type.ts b/packages/docgen/src/types/var-type.ts
new file mode 100644
index 000000000..b18feadf5
--- /dev/null
+++ b/packages/docgen/src/types/var-type.ts
@@ -0,0 +1,34 @@
+import { DocumentedItem } from './item.js';
+import type { VarType } from '../interfaces/index.js';
+
+export class DocumentedVarType extends DocumentedItem {
+ public override serializer() {
+ const names = this.data.names?.map((name) => this.splitVarName(name));
+
+ if (!this.data.description && !this.data.nullable) {
+ return names;
+ }
+
+ return {
+ types: names,
+ description: this.data.description,
+ nullable: this.data.nullable,
+ };
+ }
+
+ private splitVarName(str: string) {
+ if (str === '*') return ['*'];
+ str = str.replace(/\./g, '');
+ const matches = str.match(/([\w*]+)([^\w*]+)/g);
+ const output = [];
+ if (matches) {
+ for (const match of matches) {
+ const groups = /([\w*]+)([^\w*]+)/.exec(match);
+ output.push([groups![1], groups![2]]);
+ }
+ } else {
+ output.push([str.match(/([\w*]+)/g)![0]]);
+ }
+ return output;
+ }
+}
diff --git a/packages/docgen/tsconfig.eslint.json b/packages/docgen/tsconfig.eslint.json
new file mode 100644
index 000000000..d04d4be3a
--- /dev/null
+++ b/packages/docgen/tsconfig.eslint.json
@@ -0,0 +1,20 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "allowJs": true
+ },
+ "include": [
+ "**/*.ts",
+ "**/*.tsx",
+ "**/*.js",
+ "**/*.mjs",
+ "**/*.jsx",
+ "**/*.test.ts",
+ "**/*.test.js",
+ "**/*.test.mjs",
+ "**/*.spec.ts",
+ "**/*.spec.js",
+ "**/*.spec.mjs"
+ ],
+ "exclude": []
+}
diff --git a/packages/docgen/tsconfig.json b/packages/docgen/tsconfig.json
new file mode 100644
index 000000000..fd8b5e417
--- /dev/null
+++ b/packages/docgen/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["src/**/*.ts"]
+}
diff --git a/packages/docgen/tsup.config.ts b/packages/docgen/tsup.config.ts
new file mode 100644
index 000000000..0699d3e27
--- /dev/null
+++ b/packages/docgen/tsup.config.ts
@@ -0,0 +1,13 @@
+import { defineConfig } from 'tsup';
+
+export default defineConfig({
+ clean: true,
+ dts: true,
+ entryPoints: ['src/index.ts'],
+ format: ['esm', 'cjs'],
+ keepNames: true,
+ minify: false,
+ skipNodeModulesBundle: true,
+ sourcemap: true,
+ target: 'es2021',
+});
diff --git a/packages/proxy/.gitignore b/packages/proxy/.gitignore
index b5e30aac1..a1f7b02f5 100644
--- a/packages/proxy/.gitignore
+++ b/packages/proxy/.gitignore
@@ -25,8 +25,3 @@ docs/**/*
.tmp/
coverage/
tsconfig.tsbuildinfo
-.turbo
-
-# Yarn files
-.yarn/install-state.gz
-.yarn/build-state.yml
diff --git a/packages/proxy/.prettierignore b/packages/proxy/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/proxy/.prettierignore
+++ b/packages/proxy/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/rest/.gitignore b/packages/rest/.gitignore
index b5e30aac1..a1f7b02f5 100644
--- a/packages/rest/.gitignore
+++ b/packages/rest/.gitignore
@@ -25,8 +25,3 @@ docs/**/*
.tmp/
coverage/
tsconfig.tsbuildinfo
-.turbo
-
-# Yarn files
-.yarn/install-state.gz
-.yarn/build-state.yml
diff --git a/packages/rest/.prettierignore b/packages/rest/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/rest/.prettierignore
+++ b/packages/rest/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/rest/LICENSE b/packages/rest/LICENSE
index ddcbd0bff..f0a87dd79 100644
--- a/packages/rest/LICENSE
+++ b/packages/rest/LICENSE
@@ -176,8 +176,8 @@
END OF TERMS AND CONDITIONS
Copyright 2021 Noel Buechler
- Copyright 2021 Antonio Román
Copyright 2021 Vlad Frangu
+ Copyright 2021 Antonio Román
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/packages/scripts/.gitignore b/packages/scripts/.gitignore
index 69227d965..5189c6c61 100644
--- a/packages/scripts/.gitignore
+++ b/packages/scripts/.gitignore
@@ -19,10 +19,6 @@ dist/
typings/
docs/**/*
-!docs/index.yml
-!docs/README.md
-!docs/examples/
-!docs/examples/*.md
# Miscellaneous
.tmp/
diff --git a/packages/scripts/.prettierignore b/packages/scripts/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/scripts/.prettierignore
+++ b/packages/scripts/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/scripts/LICENSE b/packages/scripts/LICENSE
index cbe9c6540..e2822e9d8 100644
--- a/packages/scripts/LICENSE
+++ b/packages/scripts/LICENSE
@@ -175,8 +175,7 @@
END OF TERMS AND CONDITIONS
- Copyright 2021 Noel Buechler
- Copyright 2021 Vlad Frangu
+ Copyright 2022 Noel Buechler
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/packages/voice/.prettierignore b/packages/voice/.prettierignore
index 553e0ea6c..a8f763a7c 100644
--- a/packages/voice/.prettierignore
+++ b/packages/voice/.prettierignore
@@ -6,3 +6,4 @@ docs/**/*
!docs/index.yml
!docs/README.md
coverage/
+tsup.config.*.mjs
diff --git a/packages/voice/LICENSE b/packages/voice/LICENSE
index fb66f2b1c..1675b6c15 100644
--- a/packages/voice/LICENSE
+++ b/packages/voice/LICENSE
@@ -175,7 +175,8 @@
END OF TERMS AND CONDITIONS
- Copyright 2020-2021 Amish Shah
+ Copyright 2022 Noel Buechler
+ Copyright 2020 Amish Shah
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/yarn.lock b/yarn.lock
index b3d34adcd..a6b458085 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1667,20 +1667,30 @@ __metadata:
languageName: unknown
linkType: soft
-"@discordjs/docgen@npm:^0.11.1":
- version: 0.11.1
- resolution: "@discordjs/docgen@npm:0.11.1"
+"@discordjs/docgen@workspace:^, @discordjs/docgen@workspace:packages/docgen":
+ version: 0.0.0-use.local
+ resolution: "@discordjs/docgen@workspace:packages/docgen"
dependencies:
- eslint: ^6.3.0
- js-yaml: ^3.13.1
- jsdoc-to-markdown: ^5.0.1
- tsubaki: ^1.3.2
- yargs: ^14.0.0
+ "@discordjs/collection": "workspace:^"
+ "@favware/cliff-jumper": ^1.8.3
+ "@types/jsdoc-to-markdown": ^7.0.3
+ "@types/node": ^16.11.38
+ "@typescript-eslint/eslint-plugin": ^5.27.1
+ "@typescript-eslint/parser": ^5.27.1
+ commander: ^9.3.0
+ eslint: ^8.17.0
+ eslint-config-marine: ^9.4.1
+ eslint-config-prettier: ^8.5.0
+ eslint-plugin-import: ^2.26.0
+ jsdoc-to-markdown: ^7.1.1
+ prettier: ^2.6.2
+ tslib: ^2.4.0
+ tsup: ^6.1.0
+ typescript: ^4.7.3
bin:
- docgen: src/index.js
- checksum: 3b183ee673b7910d33ccf0209835cb099f2a3e65972053b6be7493c0c07fd6ec30ccb3889d85abab5b7eaecf638b89ea27066e677ac190246a6e747a59993107
- languageName: node
- linkType: hard
+ docgen: ./dist/index.js
+ languageName: unknown
+ linkType: soft
"@discordjs/proxy@workspace:packages/proxy":
version: 0.0.0-use.local
@@ -2534,6 +2544,13 @@ __metadata:
languageName: node
linkType: hard
+"@types/jsdoc-to-markdown@npm:^7.0.3":
+ version: 7.0.3
+ resolution: "@types/jsdoc-to-markdown@npm:7.0.3"
+ checksum: f215d35d573616df64aa61358ea1576261afe81921940568e675e1b34e5b82694c3b59be1d02b3e6128c7f5f35b8c19ece4196f232b54fba1e723c85f484a03e
+ languageName: node
+ linkType: hard
+
"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.9":
version: 7.0.9
resolution: "@types/json-schema@npm:7.0.9"
@@ -2548,6 +2565,30 @@ __metadata:
languageName: node
linkType: hard
+"@types/linkify-it@npm:*":
+ version: 3.0.2
+ resolution: "@types/linkify-it@npm:3.0.2"
+ checksum: dff8f10fafb885422474e456596f12d518ec4cdd6c33cca7a08e7c86b912d301ed91cf5a7613e148c45a12600dc9ab3d85ad16d5b48dc1aaeda151a68f16b536
+ languageName: node
+ linkType: hard
+
+"@types/markdown-it@npm:^12.2.3":
+ version: 12.2.3
+ resolution: "@types/markdown-it@npm:12.2.3"
+ dependencies:
+ "@types/linkify-it": "*"
+ "@types/mdurl": "*"
+ checksum: 868824a3e4d00718ba9cd4762cf16694762a670860f4b402e6e9f952b6841a2027488bdc55d05c2b960bf5078df21a9d041270af7e8949514645fe88fdb722ac
+ languageName: node
+ linkType: hard
+
+"@types/mdurl@npm:*":
+ version: 1.0.2
+ resolution: "@types/mdurl@npm:1.0.2"
+ checksum: 79c7e523b377f53cf1f5a240fe23d0c6cae856667692bd21bf1d064eafe5ccc40ae39a2aa0a9a51e8c94d1307228c8f6b121e847124591a9a828c3baf65e86e2
+ languageName: node
+ linkType: hard
+
"@types/minimist@npm:^1.2.0":
version: 1.2.2
resolution: "@types/minimist@npm:1.2.2"
@@ -2807,7 +2848,7 @@ __metadata:
languageName: node
linkType: hard
-"acorn-jsx@npm:^5.2.0, acorn-jsx@npm:^5.3.2":
+"acorn-jsx@npm:^5.3.2":
version: 5.3.2
resolution: "acorn-jsx@npm:5.3.2"
peerDependencies:
@@ -2823,15 +2864,6 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^7.1.1":
- version: 7.4.1
- resolution: "acorn@npm:7.4.1"
- bin:
- acorn: bin/acorn
- checksum: 1860f23c2107c910c6177b7b7be71be350db9e1080d814493fae143ae37605189504152d1ba8743ba3178d0b37269ce1ffc42b101547fdc1827078f82671e407
- languageName: node
- linkType: hard
-
"acorn@npm:^8.4.1":
version: 8.7.0
resolution: "acorn@npm:8.7.0"
@@ -2887,7 +2919,7 @@ __metadata:
languageName: node
linkType: hard
-"ajv@npm:^6.10.0, ajv@npm:^6.10.2, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.12.6":
+"ajv@npm:^6.10.0, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.12.6":
version: 6.12.6
resolution: "ajv@npm:6.12.6"
dependencies:
@@ -2924,13 +2956,6 @@ __metadata:
languageName: node
linkType: hard
-"ansi-regex@npm:^4.1.0":
- version: 4.1.0
- resolution: "ansi-regex@npm:4.1.0"
- checksum: 97aa4659538d53e5e441f5ef2949a3cffcb838e57aeaad42c4194e9d7ddb37246a6526c4ca85d3940a9d1e19b11cc2e114530b54c9d700c8baf163c31779baf8
- languageName: node
- linkType: hard
-
"ansi-regex@npm:^5.0.1":
version: 5.0.1
resolution: "ansi-regex@npm:5.0.1"
@@ -2945,7 +2970,7 @@ __metadata:
languageName: node
linkType: hard
-"ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1":
+"ansi-styles@npm:^3.2.1":
version: 3.2.1
resolution: "ansi-styles@npm:3.2.1"
dependencies:
@@ -3044,7 +3069,7 @@ __metadata:
languageName: node
linkType: hard
-"array-back@npm:^1.0.2, array-back@npm:^1.0.3, array-back@npm:^1.0.4":
+"array-back@npm:^1.0.2, array-back@npm:^1.0.3":
version: 1.0.4
resolution: "array-back@npm:1.0.4"
dependencies:
@@ -3069,13 +3094,27 @@ __metadata:
languageName: node
linkType: hard
-"array-back@npm:^4.0.0, array-back@npm:^4.0.1":
+"array-back@npm:^4.0.1":
version: 4.0.2
resolution: "array-back@npm:4.0.2"
checksum: f30603270771eeb54e5aad5f54604c62b3577a18b6db212a7272b2b6c32049121b49431f656654790ed1469411e45f387e7627c0de8fd0515995cc40df9b9294
languageName: node
linkType: hard
+"array-back@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "array-back@npm:5.0.0"
+ checksum: 4e42d54e4b748dff229981df778cef8b8093f8bd1b6f1cdbfb92e89f883ddafd3e0e7b20939eb3d7b8a85b478c1b77924545923e6aad571c16ebb022a54805d5
+ languageName: node
+ linkType: hard
+
+"array-back@npm:^6.2.2":
+ version: 6.2.2
+ resolution: "array-back@npm:6.2.2"
+ checksum: baae1e3a1687300a307d3bdf09715f6415e1099b5729d3d8e397309fb1e43d90b939d694602892172aaca7e0aeed38da89d04aa4951637d31c2a21350809e003
+ languageName: node
+ linkType: hard
+
"array-ify@npm:^1.0.0":
version: 1.0.0
resolution: "array-ify@npm:1.0.0"
@@ -3151,13 +3190,6 @@ __metadata:
languageName: node
linkType: hard
-"astral-regex@npm:^1.0.0":
- version: 1.0.0
- resolution: "astral-regex@npm:1.0.0"
- checksum: 93417fc0879531cd95ace2560a54df865c9461a3ac0714c60cbbaa5f1f85d2bee85489e78d82f70b911b71ac25c5f05fc5a36017f44c9bb33c701bee229ff848
- languageName: node
- linkType: hard
-
"asynckit@npm:^0.4.0":
version: 0.4.0
resolution: "asynckit@npm:0.4.0"
@@ -3517,14 +3549,14 @@ __metadata:
languageName: node
linkType: hard
-"cache-point@npm:^1.0.0":
- version: 1.0.0
- resolution: "cache-point@npm:1.0.0"
+"cache-point@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "cache-point@npm:2.0.0"
dependencies:
- array-back: ^4.0.0
+ array-back: ^4.0.1
fs-then-native: ^2.0.0
mkdirp2: ^1.0.4
- checksum: 9a90f49d7aa09db05d21e0b08595b44447c05067121496b9267f025a65e3a8ab57c29292b5f3ea8beb754ec52be34697e9b69cf7803769cb7244350629b59806
+ checksum: 700466a46596ff84a68d061a169a1f50892050a32cdd4ded0a69c44a9626cce599e22e7baaf26d19b12db4b86a86c727ddfa7d67fbd6e8025f1e2f436f68a318
languageName: node
linkType: hard
@@ -3621,7 +3653,7 @@ __metadata:
languageName: node
linkType: hard
-"chalk@npm:^2.0.0, chalk@npm:^2.1.0, chalk@npm:^2.3.0":
+"chalk@npm:^2.0.0, chalk@npm:^2.3.0":
version: 2.4.2
resolution: "chalk@npm:2.4.2"
dependencies:
@@ -3649,13 +3681,6 @@ __metadata:
languageName: node
linkType: hard
-"chardet@npm:^0.7.0":
- version: 0.7.0
- resolution: "chardet@npm:0.7.0"
- checksum: 6fd5da1f5d18ff5712c1e0aed41da200d7c51c28f11b36ee3c7b483f3696dabc08927fc6b227735eb8f0e1215c9a8abd8154637f3eff8cada5959df7f58b024d
- languageName: node
- linkType: hard
-
"charm@npm:^1.0.2":
version: 1.0.2
resolution: "charm@npm:1.0.2"
@@ -3719,33 +3744,6 @@ __metadata:
languageName: node
linkType: hard
-"cli-cursor@npm:^3.1.0":
- version: 3.1.0
- resolution: "cli-cursor@npm:3.1.0"
- dependencies:
- restore-cursor: ^3.1.0
- checksum: 2692784c6cd2fd85cfdbd11f53aea73a463a6d64a77c3e098b2b4697a20443f430c220629e1ca3b195ea5ac4a97a74c2ee411f3807abf6df2b66211fec0c0a29
- languageName: node
- linkType: hard
-
-"cli-width@npm:^3.0.0":
- version: 3.0.0
- resolution: "cli-width@npm:3.0.0"
- checksum: 4c94af3769367a70e11ed69aa6095f1c600c0ff510f3921ab4045af961820d57c0233acfa8b6396037391f31b4c397e1f614d234294f979ff61430a6c166c3f6
- languageName: node
- linkType: hard
-
-"cliui@npm:^5.0.0":
- version: 5.0.0
- resolution: "cliui@npm:5.0.0"
- dependencies:
- string-width: ^3.1.0
- strip-ansi: ^5.2.0
- wrap-ansi: ^5.1.0
- checksum: 0bb8779efe299b8f3002a73619eaa8add4081eb8d1c17bc4fedc6240557fb4eacdc08fe87c39b002eacb6cfc117ce736b362dbfd8bf28d90da800e010ee97df4
- languageName: node
- linkType: hard
-
"cliui@npm:^6.0.0":
version: 6.0.0
resolution: "cliui@npm:6.0.0"
@@ -3782,7 +3780,7 @@ __metadata:
languageName: node
linkType: hard
-"collect-all@npm:^1.0.3":
+"collect-all@npm:^1.0.4":
version: 1.0.4
resolution: "collect-all@npm:1.0.4"
dependencies:
@@ -3935,7 +3933,7 @@ __metadata:
languageName: node
linkType: hard
-"common-sequence@npm:^2.0.0":
+"common-sequence@npm:^2.0.2":
version: 2.0.2
resolution: "common-sequence@npm:2.0.2"
checksum: 35c183bac415c6069840940145c7251121fcc13d2166af8e764bc98c40be7ffaaf050bdba2ec85f9c2ab6a41f115e642d6becf44e0fb2bbd3c19f49a794ee196
@@ -4288,19 +4286,6 @@ __metadata:
languageName: node
linkType: hard
-"cross-spawn@npm:^6.0.5":
- version: 6.0.5
- resolution: "cross-spawn@npm:6.0.5"
- dependencies:
- nice-try: ^1.0.4
- path-key: ^2.0.1
- semver: ^5.5.0
- shebang-command: ^1.2.0
- which: ^1.2.9
- checksum: f893bb0d96cd3d5751d04e67145bdddf25f99449531a72e82dcbbd42796bbc8268c1076c6b3ea51d4d455839902804b94bc45dfb37ecbb32ea8e54a6741c3ab9
- languageName: node
- linkType: hard
-
"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3":
version: 7.0.3
resolution: "cross-spawn@npm:7.0.3"
@@ -4335,7 +4320,7 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2":
+"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2":
version: 4.3.3
resolution: "debug@npm:4.3.3"
dependencies:
@@ -4417,7 +4402,7 @@ __metadata:
languageName: node
linkType: hard
-"deep-is@npm:^0.1.3, deep-is@npm:~0.1.3":
+"deep-is@npm:^0.1.3":
version: 0.1.4
resolution: "deep-is@npm:0.1.4"
checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804
@@ -4535,7 +4520,7 @@ __metadata:
dependencies:
"@discordjs/builders": "workspace:^"
"@discordjs/collection": "workspace:^"
- "@discordjs/docgen": ^0.11.1
+ "@discordjs/docgen": "workspace:^"
"@discordjs/rest": "workspace:^"
"@favware/cliff-jumper": ^1.8.3
"@sapphire/snowflake": ^3.2.2
@@ -4562,23 +4547,23 @@ __metadata:
languageName: unknown
linkType: soft
-"dmd@npm:^4.0.5":
- version: 4.0.6
- resolution: "dmd@npm:4.0.6"
+"dmd@npm:^6.1.0":
+ version: 6.1.0
+ resolution: "dmd@npm:6.1.0"
dependencies:
- array-back: ^4.0.1
- cache-point: ^1.0.0
- common-sequence: ^2.0.0
- file-set: ^3.0.0
- handlebars: ^4.5.3
- marked: ^0.7.0
- object-get: ^2.1.0
- reduce-flatten: ^3.0.0
+ array-back: ^6.2.2
+ cache-point: ^2.0.0
+ common-sequence: ^2.0.2
+ file-set: ^4.0.2
+ handlebars: ^4.7.7
+ marked: ^4.0.12
+ object-get: ^2.1.1
+ reduce-flatten: ^3.0.1
reduce-unique: ^2.0.1
reduce-without: ^1.0.1
test-value: ^3.0.0
- walk-back: ^4.0.0
- checksum: 66557567405bad29b3f946760128da8d9ff765fe0a966be71563858d0f4f1170cb1bf7821414e01a270c35257622c89afa36245c1b9b6dd1cba28abd6c4cff5f
+ walk-back: ^5.1.0
+ checksum: 3ae5730dac70e261c321299b2a4b355822660ab54da8a75d1521cc3f9cf8546c634fea7d42f24e3374ca7b34895590fdd92e536caf1f18c2a0db12eff3aa18e4
languageName: node
linkType: hard
@@ -4671,13 +4656,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"emoji-regex@npm:^7.0.1":
- version: 7.0.3
- resolution: "emoji-regex@npm:7.0.3"
- checksum: 9159b2228b1511f2870ac5920f394c7e041715429a68459ebe531601555f11ea782a8e1718f969df2711d38c66268174407cbca57ce36485544f695c2dfdc96e
- languageName: node
- linkType: hard
-
"emoji-regex@npm:^8.0.0":
version: 8.0.0
resolution: "emoji-regex@npm:8.0.0"
@@ -4703,10 +4681,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"entities@npm:~2.0.0":
- version: 2.0.3
- resolution: "entities@npm:2.0.3"
- checksum: 5a7899fcc622e0d76afdeafe4c58a6b40ae3a8ee4772e5825a648c11a2ca324a9a02515386f512e466baac4aeb551f3d3b79eaece5cd98369b9f8601be336b1a
+"entities@npm:~2.1.0":
+ version: 2.1.0
+ resolution: "entities@npm:2.1.0"
+ checksum: a10a877e489586a3f6a691fe49bf3fc4e58f06c8e80522f08214a5150ba457e7017b447d4913a3fa041bda06ee4c92517baa4d8d75373eaa79369e9639225ffd
languageName: node
linkType: hard
@@ -5330,7 +5308,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"eslint-scope@npm:^5.0.0, eslint-scope@npm:^5.1.1":
+"eslint-scope@npm:^5.1.1":
version: 5.1.1
resolution: "eslint-scope@npm:5.1.1"
dependencies:
@@ -5350,15 +5328,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"eslint-utils@npm:^1.4.3":
- version: 1.4.3
- resolution: "eslint-utils@npm:1.4.3"
- dependencies:
- eslint-visitor-keys: ^1.1.0
- checksum: a20630e686034107138272f245c460f6d77705d1f4bb0628c1a1faf59fc800f441188916b3ec3b957394dc405aa200a3017dfa2b0fff0976e307a4e645a18d1e
- languageName: node
- linkType: hard
-
"eslint-utils@npm:^3.0.0":
version: 3.0.0
resolution: "eslint-utils@npm:3.0.0"
@@ -5370,13 +5339,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"eslint-visitor-keys@npm:^1.1.0":
- version: 1.3.0
- resolution: "eslint-visitor-keys@npm:1.3.0"
- checksum: 37a19b712f42f4c9027e8ba98c2b06031c17e0c0a4c696cd429bd9ee04eb43889c446f2cd545e1ff51bef9593fcec94ecd2c2ef89129fcbbf3adadbef520376a
- languageName: node
- linkType: hard
-
"eslint-visitor-keys@npm:^2.0.0":
version: 2.1.0
resolution: "eslint-visitor-keys@npm:2.1.0"
@@ -5391,53 +5353,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"eslint@npm:^6.3.0":
- version: 6.8.0
- resolution: "eslint@npm:6.8.0"
- dependencies:
- "@babel/code-frame": ^7.0.0
- ajv: ^6.10.0
- chalk: ^2.1.0
- cross-spawn: ^6.0.5
- debug: ^4.0.1
- doctrine: ^3.0.0
- eslint-scope: ^5.0.0
- eslint-utils: ^1.4.3
- eslint-visitor-keys: ^1.1.0
- espree: ^6.1.2
- esquery: ^1.0.1
- esutils: ^2.0.2
- file-entry-cache: ^5.0.1
- functional-red-black-tree: ^1.0.1
- glob-parent: ^5.0.0
- globals: ^12.1.0
- ignore: ^4.0.6
- import-fresh: ^3.0.0
- imurmurhash: ^0.1.4
- inquirer: ^7.0.0
- is-glob: ^4.0.0
- js-yaml: ^3.13.1
- json-stable-stringify-without-jsonify: ^1.0.1
- levn: ^0.3.0
- lodash: ^4.17.14
- minimatch: ^3.0.4
- mkdirp: ^0.5.1
- natural-compare: ^1.4.0
- optionator: ^0.8.3
- progress: ^2.0.0
- regexpp: ^2.0.1
- semver: ^6.1.2
- strip-ansi: ^5.2.0
- strip-json-comments: ^3.0.1
- table: ^5.2.3
- text-table: ^0.2.0
- v8-compile-cache: ^2.0.3
- bin:
- eslint: ./bin/eslint.js
- checksum: d4edbe69589ef194e7d3470a18632560c5399a5f685295bd59a11cddba4c6f7e03a137a15a21389f8f85712ebd82d0a628ee4e9cd4391113556029c486616e25
- languageName: node
- linkType: hard
-
"eslint@npm:^8.17.0":
version: 8.17.0
resolution: "eslint@npm:8.17.0"
@@ -5483,17 +5398,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"espree@npm:^6.1.2":
- version: 6.2.1
- resolution: "espree@npm:6.2.1"
- dependencies:
- acorn: ^7.1.1
- acorn-jsx: ^5.2.0
- eslint-visitor-keys: ^1.1.0
- checksum: 99c508950b5b9f53d008d781d2abb7a4ef3496ea699306fb6eb737c7e513aa594644314364c50ec27abb220124c6851fff64a6b62c358479534369904849360b
- languageName: node
- linkType: hard
-
"espree@npm:^9.3.2":
version: 9.3.2
resolution: "espree@npm:9.3.2"
@@ -5515,7 +5419,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esquery@npm:^1.0.1, esquery@npm:^1.4.0":
+"esquery@npm:^1.4.0":
version: 1.4.0
resolution: "esquery@npm:1.4.0"
dependencies:
@@ -5598,17 +5502,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"external-editor@npm:^3.0.3":
- version: 3.1.0
- resolution: "external-editor@npm:3.1.0"
- dependencies:
- chardet: ^0.7.0
- iconv-lite: ^0.4.24
- tmp: ^0.0.33
- checksum: 1c2a616a73f1b3435ce04030261bed0e22d4737e14b090bb48e58865da92529c9f2b05b893de650738d55e692d071819b45e1669259b2b354bc3154d27a698c7
- languageName: node
- linkType: hard
-
"extsprintf@npm:1.3.0":
version: 1.3.0
resolution: "extsprintf@npm:1.3.0"
@@ -5670,7 +5563,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"fast-levenshtein@npm:^2.0.6, fast-levenshtein@npm:~2.0.6":
+"fast-levenshtein@npm:^2.0.6":
version: 2.0.6
resolution: "fast-levenshtein@npm:2.0.6"
checksum: 92cfec0a8dfafd9c7a15fba8f2cc29cd0b62b85f056d99ce448bbcd9f708e18ab2764bda4dd5158364f4145a7c72788538994f0d1787b956ef0d1062b0f7c24c
@@ -5702,24 +5595,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"figures@npm:^3.0.0":
- version: 3.2.0
- resolution: "figures@npm:3.2.0"
- dependencies:
- escape-string-regexp: ^1.0.5
- checksum: 85a6ad29e9aca80b49b817e7c89ecc4716ff14e3779d9835af554db91bac41c0f289c418923519392a1e582b4d10482ad282021330cd045bb7b80c84152f2a2b
- languageName: node
- linkType: hard
-
-"file-entry-cache@npm:^5.0.1":
- version: 5.0.1
- resolution: "file-entry-cache@npm:5.0.1"
- dependencies:
- flat-cache: ^2.0.1
- checksum: 9014b17766815d59b8b789633aed005242ef857348c09be558bd85b4a24e16b0ad1e0e5229ccea7a2109f74ef1b3db1a559b58afe12b884f09019308711376fd
- languageName: node
- linkType: hard
-
"file-entry-cache@npm:^6.0.1":
version: 6.0.1
resolution: "file-entry-cache@npm:6.0.1"
@@ -5729,23 +5604,13 @@ dts-critic@latest:
languageName: node
linkType: hard
-"file-set@npm:^2.0.1":
- version: 2.0.1
- resolution: "file-set@npm:2.0.1"
+"file-set@npm:^4.0.2":
+ version: 4.0.2
+ resolution: "file-set@npm:4.0.2"
dependencies:
- array-back: ^2.0.0
- glob: ^7.1.3
- checksum: 8fdeebbbcacff466d78288645f5c8f2ee6409225b39ded802f1e768fc6ded1b29765baa5b467949a87f5d594f87fd6fce77085fde26f97ea452288a2caae6eb5
- languageName: node
- linkType: hard
-
-"file-set@npm:^3.0.0":
- version: 3.0.0
- resolution: "file-set@npm:3.0.0"
- dependencies:
- array-back: ^4.0.0
- glob: ^7.1.5
- checksum: 030ff37c8c3ead906d33ad641c3b45eefd1758bf168097474fa01723d8533db87183a752d263e70f39341d9090671b95d446df7a3dfff5b63a06b118a281aef0
+ array-back: ^5.0.0
+ glob: ^7.1.6
+ checksum: 6eacb9df4a0a95fbfb09e8ccdf8c3ef7f30de8c0b5043ff0530a79c0c0003550a0725eba517a5c7fe1c452df57c3b4d506e91859ccc248aebb2f038790eb66e6
languageName: node
linkType: hard
@@ -5776,15 +5641,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"find-up@npm:^3.0.0":
- version: 3.0.0
- resolution: "find-up@npm:3.0.0"
- dependencies:
- locate-path: ^3.0.0
- checksum: 38eba3fe7a66e4bc7f0f5a1366dc25508b7cfc349f852640e3678d26ad9a6d7e2c43eff0a472287de4a9753ef58f066a0ea892a256fa3636ad51b3fe1e17fae9
- languageName: node
- linkType: hard
-
"find-up@npm:^4.0.0, find-up@npm:^4.1.0":
version: 4.1.0
resolution: "find-up@npm:4.1.0"
@@ -5805,17 +5661,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"flat-cache@npm:^2.0.1":
- version: 2.0.1
- resolution: "flat-cache@npm:2.0.1"
- dependencies:
- flatted: ^2.0.0
- rimraf: 2.6.3
- write: 1.0.3
- checksum: 0f5e66467658039e6fcaaccb363b28f43906ba72fab7ff2a4f6fcd5b4899679e13ca46d9fc6cc48b68ac925ae93137106d4aaeb79874c13f21f87a361705f1b1
- languageName: node
- linkType: hard
-
"flat-cache@npm:^3.0.4":
version: 3.0.4
resolution: "flat-cache@npm:3.0.4"
@@ -5826,13 +5671,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"flatted@npm:^2.0.0":
- version: 2.0.2
- resolution: "flatted@npm:2.0.2"
- checksum: 473c754db7a529e125a22057098f1a4c905ba17b8cc269c3acf77352f0ffa6304c851eb75f6a1845f74461f560e635129ca6b0b8a78fb253c65cea4de3d776f2
- languageName: node
- linkType: hard
-
"flatted@npm:^3.1.0":
version: 3.2.4
resolution: "flatted@npm:3.2.4"
@@ -6157,7 +5995,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"glob-parent@npm:^5.0.0, glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2":
+"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2":
version: 5.1.2
resolution: "glob-parent@npm:5.1.2"
dependencies:
@@ -6189,7 +6027,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.5, glob@npm:^7.2.0":
+"glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.2.0":
version: 7.2.0
resolution: "glob@npm:7.2.0"
dependencies:
@@ -6203,6 +6041,20 @@ dts-critic@latest:
languageName: node
linkType: hard
+"glob@npm:^7.1.6":
+ version: 7.2.3
+ resolution: "glob@npm:7.2.3"
+ dependencies:
+ fs.realpath: ^1.0.0
+ inflight: ^1.0.4
+ inherits: 2
+ minimatch: ^3.1.1
+ once: ^1.3.0
+ path-is-absolute: ^1.0.0
+ checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133
+ languageName: node
+ linkType: hard
+
"glob@npm:^8.0.3":
version: 8.0.3
resolution: "glob@npm:8.0.3"
@@ -6232,15 +6084,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"globals@npm:^12.1.0":
- version: 12.4.0
- resolution: "globals@npm:12.4.0"
- dependencies:
- type-fest: ^0.8.1
- checksum: 7ae5ee16a96f1e8d71065405f57da0e33267f6b070cd36a5444c7780dd28639b48b92413698ac64f04bf31594f9108878bd8cb158ecdf759c39e05634fefcca6
- languageName: node
- linkType: hard
-
"globals@npm:^13.15.0":
version: 13.15.0
resolution: "globals@npm:13.15.0"
@@ -6278,7 +6121,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.1.9, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4":
+"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4":
version: 4.2.8
resolution: "graceful-fs@npm:4.2.8"
checksum: 5d224c8969ad0581d551dfabdb06882706b31af2561bd5e2034b4097e67cc27d05232849b8643866585fd0a41c7af152950f8776f4dd5579e9853733f31461c6
@@ -6299,7 +6142,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"handlebars@npm:^4.5.3, handlebars@npm:^4.7.7":
+"handlebars@npm:^4.7.7":
version: 4.7.7
resolution: "handlebars@npm:4.7.7"
dependencies:
@@ -6497,15 +6340,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"iconv-lite@npm:^0.4.24":
- version: 0.4.24
- resolution: "iconv-lite@npm:0.4.24"
- dependencies:
- safer-buffer: ">= 2.1.2 < 3"
- checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6
- languageName: node
- linkType: hard
-
"iconv-lite@npm:^0.6.2":
version: 0.6.3
resolution: "iconv-lite@npm:0.6.3"
@@ -6522,13 +6356,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"ignore@npm:^4.0.6":
- version: 4.0.6
- resolution: "ignore@npm:4.0.6"
- checksum: 248f82e50a430906f9ee7f35e1158e3ec4c3971451dd9f99c9bc1548261b4db2b99709f60ac6c6cac9333494384176cc4cc9b07acbe42d52ac6a09cad734d800
- languageName: node
- linkType: hard
-
"ignore@npm:^5.1.4, ignore@npm:^5.2.0":
version: 5.2.0
resolution: "ignore@npm:5.2.0"
@@ -6603,27 +6430,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"inquirer@npm:^7.0.0":
- version: 7.3.3
- resolution: "inquirer@npm:7.3.3"
- dependencies:
- ansi-escapes: ^4.2.1
- chalk: ^4.1.0
- cli-cursor: ^3.1.0
- cli-width: ^3.0.0
- external-editor: ^3.0.3
- figures: ^3.0.0
- lodash: ^4.17.19
- mute-stream: 0.0.8
- run-async: ^2.4.0
- rxjs: ^6.6.0
- string-width: ^4.1.0
- strip-ansi: ^6.0.0
- through: ^2.3.6
- checksum: 4d387fc1eb6126acbd58cbdb9ad99d2887d181df86ab0c2b9abdf734e751093e2d5882c2b6dc7144d9ab16b7ab30a78a1d7f01fb6a2850a44aeb175d1e3f8778
- languageName: node
- linkType: hard
-
"internal-slot@npm:^1.0.3":
version: 1.0.3
resolution: "internal-slot@npm:1.0.3"
@@ -6745,13 +6551,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-fullwidth-code-point@npm:^2.0.0":
- version: 2.0.0
- resolution: "is-fullwidth-code-point@npm:2.0.0"
- checksum: eef9c6e15f68085fec19ff6a978a6f1b8f48018fd1265035552078ee945573594933b09bbd6f562553e2a241561439f1ef5339276eba68d272001343084cfab8
- languageName: node
- linkType: hard
-
"is-fullwidth-code-point@npm:^3.0.0":
version: 3.0.0
resolution: "is-fullwidth-code-point@npm:3.0.0"
@@ -7508,7 +7307,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"js2xmlparser@npm:^4.0.1":
+"js2xmlparser@npm:^4.0.2":
version: 4.0.2
resolution: "js2xmlparser@npm:4.0.2"
dependencies:
@@ -7524,75 +7323,76 @@ dts-critic@latest:
languageName: node
linkType: hard
-"jsdoc-api@npm:^5.0.4":
- version: 5.0.4
- resolution: "jsdoc-api@npm:5.0.4"
+"jsdoc-api@npm:^7.1.1":
+ version: 7.1.1
+ resolution: "jsdoc-api@npm:7.1.1"
dependencies:
- array-back: ^4.0.0
- cache-point: ^1.0.0
- collect-all: ^1.0.3
- file-set: ^2.0.1
+ array-back: ^6.2.2
+ cache-point: ^2.0.0
+ collect-all: ^1.0.4
+ file-set: ^4.0.2
fs-then-native: ^2.0.0
- jsdoc: ^3.6.3
- object-to-spawn-args: ^1.1.1
+ jsdoc: ^3.6.10
+ object-to-spawn-args: ^2.0.1
temp-path: ^1.0.0
- walk-back: ^3.0.1
- checksum: d980c92392cd171f903c39fd0b689ab33ce72861d7fc184c1f067da2d44d05b9e80882ec9be84c06c795d42b57d5d6a3bca723866f20463c7f7af5e2d059348e
+ walk-back: ^5.1.0
+ checksum: 9d9e361f84208137e261e90b7291269cf3114d57091161ba58628652f2f143be8bbebeab6de0964dd5b474c4777d56ccb606733390e15bd84d9b3f2f269d7312
languageName: node
linkType: hard
-"jsdoc-parse@npm:^4.0.1":
- version: 4.0.1
- resolution: "jsdoc-parse@npm:4.0.1"
+"jsdoc-parse@npm:^6.1.0":
+ version: 6.1.0
+ resolution: "jsdoc-parse@npm:6.1.0"
dependencies:
- array-back: ^4.0.0
+ array-back: ^6.2.2
lodash.omit: ^4.5.0
lodash.pick: ^4.4.0
reduce-extract: ^1.0.0
- sort-array: ^2.0.0
+ sort-array: ^4.1.4
test-value: ^3.0.0
- checksum: 748c6dcd7d315ba9ec0372db957ee2840086bcfeaeeaca91a71d97273aa9bcd86750fbaad1f9d117f9302145ccf18432137ecebd6f0a66c794831c017c184a00
+ checksum: a4294105d70157d033ce3d64104d0e6251dd42612cd489f0bc6ac6afb9df1fc36d5f979f115f4ad221d473b4b3c8a2dc148b80b64f046c98ba4b9ea93446b305
languageName: node
linkType: hard
-"jsdoc-to-markdown@npm:^5.0.1":
- version: 5.0.3
- resolution: "jsdoc-to-markdown@npm:5.0.3"
+"jsdoc-to-markdown@npm:^7.1.1":
+ version: 7.1.1
+ resolution: "jsdoc-to-markdown@npm:7.1.1"
dependencies:
- array-back: ^4.0.1
+ array-back: ^6.2.2
command-line-tool: ^0.8.0
config-master: ^3.1.0
- dmd: ^4.0.5
- jsdoc-api: ^5.0.4
- jsdoc-parse: ^4.0.1
- walk-back: ^4.0.0
+ dmd: ^6.1.0
+ jsdoc-api: ^7.1.1
+ jsdoc-parse: ^6.1.0
+ walk-back: ^5.1.0
bin:
jsdoc2md: bin/cli.js
- checksum: 6961b70eb91de64b30c8266b7bc6e44868f37f4671c842ca1718526c3a366a30193634e03808d057940215ab7694fee27b0ed8ca389ba0ace69418b988a71381
+ checksum: bae4892fd552e65c46634b3a61fc9a15fd9bff26f2731fbc63cf8b8b75cbe0fa391af8ac04b53fac17a395cdde5c74ada1e6af479a39d2ba2758f5583ac3afc4
languageName: node
linkType: hard
-"jsdoc@npm:^3.6.3":
- version: 3.6.7
- resolution: "jsdoc@npm:3.6.7"
+"jsdoc@npm:^3.6.10":
+ version: 3.6.10
+ resolution: "jsdoc@npm:3.6.10"
dependencies:
"@babel/parser": ^7.9.4
+ "@types/markdown-it": ^12.2.3
bluebird: ^3.7.2
catharsis: ^0.9.0
escape-string-regexp: ^2.0.0
- js2xmlparser: ^4.0.1
- klaw: ^3.0.0
- markdown-it: ^10.0.0
- markdown-it-anchor: ^5.2.7
- marked: ^2.0.3
+ js2xmlparser: ^4.0.2
+ klaw: ^4.0.1
+ markdown-it: ^12.3.2
+ markdown-it-anchor: ^8.4.1
+ marked: ^4.0.10
mkdirp: ^1.0.4
requizzle: ^0.2.3
strip-json-comments: ^3.1.0
taffydb: 2.6.2
- underscore: ~1.13.1
+ underscore: ~1.13.2
bin:
jsdoc: jsdoc.js
- checksum: 5733cf01b8544a39b16a86fa620c23c849900cb0cd0dc893bccbeef1c7de20bb88ae837257a58d719d7583bdc3aecded24c06b12c0c2a32a4988c9367b5c143a
+ checksum: 8902aa91a51c393036e0c4701ec6b1134dee5f0b42e6b9c7660958410200868368d6bf3df537d1c0fbcd193da83cbea9b8a60804f93bca658bc10e37ae999ab7
languageName: node
linkType: hard
@@ -7750,12 +7550,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"klaw@npm:^3.0.0":
- version: 3.0.0
- resolution: "klaw@npm:3.0.0"
- dependencies:
- graceful-fs: ^4.1.9
- checksum: 1bf9de22392c80d28de8a2babd6f0de29fa52fcdc1654838fd35174b3641c168ec32b8b03022191e3c190efd535c31fce23f85e29cb260245571da7263ef418e
+"klaw@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "klaw@npm:4.0.1"
+ checksum: 7835649ef632f96099d500f94b38c032acf1432ad5e87da596a2509c2f6a63a7fc346fb357e2227091cc433af5c1378ed448e1c0522ed028981dcd446152291e
languageName: node
linkType: hard
@@ -7773,16 +7571,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"levn@npm:^0.3.0, levn@npm:~0.3.0":
- version: 0.3.0
- resolution: "levn@npm:0.3.0"
- dependencies:
- prelude-ls: ~1.1.2
- type-check: ~0.3.2
- checksum: 0d084a524231a8246bb10fec48cdbb35282099f6954838604f3c7fc66f2e16fa66fd9cc2f3f20a541a113c4dafdf181e822c887c8a319c9195444e6c64ac395e
- languageName: node
- linkType: hard
-
"levn@npm:^0.4.1":
version: 0.4.1
resolution: "levn@npm:0.4.1"
@@ -7807,12 +7595,12 @@ dts-critic@latest:
languageName: node
linkType: hard
-"linkify-it@npm:^2.0.0":
- version: 2.2.0
- resolution: "linkify-it@npm:2.2.0"
+"linkify-it@npm:^3.0.1":
+ version: 3.0.3
+ resolution: "linkify-it@npm:3.0.3"
dependencies:
uc.micro: ^1.0.1
- checksum: d198871d0b3f3cfdb745dae564bfd6743474f20cd0ef1057e6ca29451834749e7f3da52b59b4de44e98f31a1e5c71bdad160490d4ae54de251cbcde57e4d7837
+ checksum: 31367a4bb70c5bbc9703246236b504b0a8e049bcd4e0de4291fa50f0ebdebf235b5eb54db6493cb0b1319357c6eeafc4324c9f4aa34b0b943d9f2e11a1268fbc
languageName: node
linkType: hard
@@ -7852,16 +7640,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"locate-path@npm:^3.0.0":
- version: 3.0.0
- resolution: "locate-path@npm:3.0.0"
- dependencies:
- p-locate: ^3.0.0
- path-exists: ^3.0.0
- checksum: 53db3996672f21f8b0bf2a2c645ae2c13ffdae1eeecfcd399a583bce8516c0b88dcb4222ca6efbbbeb6949df7e46860895be2c02e8d3219abd373ace3bfb4e11
- languageName: node
- linkType: hard
-
"locate-path@npm:^5.0.0":
version: 5.0.0
resolution: "locate-path@npm:5.0.0"
@@ -8048,45 +7826,37 @@ dts-critic@latest:
languageName: node
linkType: hard
-"markdown-it-anchor@npm:^5.2.7":
- version: 5.3.0
- resolution: "markdown-it-anchor@npm:5.3.0"
+"markdown-it-anchor@npm:^8.4.1":
+ version: 8.6.4
+ resolution: "markdown-it-anchor@npm:8.6.4"
peerDependencies:
+ "@types/markdown-it": "*"
markdown-it: "*"
- checksum: e1092fe45001ec9fb6df24afcada4f0cb774eebbe76db7c57943bcd84e0977c85764c5e6cd539617eef2a0f0c7abed59890f748b55c7379e2e4c45ff8b69f813
+ checksum: bde310d0202450a228662921df9d9c2e95b3c5762512e8eed1d472fcc812fb20e6b4e98480cda88c8b56b0baf34ac70d6bf8404309c5a2321ebe62da43cd6fe6
languageName: node
linkType: hard
-"markdown-it@npm:^10.0.0":
- version: 10.0.0
- resolution: "markdown-it@npm:10.0.0"
+"markdown-it@npm:^12.3.2":
+ version: 12.3.2
+ resolution: "markdown-it@npm:12.3.2"
dependencies:
- argparse: ^1.0.7
- entities: ~2.0.0
- linkify-it: ^2.0.0
+ argparse: ^2.0.1
+ entities: ~2.1.0
+ linkify-it: ^3.0.1
mdurl: ^1.0.1
uc.micro: ^1.0.5
bin:
markdown-it: bin/markdown-it.js
- checksum: 69f5ee640cbebb451b80d3cce308fff7230767e05c0f8c206a1e413775b7a6e5a08e91e9f3ec59f9b5c5a45493f9ce7ac089379cffb60c9d3e6677ed9d535086
+ checksum: 890555711c1c00fa03b936ca2b213001a3b9b37dea140d8445ae4130ce16628392aad24b12e2a0a9935336ca5951f2957a38f4e5309a2e38eab44e25ff32a41e
languageName: node
linkType: hard
-"marked@npm:^0.7.0":
- version: 0.7.0
- resolution: "marked@npm:0.7.0"
+"marked@npm:^4.0.10, marked@npm:^4.0.16":
+ version: 4.0.16
+ resolution: "marked@npm:4.0.16"
bin:
- marked: ./bin/marked
- checksum: 5965e990ee0497aceae1b63c479ad614773331e255c7c9feb00120813574370d03e104d062f3c52ca4d96e7c4ff726ad8ca7ef2debe53728fb73975677b6878e
- languageName: node
- linkType: hard
-
-"marked@npm:^2.0.3":
- version: 2.1.3
- resolution: "marked@npm:2.1.3"
- bin:
- marked: bin/marked
- checksum: 21a5ecd4941bc760aba21dfd97185853ec3b464cf707ad971e3ddb3aeb2f44d0deeb36b0889932afdb6f734975a994d92f18815dd0fabadbd902bdaff997cc5b
+ marked: bin/marked.js
+ checksum: c0ef780bf56c9bb49c15b66683e5648410c924c1d725f1489fc3c7dc3bd01194c50d720052bb0282ad7907f472dfdc8fa278acbc7903c5db3be4b83487e0d684
languageName: node
linkType: hard
@@ -8099,15 +7869,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"marked@npm:^4.0.16":
- version: 4.0.16
- resolution: "marked@npm:4.0.16"
- bin:
- marked: bin/marked.js
- checksum: c0ef780bf56c9bb49c15b66683e5648410c924c1d725f1489fc3c7dc3bd01194c50d720052bb0282ad7907f472dfdc8fa278acbc7903c5db3be4b83487e0d684
- languageName: node
- linkType: hard
-
"mdurl@npm:^1.0.1":
version: 1.0.1
resolution: "mdurl@npm:1.0.1"
@@ -8233,7 +7994,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"minimatch@npm:^3.1.2":
+"minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
version: 3.1.2
resolution: "minimatch@npm:3.1.2"
dependencies:
@@ -8434,13 +8195,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"mute-stream@npm:0.0.8":
- version: 0.0.8
- resolution: "mute-stream@npm:0.0.8"
- checksum: ff48d251fc3f827e5b1206cda0ffdaec885e56057ee86a3155e1951bc940fd5f33531774b1cc8414d7668c10a8907f863f6561875ee6e8768931a62121a531a1
- languageName: node
- linkType: hard
-
"mz@npm:^2.7.0":
version: 2.7.0
resolution: "mz@npm:2.7.0"
@@ -8482,13 +8236,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"nice-try@npm:^1.0.4":
- version: 1.0.5
- resolution: "nice-try@npm:1.0.5"
- checksum: 0b4af3b5bb5d86c289f7a026303d192a7eb4417231fe47245c460baeabae7277bcd8fd9c728fb6bd62c30b3e15cd6620373e2cf33353b095d8b403d3e8a15aff
- languageName: node
- linkType: hard
-
"node-fetch@npm:2.6.1":
version: 2.6.1
resolution: "node-fetch@npm:2.6.1"
@@ -8651,7 +8398,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"object-get@npm:^2.1.0":
+"object-get@npm:^2.1.1":
version: 2.1.1
resolution: "object-get@npm:2.1.1"
checksum: a015f70a6246024bb9ee49835609a2f516232d671c3de393ac62389853385807ebbecf0609784e8b5da1f30a5ca001b8dd5bfb32c8847dc1ed7f8e73e4b2080f
@@ -8672,10 +8419,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"object-to-spawn-args@npm:^1.1.1":
- version: 1.1.1
- resolution: "object-to-spawn-args@npm:1.1.1"
- checksum: 8bcf4468ee909127067cb0174b2430af159ffda7552a48814f4cd0eb03ba501e5505199f7c4e95285ca43b15921016f5729959a9c467f26c8c1edbae236887e6
+"object-to-spawn-args@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "object-to-spawn-args@npm:2.0.1"
+ checksum: 845e75613d973fe92f04142589535175673fe2349d9a5c2f55fb3046e464626cf3fc58a601a0843d3b498128b7b674d1663dd1833feab40584f136762e183add
languageName: node
linkType: hard
@@ -8711,7 +8458,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"onetime@npm:^5.1.0, onetime@npm:^5.1.2":
+"onetime@npm:^5.1.2":
version: 5.1.2
resolution: "onetime@npm:5.1.2"
dependencies:
@@ -8720,20 +8467,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"optionator@npm:^0.8.3":
- version: 0.8.3
- resolution: "optionator@npm:0.8.3"
- dependencies:
- deep-is: ~0.1.3
- fast-levenshtein: ~2.0.6
- levn: ~0.3.0
- prelude-ls: ~1.1.2
- type-check: ~0.3.2
- word-wrap: ~1.2.3
- checksum: b8695ddf3d593203e25ab0900e265d860038486c943ff8b774f596a310f8ceebdb30c6832407a8198ba3ec9debe1abe1f51d4aad94843612db3b76d690c61d34
- languageName: node
- linkType: hard
-
"optionator@npm:^0.9.1":
version: 0.9.1
resolution: "optionator@npm:0.9.1"
@@ -8748,13 +8481,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"os-tmpdir@npm:~1.0.2":
- version: 1.0.2
- resolution: "os-tmpdir@npm:1.0.2"
- checksum: 5666560f7b9f10182548bf7013883265be33620b1c1b4a4d405c25be2636f970c5488ff3e6c48de75b55d02bde037249fe5dbfbb4c0fb7714953d56aed062e6d
- languageName: node
- linkType: hard
-
"p-limit@npm:^1.1.0":
version: 1.3.0
resolution: "p-limit@npm:1.3.0"
@@ -8764,7 +8490,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"p-limit@npm:^2.0.0, p-limit@npm:^2.2.0":
+"p-limit@npm:^2.2.0":
version: 2.3.0
resolution: "p-limit@npm:2.3.0"
dependencies:
@@ -8791,15 +8517,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"p-locate@npm:^3.0.0":
- version: 3.0.0
- resolution: "p-locate@npm:3.0.0"
- dependencies:
- p-limit: ^2.0.0
- checksum: 83991734a9854a05fe9dbb29f707ea8a0599391f52daac32b86f08e21415e857ffa60f0e120bfe7ce0cc4faf9274a50239c7895fc0d0579d08411e513b83a4ae
- languageName: node
- linkType: hard
-
"p-locate@npm:^4.1.0":
version: 4.1.0
resolution: "p-locate@npm:4.1.0"
@@ -8900,13 +8617,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"path-key@npm:^2.0.1":
- version: 2.0.1
- resolution: "path-key@npm:2.0.1"
- checksum: f7ab0ad42fe3fb8c7f11d0c4f849871e28fbd8e1add65c370e422512fc5887097b9cf34d09c1747d45c942a8c1e26468d6356e2df3f740bf177ab8ca7301ebfd
- languageName: node
- linkType: hard
-
"path-key@npm:^3.0.0, path-key@npm:^3.1.0":
version: 3.1.1
resolution: "path-key@npm:3.1.1"
@@ -9044,13 +8754,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"prelude-ls@npm:~1.1.2":
- version: 1.1.2
- resolution: "prelude-ls@npm:1.1.2"
- checksum: c4867c87488e4a0c233e158e4d0d5565b609b105d75e4c05dc760840475f06b731332eb93cc8c9cecb840aa8ec323ca3c9a56ad7820ad2e63f0261dadcb154e4
- languageName: node
- linkType: hard
-
"prettier-linter-helpers@npm:^1.0.0":
version: 1.0.0
resolution: "prettier-linter-helpers@npm:1.0.0"
@@ -9132,13 +8835,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"progress@npm:^2.0.0":
- version: 2.0.3
- resolution: "progress@npm:2.0.3"
- checksum: f67403fe7b34912148d9252cb7481266a354bd99ce82c835f79070643bb3c6583d10dbcfda4d41e04bbc1d8437e9af0fb1e1f2135727878f5308682a579429b7
- languageName: node
- linkType: hard
-
"promise-inflight@npm:^1.0.1":
version: 1.0.1
resolution: "promise-inflight@npm:1.0.1"
@@ -9343,7 +9039,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"reduce-flatten@npm:^3.0.0":
+"reduce-flatten@npm:^3.0.1":
version: 3.0.1
resolution: "reduce-flatten@npm:3.0.1"
checksum: d46b9c93a12c2ad6275d6c50e2599778870d3e55362052ce02087f83eca890c5be975fa8e253f5890d5130379834e5b74d019e41e0c2c59c34bf57149c310207
@@ -9398,13 +9094,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"regexpp@npm:^2.0.1":
- version: 2.0.1
- resolution: "regexpp@npm:2.0.1"
- checksum: 1f41cf80ac08514c6665812e3dcc0673569431d3285db27053f8b237a758992fb55d6ddfbc264db399ff4f7a7db432900ca3a029daa28a75e0436231872091b1
- languageName: node
- linkType: hard
-
"regexpp@npm:^3.2.0":
version: 3.2.0
resolution: "regexpp@npm:3.2.0"
@@ -9580,16 +9269,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"restore-cursor@npm:^3.1.0":
- version: 3.1.0
- resolution: "restore-cursor@npm:3.1.0"
- dependencies:
- onetime: ^5.1.0
- signal-exit: ^3.0.2
- checksum: f877dd8741796b909f2a82454ec111afb84eb45890eb49ac947d87991379406b3b83ff9673a46012fca0d7844bb989f45cc5b788254cf1a39b6b5a9659de0630
- languageName: node
- linkType: hard
-
"retry@npm:^0.12.0":
version: 0.12.0
resolution: "retry@npm:0.12.0"
@@ -9615,17 +9294,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"rimraf@npm:2.6.3":
- version: 2.6.3
- resolution: "rimraf@npm:2.6.3"
- dependencies:
- glob: ^7.1.3
- bin:
- rimraf: ./bin.js
- checksum: 3ea587b981a19016297edb96d1ffe48af7e6af69660e3b371dbfc73722a73a0b0e9be5c88089fbeeb866c389c1098e07f64929c7414290504b855f54f901ab10
- languageName: node
- linkType: hard
-
"rimraf@npm:^3.0.0, rimraf@npm:^3.0.2":
version: 3.0.2
resolution: "rimraf@npm:3.0.2"
@@ -9651,13 +9319,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"run-async@npm:^2.4.0":
- version: 2.4.1
- resolution: "run-async@npm:2.4.1"
- checksum: a2c88aa15df176f091a2878eb840e68d0bdee319d8d97bbb89112223259cebecb94bc0defd735662b83c2f7a30bed8cddb7d1674eb48ae7322dc602b22d03797
- languageName: node
- linkType: hard
-
"run-parallel@npm:^1.1.9":
version: 1.2.0
resolution: "run-parallel@npm:1.2.0"
@@ -9667,15 +9328,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"rxjs@npm:^6.6.0":
- version: 6.6.7
- resolution: "rxjs@npm:6.6.7"
- dependencies:
- tslib: ^1.9.0
- checksum: bc334edef1bb8bbf56590b0b25734ba0deaf8825b703256a93714308ea36dff8a11d25533671adf8e104e5e8f256aa6fdfe39b2e248cdbd7a5f90c260acbbd1b
- languageName: node
- linkType: hard
-
"safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0":
version: 5.2.1
resolution: "safe-buffer@npm:5.2.1"
@@ -9690,7 +9342,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0":
+"safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0":
version: 2.1.2
resolution: "safer-buffer@npm:2.1.2"
checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0
@@ -9708,7 +9360,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.3.0, semver@npm:^5.5.0":
+"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.3.0":
version: 5.7.1
resolution: "semver@npm:5.7.1"
bin:
@@ -9753,15 +9405,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"shebang-command@npm:^1.2.0":
- version: 1.2.0
- resolution: "shebang-command@npm:1.2.0"
- dependencies:
- shebang-regex: ^1.0.0
- checksum: 9eed1750301e622961ba5d588af2212505e96770ec376a37ab678f965795e995ade7ed44910f5d3d3cb5e10165a1847f52d3348c64e146b8be922f7707958908
- languageName: node
- linkType: hard
-
"shebang-command@npm:^2.0.0":
version: 2.0.0
resolution: "shebang-command@npm:2.0.0"
@@ -9771,13 +9414,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"shebang-regex@npm:^1.0.0":
- version: 1.0.0
- resolution: "shebang-regex@npm:1.0.0"
- checksum: 404c5a752cd40f94591dfd9346da40a735a05139dac890ffc229afba610854d8799aaa52f87f7e0c94c5007f2c6af55bdcaeb584b56691926c5eaf41dc8f1372
- languageName: node
- linkType: hard
-
"shebang-regex@npm:^3.0.0":
version: 3.0.0
resolution: "shebang-regex@npm:3.0.0"
@@ -9835,17 +9471,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"slice-ansi@npm:^2.1.0":
- version: 2.1.0
- resolution: "slice-ansi@npm:2.1.0"
- dependencies:
- ansi-styles: ^3.2.0
- astral-regex: ^1.0.0
- is-fullwidth-code-point: ^2.0.0
- checksum: 4e82995aa59cef7eb03ef232d73c2239a15efa0ace87a01f3012ebb942e963fbb05d448ce7391efcd52ab9c32724164aba2086f5143e0445c969221dde3b6b1e
- languageName: node
- linkType: hard
-
"slide@npm:^1.1.6":
version: 1.1.6
resolution: "slide@npm:1.1.6"
@@ -9881,14 +9506,13 @@ dts-critic@latest:
languageName: node
linkType: hard
-"sort-array@npm:^2.0.0":
- version: 2.0.0
- resolution: "sort-array@npm:2.0.0"
+"sort-array@npm:^4.1.4":
+ version: 4.1.5
+ resolution: "sort-array@npm:4.1.5"
dependencies:
- array-back: ^1.0.4
- object-get: ^2.1.0
- typical: ^2.6.0
- checksum: 428510d027451c1a6f7fdf4007bab949ec3585953e219d826bf2049ec8ade63c211b8631819715e282cbbed45fc6811f7a11e6fea06bb0445386ad8547c5e591
+ array-back: ^5.0.0
+ typical: ^6.0.1
+ checksum: ffaf7c255988af15ec08d78347743d7414ad495b94cd32d201be887b63258b453c9bda240d1c388bd71b46922db307ff7dbc988e717d3ded7eb20513698ea178
languageName: node
linkType: hard
@@ -10071,17 +9695,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"string-width@npm:^3.0.0, string-width@npm:^3.1.0":
- version: 3.1.0
- resolution: "string-width@npm:3.1.0"
- dependencies:
- emoji-regex: ^7.0.1
- is-fullwidth-code-point: ^2.0.0
- strip-ansi: ^5.1.0
- checksum: 57f7ca73d201682816d573dc68bd4bb8e1dff8dc9fcf10470fdfc3474135c97175fec12ea6a159e67339b41e86963112355b64529489af6e7e70f94a7caf08b2
- languageName: node
- linkType: hard
-
"string.prototype.trimend@npm:^1.0.4":
version: 1.0.4
resolution: "string.prototype.trimend@npm:1.0.4"
@@ -10129,15 +9742,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"strip-ansi@npm:^5.0.0, strip-ansi@npm:^5.1.0, strip-ansi@npm:^5.2.0":
- version: 5.2.0
- resolution: "strip-ansi@npm:5.2.0"
- dependencies:
- ansi-regex: ^4.1.0
- checksum: bdb5f76ade97062bd88e7723aa019adbfacdcba42223b19ccb528ffb9fb0b89a5be442c663c4a3fb25268eaa3f6ea19c7c3fbae830bd1562d55adccae1fcec46
- languageName: node
- linkType: hard
-
"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1":
version: 6.0.1
resolution: "strip-ansi@npm:6.0.1"
@@ -10184,7 +9788,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"strip-json-comments@npm:^3.0.1, strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1":
+"strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1":
version: 3.1.1
resolution: "strip-json-comments@npm:3.1.1"
checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443
@@ -10301,18 +9905,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"table@npm:^5.2.3":
- version: 5.4.6
- resolution: "table@npm:5.4.6"
- dependencies:
- ajv: ^6.10.2
- lodash: ^4.17.14
- slice-ansi: ^2.1.0
- string-width: ^3.0.0
- checksum: 9e35d3efa788edc17237eef8852f8e4b9178efd65a7d115141777b2ee77df4b7796c05f4ed3712d858f98894ac5935a481ceeb6dcb9895e2f67a61cce0e63b6c
- languageName: node
- linkType: hard
-
"taffydb@npm:2.6.2":
version: 2.6.2
resolution: "taffydb@npm:2.6.2"
@@ -10491,7 +10083,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"through@npm:2, through@npm:>=2.2.7 <3, through@npm:^2.3.6":
+"through@npm:2, through@npm:>=2.2.7 <3":
version: 2.3.8
resolution: "through@npm:2.3.8"
checksum: a38c3e059853c494af95d50c072b83f8b676a9ba2818dcc5b108ef252230735c54e0185437618596c790bbba8fcdaef5b290405981ffa09dce67b1f1bf190cbd
@@ -10519,15 +10111,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"tmp@npm:^0.0.33":
- version: 0.0.33
- resolution: "tmp@npm:0.0.33"
- dependencies:
- os-tmpdir: ~1.0.2
- checksum: 902d7aceb74453ea02abbf58c203f4a8fc1cead89b60b31e354f74ed5b3fb09ea817f94fb310f884a5d16987dd9fa5a735412a7c2dd088dd3d415aa819ae3a28
- languageName: node
- linkType: hard
-
"tmp@npm:^0.2.1":
version: 0.2.1
resolution: "tmp@npm:0.2.1"
@@ -10675,7 +10258,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"tslib@npm:^1.13.0, tslib@npm:^1.8.0, tslib@npm:^1.8.1, tslib@npm:^1.9.0":
+"tslib@npm:^1.13.0, tslib@npm:^1.8.0, tslib@npm:^1.8.1":
version: 1.14.1
resolution: "tslib@npm:1.14.1"
checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd
@@ -10739,13 +10322,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"tsubaki@npm:^1.3.2":
- version: 1.3.14
- resolution: "tsubaki@npm:1.3.14"
- checksum: b45e6a839b73ebc2e8c04cb1df2c560ba29bb258966d26ac92cfd475076d58e395ee01abe4ba892dd1cf7b1fc73b9fc4c5b416afc1b796165d3cf50521e422de
- languageName: node
- linkType: hard
-
"tsup@npm:^6.1.0":
version: 6.1.0
resolution: "tsup@npm:6.1.0"
@@ -10984,15 +10560,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"type-check@npm:~0.3.2":
- version: 0.3.2
- resolution: "type-check@npm:0.3.2"
- dependencies:
- prelude-ls: ~1.1.2
- checksum: dd3b1495642731bc0e1fc40abe5e977e0263005551ac83342ecb6f4f89551d106b368ec32ad3fb2da19b3bd7b2d1f64330da2ea9176d8ddbfe389fb286eb5124
- languageName: node
- linkType: hard
-
"type-detect@npm:4.0.8, type-detect@npm:^4.0.0, type-detect@npm:^4.0.5":
version: 4.0.8
resolution: "type-detect@npm:4.0.8"
@@ -11110,6 +10677,13 @@ dts-critic@latest:
languageName: node
linkType: hard
+"typical@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "typical@npm:6.0.1"
+ checksum: 4eae0d3a964150a09f709b8ceed2e2800f10525f66e58212555aadf0339b16c524e6d0c4b259541ac10e8a21f5135b5a2e99a2a39be755122b19a4ecf9fa8f8c
+ languageName: node
+ linkType: hard
+
"uc.micro@npm:^1.0.1, uc.micro@npm:^1.0.5":
version: 1.0.6
resolution: "uc.micro@npm:1.0.6"
@@ -11138,10 +10712,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"underscore@npm:~1.13.1":
- version: 1.13.2
- resolution: "underscore@npm:1.13.2"
- checksum: 6ab156c845ccc757fd01d8b9eb28be18ba89ac68993370dd7397a66a95b124f2ba26947fd53e687c084d334429914fc3dd1620d5123b6e0a7cf112cdcf4e859f
+"underscore@npm:~1.13.2":
+ version: 1.13.4
+ resolution: "underscore@npm:1.13.4"
+ checksum: 6b04f66cd454e8793a552dc49c71e24e5208a29b9d9c0af988a96948af79103399c36fb15db43f3629bfed152f8b1fe94f44e1249e9d196069c0fc7edfadb636
languageName: node
linkType: hard
@@ -11377,17 +10951,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"walk-back@npm:^3.0.1":
- version: 3.0.1
- resolution: "walk-back@npm:3.0.1"
- checksum: 6711647d20166d7110784e09849b24ff3a38ce7b4f95a2f56176496b75db35771eb373cd2c43256d8a5da5aeb32f3746b6c1626dc0fbe4d6b84ececffc2a8286
- languageName: node
- linkType: hard
-
-"walk-back@npm:^4.0.0":
- version: 4.0.0
- resolution: "walk-back@npm:4.0.0"
- checksum: 44cedd6bd8506697a234c741667884e8c87197956bccaac9373f5bc10527c024eba9bfe4f5e23e3cff0608363f06e196ed9960133e27a3c6a1c8b96d5e4e57a1
+"walk-back@npm:^5.1.0":
+ version: 5.1.0
+ resolution: "walk-back@npm:5.1.0"
+ checksum: b0e9acdac22dcd281d24fb857af52f39ca4e8f3b18921106b676b0baa96fb7f97c55630d9df0814207a194e6a75f175d8c8282648914458fd949eae901b276f5
languageName: node
linkType: hard
@@ -11438,17 +11005,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"which@npm:^1.2.9":
- version: 1.3.1
- resolution: "which@npm:1.3.1"
- dependencies:
- isexe: ^2.0.0
- bin:
- which: ./bin/which
- checksum: f2e185c6242244b8426c9df1510e86629192d93c1a986a7d2a591f2c24869e7ffd03d6dac07ca863b2e4c06f59a4cc9916c585b72ee9fa1aa609d0124df15e04
- languageName: node
- linkType: hard
-
"which@npm:^2.0.1, which@npm:^2.0.2":
version: 2.0.2
resolution: "which@npm:2.0.2"
@@ -11469,7 +11025,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"word-wrap@npm:^1.2.3, word-wrap@npm:~1.2.3":
+"word-wrap@npm:^1.2.3":
version: 1.2.3
resolution: "word-wrap@npm:1.2.3"
checksum: 30b48f91fcf12106ed3186ae4fa86a6a1842416df425be7b60485de14bec665a54a68e4b5156647dec3a70f25e84d270ca8bc8cd23182ed095f5c7206a938c1f
@@ -11493,17 +11049,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"wrap-ansi@npm:^5.1.0":
- version: 5.1.0
- resolution: "wrap-ansi@npm:5.1.0"
- dependencies:
- ansi-styles: ^3.2.0
- string-width: ^3.0.0
- strip-ansi: ^5.0.0
- checksum: 9b48c862220e541eb0daa22661b38b947973fc57054e91be5b0f2dcc77741a6875ccab4ebe970a394b4682c8dfc17e888266a105fb8b0a9b23c19245e781ceae
- languageName: node
- linkType: hard
-
"wrap-ansi@npm:^6.2.0":
version: 6.2.0
resolution: "wrap-ansi@npm:6.2.0"
@@ -11543,15 +11088,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"write@npm:1.0.3":
- version: 1.0.3
- resolution: "write@npm:1.0.3"
- dependencies:
- mkdirp: ^0.5.1
- checksum: 6496197ceb2d6faeeb8b5fe2659ca804e801e4989dff9fb8a66fe76179ce4ccc378c982ef906733caea1220c8dbe05a666d82127959ac4456e70111af8b8df73
- languageName: node
- linkType: hard
-
"ws@npm:^8.7.0":
version: 8.7.0
resolution: "ws@npm:8.7.0"
@@ -11609,16 +11145,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"yargs-parser@npm:^15.0.1":
- version: 15.0.3
- resolution: "yargs-parser@npm:15.0.3"
- dependencies:
- camelcase: ^5.0.0
- decamelize: ^1.2.0
- checksum: 06611c1893fa9f1c25ae79df3c6e2edbac7c8d75257a4b55b8432cbc87ee03eda86bea0537f65b4b8a0d9684c83fa6e9ef61ef720a1e5cc8a9aa6893b54ee4c3
- languageName: node
- linkType: hard
-
"yargs-parser@npm:^18.1.2":
version: 18.1.3
resolution: "yargs-parser@npm:18.1.3"
@@ -11643,25 +11169,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"yargs@npm:^14.0.0":
- version: 14.2.3
- resolution: "yargs@npm:14.2.3"
- dependencies:
- cliui: ^5.0.0
- decamelize: ^1.2.0
- find-up: ^3.0.0
- get-caller-file: ^2.0.1
- require-directory: ^2.1.1
- require-main-filename: ^2.0.0
- set-blocking: ^2.0.0
- string-width: ^3.0.0
- which-module: ^2.0.0
- y18n: ^4.0.0
- yargs-parser: ^15.0.1
- checksum: 684fcb1896e6c873c31c09c5c16445d6253dfe505aa879cff56d49425f5bca44f2ab8d7a1c949f3b932ae8654128425e89770e5e2f2c3d816e5816b9eb6efb6f
- languageName: node
- linkType: hard
-
"yargs@npm:^15.1.0, yargs@npm:^15.3.1":
version: 15.4.1
resolution: "yargs@npm:15.4.1"