@typescript-deploys/pr-build 5.3.0-pr-55471-8 → 5.3.0-pr-55503-5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/tsc.js +66 -57
- package/lib/tsserver.js +90 -72
- package/lib/typescript.js +482 -464
- package/lib/typingsInstaller.js +4 -4
- package/package.json +2 -5
package/lib/typescript.js
CHANGED
|
@@ -35,7 +35,7 @@ var ts = (() => {
|
|
|
35
35
|
"src/compiler/corePublic.ts"() {
|
|
36
36
|
"use strict";
|
|
37
37
|
versionMajorMinor = "5.3";
|
|
38
|
-
version = `${versionMajorMinor}.0-insiders.
|
|
38
|
+
version = `${versionMajorMinor}.0-insiders.20230824`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -7257,7 +7257,6 @@ ${lanes.join("\n")}
|
|
|
7257
7257
|
Module_0_can_only_be_default_imported_using_the_1_flag: diag(1259, 1 /* Error */, "Module_0_can_only_be_default_imported_using_the_1_flag_1259", "Module '{0}' can only be default-imported using the '{1}' flag"),
|
|
7258
7258
|
Keywords_cannot_contain_escape_characters: diag(1260, 1 /* Error */, "Keywords_cannot_contain_escape_characters_1260", "Keywords cannot contain escape characters."),
|
|
7259
7259
|
Already_included_file_name_0_differs_from_file_name_1_only_in_casing: diag(1261, 1 /* Error */, "Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261", "Already included file name '{0}' differs from file name '{1}' only in casing."),
|
|
7260
|
-
Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module: diag(1262, 1 /* Error */, "Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262", "Identifier expected. '{0}' is a reserved word at the top-level of a module."),
|
|
7261
7260
|
Declarations_with_initializers_cannot_also_have_definite_assignment_assertions: diag(1263, 1 /* Error */, "Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263", "Declarations with initializers cannot also have definite assignment assertions."),
|
|
7262
7261
|
Declarations_with_definite_assignment_assertions_must_also_have_type_annotations: diag(1264, 1 /* Error */, "Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264", "Declarations with definite assignment assertions must also have type annotations."),
|
|
7263
7262
|
A_rest_element_cannot_follow_another_rest_element: diag(1265, 1 /* Error */, "A_rest_element_cannot_follow_another_rest_element_1265", "A rest element cannot follow another rest element."),
|
|
@@ -13329,402 +13328,6 @@ ${lanes.join("\n")}
|
|
|
13329
13328
|
const emitNode = node.emitNode;
|
|
13330
13329
|
return emitNode && emitNode.internalFlags || 0;
|
|
13331
13330
|
}
|
|
13332
|
-
function getScriptTargetFeatures() {
|
|
13333
|
-
return new Map(Object.entries({
|
|
13334
|
-
Array: new Map(Object.entries({
|
|
13335
|
-
es2015: [
|
|
13336
|
-
"find",
|
|
13337
|
-
"findIndex",
|
|
13338
|
-
"fill",
|
|
13339
|
-
"copyWithin",
|
|
13340
|
-
"entries",
|
|
13341
|
-
"keys",
|
|
13342
|
-
"values"
|
|
13343
|
-
],
|
|
13344
|
-
es2016: [
|
|
13345
|
-
"includes"
|
|
13346
|
-
],
|
|
13347
|
-
es2019: [
|
|
13348
|
-
"flat",
|
|
13349
|
-
"flatMap"
|
|
13350
|
-
],
|
|
13351
|
-
es2022: [
|
|
13352
|
-
"at"
|
|
13353
|
-
],
|
|
13354
|
-
es2023: [
|
|
13355
|
-
"findLastIndex",
|
|
13356
|
-
"findLast"
|
|
13357
|
-
]
|
|
13358
|
-
})),
|
|
13359
|
-
Iterator: new Map(Object.entries({
|
|
13360
|
-
es2015: emptyArray
|
|
13361
|
-
})),
|
|
13362
|
-
AsyncIterator: new Map(Object.entries({
|
|
13363
|
-
es2015: emptyArray
|
|
13364
|
-
})),
|
|
13365
|
-
Atomics: new Map(Object.entries({
|
|
13366
|
-
es2017: emptyArray
|
|
13367
|
-
})),
|
|
13368
|
-
SharedArrayBuffer: new Map(Object.entries({
|
|
13369
|
-
es2017: emptyArray
|
|
13370
|
-
})),
|
|
13371
|
-
AsyncIterable: new Map(Object.entries({
|
|
13372
|
-
es2018: emptyArray
|
|
13373
|
-
})),
|
|
13374
|
-
AsyncIterableIterator: new Map(Object.entries({
|
|
13375
|
-
es2018: emptyArray
|
|
13376
|
-
})),
|
|
13377
|
-
AsyncGenerator: new Map(Object.entries({
|
|
13378
|
-
es2018: emptyArray
|
|
13379
|
-
})),
|
|
13380
|
-
AsyncGeneratorFunction: new Map(Object.entries({
|
|
13381
|
-
es2018: emptyArray
|
|
13382
|
-
})),
|
|
13383
|
-
RegExp: new Map(Object.entries({
|
|
13384
|
-
es2015: [
|
|
13385
|
-
"flags",
|
|
13386
|
-
"sticky",
|
|
13387
|
-
"unicode"
|
|
13388
|
-
],
|
|
13389
|
-
es2018: [
|
|
13390
|
-
"dotAll"
|
|
13391
|
-
]
|
|
13392
|
-
})),
|
|
13393
|
-
Reflect: new Map(Object.entries({
|
|
13394
|
-
es2015: [
|
|
13395
|
-
"apply",
|
|
13396
|
-
"construct",
|
|
13397
|
-
"defineProperty",
|
|
13398
|
-
"deleteProperty",
|
|
13399
|
-
"get",
|
|
13400
|
-
" getOwnPropertyDescriptor",
|
|
13401
|
-
"getPrototypeOf",
|
|
13402
|
-
"has",
|
|
13403
|
-
"isExtensible",
|
|
13404
|
-
"ownKeys",
|
|
13405
|
-
"preventExtensions",
|
|
13406
|
-
"set",
|
|
13407
|
-
"setPrototypeOf"
|
|
13408
|
-
]
|
|
13409
|
-
})),
|
|
13410
|
-
ArrayConstructor: new Map(Object.entries({
|
|
13411
|
-
es2015: [
|
|
13412
|
-
"from",
|
|
13413
|
-
"of"
|
|
13414
|
-
]
|
|
13415
|
-
})),
|
|
13416
|
-
ObjectConstructor: new Map(Object.entries({
|
|
13417
|
-
es2015: [
|
|
13418
|
-
"assign",
|
|
13419
|
-
"getOwnPropertySymbols",
|
|
13420
|
-
"keys",
|
|
13421
|
-
"is",
|
|
13422
|
-
"setPrototypeOf"
|
|
13423
|
-
],
|
|
13424
|
-
es2017: [
|
|
13425
|
-
"values",
|
|
13426
|
-
"entries",
|
|
13427
|
-
"getOwnPropertyDescriptors"
|
|
13428
|
-
],
|
|
13429
|
-
es2019: [
|
|
13430
|
-
"fromEntries"
|
|
13431
|
-
],
|
|
13432
|
-
es2022: [
|
|
13433
|
-
"hasOwn"
|
|
13434
|
-
]
|
|
13435
|
-
})),
|
|
13436
|
-
NumberConstructor: new Map(Object.entries({
|
|
13437
|
-
es2015: [
|
|
13438
|
-
"isFinite",
|
|
13439
|
-
"isInteger",
|
|
13440
|
-
"isNaN",
|
|
13441
|
-
"isSafeInteger",
|
|
13442
|
-
"parseFloat",
|
|
13443
|
-
"parseInt"
|
|
13444
|
-
]
|
|
13445
|
-
})),
|
|
13446
|
-
Math: new Map(Object.entries({
|
|
13447
|
-
es2015: [
|
|
13448
|
-
"clz32",
|
|
13449
|
-
"imul",
|
|
13450
|
-
"sign",
|
|
13451
|
-
"log10",
|
|
13452
|
-
"log2",
|
|
13453
|
-
"log1p",
|
|
13454
|
-
"expm1",
|
|
13455
|
-
"cosh",
|
|
13456
|
-
"sinh",
|
|
13457
|
-
"tanh",
|
|
13458
|
-
"acosh",
|
|
13459
|
-
"asinh",
|
|
13460
|
-
"atanh",
|
|
13461
|
-
"hypot",
|
|
13462
|
-
"trunc",
|
|
13463
|
-
"fround",
|
|
13464
|
-
"cbrt"
|
|
13465
|
-
]
|
|
13466
|
-
})),
|
|
13467
|
-
Map: new Map(Object.entries({
|
|
13468
|
-
es2015: [
|
|
13469
|
-
"entries",
|
|
13470
|
-
"keys",
|
|
13471
|
-
"values"
|
|
13472
|
-
]
|
|
13473
|
-
})),
|
|
13474
|
-
Set: new Map(Object.entries({
|
|
13475
|
-
es2015: [
|
|
13476
|
-
"entries",
|
|
13477
|
-
"keys",
|
|
13478
|
-
"values"
|
|
13479
|
-
]
|
|
13480
|
-
})),
|
|
13481
|
-
PromiseConstructor: new Map(Object.entries({
|
|
13482
|
-
es2015: [
|
|
13483
|
-
"all",
|
|
13484
|
-
"race",
|
|
13485
|
-
"reject",
|
|
13486
|
-
"resolve"
|
|
13487
|
-
],
|
|
13488
|
-
es2020: [
|
|
13489
|
-
"allSettled"
|
|
13490
|
-
],
|
|
13491
|
-
es2021: [
|
|
13492
|
-
"any"
|
|
13493
|
-
]
|
|
13494
|
-
})),
|
|
13495
|
-
Symbol: new Map(Object.entries({
|
|
13496
|
-
es2015: [
|
|
13497
|
-
"for",
|
|
13498
|
-
"keyFor"
|
|
13499
|
-
],
|
|
13500
|
-
es2019: [
|
|
13501
|
-
"description"
|
|
13502
|
-
]
|
|
13503
|
-
})),
|
|
13504
|
-
WeakMap: new Map(Object.entries({
|
|
13505
|
-
es2015: [
|
|
13506
|
-
"entries",
|
|
13507
|
-
"keys",
|
|
13508
|
-
"values"
|
|
13509
|
-
]
|
|
13510
|
-
})),
|
|
13511
|
-
WeakSet: new Map(Object.entries({
|
|
13512
|
-
es2015: [
|
|
13513
|
-
"entries",
|
|
13514
|
-
"keys",
|
|
13515
|
-
"values"
|
|
13516
|
-
]
|
|
13517
|
-
})),
|
|
13518
|
-
String: new Map(Object.entries({
|
|
13519
|
-
es2015: [
|
|
13520
|
-
"codePointAt",
|
|
13521
|
-
"includes",
|
|
13522
|
-
"endsWith",
|
|
13523
|
-
"normalize",
|
|
13524
|
-
"repeat",
|
|
13525
|
-
"startsWith",
|
|
13526
|
-
"anchor",
|
|
13527
|
-
"big",
|
|
13528
|
-
"blink",
|
|
13529
|
-
"bold",
|
|
13530
|
-
"fixed",
|
|
13531
|
-
"fontcolor",
|
|
13532
|
-
"fontsize",
|
|
13533
|
-
"italics",
|
|
13534
|
-
"link",
|
|
13535
|
-
"small",
|
|
13536
|
-
"strike",
|
|
13537
|
-
"sub",
|
|
13538
|
-
"sup"
|
|
13539
|
-
],
|
|
13540
|
-
es2017: [
|
|
13541
|
-
"padStart",
|
|
13542
|
-
"padEnd"
|
|
13543
|
-
],
|
|
13544
|
-
es2019: [
|
|
13545
|
-
"trimStart",
|
|
13546
|
-
"trimEnd",
|
|
13547
|
-
"trimLeft",
|
|
13548
|
-
"trimRight"
|
|
13549
|
-
],
|
|
13550
|
-
es2020: [
|
|
13551
|
-
"matchAll"
|
|
13552
|
-
],
|
|
13553
|
-
es2021: [
|
|
13554
|
-
"replaceAll"
|
|
13555
|
-
],
|
|
13556
|
-
es2022: [
|
|
13557
|
-
"at"
|
|
13558
|
-
]
|
|
13559
|
-
})),
|
|
13560
|
-
StringConstructor: new Map(Object.entries({
|
|
13561
|
-
es2015: [
|
|
13562
|
-
"fromCodePoint",
|
|
13563
|
-
"raw"
|
|
13564
|
-
]
|
|
13565
|
-
})),
|
|
13566
|
-
DateTimeFormat: new Map(Object.entries({
|
|
13567
|
-
es2017: [
|
|
13568
|
-
"formatToParts"
|
|
13569
|
-
]
|
|
13570
|
-
})),
|
|
13571
|
-
Promise: new Map(Object.entries({
|
|
13572
|
-
es2015: emptyArray,
|
|
13573
|
-
es2018: [
|
|
13574
|
-
"finally"
|
|
13575
|
-
]
|
|
13576
|
-
})),
|
|
13577
|
-
RegExpMatchArray: new Map(Object.entries({
|
|
13578
|
-
es2018: [
|
|
13579
|
-
"groups"
|
|
13580
|
-
]
|
|
13581
|
-
})),
|
|
13582
|
-
RegExpExecArray: new Map(Object.entries({
|
|
13583
|
-
es2018: [
|
|
13584
|
-
"groups"
|
|
13585
|
-
]
|
|
13586
|
-
})),
|
|
13587
|
-
Intl: new Map(Object.entries({
|
|
13588
|
-
es2018: [
|
|
13589
|
-
"PluralRules"
|
|
13590
|
-
]
|
|
13591
|
-
})),
|
|
13592
|
-
NumberFormat: new Map(Object.entries({
|
|
13593
|
-
es2018: [
|
|
13594
|
-
"formatToParts"
|
|
13595
|
-
]
|
|
13596
|
-
})),
|
|
13597
|
-
SymbolConstructor: new Map(Object.entries({
|
|
13598
|
-
es2020: [
|
|
13599
|
-
"matchAll"
|
|
13600
|
-
]
|
|
13601
|
-
})),
|
|
13602
|
-
DataView: new Map(Object.entries({
|
|
13603
|
-
es2020: [
|
|
13604
|
-
"setBigInt64",
|
|
13605
|
-
"setBigUint64",
|
|
13606
|
-
"getBigInt64",
|
|
13607
|
-
"getBigUint64"
|
|
13608
|
-
]
|
|
13609
|
-
})),
|
|
13610
|
-
BigInt: new Map(Object.entries({
|
|
13611
|
-
es2020: emptyArray
|
|
13612
|
-
})),
|
|
13613
|
-
RelativeTimeFormat: new Map(Object.entries({
|
|
13614
|
-
es2020: [
|
|
13615
|
-
"format",
|
|
13616
|
-
"formatToParts",
|
|
13617
|
-
"resolvedOptions"
|
|
13618
|
-
]
|
|
13619
|
-
})),
|
|
13620
|
-
Int8Array: new Map(Object.entries({
|
|
13621
|
-
es2022: [
|
|
13622
|
-
"at"
|
|
13623
|
-
],
|
|
13624
|
-
es2023: [
|
|
13625
|
-
"findLastIndex",
|
|
13626
|
-
"findLast"
|
|
13627
|
-
]
|
|
13628
|
-
})),
|
|
13629
|
-
Uint8Array: new Map(Object.entries({
|
|
13630
|
-
es2022: [
|
|
13631
|
-
"at"
|
|
13632
|
-
],
|
|
13633
|
-
es2023: [
|
|
13634
|
-
"findLastIndex",
|
|
13635
|
-
"findLast"
|
|
13636
|
-
]
|
|
13637
|
-
})),
|
|
13638
|
-
Uint8ClampedArray: new Map(Object.entries({
|
|
13639
|
-
es2022: [
|
|
13640
|
-
"at"
|
|
13641
|
-
],
|
|
13642
|
-
es2023: [
|
|
13643
|
-
"findLastIndex",
|
|
13644
|
-
"findLast"
|
|
13645
|
-
]
|
|
13646
|
-
})),
|
|
13647
|
-
Int16Array: new Map(Object.entries({
|
|
13648
|
-
es2022: [
|
|
13649
|
-
"at"
|
|
13650
|
-
],
|
|
13651
|
-
es2023: [
|
|
13652
|
-
"findLastIndex",
|
|
13653
|
-
"findLast"
|
|
13654
|
-
]
|
|
13655
|
-
})),
|
|
13656
|
-
Uint16Array: new Map(Object.entries({
|
|
13657
|
-
es2022: [
|
|
13658
|
-
"at"
|
|
13659
|
-
],
|
|
13660
|
-
es2023: [
|
|
13661
|
-
"findLastIndex",
|
|
13662
|
-
"findLast"
|
|
13663
|
-
]
|
|
13664
|
-
})),
|
|
13665
|
-
Int32Array: new Map(Object.entries({
|
|
13666
|
-
es2022: [
|
|
13667
|
-
"at"
|
|
13668
|
-
],
|
|
13669
|
-
es2023: [
|
|
13670
|
-
"findLastIndex",
|
|
13671
|
-
"findLast"
|
|
13672
|
-
]
|
|
13673
|
-
})),
|
|
13674
|
-
Uint32Array: new Map(Object.entries({
|
|
13675
|
-
es2022: [
|
|
13676
|
-
"at"
|
|
13677
|
-
],
|
|
13678
|
-
es2023: [
|
|
13679
|
-
"findLastIndex",
|
|
13680
|
-
"findLast"
|
|
13681
|
-
]
|
|
13682
|
-
})),
|
|
13683
|
-
Float32Array: new Map(Object.entries({
|
|
13684
|
-
es2022: [
|
|
13685
|
-
"at"
|
|
13686
|
-
],
|
|
13687
|
-
es2023: [
|
|
13688
|
-
"findLastIndex",
|
|
13689
|
-
"findLast"
|
|
13690
|
-
]
|
|
13691
|
-
})),
|
|
13692
|
-
Float64Array: new Map(Object.entries({
|
|
13693
|
-
es2022: [
|
|
13694
|
-
"at"
|
|
13695
|
-
],
|
|
13696
|
-
es2023: [
|
|
13697
|
-
"findLastIndex",
|
|
13698
|
-
"findLast"
|
|
13699
|
-
]
|
|
13700
|
-
})),
|
|
13701
|
-
BigInt64Array: new Map(Object.entries({
|
|
13702
|
-
es2020: emptyArray,
|
|
13703
|
-
es2022: [
|
|
13704
|
-
"at"
|
|
13705
|
-
],
|
|
13706
|
-
es2023: [
|
|
13707
|
-
"findLastIndex",
|
|
13708
|
-
"findLast"
|
|
13709
|
-
]
|
|
13710
|
-
})),
|
|
13711
|
-
BigUint64Array: new Map(Object.entries({
|
|
13712
|
-
es2020: emptyArray,
|
|
13713
|
-
es2022: [
|
|
13714
|
-
"at"
|
|
13715
|
-
],
|
|
13716
|
-
es2023: [
|
|
13717
|
-
"findLastIndex",
|
|
13718
|
-
"findLast"
|
|
13719
|
-
]
|
|
13720
|
-
})),
|
|
13721
|
-
Error: new Map(Object.entries({
|
|
13722
|
-
es2022: [
|
|
13723
|
-
"cause"
|
|
13724
|
-
]
|
|
13725
|
-
}))
|
|
13726
|
-
}));
|
|
13727
|
-
}
|
|
13728
13331
|
function getLiteralText(node, sourceFile, flags) {
|
|
13729
13332
|
if (sourceFile && canUseOriginalText(node, flags)) {
|
|
13730
13333
|
return getSourceTextOfNodeFromSourceFile(sourceFile, node);
|
|
@@ -19303,7 +18906,7 @@ ${lanes.join("\n")}
|
|
|
19303
18906
|
}
|
|
19304
18907
|
return Debug.fail();
|
|
19305
18908
|
}
|
|
19306
|
-
var resolvingEmptyArray, externalHelpersModuleNameText, defaultMaximumTruncationLength, noTruncationMaximumTruncationLength, stringWriter, GetLiteralTextFlags, fullTripleSlashReferencePathRegEx, fullTripleSlashReferenceTypeReferenceDirectiveRegEx, fullTripleSlashLibReferenceRegEx, fullTripleSlashAMDReferencePathRegEx, fullTripleSlashAMDModuleRegEx, defaultLibReferenceRegEx, AssignmentKind, FunctionFlags, Associativity, OperatorPrecedence, templateSubstitutionRegExp, doubleQuoteEscapedCharsRegExp, singleQuoteEscapedCharsRegExp, backtickQuoteEscapedCharsRegExp, escapedCharsMap, nonAsciiCharacters, jsxDoubleQuoteEscapedCharsRegExp, jsxSingleQuoteEscapedCharsRegExp, jsxEscapedCharsMap, indentStrings, base64Digits, carriageReturnLineFeed, lineFeed, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, extensionsNotSupportingExtensionlessResolution, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
|
|
18909
|
+
var resolvingEmptyArray, externalHelpersModuleNameText, defaultMaximumTruncationLength, noTruncationMaximumTruncationLength, stringWriter, getScriptTargetFeatures, GetLiteralTextFlags, fullTripleSlashReferencePathRegEx, fullTripleSlashReferenceTypeReferenceDirectiveRegEx, fullTripleSlashLibReferenceRegEx, fullTripleSlashAMDReferencePathRegEx, fullTripleSlashAMDModuleRegEx, defaultLibReferenceRegEx, AssignmentKind, FunctionFlags, Associativity, OperatorPrecedence, templateSubstitutionRegExp, doubleQuoteEscapedCharsRegExp, singleQuoteEscapedCharsRegExp, backtickQuoteEscapedCharsRegExp, escapedCharsMap, nonAsciiCharacters, jsxDoubleQuoteEscapedCharsRegExp, jsxSingleQuoteEscapedCharsRegExp, jsxEscapedCharsMap, indentStrings, base64Digits, carriageReturnLineFeed, lineFeed, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, extensionsNotSupportingExtensionlessResolution, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
|
|
19307
18910
|
var init_utilities = __esm({
|
|
19308
18911
|
"src/compiler/utilities.ts"() {
|
|
19309
18912
|
"use strict";
|
|
@@ -19313,6 +18916,402 @@ ${lanes.join("\n")}
|
|
|
19313
18916
|
defaultMaximumTruncationLength = 160;
|
|
19314
18917
|
noTruncationMaximumTruncationLength = 1e6;
|
|
19315
18918
|
stringWriter = createSingleLineStringWriter();
|
|
18919
|
+
getScriptTargetFeatures = /* @__PURE__ */ memoize(
|
|
18920
|
+
() => new Map(Object.entries({
|
|
18921
|
+
Array: new Map(Object.entries({
|
|
18922
|
+
es2015: [
|
|
18923
|
+
"find",
|
|
18924
|
+
"findIndex",
|
|
18925
|
+
"fill",
|
|
18926
|
+
"copyWithin",
|
|
18927
|
+
"entries",
|
|
18928
|
+
"keys",
|
|
18929
|
+
"values"
|
|
18930
|
+
],
|
|
18931
|
+
es2016: [
|
|
18932
|
+
"includes"
|
|
18933
|
+
],
|
|
18934
|
+
es2019: [
|
|
18935
|
+
"flat",
|
|
18936
|
+
"flatMap"
|
|
18937
|
+
],
|
|
18938
|
+
es2022: [
|
|
18939
|
+
"at"
|
|
18940
|
+
],
|
|
18941
|
+
es2023: [
|
|
18942
|
+
"findLastIndex",
|
|
18943
|
+
"findLast"
|
|
18944
|
+
]
|
|
18945
|
+
})),
|
|
18946
|
+
Iterator: new Map(Object.entries({
|
|
18947
|
+
es2015: emptyArray
|
|
18948
|
+
})),
|
|
18949
|
+
AsyncIterator: new Map(Object.entries({
|
|
18950
|
+
es2015: emptyArray
|
|
18951
|
+
})),
|
|
18952
|
+
Atomics: new Map(Object.entries({
|
|
18953
|
+
es2017: emptyArray
|
|
18954
|
+
})),
|
|
18955
|
+
SharedArrayBuffer: new Map(Object.entries({
|
|
18956
|
+
es2017: emptyArray
|
|
18957
|
+
})),
|
|
18958
|
+
AsyncIterable: new Map(Object.entries({
|
|
18959
|
+
es2018: emptyArray
|
|
18960
|
+
})),
|
|
18961
|
+
AsyncIterableIterator: new Map(Object.entries({
|
|
18962
|
+
es2018: emptyArray
|
|
18963
|
+
})),
|
|
18964
|
+
AsyncGenerator: new Map(Object.entries({
|
|
18965
|
+
es2018: emptyArray
|
|
18966
|
+
})),
|
|
18967
|
+
AsyncGeneratorFunction: new Map(Object.entries({
|
|
18968
|
+
es2018: emptyArray
|
|
18969
|
+
})),
|
|
18970
|
+
RegExp: new Map(Object.entries({
|
|
18971
|
+
es2015: [
|
|
18972
|
+
"flags",
|
|
18973
|
+
"sticky",
|
|
18974
|
+
"unicode"
|
|
18975
|
+
],
|
|
18976
|
+
es2018: [
|
|
18977
|
+
"dotAll"
|
|
18978
|
+
]
|
|
18979
|
+
})),
|
|
18980
|
+
Reflect: new Map(Object.entries({
|
|
18981
|
+
es2015: [
|
|
18982
|
+
"apply",
|
|
18983
|
+
"construct",
|
|
18984
|
+
"defineProperty",
|
|
18985
|
+
"deleteProperty",
|
|
18986
|
+
"get",
|
|
18987
|
+
"getOwnPropertyDescriptor",
|
|
18988
|
+
"getPrototypeOf",
|
|
18989
|
+
"has",
|
|
18990
|
+
"isExtensible",
|
|
18991
|
+
"ownKeys",
|
|
18992
|
+
"preventExtensions",
|
|
18993
|
+
"set",
|
|
18994
|
+
"setPrototypeOf"
|
|
18995
|
+
]
|
|
18996
|
+
})),
|
|
18997
|
+
ArrayConstructor: new Map(Object.entries({
|
|
18998
|
+
es2015: [
|
|
18999
|
+
"from",
|
|
19000
|
+
"of"
|
|
19001
|
+
]
|
|
19002
|
+
})),
|
|
19003
|
+
ObjectConstructor: new Map(Object.entries({
|
|
19004
|
+
es2015: [
|
|
19005
|
+
"assign",
|
|
19006
|
+
"getOwnPropertySymbols",
|
|
19007
|
+
"keys",
|
|
19008
|
+
"is",
|
|
19009
|
+
"setPrototypeOf"
|
|
19010
|
+
],
|
|
19011
|
+
es2017: [
|
|
19012
|
+
"values",
|
|
19013
|
+
"entries",
|
|
19014
|
+
"getOwnPropertyDescriptors"
|
|
19015
|
+
],
|
|
19016
|
+
es2019: [
|
|
19017
|
+
"fromEntries"
|
|
19018
|
+
],
|
|
19019
|
+
es2022: [
|
|
19020
|
+
"hasOwn"
|
|
19021
|
+
]
|
|
19022
|
+
})),
|
|
19023
|
+
NumberConstructor: new Map(Object.entries({
|
|
19024
|
+
es2015: [
|
|
19025
|
+
"isFinite",
|
|
19026
|
+
"isInteger",
|
|
19027
|
+
"isNaN",
|
|
19028
|
+
"isSafeInteger",
|
|
19029
|
+
"parseFloat",
|
|
19030
|
+
"parseInt"
|
|
19031
|
+
]
|
|
19032
|
+
})),
|
|
19033
|
+
Math: new Map(Object.entries({
|
|
19034
|
+
es2015: [
|
|
19035
|
+
"clz32",
|
|
19036
|
+
"imul",
|
|
19037
|
+
"sign",
|
|
19038
|
+
"log10",
|
|
19039
|
+
"log2",
|
|
19040
|
+
"log1p",
|
|
19041
|
+
"expm1",
|
|
19042
|
+
"cosh",
|
|
19043
|
+
"sinh",
|
|
19044
|
+
"tanh",
|
|
19045
|
+
"acosh",
|
|
19046
|
+
"asinh",
|
|
19047
|
+
"atanh",
|
|
19048
|
+
"hypot",
|
|
19049
|
+
"trunc",
|
|
19050
|
+
"fround",
|
|
19051
|
+
"cbrt"
|
|
19052
|
+
]
|
|
19053
|
+
})),
|
|
19054
|
+
Map: new Map(Object.entries({
|
|
19055
|
+
es2015: [
|
|
19056
|
+
"entries",
|
|
19057
|
+
"keys",
|
|
19058
|
+
"values"
|
|
19059
|
+
]
|
|
19060
|
+
})),
|
|
19061
|
+
Set: new Map(Object.entries({
|
|
19062
|
+
es2015: [
|
|
19063
|
+
"entries",
|
|
19064
|
+
"keys",
|
|
19065
|
+
"values"
|
|
19066
|
+
]
|
|
19067
|
+
})),
|
|
19068
|
+
PromiseConstructor: new Map(Object.entries({
|
|
19069
|
+
es2015: [
|
|
19070
|
+
"all",
|
|
19071
|
+
"race",
|
|
19072
|
+
"reject",
|
|
19073
|
+
"resolve"
|
|
19074
|
+
],
|
|
19075
|
+
es2020: [
|
|
19076
|
+
"allSettled"
|
|
19077
|
+
],
|
|
19078
|
+
es2021: [
|
|
19079
|
+
"any"
|
|
19080
|
+
]
|
|
19081
|
+
})),
|
|
19082
|
+
Symbol: new Map(Object.entries({
|
|
19083
|
+
es2015: [
|
|
19084
|
+
"for",
|
|
19085
|
+
"keyFor"
|
|
19086
|
+
],
|
|
19087
|
+
es2019: [
|
|
19088
|
+
"description"
|
|
19089
|
+
]
|
|
19090
|
+
})),
|
|
19091
|
+
WeakMap: new Map(Object.entries({
|
|
19092
|
+
es2015: [
|
|
19093
|
+
"entries",
|
|
19094
|
+
"keys",
|
|
19095
|
+
"values"
|
|
19096
|
+
]
|
|
19097
|
+
})),
|
|
19098
|
+
WeakSet: new Map(Object.entries({
|
|
19099
|
+
es2015: [
|
|
19100
|
+
"entries",
|
|
19101
|
+
"keys",
|
|
19102
|
+
"values"
|
|
19103
|
+
]
|
|
19104
|
+
})),
|
|
19105
|
+
String: new Map(Object.entries({
|
|
19106
|
+
es2015: [
|
|
19107
|
+
"codePointAt",
|
|
19108
|
+
"includes",
|
|
19109
|
+
"endsWith",
|
|
19110
|
+
"normalize",
|
|
19111
|
+
"repeat",
|
|
19112
|
+
"startsWith",
|
|
19113
|
+
"anchor",
|
|
19114
|
+
"big",
|
|
19115
|
+
"blink",
|
|
19116
|
+
"bold",
|
|
19117
|
+
"fixed",
|
|
19118
|
+
"fontcolor",
|
|
19119
|
+
"fontsize",
|
|
19120
|
+
"italics",
|
|
19121
|
+
"link",
|
|
19122
|
+
"small",
|
|
19123
|
+
"strike",
|
|
19124
|
+
"sub",
|
|
19125
|
+
"sup"
|
|
19126
|
+
],
|
|
19127
|
+
es2017: [
|
|
19128
|
+
"padStart",
|
|
19129
|
+
"padEnd"
|
|
19130
|
+
],
|
|
19131
|
+
es2019: [
|
|
19132
|
+
"trimStart",
|
|
19133
|
+
"trimEnd",
|
|
19134
|
+
"trimLeft",
|
|
19135
|
+
"trimRight"
|
|
19136
|
+
],
|
|
19137
|
+
es2020: [
|
|
19138
|
+
"matchAll"
|
|
19139
|
+
],
|
|
19140
|
+
es2021: [
|
|
19141
|
+
"replaceAll"
|
|
19142
|
+
],
|
|
19143
|
+
es2022: [
|
|
19144
|
+
"at"
|
|
19145
|
+
]
|
|
19146
|
+
})),
|
|
19147
|
+
StringConstructor: new Map(Object.entries({
|
|
19148
|
+
es2015: [
|
|
19149
|
+
"fromCodePoint",
|
|
19150
|
+
"raw"
|
|
19151
|
+
]
|
|
19152
|
+
})),
|
|
19153
|
+
DateTimeFormat: new Map(Object.entries({
|
|
19154
|
+
es2017: [
|
|
19155
|
+
"formatToParts"
|
|
19156
|
+
]
|
|
19157
|
+
})),
|
|
19158
|
+
Promise: new Map(Object.entries({
|
|
19159
|
+
es2015: emptyArray,
|
|
19160
|
+
es2018: [
|
|
19161
|
+
"finally"
|
|
19162
|
+
]
|
|
19163
|
+
})),
|
|
19164
|
+
RegExpMatchArray: new Map(Object.entries({
|
|
19165
|
+
es2018: [
|
|
19166
|
+
"groups"
|
|
19167
|
+
]
|
|
19168
|
+
})),
|
|
19169
|
+
RegExpExecArray: new Map(Object.entries({
|
|
19170
|
+
es2018: [
|
|
19171
|
+
"groups"
|
|
19172
|
+
]
|
|
19173
|
+
})),
|
|
19174
|
+
Intl: new Map(Object.entries({
|
|
19175
|
+
es2018: [
|
|
19176
|
+
"PluralRules"
|
|
19177
|
+
]
|
|
19178
|
+
})),
|
|
19179
|
+
NumberFormat: new Map(Object.entries({
|
|
19180
|
+
es2018: [
|
|
19181
|
+
"formatToParts"
|
|
19182
|
+
]
|
|
19183
|
+
})),
|
|
19184
|
+
SymbolConstructor: new Map(Object.entries({
|
|
19185
|
+
es2020: [
|
|
19186
|
+
"matchAll"
|
|
19187
|
+
]
|
|
19188
|
+
})),
|
|
19189
|
+
DataView: new Map(Object.entries({
|
|
19190
|
+
es2020: [
|
|
19191
|
+
"setBigInt64",
|
|
19192
|
+
"setBigUint64",
|
|
19193
|
+
"getBigInt64",
|
|
19194
|
+
"getBigUint64"
|
|
19195
|
+
]
|
|
19196
|
+
})),
|
|
19197
|
+
BigInt: new Map(Object.entries({
|
|
19198
|
+
es2020: emptyArray
|
|
19199
|
+
})),
|
|
19200
|
+
RelativeTimeFormat: new Map(Object.entries({
|
|
19201
|
+
es2020: [
|
|
19202
|
+
"format",
|
|
19203
|
+
"formatToParts",
|
|
19204
|
+
"resolvedOptions"
|
|
19205
|
+
]
|
|
19206
|
+
})),
|
|
19207
|
+
Int8Array: new Map(Object.entries({
|
|
19208
|
+
es2022: [
|
|
19209
|
+
"at"
|
|
19210
|
+
],
|
|
19211
|
+
es2023: [
|
|
19212
|
+
"findLastIndex",
|
|
19213
|
+
"findLast"
|
|
19214
|
+
]
|
|
19215
|
+
})),
|
|
19216
|
+
Uint8Array: new Map(Object.entries({
|
|
19217
|
+
es2022: [
|
|
19218
|
+
"at"
|
|
19219
|
+
],
|
|
19220
|
+
es2023: [
|
|
19221
|
+
"findLastIndex",
|
|
19222
|
+
"findLast"
|
|
19223
|
+
]
|
|
19224
|
+
})),
|
|
19225
|
+
Uint8ClampedArray: new Map(Object.entries({
|
|
19226
|
+
es2022: [
|
|
19227
|
+
"at"
|
|
19228
|
+
],
|
|
19229
|
+
es2023: [
|
|
19230
|
+
"findLastIndex",
|
|
19231
|
+
"findLast"
|
|
19232
|
+
]
|
|
19233
|
+
})),
|
|
19234
|
+
Int16Array: new Map(Object.entries({
|
|
19235
|
+
es2022: [
|
|
19236
|
+
"at"
|
|
19237
|
+
],
|
|
19238
|
+
es2023: [
|
|
19239
|
+
"findLastIndex",
|
|
19240
|
+
"findLast"
|
|
19241
|
+
]
|
|
19242
|
+
})),
|
|
19243
|
+
Uint16Array: new Map(Object.entries({
|
|
19244
|
+
es2022: [
|
|
19245
|
+
"at"
|
|
19246
|
+
],
|
|
19247
|
+
es2023: [
|
|
19248
|
+
"findLastIndex",
|
|
19249
|
+
"findLast"
|
|
19250
|
+
]
|
|
19251
|
+
})),
|
|
19252
|
+
Int32Array: new Map(Object.entries({
|
|
19253
|
+
es2022: [
|
|
19254
|
+
"at"
|
|
19255
|
+
],
|
|
19256
|
+
es2023: [
|
|
19257
|
+
"findLastIndex",
|
|
19258
|
+
"findLast"
|
|
19259
|
+
]
|
|
19260
|
+
})),
|
|
19261
|
+
Uint32Array: new Map(Object.entries({
|
|
19262
|
+
es2022: [
|
|
19263
|
+
"at"
|
|
19264
|
+
],
|
|
19265
|
+
es2023: [
|
|
19266
|
+
"findLastIndex",
|
|
19267
|
+
"findLast"
|
|
19268
|
+
]
|
|
19269
|
+
})),
|
|
19270
|
+
Float32Array: new Map(Object.entries({
|
|
19271
|
+
es2022: [
|
|
19272
|
+
"at"
|
|
19273
|
+
],
|
|
19274
|
+
es2023: [
|
|
19275
|
+
"findLastIndex",
|
|
19276
|
+
"findLast"
|
|
19277
|
+
]
|
|
19278
|
+
})),
|
|
19279
|
+
Float64Array: new Map(Object.entries({
|
|
19280
|
+
es2022: [
|
|
19281
|
+
"at"
|
|
19282
|
+
],
|
|
19283
|
+
es2023: [
|
|
19284
|
+
"findLastIndex",
|
|
19285
|
+
"findLast"
|
|
19286
|
+
]
|
|
19287
|
+
})),
|
|
19288
|
+
BigInt64Array: new Map(Object.entries({
|
|
19289
|
+
es2020: emptyArray,
|
|
19290
|
+
es2022: [
|
|
19291
|
+
"at"
|
|
19292
|
+
],
|
|
19293
|
+
es2023: [
|
|
19294
|
+
"findLastIndex",
|
|
19295
|
+
"findLast"
|
|
19296
|
+
]
|
|
19297
|
+
})),
|
|
19298
|
+
BigUint64Array: new Map(Object.entries({
|
|
19299
|
+
es2020: emptyArray,
|
|
19300
|
+
es2022: [
|
|
19301
|
+
"at"
|
|
19302
|
+
],
|
|
19303
|
+
es2023: [
|
|
19304
|
+
"findLastIndex",
|
|
19305
|
+
"findLast"
|
|
19306
|
+
]
|
|
19307
|
+
})),
|
|
19308
|
+
Error: new Map(Object.entries({
|
|
19309
|
+
es2022: [
|
|
19310
|
+
"cause"
|
|
19311
|
+
]
|
|
19312
|
+
}))
|
|
19313
|
+
}))
|
|
19314
|
+
);
|
|
19316
19315
|
GetLiteralTextFlags = /* @__PURE__ */ ((GetLiteralTextFlags2) => {
|
|
19317
19316
|
GetLiteralTextFlags2[GetLiteralTextFlags2["None"] = 0] = "None";
|
|
19318
19317
|
GetLiteralTextFlags2[GetLiteralTextFlags2["NeverAsciiEscape"] = 1] = "NeverAsciiEscape";
|
|
@@ -32436,7 +32435,9 @@ ${lanes.join("\n")}
|
|
|
32436
32435
|
let dotDotDotToken;
|
|
32437
32436
|
let expression;
|
|
32438
32437
|
if (token() !== 20 /* CloseBraceToken */) {
|
|
32439
|
-
|
|
32438
|
+
if (!inExpressionContext) {
|
|
32439
|
+
dotDotDotToken = parseOptionalToken(26 /* DotDotDotToken */);
|
|
32440
|
+
}
|
|
32440
32441
|
expression = parseExpression();
|
|
32441
32442
|
}
|
|
32442
32443
|
if (inExpressionContext) {
|
|
@@ -43403,12 +43404,8 @@ ${lanes.join("\n")}
|
|
|
43403
43404
|
}
|
|
43404
43405
|
if (inStrictMode && originalKeywordKind >= 119 /* FirstFutureReservedWord */ && originalKeywordKind <= 127 /* LastFutureReservedWord */) {
|
|
43405
43406
|
file.bindDiagnostics.push(createDiagnosticForNode2(node, getStrictModeIdentifierMessage(node), declarationNameToString(node)));
|
|
43406
|
-
} else if (originalKeywordKind === 135 /* AwaitKeyword */) {
|
|
43407
|
-
|
|
43408
|
-
file.bindDiagnostics.push(createDiagnosticForNode2(node, Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module, declarationNameToString(node)));
|
|
43409
|
-
} else if (node.flags & 65536 /* AwaitContext */) {
|
|
43410
|
-
file.bindDiagnostics.push(createDiagnosticForNode2(node, Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here, declarationNameToString(node)));
|
|
43411
|
-
}
|
|
43407
|
+
} else if (originalKeywordKind === 135 /* AwaitKeyword */ && (node.flags & 65536 /* AwaitContext */ || isExternalModule(file))) {
|
|
43408
|
+
file.bindDiagnostics.push(createDiagnosticForNode2(node, Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here, declarationNameToString(node)));
|
|
43412
43409
|
} else if (originalKeywordKind === 127 /* YieldKeyword */ && node.flags & 16384 /* YieldContext */) {
|
|
43413
43410
|
file.bindDiagnostics.push(createDiagnosticForNode2(node, Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here, declarationNameToString(node)));
|
|
43414
43411
|
}
|
|
@@ -46887,6 +46884,9 @@ ${lanes.join("\n")}
|
|
|
46887
46884
|
const sourceFiles = host.getSourceFiles();
|
|
46888
46885
|
return sourceFiles.indexOf(declarationFile) <= sourceFiles.indexOf(useFile);
|
|
46889
46886
|
}
|
|
46887
|
+
if (!!(usage.flags & 16777216 /* JSDoc */) || isInTypeQuery(usage) || isInAmbientOrTypeNode(usage)) {
|
|
46888
|
+
return true;
|
|
46889
|
+
}
|
|
46890
46890
|
if (declaration.pos <= usage.pos && !(isPropertyDeclaration(declaration) && isThisProperty(usage.parent) && !declaration.initializer && !declaration.exclamationToken)) {
|
|
46891
46891
|
if (declaration.kind === 208 /* BindingElement */) {
|
|
46892
46892
|
const errorBindingElement = getAncestor(usage, 208 /* BindingElement */);
|
|
@@ -46916,9 +46916,6 @@ ${lanes.join("\n")}
|
|
|
46916
46916
|
if (usage.kind === 277 /* ExportAssignment */ && usage.isExportEquals) {
|
|
46917
46917
|
return true;
|
|
46918
46918
|
}
|
|
46919
|
-
if (!!(usage.flags & 16777216 /* JSDoc */) || isInTypeQuery(usage) || isInAmbientOrTypeNode(usage)) {
|
|
46920
|
-
return true;
|
|
46921
|
-
}
|
|
46922
46919
|
if (isUsedInFunctionOrInstanceProperty(usage, declaration)) {
|
|
46923
46920
|
if (emitStandardClassFields && getContainingClass(declaration) && (isPropertyDeclaration(declaration) || isParameterPropertyDeclaration(declaration, declaration.parent))) {
|
|
46924
46921
|
return !isPropertyImmediatelyReferencedWithinDeclaration(
|
|
@@ -53128,8 +53125,8 @@ ${lanes.join("\n")}
|
|
|
53128
53125
|
});
|
|
53129
53126
|
}
|
|
53130
53127
|
});
|
|
53131
|
-
Debug.assert(setter
|
|
53132
|
-
const paramSymbol = getSignatureFromDeclaration(setter).parameters[0];
|
|
53128
|
+
Debug.assert(!!setter);
|
|
53129
|
+
const paramSymbol = isFunctionLikeDeclaration(setter) ? getSignatureFromDeclaration(setter).parameters[0] : void 0;
|
|
53133
53130
|
result.push(setTextRange(
|
|
53134
53131
|
factory.createSetAccessorDeclaration(
|
|
53135
53132
|
factory.createModifiersFromModifierFlags(flag),
|
|
@@ -53905,7 +53902,7 @@ ${lanes.join("\n")}
|
|
|
53905
53902
|
const pattern = declaration.parent;
|
|
53906
53903
|
if (strictNullChecks && declaration.flags & 33554432 /* Ambient */ && isParameterDeclaration(declaration)) {
|
|
53907
53904
|
parentType = getNonNullableType(parentType);
|
|
53908
|
-
} else if (strictNullChecks && pattern.parent.initializer && !(
|
|
53905
|
+
} else if (strictNullChecks && pattern.parent.initializer && !hasTypeFacts(getTypeOfInitializer(pattern.parent.initializer), 65536 /* EQUndefined */)) {
|
|
53909
53906
|
parentType = getTypeWithFacts(parentType, 524288 /* NEUndefined */);
|
|
53910
53907
|
}
|
|
53911
53908
|
let type;
|
|
@@ -53948,7 +53945,7 @@ ${lanes.join("\n")}
|
|
|
53948
53945
|
return type;
|
|
53949
53946
|
}
|
|
53950
53947
|
if (getEffectiveTypeAnnotationNode(walkUpBindingElementsAndPatterns(declaration))) {
|
|
53951
|
-
return strictNullChecks && !(
|
|
53948
|
+
return strictNullChecks && !hasTypeFacts(checkDeclarationInitializer(declaration, 0 /* Normal */), 16777216 /* IsUndefined */) ? getNonUndefinedType(type) : type;
|
|
53952
53949
|
}
|
|
53953
53950
|
return widenTypeInferredFromInitializer(declaration, getUnionType([getNonUndefinedType(type), checkDeclarationInitializer(declaration, 0 /* Normal */)], 2 /* Subtype */));
|
|
53954
53951
|
}
|
|
@@ -59550,7 +59547,7 @@ ${lanes.join("\n")}
|
|
|
59550
59547
|
}
|
|
59551
59548
|
function getLiteralTypeFromProperties(type, include, includeOrigin) {
|
|
59552
59549
|
const origin = includeOrigin && (getObjectFlags(type) & (3 /* ClassOrInterface */ | 4 /* Reference */) || type.aliasSymbol) ? createOriginIndexType(type) : void 0;
|
|
59553
|
-
const propertyTypes = map(getPropertiesOfType(type), (prop) =>
|
|
59550
|
+
const propertyTypes = map(getPropertiesOfType(type), (prop) => getLiteralTypeFromProperty(prop, include));
|
|
59554
59551
|
const indexKeyTypes = map(getIndexInfosOfType(type), (info) => info !== enumNumberIndexInfo && isKeyTypeIncluded(info.keyType, include) ? info.keyType === stringType && include & 8 /* Number */ ? stringOrNumberType : info.keyType : neverType);
|
|
59555
59552
|
return getUnionType(
|
|
59556
59553
|
concatenate(propertyTypes, indexKeyTypes),
|
|
@@ -62056,7 +62053,7 @@ ${lanes.join("\n")}
|
|
|
62056
62053
|
if (sourceType && targetType) {
|
|
62057
62054
|
const sourceSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(sourceType));
|
|
62058
62055
|
const targetSig = checkMode & 3 /* Callback */ ? void 0 : getSingleCallSignature(getNonNullableType(targetType));
|
|
62059
|
-
const callbacks = sourceSig && targetSig && !getTypePredicateOfSignature(sourceSig) && !getTypePredicateOfSignature(targetSig) &&
|
|
62056
|
+
const callbacks = sourceSig && targetSig && !getTypePredicateOfSignature(sourceSig) && !getTypePredicateOfSignature(targetSig) && getTypeFacts(sourceType, 50331648 /* IsUndefinedOrNull */) === getTypeFacts(targetType, 50331648 /* IsUndefinedOrNull */);
|
|
62060
62057
|
let related = callbacks ? compareSignaturesRelated(targetSig, sourceSig, checkMode & 8 /* StrictArity */ | (strictVariance ? 2 /* StrictCallback */ : 1 /* BivariantCallback */), reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) : !(checkMode & 3 /* Callback */) && !strictVariance && compareTypes(
|
|
62061
62058
|
sourceType,
|
|
62062
62059
|
targetType,
|
|
@@ -65213,7 +65210,7 @@ ${lanes.join("\n")}
|
|
|
65213
65210
|
return value.base10Value === "0";
|
|
65214
65211
|
}
|
|
65215
65212
|
function removeDefinitelyFalsyTypes(type) {
|
|
65216
|
-
return filterType(type, (t) =>
|
|
65213
|
+
return filterType(type, (t) => hasTypeFacts(t, 4194304 /* Truthy */));
|
|
65217
65214
|
}
|
|
65218
65215
|
function extractDefinitelyFalsyTypes(type) {
|
|
65219
65216
|
return mapType(type, getDefinitelyFalsyPartOfType);
|
|
@@ -66489,12 +66486,14 @@ ${lanes.join("\n")}
|
|
|
66489
66486
|
}
|
|
66490
66487
|
function inferFromSignatures(source, target, kind) {
|
|
66491
66488
|
const sourceSignatures = getSignaturesOfType(source, kind);
|
|
66492
|
-
const targetSignatures = getSignaturesOfType(target, kind);
|
|
66493
66489
|
const sourceLen = sourceSignatures.length;
|
|
66494
|
-
|
|
66495
|
-
|
|
66496
|
-
|
|
66497
|
-
|
|
66490
|
+
if (sourceLen > 0) {
|
|
66491
|
+
const targetSignatures = getSignaturesOfType(target, kind);
|
|
66492
|
+
const targetLen = targetSignatures.length;
|
|
66493
|
+
for (let i = 0; i < targetLen; i++) {
|
|
66494
|
+
const sourceIndex = Math.max(sourceLen - targetLen + i, 0);
|
|
66495
|
+
inferFromSignature(getBaseSignature(sourceSignatures[sourceIndex]), getErasedSignature(targetSignatures[i]));
|
|
66496
|
+
}
|
|
66498
66497
|
}
|
|
66499
66498
|
}
|
|
66500
66499
|
function inferFromSignature(source, target) {
|
|
@@ -66956,7 +66955,13 @@ ${lanes.join("\n")}
|
|
|
66956
66955
|
const resolved = resolveStructuredTypeMembers(type);
|
|
66957
66956
|
return !!(resolved.callSignatures.length || resolved.constructSignatures.length || resolved.members.get("bind") && isTypeSubtypeOf(type, globalFunctionType));
|
|
66958
66957
|
}
|
|
66959
|
-
function getTypeFacts(type) {
|
|
66958
|
+
function getTypeFacts(type, mask2) {
|
|
66959
|
+
return getTypeFactsWorker(type, mask2) & mask2;
|
|
66960
|
+
}
|
|
66961
|
+
function hasTypeFacts(type, mask2) {
|
|
66962
|
+
return getTypeFacts(type, mask2) !== 0;
|
|
66963
|
+
}
|
|
66964
|
+
function getTypeFactsWorker(type, callerOnlyNeeds) {
|
|
66960
66965
|
if (type.flags & (2097152 /* Intersection */ | 465829888 /* Instantiable */)) {
|
|
66961
66966
|
type = getBaseConstraintOfType(type) || unknownType;
|
|
66962
66967
|
}
|
|
@@ -66989,6 +66994,10 @@ ${lanes.join("\n")}
|
|
|
66989
66994
|
return strictNullChecks ? type === falseType || type === regularFalseType ? 12121864 /* FalseStrictFacts */ : 7927560 /* TrueStrictFacts */ : type === falseType || type === regularFalseType ? 12580616 /* FalseFacts */ : 16774920 /* TrueFacts */;
|
|
66990
66995
|
}
|
|
66991
66996
|
if (flags & 524288 /* Object */) {
|
|
66997
|
+
const possibleFacts = strictNullChecks ? 83427327 /* EmptyObjectStrictFacts */ | 7880640 /* FunctionStrictFacts */ | 7888800 /* ObjectStrictFacts */ : 83886079 /* EmptyObjectFacts */ | 16728e3 /* FunctionFacts */ | 16736160 /* ObjectFacts */;
|
|
66998
|
+
if ((callerOnlyNeeds & possibleFacts) === 0) {
|
|
66999
|
+
return 0;
|
|
67000
|
+
}
|
|
66992
67001
|
return getObjectFlags(type) & 16 /* Anonymous */ && isEmptyObjectType(type) ? strictNullChecks ? 83427327 /* EmptyObjectStrictFacts */ : 83886079 /* EmptyObjectFacts */ : isFunctionObjectType(type) ? strictNullChecks ? 7880640 /* FunctionStrictFacts */ : 16728e3 /* FunctionFacts */ : strictNullChecks ? 7888800 /* ObjectStrictFacts */ : 16736160 /* ObjectFacts */;
|
|
66993
67002
|
}
|
|
66994
67003
|
if (flags & 16384 /* Void */) {
|
|
@@ -67010,20 +67019,20 @@ ${lanes.join("\n")}
|
|
|
67010
67019
|
return 0 /* None */;
|
|
67011
67020
|
}
|
|
67012
67021
|
if (flags & 1048576 /* Union */) {
|
|
67013
|
-
return reduceLeft(type.types, (facts, t) => facts |
|
|
67022
|
+
return reduceLeft(type.types, (facts, t) => facts | getTypeFactsWorker(t, callerOnlyNeeds), 0 /* None */);
|
|
67014
67023
|
}
|
|
67015
67024
|
if (flags & 2097152 /* Intersection */) {
|
|
67016
|
-
return getIntersectionTypeFacts(type);
|
|
67025
|
+
return getIntersectionTypeFacts(type, callerOnlyNeeds);
|
|
67017
67026
|
}
|
|
67018
67027
|
return 83886079 /* UnknownFacts */;
|
|
67019
67028
|
}
|
|
67020
|
-
function getIntersectionTypeFacts(type) {
|
|
67029
|
+
function getIntersectionTypeFacts(type, callerOnlyNeeds) {
|
|
67021
67030
|
const ignoreObjects = maybeTypeOfKind(type, 402784252 /* Primitive */);
|
|
67022
67031
|
let oredFacts = 0 /* None */;
|
|
67023
67032
|
let andedFacts = 134217727 /* All */;
|
|
67024
67033
|
for (const t of type.types) {
|
|
67025
67034
|
if (!(ignoreObjects && t.flags & 524288 /* Object */)) {
|
|
67026
|
-
const f =
|
|
67035
|
+
const f = getTypeFactsWorker(t, callerOnlyNeeds);
|
|
67027
67036
|
oredFacts |= f;
|
|
67028
67037
|
andedFacts &= f;
|
|
67029
67038
|
}
|
|
@@ -67031,19 +67040,19 @@ ${lanes.join("\n")}
|
|
|
67031
67040
|
return oredFacts & 8256 /* OrFactsMask */ | andedFacts & 134209471 /* AndFactsMask */;
|
|
67032
67041
|
}
|
|
67033
67042
|
function getTypeWithFacts(type, include) {
|
|
67034
|
-
return filterType(type, (t) => (
|
|
67043
|
+
return filterType(type, (t) => hasTypeFacts(t, include));
|
|
67035
67044
|
}
|
|
67036
67045
|
function getAdjustedTypeWithFacts(type, facts) {
|
|
67037
67046
|
const reduced = recombineUnknownType(getTypeWithFacts(strictNullChecks && type.flags & 2 /* Unknown */ ? unknownUnionType : type, facts));
|
|
67038
67047
|
if (strictNullChecks) {
|
|
67039
67048
|
switch (facts) {
|
|
67040
67049
|
case 524288 /* NEUndefined */:
|
|
67041
|
-
return mapType(reduced, (t) =>
|
|
67050
|
+
return mapType(reduced, (t) => hasTypeFacts(t, 65536 /* EQUndefined */) ? getIntersectionType([t, hasTypeFacts(t, 131072 /* EQNull */) && !maybeTypeOfKind(reduced, 65536 /* Null */) ? getUnionType([emptyObjectType, nullType]) : emptyObjectType]) : t);
|
|
67042
67051
|
case 1048576 /* NENull */:
|
|
67043
|
-
return mapType(reduced, (t) =>
|
|
67052
|
+
return mapType(reduced, (t) => hasTypeFacts(t, 131072 /* EQNull */) ? getIntersectionType([t, hasTypeFacts(t, 65536 /* EQUndefined */) && !maybeTypeOfKind(reduced, 32768 /* Undefined */) ? getUnionType([emptyObjectType, undefinedType]) : emptyObjectType]) : t);
|
|
67044
67053
|
case 2097152 /* NEUndefinedOrNull */:
|
|
67045
67054
|
case 4194304 /* Truthy */:
|
|
67046
|
-
return mapType(reduced, (t) =>
|
|
67055
|
+
return mapType(reduced, (t) => hasTypeFacts(t, 262144 /* EQUndefinedOrNull */) ? getGlobalNonNullableTypeInstantiation(t) : t);
|
|
67047
67056
|
}
|
|
67048
67057
|
}
|
|
67049
67058
|
return reduced;
|
|
@@ -68030,7 +68039,7 @@ ${lanes.join("\n")}
|
|
|
68030
68039
|
return void 0;
|
|
68031
68040
|
}
|
|
68032
68041
|
function getDiscriminantPropertyAccess(expr, computedType) {
|
|
68033
|
-
const type = declaredType.flags & 1048576 /* Union */ ? declaredType : computedType;
|
|
68042
|
+
const type = !(computedType.flags & 1048576 /* Union */) && declaredType.flags & 1048576 /* Union */ ? declaredType : computedType;
|
|
68034
68043
|
if (type.flags & 1048576 /* Union */) {
|
|
68035
68044
|
const access = getCandidateDiscriminantPropertyAccess(expr);
|
|
68036
68045
|
if (access) {
|
|
@@ -68380,14 +68389,14 @@ ${lanes.join("\n")}
|
|
|
68380
68389
|
// the constituent based on its type facts. We use the strict subtype relation because it treats `object`
|
|
68381
68390
|
// as a subtype of `{}`, and we need the type facts check because function types are subtypes of `object`,
|
|
68382
68391
|
// but are classified as "function" according to `typeof`.
|
|
68383
|
-
isTypeRelatedTo(t, impliedType, strictSubtypeRelation) ?
|
|
68392
|
+
isTypeRelatedTo(t, impliedType, strictSubtypeRelation) ? hasTypeFacts(t, facts) ? t : neverType : (
|
|
68384
68393
|
// We next check if the consituent is a supertype of the implied type. If so, we substitute the implied
|
|
68385
68394
|
// type. This handles top types like `unknown` and `{}`, and supertypes like `{ toString(): string }`.
|
|
68386
68395
|
isTypeSubtypeOf(impliedType, t) ? impliedType : (
|
|
68387
68396
|
// Neither the constituent nor the implied type is a subtype of the other, however their domains may still
|
|
68388
68397
|
// overlap. For example, an unconstrained type parameter and type `string`. If the type facts indicate
|
|
68389
68398
|
// possible overlap, we form an intersection. Otherwise, we eliminate the constituent.
|
|
68390
|
-
|
|
68399
|
+
hasTypeFacts(t, facts) ? getIntersectionType([t, impliedType]) : neverType
|
|
68391
68400
|
)
|
|
68392
68401
|
)
|
|
68393
68402
|
));
|
|
@@ -68401,7 +68410,7 @@ ${lanes.join("\n")}
|
|
|
68401
68410
|
const hasDefaultClause = clauseStart === clauseEnd || defaultIndex >= clauseStart && defaultIndex < clauseEnd;
|
|
68402
68411
|
if (hasDefaultClause) {
|
|
68403
68412
|
const notEqualFacts = getNotEqualFactsFromTypeofSwitch(clauseStart, clauseEnd, witnesses);
|
|
68404
|
-
return filterType(type, (t) =>
|
|
68413
|
+
return filterType(type, (t) => getTypeFacts(t, notEqualFacts) === notEqualFacts);
|
|
68405
68414
|
}
|
|
68406
68415
|
const clauseWitnesses = witnesses.slice(clauseStart, clauseEnd);
|
|
68407
68416
|
return getUnionType(map(clauseWitnesses, (text) => text ? narrowTypeByTypeName(type, text) : neverType));
|
|
@@ -68539,7 +68548,7 @@ ${lanes.join("\n")}
|
|
|
68539
68548
|
false
|
|
68540
68549
|
);
|
|
68541
68550
|
}
|
|
68542
|
-
if (strictNullChecks && assumeTrue && optionalChainContainsReference(predicateArgument, reference) && !(
|
|
68551
|
+
if (strictNullChecks && assumeTrue && optionalChainContainsReference(predicateArgument, reference) && !hasTypeFacts(predicate.type, 65536 /* EQUndefined */)) {
|
|
68543
68552
|
type = getAdjustedTypeWithFacts(type, 2097152 /* NEUndefinedOrNull */);
|
|
68544
68553
|
}
|
|
68545
68554
|
const access = getDiscriminantPropertyAccess(predicateArgument, type);
|
|
@@ -68673,7 +68682,7 @@ ${lanes.join("\n")}
|
|
|
68673
68682
|
reportCircularityError(declaration.symbol);
|
|
68674
68683
|
return true;
|
|
68675
68684
|
}
|
|
68676
|
-
const containsUndefined = !!(
|
|
68685
|
+
const containsUndefined = !!hasTypeFacts(checkDeclarationInitializer(declaration, 0 /* Normal */), 16777216 /* IsUndefined */);
|
|
68677
68686
|
if (!popTypeResolution()) {
|
|
68678
68687
|
reportCircularityError(declaration.symbol);
|
|
68679
68688
|
return true;
|
|
@@ -68683,7 +68692,7 @@ ${lanes.join("\n")}
|
|
|
68683
68692
|
return links.parameterInitializerContainsUndefined;
|
|
68684
68693
|
}
|
|
68685
68694
|
function removeOptionalityFromDeclaredType(declaredType, declaration) {
|
|
68686
|
-
const removeUndefined = strictNullChecks && declaration.kind === 169 /* Parameter */ && declaration.initializer &&
|
|
68695
|
+
const removeUndefined = strictNullChecks && declaration.kind === 169 /* Parameter */ && declaration.initializer && hasTypeFacts(declaredType, 16777216 /* IsUndefined */) && !parameterInitializerContainsUndefined(declaration);
|
|
68687
68696
|
return removeUndefined ? getTypeWithFacts(declaredType, 524288 /* NEUndefined */) : declaredType;
|
|
68688
68697
|
}
|
|
68689
68698
|
function isConstraintPosition(type, node) {
|
|
@@ -71513,7 +71522,7 @@ ${lanes.join("\n")}
|
|
|
71513
71522
|
return checkNonNullType(checkExpression(node), node);
|
|
71514
71523
|
}
|
|
71515
71524
|
function isNullableType(type) {
|
|
71516
|
-
return
|
|
71525
|
+
return hasTypeFacts(type, 50331648 /* IsUndefinedOrNull */);
|
|
71517
71526
|
}
|
|
71518
71527
|
function getNonNullableTypeIfNeeded(type) {
|
|
71519
71528
|
return isNullableType(type) ? getNonNullableType(type) : type;
|
|
@@ -71559,7 +71568,7 @@ ${lanes.join("\n")}
|
|
|
71559
71568
|
error2(node, Diagnostics.Object_is_of_type_unknown);
|
|
71560
71569
|
return errorType;
|
|
71561
71570
|
}
|
|
71562
|
-
const facts = getTypeFacts(type);
|
|
71571
|
+
const facts = getTypeFacts(type, 50331648 /* IsUndefinedOrNull */);
|
|
71563
71572
|
if (facts & 50331648 /* IsUndefinedOrNull */) {
|
|
71564
71573
|
reportError(node, facts);
|
|
71565
71574
|
const t = getNonNullableType(type);
|
|
@@ -75339,7 +75348,7 @@ ${lanes.join("\n")}
|
|
|
75339
75348
|
if (operandConstraint.flags & 3 /* AnyOrUnknown */) {
|
|
75340
75349
|
return (556800 /* AllTypeofNE */ & notEqualFacts) === 556800 /* AllTypeofNE */;
|
|
75341
75350
|
}
|
|
75342
|
-
return !someType(operandConstraint, (t) =>
|
|
75351
|
+
return !someType(operandConstraint, (t) => getTypeFacts(t, notEqualFacts) === notEqualFacts);
|
|
75343
75352
|
}
|
|
75344
75353
|
const type = checkExpressionCached(node.expression);
|
|
75345
75354
|
if (!isLiteralType(type)) {
|
|
@@ -75657,14 +75666,15 @@ ${lanes.join("\n")}
|
|
|
75657
75666
|
if (symbol) {
|
|
75658
75667
|
if (isReadonlySymbol(symbol)) {
|
|
75659
75668
|
error2(expr, Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property);
|
|
75669
|
+
} else {
|
|
75670
|
+
checkDeleteExpressionMustBeOptional(expr, symbol);
|
|
75660
75671
|
}
|
|
75661
|
-
checkDeleteExpressionMustBeOptional(expr, symbol);
|
|
75662
75672
|
}
|
|
75663
75673
|
return booleanType;
|
|
75664
75674
|
}
|
|
75665
75675
|
function checkDeleteExpressionMustBeOptional(expr, symbol) {
|
|
75666
75676
|
const type = getTypeOfSymbol(symbol);
|
|
75667
|
-
if (strictNullChecks && !(type.flags & (3 /* AnyOrUnknown */ | 131072 /* Never */)) && !(exactOptionalPropertyTypes ? symbol.flags & 16777216 /* Optional */ :
|
|
75677
|
+
if (strictNullChecks && !(type.flags & (3 /* AnyOrUnknown */ | 131072 /* Never */)) && !(exactOptionalPropertyTypes ? symbol.flags & 16777216 /* Optional */ : hasTypeFacts(type, 16777216 /* IsUndefined */))) {
|
|
75668
75678
|
error2(expr, Diagnostics.The_operand_of_a_delete_operator_must_be_optional);
|
|
75669
75679
|
}
|
|
75670
75680
|
}
|
|
@@ -75799,7 +75809,7 @@ ${lanes.join("\n")}
|
|
|
75799
75809
|
return getUnaryResultType(operandType);
|
|
75800
75810
|
case 54 /* ExclamationToken */:
|
|
75801
75811
|
checkTruthinessOfType(operandType, node.operand);
|
|
75802
|
-
const facts = getTypeFacts(operandType
|
|
75812
|
+
const facts = getTypeFacts(operandType, 4194304 /* Truthy */ | 8388608 /* Falsy */);
|
|
75803
75813
|
return facts === 4194304 /* Truthy */ ? falseType : facts === 8388608 /* Falsy */ ? trueType : booleanType;
|
|
75804
75814
|
case 46 /* PlusPlusToken */:
|
|
75805
75815
|
case 47 /* MinusMinusToken */:
|
|
@@ -76030,7 +76040,7 @@ ${lanes.join("\n")}
|
|
|
76030
76040
|
if (exprOrAssignment.kind === 304 /* ShorthandPropertyAssignment */) {
|
|
76031
76041
|
const prop = exprOrAssignment;
|
|
76032
76042
|
if (prop.objectAssignmentInitializer) {
|
|
76033
|
-
if (strictNullChecks && !(
|
|
76043
|
+
if (strictNullChecks && !hasTypeFacts(checkExpression(prop.objectAssignmentInitializer), 16777216 /* IsUndefined */)) {
|
|
76034
76044
|
sourceType = getTypeWithFacts(sourceType, 524288 /* NEUndefined */);
|
|
76035
76045
|
}
|
|
76036
76046
|
checkBinaryLikeExpression(prop.name, prop.equalsToken, prop.objectAssignmentInitializer, checkMode);
|
|
@@ -76442,7 +76452,7 @@ ${lanes.join("\n")}
|
|
|
76442
76452
|
return checkInExpression(left, right, leftType, rightType);
|
|
76443
76453
|
case 56 /* AmpersandAmpersandToken */:
|
|
76444
76454
|
case 77 /* AmpersandAmpersandEqualsToken */: {
|
|
76445
|
-
const resultType2 =
|
|
76455
|
+
const resultType2 = hasTypeFacts(leftType, 4194304 /* Truthy */) ? getUnionType([extractDefinitelyFalsyTypes(strictNullChecks ? leftType : getBaseTypeOfLiteralType(rightType)), rightType]) : leftType;
|
|
76446
76456
|
if (operator === 77 /* AmpersandAmpersandEqualsToken */) {
|
|
76447
76457
|
checkAssignmentOperator(rightType);
|
|
76448
76458
|
}
|
|
@@ -76450,7 +76460,7 @@ ${lanes.join("\n")}
|
|
|
76450
76460
|
}
|
|
76451
76461
|
case 57 /* BarBarToken */:
|
|
76452
76462
|
case 76 /* BarBarEqualsToken */: {
|
|
76453
|
-
const resultType2 =
|
|
76463
|
+
const resultType2 = hasTypeFacts(leftType, 8388608 /* Falsy */) ? getUnionType([getNonNullableType(removeDefinitelyFalsyTypes(leftType)), rightType], 2 /* Subtype */) : leftType;
|
|
76454
76464
|
if (operator === 76 /* BarBarEqualsToken */) {
|
|
76455
76465
|
checkAssignmentOperator(rightType);
|
|
76456
76466
|
}
|
|
@@ -76458,7 +76468,7 @@ ${lanes.join("\n")}
|
|
|
76458
76468
|
}
|
|
76459
76469
|
case 61 /* QuestionQuestionToken */:
|
|
76460
76470
|
case 78 /* QuestionQuestionEqualsToken */: {
|
|
76461
|
-
const resultType2 =
|
|
76471
|
+
const resultType2 = hasTypeFacts(leftType, 262144 /* EQUndefinedOrNull */) ? getUnionType([getNonNullableType(leftType), rightType], 2 /* Subtype */) : leftType;
|
|
76462
76472
|
if (operator === 78 /* QuestionQuestionEqualsToken */) {
|
|
76463
76473
|
checkAssignmentOperator(rightType);
|
|
76464
76474
|
}
|
|
@@ -79775,7 +79785,7 @@ ${lanes.join("\n")}
|
|
|
79775
79785
|
}
|
|
79776
79786
|
const type = location === condExpr2 ? condType : checkTruthinessExpression(location);
|
|
79777
79787
|
const isPropertyExpressionCast = isPropertyAccessExpression(location) && isTypeAssertion(location.expression);
|
|
79778
|
-
if (!(
|
|
79788
|
+
if (!hasTypeFacts(type, 4194304 /* Truthy */) || isPropertyExpressionCast)
|
|
79779
79789
|
return;
|
|
79780
79790
|
const callSignatures = getSignaturesOfType(type, 0 /* Call */);
|
|
79781
79791
|
const isPromise = !!getAwaitedTypeOfPromise(type);
|
|
@@ -121597,7 +121607,6 @@ ${lanes.join("\n")}
|
|
|
121597
121607
|
Diagnostics.A_module_cannot_have_multiple_default_exports.code,
|
|
121598
121608
|
Diagnostics.Another_export_default_is_here.code,
|
|
121599
121609
|
Diagnostics.The_first_export_default_is_here.code,
|
|
121600
|
-
Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,
|
|
121601
121610
|
Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,
|
|
121602
121611
|
Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,
|
|
121603
121612
|
Diagnostics.constructor_is_a_reserved_word.code,
|
|
@@ -164012,11 +164021,11 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
164012
164021
|
function isSignatureSupportingReturnAnnotation(node) {
|
|
164013
164022
|
return isArrowFunction(node) || isFunctionExpression(node) || isFunctionDeclaration(node) || isMethodDeclaration(node) || isGetAccessorDeclaration(node);
|
|
164014
164023
|
}
|
|
164015
|
-
function addParameterHints(text, parameter, position, isFirstVariadicArgument
|
|
164024
|
+
function addParameterHints(text, parameter, position, isFirstVariadicArgument) {
|
|
164016
164025
|
let hintText = `${isFirstVariadicArgument ? "..." : ""}${text}`;
|
|
164017
164026
|
let displayParts;
|
|
164018
164027
|
if (shouldUseInteractiveInlayHints(preferences)) {
|
|
164019
|
-
displayParts = [getNodeDisplayPart(hintText, parameter
|
|
164028
|
+
displayParts = [getNodeDisplayPart(hintText, parameter), { text: ":" }];
|
|
164020
164029
|
hintText = "";
|
|
164021
164030
|
} else {
|
|
164022
164031
|
hintText += ":";
|
|
@@ -164088,7 +164097,6 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
164088
164097
|
if (!signature || !candidates.length) {
|
|
164089
164098
|
return;
|
|
164090
164099
|
}
|
|
164091
|
-
const sourceFile = shouldUseInteractiveInlayHints(preferences) ? expr.getSourceFile() : void 0;
|
|
164092
164100
|
let signatureParamPos = 0;
|
|
164093
164101
|
for (const originalArg of args) {
|
|
164094
164102
|
const arg = skipParentheses(originalArg);
|
|
@@ -164123,7 +164131,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
164123
164131
|
if (leadingCommentsContainsParameterName(arg, name)) {
|
|
164124
164132
|
continue;
|
|
164125
164133
|
}
|
|
164126
|
-
addParameterHints(name, parameter, originalArg.getStart(), isFirstVariadicArgument
|
|
164134
|
+
addParameterHints(name, parameter, originalArg.getStart(), isFirstVariadicArgument);
|
|
164127
164135
|
}
|
|
164128
164136
|
}
|
|
164129
164137
|
}
|
|
@@ -164259,7 +164267,8 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
164259
164267
|
}
|
|
164260
164268
|
return true;
|
|
164261
164269
|
}
|
|
164262
|
-
function getNodeDisplayPart(text, node
|
|
164270
|
+
function getNodeDisplayPart(text, node) {
|
|
164271
|
+
const sourceFile = node.getSourceFile();
|
|
164263
164272
|
return {
|
|
164264
164273
|
text,
|
|
164265
164274
|
span: createTextSpanFromNode(node, sourceFile),
|
|
@@ -167147,11 +167156,12 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
167147
167156
|
if (documentation.length === 0 && isIdentifier(location) && symbol.valueDeclaration && isBindingElement(symbol.valueDeclaration)) {
|
|
167148
167157
|
const declaration = symbol.valueDeclaration;
|
|
167149
167158
|
const parent2 = declaration.parent;
|
|
167150
|
-
|
|
167151
|
-
|
|
167159
|
+
const name = declaration.propertyName || declaration.name;
|
|
167160
|
+
if (isIdentifier(name) && isObjectBindingPattern(parent2)) {
|
|
167161
|
+
const propertyName = getTextOfIdentifierOrLiteral(name);
|
|
167152
167162
|
const objectType = typeChecker.getTypeAtLocation(parent2);
|
|
167153
167163
|
documentation = firstDefined(objectType.isUnion() ? objectType.types : [objectType], (t) => {
|
|
167154
|
-
const prop = t.getProperty(
|
|
167164
|
+
const prop = t.getProperty(propertyName);
|
|
167155
167165
|
return prop ? prop.getDocumentationComment(typeChecker) : void 0;
|
|
167156
167166
|
}) || emptyArray;
|
|
167157
167167
|
}
|
|
@@ -181002,14 +181012,22 @@ Project '${project.projectName}' (${ProjectKind[project.projectKind]}) ${counter
|
|
|
181002
181012
|
return {
|
|
181003
181013
|
...hint,
|
|
181004
181014
|
position: scriptInfo.positionToLineOffset(position),
|
|
181005
|
-
displayParts: displayParts == null ? void 0 : displayParts.map(({ text, span, file: file2 }) =>
|
|
181006
|
-
|
|
181007
|
-
|
|
181008
|
-
|
|
181009
|
-
|
|
181010
|
-
|
|
181015
|
+
displayParts: displayParts == null ? void 0 : displayParts.map(({ text, span, file: file2 }) => {
|
|
181016
|
+
if (span) {
|
|
181017
|
+
Debug.assertIsDefined(file2, "Target file should be defined together with its span.");
|
|
181018
|
+
const scriptInfo2 = this.projectService.getScriptInfo(file2);
|
|
181019
|
+
return {
|
|
181020
|
+
text,
|
|
181021
|
+
span: {
|
|
181022
|
+
start: scriptInfo2.positionToLineOffset(span.start),
|
|
181023
|
+
end: scriptInfo2.positionToLineOffset(span.start + span.length),
|
|
181024
|
+
file: file2
|
|
181025
|
+
}
|
|
181026
|
+
};
|
|
181027
|
+
} else {
|
|
181028
|
+
return { text };
|
|
181011
181029
|
}
|
|
181012
|
-
})
|
|
181030
|
+
})
|
|
181013
181031
|
};
|
|
181014
181032
|
});
|
|
181015
181033
|
}
|