build: Upgrade dependencies and pnpm (#11420)

* build: upgrade dependencies

* build: upgrade pnpm

* test: fix voice

* build: regenerate file

* fix: reports by ESLint

* fix: docs errors

* build: downgrades

* build: no upstream bump

* build: discord-api-types 0.38.40

* build: pnpm 10.30.1

* fix: ignore @typescript-eslint/no-duplicate-type-constituents

* fix: jsdoc lint in api-extractor

* build: update template for ESLint

Co-authored-by: Almeida <github@almeidx.dev>

* chore: explicit TODO

Co-authored-by: Qjuh <76154676+Qjuh@users.noreply.github.com>

* chore: revert typings lint change

---------

Co-authored-by: Qjuh <76154676+Qjuh@users.noreply.github.com>
Co-authored-by: Almeida <github@almeidx.dev>
This commit is contained in:
Jiralite
2026-02-20 17:44:38 +00:00
committed by GitHub
parent ccce987fa1
commit 77e767277b
52 changed files with 7178 additions and 8054 deletions

View File

@@ -107,7 +107,7 @@
"allowArbitraryExtensions": false, "allowArbitraryExtensions": false,
"allowImportingTsExtensions": false, "allowImportingTsExtensions": false,
"module": "ESNext", "module": "ESNext",
"moduleResolution": "nodenext", "moduleResolution": "Bundler",
"resolveJsonModule": true, "resolveJsonModule": true,
"resolvePackageJsonExports": false, "resolvePackageJsonExports": false,
"resolvePackageJsonImports": false, "resolvePackageJsonImports": false,

View File

@@ -48,51 +48,51 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@opennextjs/cloudflare": "^1.14.4", "@opennextjs/cloudflare": "^1.16.5",
"@vercel/analytics": "^1.6.1", "@vercel/analytics": "^1.6.1",
"fumadocs-core": "^16.2.4", "fumadocs-core": "^16.6.3",
"fumadocs-mdx": "^14.1.0", "fumadocs-mdx": "^14.2.7",
"fumadocs-twoslash": "^3.1.10", "fumadocs-twoslash": "^3.1.13",
"fumadocs-ui": "^16.2.4", "fumadocs-ui": "^16.6.3",
"geist": "^1.5.1", "geist": "^1.7.0",
"lucide-react": "^0.559.0", "lucide-react": "^0.559.0",
"mermaid": "^11.12.2", "mermaid": "^11.12.3",
"next": "^16.0.8", "next": "^16.1.6",
"next-themes": "^0.4.6", "next-themes": "^0.4.6",
"p-retry": "^7.1.1", "p-retry": "^7.1.1",
"react": "^19.2.1", "react": "^19.2.4",
"react-dom": "^19.2.1", "react-dom": "^19.2.4",
"sharp": "^0.34.5", "sharp": "^0.34.5",
"tailwind-merge": "^3.4.0", "tailwind-merge": "^3.5.0",
"tw-animate-css": "^1.4.0", "tw-animate-css": "^1.4.0",
"twoslash": "^0.3.4" "twoslash": "^0.3.6"
}, },
"devDependencies": { "devDependencies": {
"@shikijs/rehype": "^3.19.0", "@shikijs/rehype": "^3.22.0",
"@tailwindcss/postcss": "^4.1.17", "@tailwindcss/postcss": "^4.2.0",
"@types/mdx": "^2.0.13", "@types/mdx": "^2.0.13",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"@types/react": "^19.2.7", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"autoprefixer": "^10.4.22", "autoprefixer": "^10.4.24",
"babel-plugin-react-compiler": "^1.0.0", "babel-plugin-react-compiler": "^1.0.0",
"cpy-cli": "^6.0.0", "cpy-cli": "^6.0.0",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"git-describe": "^4.1.1", "git-describe": "^4.1.1",
"postcss": "^8.5.6", "postcss": "^8.5.6",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"prettier-plugin-tailwindcss": "^0.7.2", "prettier-plugin-tailwindcss": "^0.7.2",
"remark-gfm": "^4.0.1", "remark-gfm": "^4.0.1",
"remark-rehype": "^11.1.2", "remark-rehype": "^11.1.2",
"shiki": "^3.19.0", "shiki": "^3.22.0",
"tailwindcss": "^4.1.17", "tailwindcss": "^4.2.0",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vercel": "^49.1.2", "vercel": "^49.2.0",
"wrangler": "^4.53.0" "wrangler": "^4.67.0"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -45,7 +45,7 @@ export default async function Page(props: { readonly params: Promise<{ slug?: st
<DocsTitle>{page.data.title}</DocsTitle> <DocsTitle>{page.data.title}</DocsTitle>
<DocsDescription>{page.data.description}</DocsDescription> <DocsDescription>{page.data.description}</DocsDescription>
<DocsBody> <DocsBody>
{/* eslint-disable-next-line @stylistic/jsx/jsx-pascal-case */} {/* eslint-disable-next-line @stylistic/jsx-pascal-case */}
<MDX components={getMDXComponents()} /> <MDX components={getMDXComponents()} />
</DocsBody> </DocsBody>
</DocsPage> </DocsPage>

View File

@@ -51,61 +51,61 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@opennextjs/cloudflare": "^1.14.4", "@opennextjs/cloudflare": "^1.16.5",
"@radix-ui/react-collapsible": "^1.1.12", "@radix-ui/react-collapsible": "^1.1.12",
"@react-icons/all-files": "^4.1.0", "@react-icons/all-files": "^4.1.0",
"@tanstack/react-query": "^5.90.12", "@tanstack/react-query": "^5.90.21",
"@vercel/analytics": "^1.6.1", "@vercel/analytics": "^1.6.1",
"@vercel/postgres": "^0.10.0", "@vercel/postgres": "^0.10.0",
"cloudflare": "^5.2.0", "cloudflare": "^5.2.0",
"cmdk": "^1.1.1", "cmdk": "^1.1.1",
"cva": "1.0.0-beta.3", "cva": "1.0.0-beta.3",
"geist": "^1.5.1", "geist": "^1.7.0",
"jotai": "^2.16.0", "jotai": "^2.18.0",
"lucide-react": "^0.559.0", "lucide-react": "^0.559.0",
"meilisearch": "^0.54.0", "meilisearch": "^0.54.0",
"next": "^16.0.8", "next": "^16.1.6",
"next-themes": "^0.4.6", "next-themes": "^0.4.6",
"nuqs": "^2.8.5", "nuqs": "^2.8.8",
"overlayscrollbars": "^2.13.0", "overlayscrollbars": "^2.14.0",
"overlayscrollbars-react": "^0.5.6", "overlayscrollbars-react": "^0.5.6",
"react": "^19.2.1", "react": "^19.2.4",
"react-aria": "^3.44.0", "react-aria": "^3.46.0",
"react-aria-components": "^1.13.0", "react-aria-components": "^1.15.1",
"react-dom": "^19.2.1", "react-dom": "^19.2.4",
"safe-mdx": "^1.3.9", "safe-mdx": "^1.3.9",
"sharp": "^0.34.5", "sharp": "^0.34.5",
"tailwind-merge": "^3.4.0", "tailwind-merge": "^3.5.0",
"tw-animate-css": "^1.4.0", "tw-animate-css": "^1.4.0",
"usehooks-ts": "^3.1.1" "usehooks-ts": "^3.1.1"
}, },
"devDependencies": { "devDependencies": {
"@shikijs/rehype": "^3.19.0", "@shikijs/rehype": "^3.22.0",
"@tailwindcss/postcss": "^4.1.17", "@tailwindcss/postcss": "^4.2.0",
"@tailwindcss/typography": "^0.5.19", "@tailwindcss/typography": "^0.5.19",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"@types/react": "^19.2.7", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"autoprefixer": "^10.4.22", "autoprefixer": "^10.4.24",
"babel-plugin-react-compiler": "^1.0.0", "babel-plugin-react-compiler": "^1.0.0",
"cpy-cli": "^6.0.0", "cpy-cli": "^6.0.0",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"git-describe": "^4.1.1", "git-describe": "^4.1.1",
"postcss": "^8.5.6", "postcss": "^8.5.6",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"prettier-plugin-tailwindcss": "^0.7.2", "prettier-plugin-tailwindcss": "^0.7.2",
"remark-gfm": "^4.0.1", "remark-gfm": "^4.0.1",
"remark-rehype": "^11.1.2", "remark-rehype": "^11.1.2",
"shiki": "^3.19.0", "shiki": "^3.22.0",
"tailwindcss": "^4.1.17", "tailwindcss": "^4.2.0",
"tailwindcss-react-aria-components": "^2.0.1", "tailwindcss-react-aria-components": "^2.0.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vercel": "^49.1.2", "vercel": "^49.2.0",
"wrangler": "^4.53.0" "wrangler": "^4.67.0"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -127,6 +127,7 @@ export default defineConfig(
rules: { rules: {
'consistent-this': 0, 'consistent-this': 0,
'unicorn/no-this-assignment': 0, 'unicorn/no-this-assignment': 0,
'@typescript-eslint/no-duplicate-type-constituents': 0,
'@typescript-eslint/no-this-alias': 0, '@typescript-eslint/no-this-alias': 0,
}, },
}, },
@@ -220,7 +221,8 @@ export default defineConfig(
'@typescript-eslint/no-empty-object-type': 0, '@typescript-eslint/no-empty-object-type': 0,
'@typescript-eslint/no-use-before-define': 0, '@typescript-eslint/no-use-before-define': 0,
'@typescript-eslint/consistent-type-imports': 0, '@typescript-eslint/consistent-type-imports': 0,
'@stylistic/ts/lines-between-class-members': 0, '@stylistic/lines-between-class-members': 0,
'@typescript-eslint/no-duplicate-type-constituents': 0,
'no-restricted-syntax': [ 'no-restricted-syntax': [
2, 2,
{ {

View File

@@ -51,33 +51,33 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"devDependencies": { "devDependencies": {
"@commitlint/cli": "^20.2.0", "@commitlint/cli": "^20.4.2",
"@commitlint/config-angular": "^20.2.0", "@commitlint/config-angular": "^20.4.2",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@favware/npm-deprecate": "^2.0.0", "@favware/npm-deprecate": "^2.0.0",
"@types/lodash.merge": "^4.6.9", "@types/lodash.merge": "^4.6.9",
"@unocss/eslint-plugin": "^66.5.10", "@unocss/eslint-plugin": "^66.6.0",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"conventional-changelog-cli": "^5.0.0", "conventional-changelog-cli": "^5.0.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-import-resolver-typescript": "^4.4.4", "eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-react-compiler": "19.1.0-rc.2", "eslint-plugin-react-compiler": "19.1.0-rc.2",
"husky": "^9.1.7", "husky": "^9.1.7",
"is-ci": "^4.1.0", "is-ci": "^4.1.0",
"lint-staged": "^16.2.7", "lint-staged": "^16.2.7",
"lodash.merge": "^4.6.2", "lodash.merge": "^4.6.2",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"typescript-eslint": "^8.49.0", "typescript-eslint": "^8.56.0",
"unocss": "^66.5.10", "unocss": "^66.6.0",
"vercel": "^49.1.2", "vercel": "^49.2.0",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"
}, },
"packageManager": "pnpm@10.25.0" "packageManager": "pnpm@10.30.1"
} }

View File

@@ -41,35 +41,35 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@actions/core": "^2.0.0", "@actions/core": "^2.0.3",
"@actions/github": "^6.0.1", "@actions/github": "^6.0.1",
"@actions/glob": "^0.5.0", "@actions/glob": "^0.5.1",
"@aws-sdk/client-s3": "^3.948.0", "@aws-sdk/client-s3": "^3.994.0",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"cloudflare": "^5.2.0", "cloudflare": "^5.2.0",
"commander": "^14.0.2", "commander": "^14.0.3",
"meilisearch": "^0.54.0", "meilisearch": "^0.54.0",
"p-limit": "^7.2.0", "p-limit": "^7.3.0",
"p-queue": "^9.0.1", "p-queue": "^9.1.0",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"undici": "7.16.0" "undici": "7.22.0"
}, },
"devDependencies": { "devDependencies": {
"@npm/types": "^2.1.0", "@npm/types": "^2.1.0",
"@types/bun": "^1.3.4", "@types/bun": "^1.3.9",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -36,16 +36,16 @@
"@rushstack/node-core-library": "5.13.1" "@rushstack/node-core-library": "5.13.1"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
} }
} }

View File

@@ -214,6 +214,7 @@ function mapVarType(type: DocgenVarTypeJson, _package: string): IExcerptToken[]
function mapProp( function mapProp(
prop: DocgenPropertyJson, prop: DocgenPropertyJson,
_package: string, _package: string,
// eslint-disable-next-line @typescript-eslint/no-duplicate-type-constituents
parent: DocgenClassJson | DocgenInterfaceJson, parent: DocgenClassJson | DocgenInterfaceJson,
): IApiNameMixinJson & IApiOptionalMixinJson & IApiPropertyItemJson & IApiReadonlyMixinJson & IApiReleaseTagMixinJson { ): IApiNameMixinJson & IApiOptionalMixinJson & IApiPropertyItemJson & IApiReadonlyMixinJson & IApiReleaseTagMixinJson {
const mappedVarType = mapVarType(prop.type, _package); const mappedVarType = mapVarType(prop.type, _package);

View File

@@ -50,16 +50,16 @@
"@microsoft/tsdoc": "~0.15.1" "@microsoft/tsdoc": "~0.15.1"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },
"engines": { "engines": {

View File

@@ -63,19 +63,19 @@
"typescript": "~5.5.4" "typescript": "~5.5.4"
}, },
"devDependencies": { "devDependencies": {
"@types/lodash": "^4.17.21", "@types/lodash": "^4.17.23",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"@types/resolve": "^1.20.6", "@types/resolve": "^1.20.6",
"@types/semver": "^7.7.1", "@types/semver": "^7.7.1",
"cpy-cli": "^6.0.0", "cpy-cli": "^6.0.0",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.2.9",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3" "turbo": "^2.8.7"
} }
} }

View File

@@ -132,7 +132,7 @@ export class AstImport extends AstSyntheticEntity {
} }
/** /**
* {@inheritdoc} * {@inheritdoc AstEntity.localName}
*/ */
public get localName(): string { public get localName(): string {
// abstract // abstract

View File

@@ -81,7 +81,7 @@ export class AstNamespaceImport extends AstSyntheticEntity {
} }
/** /**
* {@inheritdoc} * {@inheritdoc AstEntity.localName}
*/ */
public get localName(): string { public get localName(): string {
// abstract // abstract

View File

@@ -53,7 +53,7 @@ export interface IAstSymbolOptions {
*/ */
export class AstSymbol extends AstEntity { export class AstSymbol extends AstEntity {
/** /**
* {@inheritdoc} * {@inheritdoc AstEntity.localName}
*/ */
public readonly localName: string; // abstract public readonly localName: string; // abstract

View File

@@ -476,7 +476,7 @@ export class ExportAnalyzer {
const followedSymbolNode: ts.ImportTypeNode | ts.Node | undefined = const followedSymbolNode: ts.ImportTypeNode | ts.Node | undefined =
followedSymbol.declarations && (followedSymbol.declarations[0] as ts.Node | undefined); followedSymbol.declarations && (followedSymbol.declarations[0] as ts.Node | undefined);
if (followedSymbolNode && followedSymbolNode.kind === ts.SyntaxKind.ImportType) { if (followedSymbolNode?.kind === ts.SyntaxKind.ImportType) {
return this.fetchReferencedAstEntityFromImportTypeNode( return this.fetchReferencedAstEntityFromImportTypeNode(
followedSymbolNode as ts.ImportTypeNode, followedSymbolNode as ts.ImportTypeNode,
referringModuleIsExternal, referringModuleIsExternal,

View File

@@ -85,7 +85,7 @@ export class TypeScriptHelpers {
firstDeclaration, firstDeclaration,
ts.SyntaxKind.ModuleDeclaration, ts.SyntaxKind.ModuleDeclaration,
); );
if (highestModuleDeclaration && highestModuleDeclaration.name.getText().trim() === 'global') { if (highestModuleDeclaration?.name.getText().trim() === 'global') {
return true; return true;
} }

View File

@@ -25,7 +25,7 @@ export class TypeScriptInternals {
checker: ts.TypeChecker, checker: ts.TypeChecker,
): ts.Symbol | undefined { ): ts.Symbol | undefined {
let symbol: ts.Symbol | undefined = (declaration as any).symbol; let symbol: ts.Symbol | undefined = (declaration as any).symbol;
if (symbol && symbol.escapedName === ts.InternalSymbolName.Computed) { if (symbol?.escapedName === ts.InternalSymbolName.Computed) {
const name: ts.DeclarationName | undefined = ts.getNameOfDeclaration(declaration); const name: ts.DeclarationName | undefined = ts.getNameOfDeclaration(declaration);
symbol = (name && checker.getSymbolAtLocation(name)) || symbol; symbol = (name && checker.getSymbolAtLocation(name)) || symbol;
} }

View File

@@ -100,7 +100,7 @@ export const enum ExtractorMessageId {
* "The `@inheritDoc` tag needs a TSDoc declaration reference; signature matching is not supported yet." * "The `@inheritDoc` tag needs a TSDoc declaration reference; signature matching is not supported yet."
* *
* @privateRemarks * @privateRemarks
* In the future, we will implement signature matching so that you can write `{@inheritDoc}` and API Extractor * In the future, we will implement signature matching so that you can write `@inheritDoc` and API Extractor
* will find a corresponding member from a base class (or implemented interface). Until then, the tag * will find a corresponding member from a base class (or implemented interface). Until then, the tag
* always needs an explicit declaration reference such as `{@inhertDoc MyBaseClass.sameMethod}`. * always needs an explicit declaration reference such as `{@inhertDoc MyBaseClass.sameMethod}`.
*/ */

View File

@@ -493,7 +493,7 @@ export class Collector {
private _createCollectorEntity( private _createCollectorEntity(
astEntity: AstEntity, astEntity: AstEntity,
entryPoint: IWorkingPackageEntryPoint, entryPoint: IWorkingPackageEntryPoint,
exportName?: string | undefined, exportName?: string,
parent?: CollectorEntity, parent?: CollectorEntity,
): void { ): void {
let entity: CollectorEntity | undefined = this._entitiesByAstEntity.get(astEntity); let entity: CollectorEntity | undefined = this._entitiesByAstEntity.get(astEntity);

View File

@@ -1707,7 +1707,7 @@ export class ApiModelGenerator {
private _captureParameters( private _captureParameters(
nodesToCapture: IExcerptBuilderNodeToCapture[], nodesToCapture: IExcerptBuilderNodeToCapture[],
parameterNodes: ts.NodeArray<ts.ParameterDeclaration>, parameterNodes: ts.NodeArray<ts.ParameterDeclaration>,
jsDoc?: DocgenParamJson[] | undefined, jsDoc?: DocgenParamJson[],
): IApiParameterOptions[] { ): IApiParameterOptions[] {
const parameters: IApiParameterOptions[] = []; const parameters: IApiParameterOptions[] = [];
for (const parameter of parameterNodes) { for (const parameter of parameterNodes) {

View File

@@ -328,7 +328,7 @@ export class ApiReportGenerator {
replacedModifiers = 'export ' + replacedModifiers; replacedModifiers = 'export ' + replacedModifiers;
} }
if (previousSpan && previousSpan.kind === ts.SyntaxKind.SyntaxList) { if (previousSpan?.kind === ts.SyntaxKind.SyntaxList) {
// If there is a previous span of type SyntaxList, then apply it before any other modifiers // If there is a previous span of type SyntaxList, then apply it before any other modifiers
// (e.g. "abstract") that appear there. // (e.g. "abstract") that appear there.
previousSpan.modification.prefix = replacedModifiers + previousSpan.modification.prefix; previousSpan.modification.prefix = replacedModifiers + previousSpan.modification.prefix;

View File

@@ -294,7 +294,7 @@ export class DtsRollupGenerator {
replacedModifiers = 'export ' + replacedModifiers; replacedModifiers = 'export ' + replacedModifiers;
} }
if (previousSpan && previousSpan.kind === ts.SyntaxKind.SyntaxList) { if (previousSpan?.kind === ts.SyntaxKind.SyntaxList) {
// If there is a previous span of type SyntaxList, then apply it before any other modifiers // If there is a previous span of type SyntaxList, then apply it before any other modifiers
// (e.g. "abstract") that appear there. // (e.g. "abstract") that appear there.
previousSpan.modification.prefix = replacedModifiers + previousSpan.modification.prefix; previousSpan.modification.prefix = replacedModifiers + previousSpan.modification.prefix;
@@ -426,11 +426,9 @@ export class DtsRollupGenerator {
modification.suffix = nodeToTrim.children[nodeToTrim.children.length - 1]!.separator; modification.suffix = nodeToTrim.children[nodeToTrim.children.length - 1]!.separator;
} }
if ( // If the thing we are trimming is followed by a comma, then trim the comma also.
nodeToTrim.nextSibling && // If the thing we are trimming is followed by a comma, then trim the comma also. // An example would be an enum member.
// An example would be an enum member. if (nodeToTrim.nextSibling?.kind === ts.SyntaxKind.CommaToken) {
nodeToTrim.nextSibling.kind === ts.SyntaxKind.CommaToken
) {
// Keep its separator since it often has useful whitespace // Keep its separator since it often has useful whitespace
modification.suffix += nodeToTrim.nextSibling.separator; modification.suffix += nodeToTrim.nextSibling.separator;
nodeToTrim.nextSibling.modification.skipAll(); nodeToTrim.nextSibling.modification.skipAll();

View File

@@ -301,8 +301,7 @@ export class ExcerptBuilder {
// There are two types of merges that can occur. We only perform these merges if they are // There are two types of merges that can occur. We only perform these merges if they are
// compatible with all of our token ranges. // compatible with all of our token ranges.
if ( if (
prevPrevToken && prevPrevToken?.kind === ExcerptTokenKind.Reference &&
prevPrevToken.kind === ExcerptTokenKind.Reference &&
prevToken.kind === ExcerptTokenKind.Content && prevToken.kind === ExcerptTokenKind.Content &&
prevToken.text.trim() === '.' && prevToken.text.trim() === '.' &&
currentToken.kind === ExcerptTokenKind.Reference && currentToken.kind === ExcerptTokenKind.Reference &&

View File

@@ -67,27 +67,27 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@msgpack/msgpack": "^3.1.2", "@msgpack/msgpack": "^3.1.3",
"@vladfrangu/async_event_emitter": "^2.4.7", "@vladfrangu/async_event_emitter": "^2.4.7",
"ioredis": "^5.8.2" "ioredis": "^5.9.3"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -66,28 +66,28 @@
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@discordjs/util": "workspace:^", "@discordjs/util": "workspace:^",
"discord-api-types": "^0.38.36", "discord-api-types": "^0.38.40",
"ts-mixer": "^6.0.4", "ts-mixer": "^6.0.4",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"zod": "^4.1.13" "zod": "^4.3.6"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -201,6 +201,7 @@ export function createComponentBuilder(
return data; return data;
} }
// eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
switch (data.type) { switch (data.type) {
case ComponentType.ActionRow: case ComponentType.ActionRow:
return new ActionRowBuilder(data); return new ActionRowBuilder(data);
@@ -237,7 +238,7 @@ export function createComponentBuilder(
case ComponentType.FileUpload: case ComponentType.FileUpload:
return new FileUploadBuilder(data); return new FileUploadBuilder(data);
default: default:
// @ts-expect-error This case can still occur if we get a newer unsupported component type // TODO: add back @ts-expect-error This case can still occur if we get a newer unsupported component type
throw new Error(`Cannot properly serialize component type: ${data.type}`); throw new Error(`Cannot properly serialize component type: ${data.type}`);
} }
} }

View File

@@ -70,6 +70,7 @@ export class LabelBuilder extends ComponentBuilder<APILabelComponent> {
this.data = { this.data = {
...structuredClone(rest), ...structuredClone(rest),
// @ts-expect-error Upcoming components update.
component: component ? createComponentBuilder(component) : undefined, component: component ? createComponentBuilder(component) : undefined,
type: ComponentType.Label, type: ComponentType.Label,
}; };

View File

@@ -64,19 +64,19 @@
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -70,25 +70,25 @@
"@discordjs/ws": "workspace:^", "@discordjs/ws": "workspace:^",
"@sapphire/snowflake": "^3.5.5", "@sapphire/snowflake": "^3.5.5",
"@vladfrangu/async_event_emitter": "^2.4.7", "@vladfrangu/async_event_emitter": "^2.4.7",
"discord-api-types": "^0.38.36" "discord-api-types": "^0.38.40"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -50,23 +50,23 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"commander": "^14.0.2", "commander": "^14.0.3",
"prompts": "^2.4.2", "prompts": "^2.4.2",
"validate-npm-package-name": "^7.0.0" "validate-npm-package-name": "^7.0.2"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@types/prompts": "^2.4.9", "@types/prompts": "^2.4.9",
"@types/validate-npm-package-name": "^4.0.2", "@types/validate-npm-package-name": "^4.0.2",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },

View File

@@ -15,10 +15,10 @@
"discord.js": "^14.25.1" "discord.js": "^14.25.1"
}, },
"devDependencies": { "devDependencies": {
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"zod": "^4.1.13" "zod": "^4.3.6"
} }
} }

View File

@@ -16,12 +16,12 @@
}, },
"devDependencies": { "devDependencies": {
"@sapphire/ts-config": "^5.0.3", "@sapphire/ts-config": "^5.0.3",
"@types/bun": "^1.3.4", "@types/bun": "^1.3.9",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"zod": "^4.1.13" "zod": "^4.3.6"
} }
} }

View File

@@ -15,11 +15,11 @@
"discord.js": "^14.25.1" "discord.js": "^14.25.1"
}, },
"devDependencies": { "devDependencies": {
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"zod": "^4.1.13" "zod": "^4.3.6"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -17,13 +17,13 @@
}, },
"devDependencies": { "devDependencies": {
"@sapphire/ts-config": "^5.0.3", "@sapphire/ts-config": "^5.0.3",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"zod": "^4.1.13" "zod": "^4.3.6"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -74,27 +74,27 @@
"@discordjs/ws": "workspace:^", "@discordjs/ws": "workspace:^",
"@sapphire/snowflake": "3.5.5", "@sapphire/snowflake": "3.5.5",
"@vladfrangu/async_event_emitter": "^2.4.7", "@vladfrangu/async_event_emitter": "^2.4.7",
"discord-api-types": "^0.38.36", "discord-api-types": "^0.38.40",
"fast-deep-equal": "3.1.3", "fast-deep-equal": "3.1.3",
"lodash.snakecase": "4.1.1", "lodash.snakecase": "4.1.1",
"magic-bytes.js": "^1.12.1", "magic-bytes.js": "^1.13.0",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"undici": "7.16.0" "undici": "7.22.0"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/docgen": "workspace:^", "@discordjs/docgen": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsd": "^0.33.0", "tsd": "^0.33.0",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },
"engines": { "engines": {

View File

@@ -60,23 +60,23 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"commander": "^14.0.2", "commander": "^14.0.3",
"jsdoc-to-markdown": "^8.0.3", "jsdoc-to-markdown": "^8.0.3",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"typedoc": "^0.25.13" "typedoc": "^0.25.13"
}, },
"devDependencies": { "devDependencies": {
"@types/jsdoc-to-markdown": "^7.0.6", "@types/jsdoc-to-markdown": "^7.0.6",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },
"engines": { "engines": {

View File

@@ -55,25 +55,25 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"discord-api-types": "^0.38.36" "discord-api-types": "^0.38.40"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -288,8 +288,8 @@ export function chatInputApplicationCommandMention<
>( >(
commandId: CommandId, commandId: CommandId,
commandName: CommandName, commandName: CommandName,
subcommandName?: SubcommandName | undefined, subcommandName?: SubcommandName,
subcommandGroupName?: SubcommandGroupName | undefined, subcommandGroupName?: SubcommandGroupName,
): ):
| `</${CommandName} ${SubcommandGroupName} ${SubcommandName}:${CommandId}>` | `</${CommandName} ${SubcommandGroupName} ${SubcommandName}:${CommandId}>`
| `</${CommandName} ${SubcommandName}:${CommandId}>` | `</${CommandName} ${SubcommandName}:${CommandId}>`

View File

@@ -72,25 +72,25 @@
"@discordjs/rest": "workspace:^", "@discordjs/rest": "workspace:^",
"@discordjs/util": "workspace:^", "@discordjs/util": "workspace:^",
"@discordjs/ws": "workspace:^", "@discordjs/ws": "workspace:^",
"discord-api-types": "^0.38.36" "discord-api-types": "^0.38.40"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -50,16 +50,16 @@
"tslib": "^2.8.1" "tslib": "^2.8.1"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },
"engines": { "engines": {

View File

@@ -68,27 +68,27 @@
"@discordjs/rest": "workspace:^", "@discordjs/rest": "workspace:^",
"@discordjs/util": "workspace:^", "@discordjs/util": "workspace:^",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"undici": "7.16.0" "undici": "7.22.0"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@types/supertest": "^6.0.3", "@types/supertest": "^6.0.3",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"supertest": "^7.1.4", "supertest": "^7.2.2",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -88,29 +88,29 @@
"@sapphire/async-queue": "^1.5.5", "@sapphire/async-queue": "^1.5.5",
"@sapphire/snowflake": "^3.5.5", "@sapphire/snowflake": "^3.5.5",
"@vladfrangu/async_event_emitter": "^2.4.7", "@vladfrangu/async_event_emitter": "^2.4.7",
"discord-api-types": "^0.38.36", "discord-api-types": "^0.38.40",
"magic-bytes.js": "^1.12.1", "magic-bytes.js": "^1.13.0",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"undici": "7.16.0", "undici": "7.22.0",
"uuid": "^13.0.0" "uuid": "^13.0.0"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -60,30 +60,30 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@actions/glob": "^0.5.0", "@actions/glob": "^0.5.1",
"@discordjs/api-extractor-model": "workspace:^", "@discordjs/api-extractor-model": "workspace:^",
"@discordjs/api-extractor-utils": "workspace:^", "@discordjs/api-extractor-utils": "workspace:^",
"@microsoft/tsdoc": "~0.15.1", "@microsoft/tsdoc": "~0.15.1",
"@microsoft/tsdoc-config": "~0.17.1", "@microsoft/tsdoc-config": "~0.17.1",
"@vercel/blob": "^2.0.0", "@vercel/blob": "^2.3.0",
"@vercel/postgres": "^0.10.0", "@vercel/postgres": "^0.10.0",
"commander": "^14.0.2", "commander": "^14.0.3",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"undici": "7.16.0", "undici": "7.22.0",
"yaml": "^2.8.2" "yaml": "^2.8.2"
}, },
"devDependencies": { "devDependencies": {
"@turbo/gen": "^2.6.3", "@turbo/gen": "^2.8.10",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"terser": "^5.44.1", "terser": "^5.46.0",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3" "typescript": "~5.9.3"
}, },
"engines": { "engines": {

View File

@@ -59,19 +59,19 @@
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^24.10.13",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -63,26 +63,26 @@
"dependencies": { "dependencies": {
"@discordjs/formatters": "workspace:^", "@discordjs/formatters": "workspace:^",
"@sapphire/snowflake": "^3.5.5", "@sapphire/snowflake": "^3.5.5",
"discord-api-types": "^0.38.36" "discord-api-types": "^0.38.40"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cpy-cli": "^6.0.0", "cpy-cli": "^6.0.0",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -52,39 +52,39 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@ariakit/react": "^0.4.20", "@ariakit/react": "^0.4.21",
"@react-icons/all-files": "^4.1.0", "@react-icons/all-files": "^4.1.0",
"react": "^19.2.1", "react": "^19.2.4",
"react-dom": "^19.2.1" "react-dom": "^19.2.4"
}, },
"devDependencies": { "devDependencies": {
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@react-icons/all-files": "^4.1.0", "@react-icons/all-files": "^4.1.0",
"@storybook/addon-docs": "^10.1.6", "@storybook/addon-docs": "^10.2.10",
"@storybook/addon-links": "^10.1.6", "@storybook/addon-links": "^10.2.10",
"@storybook/addon-themes": "^10.1.6", "@storybook/addon-themes": "^10.2.10",
"@storybook/builder-vite": "^10.1.6", "@storybook/builder-vite": "^10.2.10",
"@storybook/react": "^10.1.6", "@storybook/react": "^10.2.10",
"@storybook/react-vite": "^10.1.6", "@storybook/react-vite": "^10.2.10",
"@types/node": "^24.10.2", "@types/node": "^24.10.13",
"@types/react": "^19.2.7", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"@unocss/eslint-plugin": "^66.5.10", "@unocss/eslint-plugin": "^66.6.0",
"@unocss/reset": "^66.5.10", "@unocss/reset": "^66.6.0",
"@vitejs/plugin-react": "^5.1.2", "@vitejs/plugin-react": "^5.1.4",
"chromatic": "^13.3.4", "chromatic": "^13.3.5",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"prop-types": "^15.8.1", "prop-types": "^15.8.1",
"storybook": "^10.1.6", "storybook": "^10.2.10",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"unocss": "^66.5.10", "unocss": "^66.6.0",
"vite": "^7.2.7", "vite": "^7.3.1",
"vite-plugin-dts": "^4.5.4" "vite-plugin-dts": "^4.5.4"
}, },
"engines": { "engines": {

View File

@@ -62,25 +62,25 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"discord-api-types": "^0.38.36" "discord-api-types": "^0.38.40"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15" "vitest": "^4.0.18"
}, },
"engines": { "engines": {
"node": ">=22.12.0" "node": ">=22.12.0"

View File

@@ -65,13 +65,17 @@ describe('createAudioResource', () => {
}); });
test('Only infers type if not explicitly given', () => { test('Only infers type if not explicitly given', () => {
const resource = createAudioResource(new opus.Encoder(), { inputType: StreamType.Arbitrary }); const resource = createAudioResource(new opus.Encoder({ rate: 48_000, channels: 2, frameSize: 960 }), {
inputType: StreamType.Arbitrary,
});
expect(findPipeline).toHaveBeenCalledWith(StreamType.Arbitrary, NO_CONSTRAINT); expect(findPipeline).toHaveBeenCalledWith(StreamType.Arbitrary, NO_CONSTRAINT);
expect(resource.volume).toBeUndefined(); expect(resource.volume).toBeUndefined();
}); });
test('Infers from opus.Encoder', () => { test('Infers from opus.Encoder', () => {
const resource = createAudioResource(new opus.Encoder(), { inlineVolume: true }); const resource = createAudioResource(new opus.Encoder({ rate: 48_000, channels: 2, frameSize: 960 }), {
inlineVolume: true,
});
expect(findPipeline).toHaveBeenCalledWith(StreamType.Opus, VOLUME_CONSTRAINT); expect(findPipeline).toHaveBeenCalledWith(StreamType.Opus, VOLUME_CONSTRAINT);
expect(resource.volume).toBeInstanceOf(VolumeTransformer); expect(resource.volume).toBeInstanceOf(VolumeTransformer);
expect(resource.encoder).toBeInstanceOf(opus.Encoder); expect(resource.encoder).toBeInstanceOf(opus.Encoder);
@@ -91,7 +95,7 @@ describe('createAudioResource', () => {
}); });
test('Infers from opus.Decoder', () => { test('Infers from opus.Decoder', () => {
const resource = createAudioResource(new opus.Decoder()); const resource = createAudioResource(new opus.Decoder({ rate: 48_000, channels: 2, frameSize: 960 }));
expect(findPipeline).toHaveBeenCalledWith(StreamType.Raw, NO_CONSTRAINT); expect(findPipeline).toHaveBeenCalledWith(StreamType.Raw, NO_CONSTRAINT);
expect(resource.volume).toBeUndefined(); expect(resource.volume).toBeUndefined();
}); });

View File

@@ -63,32 +63,32 @@
"homepage": "https://discord.js.org", "homepage": "https://discord.js.org",
"funding": "https://github.com/discordjs/discord.js?sponsor", "funding": "https://github.com/discordjs/discord.js?sponsor",
"dependencies": { "dependencies": {
"@snazzah/davey": "^0.1.8", "@snazzah/davey": "^0.1.9",
"@types/ws": "^8.18.1", "@types/ws": "^8.18.1",
"discord-api-types": "^0.38.36", "discord-api-types": "^0.38.40",
"prism-media": "^1.3.5", "prism-media": "^1.3.5",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"ws": "^8.18.3" "ws": "^8.19.0"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/opus": "^0.9.0", "@discordjs/opus": "^0.10.0",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@noble/ciphers": "^2.1.1", "@noble/ciphers": "^2.1.1",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15", "vitest": "^4.0.18",
"vitest-websocket-mock": "^0.5.0" "vitest-websocket-mock": "^0.5.0"
}, },
"engines": { "engines": {

View File

@@ -78,28 +78,28 @@
"@sapphire/async-queue": "^1.5.5", "@sapphire/async-queue": "^1.5.5",
"@types/ws": "^8.18.1", "@types/ws": "^8.18.1",
"@vladfrangu/async_event_emitter": "^2.4.7", "@vladfrangu/async_event_emitter": "^2.4.7",
"discord-api-types": "^0.38.36", "discord-api-types": "^0.38.40",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"ws": "^8.18.3" "ws": "^8.19.0"
}, },
"devDependencies": { "devDependencies": {
"@discordjs/api-extractor": "workspace:^", "@discordjs/api-extractor": "workspace:^",
"@discordjs/scripts": "workspace:^", "@discordjs/scripts": "workspace:^",
"@favware/cliff-jumper": "^6.0.0", "@favware/cliff-jumper": "^6.0.0",
"@types/node": "^22.19.2", "@types/node": "^22.19.11",
"@vitest/coverage-v8": "^4.0.15", "@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"esbuild-plugin-version-injector": "^1.2.1", "esbuild-plugin-version-injector": "^1.2.1",
"eslint": "^9.39.1", "eslint": "^9.39.2",
"eslint-config-neon": "^0.2.9", "eslint-config-neon": "^0.3.2",
"eslint-formatter-compact": "^9.0.1", "eslint-formatter-compact": "^9.0.1",
"eslint-formatter-pretty": "^7.0.0", "eslint-formatter-pretty": "^7.0.0",
"mock-socket": "^9.3.1", "mock-socket": "^9.3.1",
"prettier": "^3.7.4", "prettier": "^3.8.1",
"tsup": "^8.5.1", "tsup": "^8.5.1",
"turbo": "^2.6.3", "turbo": "^2.8.10",
"typescript": "~5.9.3", "typescript": "~5.9.3",
"vitest": "^4.0.15", "vitest": "^4.0.18",
"zlib-sync": "^0.1.10" "zlib-sync": "^0.1.10"
}, },
"engines": { "engines": {

View File

@@ -186,7 +186,6 @@ export class WebSocketShard extends AsyncEventEmitter<WebSocketShardEventsMap> {
const { version, encoding, compression, useIdentifyCompression } = this.strategy.options; const { version, encoding, compression, useIdentifyCompression } = this.strategy.options;
this.identifyCompressionEnabled = useIdentifyCompression; this.identifyCompressionEnabled = useIdentifyCompression;
// eslint-disable-next-line id-length
const params = new URLSearchParams({ v: version, encoding }); const params = new URLSearchParams({ v: version, encoding });
if (compression !== null) { if (compression !== null) {
if (useIdentifyCompression) { if (useIdentifyCompression) {

14597
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff