diff --git a/package.json b/package.json index 1120ec8e8fca..3e3652b2c3e0 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "cross-env": "^7.0.3", "cross-fetch": "^3.1.5", "cspell": "^6.0.0", - "downlevel-dts": ">=0.10.0", + "downlevel-dts": ">=0.11.0", "eslint": "^8.15.0", "eslint-plugin-deprecation": "^1.3.2", "eslint-plugin-eslint-comments": "^3.2.0", @@ -107,10 +107,10 @@ "ts-node": "10.7.0", "tslint": "^6.1.3", "tsx": "^3.12.1", - "typescript": ">=3.3.1 <5.0.0" + "typescript": ">=3.3.1 <4.9.5 || 5.0.1-rc" }, "resolutions": { - "typescript": "~4.9.3", + "typescript": "~5.0.1-rc", "@types/node": "^18.11.9", "@jest/create-cache-key-function": "^29", "@jest/reporters": "^29", diff --git a/packages/ast-spec/package.json b/packages/ast-spec/package.json index 433b1a89093e..e8a134a67cfe 100644 --- a/packages/ast-spec/package.json +++ b/packages/ast-spec/package.json @@ -46,7 +46,7 @@ "@babel/core": "*", "@babel/eslint-parser": "*", "@babel/parser": "*", - "@microsoft/api-extractor": "^7.23.2", + "@microsoft/api-extractor": "^7.34.4", "@types/babel__core": "*", "glob": "*", "jest-diff": "*", diff --git a/packages/eslint-plugin/src/rules/no-redundant-type-constituents.ts b/packages/eslint-plugin/src/rules/no-redundant-type-constituents.ts index 33237a8ae4e2..bc8fc8a4a3f5 100644 --- a/packages/eslint-plugin/src/rules/no-redundant-type-constituents.ts +++ b/packages/eslint-plugin/src/rules/no-redundant-type-constituents.ts @@ -82,6 +82,10 @@ function describeLiteralType(type: ts.Type): string { return JSON.stringify(type.value); } + if (util.isTypeBigIntLiteralType(type)) { + return `${type.value.negative ? '-' : ''}${type.value.base10Value}n`; + } + if (type.isLiteral()) { return type.value.toString(); } @@ -102,10 +106,6 @@ function describeLiteralType(type: ts.Type): string { return 'template literal type'; } - if (util.isTypeBigIntLiteralType(type)) { - return `${type.value.negative ? '-' : ''}${type.value.base10Value}n`; - } - if (tsutils.isBooleanLiteralType(type, true)) { return 'true'; } diff --git a/packages/scope-manager/src/lib/decorators.legacy.ts b/packages/scope-manager/src/lib/decorators.legacy.ts new file mode 100644 index 000000000000..8a02028b68e9 --- /dev/null +++ b/packages/scope-manager/src/lib/decorators.legacy.ts @@ -0,0 +1,14 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { TYPE } from './base-config'; + +export const decorators_legacy = { + ClassDecorator: TYPE, + PropertyDecorator: TYPE, + MethodDecorator: TYPE, + ParameterDecorator: TYPE, +} as Record; diff --git a/packages/scope-manager/src/lib/decorators.ts b/packages/scope-manager/src/lib/decorators.ts new file mode 100644 index 000000000000..cbeb41eba291 --- /dev/null +++ b/packages/scope-manager/src/lib/decorators.ts @@ -0,0 +1,20 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { TYPE } from './base-config'; + +export const decorators = { + ClassMemberDecoratorContext: TYPE, + DecoratorContext: TYPE, + ClassDecoratorContext: TYPE, + ClassMethodDecoratorContext: TYPE, + ClassGetterDecoratorContext: TYPE, + ClassSetterDecoratorContext: TYPE, + ClassAccessorDecoratorContext: TYPE, + ClassAccessorDecoratorTarget: TYPE, + ClassAccessorDecoratorResult: TYPE, + ClassFieldDecoratorContext: TYPE, +} as Record; diff --git a/packages/scope-manager/src/lib/dom.iterable.ts b/packages/scope-manager/src/lib/dom.iterable.ts index 1d43661478b4..10c5d0eada18 100644 --- a/packages/scope-manager/src/lib/dom.iterable.ts +++ b/packages/scope-manager/src/lib/dom.iterable.ts @@ -10,6 +10,7 @@ export const dom_iterable = { AudioParam: TYPE, AudioParamMap: TYPE, BaseAudioContext: TYPE, + CSSKeyframesRule: TYPE, CSSRuleList: TYPE, CSSStyleDeclaration: TYPE, Cache: TYPE, @@ -31,6 +32,9 @@ export const dom_iterable = { Headers: TYPE, IDBDatabase: TYPE, IDBObjectStore: TYPE, + MIDIInputMap: TYPE, + MIDIOutput: TYPE, + MIDIOutputMap: TYPE, MediaKeyStatusMap: TYPE, MediaList: TYPE, MessageEvent: TYPE, diff --git a/packages/scope-manager/src/lib/dom.ts b/packages/scope-manager/src/lib/dom.ts index 1087a238dfca..5976f8794927 100644 --- a/packages/scope-manager/src/lib/dom.ts +++ b/packages/scope-manager/src/lib/dom.ts @@ -38,6 +38,7 @@ export const dom = { CanvasRenderingContext2DSettings: TYPE, ChannelMergerOptions: TYPE, ChannelSplitterOptions: TYPE, + CheckVisibilityOptions: TYPE, ClientQueryOptions: TYPE, ClipboardEventInit: TYPE, ClipboardItemOptions: TYPE, @@ -115,6 +116,7 @@ export const dom = { ImageBitmapOptions: TYPE, ImageBitmapRenderingContextSettings: TYPE, ImageDataSettings: TYPE, + ImageEncodeOptions: TYPE, ImportMeta: TYPE, InputEventInit: TYPE, IntersectionObserverEntryInit: TYPE, @@ -128,6 +130,9 @@ export const dom = { LockInfo: TYPE, LockManagerSnapshot: TYPE, LockOptions: TYPE, + MIDIConnectionEventInit: TYPE, + MIDIMessageEventInit: TYPE, + MIDIOptions: TYPE, MediaCapabilitiesDecodingInfo: TYPE, MediaCapabilitiesEncodingInfo: TYPE, MediaCapabilitiesInfo: TYPE, @@ -354,6 +359,7 @@ export const dom = { CSSContainerRule: TYPE_VALUE, CSSCounterStyleRule: TYPE_VALUE, CSSFontFaceRule: TYPE_VALUE, + CSSFontFeatureValuesRule: TYPE_VALUE, CSSFontPaletteValuesRule: TYPE_VALUE, CSSGroupingRule: TYPE_VALUE, CSSImportRule: TYPE_VALUE, @@ -441,8 +447,6 @@ export const dom = { DeviceOrientationEvent: TYPE_VALUE, DocumentEventMap: TYPE, Document: TYPE_VALUE, - DocumentAndElementEventHandlersEventMap: TYPE, - DocumentAndElementEventHandlers: TYPE, DocumentFragment: TYPE_VALUE, DocumentOrShadowRoot: TYPE, DocumentTimeline: TYPE_VALUE, @@ -628,6 +632,17 @@ export const dom = { Location: TYPE_VALUE, Lock: TYPE_VALUE, LockManager: TYPE_VALUE, + MIDIAccessEventMap: TYPE, + MIDIAccess: TYPE_VALUE, + MIDIConnectionEvent: TYPE_VALUE, + MIDIInputEventMap: TYPE, + MIDIInput: TYPE_VALUE, + MIDIInputMap: TYPE_VALUE, + MIDIMessageEvent: TYPE_VALUE, + MIDIOutput: TYPE_VALUE, + MIDIOutputMap: TYPE_VALUE, + MIDIPortEventMap: TYPE, + MIDIPort: TYPE_VALUE, MathMLElementEventMap: TYPE, MathMLElement: TYPE_VALUE, MediaCapabilities: TYPE_VALUE, @@ -1078,6 +1093,7 @@ export const dom = { HTMLElementTagNameMap: TYPE, HTMLElementDeprecatedTagNameMap: TYPE, SVGElementTagNameMap: TYPE, + MathMLElementTagNameMap: TYPE, ElementTagNameMap: TYPE, AlgorithmIdentifier: TYPE, BigInteger: TYPE, @@ -1117,7 +1133,6 @@ export const dom = { HeadersInit: TYPE, IDBValidKey: TYPE, ImageBitmapSource: TYPE, - InsertPosition: TYPE, Int32List: TYPE, LineAndPositionSetting: TYPE, MediaProvider: TYPE, @@ -1182,6 +1197,7 @@ export const dom = { EndingType: TYPE, FileSystemHandleKind: TYPE, FillMode: TYPE, + FontDisplay: TYPE, FontFaceLoadStatus: TYPE, FontFaceSetLoadStatus: TYPE, FullscreenNavigationUI: TYPE, @@ -1195,12 +1211,16 @@ export const dom = { IDBTransactionMode: TYPE, ImageOrientation: TYPE, ImageSmoothingQuality: TYPE, + InsertPosition: TYPE, IterationCompositeOperation: TYPE, KeyFormat: TYPE, KeyType: TYPE, KeyUsage: TYPE, LineAlignSetting: TYPE, LockMode: TYPE, + MIDIPortConnectionState: TYPE, + MIDIPortDeviceState: TYPE, + MIDIPortType: TYPE, MediaDecodingType: TYPE, MediaDeviceKind: TYPE, MediaEncodingType: TYPE, diff --git a/packages/scope-manager/src/lib/es2015.symbol.wellknown.ts b/packages/scope-manager/src/lib/es2015.symbol.wellknown.ts index 94fd4ac4e70f..94e522cfe03d 100644 --- a/packages/scope-manager/src/lib/es2015.symbol.wellknown.ts +++ b/packages/scope-manager/src/lib/es2015.symbol.wellknown.ts @@ -12,6 +12,7 @@ export const es2015_symbol_wellknown = { SymbolConstructor: TYPE, Symbol: TYPE, Array: TYPE, + ReadonlyArray: TYPE, Date: TYPE, Map: TYPE, WeakMap: TYPE, diff --git a/packages/scope-manager/src/lib/es2022.regexp.ts b/packages/scope-manager/src/lib/es2022.regexp.ts new file mode 100644 index 000000000000..85998ffe3682 --- /dev/null +++ b/packages/scope-manager/src/lib/es2022.regexp.ts @@ -0,0 +1,14 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { TYPE } from './base-config'; + +export const es2022_regexp = { + RegExpMatchArray: TYPE, + RegExpExecArray: TYPE, + RegExpIndicesArray: TYPE, + RegExp: TYPE, +} as Record; diff --git a/packages/scope-manager/src/lib/es2022.ts b/packages/scope-manager/src/lib/es2022.ts index 0956c0111d6c..1e5eb867a2b6 100644 --- a/packages/scope-manager/src/lib/es2022.ts +++ b/packages/scope-manager/src/lib/es2022.ts @@ -9,6 +9,7 @@ import { es2022_array } from './es2022.array'; import { es2022_error } from './es2022.error'; import { es2022_intl } from './es2022.intl'; import { es2022_object } from './es2022.object'; +import { es2022_regexp } from './es2022.regexp'; import { es2022_sharedmemory } from './es2022.sharedmemory'; import { es2022_string } from './es2022.string'; @@ -20,4 +21,5 @@ export const es2022 = { ...es2022_object, ...es2022_sharedmemory, ...es2022_string, + ...es2022_regexp, } as Record; diff --git a/packages/scope-manager/src/lib/es2023.array.ts b/packages/scope-manager/src/lib/es2023.array.ts new file mode 100644 index 000000000000..029b058a8cdd --- /dev/null +++ b/packages/scope-manager/src/lib/es2023.array.ts @@ -0,0 +1,23 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { TYPE } from './base-config'; + +export const es2023_array = { + Array: TYPE, + ReadonlyArray: TYPE, + Int8Array: TYPE, + Uint8Array: TYPE, + Uint8ClampedArray: TYPE, + Int16Array: TYPE, + Uint16Array: TYPE, + Int32Array: TYPE, + Uint32Array: TYPE, + Float32Array: TYPE, + Float64Array: TYPE, + BigInt64Array: TYPE, + BigUint64Array: TYPE, +} as Record; diff --git a/packages/scope-manager/src/lib/es2023.full.ts b/packages/scope-manager/src/lib/es2023.full.ts new file mode 100644 index 000000000000..b8a3c9310b6e --- /dev/null +++ b/packages/scope-manager/src/lib/es2023.full.ts @@ -0,0 +1,19 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { dom } from './dom'; +import { dom_iterable } from './dom.iterable'; +import { es2023 } from './es2023'; +import { scripthost } from './scripthost'; +import { webworker_importscripts } from './webworker.importscripts'; + +export const es2023_full = { + ...es2023, + ...dom, + ...webworker_importscripts, + ...scripthost, + ...dom_iterable, +} as Record; diff --git a/packages/scope-manager/src/lib/es2023.ts b/packages/scope-manager/src/lib/es2023.ts new file mode 100644 index 000000000000..9e98d3766115 --- /dev/null +++ b/packages/scope-manager/src/lib/es2023.ts @@ -0,0 +1,13 @@ +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: +// npx nx generate-lib @typescript-eslint/scope-manager + +import type { ImplicitLibVariableOptions } from '../variable'; +import { es2022 } from './es2022'; +import { es2023_array } from './es2023.array'; + +export const es2023 = { + ...es2022, + ...es2023_array, +} as Record; diff --git a/packages/scope-manager/src/lib/es5.ts b/packages/scope-manager/src/lib/es5.ts index cef8eb253ce6..94c6eff46d0b 100644 --- a/packages/scope-manager/src/lib/es5.ts +++ b/packages/scope-manager/src/lib/es5.ts @@ -5,8 +5,12 @@ import type { ImplicitLibVariableOptions } from '../variable'; import { TYPE, TYPE_VALUE } from './base-config'; +import { decorators } from './decorators'; +import { decorators_legacy } from './decorators.legacy'; export const es5 = { + ...decorators, + ...decorators_legacy, Symbol: TYPE, PropertyKey: TYPE, PropertyDescriptor: TYPE, @@ -57,10 +61,6 @@ export const es5 = { Array: TYPE_VALUE, ArrayConstructor: TYPE, TypedPropertyDescriptor: TYPE, - ClassDecorator: TYPE, - PropertyDecorator: TYPE, - MethodDecorator: TYPE, - ParameterDecorator: TYPE, PromiseConstructorLike: TYPE, PromiseLike: TYPE, Promise: TYPE, diff --git a/packages/scope-manager/src/lib/esnext.ts b/packages/scope-manager/src/lib/esnext.ts index 31ac2762267a..72089f282dcc 100644 --- a/packages/scope-manager/src/lib/esnext.ts +++ b/packages/scope-manager/src/lib/esnext.ts @@ -4,10 +4,10 @@ // npx nx generate-lib @typescript-eslint/scope-manager import type { ImplicitLibVariableOptions } from '../variable'; -import { es2022 } from './es2022'; +import { es2023 } from './es2023'; import { esnext_intl } from './esnext.intl'; export const esnext = { - ...es2022, + ...es2023, ...esnext_intl, } as Record; diff --git a/packages/scope-manager/src/lib/index.ts b/packages/scope-manager/src/lib/index.ts index dfee880fa16e..a91568b6be6e 100644 --- a/packages/scope-manager/src/lib/index.ts +++ b/packages/scope-manager/src/lib/index.ts @@ -3,6 +3,8 @@ // RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE: // npx nx generate-lib @typescript-eslint/scope-manager +import { decorators } from './decorators'; +import { decorators_legacy } from './decorators.legacy'; import { dom } from './dom'; import { dom_iterable } from './dom.iterable'; import { es5 } from './es5'; @@ -64,8 +66,12 @@ import { es2022_error } from './es2022.error'; import { es2022_full } from './es2022.full'; import { es2022_intl } from './es2022.intl'; import { es2022_object } from './es2022.object'; +import { es2022_regexp } from './es2022.regexp'; import { es2022_sharedmemory } from './es2022.sharedmemory'; import { es2022_string } from './es2022.string'; +import { es2023 } from './es2023'; +import { es2023_array } from './es2023.array'; +import { es2023_full } from './es2023.full'; import { esnext } from './esnext'; import { esnext_array } from './esnext.array'; import { esnext_asynciterable } from './esnext.asynciterable'; @@ -94,6 +100,7 @@ const lib = { es2020, es2021, es2022, + es2023, esnext, dom, 'dom.iterable': dom_iterable, @@ -144,6 +151,8 @@ const lib = { 'es2022.object': es2022_object, 'es2022.sharedmemory': es2022_sharedmemory, 'es2022.string': es2022_string, + 'es2022.regexp': es2022_regexp, + 'es2023.array': es2023_array, 'esnext.array': esnext_array, 'esnext.symbol': esnext_symbol, 'esnext.asynciterable': esnext_asynciterable, @@ -152,6 +161,8 @@ const lib = { 'esnext.string': esnext_string, 'esnext.promise': esnext_promise, 'esnext.weakref': esnext_weakref, + decorators, + 'decorators.legacy': decorators_legacy, 'es2016.full': es2016_full, 'es2017.full': es2017_full, 'es2018.full': es2018_full, @@ -159,6 +170,7 @@ const lib = { 'es2020.full': es2020_full, 'es2021.full': es2021_full, 'es2022.full': es2022_full, + 'es2023.full': es2023_full, 'esnext.full': esnext_full, lib: libBase, } as const; diff --git a/packages/scope-manager/src/lib/webworker.ts b/packages/scope-manager/src/lib/webworker.ts index bddb6bf9aa4d..5e2aaad12f41 100644 --- a/packages/scope-manager/src/lib/webworker.ts +++ b/packages/scope-manager/src/lib/webworker.ts @@ -41,6 +41,7 @@ export const webworker = { FilePropertyBag: TYPE, FileSystemGetDirectoryOptions: TYPE, FileSystemGetFileOptions: TYPE, + FileSystemReadWriteOptions: TYPE, FileSystemRemoveOptions: TYPE, FontFaceDescriptors: TYPE, FontFaceSetLoadEventInit: TYPE, @@ -56,6 +57,7 @@ export const webworker = { ImageBitmapOptions: TYPE, ImageBitmapRenderingContextSettings: TYPE, ImageDataSettings: TYPE, + ImageEncodeOptions: TYPE, ImportMeta: TYPE, JsonWebKey: TYPE, KeyAlgorithm: TYPE, @@ -196,6 +198,7 @@ export const webworker = { FileSystemDirectoryHandle: TYPE_VALUE, FileSystemFileHandle: TYPE_VALUE, FileSystemHandle: TYPE_VALUE, + FileSystemSyncAccessHandle: TYPE_VALUE, FontFace: TYPE_VALUE, FontFaceSetEventMap: TYPE, FontFaceSet: TYPE_VALUE, @@ -441,6 +444,7 @@ export const webworker = { DocumentVisibilityState: TYPE, EndingType: TYPE, FileSystemHandleKind: TYPE, + FontDisplay: TYPE, FontFaceLoadStatus: TYPE, FontFaceSetLoadStatus: TYPE, FrameType: TYPE, diff --git a/packages/type-utils/src/typeFlagUtils.ts b/packages/type-utils/src/typeFlagUtils.ts index 134fdcf4ece1..aa71d702b19a 100644 --- a/packages/type-utils/src/typeFlagUtils.ts +++ b/packages/type-utils/src/typeFlagUtils.ts @@ -5,6 +5,7 @@ import * as ts from 'typescript'; * Gets all of the type flags in a type, iterating through unions automatically */ export function getTypeFlags(type: ts.Type): ts.TypeFlags { + // @ts-expect-error Since typescript 5.0, this is invalid, but uses 0 as the default value of TypeFlags. let flags: ts.TypeFlags = 0; for (const t of unionTypeParts(type)) { flags |= t.flags; diff --git a/packages/types/src/lib.ts b/packages/types/src/lib.ts index 880bafe5b5e6..c1c60650ffd4 100644 --- a/packages/types/src/lib.ts +++ b/packages/types/src/lib.ts @@ -15,6 +15,7 @@ type Lib = | 'es2020' | 'es2021' | 'es2022' + | 'es2023' | 'esnext' | 'dom' | 'dom.iterable' @@ -65,6 +66,8 @@ type Lib = | 'es2022.object' | 'es2022.sharedmemory' | 'es2022.string' + | 'es2022.regexp' + | 'es2023.array' | 'esnext.array' | 'esnext.symbol' | 'esnext.asynciterable' @@ -73,6 +76,8 @@ type Lib = | 'esnext.string' | 'esnext.promise' | 'esnext.weakref' + | 'decorators' + | 'decorators.legacy' | 'es2016.full' | 'es2017.full' | 'es2018.full' @@ -80,6 +85,7 @@ type Lib = | 'es2020.full' | 'es2021.full' | 'es2022.full' + | 'es2023.full' | 'esnext.full' | 'lib'; diff --git a/packages/typescript-estree/src/convert.ts b/packages/typescript-estree/src/convert.ts index 4f7a89d97c14..4d07c341bb2a 100644 --- a/packages/typescript-estree/src/convert.ts +++ b/packages/typescript-estree/src/convert.ts @@ -2553,8 +2553,8 @@ export class Converter { : undefined, initializer: this.convertChild( - // eslint-disable-next-line deprecation/deprecation -- TODO breaking change remove this from the AST - node.initializer, + // @ts-expect-error TODO breaking change remove this from the AST + node.initializer as ts.Node, ) || undefined, readonly: hasModifier(SyntaxKind.ReadonlyKeyword, node) || undefined, static: hasModifier(SyntaxKind.StaticKeyword, node) || undefined, diff --git a/packages/typescript-estree/src/create-program/createDefaultProgram.ts b/packages/typescript-estree/src/create-program/createDefaultProgram.ts index a2de81399d20..b533746fff60 100644 --- a/packages/typescript-estree/src/create-program/createDefaultProgram.ts +++ b/packages/typescript-estree/src/create-program/createDefaultProgram.ts @@ -45,6 +45,7 @@ function createDefaultProgram( ); if (parseSettings.moduleResolver) { + // eslint-disable-next-line deprecation/deprecation -- intentional for older TS versions compilerHost.resolveModuleNames = getModuleResolver( parseSettings.moduleResolver, ).resolveModuleNames; diff --git a/packages/typescript-estree/src/create-program/getWatchProgramsForProjects.ts b/packages/typescript-estree/src/create-program/getWatchProgramsForProjects.ts index d9d4de9c833f..c1263ce342a2 100644 --- a/packages/typescript-estree/src/create-program/getWatchProgramsForProjects.ts +++ b/packages/typescript-estree/src/create-program/getWatchProgramsForProjects.ts @@ -270,6 +270,7 @@ function createWatchProgram( ) as WatchCompilerHostOfConfigFile; if (parseSettings.moduleResolver) { + // eslint-disable-next-line deprecation/deprecation -- intentional for older TS versions watchCompilerHost.resolveModuleNames = getModuleResolver( parseSettings.moduleResolver, ).resolveModuleNames; diff --git a/packages/typescript-estree/src/getModifiers.ts b/packages/typescript-estree/src/getModifiers.ts index a584a7659a77..24ef670a2c0b 100644 --- a/packages/typescript-estree/src/getModifiers.ts +++ b/packages/typescript-estree/src/getModifiers.ts @@ -23,8 +23,10 @@ export function getModifiers( } return ( - // eslint-disable-next-line deprecation/deprecation -- intentional fallback for older TS versions - node.modifiers?.filter((m): m is ts.Modifier => !ts.isDecorator(m)) + // @ts-expect-error intentional fallback for older TS versions + (node.modifiers as ts.Modifier[])?.filter( + (m): m is ts.Modifier => !ts.isDecorator(m), + ) ); } @@ -47,7 +49,7 @@ export function getDecorators( } return ( - // eslint-disable-next-line deprecation/deprecation -- intentional fallback for older TS versions - node.decorators?.filter(ts.isDecorator) + // @ts-expect-error intentional fallback for older TS versions + (node.decorators as ts.Node[])?.filter(ts.isDecorator) ); } diff --git a/packages/typescript-estree/src/node-utils.ts b/packages/typescript-estree/src/node-utils.ts index 2b7351b0408f..4be3ae8e3739 100644 --- a/packages/typescript-estree/src/node-utils.ts +++ b/packages/typescript-estree/src/node-utils.ts @@ -4,6 +4,9 @@ import { getModifiers } from './getModifiers'; import { xhtmlEntities } from './jsx/xhtml-entities'; import type { TSESTree } from './ts-estree'; import { AST_NODE_TYPES, AST_TOKEN_TYPES } from './ts-estree'; +import { typescriptVersionIsAtLeast } from './version-check'; + +const isAtLeast50 = typescriptVersionIsAtLeast['5.0']; const SyntaxKind = ts.SyntaxKind; @@ -433,12 +436,19 @@ export function isChildUnwrappableOptionalChain( export function getTokenType( token: ts.Identifier | ts.Token, ): Exclude { - if ('originalKeywordKind' in token && token.originalKeywordKind) { - if (token.originalKeywordKind === SyntaxKind.NullKeyword) { + let keywordKind: ts.SyntaxKind | undefined; + if (isAtLeast50 && token.kind === SyntaxKind.Identifier) { + keywordKind = ts.identifierToKeywordKind(token as ts.Identifier); + } else if ('originalKeywordKind' in token) { + // eslint-disable-next-line deprecation/deprecation -- intentional fallback for older TS versions + keywordKind = token.originalKeywordKind; + } + if (keywordKind) { + if (keywordKind === SyntaxKind.NullKeyword) { return AST_TOKEN_TYPES.Null; } else if ( - token.originalKeywordKind >= SyntaxKind.FirstFutureReservedWord && - token.originalKeywordKind <= SyntaxKind.LastKeyword + keywordKind >= SyntaxKind.FirstFutureReservedWord && + keywordKind <= SyntaxKind.LastKeyword ) { return AST_TOKEN_TYPES.Identifier; } @@ -663,7 +673,11 @@ export function firstDefined( } export function identifierIsThisKeyword(id: ts.Identifier): boolean { - return id.originalKeywordKind === SyntaxKind.ThisKeyword; + return ( + // eslint-disable-next-line deprecation/deprecation -- intentional for older TS versions + (isAtLeast50 ? ts.identifierToKeywordKind(id) : id.originalKeywordKind) === + SyntaxKind.ThisKeyword + ); } export function isThisIdentifier( diff --git a/packages/typescript-estree/src/parseSettings/warnAboutTSVersion.ts b/packages/typescript-estree/src/parseSettings/warnAboutTSVersion.ts index 13eef19e7964..65ff64fd072d 100644 --- a/packages/typescript-estree/src/parseSettings/warnAboutTSVersion.ts +++ b/packages/typescript-estree/src/parseSettings/warnAboutTSVersion.ts @@ -12,7 +12,7 @@ const SUPPORTED_TYPESCRIPT_VERSIONS = '>=3.3.1 <5.0.0'; * The semver package will ignore prerelease ranges, and we don't want to explicitly document every one * List them all separately here, so we can automatically create the full string */ -const SUPPORTED_PRERELEASE_RANGES: string[] = []; +const SUPPORTED_PRERELEASE_RANGES: string[] = ['5.0.1-rc']; const ACTIVE_TYPESCRIPT_VERSION = ts.version; const isRunningSupportedTypeScriptVersion = semver.satisfies( ACTIVE_TYPESCRIPT_VERSION, diff --git a/packages/typescript-estree/src/ts-estree/ts-nodes.ts b/packages/typescript-estree/src/ts-estree/ts-nodes.ts index 0ba5414e1376..fe1042260d8d 100644 --- a/packages/typescript-estree/src/ts-estree/ts-nodes.ts +++ b/packages/typescript-estree/src/ts-estree/ts-nodes.ts @@ -182,7 +182,9 @@ export type TSNode = | ts.ExportAssignment | ts.SourceFile | ts.Bundle + // eslint-disable-next-line deprecation/deprecation -- intentional for old TS versions | ts.InputFiles + // eslint-disable-next-line deprecation/deprecation -- intentional for old TS versions | ts.UnparsedSource | ts.JsonMinusNumericLiteral | ts.TemplateLiteralTypeNode diff --git a/packages/typescript-estree/src/version-check.ts b/packages/typescript-estree/src/version-check.ts index 194636cb5870..62bef222eb5c 100644 --- a/packages/typescript-estree/src/version-check.ts +++ b/packages/typescript-estree/src/version-check.ts @@ -24,6 +24,8 @@ const versions = [ '4.6', '4.7', '4.8', + '4.9', + '5.0', ] as const; type Versions = typeof versions extends ArrayLike ? U : never; diff --git a/packages/typescript-estree/tests/lib/__snapshots__/convert.test.ts.snap b/packages/typescript-estree/tests/lib/__snapshots__/convert.test.ts.snap index 45d71e343243..16ece4e44606 100644 --- a/packages/typescript-estree/tests/lib/__snapshots__/convert.test.ts.snap +++ b/packages/typescript-estree/tests/lib/__snapshots__/convert.test.ts.snap @@ -2,11 +2,14 @@ exports[`convert deeplyCopy should convert array of nodes 1`] = ` { + "ambientModuleNames": undefined, "amdDependencies": [], "bindDiagnostics": [], "bindSuggestionDiagnostics": undefined, "checkJsDirective": undefined, + "classifiableNames": undefined, "commentDirectives": undefined, + "endFlowNode": undefined, "endOfFileToken": { "loc": { "end": { @@ -32,6 +35,8 @@ exports[`convert deeplyCopy should convert array of nodes 1`] = ` "foo" => "foo", "T" => "T", }, + "impliedNodeFormat": undefined, + "imports": undefined, "isDeclarationFile": false, "languageVariant": 1, "languageVersion": 99, @@ -49,14 +54,21 @@ exports[`convert deeplyCopy should convert array of nodes 1`] = ` "line": 1, }, }, + "moduleAugmentations": undefined, "nodeCount": 8, + "originalFileName": "", + "packageJsonLocations": undefined, + "packageJsonScope": undefined, "parseDiagnostics": [], + "path": "", "pragmas": Map {}, "range": [ 0, 12, ], "referencedFiles": [], + "resolvedModules": undefined, + "resolvedPath": "", "scriptKind": 4, "setExternalModuleIndicator": [Function], "statements": [ @@ -169,6 +181,7 @@ exports[`convert deeplyCopy should convert array of nodes 1`] = ` "type": "ExpressionStatement", }, ], + "symbolCount": 0, "text": "new foo()", "type": "TSSourceFile", "typeReferenceDirectives": [], @@ -191,6 +204,7 @@ exports[`convert deeplyCopy should convert node correctly 1`] = ` }, "name": { "escapedText": "foo", + "flowNode": undefined, "loc": { "end": { "column": 8, @@ -201,7 +215,6 @@ exports[`convert deeplyCopy should convert node correctly 1`] = ` "line": 1, }, }, - "originalKeywordKind": undefined, "range": [ 5, 8, diff --git a/packages/typescript-estree/tests/lib/__snapshots__/semantic-diagnostics-enabled.test.ts.snap b/packages/typescript-estree/tests/lib/__snapshots__/semantic-diagnostics-enabled.test.ts.snap index f3e70c9914e8..7cbfcd17b93d 100644 --- a/packages/typescript-estree/tests/lib/__snapshots__/semantic-diagnostics-enabled.test.ts.snap +++ b/packages/typescript-estree/tests/lib/__snapshots__/semantic-diagnostics-enabled.test.ts.snap @@ -1352,7 +1352,14 @@ exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" e exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/class-decorators/fixtures/class-decorator-factory/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/class-decorators/fixtures/class-parameter-property/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/class-decorators/fixtures/class-parameter-property/fixture 1`] = ` +TSError { + "column": 14, + "index": 97, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/class-decorators/fixtures/export-default-class-decorator/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; @@ -1797,21 +1804,77 @@ exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" e exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/namespaces-and-modules/fixtures/shorthand-ambient-module-declaration/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/_error_/parameter-array-pattern-decorator/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/_error_/parameter-array-pattern-decorator/fixture 1`] = ` +TSError { + "column": 6, + "index": 91, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/_error_/parameter-rest-element-decorator/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/_error_/parameter-rest-element-decorator/fixture 1`] = ` +TSError { + "column": 6, + "index": 91, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-constructor/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-constructor/fixture 1`] = ` +TSError { + "column": 14, + "index": 103, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-decorator-instance-member/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-decorator-instance-member/fixture 1`] = ` +TSError { + "column": 6, + "index": 91, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-decorator-static-member/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-decorator-static-member/fixture 1`] = ` +TSError { + "column": 13, + "index": 104, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-instance-member/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-instance-member/fixture 1`] = ` +TSError { + "column": 8, + "index": 97, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-static-member/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-decorator-static-member/fixture 1`] = ` +TSError { + "column": 15, + "index": 110, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; -exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-object-pattern-decorator/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; +exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/parameter-decorators/fixtures/parameter-object-pattern-decorator/fixture 1`] = ` +TSError { + "column": 6, + "index": 91, + "lineNumber": 4, + "message": "Decorators are not valid here.", +} +`; exports[`Parse all fixtures with "errorOnTypeScriptSyntacticAndSemanticIssues" enabled fixtures/legacy-fixtures/property-decorators/fixtures/property-decorator-factory-instance-member/fixture 1`] = `"TEST OUTPUT: No semantic or syntactic issues found"`; diff --git a/packages/typescript-estree/tests/lib/convert.test.ts b/packages/typescript-estree/tests/lib/convert.test.ts index fb3ac3f63139..7b5cf272252f 100644 --- a/packages/typescript-estree/tests/lib/convert.test.ts +++ b/packages/typescript-estree/tests/lib/convert.test.ts @@ -21,6 +21,7 @@ describe('convert', () => { function fakeUnknownKind(node: ts.Node): void { ts.forEachChild(node, fakeUnknownKind); // @ts-expect-error -- intentionally writing to a readonly field + // eslint-disable-next-line deprecation/deprecation node.kind = ts.SyntaxKind.UnparsedPrologue; } diff --git a/packages/website/src/components/editor/LoadedEditor.tsx b/packages/website/src/components/editor/LoadedEditor.tsx index 48ea1c591776..c8a734c78efc 100644 --- a/packages/website/src/components/editor/LoadedEditor.tsx +++ b/packages/website/src/components/editor/LoadedEditor.tsx @@ -113,6 +113,7 @@ export const LoadedEditor: React.FC = ({ jsx, parseTSConfig(tsconfig).compilerOptions, ); + // @ts-expect-error Monaco typescript.CompilerOptions is incompatible with typescript 5.0 types webLinter.updateCompilerOptions(config); sandboxInstance.setCompilerSettings(config); }, [jsx, sandboxInstance, tsconfig, webLinter]); diff --git a/packages/website/src/components/editor/config.ts b/packages/website/src/components/editor/config.ts index 2428a5502699..39cb1db3cd9b 100644 --- a/packages/website/src/components/editor/config.ts +++ b/packages/website/src/components/editor/config.ts @@ -28,6 +28,7 @@ export function createCompilerOptions( const options = config.options as Monaco.languages.typescript.CompilerOptions; if (!options.lib) { + // @ts-expect-error Monaco typescript.CompilerOptions is incompatible with typescript 5.0 types options.lib = [window.ts.getDefaultLibFileName(options)]; } diff --git a/packages/website/src/components/editor/useSandboxServices.ts b/packages/website/src/components/editor/useSandboxServices.ts index a6f4cbb7dfff..01fb9e76608d 100644 --- a/packages/website/src/components/editor/useSandboxServices.ts +++ b/packages/website/src/components/editor/useSandboxServices.ts @@ -109,6 +109,7 @@ export const useSandboxServices = ( const system = sandboxInstance.tsvfs.createSystem(libEntries); + // @ts-expect-error Monaco typescript.CompilerOptions is incompatible with typescript 5.0 types const webLinter = new WebLinter(system, compilerOptions, lintUtils); onLoaded( diff --git a/patches/typescript+4.9.3.patch b/patches/typescript+5.0.1-rc.patch similarity index 72% rename from patches/typescript+4.9.3.patch rename to patches/typescript+5.0.1-rc.patch index 520a9fde9363..3630b2660994 100644 --- a/patches/typescript+4.9.3.patch +++ b/patches/typescript+5.0.1-rc.patch @@ -1,8 +1,8 @@ diff --git a/node_modules/typescript/lib/typescript.d.ts b/node_modules/typescript/lib/typescript.d.ts -index 54e4c65..aa00912 100644 +index 2201712..6e04c82 100644 --- a/node_modules/typescript/lib/typescript.d.ts +++ b/node_modules/typescript/lib/typescript.d.ts -@@ -428,8 +428,8 @@ declare namespace ts { +@@ -368,8 +368,8 @@ declare namespace ts { JSDocFunctionType = 320, JSDocVariadicType = 321, JSDocNamepathType = 322, @@ -12,23 +12,23 @@ index 54e4c65..aa00912 100644 JSDocComment = 323, JSDocText = 324, JSDocTypeLiteral = 325, -@@ -4395,7 +4395,13 @@ declare namespace ts { +@@ -4517,7 +4517,13 @@ declare namespace ts { function symbolName(symbol: Symbol): string; function getNameOfJSDocTypedef(declaration: JSDocTypedefTag): Identifier | PrivateIdentifier | undefined; function getNameOfDeclaration(declaration: Declaration | Expression | undefined): DeclarationName | undefined; + /** -+ * @deprecated don't use this directly as it does not exist pre-4.8; instead use getModifiers from `@typescript-eslint/type-utils`. ++ * @deprecated don't use this directly as it does not exist pre-4.8; instead use getDecorators from `@typescript-eslint/type-utils`. + */ function getDecorators(node: HasDecorators): readonly Decorator[] | undefined; + /** -+ * @deprecated don't use this directly as it does not exist pre-4.8; instead use getDecorators from `@typescript-eslint/type-utils`. ++ * @deprecated don't use this directly as it does not exist pre-4.8; instead use getModifiers from `@typescript-eslint/type-utils`. + */ function getModifiers(node: HasModifiers): readonly Modifier[] | undefined; /** * Gets the JSDoc parameter tags for the node if present. -@@ -4857,7 +4863,13 @@ declare namespace ts { - } - declare namespace ts { +@@ -5022,7 +5028,13 @@ declare namespace ts { + function isModuleName(node: Node): node is ModuleName; + function isBinaryOperatorToken(node: Node): node is BinaryOperatorToken; function setTextRange(range: T, location: TextRange | undefined): T; + /** + * @deprecated don't use this directly as it does not exist pre-4.8; instead use getModifiers from `@typescript-eslint/type-utils`. @@ -38,14 +38,5 @@ index 54e4c65..aa00912 100644 + * @deprecated don't use this directly as it does not exist pre-4.8; instead use getDecorators from `@typescript-eslint/type-utils`. + */ function canHaveDecorators(node: Node): node is HasDecorators; - } - declare namespace ts { -@@ -7958,7 +7970,7 @@ declare namespace ts { - * const decorators = ts.canHaveDecorators(node) ? ts.getDecorators(node) : undefined; - * ``` - */ -- readonly decorators?: undefined; -+ readonly decorators?: NodeArray | undefined; - /** - * @deprecated `modifiers` has been removed from `Node` and moved to the `Node` subtypes that support them. - * Use `ts.canHaveModifiers()` to test whether a `Node` can have modifiers. + /** + * Invokes a callback for each child of the given node. The 'cbNode' callback is invoked for all child nodes diff --git a/yarn.lock b/yarn.lock index 575b622913b7..3be4d4b8c3fe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2385,29 +2385,29 @@ resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== -"@microsoft/api-extractor-model@7.24.3": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.24.3.tgz#406b0447a47eb185e0da4df865bdb0b939d57325" - integrity sha512-JElpLULqYDXQb0YIKKQhOJaNWBXsYeYu5J51Z4O6RGbOq7Tby9ViVfpDuXVXa87AMOSR5WKuaxG/5SnQVVNxiw== +"@microsoft/api-extractor-model@7.26.4": + version "7.26.4" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.26.4.tgz#77f2c17140249b846a61eea41e565289cc77181f" + integrity sha512-PDCgCzXDo+SLY5bsfl4bS7hxaeEtnXj7XtuzEE+BtALp7B5mK/NrS2kHWU69pohgsRmEALycQdaQPXoyT2i5MQ== dependencies: - "@microsoft/tsdoc" "0.14.1" + "@microsoft/tsdoc" "0.14.2" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.53.0" + "@rushstack/node-core-library" "3.55.2" -"@microsoft/api-extractor@^7.23.2": - version "7.32.0" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.32.0.tgz#b3c82a20873aeab21be59ce7113ef377c78baab1" - integrity sha512-BfvPpeVzWLFTdairVItzWQGsZr82fR4RH+8Q4I7t0f9xq66v4Qz9K+u25jbL5R42X01b/vvJMuRhX5KhU8J1Ug== +"@microsoft/api-extractor@^7.34.4": + version "7.34.4" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.34.4.tgz#80677b5059b437bc07e9e55832c0cbde671c16a1" + integrity sha512-HOdcci2nT40ejhwPC3Xja9G+WSJmWhCUKKryRfQYsmE9cD+pxmBaKBKCbuS9jUcl6bLLb4Gz+h7xEN5r0QiXnQ== dependencies: - "@microsoft/api-extractor-model" "7.24.3" - "@microsoft/tsdoc" "0.14.1" + "@microsoft/api-extractor-model" "7.26.4" + "@microsoft/tsdoc" "0.14.2" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.53.0" - "@rushstack/rig-package" "0.3.16" - "@rushstack/ts-command-line" "4.12.4" + "@rushstack/node-core-library" "3.55.2" + "@rushstack/rig-package" "0.3.18" + "@rushstack/ts-command-line" "4.13.2" colors "~1.2.1" lodash "~4.17.15" - resolve "~1.17.0" + resolve "~1.22.1" semver "~7.3.0" source-map "~0.6.1" typescript "~4.8.4" @@ -2427,6 +2427,11 @@ resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.14.1.tgz#155ef21065427901994e765da8a0ba0eaae8b8bd" integrity sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw== +"@microsoft/tsdoc@0.14.2": + version "0.14.2" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz#c3ec604a0b54b9a9b87e9735dfc59e1a5da6a5fb" + integrity sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug== + "@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1": version "5.1.1-v1" resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz#dbf733a965ca47b1973177dc0bb6c889edcfb129" @@ -3043,32 +3048,31 @@ estree-walker "^2.0.2" picomatch "^2.3.1" -"@rushstack/node-core-library@3.53.0": - version "3.53.0" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.53.0.tgz#b4b812bc2e207e4fd3939991f8675335dab50978" - integrity sha512-FXk3eDtTHKnaUq+fLyNY867ioRhMa6CJDJO5hZ3wuGlxm184nckAFiU+hx027AodjpnqjX6pYF0zZGq7k7P/vg== +"@rushstack/node-core-library@3.55.2": + version "3.55.2" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.55.2.tgz#d951470bac98171de13a8a351d4537c63fbfd0b6" + integrity sha512-SaLe/x/Q/uBVdNFK5V1xXvsVps0y7h1sN7aSJllQyFbugyOaxhNRF25bwEDnicARNEjJw0pk0lYnJQ9Kr6ev0A== dependencies: - "@types/node" "12.20.24" colors "~1.2.1" fs-extra "~7.0.1" import-lazy "~4.0.0" jju "~1.4.0" - resolve "~1.17.0" + resolve "~1.22.1" semver "~7.3.0" z-schema "~5.0.2" -"@rushstack/rig-package@0.3.16": - version "0.3.16" - resolved "https://registry.yarnpkg.com/@rushstack/rig-package/-/rig-package-0.3.16.tgz#522279411059e05aeec0930d4ff86b707c720cfc" - integrity sha512-FoSQng2RtapEUe+CBPKxbpZUhUht5s2+mMiztRH95qqp81dsUpfEWojtV6XrUVyWIRk2/cY1CDZUKJWxMrT26Q== +"@rushstack/rig-package@0.3.18": + version "0.3.18" + resolved "https://registry.yarnpkg.com/@rushstack/rig-package/-/rig-package-0.3.18.tgz#2b59eb8ed482e8cd6ad8d396414bf3200efdd682" + integrity sha512-SGEwNTwNq9bI3pkdd01yCaH+gAsHqs0uxfGvtw9b0LJXH52qooWXnrFTRRLG1aL9pf+M2CARdrA9HLHJys3jiQ== dependencies: - resolve "~1.17.0" + resolve "~1.22.1" strip-json-comments "~3.1.1" -"@rushstack/ts-command-line@4.12.4": - version "4.12.4" - resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.12.4.tgz#e4bedd4890bca415f90fec8f33c51404c4039410" - integrity sha512-ckZHEfPiJCmBdWd/syve5zu2TNsPIqbFie3jWzM/izZa6ZOkDwex/K1ww+kJ12hFBnN44lMD7voJvKXajUCEDA== +"@rushstack/ts-command-line@4.13.2": + version "4.13.2" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.13.2.tgz#2dfdcf418d58256671433b1da4a3b67e1814cc7a" + integrity sha512-bCU8qoL9HyWiciltfzg7GqdfODUeda/JpI0602kbN5YH22rzTxyqYvv7aRLENCM7XCQ1VRs7nMkEqgJUOU8Sag== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" @@ -3613,7 +3617,7 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@12.20.24", "@types/node@^17.0.5", "@types/node@^18.11.9": +"@types/node@*", "@types/node@^17.0.5", "@types/node@^18.11.9": version "18.11.9" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.9.tgz#02d013de7058cea16d36168ef2fc653464cfbad4" integrity sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg== @@ -6112,10 +6116,10 @@ dotenv@~10.0.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== -downlevel-dts@>=0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/downlevel-dts/-/downlevel-dts-0.10.0.tgz#d2be7b4408a1f9eb3a39e15a361f8ea4f175facc" - integrity sha512-AZ7tnUy4XJArsjv6Bcuivvxx+weMvOGHF6seu7e7PVOqMDHMSlfgMl1kt+F4Y2+5TmDwKWHOdimM1DZKihQs8Q== +downlevel-dts@>=0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/downlevel-dts/-/downlevel-dts-0.11.0.tgz#514a2d723009c5845730c1db6c994484c596ed9c" + integrity sha512-vo835pntK7kzYStk7xUHDifiYJvXxVhUapt85uk2AI94gUUAQX9HNRtrcMHNSc3YHJUEHGbYIGsM99uIbgAtxw== dependencies: semver "^7.3.2" shelljs "^0.8.3" @@ -12036,7 +12040,7 @@ resolve.exports@1.1.0, resolve.exports@^1.1.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.3.2: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.3.2, resolve@~1.22.1: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== @@ -12053,13 +12057,6 @@ resolve@^2.0.0-next.3: is-core-module "^2.2.0" path-parse "^1.0.6" -resolve@~1.17.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== - dependencies: - path-parse "^1.0.6" - resolve@~1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" @@ -13372,10 +13369,10 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typescript@*, "typescript@>=3.3.1 <5.0.0", "typescript@^3 || ^4", typescript@next, typescript@~4.8.4, typescript@~4.9.3: - version "4.9.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.3.tgz#3aea307c1746b8c384435d8ac36b8a2e580d85db" - integrity sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA== +typescript@*, "typescript@>=3.3.1 <4.9.5 || 5.0.1-rc", "typescript@^3 || ^4", typescript@next, typescript@~4.8.4, typescript@~5.0.1-rc: + version "5.0.1-rc" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.1-rc.tgz#f2ccabbdb9646b43b5e006dc6f7b0eaf9a222c8b" + integrity sha512-zh75jY8gPo/y7fpmlTVN2bb2MigoLx4hGk+Cla9pY6lgSTvzJrmQQrRt5S80VTsEt6biWPZJgLK2nm6f0Ya+mA== ua-parser-js@^0.7.30: version "0.7.31" pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy