From a10409ccaa3604790dc45f52ef0402eb49015dcf Mon Sep 17 00:00:00 2001 From: TypeScript Bot Date: Tue, 24 Aug 2021 00:07:38 +0000 Subject: [PATCH] Bump version to 4.4.2 and LKG --- lib/lib.dom.d.ts | 8 +++++-- lib/protocol.d.ts | 8 ++----- lib/tsc.js | 15 ++++++------ lib/tsserver.js | 47 ++++++++++++++++++------------------- lib/tsserverlibrary.d.ts | 10 +++----- lib/tsserverlibrary.js | 47 ++++++++++++++++++------------------- lib/typescript.d.ts | 2 +- lib/typescript.js | 43 ++++++++++++++++++--------------- lib/typescriptServices.d.ts | 2 +- lib/typescriptServices.js | 43 ++++++++++++++++++--------------- lib/typingsInstaller.js | 16 +++++++------ package.json | 2 +- src/compiler/corePublic.ts | 2 +- 13 files changed, 126 insertions(+), 119 deletions(-) diff --git a/lib/lib.dom.d.ts b/lib/lib.dom.d.ts index 4407ed588e54b..ead257b3dd400 100644 --- a/lib/lib.dom.d.ts +++ b/lib/lib.dom.d.ts @@ -6400,6 +6400,12 @@ interface HTMLDocument extends Document { removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } +/** @deprecated */ +declare var HTMLDocument: { + prototype: HTMLDocument; + new(): HTMLDocument; +}; + interface HTMLElementEventMap extends ElementEventMap, DocumentAndElementEventHandlersEventMap, GlobalEventHandlersEventMap { } @@ -17201,7 +17207,6 @@ interface WindowEventMap extends GlobalEventHandlersEventMap, WindowEventHandler /** A window containing a DOM document; the document property points to the DOM document loaded in that window. */ interface Window extends EventTarget, AnimationFrameProvider, GlobalEventHandlers, WindowEventHandlers, WindowLocalStorage, WindowOrWorkerGlobalScope, WindowSessionStorage { - HTMLDocument: Document; /** @deprecated This is a legacy alias of `navigator`. */ readonly clientInformation: Navigator; /** @@ -18266,7 +18271,6 @@ declare var Image: { declare var Option: { new(text?: string, value?: string, defaultSelected?: boolean, selected?: boolean): HTMLOptionElement; }; -declare var HTMLDocument: Document; /** @deprecated This is a legacy alias of `navigator`. */ declare var clientInformation: Navigator; /** diff --git a/lib/protocol.d.ts b/lib/protocol.d.ts index 3e6c0bee31bfd..fab689ba5b9cc 100644 --- a/lib/protocol.d.ts +++ b/lib/protocol.d.ts @@ -1954,11 +1954,7 @@ declare namespace ts.server.protocol { interface SignatureHelpResponse extends Response { body?: SignatureHelpItems; } - const enum InlayHintKind { - Type = "Type", - Parameter = "Parameter", - Enum = "Enum" - } + type InlayHintKind = "Type" | "Parameter" | "Enum"; interface InlayHintsRequestArgs extends FileRequestArgs { /** * Start position of the span. @@ -1976,7 +1972,7 @@ declare namespace ts.server.protocol { interface InlayHintItem { text: string; position: Location; - kind?: InlayHintKind; + kind: InlayHintKind; whitespaceBefore?: boolean; whitespaceAfter?: boolean; } diff --git a/lib/tsc.js b/lib/tsc.js index 3c2286041f7d9..d425ad1b55369 100644 --- a/lib/tsc.js +++ b/lib/tsc.js @@ -22,7 +22,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { ar[i] = from[i]; } } - return to.concat(ar || from); + return to.concat(ar || Array.prototype.slice.call(from)); }; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { @@ -69,7 +69,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) { var ts; (function (ts) { ts.versionMajorMinor = "4.4"; - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; var NativeCollections; (function (NativeCollections) { function tryGetNativeMap() { @@ -16439,6 +16439,10 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); var ts; (function (ts) { @@ -58343,9 +58347,6 @@ var ts; function isNumericComputedName(name) { return isTypeAssignableToKind(checkComputedPropertyName(name), 296); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { return (+name).toString() === name; } @@ -67453,7 +67454,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -67546,7 +67547,7 @@ var ts; return evaluate(expr.expression); case 79: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); diff --git a/lib/tsserver.js b/lib/tsserver.js index ac49ace7bdcd0..6e4ee30b7be1d 100644 --- a/lib/tsserver.js +++ b/lib/tsserver.js @@ -100,7 +100,7 @@ var ts; // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; /* @internal */ var Comparison; (function (Comparison) { @@ -20671,6 +20671,11 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + /* @internal */ + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); /* @internal */ var ts; @@ -69868,9 +69873,6 @@ var ts; // but this behavior is consistent with checkIndexedAccess return isTypeAssignableToKind(checkComputedPropertyName(name), 296 /* NumberLike */); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { // The intent of numeric names is that // - they are names with text in a numeric form, and that @@ -80543,7 +80545,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -80643,7 +80645,7 @@ var ts; return evaluate(expr.expression); case 79 /* Identifier */: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); @@ -124907,7 +124909,7 @@ var ts; if (ts.isJsxExpression(node)) { inJSXElement = false; } - if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !isInfinityOrNaNString(node.escapedText)) { + if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !ts.isInfinityOrNaNString(node.escapedText)) { var symbol = typeChecker.getSymbolAtLocation(node); if (symbol) { if (symbol.flags & 2097152 /* Alias */) { @@ -125039,9 +125041,6 @@ var ts; function isRightSideOfQualifiedNameOrPropertyAccess(node) { return (ts.isQualifiedName(node.parent) && node.parent.right === node) || (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "NaN"; - } var tokenFromDeclarationMapping = new ts.Map([ [252 /* VariableDeclaration */, 7 /* variable */], [162 /* Parameter */, 6 /* parameter */], @@ -137104,7 +137103,7 @@ var ts; for (var i = 0; i < args.length; ++i) { var originalArg = args[i]; var arg = ts.skipParentheses(originalArg); - if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableExpression(arg)) { + if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableLiteral(arg)) { continue; } var identifierNameInfo = checker.getParameterIdentifierNameAtPosition(signature, i); @@ -137142,17 +137141,20 @@ var ts; var regex = leadingParameterNameCommentRegexFactory(name); return ts.some(ranges, function (range) { return regex.test(sourceFileText.substring(range.pos, range.end)); }); } - function isHintableExpression(node) { + function isHintableLiteral(node) { switch (node.kind) { - case 217 /* PrefixUnaryExpression */: - return ts.isLiteralExpression(node.operand); + case 217 /* PrefixUnaryExpression */: { + var operand = node.operand; + return ts.isLiteralExpression(operand) || ts.isIdentifier(operand) && ts.isInfinityOrNaNString(operand.escapedText); + } case 110 /* TrueKeyword */: case 95 /* FalseKeyword */: - case 212 /* ArrowFunction */: - case 211 /* FunctionExpression */: - case 203 /* ObjectLiteralExpression */: - case 202 /* ArrayLiteralExpression */: + case 104 /* NullKeyword */: return true; + case 79 /* Identifier */: { + var name = node.escapedText; + return isUndefined(name) || ts.isInfinityOrNaNString(name); + } } return ts.isLiteralExpression(node); } @@ -137232,6 +137234,9 @@ var ts; printer.writeNode(4 /* Unspecified */, typeNode, /*sourceFile*/ file, writer); }); } + function isUndefined(name) { + return name === "undefined"; + } } InlayHints.provideInlayHints = provideInlayHints; })(InlayHints = ts.InlayHints || (ts.InlayHints = {})); @@ -160088,12 +160093,6 @@ var ts; /** Completion was re-triggered as the current completion list is incomplete. */ CompletionTriggerKind[CompletionTriggerKind["TriggerForIncompleteCompletions"] = 3] = "TriggerForIncompleteCompletions"; })(CompletionTriggerKind = protocol.CompletionTriggerKind || (protocol.CompletionTriggerKind = {})); - var InlayHintKind; - (function (InlayHintKind) { - InlayHintKind["Type"] = "Type"; - InlayHintKind["Parameter"] = "Parameter"; - InlayHintKind["Enum"] = "Enum"; - })(InlayHintKind = protocol.InlayHintKind || (protocol.InlayHintKind = {})); var IndentStyle; (function (IndentStyle) { IndentStyle["None"] = "None"; diff --git a/lib/tsserverlibrary.d.ts b/lib/tsserverlibrary.d.ts index 8a80179e8b45a..581d70b714de5 100644 --- a/lib/tsserverlibrary.d.ts +++ b/lib/tsserverlibrary.d.ts @@ -5886,7 +5886,7 @@ declare namespace ts { interface InlayHint { text: string; position: number; - kind?: InlayHintKind; + kind: InlayHintKind; whitespaceBefore?: boolean; whitespaceAfter?: boolean; } @@ -8739,11 +8739,7 @@ declare namespace ts.server.protocol { interface SignatureHelpResponse extends Response { body?: SignatureHelpItems; } - enum InlayHintKind { - Type = "Type", - Parameter = "Parameter", - Enum = "Enum" - } + type InlayHintKind = "Type" | "Parameter" | "Enum"; interface InlayHintsRequestArgs extends FileRequestArgs { /** * Start position of the span. @@ -8761,7 +8757,7 @@ declare namespace ts.server.protocol { interface InlayHintItem { text: string; position: Location; - kind?: InlayHintKind; + kind: InlayHintKind; whitespaceBefore?: boolean; whitespaceAfter?: boolean; } diff --git a/lib/tsserverlibrary.js b/lib/tsserverlibrary.js index 47d329d5e07e2..5fa1cd290e10a 100644 --- a/lib/tsserverlibrary.js +++ b/lib/tsserverlibrary.js @@ -294,7 +294,7 @@ var ts; // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; /* @internal */ var Comparison; (function (Comparison) { @@ -20865,6 +20865,11 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + /* @internal */ + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); /* @internal */ var ts; @@ -70062,9 +70067,6 @@ var ts; // but this behavior is consistent with checkIndexedAccess return isTypeAssignableToKind(checkComputedPropertyName(name), 296 /* NumberLike */); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { // The intent of numeric names is that // - they are names with text in a numeric form, and that @@ -80737,7 +80739,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -80837,7 +80839,7 @@ var ts; return evaluate(expr.expression); case 79 /* Identifier */: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); @@ -125489,7 +125491,7 @@ var ts; if (ts.isJsxExpression(node)) { inJSXElement = false; } - if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !isInfinityOrNaNString(node.escapedText)) { + if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !ts.isInfinityOrNaNString(node.escapedText)) { var symbol = typeChecker.getSymbolAtLocation(node); if (symbol) { if (symbol.flags & 2097152 /* Alias */) { @@ -125621,9 +125623,6 @@ var ts; function isRightSideOfQualifiedNameOrPropertyAccess(node) { return (ts.isQualifiedName(node.parent) && node.parent.right === node) || (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "NaN"; - } var tokenFromDeclarationMapping = new ts.Map([ [252 /* VariableDeclaration */, 7 /* variable */], [162 /* Parameter */, 6 /* parameter */], @@ -137686,7 +137685,7 @@ var ts; for (var i = 0; i < args.length; ++i) { var originalArg = args[i]; var arg = ts.skipParentheses(originalArg); - if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableExpression(arg)) { + if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableLiteral(arg)) { continue; } var identifierNameInfo = checker.getParameterIdentifierNameAtPosition(signature, i); @@ -137724,17 +137723,20 @@ var ts; var regex = leadingParameterNameCommentRegexFactory(name); return ts.some(ranges, function (range) { return regex.test(sourceFileText.substring(range.pos, range.end)); }); } - function isHintableExpression(node) { + function isHintableLiteral(node) { switch (node.kind) { - case 217 /* PrefixUnaryExpression */: - return ts.isLiteralExpression(node.operand); + case 217 /* PrefixUnaryExpression */: { + var operand = node.operand; + return ts.isLiteralExpression(operand) || ts.isIdentifier(operand) && ts.isInfinityOrNaNString(operand.escapedText); + } case 110 /* TrueKeyword */: case 95 /* FalseKeyword */: - case 212 /* ArrowFunction */: - case 211 /* FunctionExpression */: - case 203 /* ObjectLiteralExpression */: - case 202 /* ArrayLiteralExpression */: + case 104 /* NullKeyword */: return true; + case 79 /* Identifier */: { + var name = node.escapedText; + return isUndefined(name) || ts.isInfinityOrNaNString(name); + } } return ts.isLiteralExpression(node); } @@ -137814,6 +137816,9 @@ var ts; printer.writeNode(4 /* Unspecified */, typeNode, /*sourceFile*/ file, writer); }); } + function isUndefined(name) { + return name === "undefined"; + } } InlayHints.provideInlayHints = provideInlayHints; })(InlayHints = ts.InlayHints || (ts.InlayHints = {})); @@ -160282,12 +160287,6 @@ var ts; /** Completion was re-triggered as the current completion list is incomplete. */ CompletionTriggerKind[CompletionTriggerKind["TriggerForIncompleteCompletions"] = 3] = "TriggerForIncompleteCompletions"; })(CompletionTriggerKind = protocol.CompletionTriggerKind || (protocol.CompletionTriggerKind = {})); - var InlayHintKind; - (function (InlayHintKind) { - InlayHintKind["Type"] = "Type"; - InlayHintKind["Parameter"] = "Parameter"; - InlayHintKind["Enum"] = "Enum"; - })(InlayHintKind = protocol.InlayHintKind || (protocol.InlayHintKind = {})); var IndentStyle; (function (IndentStyle) { IndentStyle["None"] = "None"; diff --git a/lib/typescript.d.ts b/lib/typescript.d.ts index 260d3c005f855..4902d45ad317c 100644 --- a/lib/typescript.d.ts +++ b/lib/typescript.d.ts @@ -5886,7 +5886,7 @@ declare namespace ts { interface InlayHint { text: string; position: number; - kind?: InlayHintKind; + kind: InlayHintKind; whitespaceBefore?: boolean; whitespaceAfter?: boolean; } diff --git a/lib/typescript.js b/lib/typescript.js index 0f28c735443c2..44462973f29fb 100644 --- a/lib/typescript.js +++ b/lib/typescript.js @@ -21,7 +21,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { ar[i] = from[i]; } } - return to.concat(ar || from); + return to.concat(ar || Array.prototype.slice.call(from)); }; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { @@ -294,7 +294,7 @@ var ts; // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; /* @internal */ var Comparison; (function (Comparison) { @@ -20865,6 +20865,11 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + /* @internal */ + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); /* @internal */ var ts; @@ -70062,9 +70067,6 @@ var ts; // but this behavior is consistent with checkIndexedAccess return isTypeAssignableToKind(checkComputedPropertyName(name), 296 /* NumberLike */); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { // The intent of numeric names is that // - they are names with text in a numeric form, and that @@ -80737,7 +80739,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -80837,7 +80839,7 @@ var ts; return evaluate(expr.expression); case 79 /* Identifier */: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); @@ -125489,7 +125491,7 @@ var ts; if (ts.isJsxExpression(node)) { inJSXElement = false; } - if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !isInfinityOrNaNString(node.escapedText)) { + if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !ts.isInfinityOrNaNString(node.escapedText)) { var symbol = typeChecker.getSymbolAtLocation(node); if (symbol) { if (symbol.flags & 2097152 /* Alias */) { @@ -125621,9 +125623,6 @@ var ts; function isRightSideOfQualifiedNameOrPropertyAccess(node) { return (ts.isQualifiedName(node.parent) && node.parent.right === node) || (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "NaN"; - } var tokenFromDeclarationMapping = new ts.Map([ [252 /* VariableDeclaration */, 7 /* variable */], [162 /* Parameter */, 6 /* parameter */], @@ -137686,7 +137685,7 @@ var ts; for (var i = 0; i < args.length; ++i) { var originalArg = args[i]; var arg = ts.skipParentheses(originalArg); - if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableExpression(arg)) { + if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableLiteral(arg)) { continue; } var identifierNameInfo = checker.getParameterIdentifierNameAtPosition(signature, i); @@ -137724,17 +137723,20 @@ var ts; var regex = leadingParameterNameCommentRegexFactory(name); return ts.some(ranges, function (range) { return regex.test(sourceFileText.substring(range.pos, range.end)); }); } - function isHintableExpression(node) { + function isHintableLiteral(node) { switch (node.kind) { - case 217 /* PrefixUnaryExpression */: - return ts.isLiteralExpression(node.operand); + case 217 /* PrefixUnaryExpression */: { + var operand = node.operand; + return ts.isLiteralExpression(operand) || ts.isIdentifier(operand) && ts.isInfinityOrNaNString(operand.escapedText); + } case 110 /* TrueKeyword */: case 95 /* FalseKeyword */: - case 212 /* ArrowFunction */: - case 211 /* FunctionExpression */: - case 203 /* ObjectLiteralExpression */: - case 202 /* ArrayLiteralExpression */: + case 104 /* NullKeyword */: return true; + case 79 /* Identifier */: { + var name = node.escapedText; + return isUndefined(name) || ts.isInfinityOrNaNString(name); + } } return ts.isLiteralExpression(node); } @@ -137814,6 +137816,9 @@ var ts; printer.writeNode(4 /* Unspecified */, typeNode, /*sourceFile*/ file, writer); }); } + function isUndefined(name) { + return name === "undefined"; + } } InlayHints.provideInlayHints = provideInlayHints; })(InlayHints = ts.InlayHints || (ts.InlayHints = {})); diff --git a/lib/typescriptServices.d.ts b/lib/typescriptServices.d.ts index 4b0f6f74072de..c4e5e624c814b 100644 --- a/lib/typescriptServices.d.ts +++ b/lib/typescriptServices.d.ts @@ -5886,7 +5886,7 @@ declare namespace ts { interface InlayHint { text: string; position: number; - kind?: InlayHintKind; + kind: InlayHintKind; whitespaceBefore?: boolean; whitespaceAfter?: boolean; } diff --git a/lib/typescriptServices.js b/lib/typescriptServices.js index 9f7987c8c3322..20a6fc52e509b 100644 --- a/lib/typescriptServices.js +++ b/lib/typescriptServices.js @@ -21,7 +21,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { ar[i] = from[i]; } } - return to.concat(ar || from); + return to.concat(ar || Array.prototype.slice.call(from)); }; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { @@ -294,7 +294,7 @@ var ts; // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; /* @internal */ var Comparison; (function (Comparison) { @@ -20865,6 +20865,11 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + /* @internal */ + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); /* @internal */ var ts; @@ -70062,9 +70067,6 @@ var ts; // but this behavior is consistent with checkIndexedAccess return isTypeAssignableToKind(checkComputedPropertyName(name), 296 /* NumberLike */); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { // The intent of numeric names is that // - they are names with text in a numeric form, and that @@ -80737,7 +80739,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -80837,7 +80839,7 @@ var ts; return evaluate(expr.expression); case 79 /* Identifier */: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); @@ -125489,7 +125491,7 @@ var ts; if (ts.isJsxExpression(node)) { inJSXElement = false; } - if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !isInfinityOrNaNString(node.escapedText)) { + if (ts.isIdentifier(node) && !inJSXElement && !inImportClause(node) && !ts.isInfinityOrNaNString(node.escapedText)) { var symbol = typeChecker.getSymbolAtLocation(node); if (symbol) { if (symbol.flags & 2097152 /* Alias */) { @@ -125621,9 +125623,6 @@ var ts; function isRightSideOfQualifiedNameOrPropertyAccess(node) { return (ts.isQualifiedName(node.parent) && node.parent.right === node) || (ts.isPropertyAccessExpression(node.parent) && node.parent.name === node); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "NaN"; - } var tokenFromDeclarationMapping = new ts.Map([ [252 /* VariableDeclaration */, 7 /* variable */], [162 /* Parameter */, 6 /* parameter */], @@ -137686,7 +137685,7 @@ var ts; for (var i = 0; i < args.length; ++i) { var originalArg = args[i]; var arg = ts.skipParentheses(originalArg); - if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableExpression(arg)) { + if (shouldShowLiteralParameterNameHintsOnly(preferences) && !isHintableLiteral(arg)) { continue; } var identifierNameInfo = checker.getParameterIdentifierNameAtPosition(signature, i); @@ -137724,17 +137723,20 @@ var ts; var regex = leadingParameterNameCommentRegexFactory(name); return ts.some(ranges, function (range) { return regex.test(sourceFileText.substring(range.pos, range.end)); }); } - function isHintableExpression(node) { + function isHintableLiteral(node) { switch (node.kind) { - case 217 /* PrefixUnaryExpression */: - return ts.isLiteralExpression(node.operand); + case 217 /* PrefixUnaryExpression */: { + var operand = node.operand; + return ts.isLiteralExpression(operand) || ts.isIdentifier(operand) && ts.isInfinityOrNaNString(operand.escapedText); + } case 110 /* TrueKeyword */: case 95 /* FalseKeyword */: - case 212 /* ArrowFunction */: - case 211 /* FunctionExpression */: - case 203 /* ObjectLiteralExpression */: - case 202 /* ArrayLiteralExpression */: + case 104 /* NullKeyword */: return true; + case 79 /* Identifier */: { + var name = node.escapedText; + return isUndefined(name) || ts.isInfinityOrNaNString(name); + } } return ts.isLiteralExpression(node); } @@ -137814,6 +137816,9 @@ var ts; printer.writeNode(4 /* Unspecified */, typeNode, /*sourceFile*/ file, writer); }); } + function isUndefined(name) { + return name === "undefined"; + } } InlayHints.provideInlayHints = provideInlayHints; })(InlayHints = ts.InlayHints || (ts.InlayHints = {})); diff --git a/lib/typingsInstaller.js b/lib/typingsInstaller.js index 3cab1d13f239d..a0e7177a10ceb 100644 --- a/lib/typingsInstaller.js +++ b/lib/typingsInstaller.js @@ -22,7 +22,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { ar[i] = from[i]; } } - return to.concat(ar || from); + return to.concat(ar || Array.prototype.slice.call(from)); }; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { @@ -89,7 +89,7 @@ var ts; // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - ts.version = "4.4.1-rc"; + ts.version = "4.4.2"; /* @internal */ var Comparison; (function (Comparison) { @@ -20660,6 +20660,11 @@ var ts; return false; } ts.hasContextSensitiveParameters = hasContextSensitiveParameters; + /* @internal */ + function isInfinityOrNaNString(name) { + return name === "Infinity" || name === "-Infinity" || name === "NaN"; + } + ts.isInfinityOrNaNString = isInfinityOrNaNString; })(ts || (ts = {})); /* @internal */ var ts; @@ -69857,9 +69862,6 @@ var ts; // but this behavior is consistent with checkIndexedAccess return isTypeAssignableToKind(checkComputedPropertyName(name), 296 /* NumberLike */); } - function isInfinityOrNaNString(name) { - return name === "Infinity" || name === "-Infinity" || name === "NaN"; - } function isNumericLiteralName(name) { // The intent of numeric names is that // - they are names with text in a numeric form, and that @@ -80532,7 +80534,7 @@ var ts; } else { var text = ts.getTextOfPropertyName(member.name); - if (isNumericLiteralName(text) && !isInfinityOrNaNString(text)) { + if (isNumericLiteralName(text) && !ts.isInfinityOrNaNString(text)) { error(member.name, ts.Diagnostics.An_enum_member_cannot_have_a_numeric_name); } } @@ -80632,7 +80634,7 @@ var ts; return evaluate(expr.expression); case 79 /* Identifier */: var identifier = expr; - if (isInfinityOrNaNString(identifier.escapedText)) { + if (ts.isInfinityOrNaNString(identifier.escapedText)) { return +(identifier.escapedText); } return ts.nodeIsMissing(expr) ? 0 : evaluateEnumMember(expr, getSymbolOfNode(member.parent), identifier.escapedText); diff --git a/package.json b/package.json index 37b43837a4f96..d62bcb0c5f439 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "typescript", "author": "Microsoft Corp.", "homepage": "https://www.typescriptlang.org/", - "version": "4.4.1-rc", + "version": "4.4.2", "license": "Apache-2.0", "description": "TypeScript is a language for application scale JavaScript development", "keywords": [ diff --git a/src/compiler/corePublic.ts b/src/compiler/corePublic.ts index 6af4e12235394..f82b32beb3570 100644 --- a/src/compiler/corePublic.ts +++ b/src/compiler/corePublic.ts @@ -5,7 +5,7 @@ namespace ts { // The following is baselined as a literal template type without intervention /** The version of the TypeScript compiler release */ // eslint-disable-next-line @typescript-eslint/no-inferrable-types - export const version = "4.4.1-rc" as string; + export const version = "4.4.2" as string; /** * Type of objects whose values are all of the same type.