@zzzen/pyright-internal 1.2.0-dev.20230430 → 1.2.0-dev.20230507

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 (160) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +3 -0
  2. package/dist/analyzer/backgroundAnalysisProgram.js +12 -0
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/checker.d.ts +1 -0
  5. package/dist/analyzer/checker.js +52 -4
  6. package/dist/analyzer/checker.js.map +1 -1
  7. package/dist/analyzer/constructors.d.ts +6 -0
  8. package/dist/analyzer/constructors.js +456 -0
  9. package/dist/analyzer/constructors.js.map +1 -0
  10. package/dist/analyzer/dataClasses.js +84 -0
  11. package/dist/analyzer/dataClasses.js.map +1 -1
  12. package/dist/analyzer/enums.js +54 -8
  13. package/dist/analyzer/enums.js.map +1 -1
  14. package/dist/analyzer/importStatementUtils.d.ts +2 -2
  15. package/dist/analyzer/importStatementUtils.js.map +1 -1
  16. package/dist/analyzer/namedTuples.js +1 -1
  17. package/dist/analyzer/namedTuples.js.map +1 -1
  18. package/dist/analyzer/operations.d.ts +16 -0
  19. package/dist/analyzer/operations.js +749 -0
  20. package/dist/analyzer/operations.js.map +1 -0
  21. package/dist/analyzer/parseTreeUtils.d.ts +4 -2
  22. package/dist/analyzer/parseTreeUtils.js +32 -1
  23. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  24. package/dist/analyzer/patternMatching.js +16 -0
  25. package/dist/analyzer/patternMatching.js.map +1 -1
  26. package/dist/analyzer/program.d.ts +5 -17
  27. package/dist/analyzer/program.js +46 -493
  28. package/dist/analyzer/program.js.map +1 -1
  29. package/dist/analyzer/service.d.ts +3 -11
  30. package/dist/analyzer/service.js +16 -12
  31. package/dist/analyzer/service.js.map +1 -1
  32. package/dist/analyzer/sourceFile.d.ts +10 -33
  33. package/dist/analyzer/sourceFile.js +225 -181
  34. package/dist/analyzer/sourceFile.js.map +1 -1
  35. package/dist/analyzer/sourceFileInfoUtils.d.ts +3 -9
  36. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  37. package/dist/analyzer/typeEvaluator.js +100 -1285
  38. package/dist/analyzer/typeEvaluator.js.map +1 -1
  39. package/dist/analyzer/typeEvaluatorTypes.d.ts +38 -7
  40. package/dist/analyzer/typeEvaluatorTypes.js +33 -1
  41. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  42. package/dist/analyzer/typeGuards.js +2 -8
  43. package/dist/analyzer/typeGuards.js.map +1 -1
  44. package/dist/analyzer/typeUtils.d.ts +2 -0
  45. package/dist/analyzer/typeUtils.js +33 -3
  46. package/dist/analyzer/typeUtils.js.map +1 -1
  47. package/dist/analyzer/typeVarContext.d.ts +5 -5
  48. package/dist/analyzer/typeVarContext.js +7 -0
  49. package/dist/analyzer/typeVarContext.js.map +1 -1
  50. package/dist/analyzer/typedDicts.js +2 -2
  51. package/dist/analyzer/typedDicts.js.map +1 -1
  52. package/dist/analyzer/types.d.ts +4 -2
  53. package/dist/analyzer/types.js +7 -0
  54. package/dist/analyzer/types.js.map +1 -1
  55. package/dist/common/extensibility.d.ts +2 -1
  56. package/dist/common/extensibility.js.map +1 -1
  57. package/dist/common/pathUtils.d.ts +11 -11
  58. package/dist/common/pathUtils.js.map +1 -1
  59. package/dist/common/workspaceEditUtils.d.ts +5 -5
  60. package/dist/common/workspaceEditUtils.js.map +1 -1
  61. package/dist/languageServerBase.d.ts +1 -2
  62. package/dist/languageServerBase.js +8 -13
  63. package/dist/languageServerBase.js.map +1 -1
  64. package/dist/languageService/callHierarchyProvider.d.ts +1 -1
  65. package/dist/languageService/callHierarchyProvider.js +5 -5
  66. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  67. package/dist/languageService/completionProvider.d.ts +10 -13
  68. package/dist/languageService/completionProvider.js +21 -10
  69. package/dist/languageService/completionProvider.js.map +1 -1
  70. package/dist/languageService/documentHighlightProvider.js +1 -1
  71. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  72. package/dist/languageService/documentSymbolCollector.d.ts +6 -7
  73. package/dist/languageService/documentSymbolCollector.js +17 -8
  74. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  75. package/dist/languageService/hoverProvider.d.ts +4 -3
  76. package/dist/languageService/hoverProvider.js +29 -35
  77. package/dist/languageService/hoverProvider.js.map +1 -1
  78. package/dist/languageService/referencesProvider.d.ts +7 -12
  79. package/dist/languageService/referencesProvider.js +25 -17
  80. package/dist/languageService/referencesProvider.js.map +1 -1
  81. package/dist/languageService/renameProvider.d.ts +17 -0
  82. package/dist/languageService/renameProvider.js +143 -0
  83. package/dist/languageService/renameProvider.js.map +1 -0
  84. package/dist/localization/localize.d.ts +17 -14
  85. package/dist/localization/localize.js +4 -6
  86. package/dist/localization/localize.js.map +1 -1
  87. package/dist/localization/package.nls.en-us.json +5 -6
  88. package/dist/tests/documentSymbolCollector.test.js +3 -3
  89. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  90. package/dist/tests/fourslash/fourslash.d.ts +4 -4
  91. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js +1 -1
  92. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js.map +1 -1
  93. package/dist/tests/harness/fourslash/testState.d.ts +3 -3
  94. package/dist/tests/harness/fourslash/testState.js +14 -14
  95. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  96. package/dist/tests/sourceFile.test.js +1 -1
  97. package/dist/tests/sourceFile.test.js.map +1 -1
  98. package/dist/tests/testStateUtils.d.ts +2 -2
  99. package/dist/tests/testStateUtils.js +38 -8
  100. package/dist/tests/testStateUtils.js.map +1 -1
  101. package/dist/tests/typeEvaluator2.test.js +1 -1
  102. package/dist/tests/typeEvaluator3.test.js +1 -1
  103. package/dist/tests/typeEvaluator4.test.js +9 -1
  104. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  105. package/dist/tests/typeEvaluator5.test.js +4 -0
  106. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  107. package/dist/tests/workspaceEditUtils.test.js +84 -0
  108. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  109. package/package.json +4 -4
  110. package/dist/languageService/indentationUtils.d.ts +0 -16
  111. package/dist/languageService/indentationUtils.js +0 -727
  112. package/dist/languageService/indentationUtils.js.map +0 -1
  113. package/dist/languageService/insertionPointUtils.d.ts +0 -9
  114. package/dist/languageService/insertionPointUtils.js +0 -132
  115. package/dist/languageService/insertionPointUtils.js.map +0 -1
  116. package/dist/languageService/renameModuleProvider.d.ts +0 -65
  117. package/dist/languageService/renameModuleProvider.js +0 -939
  118. package/dist/languageService/renameModuleProvider.js.map +0 -1
  119. package/dist/tests/indentationUtils.ptvs.test.d.ts +0 -1
  120. package/dist/tests/indentationUtils.ptvs.test.js +0 -324
  121. package/dist/tests/indentationUtils.ptvs.test.js.map +0 -1
  122. package/dist/tests/indentationUtils.reindent.test.d.ts +0 -1
  123. package/dist/tests/indentationUtils.reindent.test.js +0 -372
  124. package/dist/tests/indentationUtils.reindent.test.js.map +0 -1
  125. package/dist/tests/indentationUtils.test.d.ts +0 -1
  126. package/dist/tests/indentationUtils.test.js +0 -502
  127. package/dist/tests/indentationUtils.test.js.map +0 -1
  128. package/dist/tests/insertionPointUtils.test.d.ts +0 -1
  129. package/dist/tests/insertionPointUtils.test.js +0 -154
  130. package/dist/tests/insertionPointUtils.test.js.map +0 -1
  131. package/dist/tests/moveSymbol.importAdder.test.d.ts +0 -1
  132. package/dist/tests/moveSymbol.importAdder.test.js +0 -298
  133. package/dist/tests/moveSymbol.importAdder.test.js.map +0 -1
  134. package/dist/tests/moveSymbol.insertion.test.d.ts +0 -1
  135. package/dist/tests/moveSymbol.insertion.test.js +0 -537
  136. package/dist/tests/moveSymbol.insertion.test.js.map +0 -1
  137. package/dist/tests/moveSymbol.misc.test.d.ts +0 -1
  138. package/dist/tests/moveSymbol.misc.test.js +0 -169
  139. package/dist/tests/moveSymbol.misc.test.js.map +0 -1
  140. package/dist/tests/moveSymbol.updateReference.test.d.ts +0 -1
  141. package/dist/tests/moveSymbol.updateReference.test.js +0 -1071
  142. package/dist/tests/moveSymbol.updateReference.test.js.map +0 -1
  143. package/dist/tests/renameModule.folder.test.d.ts +0 -1
  144. package/dist/tests/renameModule.folder.test.js +0 -229
  145. package/dist/tests/renameModule.folder.test.js.map +0 -1
  146. package/dist/tests/renameModule.fromImports.test.d.ts +0 -1
  147. package/dist/tests/renameModule.fromImports.test.js +0 -790
  148. package/dist/tests/renameModule.fromImports.test.js.map +0 -1
  149. package/dist/tests/renameModule.imports.test.d.ts +0 -1
  150. package/dist/tests/renameModule.imports.test.js +0 -380
  151. package/dist/tests/renameModule.imports.test.js.map +0 -1
  152. package/dist/tests/renameModule.misc.test.d.ts +0 -1
  153. package/dist/tests/renameModule.misc.test.js +0 -615
  154. package/dist/tests/renameModule.misc.test.js.map +0 -1
  155. package/dist/tests/renameModule.relativePath.test.d.ts +0 -1
  156. package/dist/tests/renameModule.relativePath.test.js +0 -231
  157. package/dist/tests/renameModule.relativePath.test.js.map +0 -1
  158. package/dist/tests/renameModuleTestUtils.d.ts +0 -4
  159. package/dist/tests/renameModuleTestUtils.js +0 -76
  160. package/dist/tests/renameModuleTestUtils.js.map +0 -1
@@ -51,10 +51,10 @@ var DocumentSymbolCollectorUseCase;
51
51
  // This walker looks for symbols that are semantically equivalent
52
52
  // to the requested symbol.
53
53
  class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
54
- constructor(symbolNames, _declarations, _evaluator, _cancellationToken, _startingNode, _treatModuleInImportAndFromImportSame = false, _skipUnreachableCode = true, _useCase = DocumentSymbolCollectorUseCase.Reference) {
54
+ constructor(_program, symbolNames, _declarations, _cancellationToken, _startingNode, _treatModuleInImportAndFromImportSame = false, _skipUnreachableCode = true, _useCase = DocumentSymbolCollectorUseCase.Reference) {
55
55
  super();
56
+ this._program = _program;
56
57
  this._declarations = _declarations;
57
- this._evaluator = _evaluator;
58
58
  this._cancellationToken = _cancellationToken;
59
59
  this._startingNode = _startingNode;
60
60
  this._treatModuleInImportAndFromImportSame = _treatModuleInImportAndFromImportSame;
@@ -80,22 +80,27 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
80
80
  }
81
81
  }
82
82
  }
83
- static collectFromNode(node, evaluator, cancellationToken, startingNode, treatModuleInImportAndFromImportSame = false, skipUnreachableCode = true, useCase = DocumentSymbolCollectorUseCase.Reference) {
84
- const declarations = this.getDeclarationsForNode(node, evaluator,
83
+ static collectFromNode(program, node, cancellationToken, startingNode, treatModuleInImportAndFromImportSame = false, skipUnreachableCode = true, useCase = DocumentSymbolCollectorUseCase.Reference) {
84
+ const declarations = this.getDeclarationsForNode(program, node,
85
85
  /* resolveLocalName */ true, useCase, cancellationToken);
86
86
  startingNode = startingNode !== null && startingNode !== void 0 ? startingNode : (0, parseTreeUtils_1.getModuleNode)(node);
87
87
  if (!startingNode) {
88
88
  return [];
89
89
  }
90
- const collector = new DocumentSymbolCollector([node.value], declarations, evaluator, cancellationToken, startingNode, treatModuleInImportAndFromImportSame, skipUnreachableCode, useCase);
90
+ const collector = new DocumentSymbolCollector(program, [node.value], declarations, cancellationToken, startingNode, treatModuleInImportAndFromImportSame, skipUnreachableCode, useCase);
91
91
  return collector.collect();
92
92
  }
93
- static getDeclarationsForNode(node, evaluator, resolveLocalName, useCase, token, sourceMapper, implicitlyImportedBy) {
93
+ static getDeclarationsForNode(program, node, resolveLocalName, useCase, token, implicitlyImportedBy) {
94
94
  (0, cancellationUtils_1.throwIfCancellationRequested)(token);
95
+ const evaluator = program.evaluator;
96
+ if (!evaluator) {
97
+ return [];
98
+ }
95
99
  const declarations = this._getDeclarationsForNode(node, useCase, evaluator, token,
96
100
  /* skipUnreachableCode */ false);
97
101
  // Add declarations from chained source files
98
- let builtinsScope = AnalyzerNodeInfo.getFileInfo(node).builtinsScope;
102
+ const fileInfo = AnalyzerNodeInfo.getFileInfo(node);
103
+ let builtinsScope = fileInfo.builtinsScope;
99
104
  while (builtinsScope && builtinsScope.type === 3 /* Module */) {
100
105
  const symbol = builtinsScope === null || builtinsScope === void 0 ? void 0 : builtinsScope.lookUpSymbol(node.value);
101
106
  if (symbol) {
@@ -106,7 +111,7 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
106
111
  // Add declarations from files that implicitly import the target file.
107
112
  implicitlyImportedBy === null || implicitlyImportedBy === void 0 ? void 0 : implicitlyImportedBy.forEach((implicitImport) => {
108
113
  var _a;
109
- const parseTree = (_a = implicitImport.getParseResults()) === null || _a === void 0 ? void 0 : _a.parseTree;
114
+ const parseTree = (_a = program.getParseResults(implicitImport.getFilePath())) === null || _a === void 0 ? void 0 : _a.parseTree;
110
115
  if (parseTree) {
111
116
  const scope = AnalyzerNodeInfo.getScope(parseTree);
112
117
  const symbol = scope === null || scope === void 0 ? void 0 : scope.lookUpSymbol(node.value);
@@ -116,6 +121,7 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
116
121
  }
117
122
  });
118
123
  const resolvedDeclarations = [];
124
+ const sourceMapper = program.getSourceMapper(fileInfo.filePath, token);
119
125
  declarations.forEach((decl) => {
120
126
  const resolvedDecl = evaluator.resolveAliasDeclaration(decl, resolveLocalName);
121
127
  if (resolvedDecl) {
@@ -180,6 +186,9 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
180
186
  }
181
187
  return false;
182
188
  }
189
+ get _evaluator() {
190
+ return this._program.evaluator;
191
+ }
183
192
  _addResult(node) {
184
193
  const range = node.nodeType === 38 /* Name */ ? node : (0, parseTreeUtils_1.getStringNodeValueRange)(node);
185
194
  this._results.push({ node, range });
@@ -1 +1 @@
1
- {"version":3,"file":"documentSymbolCollector.js","sourceRoot":"","sources":["../../../src/languageService/documentSymbolCollector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documentSymbolCollector.js","sourceRoot":"","sources":["../../../src/languageService/documentSymbolCollector.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;AAIH,+EAAiE;AACjE,yDAOiC;AACjC,mEAIsC;AACtC,2EAA6D;AAC7D,+DAAoF;AACpF,iEAA8D;AAE9D,mEAAqD;AACrD,2DAAsD;AAEtD,6CAAsE;AACtE,qDAAkF;AAClF,mEAA2E;AAC3E,+DAAwD;AACxD,2CAAyC;AACzC,2DAAkG;AAkBlG,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACtC,uFAAM,CAAA;IACN,6FAAS,CAAA;AACb,CAAC,EAHW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAGzC;AAED,iEAAiE;AACjE,2BAA2B;AAC3B,MAAa,uBAAwB,SAAQ,iCAAe;IAMxD,YACY,QAAqB,EAC7B,WAAqB,EACb,aAA4B,EAC5B,kBAAqC,EACrC,aAAwB,EACxB,wCAAwC,KAAK,EAC7C,uBAAuB,IAAI,EAC3B,WAAW,8BAA8B,CAAC,SAAS;QAE3D,KAAK,EAAE,CAAC;QATA,aAAQ,GAAR,QAAQ,CAAa;QAErB,kBAAa,GAAb,aAAa,CAAe;QAC5B,uBAAkB,GAAlB,kBAAkB,CAAmB;QACrC,kBAAa,GAAb,aAAa,CAAW;QACxB,0CAAqC,GAArC,qCAAqC,CAAQ;QAC7C,yBAAoB,GAApB,oBAAoB,CAAO;QAC3B,aAAQ,GAAR,QAAQ,CAA2C;QAbvD,aAAQ,GAAuB,EAAE,CAAC;QAClC,wBAAmB,GAAG,IAAI,GAAG,EAAc,CAAC;QAE5C,iBAAY,GAAgB,IAAI,GAAG,EAAU,CAAC;QAclD,mCAAmC;QACnC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAErD,wDAAwD;QACxD,+CAA+C;QAC/C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAE5C,iDAAiD;QACjD,kDAAkD;QAClD,mDAAmD;QACnD,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,qBAA6B,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,CACjF,CAAC;QACF,IAAI,eAAe,IAAI,QAAQ,KAAK,8BAA8B,CAAC,SAAS,EAAE;YAC1E,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,kBAA0B,CAAC,CAAC;YACrF,IAAI,gBAAgB,EAAE;gBAClB,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,IAAoB,CAAC;gBAC1D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAE,gBAAgB,CAAC,IAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC1E;SACJ;IACL,CAAC;IAED,MAAM,CAAC,eAAe,CAClB,OAAoB,EACpB,IAAc,EACd,iBAAoC,EACpC,YAAwB,EACxB,oCAAoC,GAAG,KAAK,EAC5C,mBAAmB,GAAG,IAAI,EAC1B,OAAO,GAAG,8BAA8B,CAAC,SAAS;QAElD,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAC5C,OAAO,EACP,IAAI;QACJ,sBAAsB,CAAC,IAAI,EAC3B,OAAO,EACP,iBAAiB,CACpB,CAAC;QAEF,YAAY,GAAG,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,EAAE;YACf,OAAO,EAAE,CAAC;SACb;QAED,MAAM,SAAS,GAAG,IAAI,uBAAuB,CACzC,OAAO,EACP,CAAC,IAAI,CAAC,KAAK,CAAC,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,oCAAoC,EACpC,mBAAmB,EACnB,OAAO,CACV,CAAC;QAEF,OAAO,SAAS,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,sBAAsB,CACzB,OAAoB,EACpB,IAAc,EACd,gBAAyB,EACzB,OAAuC,EACvC,KAAwB,EACxB,oBAAmC;QAEnC,IAAA,gDAA4B,EAAC,KAAK,CAAC,CAAC;QAEpC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,EAAE,CAAC;SACb;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAC7C,IAAI,EACJ,OAAO,EACP,SAAS,EACT,KAAK;QACL,yBAAyB,CAAC,KAAK,CAClC,CAAC;QAEF,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAC3C,OAAO,aAAa,IAAI,aAAa,CAAC,IAAI,mBAAqB,EAAE;YAC7D,MAAM,MAAM,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvD,IAAI,MAAM,EAAE;gBACR,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;aAClD;YAED,aAAa,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,CAAC;SACzC;QAED,sEAAsE;QACtE,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;;YAC7C,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,0CAAE,SAAS,CAAC;YACnF,IAAI,SAAS,EAAE;gBACX,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACnD,MAAM,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC/C,IAAI,MAAM,EAAE;oBACR,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;iBAClD;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAkB,EAAE,CAAC;QAC/C,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACvE,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1B,MAAM,YAAY,GAAG,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;YAC/E,IAAI,YAAY,EAAE;gBACd,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAExC,IAAI,YAAY,IAAI,IAAA,yBAAU,EAAC,YAAY,CAAC,IAAI,CAAC,EAAE;oBAC/C,MAAM,SAAS,GAAG,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBAC9D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;wBAC9B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE;4BAC3B,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;yBACrD;qBACJ;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,oBAAoB,CAAC;IAChC,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEQ,IAAI,CAAC,IAAe;QACzB,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;YACzE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACpB;IACL,CAAC;IAEQ,SAAS,CAAC,IAAc;QAC7B,IAAA,gDAA4B,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEtD,gEAAgE;QAChE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACpC,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,YAAY,GAAG,uBAAuB,CAAC,uBAAuB,CAChE,IAAI,EACJ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,oBAAoB,CAC5B,CAAC;YAEF,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzC,kEAAkE;gBAClE,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE;oBAC3E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;iBACzB;aACJ;SACJ;aAAM;YACH,6BAA6B;YAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,eAAe,CAAC,IAAoB;QACzC,mDAAmD;QACnD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,EAAE,MAAK,IAAI,CAAC,EAAE,CAAA,EAAA,CAAC,EAAE;YACxD,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,oBAAyB,EAAE;gBACxD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;aAC7B;SACJ;QACD,OAAO,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAEQ,WAAW,CAAC,IAAgB;QACjC,IAAA,gDAA4B,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAY,UAAU;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC;IACpC,CAAC;IAEO,UAAU,CAAC,IAA2B;QAC1C,MAAM,KAAK,GAAc,IAAI,CAAC,QAAQ,kBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,wCAAuB,EAAC,IAAI,CAAC,CAAC;QACrG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;IAEO,qBAAqB,CAAC,YAAyB,EAAE,aAAwB;;QAC7E,6BAA6B;QAC7B,mCAAmC;QACnC,SAAS;QACT,gCAAgC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3C,IAAA,sCAAmB,EACf,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,qCAAqC;QAC1C,yBAAyB,CAAC,IAAI,CACjC,CACJ,CAAC;QACF,IAAI,KAAK,EAAE;YACP,iEAAiE;YACjE,kCAAkC;YAClC,IAAI,IAAI,CAAC,aAAa,EAAE;gBACpB,sDAAsD;gBACtD,IAAI,KAAK,CAAC,IAAI,qBAA6B,EAAE;oBACzC,OAAO,IAAI,CAAC;iBACf;qBAAM,IAAI,KAAK,CAAC,IAAI,kBAA0B,EAAE;oBAC7C,4DAA4D;oBAC5D,6BAA6B;oBAC7B,eAAe;oBACf,OAAO,CAAA,MAAA,aAAa,CAAC,MAAM,0CAAE,QAAQ,kBAAuB,CAAC;iBAChE;gBACD,OAAO,KAAK,CAAC;aAChB;YACD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,2BAA2B,CAAC,WAAwB,EAAE,aAAwB;QAClF,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,EAAE;YACf,OAAO,KAAK,CAAC;SAChB;QAED,uEAAuE;QACvE,gDAAgD;QAChD,IAAI,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE;YACzD,OAAO,IAAI,CAAC;SACf;QAED,4EAA4E;QAC5E,yCAAyC;QACzC,MAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAC5E,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,KAAK,YAAY,EAAE;YAChE,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAC3E,CAAC;IAEO,2BAA2B,CAAC,WAAwB;QACxD,8FAA8F;QAC9F,6EAA6E;QAC7E,oDAAoD;QACpD,IAAI,gCAAgC,CAAC,WAAW,CAAC,EAAE;YAC/C,OAAO,IAAA,0DAAuC,EAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpE;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACxG,OAAO,gCAAgC,CAAC,YAAY,CAAC;YACjD,CAAC,CAAC,IAAA,0DAAuC,EAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,CAAC,CAAC,YAAY,CAAC;QAEnB,SAAS,gCAAgC,CAAC,IAAkB;YACxD,OAAO,CACH,CAAC,CAAC,IAAI;gBACN,IAAI,CAAC,IAAI,kBAA0B;gBACnC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,aAAa;gBAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,sBAA2B,CAChD,CAAC;QACN,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,IAAe;QACtC,IAAI,IAAI,CAAC,QAAQ,oBAAyB,EAAE;YACxC,OAAO;SACV;QAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,aAAa,EAAE;YAChB,OAAO;SACV;QAED,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE;YACd,OAAO;SACV;QAED,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBAC1C,OAAO;aACV;YAED,MAAM,aAAa,GAAG,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,EAAE;gBAChB,OAAO;aACV;YAED,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE;gBACtG,OAAO;aACV;YAED,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,MAAM,CAAC,YAAY,CAAC,YAA2B,EAAE,SAAsB;QAC3E,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE;YAC5B,IACI,IAAA,sCAAmB,EACf,GAAG,EACH,SAAS;YACT,0CAA0C,CAAC,KAAK;YAChD,yBAAyB,CAAC,IAAI,CACjC,EACH;gBACE,OAAO;aACV;SACJ;QAED,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAEO,MAAM,CAAC,2BAA2B,CAAC,IAAc,EAAE,SAAwB;;QAC/E,MAAM,MAAM,GAAG,cAAc,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;QACxE,sCAAsC;QACtC,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,oBAAwB,EAAE;YAC1C,sEAAsE;YACtE,OAAO,IAAI,CAAC,oCAAoC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;SAC5E;aAAM,IACH,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,2BAA+B;YACpD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,iBAAuB;gBACxD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,kBAAuB;gBACzE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC;gBAC5D,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,kBAAuB;oBACvD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,EACxD;YACE,wCAAwC;YACxC,MAAM,KAAK,GAAG,SAAS,CAAC,0BAA0B,CAAC,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC,CAAC;YACzF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE;gBACnD,8CAA8C;gBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzE,IAAI,SAAS,EAAE;oBACX,OAAO,IAAI,CAAC,oCAAoC,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;iBAC/E;aACJ;SACJ;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEO,MAAM,CAAC,uBAAuB,CAClC,IAAc,EACd,OAAuC,EACvC,SAAwB,EACxB,KAAwB,EACxB,mBAAmB,GAAG,IAAI;;QAE1B,IAAI,MAAM,GAAkB,EAAE,CAAC;QAE/B,kHAAkH;QAClH,0GAA0G;QAC1G,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,yBAA6B,EAAE;YACpD,MAAM,GAAG,IAAI,CAAC,oCAAoC,CAAC,IAAI,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAEzF,2DAA2D;YAC3D,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,OAAO,KAAK,8BAA8B,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;gBAClG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;aACrE;SACJ;aAAM;YACH,MAAM,GAAG,IAAI,CAAC,iCAAiC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;SACpE;QAED,wCAAwC;QACxC,0BAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;;YAChD,MAAM,WAAW,GACb,OAAO,KAAK,8BAA8B,CAAC,MAAM;gBAC7C,CAAC,CAAC,kCAAkB,CAAC,MAAM;gBAC3B,CAAC,CAAC,kCAAkB,CAAC,UAAU,CAAC;YACxC,MAAM,MAAM,GAAG,MAAA,CAAC,CAAC,4BAA4B,0CAAE,kBAAkB,CAC7D,SAAS,EACT,IAAI,EACJ,IAAI,CAAC,KAAK,EACV,WAAW,EACX,KAAK,CACR,CAAC;YACF,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;aAC1B;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,MAAM,CAAC,oCAAoC,CAC/C,IAAc,EACd,SAAwB,EACxB,mBAAmB,GAAG,IAAI;;QAE1B,IAAA,cAAM,EAAC,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,yBAA6B,CAAC,CAAC;QAE3D,IAAI,KAAK,GAAG,SAAS,CAAC,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAClF,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,2BAA+B,EAAE;YACtD,sEAAsE;YACtE,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;SACvD;QAED,mEAAmE;QACnE,2FAA2F;QAC3F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,oBAAwB,EAAE;gBACxC,kCAAkC;gBAClC,OAAO,CAAC,IAAA,oDAAiC,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aAC7D;SACJ;QAED,iFAAiF;QACjF,wFAAwF;QACxF,yDAAyD;QACzD,sFAAsF;QACtF,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE;YAC1F,MAAM,IAAI,GAAI,SAA8B,CAAC,IAAI,CAAC;YAClD,IAAI,IAAI,CAAC,QAAQ,0BAA+B,EAAE;gBAC9C,uEAAuE;gBACvE,SAAS;aACZ;YAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;SAC9G;QAED,gDAAgD;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mCAAqB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAChF,EAAE;YACC,MAAM,UAAU,GAAG,IAA2B,CAAC;YAC/C,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACzE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3F,IAAI,CAAC,YAAY,EAAE;gBACf,SAAS;aACZ;YAED,sEAAsE;YACtE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;gBACvF,SAAS;aACZ;YAED,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;gBACvD,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;oBAC/B,MAAM,aAAa,GAAG,IAAA,6BAAiB,EAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9E,MAAM,UAAU,GAAG,IAAA,6BAAiB,EAChC,QAAQ,EACR,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,4BAE7B,CAAC;oBACF,IAAI,aAAa,IAAI,CAAC,UAAU,EAAE;wBAC9B,iEAAiE;wBACjE,aAAa,CAAC,MAAM;6BACf,eAAe,EAAE;6BACjB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mCAAqB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;6BACrD,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;qBACpD;iBACJ;aACJ;SACJ;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,MAAM,CAAC,iCAAiC,CAAC,IAAc,EAAE,SAAwB;;QACrF,IAAA,cAAM,EAAC,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,yBAA6B,CAAC,CAAC;QAE3D,8EAA8E;QAC9E,6EAA6E;QAC7E,6EAA6E;QAC7E,oBAAoB;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,IACI,CAAA,MAAA,UAAU,CAAC,MAAM,0CAAE,QAAQ,uBAA2B;YACtD,CAAA,MAAA,UAAU,CAAC,MAAM,0CAAE,QAAQ,yBAA6B,EAC1D;YACE,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAEhE,wCAAwC;YACxC,IAAI,KAAK,KAAK,CAAC,EAAE;gBACb,mCAAmC;gBACnC,MAAM,KAAK,GAAkB,EAAE,CAAC;gBAEhC,kFAAkF;gBAClF,uDAAuD;gBACvD,KAAK,CAAC,IAAI,CACN,GAAG,CAAC,CAAA,MAAA,SAAS;qBACR,0BAA0B,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,0CAClD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,CAAC,KAAI,EAAE,CAAC,CACpD,CAAC;gBAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,QAAQ,sBAA2B,EAAE;oBAC7E,OAAO,KAAK,CAAC;iBAChB;gBAED,yEAAyE;gBACzE,uFAAuF;gBACvF,uBAAuB;gBACvB,oBAAoB;gBACpB,MAAM,mBAAmB,GACrB,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;oBACjC,UAAU,CAAC,MAAM,CAAC,QAAQ,sBAA2B;oBACrD,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;gBAE9B,sEAAsE;gBACtE,MAAM,UAAU,GAAG,mBAAmB;oBAClC,CAAC,CAAE,UAAU,CAAC,MAAuB,CAAC,KAAM,CAAC,KAAK;oBAClD,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAEpC,8DAA8D;gBAC9D,+EAA+E;gBAC/E,2DAA2D;gBAC3D,MAAM,eAAe,GAAG,MAAA,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,0CAAE,qBAAqB,CAAC,UAAU,CAAC,CAAC;gBAC5F,IAAI,eAAe,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtD,IAAI,eAAe,GAAkB,EAAE,CAAC;oBAExC,IAAA,6BAAW,EACP,eAAe,EACf,eAAe,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,CAAC,CAChF,CAAC;oBAEF,8EAA8E;oBAC9E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC5B,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;4BAC3C,CAAC,GAAG,CAAqB,CAAC;4BAE1B,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,EAAE;gCAC/B,wEAAwE;gCACxE,oEAAoE;gCACpE,6EAA6E;gCAC7E,iFAAiF;gCACjF,OAAO,CAAC,CAAC,aAAa,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;6BAC5D;4BAED,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,CAAC;wBACxC,CAAC,CAAC,CAAC;qBACN;oBAED,oBAAoB;oBACpB,qFAAqF;oBACrF,IAAI,mBAAmB,EAAE;wBACrB,eAAe,GAAG,IAAA,0DAAuC,EAAC,eAAe,CAAC,CAAC;qBAC9E;oBAED,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;iBAClC;gBAED,OAAO,KAAK,CAAC;aAChB;YAED,IAAI,KAAK,GAAG,CAAC,EAAE;gBACX,wCAAwC;gBACxC,wEAAwE;gBACxE,0FAA0F;gBAC1F,qEAAqE;gBACrE,6EAA6E;gBAC7E,0CAA0C;gBAC1C,OAAO,SAAS,CAAC,0BAA0B,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;aAClF;YAED,OAAO,EAAE,CAAC;SACb;QAED,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAllBD,0DAklBC"}
@@ -1,4 +1,5 @@
1
1
  import { CancellationToken, Hover, MarkupKind } from 'vscode-languageserver';
2
+ import { Declaration } from '../analyzer/declaration';
2
3
  import { ProgramView } from '../common/extensibility';
3
4
  import { Position } from '../common/textRange';
4
5
  export declare class HoverProvider {
@@ -6,12 +7,12 @@ export declare class HoverProvider {
6
7
  private _filePath;
7
8
  private _position;
8
9
  private _format;
9
- private _supportTelemetry;
10
10
  private _token;
11
11
  private readonly _parseResults;
12
12
  private readonly _sourceMapper;
13
- constructor(_program: ProgramView, _filePath: string, _position: Position, _format: MarkupKind, _supportTelemetry: boolean, _token: CancellationToken);
14
- getHover(): Hover | undefined;
13
+ constructor(_program: ProgramView, _filePath: string, _position: Position, _format: MarkupKind, _token: CancellationToken);
14
+ getHover(): Hover | null;
15
+ static getPrimaryDeclaration(declarations: Declaration[]): Declaration;
15
16
  private get _evaluator();
16
17
  private get _functionSignatureDisplay();
17
18
  private _getHoverResult;
@@ -39,17 +39,15 @@ const cancellationUtils_1 = require("../common/cancellationUtils");
39
39
  const debug_1 = require("../common/debug");
40
40
  const extensibility_1 = require("../common/extensibility");
41
41
  const positionUtils_1 = require("../common/positionUtils");
42
- const stringUtils_1 = require("../common/stringUtils");
43
42
  const textRange_1 = require("../common/textRange");
44
43
  const parseNodes_1 = require("../parser/parseNodes");
45
44
  const tooltipUtils_1 = require("./tooltipUtils");
46
45
  class HoverProvider {
47
- constructor(_program, _filePath, _position, _format, _supportTelemetry, _token) {
46
+ constructor(_program, _filePath, _position, _format, _token) {
48
47
  this._program = _program;
49
48
  this._filePath = _filePath;
50
49
  this._position = _position;
51
50
  this._format = _format;
52
- this._supportTelemetry = _supportTelemetry;
53
51
  this._token = _token;
54
52
  this._parseResults = this._program.getParseResults(this._filePath);
55
53
  this._sourceMapper = this._program.getSourceMapper(this._filePath, this._token, /* mapCompiled */ true);
@@ -57,6 +55,27 @@ class HoverProvider {
57
55
  getHover() {
58
56
  return this._convertHoverResults(this._getHoverResult());
59
57
  }
58
+ static getPrimaryDeclaration(declarations) {
59
+ // In most cases, it's best to treat the first declaration as the
60
+ // "primary". This works well for properties that have setters
61
+ // which often have doc strings on the getter but not the setter.
62
+ // The one case where using the first declaration doesn't work as
63
+ // well is the case where an import statement within an __init__.py
64
+ // file uses the form "from .A import A". In this case, if we use
65
+ // the first declaration, it will show up as a module rather than
66
+ // the imported symbol type.
67
+ const primaryDeclaration = declarations[0];
68
+ if (primaryDeclaration.type === 8 /* Alias */ && declarations.length > 1) {
69
+ return declarations[1];
70
+ }
71
+ else if (primaryDeclaration.type === 1 /* Variable */ &&
72
+ declarations.length > 1 &&
73
+ primaryDeclaration.isDefinedBySlots) {
74
+ // Slots cannot have docstrings, so pick the secondary.
75
+ return declarations[1];
76
+ }
77
+ return primaryDeclaration;
78
+ }
60
79
  get _evaluator() {
61
80
  return this._program.evaluator;
62
81
  }
@@ -67,15 +86,15 @@ class HoverProvider {
67
86
  var _a;
68
87
  (0, cancellationUtils_1.throwIfCancellationRequested)(this._token);
69
88
  if (!this._parseResults) {
70
- return undefined;
89
+ return null;
71
90
  }
72
91
  const offset = (0, positionUtils_1.convertPositionToOffset)(this._position, this._parseResults.tokenizerOutput.lines);
73
92
  if (offset === undefined) {
74
- return undefined;
93
+ return null;
75
94
  }
76
95
  const node = ParseTreeUtils.findNodeByOffset(this._parseResults.parseTree, offset);
77
96
  if (node === undefined) {
78
- return undefined;
97
+ return null;
79
98
  }
80
99
  const results = {
81
100
  parts: [],
@@ -96,28 +115,8 @@ class HoverProvider {
96
115
  declarations = this._evaluator.getDeclarationsForNameNode(node);
97
116
  }
98
117
  if (declarations && declarations.length > 0) {
99
- // In most cases, it's best to treat the first declaration as the
100
- // "primary". This works well for properties that have setters
101
- // which often have doc strings on the getter but not the setter.
102
- // The one case where using the first declaration doesn't work as
103
- // well is the case where an import statement within an __init__.py
104
- // file uses the form "from .A import A". In this case, if we use
105
- // the first declaration, it will show up as a module rather than
106
- // the imported symbol type.
107
- let primaryDeclaration = declarations[0];
108
- if (primaryDeclaration.type === 8 /* Alias */ && declarations.length > 1) {
109
- primaryDeclaration = declarations[1];
110
- }
111
- else if (primaryDeclaration.type === 1 /* Variable */ &&
112
- declarations.length > 1 &&
113
- primaryDeclaration.isDefinedBySlots) {
114
- // Slots cannot have docstrings, so pick the secondary.
115
- primaryDeclaration = declarations[1];
116
- }
118
+ const primaryDeclaration = HoverProvider.getPrimaryDeclaration(declarations);
117
119
  this._addResultsForDeclaration(results.parts, primaryDeclaration, node);
118
- // Add the lastKnownModule for this declaration. We'll use this
119
- // in telemetry for hover.
120
- results.lastKnownModule = primaryDeclaration.moduleName;
121
120
  }
122
121
  else if (!node.parent || node.parent.nodeType !== 37 /* ModuleName */) {
123
122
  // If we had no declaration, see if we can provide a minimal tooltip. We'll skip
@@ -153,7 +152,7 @@ class HoverProvider {
153
152
  this._tryAddPartsForTypedDictKey(node, type, results.parts);
154
153
  }
155
154
  }
156
- return results.parts.length > 0 ? results : undefined;
155
+ return results.parts.length > 0 ? results : null;
157
156
  }
158
157
  _addResultsForDeclaration(parts, declaration, node) {
159
158
  var _a, _b;
@@ -488,9 +487,9 @@ class HoverProvider {
488
487
  }
489
488
  _convertHoverResults(hoverResults) {
490
489
  if (!hoverResults) {
491
- return undefined;
490
+ return null;
492
491
  }
493
- let markupString = hoverResults.parts
492
+ const markupString = hoverResults.parts
494
493
  .map((part) => {
495
494
  if (part.python) {
496
495
  if (this._format === vscode_languageserver_1.MarkupKind.Markdown) {
@@ -507,11 +506,6 @@ class HoverProvider {
507
506
  })
508
507
  .join('')
509
508
  .trimEnd();
510
- // If we have a lastKnownModule in the hover results, stick in a comment with
511
- // the hashed module name. This is used by the other side to send telemetry.
512
- if (hoverResults.lastKnownModule && this._format === vscode_languageserver_1.MarkupKind.Markdown && this._supportTelemetry) {
513
- markupString += `\n<!--moduleHash:${(0, stringUtils_1.hashString)(hoverResults.lastKnownModule)}-->`;
514
- }
515
509
  return {
516
510
  contents: {
517
511
  kind: this._format,
@@ -1 +1 @@
1
- {"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../../src/languageService/hoverProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../../src/languageService/hoverProvider.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,8 @@
1
1
  import { CancellationToken, Location, ResultProgressReporter } from 'vscode-languageserver';
2
2
  import { Declaration } from '../analyzer/declaration';
3
- import { SourceFile } from '../analyzer/sourceFile';
4
- import { SourceMapper } from '../analyzer/sourceMapper';
5
- import { TypeEvaluator } from '../analyzer/typeEvaluatorTypes';
6
- import { ProgramView } from '../common/extensibility';
3
+ import { ProgramView, SourceFile } from '../common/extensibility';
7
4
  import { DocumentRange, Position } from '../common/textRange';
8
5
  import { NameNode, ParseNode } from '../parser/parseNodes';
9
- import { ParseResults } from '../parser/parser';
10
6
  import { DocumentSymbolCollectorUseCase } from './documentSymbolCollector';
11
7
  export declare type ReferenceCallback = (locations: DocumentRange[]) => void;
12
8
  export declare class ReferencesResult {
@@ -24,14 +20,14 @@ export declare class ReferencesResult {
24
20
  addLocations(...locs: DocumentRange[]): void;
25
21
  }
26
22
  export declare class FindReferencesTreeWalker {
27
- private _parseResults;
23
+ private _program;
28
24
  private _filePath;
29
25
  private _referencesResult;
30
26
  private _includeDeclaration;
31
- private _evaluator;
32
27
  private _cancellationToken;
33
- constructor(_parseResults: ParseResults, _filePath: string, _referencesResult: ReferencesResult, _includeDeclaration: boolean, _evaluator: TypeEvaluator, _cancellationToken: CancellationToken);
34
- findReferences(rootNode?: import("../parser/parseNodes").ModuleNode): DocumentRange[];
28
+ private _parseResults;
29
+ constructor(_program: ProgramView, _filePath: string, _referencesResult: ReferencesResult, _includeDeclaration: boolean, _cancellationToken: CancellationToken);
30
+ findReferences(rootNode?: import("../parser/parseNodes").ModuleNode | undefined): DocumentRange[];
35
31
  }
36
32
  export declare class ReferencesProvider {
37
33
  private _program;
@@ -39,7 +35,6 @@ export declare class ReferencesProvider {
39
35
  constructor(_program: ProgramView, _token: CancellationToken);
40
36
  reportReferences(filePath: string, position: Position, includeDeclaration: boolean, resultReporter?: ResultProgressReporter<Location[]>): Location[] | undefined;
41
37
  addReferencesToResult(filePath: string, includeDeclaration: boolean, referencesResult: ReferencesResult): void;
42
- static getDeclarationForNode(sourceMapper: SourceMapper, filePath: string, node: NameNode, evaluator: TypeEvaluator, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken, implicitlyImportedBy?: SourceFile[]): ReferencesResult | undefined;
43
- static getDeclarationForPosition(sourceMapper: SourceMapper, parseResults: ParseResults, filePath: string, position: Position, evaluator: TypeEvaluator, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken, implicitlyImportedBy?: SourceFile[]): ReferencesResult | undefined;
44
- private get _evaluator();
38
+ static getDeclarationForNode(program: ProgramView, filePath: string, node: NameNode, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken, implicitlyImportedBy?: SourceFile[]): ReferencesResult | undefined;
39
+ static getDeclarationForPosition(program: ProgramView, filePath: string, position: Position, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken, implicitlyImportedBy?: SourceFile[]): ReferencesResult | undefined;
45
40
  }
@@ -93,19 +93,24 @@ class ReferencesResult {
93
93
  }
94
94
  exports.ReferencesResult = ReferencesResult;
95
95
  class FindReferencesTreeWalker {
96
- constructor(_parseResults, _filePath, _referencesResult, _includeDeclaration, _evaluator, _cancellationToken) {
97
- this._parseResults = _parseResults;
96
+ constructor(_program, _filePath, _referencesResult, _includeDeclaration, _cancellationToken) {
97
+ this._program = _program;
98
98
  this._filePath = _filePath;
99
99
  this._referencesResult = _referencesResult;
100
100
  this._includeDeclaration = _includeDeclaration;
101
- this._evaluator = _evaluator;
102
101
  this._cancellationToken = _cancellationToken;
102
+ this._parseResults = this._program.getParseResults(this._filePath);
103
103
  }
104
- findReferences(rootNode = this._parseResults.parseTree) {
105
- const collector = new documentSymbolCollector_1.DocumentSymbolCollector(this._referencesResult.symbolNames, this._referencesResult.declarations, this._evaluator, this._cancellationToken, rootNode,
104
+ findReferences(rootNode) {
105
+ var _a;
106
+ if (rootNode === void 0) { rootNode = (_a = this._parseResults) === null || _a === void 0 ? void 0 : _a.parseTree; }
107
+ const results = [];
108
+ if (!this._parseResults) {
109
+ return results;
110
+ }
111
+ const collector = new documentSymbolCollector_1.DocumentSymbolCollector(this._program, this._referencesResult.symbolNames, this._referencesResult.declarations, this._cancellationToken, rootNode,
106
112
  /* treatModuleInImportAndFromImportSame */ true,
107
113
  /* skipUnreachableCode */ false, this._referencesResult.useCase);
108
- const results = [];
109
114
  for (const result of collector.collect()) {
110
115
  // Is it the same symbol?
111
116
  if (this._includeDeclaration || result.node !== this._referencesResult.nodeAtOffset) {
@@ -142,7 +147,9 @@ class ReferencesProvider {
142
147
  ? (range) => resultReporter.report((0, navigationUtils_1.convertDocumentRangesToLocation)(this._program.fileSystem, range))
143
148
  : (range) => (0, collectionUtils_1.appendArray)(locations, (0, navigationUtils_1.convertDocumentRangesToLocation)(this._program.fileSystem, range));
144
149
  const invokedFromUserFile = (0, sourceFileInfoUtils_1.isUserCode)(sourceFileInfo);
145
- const referencesResult = ReferencesProvider.getDeclarationForPosition(this._program.getSourceMapper(filePath, this._token), parseResults, filePath, position, this._evaluator, reporter, documentSymbolCollector_1.DocumentSymbolCollectorUseCase.Reference, this._token);
150
+ const referencesResult = ReferencesProvider.getDeclarationForPosition(this._program, filePath, position, reporter, documentSymbolCollector_1.DocumentSymbolCollectorUseCase.Reference, this._token,
151
+ // It is temporary fix for release.
152
+ Array.from((0, sourceFileInfoUtils_1.collectImportedByFiles)(sourceFileInfo)).map((fileInfo) => fileInfo.sourceFile));
146
153
  if (!referencesResult) {
147
154
  return;
148
155
  }
@@ -197,23 +204,27 @@ class ReferencesProvider {
197
204
  if (!parseResults) {
198
205
  return;
199
206
  }
200
- const refTreeWalker = new FindReferencesTreeWalker(parseResults, filePath, referencesResult, includeDeclaration, this._evaluator, this._token);
207
+ const refTreeWalker = new FindReferencesTreeWalker(this._program, filePath, referencesResult, includeDeclaration, this._token);
201
208
  referencesResult.addLocations(...refTreeWalker.findReferences());
202
209
  }
203
- static getDeclarationForNode(sourceMapper, filePath, node, evaluator, reporter, useCase, token, implicitlyImportedBy) {
210
+ static getDeclarationForNode(program, filePath, node, reporter, useCase, token, implicitlyImportedBy) {
204
211
  (0, cancellationUtils_1.throwIfCancellationRequested)(token);
205
- const declarations = documentSymbolCollector_1.DocumentSymbolCollector.getDeclarationsForNode(node, evaluator,
206
- /* resolveLocalNames */ false, useCase, token, sourceMapper, implicitlyImportedBy);
212
+ const declarations = documentSymbolCollector_1.DocumentSymbolCollector.getDeclarationsForNode(program, node,
213
+ /* resolveLocalNames */ false, useCase, token, implicitlyImportedBy);
207
214
  if (declarations.length === 0) {
208
215
  return undefined;
209
216
  }
210
- const requiresGlobalSearch = isVisibleOutside(evaluator, filePath, node, declarations);
217
+ const requiresGlobalSearch = isVisibleOutside(program.evaluator, filePath, node, declarations);
211
218
  const symbolNames = new Set(declarations.map((d) => (0, declarationUtils_1.getNameFromDeclaration)(d)).filter((n) => !!n));
212
219
  symbolNames.add(node.value);
213
220
  return new ReferencesResult(requiresGlobalSearch, node, [...symbolNames.values()], declarations, useCase, reporter);
214
221
  }
215
- static getDeclarationForPosition(sourceMapper, parseResults, filePath, position, evaluator, reporter, useCase, token, implicitlyImportedBy) {
222
+ static getDeclarationForPosition(program, filePath, position, reporter, useCase, token, implicitlyImportedBy) {
216
223
  (0, cancellationUtils_1.throwIfCancellationRequested)(token);
224
+ const parseResults = program.getParseResults(filePath);
225
+ if (!parseResults) {
226
+ return undefined;
227
+ }
217
228
  const offset = (0, positionUtils_1.convertPositionToOffset)(position, parseResults.tokenizerOutput.lines);
218
229
  if (offset === undefined) {
219
230
  return undefined;
@@ -226,10 +237,7 @@ class ReferencesProvider {
226
237
  if (node.nodeType !== 38 /* Name */) {
227
238
  return undefined;
228
239
  }
229
- return this.getDeclarationForNode(sourceMapper, filePath, node, evaluator, reporter, useCase, token, implicitlyImportedBy);
230
- }
231
- get _evaluator() {
232
- return this._program.evaluator;
240
+ return this.getDeclarationForNode(program, filePath, node, reporter, useCase, token, implicitlyImportedBy);
233
241
  }
234
242
  }
235
243
  exports.ReferencesProvider = ReferencesProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"referencesProvider.js","sourceRoot":"","sources":["../../../src/languageService/referencesProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"referencesProvider.js","sourceRoot":"","sources":["../../../src/languageService/referencesProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { CancellationToken, WorkspaceEdit } from 'vscode-languageserver';
2
+ import { ProgramView } from '../common/extensibility';
3
+ import { Position, Range } from '../common/textRange';
4
+ import { ReferencesResult } from '../languageService/referencesProvider';
5
+ export declare class RenameProvider {
6
+ private _program;
7
+ private _filePath;
8
+ private _position;
9
+ private _token;
10
+ private readonly _parseResults;
11
+ constructor(_program: ProgramView, _filePath: string, _position: Position, _token: CancellationToken);
12
+ canRenameSymbol(isDefaultWorkspace: boolean): Range | null;
13
+ renameSymbol(newName: string, isDefaultWorkspace: boolean): WorkspaceEdit | null;
14
+ static getRenameSymbolMode(program: ProgramView, filePath: string, referencesResult: ReferencesResult, isDefaultWorkspace: boolean): "none" | "singleFileMode" | "multiFileMode";
15
+ private _getReferenceResult;
16
+ private _getDeclaration;
17
+ }