@typescript-deploys/pr-build 5.4.0-pr-57116-10 → 5.4.0-pr-57362-11

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 CHANGED
@@ -18,7 +18,7 @@ and limitations under the License.
18
18
 
19
19
  // src/compiler/corePublic.ts
20
20
  var versionMajorMinor = "5.4";
21
- var version = `${versionMajorMinor}.0-insiders.20240215`;
21
+ var version = `${versionMajorMinor}.0-insiders.20240216`;
22
22
 
23
23
  // src/compiler/core.ts
24
24
  var emptyArray = [];
@@ -57358,7 +57358,7 @@ function createTypeChecker(host) {
57358
57358
  return target.objectFlags & 8 /* Tuple */ ? createNormalizedTupleType(target, typeArguments) : createTypeReference(target, typeArguments);
57359
57359
  }
57360
57360
  function createNormalizedTupleType(target, elementTypes) {
57361
- var _a, _b, _c, _d;
57361
+ var _a, _b, _c;
57362
57362
  if (!(target.combinedFlags & 14 /* NonRequired */)) {
57363
57363
  return createTypeReference(target, elementTypes);
57364
57364
  }
@@ -57378,10 +57378,8 @@ function createTypeChecker(host) {
57378
57378
  const type = elementTypes[i];
57379
57379
  const flags = target.elementFlags[i];
57380
57380
  if (flags & 8 /* Variadic */) {
57381
- if (type.flags & 1 /* Any */) {
57382
- addElement(type, 4 /* Rest */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
57383
- } else if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
57384
- addElement(type, 8 /* Variadic */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
57381
+ if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
57382
+ addElement(type, 8 /* Variadic */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
57385
57383
  } else if (isTupleType(type)) {
57386
57384
  const elements = getElementTypes(type);
57387
57385
  if (elements.length + expandedTypes.length >= 1e4) {
@@ -57396,10 +57394,10 @@ function createTypeChecker(host) {
57396
57394
  return addElement(t, type.target.elementFlags[n], (_a2 = type.target.labeledElementDeclarations) == null ? void 0 : _a2[n]);
57397
57395
  });
57398
57396
  } else {
57399
- addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
57397
+ addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
57400
57398
  }
57401
57399
  } else {
57402
- addElement(type, flags, (_d = target.labeledElementDeclarations) == null ? void 0 : _d[i]);
57400
+ addElement(type, flags, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
57403
57401
  }
57404
57402
  }
57405
57403
  for (let i = 0; i < lastRequiredIndex; i++) {
@@ -58763,10 +58761,6 @@ function createTypeChecker(host) {
58763
58761
  }
58764
58762
  return type;
58765
58763
  }
58766
- function maybeCloneTypeParameter(p) {
58767
- const constraint = getConstraintOfTypeParameter(p);
58768
- return constraint && (isGenericObjectType(constraint) || isGenericIndexType(constraint)) ? cloneTypeParameter(p) : p;
58769
- }
58770
58764
  function isSimpleTupleType(node) {
58771
58765
  return isTupleTypeNode(node) && length(node.elements) > 0 && !some(node.elements, (e) => isOptionalTypeNode(e) || isRestTypeNode(e) || isNamedTupleMember(e) && !!(e.questionToken || e.dotDotDotToken));
58772
58766
  }
@@ -58796,27 +58790,19 @@ function createTypeChecker(host) {
58796
58790
  const checkTypeDeferred = isDeferredType(checkType, checkTuples);
58797
58791
  let combinedMapper;
58798
58792
  if (root.inferTypeParameters) {
58799
- const freshParams = sameMap(root.inferTypeParameters, maybeCloneTypeParameter);
58800
- const freshMapper = freshParams !== root.inferTypeParameters ? createTypeMapper(root.inferTypeParameters, freshParams) : void 0;
58801
58793
  const context = createInferenceContext(
58802
- freshParams,
58794
+ root.inferTypeParameters,
58803
58795
  /*signature*/
58804
58796
  void 0,
58805
58797
  0 /* None */
58806
58798
  );
58807
- if (freshMapper) {
58808
- const freshCombinedMapper = combineTypeMappers(mapper, freshMapper);
58809
- for (let i = 0; i < freshParams.length; i++) {
58810
- if (freshParams[i] !== root.inferTypeParameters[i]) {
58811
- freshParams[i].mapper = freshCombinedMapper;
58812
- }
58813
- }
58799
+ if (mapper) {
58800
+ context.nonFixingMapper = combineTypeMappers(context.nonFixingMapper, mapper);
58814
58801
  }
58815
58802
  if (!checkTypeDeferred) {
58816
- inferTypes(context.inferences, checkType, instantiateType(extendsType, freshMapper), 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
58803
+ inferTypes(context.inferences, checkType, extendsType, 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
58817
58804
  }
58818
- const innerMapper = combineTypeMappers(freshMapper, context.mapper);
58819
- combinedMapper = mapper ? combineTypeMappers(innerMapper, mapper) : innerMapper;
58805
+ combinedMapper = mapper ? combineTypeMappers(context.mapper, mapper) : context.mapper;
58820
58806
  }
58821
58807
  const inferredExtendsType = combinedMapper ? instantiateType(root.extendsType, combinedMapper) : extendsType;
58822
58808
  if (!checkTypeDeferred && !isDeferredType(inferredExtendsType, checkTuples)) {
@@ -115288,7 +115274,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
115288
115274
  return getLiteralTextOfNode(textSourceNode, neverAsciiEscape, jsxAttributeEscape);
115289
115275
  }
115290
115276
  }
115291
- const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target === 99 /* ESNext */ ? 8 /* AllowNumericSeparator */ : 0);
115277
+ const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target >= 8 /* ES2021 */ ? 8 /* AllowNumericSeparator */ : 0);
115292
115278
  return getLiteralText(node, currentSourceFile, flags);
115293
115279
  }
115294
115280
  function pushNameGenerationScope(node) {
package/lib/tsserver.js CHANGED
@@ -2340,7 +2340,7 @@ module.exports = __toCommonJS(server_exports);
2340
2340
 
2341
2341
  // src/compiler/corePublic.ts
2342
2342
  var versionMajorMinor = "5.4";
2343
- var version = `${versionMajorMinor}.0-insiders.20240215`;
2343
+ var version = `${versionMajorMinor}.0-insiders.20240216`;
2344
2344
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2345
2345
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2346
2346
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -62102,7 +62102,7 @@ function createTypeChecker(host) {
62102
62102
  return target.objectFlags & 8 /* Tuple */ ? createNormalizedTupleType(target, typeArguments) : createTypeReference(target, typeArguments);
62103
62103
  }
62104
62104
  function createNormalizedTupleType(target, elementTypes) {
62105
- var _a, _b, _c, _d;
62105
+ var _a, _b, _c;
62106
62106
  if (!(target.combinedFlags & 14 /* NonRequired */)) {
62107
62107
  return createTypeReference(target, elementTypes);
62108
62108
  }
@@ -62122,10 +62122,8 @@ function createTypeChecker(host) {
62122
62122
  const type = elementTypes[i];
62123
62123
  const flags = target.elementFlags[i];
62124
62124
  if (flags & 8 /* Variadic */) {
62125
- if (type.flags & 1 /* Any */) {
62126
- addElement(type, 4 /* Rest */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
62127
- } else if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
62128
- addElement(type, 8 /* Variadic */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
62125
+ if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
62126
+ addElement(type, 8 /* Variadic */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
62129
62127
  } else if (isTupleType(type)) {
62130
62128
  const elements = getElementTypes(type);
62131
62129
  if (elements.length + expandedTypes.length >= 1e4) {
@@ -62140,10 +62138,10 @@ function createTypeChecker(host) {
62140
62138
  return addElement(t, type.target.elementFlags[n], (_a2 = type.target.labeledElementDeclarations) == null ? void 0 : _a2[n]);
62141
62139
  });
62142
62140
  } else {
62143
- addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
62141
+ addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
62144
62142
  }
62145
62143
  } else {
62146
- addElement(type, flags, (_d = target.labeledElementDeclarations) == null ? void 0 : _d[i]);
62144
+ addElement(type, flags, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
62147
62145
  }
62148
62146
  }
62149
62147
  for (let i = 0; i < lastRequiredIndex; i++) {
@@ -63507,10 +63505,6 @@ function createTypeChecker(host) {
63507
63505
  }
63508
63506
  return type;
63509
63507
  }
63510
- function maybeCloneTypeParameter(p) {
63511
- const constraint = getConstraintOfTypeParameter(p);
63512
- return constraint && (isGenericObjectType(constraint) || isGenericIndexType(constraint)) ? cloneTypeParameter(p) : p;
63513
- }
63514
63508
  function isSimpleTupleType(node) {
63515
63509
  return isTupleTypeNode(node) && length(node.elements) > 0 && !some(node.elements, (e) => isOptionalTypeNode(e) || isRestTypeNode(e) || isNamedTupleMember(e) && !!(e.questionToken || e.dotDotDotToken));
63516
63510
  }
@@ -63540,27 +63534,19 @@ function createTypeChecker(host) {
63540
63534
  const checkTypeDeferred = isDeferredType(checkType, checkTuples);
63541
63535
  let combinedMapper;
63542
63536
  if (root.inferTypeParameters) {
63543
- const freshParams = sameMap(root.inferTypeParameters, maybeCloneTypeParameter);
63544
- const freshMapper = freshParams !== root.inferTypeParameters ? createTypeMapper(root.inferTypeParameters, freshParams) : void 0;
63545
63537
  const context = createInferenceContext(
63546
- freshParams,
63538
+ root.inferTypeParameters,
63547
63539
  /*signature*/
63548
63540
  void 0,
63549
63541
  0 /* None */
63550
63542
  );
63551
- if (freshMapper) {
63552
- const freshCombinedMapper = combineTypeMappers(mapper, freshMapper);
63553
- for (let i = 0; i < freshParams.length; i++) {
63554
- if (freshParams[i] !== root.inferTypeParameters[i]) {
63555
- freshParams[i].mapper = freshCombinedMapper;
63556
- }
63557
- }
63543
+ if (mapper) {
63544
+ context.nonFixingMapper = combineTypeMappers(context.nonFixingMapper, mapper);
63558
63545
  }
63559
63546
  if (!checkTypeDeferred) {
63560
- inferTypes(context.inferences, checkType, instantiateType(extendsType, freshMapper), 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
63547
+ inferTypes(context.inferences, checkType, extendsType, 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
63561
63548
  }
63562
- const innerMapper = combineTypeMappers(freshMapper, context.mapper);
63563
- combinedMapper = mapper ? combineTypeMappers(innerMapper, mapper) : innerMapper;
63549
+ combinedMapper = mapper ? combineTypeMappers(context.mapper, mapper) : context.mapper;
63564
63550
  }
63565
63551
  const inferredExtendsType = combinedMapper ? instantiateType(root.extendsType, combinedMapper) : extendsType;
63566
63552
  if (!checkTypeDeferred && !isDeferredType(inferredExtendsType, checkTuples)) {
@@ -120214,7 +120200,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
120214
120200
  return getLiteralTextOfNode(textSourceNode, neverAsciiEscape, jsxAttributeEscape);
120215
120201
  }
120216
120202
  }
120217
- const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target === 99 /* ESNext */ ? 8 /* AllowNumericSeparator */ : 0);
120203
+ const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target >= 8 /* ES2021 */ ? 8 /* AllowNumericSeparator */ : 0);
120218
120204
  return getLiteralText(node, currentSourceFile, flags);
120219
120205
  }
120220
120206
  function pushNameGenerationScope(node) {
@@ -139664,6 +139650,7 @@ __export(ts_refactor_exports, {
139664
139650
  addExports: () => addExports,
139665
139651
  addNewFileToTsconfig: () => addNewFileToTsconfig,
139666
139652
  addOrRemoveBracesToArrowFunction: () => ts_refactor_addOrRemoveBracesToArrowFunction_exports,
139653
+ containsJsx: () => containsJsx,
139667
139654
  convertArrowFunctionOrFunctionExpression: () => ts_refactor_convertArrowFunctionOrFunctionExpression_exports,
139668
139655
  convertParamsToDestructuredObject: () => ts_refactor_convertParamsToDestructuredObject_exports,
139669
139656
  convertStringOrTemplateLiteral: () => ts_refactor_convertStringOrTemplateLiteral_exports,
@@ -140724,14 +140711,14 @@ registerRefactor(refactorName5, {
140724
140711
  getEditsForAction: function getRefactorEditsToMoveToNewFile(context, actionName2) {
140725
140712
  Debug.assert(actionName2 === refactorName5, "Wrong refactor invoked");
140726
140713
  const statements = Debug.checkDefined(getStatementsToMove(context));
140727
- const edits = ts_textChanges_exports.ChangeTracker.with(context, (t) => doChange3(context.file, context.program, statements, t, context.host, context.preferences, context));
140714
+ const edits = ts_textChanges_exports.ChangeTracker.with(context, (t) => doChange3(context.file, context.program, statements, t, context.host, context.preferences));
140728
140715
  return { edits, renameFilename: void 0, renameLocation: void 0 };
140729
140716
  }
140730
140717
  });
140731
- function doChange3(oldFile, program, toMove, changes, host, preferences, context) {
140718
+ function doChange3(oldFile, program, toMove, changes, host, preferences) {
140732
140719
  const checker = program.getTypeChecker();
140733
140720
  const usage = getUsageInfo(oldFile, toMove.all, checker);
140734
- const newFilename = createNewFileName(oldFile, program, context, host);
140721
+ const newFilename = createNewFileName(oldFile, program, host, toMove);
140735
140722
  changes.createNewFile(oldFile, newFilename, getNewStatementsAndRemoveFromOldFile(oldFile, usage, changes, toMove, program, host, newFilename, preferences));
140736
140723
  addNewFileToTsconfig(program, changes, oldFile.fileName, newFilename, hostGetCanonicalFileName(host));
140737
140724
  }
@@ -141444,12 +141431,10 @@ function addExportToChanges(sourceFile, decl, name, changes, useEs6Exports) {
141444
141431
  changes.insertNodesAfter(sourceFile, decl, names.map(createExportAssignment));
141445
141432
  }
141446
141433
  }
141447
- function createNewFileName(oldFile, program, context, host) {
141434
+ function createNewFileName(oldFile, program, host, toMove) {
141448
141435
  const checker = program.getTypeChecker();
141449
- const toMove = getStatementsToMove(context);
141450
- let usage;
141451
141436
  if (toMove) {
141452
- usage = getUsageInfo(oldFile, toMove.all, checker);
141437
+ const usage = getUsageInfo(oldFile, toMove.all, checker);
141453
141438
  const currentDirectory = getDirectoryPath(oldFile.fileName);
141454
141439
  const extension = extensionFromPath(oldFile.fileName);
141455
141440
  const newFileName = combinePaths(
@@ -141507,6 +141492,9 @@ function getStatementsToMove(context) {
141507
141492
  });
141508
141493
  return all.length === 0 ? void 0 : { all, ranges };
141509
141494
  }
141495
+ function containsJsx(statements) {
141496
+ return find(statements, (statement) => !!(statement.transformFlags & 2 /* ContainsJsx */));
141497
+ }
141510
141498
  function isAllowedStatementToMove(statement) {
141511
141499
  return !isPureImport(statement) && !isPrologueDirective(statement);
141512
141500
  }
@@ -141530,8 +141518,7 @@ function getUsageInfo(oldFile, toMove, checker, existingTargetLocals = /* @__PUR
141530
141518
  const movedSymbols = /* @__PURE__ */ new Set();
141531
141519
  const oldImportsNeededByTargetFile = /* @__PURE__ */ new Map();
141532
141520
  const targetFileImportsFromOldFile = /* @__PURE__ */ new Set();
141533
- const containsJsx = find(toMove, (statement) => !!(statement.transformFlags & 2 /* ContainsJsx */));
141534
- const jsxNamespaceSymbol = getJsxNamespaceSymbol(containsJsx);
141521
+ const jsxNamespaceSymbol = getJsxNamespaceSymbol(containsJsx(toMove));
141535
141522
  if (jsxNamespaceSymbol) {
141536
141523
  oldImportsNeededByTargetFile.set(jsxNamespaceSymbol, false);
141537
141524
  }
@@ -147259,9 +147246,14 @@ function createLanguageService(host, documentRegistry = createDocumentRegistry(h
147259
147246
  const sourceFile = getValidSourceFile(fileName);
147260
147247
  const allFiles = Debug.checkDefined(program.getSourceFiles());
147261
147248
  const extension = extensionFromPath(fileName);
147262
- const files = mapDefined(allFiles, (file) => !(program == null ? void 0 : program.isSourceFileFromExternalLibrary(sourceFile)) && !(sourceFile === getValidSourceFile(file.fileName) || extension === ".ts" /* Ts */ && extensionFromPath(file.fileName) === ".d.ts" /* Dts */ || extension === ".d.ts" /* Dts */ && startsWith(getBaseFileName(file.fileName), "lib.") && extensionFromPath(file.fileName) === ".d.ts" /* Dts */) && extension === extensionFromPath(file.fileName) ? file.fileName : void 0);
147263
- const newFileName = createNewFileName(sourceFile, program, getRefactorContext(sourceFile, positionOrRange, preferences, emptyOptions), host);
147264
- return { newFileName, files };
147249
+ const toMove = getStatementsToMove(getRefactorContext(sourceFile, positionOrRange, preferences, emptyOptions));
147250
+ const toMoveContainsJsx = containsJsx(toMove == null ? void 0 : toMove.all);
147251
+ const files = mapDefined(allFiles, (file) => {
147252
+ const fileNameExtension = extensionFromPath(file.fileName);
147253
+ const isValidSourceFile = !(program == null ? void 0 : program.isSourceFileFromExternalLibrary(sourceFile)) && !(sourceFile === getValidSourceFile(file.fileName) || extension === ".ts" /* Ts */ && fileNameExtension === ".d.ts" /* Dts */ || extension === ".d.ts" /* Dts */ && startsWith(getBaseFileName(file.fileName), "lib.") && fileNameExtension === ".d.ts" /* Dts */);
147254
+ return isValidSourceFile && (extension === fileNameExtension || (extension === ".tsx" /* Tsx */ && fileNameExtension === ".ts" /* Ts */ || extension === ".jsx" /* Jsx */ && fileNameExtension === ".js" /* Js */) && !toMoveContainsJsx) ? file.fileName : void 0;
147255
+ });
147256
+ return { newFileName: createNewFileName(sourceFile, program, host, toMove), files };
147265
147257
  }
147266
147258
  function getEditsForRefactor2(fileName, formatOptions, positionOrRange, refactorName14, actionName2, preferences = emptyOptions, interactiveRefactorArguments) {
147267
147259
  synchronizeHostData();
@@ -153805,7 +153797,7 @@ registerCodeFix({
153805
153797
  return createCombinedCodeActions(ts_textChanges_exports.ChangeTracker.with(context, (changes) => {
153806
153798
  eachDiagnostic(context, errorCodes27, (diag2) => {
153807
153799
  const info = getInfo10(diag2.file, diag2.start, diag2.code, checker, context.program);
153808
- if (!info || !addToSeen(seen, getNodeId(info.parentDeclaration) + "#" + info.token.text)) {
153800
+ if (!info || !addToSeen(seen, getNodeId(info.parentDeclaration) + "#" + (info.kind === 3 /* ObjectLiteral */ ? info.identifier : info.token.text))) {
153809
153801
  return;
153810
153802
  }
153811
153803
  if (fixId52 === fixMissingFunctionDeclaration && (info.kind === 2 /* Function */ || info.kind === 5 /* Signature */)) {
@@ -153877,7 +153869,22 @@ function getInfo10(sourceFile, tokenPos, errorCode, checker, program) {
153877
153869
  ));
153878
153870
  if (!length(properties))
153879
153871
  return void 0;
153880
- return { kind: 3 /* ObjectLiteral */, token: param.name, properties, parentDeclaration: parent2 };
153872
+ return { kind: 3 /* ObjectLiteral */, token: param.name, identifier: param.name.text, properties, parentDeclaration: parent2 };
153873
+ }
153874
+ if (token.kind === 19 /* OpenBraceToken */ && isObjectLiteralExpression(parent2)) {
153875
+ const targetType = checker.getContextualType(parent2) || checker.getTypeAtLocation(parent2);
153876
+ const properties = arrayFrom(checker.getUnmatchedProperties(
153877
+ checker.getTypeAtLocation(parent2),
153878
+ targetType,
153879
+ /*requireOptionalProperties*/
153880
+ false,
153881
+ /*matchDiscriminantProperties*/
153882
+ false
153883
+ ));
153884
+ if (!length(properties))
153885
+ return void 0;
153886
+ const identifier = "";
153887
+ return { kind: 3 /* ObjectLiteral */, token: parent2, identifier, properties, parentDeclaration: parent2 };
153881
153888
  }
153882
153889
  if (!isMemberName(token))
153883
153890
  return void 0;
@@ -153893,7 +153900,7 @@ function getInfo10(sourceFile, tokenPos, errorCode, checker, program) {
153893
153900
  ));
153894
153901
  if (!length(properties))
153895
153902
  return void 0;
153896
- return { kind: 3 /* ObjectLiteral */, token, properties, parentDeclaration: parent2.initializer };
153903
+ return { kind: 3 /* ObjectLiteral */, token, identifier: token.text, properties, parentDeclaration: parent2.initializer };
153897
153904
  }
153898
153905
  if (isIdentifier(token) && isJsxOpeningLikeElement(token.parent)) {
153899
153906
  const target = getEmitScriptTarget(program.getCompilerOptions());
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.4";
38
- version = `${versionMajorMinor}.0-insiders.20240215`;
38
+ version = `${versionMajorMinor}.0-insiders.20240216`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -59857,7 +59857,7 @@ ${lanes.join("\n")}
59857
59857
  return target.objectFlags & 8 /* Tuple */ ? createNormalizedTupleType(target, typeArguments) : createTypeReference(target, typeArguments);
59858
59858
  }
59859
59859
  function createNormalizedTupleType(target, elementTypes) {
59860
- var _a, _b, _c, _d;
59860
+ var _a, _b, _c;
59861
59861
  if (!(target.combinedFlags & 14 /* NonRequired */)) {
59862
59862
  return createTypeReference(target, elementTypes);
59863
59863
  }
@@ -59877,10 +59877,8 @@ ${lanes.join("\n")}
59877
59877
  const type = elementTypes[i];
59878
59878
  const flags = target.elementFlags[i];
59879
59879
  if (flags & 8 /* Variadic */) {
59880
- if (type.flags & 1 /* Any */) {
59881
- addElement(type, 4 /* Rest */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
59882
- } else if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
59883
- addElement(type, 8 /* Variadic */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
59880
+ if (type.flags & 58982400 /* InstantiableNonPrimitive */ || isGenericMappedType(type)) {
59881
+ addElement(type, 8 /* Variadic */, (_a = target.labeledElementDeclarations) == null ? void 0 : _a[i]);
59884
59882
  } else if (isTupleType(type)) {
59885
59883
  const elements = getElementTypes(type);
59886
59884
  if (elements.length + expandedTypes.length >= 1e4) {
@@ -59895,10 +59893,10 @@ ${lanes.join("\n")}
59895
59893
  return addElement(t, type.target.elementFlags[n], (_a2 = type.target.labeledElementDeclarations) == null ? void 0 : _a2[n]);
59896
59894
  });
59897
59895
  } else {
59898
- addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
59896
+ addElement(isArrayLikeType(type) && getIndexTypeOfType(type, numberType) || errorType, 4 /* Rest */, (_b = target.labeledElementDeclarations) == null ? void 0 : _b[i]);
59899
59897
  }
59900
59898
  } else {
59901
- addElement(type, flags, (_d = target.labeledElementDeclarations) == null ? void 0 : _d[i]);
59899
+ addElement(type, flags, (_c = target.labeledElementDeclarations) == null ? void 0 : _c[i]);
59902
59900
  }
59903
59901
  }
59904
59902
  for (let i = 0; i < lastRequiredIndex; i++) {
@@ -61262,10 +61260,6 @@ ${lanes.join("\n")}
61262
61260
  }
61263
61261
  return type;
61264
61262
  }
61265
- function maybeCloneTypeParameter(p) {
61266
- const constraint = getConstraintOfTypeParameter(p);
61267
- return constraint && (isGenericObjectType(constraint) || isGenericIndexType(constraint)) ? cloneTypeParameter(p) : p;
61268
- }
61269
61263
  function isSimpleTupleType(node) {
61270
61264
  return isTupleTypeNode(node) && length(node.elements) > 0 && !some(node.elements, (e) => isOptionalTypeNode(e) || isRestTypeNode(e) || isNamedTupleMember(e) && !!(e.questionToken || e.dotDotDotToken));
61271
61265
  }
@@ -61295,27 +61289,19 @@ ${lanes.join("\n")}
61295
61289
  const checkTypeDeferred = isDeferredType(checkType, checkTuples);
61296
61290
  let combinedMapper;
61297
61291
  if (root.inferTypeParameters) {
61298
- const freshParams = sameMap(root.inferTypeParameters, maybeCloneTypeParameter);
61299
- const freshMapper = freshParams !== root.inferTypeParameters ? createTypeMapper(root.inferTypeParameters, freshParams) : void 0;
61300
61292
  const context = createInferenceContext(
61301
- freshParams,
61293
+ root.inferTypeParameters,
61302
61294
  /*signature*/
61303
61295
  void 0,
61304
61296
  0 /* None */
61305
61297
  );
61306
- if (freshMapper) {
61307
- const freshCombinedMapper = combineTypeMappers(mapper, freshMapper);
61308
- for (let i = 0; i < freshParams.length; i++) {
61309
- if (freshParams[i] !== root.inferTypeParameters[i]) {
61310
- freshParams[i].mapper = freshCombinedMapper;
61311
- }
61312
- }
61298
+ if (mapper) {
61299
+ context.nonFixingMapper = combineTypeMappers(context.nonFixingMapper, mapper);
61313
61300
  }
61314
61301
  if (!checkTypeDeferred) {
61315
- inferTypes(context.inferences, checkType, instantiateType(extendsType, freshMapper), 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
61302
+ inferTypes(context.inferences, checkType, extendsType, 512 /* NoConstraints */ | 1024 /* AlwaysStrict */);
61316
61303
  }
61317
- const innerMapper = combineTypeMappers(freshMapper, context.mapper);
61318
- combinedMapper = mapper ? combineTypeMappers(innerMapper, mapper) : innerMapper;
61304
+ combinedMapper = mapper ? combineTypeMappers(context.mapper, mapper) : context.mapper;
61319
61305
  }
61320
61306
  const inferredExtendsType = combinedMapper ? instantiateType(root.extendsType, combinedMapper) : extendsType;
61321
61307
  if (!checkTypeDeferred && !isDeferredType(inferredExtendsType, checkTuples)) {
@@ -118246,7 +118232,7 @@ ${lanes.join("\n")}
118246
118232
  return getLiteralTextOfNode(textSourceNode, neverAsciiEscape, jsxAttributeEscape);
118247
118233
  }
118248
118234
  }
118249
- const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target === 99 /* ESNext */ ? 8 /* AllowNumericSeparator */ : 0);
118235
+ const flags = (neverAsciiEscape ? 1 /* NeverAsciiEscape */ : 0) | (jsxAttributeEscape ? 2 /* JsxAttributeEscape */ : 0) | (printerOptions.terminateUnterminatedLiterals ? 4 /* TerminateUnterminatedLiterals */ : 0) | (printerOptions.target && printerOptions.target >= 8 /* ES2021 */ ? 8 /* AllowNumericSeparator */ : 0);
118250
118236
  return getLiteralText(node, currentSourceFile, flags);
118251
118237
  }
118252
118238
  function pushNameGenerationScope(node) {
@@ -139100,10 +139086,10 @@ ${lanes.join("\n")}
139100
139086
  });
139101
139087
 
139102
139088
  // src/services/refactors/moveToNewFile.ts
139103
- function doChange3(oldFile, program, toMove, changes, host, preferences, context) {
139089
+ function doChange3(oldFile, program, toMove, changes, host, preferences) {
139104
139090
  const checker = program.getTypeChecker();
139105
139091
  const usage = getUsageInfo(oldFile, toMove.all, checker);
139106
- const newFilename = createNewFileName(oldFile, program, context, host);
139092
+ const newFilename = createNewFileName(oldFile, program, host, toMove);
139107
139093
  changes.createNewFile(oldFile, newFilename, getNewStatementsAndRemoveFromOldFile(oldFile, usage, changes, toMove, program, host, newFilename, preferences));
139108
139094
  addNewFileToTsconfig(program, changes, oldFile.fileName, newFilename, hostGetCanonicalFileName(host));
139109
139095
  }
@@ -139208,7 +139194,7 @@ ${lanes.join("\n")}
139208
139194
  getEditsForAction: function getRefactorEditsToMoveToNewFile(context, actionName2) {
139209
139195
  Debug.assert(actionName2 === refactorName5, "Wrong refactor invoked");
139210
139196
  const statements = Debug.checkDefined(getStatementsToMove(context));
139211
- const edits = ts_textChanges_exports.ChangeTracker.with(context, (t) => doChange3(context.file, context.program, statements, t, context.host, context.preferences, context));
139197
+ const edits = ts_textChanges_exports.ChangeTracker.with(context, (t) => doChange3(context.file, context.program, statements, t, context.host, context.preferences));
139212
139198
  return { edits, renameFilename: void 0, renameLocation: void 0 };
139213
139199
  }
139214
139200
  });
@@ -139812,12 +139798,10 @@ ${lanes.join("\n")}
139812
139798
  changes.insertNodesAfter(sourceFile, decl, names.map(createExportAssignment));
139813
139799
  }
139814
139800
  }
139815
- function createNewFileName(oldFile, program, context, host) {
139801
+ function createNewFileName(oldFile, program, host, toMove) {
139816
139802
  const checker = program.getTypeChecker();
139817
- const toMove = getStatementsToMove(context);
139818
- let usage;
139819
139803
  if (toMove) {
139820
- usage = getUsageInfo(oldFile, toMove.all, checker);
139804
+ const usage = getUsageInfo(oldFile, toMove.all, checker);
139821
139805
  const currentDirectory = getDirectoryPath(oldFile.fileName);
139822
139806
  const extension = extensionFromPath(oldFile.fileName);
139823
139807
  const newFileName = combinePaths(
@@ -139875,6 +139859,9 @@ ${lanes.join("\n")}
139875
139859
  });
139876
139860
  return all.length === 0 ? void 0 : { all, ranges };
139877
139861
  }
139862
+ function containsJsx(statements) {
139863
+ return find(statements, (statement) => !!(statement.transformFlags & 2 /* ContainsJsx */));
139864
+ }
139878
139865
  function isAllowedStatementToMove(statement) {
139879
139866
  return !isPureImport(statement) && !isPrologueDirective(statement);
139880
139867
  }
@@ -139898,8 +139885,7 @@ ${lanes.join("\n")}
139898
139885
  const movedSymbols = /* @__PURE__ */ new Set();
139899
139886
  const oldImportsNeededByTargetFile = /* @__PURE__ */ new Map();
139900
139887
  const targetFileImportsFromOldFile = /* @__PURE__ */ new Set();
139901
- const containsJsx = find(toMove, (statement) => !!(statement.transformFlags & 2 /* ContainsJsx */));
139902
- const jsxNamespaceSymbol = getJsxNamespaceSymbol(containsJsx);
139888
+ const jsxNamespaceSymbol = getJsxNamespaceSymbol(containsJsx(toMove));
139903
139889
  if (jsxNamespaceSymbol) {
139904
139890
  oldImportsNeededByTargetFile.set(jsxNamespaceSymbol, false);
139905
139891
  }
@@ -143616,6 +143602,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
143616
143602
  addExports: () => addExports,
143617
143603
  addNewFileToTsconfig: () => addNewFileToTsconfig,
143618
143604
  addOrRemoveBracesToArrowFunction: () => ts_refactor_addOrRemoveBracesToArrowFunction_exports,
143605
+ containsJsx: () => containsJsx,
143619
143606
  convertArrowFunctionOrFunctionExpression: () => ts_refactor_convertArrowFunctionOrFunctionExpression_exports,
143620
143607
  convertParamsToDestructuredObject: () => ts_refactor_convertParamsToDestructuredObject_exports,
143621
143608
  convertStringOrTemplateLiteral: () => ts_refactor_convertStringOrTemplateLiteral_exports,
@@ -145191,9 +145178,14 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
145191
145178
  const sourceFile = getValidSourceFile(fileName);
145192
145179
  const allFiles = Debug.checkDefined(program.getSourceFiles());
145193
145180
  const extension = extensionFromPath(fileName);
145194
- const files = mapDefined(allFiles, (file) => !(program == null ? void 0 : program.isSourceFileFromExternalLibrary(sourceFile)) && !(sourceFile === getValidSourceFile(file.fileName) || extension === ".ts" /* Ts */ && extensionFromPath(file.fileName) === ".d.ts" /* Dts */ || extension === ".d.ts" /* Dts */ && startsWith(getBaseFileName(file.fileName), "lib.") && extensionFromPath(file.fileName) === ".d.ts" /* Dts */) && extension === extensionFromPath(file.fileName) ? file.fileName : void 0);
145195
- const newFileName = createNewFileName(sourceFile, program, getRefactorContext(sourceFile, positionOrRange, preferences, emptyOptions), host);
145196
- return { newFileName, files };
145181
+ const toMove = getStatementsToMove(getRefactorContext(sourceFile, positionOrRange, preferences, emptyOptions));
145182
+ const toMoveContainsJsx = containsJsx(toMove == null ? void 0 : toMove.all);
145183
+ const files = mapDefined(allFiles, (file) => {
145184
+ const fileNameExtension = extensionFromPath(file.fileName);
145185
+ const isValidSourceFile = !(program == null ? void 0 : program.isSourceFileFromExternalLibrary(sourceFile)) && !(sourceFile === getValidSourceFile(file.fileName) || extension === ".ts" /* Ts */ && fileNameExtension === ".d.ts" /* Dts */ || extension === ".d.ts" /* Dts */ && startsWith(getBaseFileName(file.fileName), "lib.") && fileNameExtension === ".d.ts" /* Dts */);
145186
+ return isValidSourceFile && (extension === fileNameExtension || (extension === ".tsx" /* Tsx */ && fileNameExtension === ".ts" /* Ts */ || extension === ".jsx" /* Jsx */ && fileNameExtension === ".js" /* Js */) && !toMoveContainsJsx) ? file.fileName : void 0;
145187
+ });
145188
+ return { newFileName: createNewFileName(sourceFile, program, host, toMove), files };
145197
145189
  }
145198
145190
  function getEditsForRefactor2(fileName, formatOptions, positionOrRange, refactorName14, actionName2, preferences = emptyOptions, interactiveRefactorArguments) {
145199
145191
  synchronizeHostData();
@@ -152620,7 +152612,22 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
152620
152612
  ));
152621
152613
  if (!length(properties))
152622
152614
  return void 0;
152623
- return { kind: 3 /* ObjectLiteral */, token: param.name, properties, parentDeclaration: parent2 };
152615
+ return { kind: 3 /* ObjectLiteral */, token: param.name, identifier: param.name.text, properties, parentDeclaration: parent2 };
152616
+ }
152617
+ if (token.kind === 19 /* OpenBraceToken */ && isObjectLiteralExpression(parent2)) {
152618
+ const targetType = checker.getContextualType(parent2) || checker.getTypeAtLocation(parent2);
152619
+ const properties = arrayFrom(checker.getUnmatchedProperties(
152620
+ checker.getTypeAtLocation(parent2),
152621
+ targetType,
152622
+ /*requireOptionalProperties*/
152623
+ false,
152624
+ /*matchDiscriminantProperties*/
152625
+ false
152626
+ ));
152627
+ if (!length(properties))
152628
+ return void 0;
152629
+ const identifier = "";
152630
+ return { kind: 3 /* ObjectLiteral */, token: parent2, identifier, properties, parentDeclaration: parent2 };
152624
152631
  }
152625
152632
  if (!isMemberName(token))
152626
152633
  return void 0;
@@ -152636,7 +152643,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
152636
152643
  ));
152637
152644
  if (!length(properties))
152638
152645
  return void 0;
152639
- return { kind: 3 /* ObjectLiteral */, token, properties, parentDeclaration: parent2.initializer };
152646
+ return { kind: 3 /* ObjectLiteral */, token, identifier: token.text, properties, parentDeclaration: parent2.initializer };
152640
152647
  }
152641
152648
  if (isIdentifier(token) && isJsxOpeningLikeElement(token.parent)) {
152642
152649
  const target = getEmitScriptTarget(program.getCompilerOptions());
@@ -153183,7 +153190,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
153183
153190
  return createCombinedCodeActions(ts_textChanges_exports.ChangeTracker.with(context, (changes) => {
153184
153191
  eachDiagnostic(context, errorCodes27, (diag2) => {
153185
153192
  const info = getInfo10(diag2.file, diag2.start, diag2.code, checker, context.program);
153186
- if (!info || !addToSeen(seen, getNodeId(info.parentDeclaration) + "#" + info.token.text)) {
153193
+ if (!info || !addToSeen(seen, getNodeId(info.parentDeclaration) + "#" + (info.kind === 3 /* ObjectLiteral */ ? info.identifier : info.token.text))) {
153187
153194
  return;
153188
153195
  }
153189
153196
  if (fixId52 === fixMissingFunctionDeclaration && (info.kind === 2 /* Function */ || info.kind === 5 /* Signature */)) {
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
54
54
 
55
55
  // src/compiler/corePublic.ts
56
56
  var versionMajorMinor = "5.4";
57
- var version = `${versionMajorMinor}.0-insiders.20240215`;
57
+ var version = `${versionMajorMinor}.0-insiders.20240216`;
58
58
 
59
59
  // src/compiler/core.ts
60
60
  var emptyArray = [];
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@typescript-deploys/pr-build",
3
3
  "author": "Microsoft Corp.",
4
4
  "homepage": "https://www.typescriptlang.org/",
5
- "version": "5.4.0-pr-57116-10",
5
+ "version": "5.4.0-pr-57362-11",
6
6
  "license": "Apache-2.0",
7
7
  "description": "TypeScript is a language for application scale JavaScript development",
8
8
  "keywords": [
@@ -114,5 +114,5 @@
114
114
  "node": "20.1.0",
115
115
  "npm": "8.19.4"
116
116
  },
117
- "gitHead": "d699c813b58a106f0c6e8608c288a8937aecaec1"
117
+ "gitHead": "6a042d1d41406f745adc233dbbf58577345334b4"
118
118
  }