typescript 7.1.0-dev.20261002.1 → 7.1.0-dev.20261004.1

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.
Files changed (90) hide show
  1. package/dist/api/async/api.d.ts +46 -23
  2. package/dist/api/async/api.d.ts.map +1 -1
  3. package/dist/api/async/api.js +87 -19
  4. package/dist/api/async/api.js.map +1 -1
  5. package/dist/api/async/client.d.ts.map +1 -1
  6. package/dist/api/async/client.js +73 -16
  7. package/dist/api/async/client.js.map +1 -1
  8. package/dist/api/async/types.d.ts +4 -3
  9. package/dist/api/async/types.d.ts.map +1 -1
  10. package/dist/api/compilerOptions.generated.d.ts +9 -8
  11. package/dist/api/compilerOptions.generated.d.ts.map +1 -1
  12. package/dist/api/compilerOptions.generated.js.map +1 -1
  13. package/dist/api/diagnosticFormatter.d.ts.map +1 -1
  14. package/dist/api/diagnosticFormatter.js.map +1 -1
  15. package/dist/api/fs.d.ts +10 -8
  16. package/dist/api/fs.d.ts.map +1 -1
  17. package/dist/api/fs.js.map +1 -1
  18. package/dist/api/node/encoder.generated.js +1 -1
  19. package/dist/api/node/encoder.generated.js.map +1 -1
  20. package/dist/api/node/node.d.ts +12 -9
  21. package/dist/api/node/node.d.ts.map +1 -1
  22. package/dist/api/node/node.generated.js +1 -1
  23. package/dist/api/node/node.generated.js.map +1 -1
  24. package/dist/api/node/node.infrastructure.d.ts.map +1 -1
  25. package/dist/api/node/node.infrastructure.js.map +1 -1
  26. package/dist/api/node/node.js +35 -10
  27. package/dist/api/node/node.js.map +1 -1
  28. package/dist/api/path.d.ts +46 -9
  29. package/dist/api/path.d.ts.map +1 -1
  30. package/dist/api/path.js +210 -56
  31. package/dist/api/path.js.map +1 -1
  32. package/dist/api/prepareCompilerOptions.generated.d.ts +5 -0
  33. package/dist/api/prepareCompilerOptions.generated.d.ts.map +1 -0
  34. package/dist/api/prepareCompilerOptions.generated.js +24 -0
  35. package/dist/api/prepareCompilerOptions.generated.js.map +1 -0
  36. package/dist/api/proto.generated.d.ts +197 -32
  37. package/dist/api/proto.generated.d.ts.map +1 -1
  38. package/dist/api/proto.generated.js +12 -0
  39. package/dist/api/proto.generated.js.map +1 -1
  40. package/dist/api/sourceFileCache.d.ts +7 -7
  41. package/dist/api/sourceFileCache.d.ts.map +1 -1
  42. package/dist/api/sourceFileCache.js.map +1 -1
  43. package/dist/api/sync/api.d.ts +68 -30
  44. package/dist/api/sync/api.d.ts.map +1 -1
  45. package/dist/api/sync/api.js +155 -31
  46. package/dist/api/sync/api.js.map +1 -1
  47. package/dist/api/sync/types.d.ts +4 -3
  48. package/dist/api/sync/types.d.ts.map +1 -1
  49. package/dist/api/typedPaths.d.ts +3 -0
  50. package/dist/api/typedPaths.d.ts.map +1 -0
  51. package/dist/api/typedPaths.js +2 -0
  52. package/dist/api/typedPaths.js.map +1 -0
  53. package/dist/ast/ast.d.ts +58 -7
  54. package/dist/ast/ast.d.ts.map +1 -1
  55. package/dist/ast/ast.generated.d.ts +3 -3
  56. package/dist/ast/ast.generated.d.ts.map +1 -1
  57. package/dist/ast/factory.generated.d.ts +2 -2
  58. package/dist/ast/factory.generated.d.ts.map +1 -1
  59. package/dist/ast/factory.generated.js.map +1 -1
  60. package/dist/ast/is.generated.d.ts.map +1 -1
  61. package/dist/ast/is.generated.js +2 -1
  62. package/dist/ast/is.generated.js.map +1 -1
  63. package/dist/ast/scanner.d.ts.map +1 -1
  64. package/dist/ast/scanner.js +1 -0
  65. package/dist/ast/scanner.js.map +1 -1
  66. package/dist/enums/caseSensitivity.d.ts +2 -0
  67. package/dist/enums/caseSensitivity.d.ts.map +1 -0
  68. package/dist/enums/caseSensitivity.enum.d.ts +5 -0
  69. package/dist/enums/caseSensitivity.enum.d.ts.map +1 -0
  70. package/dist/enums/caseSensitivity.enum.js +7 -0
  71. package/dist/enums/caseSensitivity.enum.js.map +1 -0
  72. package/dist/enums/caseSensitivity.js +7 -0
  73. package/dist/enums/caseSensitivity.js.map +1 -0
  74. package/dist/enums/syntaxKind.enum.d.ts +198 -197
  75. package/dist/enums/syntaxKind.enum.d.ts.map +1 -1
  76. package/dist/enums/syntaxKind.enum.js +198 -197
  77. package/dist/enums/syntaxKind.enum.js.map +1 -1
  78. package/dist/enums/syntaxKind.js +198 -197
  79. package/dist/enums/syntaxKind.js.map +1 -1
  80. package/dist/vscode/extensionApi.d.ts +56 -0
  81. package/dist/vscode/extensionApi.d.ts.map +1 -0
  82. package/dist/vscode/extensionApi.js +2 -0
  83. package/dist/vscode/extensionApi.js.map +1 -0
  84. package/dist/vscode/protocol.generated.d.ts +2886 -0
  85. package/dist/vscode/protocol.generated.d.ts.map +1 -0
  86. package/dist/vscode/protocol.generated.js +4 -0
  87. package/dist/vscode/protocol.generated.js.map +1 -0
  88. package/package.json +13 -9
  89. package/schemas/jsconfig.schema.json +3 -1
  90. package/schemas/tsconfig.schema.json +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"node.infrastructure.d.ts","sourceRoot":"","sources":["../../../src/api/node/node.infrastructure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.infrastructure.d.ts","sourceRoot":"","sources":["../../../src/api/node/node.infrastructure.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.infrastructure.js","sourceRoot":"","sources":["../../../src/api/node/node.infrastructure.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EACH,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAClB,MAAM,eAAe,CAAC;AAEvB,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE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"}
1
+ {"version":3,"file":"node.infrastructure.js","sourceRoot":"","sources":["../../../src/api/node/node.infrastructure.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,UAAU,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EACH,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAClB,MAAM,eAAe,CAAC;AAEvB,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE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"}
@@ -1,4 +1,5 @@
1
1
  import { computeLineStarts, NodeFlags, SpanMap, SpanMapFeature, SpanMapKind, SyntaxKind, TokenFlags, } from "../../ast/index.js";
2
+ import { tryPathKeyFromCanonical } from "../path.js";
2
3
  import { MsgpackReader } from "./msgpack.js";
3
4
  import { RemoteNode, RemoteNodeList, } from "./node.generated.js";
4
5
  import { NODE_EXTENDED_DATA_MASK, readParseOptionsKey, readSourceFileHash, readSourceFileNodeId, } from "./node.infrastructure.js";
@@ -164,13 +165,22 @@ export class RemoteSourceFile extends RemoteNode {
164
165
  get extendedDataOffset() {
165
166
  return this._offsetExtendedData + (this.data & NODE_EXTENDED_DATA_MASK);
166
167
  }
168
+ getFileName(stringIndex) {
169
+ return this.getString(stringIndex);
170
+ }
171
+ getPathKey(stringIndex) {
172
+ return this.getString(stringIndex);
173
+ }
174
+ readFileNameArray(structuredDataOffset) {
175
+ return this.readStringArray(structuredDataOffset);
176
+ }
167
177
  get fileName() {
168
178
  const stringIndex = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.FileName, true);
169
- return this.getString(stringIndex);
179
+ return this.getFileName(stringIndex);
170
180
  }
171
181
  get path() {
172
182
  const stringIndex = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.Path, true);
173
- return this.getString(stringIndex);
183
+ return this.getPathKey(stringIndex);
174
184
  }
175
185
  get languageVariant() {
176
186
  return this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.LanguageVariant, true);
@@ -278,11 +288,11 @@ export class RemoteSourceFile extends RemoteNode {
278
288
  const offset = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.SupplementalSourceFileNames, true);
279
289
  if (offset === NO_STRUCTURED_DATA)
280
290
  return undefined;
281
- return this._cachedSupplementalSourceFileNames = this.readStringArray(offset);
291
+ return this._cachedSupplementalSourceFileNames = this.readFileNameArray(offset);
282
292
  }
283
293
  get canonicalSourceFileName() {
284
294
  const stringIndex = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.CanonicalSourceFileName, true);
285
- return stringIndex === NO_STRUCTURED_DATA ? undefined : this.getString(stringIndex);
295
+ return stringIndex === NO_STRUCTURED_DATA ? undefined : this.getFileName(stringIndex);
286
296
  }
287
297
  get contentMapper() {
288
298
  const stringIndex = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.ContentMapper, true);
@@ -290,7 +300,7 @@ export class RemoteSourceFile extends RemoteNode {
290
300
  }
291
301
  get virtualFileName() {
292
302
  const stringIndex = this.view.getUint32(this.extendedDataOffset + sourceFileExtendedDataOffsets.VirtualFileName, true);
293
- return stringIndex === NO_STRUCTURED_DATA ? undefined : this.getString(stringIndex);
303
+ return stringIndex === NO_STRUCTURED_DATA ? undefined : this.getFileName(stringIndex);
294
304
  }
295
305
  get diagnosticDirectives() {
296
306
  if (this._diagnosticDirectivesRead)
@@ -389,10 +399,10 @@ export function findDescendant(root, pos, end, kind) {
389
399
  return result;
390
400
  }
391
401
  /**
392
- * Parse a node handle string into its components.
402
+ * Parse a compiler-produced node handle into its components.
393
403
  * Handle format: "index.kind.path" where path may contain dots.
394
404
  */
395
- export function parseNodeHandle(handle) {
405
+ export function parseNodeHandleFromCompiler(handle) {
396
406
  const firstDot = handle.indexOf(".");
397
407
  if (firstDot === -1) {
398
408
  throw new Error(`Invalid node handle: ${handle}`);
@@ -401,10 +411,25 @@ export function parseNodeHandle(handle) {
401
411
  if (secondDot === -1) {
402
412
  throw new Error(`Invalid node handle: ${handle}`);
403
413
  }
414
+ const indexText = handle.slice(0, firstDot);
415
+ const kindText = handle.slice(firstDot + 1, secondDot);
416
+ const path = handle.slice(secondDot + 1);
417
+ const index = Number(indexText);
418
+ const kind = Number(kindText);
419
+ const key = tryPathKeyFromCanonical(path);
420
+ if (!Number.isSafeInteger(index) ||
421
+ index < 0 ||
422
+ String(index) !== indexText ||
423
+ !Number.isSafeInteger(kind) ||
424
+ kind < 0 ||
425
+ String(kind) !== kindText ||
426
+ key === undefined) {
427
+ throw new Error(`Invalid node handle: ${handle}`);
428
+ }
404
429
  return {
405
- index: parseInt(handle.slice(0, firstDot), 10),
406
- kind: parseInt(handle.slice(firstDot + 1, secondDot), 10),
407
- path: handle.slice(secondDot + 1),
430
+ index,
431
+ kind: kind,
432
+ path: key,
408
433
  };
409
434
  }
410
435
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/api/node/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/api/node/node.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import { CaseSensitivity } from "#enums/caseSensitivity";
2
+ import type { PathKey, RootedDirectoryPath, RootedFilePath, RootedPath } from "../ast/index.ts";
3
+ export { CaseSensitivity } from "#enums/caseSensitivity";
1
4
  /**
2
5
  * Returns length of the root part of a path or URL (i.e. length of "/", "x:/", "//server/share/, file:///user/files").
3
6
  *
@@ -63,18 +66,52 @@ export declare function normalizePath(path: string): string;
63
66
  export declare function isRootedDiskPath(path: string): boolean;
64
67
  export declare function convertToRelativePath(absoluteOrRelativePath: string, basePath: string, getCanonicalFileName: (path: string) => string): string;
65
68
  /**
66
- * Converts a file name to a normalized path.
67
- *
68
- * @param fileName The file name to convert
69
- * @param basePath The base path to use for relative file names
70
- * @param getCanonicalFileName A function to get the canonical file name (e.g., toLowerCase for case-insensitive systems)
71
- * @returns The normalized path
69
+ * Returns the canonical key for an already rooted, normalized path under
70
+ * caseSensitivity.
71
+ */
72
+ export declare function pathKey(path: RootedPath, caseSensitivity: CaseSensitivity): PathKey;
73
+ /**
74
+ * Validates a canonical path key received from a trusted producer without
75
+ * applying case sensitivity again.
76
+ */
77
+ export declare function tryPathKeyFromCanonical(path: string): PathKey | undefined;
78
+ /**
79
+ * Resolves path against currentDirectory and normalizes it.
80
+ */
81
+ export declare function toRootedPath(path: string, currentDirectory: RootedDirectoryPath | undefined): RootedPath;
82
+ /**
83
+ * Validates a path that is already rooted and normalized without changing it.
84
+ */
85
+ export declare function rootedPathFromNormalized(path: string): RootedPath;
86
+ /**
87
+ * Attempts to validate a path that is already rooted and normalized without
88
+ * changing it.
89
+ */
90
+ export declare function tryRootedPathFromNormalized(path: string): RootedPath | undefined;
91
+ /**
92
+ * Resolves fileName against currentDirectory, normalizes it, and gives it file
93
+ * intent.
94
+ */
95
+ export declare function toRootedFilePath(fileName: string, currentDirectory: RootedDirectoryPath | undefined): RootedFilePath;
96
+ /**
97
+ * Resolves directory against currentDirectory, normalizes it, and gives it
98
+ * directory intent.
99
+ */
100
+ export declare function toRootedDirectoryPath(directory: string, currentDirectory: RootedDirectoryPath | undefined): RootedDirectoryPath;
101
+ /**
102
+ * Gives a RootedPath file intent without changing it.
103
+ */
104
+ export declare function rootedFilePathFromPath(path: RootedPath): RootedFilePath;
105
+ /**
106
+ * Gives a RootedPath directory intent without changing it.
72
107
  */
73
- export declare function toPath(fileName: string, basePath: string | undefined, getCanonicalFileName: (path: string) => string): string;
108
+ export declare function rootedDirectoryPathFromPath(path: RootedPath): RootedDirectoryPath;
74
109
  /**
75
- * Creates a getCanonicalFileName function based on case sensitivity.
110
+ * Applies caseSensitivity to text used for path comparison or keys.
76
111
  */
77
- export declare function createGetCanonicalFileName(useCaseSensitiveFileNames: boolean): (fileName: string) => string;
112
+ export declare function canonicalize(text: string, caseSensitivity: CaseSensitivity): string;
113
+ export declare function isCaseSensitive(caseSensitivity: CaseSensitivity): boolean;
114
+ export declare function isCaseInsensitive(caseSensitivity: CaseSensitivity): boolean;
78
115
  /**
79
116
  * Returns true if the path refers to a bundled library file.
80
117
  */
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/api/path.ts"],"names":[],"mappings":"AAuCA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGlD;AA8ED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAExD;AAaD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAanF;AAqBD;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CA4FpG;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,qBAAqB,CACjC,sBAAsB,EAAE,MAAM,EAC9B,QAAQ,EAAE,MAAM,EAChB,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAC/C,MAAM,CAyBR;AAUD;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAO7H;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,yBAAyB,EAAE,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAE3G;AAiBD;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,CAKzF;AAyCD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAuD9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8EzD"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/api/path.ts"],"names":[],"mappings":"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"}
package/dist/api/path.js CHANGED
@@ -1,7 +1,10 @@
1
+ import { CaseSensitivity } from "#enums/caseSensitivity";
2
+ export { CaseSensitivity } from "#enums/caseSensitivity";
1
3
  const CharacterCodesSlash = "/".charCodeAt(0);
2
4
  const CharacterCodesBackslash = "\\".charCodeAt(0);
3
5
  const CharacterCodesColon = ":".charCodeAt(0);
4
6
  const CharacterCodesPercent = "%".charCodeAt(0);
7
+ const CharacterCodesCaret = "^".charCodeAt(0);
5
8
  const CharacterCodes3 = "3".charCodeAt(0);
6
9
  const CharacterCodesa = "a".charCodeAt(0);
7
10
  const CharacterCodesz = "z".charCodeAt(0);
@@ -12,6 +15,8 @@ const directorySeparator = "/";
12
15
  const altDirectorySeparator = "\\";
13
16
  const urlSchemeSeparator = "://";
14
17
  const backslashRegExp = /\\/g;
18
+ // Preserve U+0130 as case-sensitive while avoiding work for common lowercase paths.
19
+ const fileNameLowerCaseRegExp = /[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;
15
20
  // check path for these segments: '', '.'. '..'
16
21
  const relativePathSegmentRegExp = /\/\/|(?:^|\/)\.\.?(?:$|\/)/;
17
22
  /**
@@ -85,12 +90,15 @@ function getEncodedRootLength(path) {
85
90
  return p1 + 1; // UNC: "//server/" or "\\server\"
86
91
  }
87
92
  // Dynamic/virtual compiler file name.
88
- if (ch0 === 94 /* ^ */ && path.charCodeAt(1) === CharacterCodesSlash) {
93
+ if (ch0 === CharacterCodesCaret && path.charCodeAt(1) === CharacterCodesSlash) {
89
94
  if (path.startsWith(dynamicURIFileNamePrefix)) {
90
95
  const schemeEnd = path.indexOf(directorySeparator, dynamicURIFileNamePrefix.length);
91
96
  if (schemeEnd !== -1) {
92
97
  const authorityEnd = path.indexOf(directorySeparator, schemeEnd + 1);
93
- return authorityEnd === -1 ? path.length : authorityEnd + 1;
98
+ if (authorityEnd !== -1) {
99
+ return authorityEnd + 1;
100
+ }
101
+ return ~path.length;
94
102
  }
95
103
  }
96
104
  return 2;
@@ -364,32 +372,163 @@ function pathFromComponents(components) {
364
372
  return root + components.slice(1).join(directorySeparator);
365
373
  }
366
374
  /**
367
- * Converts a file name to a normalized path.
368
- *
369
- * @param fileName The file name to convert
370
- * @param basePath The base path to use for relative file names
371
- * @param getCanonicalFileName A function to get the canonical file name (e.g., toLowerCase for case-insensitive systems)
372
- * @returns The normalized path
375
+ * Returns the canonical key for an already rooted, normalized path under
376
+ * caseSensitivity.
377
+ */
378
+ export function pathKey(path, caseSensitivity) {
379
+ if (path.startsWith(dynamicURIFileNamePrefix)) {
380
+ let canonicalPath = path;
381
+ if (getRootLength(path) === path.length && !hasTrailingDirectorySeparator(path)) {
382
+ canonicalPath += directorySeparator;
383
+ }
384
+ return canonicalize(canonicalPath, CaseSensitivity.Sensitive);
385
+ }
386
+ return canonicalize(path, caseSensitivity);
387
+ }
388
+ /**
389
+ * Validates a canonical path key received from a trusted producer without
390
+ * applying case sensitivity again.
391
+ */
392
+ export function tryPathKeyFromCanonical(path) {
393
+ return tryRootedPathFromNormalized(path) === undefined ? undefined : path;
394
+ }
395
+ /**
396
+ * Resolves path against currentDirectory and normalizes it.
397
+ */
398
+ export function toRootedPath(path, currentDirectory) {
399
+ if (path === "") {
400
+ throw new Error("Path must not be empty");
401
+ }
402
+ if (hasRootedURLSuffix(path)) {
403
+ throw new Error(`Path must not contain a URL query or fragment: ${path}`);
404
+ }
405
+ if (getEncodedRootLength(path) === 0 &&
406
+ currentDirectory !== undefined &&
407
+ hasURLRoot(currentDirectory) &&
408
+ /[?#]/.test(path)) {
409
+ throw new Error(`Relative URL path must not contain a query or fragment: ${path}`);
410
+ }
411
+ let normalized = getNormalizedAbsolutePath(path, currentDirectory);
412
+ if (normalized === "" ||
413
+ getRootLength(normalized) === 0 ||
414
+ hasRootedURLSuffix(normalized)) {
415
+ throw new Error(`Path is not rooted: ${normalized}`);
416
+ }
417
+ if (getRootLength(normalized) === normalized.length && !hasTrailingDirectorySeparator(normalized)) {
418
+ normalized += directorySeparator;
419
+ }
420
+ return normalized;
421
+ }
422
+ /**
423
+ * Validates a path that is already rooted and normalized without changing it.
424
+ */
425
+ export function rootedPathFromNormalized(path) {
426
+ const result = tryRootedPathFromNormalized(path);
427
+ if (result === undefined) {
428
+ throw new Error(`Path is not rooted and normalized: ${path}`);
429
+ }
430
+ return result;
431
+ }
432
+ /**
433
+ * Attempts to validate a path that is already rooted and normalized without
434
+ * changing it.
435
+ */
436
+ export function tryRootedPathFromNormalized(path) {
437
+ if (hasRootedURLSuffix(path)) {
438
+ return undefined;
439
+ }
440
+ const rootLength = getRootLength(path);
441
+ if (path === "" ||
442
+ rootLength === 0 ||
443
+ path.includes("\\") ||
444
+ hasRelativePathSegment(path, rootLength) ||
445
+ path.length === rootLength && !hasTrailingDirectorySeparator(path) ||
446
+ path.length > rootLength && hasTrailingDirectorySeparator(path)) {
447
+ return undefined;
448
+ }
449
+ return path;
450
+ }
451
+ function hasRootedURLSuffix(path) {
452
+ if (!hasURLRoot(path)) {
453
+ return false;
454
+ }
455
+ const schemeEnd = path.indexOf(urlSchemeSeparator);
456
+ const suffixStart = path.search(/[?#]/);
457
+ return suffixStart >= schemeEnd + urlSchemeSeparator.length;
458
+ }
459
+ function hasURLRoot(path) {
460
+ return getEncodedRootLength(path) < 0 && path.includes(urlSchemeSeparator);
461
+ }
462
+ function hasRelativePathSegment(path, start) {
463
+ if (start === path.length) {
464
+ return false;
465
+ }
466
+ let segmentStart = start;
467
+ for (let index = start; index <= path.length; index++) {
468
+ if (index !== path.length && path.charCodeAt(index) !== CharacterCodesSlash) {
469
+ continue;
470
+ }
471
+ const segmentLength = index - segmentStart;
472
+ if (segmentLength === 0 ||
473
+ segmentLength === 1 && path.charCodeAt(segmentStart) === CharacterCodesDot ||
474
+ segmentLength === 2 &&
475
+ path.charCodeAt(segmentStart) === CharacterCodesDot &&
476
+ path.charCodeAt(segmentStart + 1) === CharacterCodesDot) {
477
+ return true;
478
+ }
479
+ segmentStart = index + 1;
480
+ }
481
+ return false;
482
+ }
483
+ /**
484
+ * Resolves fileName against currentDirectory, normalizes it, and gives it file
485
+ * intent.
486
+ */
487
+ export function toRootedFilePath(fileName, currentDirectory) {
488
+ return toRootedPath(fileName, currentDirectory);
489
+ }
490
+ /**
491
+ * Resolves directory against currentDirectory, normalizes it, and gives it
492
+ * directory intent.
493
+ */
494
+ export function toRootedDirectoryPath(directory, currentDirectory) {
495
+ return toRootedPath(directory, currentDirectory);
496
+ }
497
+ /**
498
+ * Gives a RootedPath file intent without changing it.
499
+ */
500
+ export function rootedFilePathFromPath(path) {
501
+ return path;
502
+ }
503
+ /**
504
+ * Gives a RootedPath directory intent without changing it.
373
505
  */
374
- export function toPath(fileName, basePath, getCanonicalFileName) {
375
- const nonCanonicalizedPath = isRootedDiskPath(fileName)
376
- ? normalizePath(fileName)
377
- : getNormalizedAbsolutePath(fileName, basePath);
378
- return nonCanonicalizedPath.startsWith(dynamicURIFileNamePrefix)
379
- ? nonCanonicalizedPath
380
- : getCanonicalFileName(nonCanonicalizedPath);
506
+ export function rootedDirectoryPathFromPath(path) {
507
+ return path;
381
508
  }
382
509
  /**
383
- * Creates a getCanonicalFileName function based on case sensitivity.
510
+ * Applies caseSensitivity to text used for path comparison or keys.
384
511
  */
385
- export function createGetCanonicalFileName(useCaseSensitiveFileNames) {
386
- return useCaseSensitiveFileNames ? identity : toLowerCase;
512
+ export function canonicalize(text, caseSensitivity) {
513
+ return isCaseSensitive(caseSensitivity) ? text : toFileNameLowerCase(text);
514
+ }
515
+ export function isCaseSensitive(caseSensitivity) {
516
+ return caseSensitivity === CaseSensitivity.Sensitive;
387
517
  }
388
- function identity(x) {
389
- return x;
518
+ export function isCaseInsensitive(caseSensitivity) {
519
+ return caseSensitivity === CaseSensitivity.Insensitive;
520
+ }
521
+ function toLowerCasePerCodePoint(text) {
522
+ let result = "";
523
+ for (const char of text) {
524
+ result += char.toLowerCase();
525
+ }
526
+ return result;
390
527
  }
391
- function toLowerCase(s) {
392
- return s.toLowerCase();
528
+ function toFileNameLowerCase(fileName) {
529
+ return fileNameLowerCaseRegExp.test(fileName)
530
+ ? fileName.replace(fileNameLowerCaseRegExp, toLowerCasePerCodePoint)
531
+ : fileName;
393
532
  }
394
533
  const bundledScheme = "bundled:///";
395
534
  const dynamicURIFileNamePrefix = "^/~ts-uri~/";
@@ -594,8 +733,10 @@ export function documentURIToFileName(uri) {
594
733
  return dynamicURIFileNamePrefix + scheme + "/" + encodedAuthority + "/" + encodedPath;
595
734
  }
596
735
  function encodeDynamicURIPath(path, preserveFinalExtension = true) {
597
- if (!dynamicURIPathNeedsEncoding(path) && !isRootedDiskPath(path)) {
598
- return path;
736
+ if (!dynamicURIPathNeedsEncoding(path)) {
737
+ if (!isRootedDiskPath(path)) {
738
+ return path;
739
+ }
599
740
  }
600
741
  const segments = path.split("/");
601
742
  for (let i = 0; i < segments.length; i++) {
@@ -632,16 +773,28 @@ function dynamicURIPathSegmentNeedsEncoding(segment) {
632
773
  segment.includes("\\");
633
774
  }
634
775
  function encodeDynamicURIPathSegment(segment, preserveExtension) {
635
- return dynamicURIPathSegmentNeedsEncoding(segment)
636
- ? forceEncodeDynamicURIPathSegment(segment, preserveExtension)
637
- : segment;
776
+ if (dynamicURIPathSegmentNeedsEncoding(segment)) {
777
+ return forceEncodeDynamicURIPathSegment(segment, preserveExtension);
778
+ }
779
+ return segment;
638
780
  }
639
781
  function forceEncodeDynamicURIPathSegment(segment, preserveExtension) {
640
782
  let extension = "";
641
783
  if (preserveExtension && segment !== "." && segment !== "..") {
642
784
  [segment, extension] = splitDynamicURIFileExtension(segment);
643
785
  }
644
- return dynamicURIPathSegmentEscapePrefix + encodeDynamicURIHex(segment) + "~" + extension;
786
+ let hex = "";
787
+ const encoded = encodeURIComponent(segment);
788
+ for (let i = 0; i < encoded.length; i++) {
789
+ if (encoded.charCodeAt(i) === CharacterCodesPercent) {
790
+ hex += encoded.slice(i + 1, i + 3).toLowerCase();
791
+ i += 2;
792
+ }
793
+ else {
794
+ hex += encoded.charCodeAt(i).toString(16).padStart(2, "0");
795
+ }
796
+ }
797
+ return dynamicURIPathSegmentEscapePrefix + hex + "~" + extension;
645
798
  }
646
799
  function forceEncodeDynamicURIPathSegmentWithSuffix(segment, suffix) {
647
800
  const [base, extension] = splitDynamicURIFileExtension(segment);
@@ -667,26 +820,13 @@ function getDynamicURIFileExtension(segment) {
667
820
  }
668
821
  }
669
822
  const dot = segment.lastIndexOf(".");
670
- return dot >= baseStart ? segment.substring(dot) : "";
671
- }
672
- function encodeDynamicURIHex(text) {
673
- let hex = "";
674
- const encoded = encodeURIComponent(text);
675
- for (let i = 0; i < encoded.length; i++) {
676
- if (encoded.charCodeAt(i) === CharacterCodesPercent) {
677
- hex += encoded.slice(i + 1, i + 3).toLowerCase();
678
- i += 2;
679
- }
680
- else {
681
- hex += encoded.charCodeAt(i).toString(16).padStart(2, "0");
682
- }
683
- }
684
- return hex;
823
+ return dot > segment.lastIndexOf("\\") ? segment.substring(dot) : "";
685
824
  }
686
825
  function decodeDynamicURIPath(path) {
687
- return path.includes(dynamicURIPathSegmentEscapePrefix)
688
- ? path.split("/").map(decodeDynamicURIPathSegment).join("/")
689
- : path;
826
+ if (!path.includes(dynamicURIPathSegmentEscapePrefix)) {
827
+ return path;
828
+ }
829
+ return path.split("/").map(decodeDynamicURIPathSegment).join("/");
690
830
  }
691
831
  function decodeDynamicURIPathSegment(segment) {
692
832
  if (!segment.startsWith(dynamicURIPathSegmentEscapePrefix)) {
@@ -698,25 +838,39 @@ function decodeDynamicURIPathSegment(segment) {
698
838
  }
699
839
  const encoded = segment.slice(dynamicURIPathSegmentEscapePrefix.length, separator);
700
840
  const extension = segment.slice(separator + 1);
701
- const decoded = decodeDynamicURIHex(encoded);
702
- if (decoded === undefined) {
841
+ if (encoded.length % 2 !== 0 || !/^[0-9a-f]*$/i.test(encoded)) {
842
+ return segment;
843
+ }
844
+ try {
845
+ const decoded = decodeURIComponent(encoded.replace(/../g, value => `%${value}`));
846
+ const suffix = decoded.indexOf("\0");
847
+ return suffix === -1
848
+ ? decoded + extension
849
+ : decoded.substring(0, suffix) + extension + decoded.substring(suffix + 1);
850
+ }
851
+ catch {
703
852
  return segment;
704
853
  }
705
- const suffix = decoded.indexOf("\0");
706
- return suffix === -1
707
- ? decoded + extension
708
- : decoded.substring(0, suffix) + extension + decoded.substring(suffix + 1);
709
854
  }
710
855
  function encodeDynamicURINoPath(suffix) {
711
- return dynamicURINoPathEscapePrefix + encodeDynamicURIHex(suffix) + "~";
856
+ let hex = "";
857
+ const encoded = encodeURIComponent(suffix);
858
+ for (let i = 0; i < encoded.length; i++) {
859
+ if (encoded.charCodeAt(i) === CharacterCodesPercent) {
860
+ hex += encoded.substring(i + 1, i + 3).toLowerCase();
861
+ i += 2;
862
+ }
863
+ else {
864
+ hex += encoded.charCodeAt(i).toString(16).padStart(2, "0");
865
+ }
866
+ }
867
+ return dynamicURINoPathEscapePrefix + hex + "~";
712
868
  }
713
869
  function decodeDynamicURINoPath(path) {
714
870
  if (!path.startsWith(dynamicURINoPathEscapePrefix) || !path.endsWith("~")) {
715
871
  return undefined;
716
872
  }
717
- return decodeDynamicURIHex(path.substring(dynamicURINoPathEscapePrefix.length, path.length - 1));
718
- }
719
- function decodeDynamicURIHex(encoded) {
873
+ const encoded = path.substring(dynamicURINoPathEscapePrefix.length, path.length - 1);
720
874
  if (encoded.length % 2 !== 0 || !/^[0-9a-f]*$/i.test(encoded)) {
721
875
  return undefined;
722
876
  }