typescript 5.1.0-dev.20230315 → 5.1.0-dev.20230317

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/typescript.js CHANGED
@@ -35,7 +35,7 @@ var ts = (() => {
35
35
  "src/compiler/corePublic.ts"() {
36
36
  "use strict";
37
37
  versionMajorMinor = "5.1";
38
- version = `${versionMajorMinor}.0-dev.20230315`;
38
+ version = `${versionMajorMinor}.0-dev.20230317`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -3081,40 +3081,17 @@ ${lanes.join("\n")}
3081
3081
  });
3082
3082
 
3083
3083
  // src/compiler/perfLogger.ts
3084
- var nullLogger, etwModule, _a, perfLogger;
3084
+ var etwModule, _a, perfLogger;
3085
3085
  var init_perfLogger = __esm({
3086
3086
  "src/compiler/perfLogger.ts"() {
3087
3087
  "use strict";
3088
- init_ts2();
3089
- nullLogger = {
3090
- logEvent: noop,
3091
- logErrEvent: noop,
3092
- logPerfEvent: noop,
3093
- logInfoEvent: noop,
3094
- logStartCommand: noop,
3095
- logStopCommand: noop,
3096
- logStartUpdateProgram: noop,
3097
- logStopUpdateProgram: noop,
3098
- logStartUpdateGraph: noop,
3099
- logStopUpdateGraph: noop,
3100
- logStartResolveModule: noop,
3101
- logStopResolveModule: noop,
3102
- logStartParseSourceFile: noop,
3103
- logStopParseSourceFile: noop,
3104
- logStartReadFile: noop,
3105
- logStopReadFile: noop,
3106
- logStartBindFile: noop,
3107
- logStopBindFile: noop,
3108
- logStartScheduledOperation: noop,
3109
- logStopScheduledOperation: noop
3110
- };
3111
3088
  try {
3112
3089
  const etwModulePath = (_a = process.env.TS_ETW_MODULE_PATH) != null ? _a : "./node_modules/@microsoft/typescript-etw";
3113
3090
  etwModule = require(etwModulePath);
3114
3091
  } catch (e) {
3115
3092
  etwModule = void 0;
3116
3093
  }
3117
- perfLogger = (etwModule == null ? void 0 : etwModule.logEvent) ? etwModule : nullLogger;
3094
+ perfLogger = (etwModule == null ? void 0 : etwModule.logEvent) ? etwModule : void 0;
3118
3095
  }
3119
3096
  });
3120
3097
 
@@ -6428,13 +6405,15 @@ ${lanes.join("\n")}
6428
6405
  return buffer.toString("utf8");
6429
6406
  }
6430
6407
  function readFile(fileName, _encoding) {
6431
- perfLogger.logStartReadFile(fileName);
6408
+ var _a2, _b;
6409
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartReadFile(fileName);
6432
6410
  const file = readFileWorker(fileName, _encoding);
6433
- perfLogger.logStopReadFile();
6411
+ (_b = perfLogger) == null ? void 0 : _b.logStopReadFile();
6434
6412
  return file;
6435
6413
  }
6436
6414
  function writeFile2(fileName, data, writeByteOrderMark) {
6437
- perfLogger.logEvent("WriteFile: " + fileName);
6415
+ var _a2;
6416
+ (_a2 = perfLogger) == null ? void 0 : _a2.logEvent("WriteFile: " + fileName);
6438
6417
  if (writeByteOrderMark) {
6439
6418
  data = byteOrderMarkIndicator + data;
6440
6419
  }
@@ -6455,7 +6434,8 @@ ${lanes.join("\n")}
6455
6434
  }
6456
6435
  }
6457
6436
  function getAccessibleFileSystemEntries(path) {
6458
- perfLogger.logEvent("ReadDir: " + (path || "."));
6437
+ var _a2;
6438
+ (_a2 = perfLogger) == null ? void 0 : _a2.logEvent("ReadDir: " + (path || "."));
6459
6439
  try {
6460
6440
  const entries = _fs.readdirSync(path || ".", { withFileTypes: true });
6461
6441
  const files = [];
@@ -27727,7 +27707,7 @@ ${lanes.join("\n")}
27727
27707
  sourceFile.externalModuleIndicator = isFileProbablyExternalModule(sourceFile);
27728
27708
  }
27729
27709
  function createSourceFile(fileName, sourceText, languageVersionOrOptions, setParentNodes = false, scriptKind) {
27730
- var _a2, _b;
27710
+ var _a2, _b, _c, _d;
27731
27711
  (_a2 = tracing) == null ? void 0 : _a2.push(
27732
27712
  tracing.Phase.Parse,
27733
27713
  "createSourceFile",
@@ -27737,7 +27717,7 @@ ${lanes.join("\n")}
27737
27717
  );
27738
27718
  mark("beforeParse");
27739
27719
  let result;
27740
- perfLogger.logStartParseSourceFile(fileName);
27720
+ (_b = perfLogger) == null ? void 0 : _b.logStartParseSourceFile(fileName);
27741
27721
  const {
27742
27722
  languageVersion,
27743
27723
  setExternalModuleIndicator: overrideSetExternalModuleIndicator,
@@ -27770,10 +27750,10 @@ ${lanes.join("\n")}
27770
27750
  setIndicator
27771
27751
  );
27772
27752
  }
27773
- perfLogger.logStopParseSourceFile();
27753
+ (_c = perfLogger) == null ? void 0 : _c.logStopParseSourceFile();
27774
27754
  mark("afterParse");
27775
27755
  measure("Parse", "beforeParse", "afterParse");
27776
- (_b = tracing) == null ? void 0 : _b.pop();
27756
+ (_d = tracing) == null ? void 0 : _d.pop();
27777
27757
  return result;
27778
27758
  }
27779
27759
  function parseIsolatedEntityName(text, languageVersion) {
@@ -39498,6 +39478,7 @@ ${lanes.join("\n")}
39498
39478
  );
39499
39479
  }
39500
39480
  function resolveModuleName(moduleName, containingFile, compilerOptions, host, cache, redirectedReference, resolutionMode) {
39481
+ var _a2, _b, _c;
39501
39482
  const traceEnabled = isTraceEnabled(compilerOptions, host);
39502
39483
  if (redirectedReference) {
39503
39484
  compilerOptions = redirectedReference.commandLine.options;
@@ -39539,10 +39520,7 @@ ${lanes.join("\n")}
39539
39520
  trace(host, Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0, ModuleResolutionKind[moduleResolution]);
39540
39521
  }
39541
39522
  }
39542
- perfLogger.logStartResolveModule(
39543
- moduleName
39544
- /* , containingFile, ModuleResolutionKind[moduleResolution]*/
39545
- );
39523
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartResolveModule(moduleName);
39546
39524
  switch (moduleResolution) {
39547
39525
  case 3 /* Node16 */:
39548
39526
  result = node16ModuleNameResolver(moduleName, containingFile, compilerOptions, host, cache, redirectedReference, resolutionMode);
@@ -39563,8 +39541,8 @@ ${lanes.join("\n")}
39563
39541
  return Debug.fail(`Unexpected moduleResolution: ${moduleResolution}`);
39564
39542
  }
39565
39543
  if (result && result.resolvedModule)
39566
- perfLogger.logInfoEvent(`Module "${moduleName}" resolved to "${result.resolvedModule.resolvedFileName}"`);
39567
- perfLogger.logStopResolveModule(result && result.resolvedModule ? "" + result.resolvedModule.resolvedFileName : "null");
39544
+ (_b = perfLogger) == null ? void 0 : _b.logInfoEvent(`Module "${moduleName}" resolved to "${result.resolvedModule.resolvedFileName}"`);
39545
+ (_c = perfLogger) == null ? void 0 : _c.logStopResolveModule(result && result.resolvedModule ? "" + result.resolvedModule.resolvedFileName : "null");
39568
39546
  cache == null ? void 0 : cache.getOrCreateCacheForDirectory(containingDirectory, redirectedReference).set(moduleName, resolutionMode, result);
39569
39547
  if (!isExternalModuleNameRelative(moduleName)) {
39570
39548
  cache == null ? void 0 : cache.getOrCreateCacheForNonRelativeName(moduleName, resolutionMode, redirectedReference).set(containingDirectory, result);
@@ -41336,10 +41314,11 @@ ${lanes.join("\n")}
41336
41314
  return node;
41337
41315
  }
41338
41316
  function bindSourceFile(file, options) {
41317
+ var _a2, _b;
41339
41318
  mark("beforeBind");
41340
- perfLogger.logStartBindFile("" + file.fileName);
41319
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartBindFile("" + file.fileName);
41341
41320
  binder(file, options);
41342
- perfLogger.logStopBindFile();
41321
+ (_b = perfLogger) == null ? void 0 : _b.logStopBindFile();
41343
41322
  mark("afterBind");
41344
41323
  measure("Bind", "beforeBind", "afterBind");
41345
41324
  }
@@ -48377,6 +48356,10 @@ ${lanes.join("\n")}
48377
48356
  return;
48378
48357
  merged.exports.set(name, merged.exports.has(name) ? mergeSymbol(merged.exports.get(name), s) : s);
48379
48358
  });
48359
+ if (merged === exported) {
48360
+ getSymbolLinks(merged).resolvedExports = void 0;
48361
+ getSymbolLinks(merged).resolvedMembers = void 0;
48362
+ }
48380
48363
  getSymbolLinks(merged).cjsExportMerged = merged;
48381
48364
  return links.cjsExportMerged = merged;
48382
48365
  }
@@ -48410,7 +48393,7 @@ ${lanes.join("\n")}
48410
48393
  /*skipObjectFunctionPropertyAugment*/
48411
48394
  true
48412
48395
  ) || isEsmCjsRef) {
48413
- const moduleType = getTypeWithSyntheticDefaultImportType(type, symbol, moduleSymbol, reference);
48396
+ const moduleType = type.flags & 3670016 /* StructuredType */ ? getTypeWithSyntheticDefaultImportType(type, symbol, moduleSymbol, reference) : createDefaultPropertyWrapperForModule(symbol, symbol.parent);
48414
48397
  return cloneTypeAsModuleType(symbol, moduleType, referenceParent);
48415
48398
  }
48416
48399
  }
@@ -51830,7 +51813,8 @@ ${lanes.join("\n")}
51830
51813
  ), modifierFlags);
51831
51814
  }
51832
51815
  function getNamespaceMembersForSerialization(symbol) {
51833
- return !symbol.exports ? [] : filter(arrayFrom(symbol.exports.values()), isNamespaceMember);
51816
+ const exports = getExportsOfSymbol(symbol);
51817
+ return !exports ? [] : filter(arrayFrom(exports.values()), (m) => isNamespaceMember(m) && isIdentifierText(m.escapedName, 99 /* ESNext */));
51834
51818
  }
51835
51819
  function isTypeOnlyNamespace(symbol) {
51836
51820
  return every(getNamespaceMembersForSerialization(symbol), (m) => !(getAllSymbolFlags(resolveSymbol(m)) & 111551 /* Value */));
@@ -55633,9 +55617,10 @@ ${lanes.join("\n")}
55633
55617
  setStructuredTypeMembers(type, emptySymbols, emptyArray, emptyArray, emptyArray);
55634
55618
  const typeParameter = getTypeParameterFromMappedType(type);
55635
55619
  const constraintType = getConstraintTypeFromMappedType(type);
55636
- const nameType = getNameTypeFromMappedType(type.target || type);
55637
- const isFilteringMappedType = nameType && isTypeAssignableTo(nameType, typeParameter);
55638
- const templateType = getTemplateTypeFromMappedType(type.target || type);
55620
+ const mappedType = type.target || type;
55621
+ const nameType = getNameTypeFromMappedType(mappedType);
55622
+ const shouldLinkPropDeclarations = !nameType || isFilteringMappedType(mappedType);
55623
+ const templateType = getTemplateTypeFromMappedType(mappedType);
55639
55624
  const modifiersType = getApparentType(getModifiersTypeFromMappedType(type));
55640
55625
  const templateModifiers = getMappedTypeModifiers(type);
55641
55626
  const include = keyofStringsOnly ? 128 /* StringLiteral */ : 8576 /* StringOrNumberLiteralOrUnique */;
@@ -55672,7 +55657,7 @@ ${lanes.join("\n")}
55672
55657
  prop.links.keyType = keyType;
55673
55658
  if (modifiersProp) {
55674
55659
  prop.links.syntheticOrigin = modifiersProp;
55675
- prop.declarations = !nameType || isFilteringMappedType ? modifiersProp.declarations : void 0;
55660
+ prop.declarations = shouldLinkPropDeclarations ? modifiersProp.declarations : void 0;
55676
55661
  }
55677
55662
  members.set(propName, prop);
55678
55663
  }
@@ -55778,6 +55763,10 @@ ${lanes.join("\n")}
55778
55763
  }
55779
55764
  return false;
55780
55765
  }
55766
+ function isFilteringMappedType(type) {
55767
+ const nameType = getNameTypeFromMappedType(type);
55768
+ return !!nameType && isTypeAssignableTo(nameType, getTypeParameterFromMappedType(type));
55769
+ }
55781
55770
  function resolveStructuredTypeMembers(type) {
55782
55771
  if (!type.members) {
55783
55772
  if (type.flags & 524288 /* Object */) {
@@ -56137,7 +56126,7 @@ ${lanes.join("\n")}
56137
56126
  const typeVariable = getHomomorphicTypeVariable(type);
56138
56127
  if (typeVariable && !type.declaration.nameType) {
56139
56128
  const constraint = getConstraintOfTypeParameter(typeVariable);
56140
- if (constraint && isArrayOrTupleType(constraint)) {
56129
+ if (constraint && isArrayType(constraint)) {
56141
56130
  return instantiateType(type, prependTypeMapping(typeVariable, constraint, type.mapper));
56142
56131
  }
56143
56132
  }
@@ -59317,8 +59306,7 @@ ${lanes.join("\n")}
59317
59306
  }
59318
59307
  }
59319
59308
  if (isGenericMappedType(objectType)) {
59320
- const nameType = getNameTypeFromMappedType(objectType);
59321
- if (!nameType || isTypeAssignableTo(nameType, getTypeParameterFromMappedType(objectType))) {
59309
+ if (!getNameTypeFromMappedType(objectType) || isFilteringMappedType(objectType)) {
59322
59310
  return type[cache] = mapType(substituteIndexedMappedType(objectType, type.indexType), (t) => getSimplifiedType(t, writing));
59323
59311
  }
59324
59312
  }
@@ -61054,8 +61042,20 @@ ${lanes.join("\n")}
61054
61042
  return result;
61055
61043
  }
61056
61044
  const moreThanOneRealChildren = length(validChildren) > 1;
61057
- const arrayLikeTargetParts = filterType(childrenTargetType, isAssignableToAvailableAnyIterable);
61058
- const nonArrayLikeTargetParts = filterType(childrenTargetType, (t) => !isAssignableToAvailableAnyIterable(t));
61045
+ let arrayLikeTargetParts;
61046
+ let nonArrayLikeTargetParts;
61047
+ const iterableType = getGlobalIterableType(
61048
+ /*reportErrors*/
61049
+ false
61050
+ );
61051
+ if (iterableType !== emptyGenericType) {
61052
+ const anyIterable = createIterableType(anyType);
61053
+ arrayLikeTargetParts = filterType(childrenTargetType, (t) => isTypeAssignableTo(t, anyIterable));
61054
+ nonArrayLikeTargetParts = filterType(childrenTargetType, (t) => !isTypeAssignableTo(t, anyIterable));
61055
+ } else {
61056
+ arrayLikeTargetParts = filterType(childrenTargetType, isArrayOrTupleLikeType);
61057
+ nonArrayLikeTargetParts = filterType(childrenTargetType, (t) => !isArrayOrTupleLikeType(t));
61058
+ }
61059
61059
  if (moreThanOneRealChildren) {
61060
61060
  if (arrayLikeTargetParts !== neverType) {
61061
61061
  const realSource = createTupleType(checkJsxChildren(containingElement, 0 /* Normal */));
@@ -64335,13 +64335,6 @@ ${lanes.join("\n")}
64335
64335
  function isArrayOrTupleLikeType(type) {
64336
64336
  return isArrayLikeType(type) || isTupleLikeType(type);
64337
64337
  }
64338
- function isAssignableToAvailableAnyIterable(type) {
64339
- const anyIterable = getGlobalIterableType(
64340
- /*reportErrors*/
64341
- false
64342
- ) !== emptyGenericType && createIterableType(anyType);
64343
- return anyIterable ? isTypeAssignableTo(type, anyIterable) : isArrayOrTupleLikeType(type);
64344
- }
64345
64338
  function getTupleElementType(type, index) {
64346
64339
  const propType = getTypeOfPropertyOfType(type, "" + index);
64347
64340
  if (propType) {
@@ -68939,7 +68932,7 @@ ${lanes.join("\n")}
68939
68932
  return void 0;
68940
68933
  }
68941
68934
  }
68942
- return isInJSFile(decl2) ? void 0 : getTypeOfExpression(binaryExpression.left);
68935
+ return isInJSFile(decl2) || decl2 === binaryExpression.left ? void 0 : getTypeOfExpression(binaryExpression.left);
68943
68936
  }
68944
68937
  case 1 /* ExportsProperty */:
68945
68938
  case 6 /* Prototype */:
@@ -69095,7 +69088,7 @@ ${lanes.join("\n")}
69095
69088
  return void 0;
69096
69089
  }
69097
69090
  function getContextualTypeForElementExpression(arrayContextualType, index) {
69098
- return arrayContextualType && (index >= 0 && getTypeOfPropertyOfContextualType(filterType(arrayContextualType, (t) => !!getIndexTypeOfType(t, numberType) || isAssignableToAvailableAnyIterable(t)), "" + index) || mapType(
69091
+ return arrayContextualType && (index >= 0 && getTypeOfPropertyOfContextualType(arrayContextualType, "" + index) || mapType(
69099
69092
  arrayContextualType,
69100
69093
  (t) => isTupleType(t) ? getElementTypeOfSliceOfTupleType(
69101
69094
  t,
@@ -69837,7 +69830,7 @@ ${lanes.join("\n")}
69837
69830
  const inConstContext = isConstContext(node);
69838
69831
  const checkFlags = inConstContext ? 8 /* Readonly */ : 0;
69839
69832
  const isInJavascript = isInJSFile(node) && !isInJsonFile(node);
69840
- const enumTag = getJSDocEnumTag(node);
69833
+ const enumTag = isInJavascript ? getJSDocEnumTag(node) : void 0;
69841
69834
  const isJSObjectLiteral = !contextualType && isInJavascript && !enumTag;
69842
69835
  let objectFlags = freshObjectLiteralFlag;
69843
69836
  let patternWithComputedProperties = false;
@@ -70063,7 +70056,7 @@ ${lanes.join("\n")}
70063
70056
  }
70064
70057
  function createJsxAttributesTypeFromAttributesProperty(openingLikeElement, checkMode) {
70065
70058
  const attributes = openingLikeElement.attributes;
70066
- const attributesType = getContextualType2(attributes, 0 /* None */);
70059
+ const contextualType = getContextualType2(attributes, 0 /* None */);
70067
70060
  const allAttributesTable = strictNullChecks ? createSymbolTable() : void 0;
70068
70061
  let attributesTable = createSymbolTable();
70069
70062
  let spread = emptyJsxObjectType;
@@ -70090,12 +70083,18 @@ ${lanes.join("\n")}
70090
70083
  if (attributeDecl.name.escapedText === jsxChildrenPropertyName) {
70091
70084
  explicitlySpecifyChildrenAttribute = true;
70092
70085
  }
70093
- if (attributesType) {
70094
- const prop = getPropertyOfType(attributesType, member.escapedName);
70086
+ if (contextualType) {
70087
+ const prop = getPropertyOfType(contextualType, member.escapedName);
70095
70088
  if (prop && prop.declarations && isDeprecatedSymbol(prop)) {
70096
70089
  addDeprecatedSuggestion(attributeDecl.name, prop.declarations, attributeDecl.name.escapedText);
70097
70090
  }
70098
70091
  }
70092
+ if (contextualType && checkMode && checkMode & 2 /* Inferential */ && !(checkMode & 4 /* SkipContextSensitive */) && isContextSensitive(attributeDecl)) {
70093
+ const inferenceContext = getInferenceContext(attributes);
70094
+ Debug.assert(inferenceContext);
70095
+ const inferenceNode = attributeDecl.initializer.expression;
70096
+ addIntraExpressionInferenceSite(inferenceContext, inferenceNode, exprType);
70097
+ }
70099
70098
  } else {
70100
70099
  Debug.assert(attributeDecl.kind === 291 /* JsxSpreadAttribute */);
70101
70100
  if (attributesTable.size > 0) {
@@ -70150,12 +70149,12 @@ ${lanes.join("\n")}
70150
70149
  if (explicitlySpecifyChildrenAttribute) {
70151
70150
  error(attributes, Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten, unescapeLeadingUnderscores(jsxChildrenPropertyName));
70152
70151
  }
70153
- const contextualType = getApparentTypeOfContextualType(
70152
+ const contextualType2 = getApparentTypeOfContextualType(
70154
70153
  openingLikeElement.attributes,
70155
70154
  /*contextFlags*/
70156
70155
  void 0
70157
70156
  );
70158
- const childrenContextualType = contextualType && getTypeOfPropertyOfContextualType(contextualType, jsxChildrenPropertyName);
70157
+ const childrenContextualType = contextualType2 && getTypeOfPropertyOfContextualType(contextualType2, jsxChildrenPropertyName);
70159
70158
  const childrenPropSymbol = createSymbol(4 /* Property */, jsxChildrenPropertyName);
70160
70159
  childrenPropSymbol.links.type = childrenTypes.length === 1 ? childrenTypes[0] : childrenContextualType && someType(childrenContextualType, isTupleLikeType) ? createTupleType(childrenTypes) : createArrayType(getUnionType(childrenTypes));
70161
70160
  childrenPropSymbol.valueDeclaration = factory.createPropertySignature(
@@ -74588,6 +74587,11 @@ ${lanes.join("\n")}
74588
74587
  } else {
74589
74588
  assignNonContextualParameterTypes(signature);
74590
74589
  }
74590
+ } else if (contextualSignature && !node.typeParameters && contextualSignature.parameters.length > node.parameters.length) {
74591
+ const inferenceContext = getInferenceContext(node);
74592
+ if (checkMode && checkMode & 2 /* Inferential */) {
74593
+ inferFromAnnotatedParameters(signature, contextualSignature, inferenceContext);
74594
+ }
74591
74595
  }
74592
74596
  if (contextualSignature && !getReturnTypeFromAnnotation(node) && !signature.resolvedReturnType) {
74593
74597
  const returnType = getReturnTypeFromBody(node, checkMode);
@@ -93911,8 +93915,11 @@ ${lanes.join("\n")}
93911
93915
  false,
93912
93916
  visitor
93913
93917
  );
93918
+ const superStatementIndex = findSuperStatementIndex(node.body.statements, nonPrologueStart);
93919
+ const indexOfFirstStatementAfterSuper = superStatementIndex >= 0 ? superStatementIndex + 1 : void 0;
93920
+ addRange(statements, visitNodes2(node.body.statements, visitor, isStatement, nonPrologueStart, indexOfFirstStatementAfterSuper ? indexOfFirstStatementAfterSuper - nonPrologueStart : void 0));
93914
93921
  addRange(statements, initializerStatements);
93915
- addRange(statements, visitNodes2(node.body.statements, visitor, isStatement, nonPrologueStart));
93922
+ addRange(statements, visitNodes2(node.body.statements, visitor, isStatement, indexOfFirstStatementAfterSuper));
93916
93923
  body = factory2.createBlock(
93917
93924
  statements,
93918
93925
  /*multiLine*/
@@ -106802,7 +106809,7 @@ ${lanes.join("\n")}
106802
106809
 
106803
106810
  // src/compiler/transformers/declarations/diagnostics.ts
106804
106811
  function canProduceDiagnostics(node) {
106805
- return isVariableDeclaration(node) || isPropertyDeclaration(node) || isPropertySignature(node) || isBindingElement(node) || isSetAccessor(node) || isGetAccessor(node) || isConstructSignatureDeclaration(node) || isCallSignatureDeclaration(node) || isMethodDeclaration(node) || isMethodSignature(node) || isFunctionDeclaration(node) || isParameter(node) || isTypeParameterDeclaration(node) || isExpressionWithTypeArguments(node) || isImportEqualsDeclaration(node) || isTypeAliasDeclaration(node) || isConstructorDeclaration(node) || isIndexSignatureDeclaration(node) || isPropertyAccessExpression(node) || isJSDocTypeAlias(node);
106812
+ return isVariableDeclaration(node) || isPropertyDeclaration(node) || isPropertySignature(node) || isBindingElement(node) || isSetAccessor(node) || isGetAccessor(node) || isConstructSignatureDeclaration(node) || isCallSignatureDeclaration(node) || isMethodDeclaration(node) || isMethodSignature(node) || isFunctionDeclaration(node) || isParameter(node) || isTypeParameterDeclaration(node) || isExpressionWithTypeArguments(node) || isImportEqualsDeclaration(node) || isTypeAliasDeclaration(node) || isConstructorDeclaration(node) || isIndexSignatureDeclaration(node) || isPropertyAccessExpression(node) || isElementAccessExpression(node) || isBinaryExpression(node) || isJSDocTypeAlias(node);
106806
106813
  }
106807
106814
  function createGetSymbolAccessibilityDiagnosticForNodeName(node) {
106808
106815
  if (isSetAccessor(node) || isGetAccessor(node)) {
@@ -106848,7 +106855,7 @@ ${lanes.join("\n")}
106848
106855
  }
106849
106856
  }
106850
106857
  function createGetSymbolAccessibilityDiagnosticForNode(node) {
106851
- if (isVariableDeclaration(node) || isPropertyDeclaration(node) || isPropertySignature(node) || isPropertyAccessExpression(node) || isBindingElement(node) || isConstructorDeclaration(node)) {
106858
+ if (isVariableDeclaration(node) || isPropertyDeclaration(node) || isPropertySignature(node) || isPropertyAccessExpression(node) || isElementAccessExpression(node) || isBinaryExpression(node) || isBindingElement(node) || isConstructorDeclaration(node)) {
106852
106859
  return getVariableDeclarationTypeVisibilityError;
106853
106860
  } else if (isSetAccessor(node) || isGetAccessor(node)) {
106854
106861
  return getAccessorDeclarationTypeVisibilityError;
@@ -106873,7 +106880,7 @@ ${lanes.join("\n")}
106873
106880
  function getVariableDeclarationTypeVisibilityDiagnosticMessage(symbolAccessibilityResult) {
106874
106881
  if (node.kind === 258 /* VariableDeclaration */ || node.kind === 206 /* BindingElement */) {
106875
106882
  return symbolAccessibilityResult.errorModuleName ? symbolAccessibilityResult.accessibility === 2 /* CannotBeNamed */ ? Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2 : Diagnostics.Exported_variable_0_has_or_is_using_private_name_1;
106876
- } else if (node.kind === 170 /* PropertyDeclaration */ || node.kind === 209 /* PropertyAccessExpression */ || node.kind === 169 /* PropertySignature */ || node.kind === 167 /* Parameter */ && hasSyntacticModifier(node.parent, 8 /* Private */)) {
106883
+ } else if (node.kind === 170 /* PropertyDeclaration */ || node.kind === 209 /* PropertyAccessExpression */ || node.kind === 210 /* ElementAccessExpression */ || node.kind === 224 /* BinaryExpression */ || node.kind === 169 /* PropertySignature */ || node.kind === 167 /* Parameter */ && hasSyntacticModifier(node.parent, 8 /* Private */)) {
106877
106884
  if (isStatic(node)) {
106878
106885
  return symbolAccessibilityResult.errorModuleName ? symbolAccessibilityResult.accessibility === 2 /* CannotBeNamed */ ? Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1;
106879
106886
  } else if (node.parent.kind === 261 /* ClassDeclaration */ || node.kind === 167 /* Parameter */) {
@@ -108331,13 +108338,16 @@ ${lanes.join("\n")}
108331
108338
  fakespace.symbol = props[0].parent;
108332
108339
  const exportMappings = [];
108333
108340
  let declarations = mapDefined(props, (p) => {
108334
- if (!p.valueDeclaration || !isPropertyAccessExpression(p.valueDeclaration)) {
108341
+ if (!p.valueDeclaration || !(isPropertyAccessExpression(p.valueDeclaration) || isElementAccessExpression(p.valueDeclaration) || isBinaryExpression(p.valueDeclaration))) {
108342
+ return void 0;
108343
+ }
108344
+ const nameStr = unescapeLeadingUnderscores(p.escapedName);
108345
+ if (!isIdentifierText(nameStr, 99 /* ESNext */)) {
108335
108346
  return void 0;
108336
108347
  }
108337
108348
  getSymbolAccessibilityDiagnostic = createGetSymbolAccessibilityDiagnosticForNode(p.valueDeclaration);
108338
108349
  const type = resolver.createTypeOfDeclaration(p.valueDeclaration, fakespace, declarationEmitNodeBuilderFlags, symbolTracker);
108339
108350
  getSymbolAccessibilityDiagnostic = oldDiag;
108340
- const nameStr = unescapeLeadingUnderscores(p.escapedName);
108341
108351
  const isNonContextualKeywordName = isStringANonContextualKeyword(nameStr);
108342
108352
  const name = isNonContextualKeywordName ? factory2.getGeneratedNameForNode(p.valueDeclaration) : factory2.createIdentifier(nameStr);
108343
108353
  if (isNonContextualKeywordName) {
@@ -122811,21 +122821,22 @@ ${lanes.join("\n")}
122811
122821
  updateProgram();
122812
122822
  }
122813
122823
  function updateProgram() {
122824
+ var _a2, _b, _c, _d;
122814
122825
  switch (reloadLevel) {
122815
122826
  case 1 /* Partial */:
122816
- perfLogger.logStartUpdateProgram("PartialConfigReload");
122827
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartUpdateProgram("PartialConfigReload");
122817
122828
  reloadFileNamesFromConfigFile();
122818
122829
  break;
122819
122830
  case 2 /* Full */:
122820
- perfLogger.logStartUpdateProgram("FullConfigReload");
122831
+ (_b = perfLogger) == null ? void 0 : _b.logStartUpdateProgram("FullConfigReload");
122821
122832
  reloadConfigFile();
122822
122833
  break;
122823
122834
  default:
122824
- perfLogger.logStartUpdateProgram("SynchronizeProgram");
122835
+ (_c = perfLogger) == null ? void 0 : _c.logStartUpdateProgram("SynchronizeProgram");
122825
122836
  synchronizeProgram();
122826
122837
  break;
122827
122838
  }
122828
- perfLogger.logStopUpdateProgram("Done");
122839
+ (_d = perfLogger) == null ? void 0 : _d.logStopUpdateProgram("Done");
122829
122840
  return getCurrentBuilderProgram();
122830
122841
  }
122831
122842
  function reloadFileNamesFromConfigFile() {
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
54
54
 
55
55
  // src/compiler/corePublic.ts
56
56
  var versionMajorMinor = "5.1";
57
- var version = `${versionMajorMinor}.0-dev.20230315`;
57
+ var version = `${versionMajorMinor}.0-dev.20230317`;
58
58
 
59
59
  // src/compiler/core.ts
60
60
  var emptyArray = [];
@@ -2177,28 +2177,6 @@ var nativePerformance = nativePerformanceHooks == null ? void 0 : nativePerforma
2177
2177
  var timestamp = nativePerformance ? () => nativePerformance.now() : Date.now ? Date.now : () => +/* @__PURE__ */ new Date();
2178
2178
 
2179
2179
  // src/compiler/perfLogger.ts
2180
- var nullLogger = {
2181
- logEvent: noop,
2182
- logErrEvent: noop,
2183
- logPerfEvent: noop,
2184
- logInfoEvent: noop,
2185
- logStartCommand: noop,
2186
- logStopCommand: noop,
2187
- logStartUpdateProgram: noop,
2188
- logStopUpdateProgram: noop,
2189
- logStartUpdateGraph: noop,
2190
- logStopUpdateGraph: noop,
2191
- logStartResolveModule: noop,
2192
- logStopResolveModule: noop,
2193
- logStartParseSourceFile: noop,
2194
- logStopParseSourceFile: noop,
2195
- logStartReadFile: noop,
2196
- logStopReadFile: noop,
2197
- logStartBindFile: noop,
2198
- logStopBindFile: noop,
2199
- logStartScheduledOperation: noop,
2200
- logStopScheduledOperation: noop
2201
- };
2202
2180
  var etwModule;
2203
2181
  var _a;
2204
2182
  try {
@@ -2207,7 +2185,7 @@ try {
2207
2185
  } catch (e) {
2208
2186
  etwModule = void 0;
2209
2187
  }
2210
- var perfLogger = (etwModule == null ? void 0 : etwModule.logEvent) ? etwModule : nullLogger;
2188
+ var perfLogger = (etwModule == null ? void 0 : etwModule.logEvent) ? etwModule : void 0;
2211
2189
 
2212
2190
  // src/compiler/performance.ts
2213
2191
  var performanceImpl;
@@ -4556,13 +4534,15 @@ var sys = (() => {
4556
4534
  return buffer.toString("utf8");
4557
4535
  }
4558
4536
  function readFile(fileName, _encoding) {
4559
- perfLogger.logStartReadFile(fileName);
4537
+ var _a2, _b;
4538
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartReadFile(fileName);
4560
4539
  const file = readFileWorker(fileName, _encoding);
4561
- perfLogger.logStopReadFile();
4540
+ (_b = perfLogger) == null ? void 0 : _b.logStopReadFile();
4562
4541
  return file;
4563
4542
  }
4564
4543
  function writeFile2(fileName, data, writeByteOrderMark) {
4565
- perfLogger.logEvent("WriteFile: " + fileName);
4544
+ var _a2;
4545
+ (_a2 = perfLogger) == null ? void 0 : _a2.logEvent("WriteFile: " + fileName);
4566
4546
  if (writeByteOrderMark) {
4567
4547
  data = byteOrderMarkIndicator + data;
4568
4548
  }
@@ -4583,7 +4563,8 @@ var sys = (() => {
4583
4563
  }
4584
4564
  }
4585
4565
  function getAccessibleFileSystemEntries(path2) {
4586
- perfLogger.logEvent("ReadDir: " + (path2 || "."));
4566
+ var _a2;
4567
+ (_a2 = perfLogger) == null ? void 0 : _a2.logEvent("ReadDir: " + (path2 || "."));
4587
4568
  try {
4588
4569
  const entries = _fs.readdirSync(path2 || ".", { withFileTypes: true });
4589
4570
  const files = [];
@@ -27361,6 +27342,7 @@ function getConditions(options, esmMode) {
27361
27342
  return concatenate(conditions, options.customConditions);
27362
27343
  }
27363
27344
  function resolveModuleName(moduleName, containingFile, compilerOptions, host, cache, redirectedReference, resolutionMode) {
27345
+ var _a2, _b, _c;
27364
27346
  const traceEnabled = isTraceEnabled(compilerOptions, host);
27365
27347
  if (redirectedReference) {
27366
27348
  compilerOptions = redirectedReference.commandLine.options;
@@ -27402,10 +27384,7 @@ function resolveModuleName(moduleName, containingFile, compilerOptions, host, ca
27402
27384
  trace(host, Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0, ModuleResolutionKind[moduleResolution]);
27403
27385
  }
27404
27386
  }
27405
- perfLogger.logStartResolveModule(
27406
- moduleName
27407
- /* , containingFile, ModuleResolutionKind[moduleResolution]*/
27408
- );
27387
+ (_a2 = perfLogger) == null ? void 0 : _a2.logStartResolveModule(moduleName);
27409
27388
  switch (moduleResolution) {
27410
27389
  case 3 /* Node16 */:
27411
27390
  result = node16ModuleNameResolver(moduleName, containingFile, compilerOptions, host, cache, redirectedReference, resolutionMode);
@@ -27426,8 +27405,8 @@ function resolveModuleName(moduleName, containingFile, compilerOptions, host, ca
27426
27405
  return Debug.fail(`Unexpected moduleResolution: ${moduleResolution}`);
27427
27406
  }
27428
27407
  if (result && result.resolvedModule)
27429
- perfLogger.logInfoEvent(`Module "${moduleName}" resolved to "${result.resolvedModule.resolvedFileName}"`);
27430
- perfLogger.logStopResolveModule(result && result.resolvedModule ? "" + result.resolvedModule.resolvedFileName : "null");
27408
+ (_b = perfLogger) == null ? void 0 : _b.logInfoEvent(`Module "${moduleName}" resolved to "${result.resolvedModule.resolvedFileName}"`);
27409
+ (_c = perfLogger) == null ? void 0 : _c.logStopResolveModule(result && result.resolvedModule ? "" + result.resolvedModule.resolvedFileName : "null");
27431
27410
  cache == null ? void 0 : cache.getOrCreateCacheForDirectory(containingDirectory, redirectedReference).set(moduleName, resolutionMode, result);
27432
27411
  if (!isExternalModuleNameRelative(moduleName)) {
27433
27412
  cache == null ? void 0 : cache.getOrCreateCacheForNonRelativeName(moduleName, resolutionMode, redirectedReference).set(containingDirectory, result);
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "typescript",
3
3
  "author": "Microsoft Corp.",
4
4
  "homepage": "https://www.typescriptlang.org/",
5
- "version": "5.1.0-dev.20230315",
5
+ "version": "5.1.0-dev.20230317",
6
6
  "license": "Apache-2.0",
7
7
  "description": "TypeScript is a language for application scale JavaScript development",
8
8
  "keywords": [
@@ -79,7 +79,7 @@
79
79
  "node-fetch": "^3.2.10",
80
80
  "source-map-support": "^0.5.21",
81
81
  "tslib": "^2.5.0",
82
- "typescript": "5.0.1-rc",
82
+ "typescript": "^5.0.2",
83
83
  "which": "^2.0.2"
84
84
  },
85
85
  "overrides": {
@@ -113,5 +113,5 @@
113
113
  "node": "14.21.1",
114
114
  "npm": "8.19.3"
115
115
  },
116
- "gitHead": "9ccf47fec5c1c87061956ac6e1446677654a4d4b"
116
+ "gitHead": "ba42ad36467506f81a4f77d536354c4cb90c32d9"
117
117
  }