@zzzen/pyright-internal 1.2.0-dev.20240114 → 1.2.0-dev.20240128

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 (144) hide show
  1. package/dist/analyzer/binder.d.ts +1 -3
  2. package/dist/analyzer/binder.js +27 -37
  3. package/dist/analyzer/binder.js.map +1 -1
  4. package/dist/analyzer/checker.d.ts +1 -3
  5. package/dist/analyzer/checker.js +325 -381
  6. package/dist/analyzer/checker.js.map +1 -1
  7. package/dist/analyzer/commentUtils.js +7 -7
  8. package/dist/analyzer/commentUtils.js.map +1 -1
  9. package/dist/analyzer/constraintSolver.js +23 -30
  10. package/dist/analyzer/constraintSolver.js.map +1 -1
  11. package/dist/analyzer/constructorTransform.js +10 -11
  12. package/dist/analyzer/constructorTransform.js.map +1 -1
  13. package/dist/analyzer/constructors.d.ts +3 -3
  14. package/dist/analyzer/constructors.js +12 -14
  15. package/dist/analyzer/constructors.js.map +1 -1
  16. package/dist/analyzer/dataClasses.js +15 -15
  17. package/dist/analyzer/dataClasses.js.map +1 -1
  18. package/dist/analyzer/decorators.d.ts +1 -2
  19. package/dist/analyzer/decorators.js +4 -1
  20. package/dist/analyzer/decorators.js.map +1 -1
  21. package/dist/analyzer/enums.d.ts +4 -2
  22. package/dist/analyzer/enums.js +99 -50
  23. package/dist/analyzer/enums.js.map +1 -1
  24. package/dist/analyzer/functionTransform.js +1 -2
  25. package/dist/analyzer/functionTransform.js.map +1 -1
  26. package/dist/analyzer/importResolver.js +3 -3
  27. package/dist/analyzer/namedTuples.js +8 -7
  28. package/dist/analyzer/namedTuples.js.map +1 -1
  29. package/dist/analyzer/operations.js +16 -19
  30. package/dist/analyzer/operations.js.map +1 -1
  31. package/dist/analyzer/parseTreeUtils.d.ts +1 -1
  32. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  33. package/dist/analyzer/patternMatching.js +22 -19
  34. package/dist/analyzer/patternMatching.js.map +1 -1
  35. package/dist/analyzer/program.js +17 -3
  36. package/dist/analyzer/program.js.map +1 -1
  37. package/dist/analyzer/properties.js +8 -8
  38. package/dist/analyzer/properties.js.map +1 -1
  39. package/dist/analyzer/protocols.js +14 -14
  40. package/dist/analyzer/protocols.js.map +1 -1
  41. package/dist/analyzer/service.js +14 -14
  42. package/dist/analyzer/service.js.map +1 -1
  43. package/dist/analyzer/sourceFile.js +12 -12
  44. package/dist/analyzer/sourceFile.js.map +1 -1
  45. package/dist/analyzer/typeEvaluator.js +839 -762
  46. package/dist/analyzer/typeEvaluator.js.map +1 -1
  47. package/dist/analyzer/typeEvaluatorTypes.d.ts +8 -8
  48. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  49. package/dist/analyzer/typeGuards.js +2 -2
  50. package/dist/analyzer/typeGuards.js.map +1 -1
  51. package/dist/analyzer/typePrinter.js +3 -4
  52. package/dist/analyzer/typePrinter.js.map +1 -1
  53. package/dist/analyzer/typeUtils.d.ts +4 -2
  54. package/dist/analyzer/typeUtils.js +13 -6
  55. package/dist/analyzer/typeUtils.js.map +1 -1
  56. package/dist/analyzer/typedDicts.js +30 -34
  57. package/dist/analyzer/typedDicts.js.map +1 -1
  58. package/dist/analyzer/types.d.ts +5 -10
  59. package/dist/analyzer/types.js +12 -39
  60. package/dist/analyzer/types.js.map +1 -1
  61. package/dist/backgroundThreadBase.js +4 -4
  62. package/dist/backgroundThreadBase.js.map +1 -1
  63. package/dist/common/commandLineOptions.d.ts +1 -0
  64. package/dist/common/commandLineOptions.js.map +1 -1
  65. package/dist/common/configOptions.d.ts +17 -0
  66. package/dist/common/configOptions.js +93 -11
  67. package/dist/common/configOptions.js.map +1 -1
  68. package/dist/common/core.d.ts +1 -1
  69. package/dist/common/core.js.map +1 -1
  70. package/dist/common/diagnosticRules.d.ts +16 -0
  71. package/dist/common/diagnosticRules.js +16 -0
  72. package/dist/common/diagnosticRules.js.map +1 -1
  73. package/dist/common/uri/baseUri.d.ts +7 -2
  74. package/dist/common/uri/baseUri.js +47 -24
  75. package/dist/common/uri/baseUri.js.map +1 -1
  76. package/dist/common/uri/emptyUri.d.ts +6 -4
  77. package/dist/common/uri/emptyUri.js +14 -9
  78. package/dist/common/uri/emptyUri.js.map +1 -1
  79. package/dist/common/uri/fileUri.d.ts +12 -4
  80. package/dist/common/uri/fileUri.js +59 -9
  81. package/dist/common/uri/fileUri.js.map +1 -1
  82. package/dist/common/uri/uri.d.ts +5 -1
  83. package/dist/common/uri/uri.js.map +1 -1
  84. package/dist/common/uri/uriUtils.js +3 -3
  85. package/dist/common/uri/webUri.d.ts +6 -1
  86. package/dist/common/uri/webUri.js +52 -12
  87. package/dist/common/uri/webUri.js.map +1 -1
  88. package/dist/languageServerBase.d.ts +1 -0
  89. package/dist/languageServerBase.js +1 -0
  90. package/dist/languageServerBase.js.map +1 -1
  91. package/dist/languageService/analyzerServiceExecutor.js +2 -0
  92. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  93. package/dist/languageService/completionProvider.js.map +1 -1
  94. package/dist/localization/localize.d.ts +4 -5
  95. package/dist/localization/localize.js +5 -3
  96. package/dist/localization/localize.js.map +1 -1
  97. package/dist/localization/package.nls.cs.json +34 -8
  98. package/dist/localization/package.nls.de.json +34 -8
  99. package/dist/localization/package.nls.en-us.json +7 -7
  100. package/dist/localization/package.nls.es.json +34 -8
  101. package/dist/localization/package.nls.fr.json +34 -8
  102. package/dist/localization/package.nls.it.json +34 -8
  103. package/dist/localization/package.nls.ja.json +34 -8
  104. package/dist/localization/package.nls.ko.json +34 -8
  105. package/dist/localization/package.nls.pl.json +34 -8
  106. package/dist/localization/package.nls.pt-br.json +34 -8
  107. package/dist/localization/package.nls.qps-ploc.json +32 -6
  108. package/dist/localization/package.nls.ru.json +34 -8
  109. package/dist/localization/package.nls.tr.json +34 -8
  110. package/dist/localization/package.nls.zh-cn.json +34 -8
  111. package/dist/localization/package.nls.zh-tw.json +34 -8
  112. package/dist/parser/parser.d.ts +1 -1
  113. package/dist/parser/parser.js +201 -201
  114. package/dist/parser/parser.js.map +1 -1
  115. package/dist/pyright.js +13 -11
  116. package/dist/pyright.js.map +1 -1
  117. package/dist/pyrightFileSystem.js +2 -2
  118. package/dist/server.js +7 -5
  119. package/dist/server.js.map +1 -1
  120. package/dist/tests/config.test.js +4 -4
  121. package/dist/tests/filesystem.test.js +2 -2
  122. package/dist/tests/fourSlashParser.test.js +1 -1
  123. package/dist/tests/harness/fourslash/testLanguageService.js +2 -0
  124. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  125. package/dist/tests/harness/fourslash/testState.js +1 -0
  126. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  127. package/dist/tests/ipythonMode.test.js +10 -10
  128. package/dist/tests/ipythonMode.test.js.map +1 -1
  129. package/dist/tests/localizer.test.js +2 -2
  130. package/dist/tests/localizer.test.js.map +1 -1
  131. package/dist/tests/typeEvaluator1.test.js +6 -6
  132. package/dist/tests/typeEvaluator2.test.js +8 -4
  133. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  134. package/dist/tests/typeEvaluator3.test.js +17 -5
  135. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  136. package/dist/tests/typeEvaluator4.test.js +3 -3
  137. package/dist/tests/typeEvaluator5.test.js +4 -0
  138. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  139. package/dist/tests/uri.test.js +65 -8
  140. package/dist/tests/uri.test.js.map +1 -1
  141. package/dist/workspaceFactory.d.ts +1 -0
  142. package/dist/workspaceFactory.js +1 -0
  143. package/dist/workspaceFactory.js.map +1 -1
  144. package/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import { Uri } from './uri';
2
+ export type JsonObjType = any;
2
3
  export declare abstract class BaseUri implements Uri {
3
4
  private readonly _key;
4
5
  protected constructor(_key: string);
@@ -18,6 +19,7 @@ export declare abstract class BaseUri implements Uri {
18
19
  isEmpty(): boolean;
19
20
  abstract toString(): string;
20
21
  abstract toUserVisibleString(): string;
22
+ abstract toJsonObj(): JsonObjType;
21
23
  abstract matchesRegex(regex: RegExp): boolean;
22
24
  replaceExtension(ext: string): Uri;
23
25
  addExtension(ext: string): Uri;
@@ -37,17 +39,20 @@ export declare abstract class BaseUri implements Uri {
37
39
  pathEndsWith(name: string): boolean;
38
40
  pathIncludes(include: string): boolean;
39
41
  abstract getPathLength(): number;
42
+ abstract resolvePaths(...paths: string[]): Uri;
40
43
  abstract combinePaths(...paths: string[]): Uri;
44
+ abstract combinePathsUnsafe(...paths: string[]): Uri;
41
45
  getRelativePath(child: Uri): string | undefined;
42
46
  getPathComponents(): readonly string[];
43
47
  abstract getPath(): string;
44
48
  abstract getFilePath(): string;
45
49
  getRelativePathComponents(to: Uri): readonly string[];
46
50
  getShortenedFileName(maxDirLength?: number): string;
47
- stripExtension(): Uri;
48
- stripAllExtensions(): Uri;
51
+ abstract stripExtension(): Uri;
52
+ abstract stripAllExtensions(): Uri;
49
53
  protected abstract getRootPath(): string;
50
54
  protected normalizeSlashes(path: string): string;
55
+ protected static combinePathElements(pathString: string, separator: string, ...paths: (string | undefined)[]): string;
51
56
  protected reducePathComponents(components: string[]): string[];
52
57
  protected abstract getComparablePath(): string;
53
58
  protected abstract getPathComponentsImpl(): string[];
@@ -6,10 +6,17 @@
6
6
  *
7
7
  * Base URI class for storing and manipulating URIs.
8
8
  */
9
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
14
+ };
9
15
  Object.defineProperty(exports, "__esModule", { value: true });
10
16
  exports.BaseUri = void 0;
11
17
  const collectionUtils_1 = require("../collectionUtils");
12
18
  const pathUtils_1 = require("../pathUtils");
19
+ const memoization_1 = require("./memoization");
13
20
  class BaseUri {
14
21
  constructor(_key) {
15
22
  this._key = _key;
@@ -42,17 +49,17 @@ class BaseUri {
42
49
  // Returns a URI where the path has __init__.py appended.
43
50
  get initPyUri() {
44
51
  // This is assuming that the current path is a directory already.
45
- return this.combinePaths('__init__.py');
52
+ return this.combinePathsUnsafe('__init__.py');
46
53
  }
47
54
  // Returns a URI where the path has __init__.pyi appended.
48
55
  get initPyiUri() {
49
56
  // This is assuming that the current path is a directory already.
50
- return this.combinePaths('__init__.pyi');
57
+ return this.combinePathsUnsafe('__init__.pyi');
51
58
  }
52
59
  // Returns a URI where the path has py.typed appended.
53
60
  get pytypedUri() {
54
61
  // This is assuming that the current path is a directory already.
55
- return this.combinePaths('py.typed');
62
+ return this.combinePathsUnsafe('py.typed');
56
63
  }
57
64
  isEmpty() {
58
65
  return false;
@@ -61,7 +68,7 @@ class BaseUri {
61
68
  const dir = this.getDirectory();
62
69
  const base = this.fileName;
63
70
  const newBase = base.slice(0, base.length - this.lastExtension.length) + ext;
64
- return dir.combinePaths(newBase);
71
+ return dir.combinePathsUnsafe(newBase);
65
72
  }
66
73
  addExtension(ext) {
67
74
  return this.addPath(ext);
@@ -143,29 +150,30 @@ class BaseUri {
143
150
  getShortenedFileName(maxDirLength = 15) {
144
151
  return (0, pathUtils_1.getShortenedFileName)(this.getPath(), maxDirLength);
145
152
  }
146
- stripExtension() {
147
- const base = this.fileName;
148
- const index = base.lastIndexOf('.');
149
- if (index > 0) {
150
- const stripped = base.slice(0, index);
151
- return this.getDirectory().combinePaths(stripped);
152
- }
153
- else {
154
- return this;
153
+ normalizeSlashes(path) {
154
+ if (path.includes('\\')) {
155
+ return path.replace(/\\/g, '/');
155
156
  }
157
+ return path;
156
158
  }
157
- stripAllExtensions() {
158
- const base = this.fileName;
159
- const stripped = base.split('.')[0];
160
- if (stripped === base) {
161
- return this;
162
- }
163
- else {
164
- return this.getDirectory().combinePaths(stripped);
159
+ static combinePathElements(pathString, separator, ...paths) {
160
+ // Borrowed this algorithm from the pathUtils combinePaths function. This is
161
+ // a quicker implementation that's possible because we assume all paths are normalized already.
162
+ for (const relativePath of paths) {
163
+ if (!relativePath) {
164
+ continue;
165
+ }
166
+ if (!pathString || (0, pathUtils_1.getRootLength)(relativePath) !== 0) {
167
+ pathString = relativePath;
168
+ }
169
+ else if (pathString.endsWith(separator)) {
170
+ pathString += relativePath;
171
+ }
172
+ else {
173
+ pathString += separator + relativePath;
174
+ }
165
175
  }
166
- }
167
- normalizeSlashes(path) {
168
- return path.replace(/\\/g, '/');
176
+ return pathString;
169
177
  }
170
178
  reducePathComponents(components) {
171
179
  if (!(0, collectionUtils_1.some)(components)) {
@@ -197,4 +205,19 @@ class BaseUri {
197
205
  }
198
206
  }
199
207
  exports.BaseUri = BaseUri;
208
+ __decorate([
209
+ (0, memoization_1.cacheProperty)()
210
+ ], BaseUri.prototype, "packageUri", null);
211
+ __decorate([
212
+ (0, memoization_1.cacheProperty)()
213
+ ], BaseUri.prototype, "packageStubUri", null);
214
+ __decorate([
215
+ (0, memoization_1.cacheProperty)()
216
+ ], BaseUri.prototype, "initPyUri", null);
217
+ __decorate([
218
+ (0, memoization_1.cacheProperty)()
219
+ ], BaseUri.prototype, "initPyiUri", null);
220
+ __decorate([
221
+ (0, memoization_1.cacheProperty)()
222
+ ], BaseUri.prototype, "pytypedUri", null);
200
223
  //# sourceMappingURL=baseUri.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseUri.js","sourceRoot":"","sources":["../../../../src/common/uri/baseUri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseUri.js","sourceRoot":"","sources":["../../../../src/common/uri/baseUri.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { BaseUri } from './baseUri';
1
+ import { JsonObjType } from './baseUri';
2
+ import { FileUri } from './fileUri';
2
3
  import { Uri } from './uri';
3
- export declare class EmptyUri extends BaseUri {
4
+ export declare class EmptyUri extends FileUri {
4
5
  private static _instance;
5
6
  private constructor();
6
7
  static get instance(): EmptyUri;
@@ -8,8 +9,8 @@ export declare class EmptyUri extends BaseUri {
8
9
  get fileName(): string;
9
10
  get lastExtension(): string;
10
11
  get root(): Uri;
11
- get isCaseSensitive(): boolean;
12
12
  get fragment(): string;
13
+ toJsonObj(): JsonObjType;
13
14
  static isEmptyUri(uri: any): boolean;
14
15
  isEmpty(): boolean;
15
16
  isLocal(): boolean;
@@ -25,11 +26,12 @@ export declare class EmptyUri extends BaseUri {
25
26
  isChild(parent: Uri): boolean;
26
27
  startsWith(other: Uri | undefined): boolean;
27
28
  getPathLength(): number;
28
- combinePaths(...paths: string[]): Uri;
29
29
  getShortenedFileName(maxDirLength: number): string;
30
30
  stripExtension(): Uri;
31
31
  withFragment(fragment: string): Uri;
32
+ stripAllExtensions(): Uri;
32
33
  protected getPathComponentsImpl(): string[];
34
+ protected normalizeSlashes(path: string): string;
33
35
  protected getRootPath(): string;
34
36
  protected getComparablePath(): string;
35
37
  }
@@ -8,11 +8,11 @@
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.EmptyUri = void 0;
11
- const baseUri_1 = require("./baseUri");
11
+ const fileUri_1 = require("./fileUri");
12
12
  const EmptyKey = '<empty>';
13
- class EmptyUri extends baseUri_1.BaseUri {
13
+ class EmptyUri extends fileUri_1.FileUri {
14
14
  constructor() {
15
- super(EmptyKey);
15
+ super(EmptyKey, '', '', '', undefined, /* isCaseSensitive */ true);
16
16
  }
17
17
  static get instance() {
18
18
  return EmptyUri._instance;
@@ -29,12 +29,14 @@ class EmptyUri extends baseUri_1.BaseUri {
29
29
  get root() {
30
30
  return this;
31
31
  }
32
- get isCaseSensitive() {
33
- return true;
34
- }
35
32
  get fragment() {
36
33
  return '';
37
34
  }
35
+ toJsonObj() {
36
+ return {
37
+ _key: EmptyKey,
38
+ };
39
+ }
38
40
  static isEmptyUri(uri) {
39
41
  return (uri === null || uri === void 0 ? void 0 : uri._key) === EmptyKey;
40
42
  }
@@ -80,9 +82,6 @@ class EmptyUri extends baseUri_1.BaseUri {
80
82
  getPathLength() {
81
83
  return 0;
82
84
  }
83
- combinePaths(...paths) {
84
- return this;
85
- }
86
85
  getShortenedFileName(maxDirLength) {
87
86
  return '';
88
87
  }
@@ -92,9 +91,15 @@ class EmptyUri extends baseUri_1.BaseUri {
92
91
  withFragment(fragment) {
93
92
  return this;
94
93
  }
94
+ stripAllExtensions() {
95
+ return this;
96
+ }
95
97
  getPathComponentsImpl() {
96
98
  return [];
97
99
  }
100
+ normalizeSlashes(path) {
101
+ return '';
102
+ }
98
103
  getRootPath() {
99
104
  return '';
100
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"emptyUri.js","sourceRoot":"","sources":["../../../../src/common/uri/emptyUri.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,uCAAoC;AAGpC,MAAM,QAAQ,GAAG,SAAS,CAAC;AAE3B,MAAa,QAAS,SAAQ,iBAAO;IAEjC;QACI,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,KAAK,QAAQ;QACf,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC9B,CAAC;IAED,IAAa,MAAM;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,QAAQ;QACjB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,aAAa;QACtB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,IAAI;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,eAAe;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAQ;QACtB,OAAO,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,QAAQ,CAAC;IAClC,CAAC;IAEQ,OAAO;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,OAAO;QACZ,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,OAAO;QACZ,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,WAAW;QAChB,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,QAAQ;QACb,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,mBAAmB;QACxB,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,YAAY,CAAC,KAAa;QAC/B,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,gBAAgB,CAAC,GAAW;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IACQ,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,YAAY;QACjB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,MAAM;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,OAAO,CAAC,MAAW;QACxB,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,UAAU,CAAC,KAAsB;QACtC,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,aAAa;QAClB,OAAO,CAAC,CAAC;IACb,CAAC;IAEQ,YAAY,CAAC,GAAG,KAAe;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,oBAAoB,CAAC,YAAoB;QAC9C,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,cAAc;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEkB,qBAAqB;QACpC,OAAO,EAAE,CAAC;IACd,CAAC;IAEkB,WAAW;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IAEkB,iBAAiB;QAChC,OAAO,EAAE,CAAC;IACd,CAAC;;AAvHL,4BAwHC;AAvHkB,kBAAS,GAAG,IAAI,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"emptyUri.js","sourceRoot":"","sources":["../../../../src/common/uri/emptyUri.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAGH,uCAAoC;AAGpC,MAAM,QAAQ,GAAG,SAAS,CAAC;AAE3B,MAAa,QAAS,SAAQ,iBAAO;IAEjC;QACI,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,KAAK,QAAQ;QACf,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC9B,CAAC;IAED,IAAa,MAAM;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,QAAQ;QACjB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,aAAa;QACtB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAa,IAAI;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAa,QAAQ;QACjB,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,IAAI,EAAE,QAAQ;SACjB,CAAC;IACN,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAQ;QACtB,OAAO,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,QAAQ,CAAC;IAClC,CAAC;IAEQ,OAAO;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,OAAO;QACZ,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,OAAO;QACZ,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,WAAW;QAChB,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,QAAQ;QACb,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,mBAAmB;QACxB,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,YAAY,CAAC,KAAa;QAC/B,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,gBAAgB,CAAC,GAAW;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IACQ,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,YAAY;QACjB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,MAAM;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,OAAO,CAAC,MAAW;QACxB,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,UAAU,CAAC,KAAsB;QACtC,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,aAAa;QAClB,OAAO,CAAC,CAAC;IACb,CAAC;IAEQ,oBAAoB,CAAC,YAAoB;QAC9C,OAAO,EAAE,CAAC;IACd,CAAC;IAEQ,cAAc;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,YAAY,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,kBAAkB;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEkB,qBAAqB;QACpC,OAAO,EAAE,CAAC;IACd,CAAC;IAEkB,gBAAgB,CAAC,IAAY;QAC5C,OAAO,EAAE,CAAC;IACd,CAAC;IAEkB,WAAW;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IAEkB,iBAAiB;QAChC,OAAO,EAAE,CAAC;IACd,CAAC;;AA7HL,4BA8HC;AA7HkB,kBAAS,GAAG,IAAI,QAAQ,EAAE,CAAC"}
@@ -1,5 +1,6 @@
1
- import { BaseUri } from './baseUri';
1
+ import { BaseUri, JsonObjType } from './baseUri';
2
2
  import { Uri } from './uri';
3
+ type SerializedType = [0, string, string, string, string | undefined, 1 | 0];
3
4
  export declare class FileUri extends BaseUri {
4
5
  private readonly _filePath;
5
6
  private readonly _query;
@@ -7,7 +8,8 @@ export declare class FileUri extends BaseUri {
7
8
  private readonly _originalString;
8
9
  private readonly _isCaseSensitive;
9
10
  private _formattedString;
10
- private constructor();
11
+ private static _separator;
12
+ protected constructor(key: string, _filePath: string, _query: string, _fragment: string, _originalString: string | undefined, _isCaseSensitive: boolean);
11
13
  get scheme(): string;
12
14
  get fragment(): string;
13
15
  get fileName(): string;
@@ -15,8 +17,9 @@ export declare class FileUri extends BaseUri {
15
17
  get root(): Uri;
16
18
  get isCaseSensitive(): boolean;
17
19
  static createFileUri(filePath: string, query: string, fragment: string, originalString: string | undefined, isCaseSensitive: boolean): FileUri;
18
- static isFileUri(uri: any): uri is FileUri;
19
- static fromJsonObj(obj: FileUri): FileUri;
20
+ static isFileUri(uri: any): uri is FileUri | SerializedType;
21
+ static fromJsonObj(obj: FileUri | SerializedType): FileUri;
22
+ toJsonObj(): JsonObjType;
20
23
  matchesRegex(regex: RegExp): boolean;
21
24
  toString(): string;
22
25
  toUserVisibleString(): string;
@@ -28,11 +31,16 @@ export declare class FileUri extends BaseUri {
28
31
  getPathLength(): number;
29
32
  getPath(): string;
30
33
  getFilePath(): string;
34
+ resolvePaths(...paths: string[]): Uri;
31
35
  combinePaths(...paths: string[]): Uri;
36
+ combinePathsUnsafe(...paths: string[]): Uri;
32
37
  getDirectory(): Uri;
33
38
  withFragment(fragment: string): Uri;
39
+ stripExtension(): Uri;
40
+ stripAllExtensions(): Uri;
34
41
  protected getPathComponentsImpl(): string[];
35
42
  protected getRootPath(): string;
36
43
  protected getComparablePath(): string;
37
44
  private static _createKey;
38
45
  }
46
+ export {};
@@ -15,6 +15,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.FileUri = void 0;
17
17
  const vscode_uri_1 = require("vscode-uri");
18
+ const core_1 = require("../core");
18
19
  const pathUtils_1 = require("../pathUtils");
19
20
  const baseUri_1 = require("./baseUri");
20
21
  const memoization_1 = require("./memoization");
@@ -54,11 +55,28 @@ class FileUri extends baseUri_1.BaseUri {
54
55
  return new FileUri(key, filePath, query, fragment, originalString, isCaseSensitive);
55
56
  }
56
57
  static isFileUri(uri) {
58
+ if ((0, core_1.isArray)(uri) && uri[0] === 0 && uri.length === 6) {
59
+ return true;
60
+ }
57
61
  return (uri === null || uri === void 0 ? void 0 : uri._filePath) !== undefined && (uri === null || uri === void 0 ? void 0 : uri._key) !== undefined;
58
62
  }
59
63
  static fromJsonObj(obj) {
64
+ if ((0, core_1.isArray)(obj)) {
65
+ return FileUri.createFileUri(obj[1], obj[2], obj[3], obj[4], obj[5] === 1 ? true : false);
66
+ }
60
67
  return FileUri.createFileUri(obj._filePath, obj._query, obj._fragment, obj._originalString, obj._isCaseSensitive);
61
68
  }
69
+ toJsonObj() {
70
+ const jsonObj = [
71
+ 0,
72
+ this._filePath,
73
+ this._query,
74
+ this._fragment,
75
+ this._originalString,
76
+ this._isCaseSensitive ? 1 : 0,
77
+ ];
78
+ return jsonObj;
79
+ }
62
80
  matchesRegex(regex) {
63
81
  // Compare the regex to our path but normalize it for comparison.
64
82
  // The regex assumes it's comparing itself to a URI path.
@@ -92,18 +110,17 @@ class FileUri extends baseUri_1.BaseUri {
92
110
  return true;
93
111
  }
94
112
  startsWith(other) {
95
- if (!other || !FileUri.isFileUri(other)) {
96
- return false;
97
- }
98
- if (other.isEmpty() !== this.isEmpty()) {
113
+ if ((other === null || other === void 0 ? void 0 : other.scheme) !== this.scheme) {
99
114
  return false;
100
115
  }
101
- if (this._filePath.length >= other._filePath.length) {
116
+ const otherFileUri = other;
117
+ if (this._filePath.length >= otherFileUri._filePath.length) {
102
118
  // Make sure the other ends with a / when comparing longer paths, otherwise we might
103
119
  // say that /a/food is a child of /a/foo.
104
- const otherPath = this._filePath.length > other._filePath.length && !(0, pathUtils_1.hasTrailingDirectorySeparator)(other._filePath)
105
- ? (0, pathUtils_1.ensureTrailingDirectorySeparator)(other._filePath)
106
- : other._filePath;
120
+ const otherPath = this._filePath.length > otherFileUri._filePath.length &&
121
+ !(0, pathUtils_1.hasTrailingDirectorySeparator)(otherFileUri._filePath)
122
+ ? (0, pathUtils_1.ensureTrailingDirectorySeparator)(otherFileUri._filePath)
123
+ : otherFileUri._filePath;
107
124
  if (!this.isCaseSensitive) {
108
125
  return this._filePath.toLowerCase().startsWith(otherPath.toLowerCase());
109
126
  }
@@ -120,7 +137,7 @@ class FileUri extends baseUri_1.BaseUri {
120
137
  getFilePath() {
121
138
  return this._filePath;
122
139
  }
123
- combinePaths(...paths) {
140
+ resolvePaths(...paths) {
124
141
  // Resolve and combine paths, never want URIs with '..' in the middle.
125
142
  let combined = (0, pathUtils_1.resolvePaths)(this._filePath, ...paths);
126
143
  // Make sure to remove any trailing directory chars.
@@ -132,6 +149,24 @@ class FileUri extends baseUri_1.BaseUri {
132
149
  }
133
150
  return this;
134
151
  }
152
+ combinePaths(...paths) {
153
+ if (paths.some((p) => p.includes('..') || p.includes(FileUri._separator) || p.includes('/') || p === '.')) {
154
+ // This is a slow path that handles paths that contain '..' or '.'.
155
+ return this.resolvePaths(...paths);
156
+ }
157
+ // Paths don't have any thing special that needs to be combined differently, so just
158
+ // use the quick method.
159
+ return this.combinePathsUnsafe(...paths);
160
+ }
161
+ combinePathsUnsafe(...paths) {
162
+ // Combine paths using the quicker path implementation as we
163
+ // assume all data is already normalized.
164
+ const combined = baseUri_1.BaseUri.combinePathElements(this._filePath, FileUri._separator, ...paths);
165
+ if (combined !== this._filePath) {
166
+ return FileUri.createFileUri(combined, '', '', undefined, this._isCaseSensitive);
167
+ }
168
+ return this;
169
+ }
135
170
  getDirectory() {
136
171
  const filePath = this._filePath;
137
172
  let dir = (0, pathUtils_1.getDirectoryPath)(filePath);
@@ -148,6 +183,20 @@ class FileUri extends baseUri_1.BaseUri {
148
183
  withFragment(fragment) {
149
184
  return FileUri.createFileUri(this._filePath, this._query, fragment, undefined, this._isCaseSensitive);
150
185
  }
186
+ stripExtension() {
187
+ const stripped = (0, pathUtils_1.stripFileExtension)(this._filePath);
188
+ if (stripped !== this._filePath) {
189
+ return FileUri.createFileUri(stripped, this._query, this._fragment, undefined, this._isCaseSensitive);
190
+ }
191
+ return this;
192
+ }
193
+ stripAllExtensions() {
194
+ const stripped = (0, pathUtils_1.stripFileExtension)(this._filePath, /* multiDotExtension */ true);
195
+ if (stripped !== this._filePath) {
196
+ return FileUri.createFileUri(stripped, this._query, this._fragment, undefined, this._isCaseSensitive);
197
+ }
198
+ return this;
199
+ }
151
200
  getPathComponentsImpl() {
152
201
  const components = (0, pathUtils_1.getPathComponents)(this._filePath);
153
202
  // Remove the first one if it's empty. The new algorithm doesn't
@@ -168,6 +217,7 @@ class FileUri extends baseUri_1.BaseUri {
168
217
  }
169
218
  }
170
219
  exports.FileUri = FileUri;
220
+ FileUri._separator = (0, pathUtils_1.getPathSeparator)('');
171
221
  __decorate([
172
222
  (0, memoization_1.cacheProperty)()
173
223
  ], FileUri.prototype, "fileName", null);
@@ -1 +1 @@
1
- {"version":3,"file":"fileUri.js","sourceRoot":"","sources":["../../../../src/common/uri/fileUri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileUri.js","sourceRoot":"","sources":["../../../../src/common/uri/fileUri.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;AAEH,2CAAiC;AACjC,kCAAkC;AAClC,4CAasB;AACtB,uCAAiD;AACjD,+CAAsF;AAKtF,MAAa,OAAQ,SAAQ,iBAAO;IAGhC,YACI,GAAW,EACM,SAAiB,EACjB,MAAc,EACd,SAAiB,EACjB,eAAmC,EACnC,gBAAyB;QAE1C,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QANjC,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAQ;QACjB,oBAAe,GAAf,eAAe,CAAoB;QACnC,qBAAgB,GAAhB,gBAAgB,CAAS;IAG9C,CAAC;IAED,IAAa,MAAM;QACf,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAGD,IAAa,QAAQ;QACjB,OAAO,IAAA,uBAAW,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAGD,IAAa,aAAa;QACtB,OAAO,IAAA,4BAAgB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAGD,IAAa,IAAI;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACpF;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAGM,AAAP,MAAM,CAAC,aAAa,CAChB,QAAgB,EAChB,KAAa,EACb,QAAgB,EAChB,cAAkC,EAClC,eAAwB;QAExB,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1D,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,GAAQ;QACrB,IAAI,IAAA,cAAO,EAAiB,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YAClE,OAAO,IAAI,CAAC;SACf;QAED,OAAO,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,SAAS,MAAK,SAAS,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,SAAS,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAA6B;QAC5C,IAAI,IAAA,cAAO,EAAiB,GAAG,CAAC,EAAE;YAC9B,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC7F;QAED,OAAO,OAAO,CAAC,aAAa,CACxB,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,eAAe,EACnB,GAAG,CAAC,gBAAgB,CACvB,CAAC;IACN,CAAC;IAED,SAAS;QACL,MAAM,OAAO,GAAmB;YAC5B,CAAC;YACD,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAChC,CAAC;QACF,OAAO,OAAO,CAAC;IACnB,CAAC;IAEQ,YAAY,CAAC,KAAa;QAC/B,iEAAiE;QACjE,yDAAyD;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAEQ,QAAQ;QACb,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,IAAI,CAAC,gBAAgB;gBACjB,IAAI,CAAC,eAAe;oBACpB,gBAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;SAClG;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAEQ,mBAAmB;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEQ,OAAO,CAAC,KAAa;QAC1B,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnG,CAAC;IAEQ,MAAM;QACX,OAAO,IAAA,0BAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAEQ,OAAO,CAAC,MAAW;QACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAC5B,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACtF,CAAC;IAEQ,OAAO;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,UAAU,CAAC,KAAsB;QACtC,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,MAAK,IAAI,CAAC,MAAM,EAAE;YAC/B,OAAO,KAAK,CAAC;SAChB;QACD,MAAM,YAAY,GAAG,KAAgB,CAAC;QACtC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE;YACxD,oFAAoF;YACpF,yCAAyC;YACzC,MAAM,SAAS,GACX,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM;gBACrD,CAAC,IAAA,yCAA6B,EAAC,YAAY,CAAC,SAAS,CAAC;gBAClD,CAAC,CAAC,IAAA,4CAAgC,EAAC,YAAY,CAAC,SAAS,CAAC;gBAC1D,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;YAEjC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACvB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;aAC3E;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SAC/C;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IACQ,aAAa;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACjC,CAAC;IACQ,OAAO;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IACQ,WAAW;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEQ,YAAY,CAAC,GAAG,KAAe;QACpC,sEAAsE;QACtE,IAAI,QAAQ,GAAG,IAAA,wBAAY,EAAC,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC;QAEtD,oDAAoD;QACpD,IAAI,IAAA,yCAA6B,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAChE,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SACrD;QACD,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACpF;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,YAAY,CAAC,GAAG,KAAe;QACpC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE;YACvG,mEAAmE;YACnE,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC;SACtC;QAED,oFAAoF;QACpF,wBAAwB;QACxB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC;IAC7C,CAAC;IAEQ,kBAAkB,CAAC,GAAG,KAAe;QAC1C,4DAA4D;QAC5D,yCAAyC;QACzC,MAAM,QAAQ,GAAG,iBAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC;QAC3F,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACpF;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGQ,YAAY;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,GAAG,GAAG,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,IAAA,yCAA6B,EAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACtD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SAC1B;QACD,IAAI,GAAG,KAAK,QAAQ,EAAE;YAClB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAC/E;aAAM;YACH,OAAO,IAAI,CAAC;SACf;IACL,CAAC;IAED,YAAY,CAAC,QAAgB;QACzB,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC1G,CAAC;IAEQ,cAAc;QACnB,MAAM,QAAQ,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACzG;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEQ,kBAAkB;QACvB,MAAM,QAAQ,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAClF,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACzG;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEkB,qBAAqB;QACpC,MAAM,UAAU,GAAG,IAAA,6BAAiB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrD,gEAAgE;QAChE,2BAA2B;QAC3B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/C,UAAU,CAAC,KAAK,EAAE,CAAC;SACtB;QACD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEkB,WAAW;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,IAAA,yBAAa,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAClE,CAAC;IAEkB,iBAAiB;QAChC,OAAO,IAAA,4BAAgB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,QAAgB,EAAE,KAAa,EAAE,QAAgB;QACvE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACrF,CAAC;;AA3PL,0BA4PC;AA1PkB,kBAAU,GAAG,IAAA,4BAAgB,EAAC,EAAE,CAAC,CAAC;AAqBjD;IADC,IAAA,2BAAa,GAAE;uCAGf;AAGD;IADC,IAAA,2BAAa,GAAE;4CAGf;AAGD;IADC,IAAA,2BAAa,GAAE;mCAOf;AA+JQ;IADR,IAAA,mCAAqB,GAAE;2CAYvB;AAnKM;IADN,IAAA,6BAAe,GAAE;kCAUjB"}
@@ -1,3 +1,4 @@
1
+ import { JsonObjType } from './baseUri';
1
2
  export interface Uri {
2
3
  readonly key: string;
3
4
  readonly scheme: string;
@@ -29,7 +30,9 @@ export interface Uri {
29
30
  getDirectory(): Uri;
30
31
  getRootPathLength(): number;
31
32
  getPathLength(): number;
33
+ resolvePaths(...paths: string[]): Uri;
32
34
  combinePaths(...paths: string[]): Uri;
35
+ combinePathsUnsafe(...paths: string[]): Uri;
33
36
  getRelativePath(child: Uri): string | undefined;
34
37
  getPathComponents(): readonly string[];
35
38
  getPath(): string;
@@ -43,11 +46,12 @@ export interface Uri {
43
46
  hasExtension(ext: string): boolean;
44
47
  containsExtension(ext: string): boolean;
45
48
  withFragment(fragment: string): Uri;
49
+ toJsonObj(): any;
46
50
  }
47
51
  export declare namespace Uri {
48
52
  function file(path: string, isCaseSensitive?: boolean, checkRelative?: boolean): Uri;
49
53
  function empty(): Uri;
50
- function fromJsonObj(jsonObj: any): any;
54
+ function fromJsonObj(jsonObj: JsonObjType): any;
51
55
  function parse(value: string | undefined, isCaseSensitive: boolean): Uri;
52
56
  function isUri(thing: any): thing is Uri;
53
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../../../src/common/uri/uri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../../../src/common/uri/uri.ts"],"names":[],"mappings":"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"}
@@ -181,7 +181,7 @@ exports.setTestingMode = setTestingMode;
181
181
  // escape characters **, * or ?) and returns a regular expression
182
182
  // that can be used for matching against.
183
183
  function getWildcardRegexPattern(root, fileSpec) {
184
- const absolutePath = root.combinePaths(fileSpec);
184
+ const absolutePath = root.resolvePaths(fileSpec);
185
185
  const pathComponents = Array.from(absolutePath.getPathComponents());
186
186
  const escapedSeparator = (0, pathUtils_1.getRegexEscapedSeparator)('/');
187
187
  const doubleAsteriskRegexFragment = `(${escapedSeparator}[^${escapedSeparator}][^${escapedSeparator}]*)*?`;
@@ -220,7 +220,7 @@ function getWildcardRegexPattern(root, fileSpec) {
220
220
  exports.getWildcardRegexPattern = getWildcardRegexPattern;
221
221
  // Returns the topmost path that contains no wildcard characters.
222
222
  function getWildcardRoot(root, fileSpec) {
223
- const absolutePath = root.combinePaths(fileSpec);
223
+ const absolutePath = root.resolvePaths(fileSpec);
224
224
  // make a copy of the path components so we can modify them.
225
225
  const pathComponents = Array.from(absolutePath.getPathComponents());
226
226
  let wildcardRoot = absolutePath.root;
@@ -236,7 +236,7 @@ function getWildcardRoot(root, fileSpec) {
236
236
  if (/[*?]/.test(component)) {
237
237
  break;
238
238
  }
239
- wildcardRoot = wildcardRoot.combinePaths(component);
239
+ wildcardRoot = wildcardRoot.resolvePaths(component);
240
240
  }
241
241
  }
242
242
  return wildcardRoot;
@@ -1,4 +1,4 @@
1
- import { BaseUri } from './baseUri';
1
+ import { BaseUri, JsonObjType } from './baseUri';
2
2
  import { Uri } from './uri';
3
3
  export declare class WebUri extends BaseUri {
4
4
  private readonly _scheme;
@@ -19,6 +19,7 @@ export declare class WebUri extends BaseUri {
19
19
  toUserVisibleString(): string;
20
20
  static isWebUri(uri: any): uri is WebUri;
21
21
  static fromJsonObj(obj: WebUri): WebUri;
22
+ toJsonObj(): JsonObjType;
22
23
  matchesRegex(regex: RegExp): boolean;
23
24
  addPath(extra: string): Uri;
24
25
  isRoot(): boolean;
@@ -28,9 +29,13 @@ export declare class WebUri extends BaseUri {
28
29
  getPathLength(): number;
29
30
  getPath(): string;
30
31
  getFilePath(): string;
32
+ resolvePaths(...paths: string[]): Uri;
31
33
  combinePaths(...paths: string[]): Uri;
34
+ combinePathsUnsafe(...paths: string[]): Uri;
32
35
  getDirectory(): Uri;
33
36
  withFragment(fragment: string): Uri;
37
+ stripExtension(): Uri;
38
+ stripAllExtensions(): Uri;
34
39
  protected getPathComponentsImpl(): string[];
35
40
  protected getRootPath(): string;
36
41
  protected getComparablePath(): string;