@microsoft/powerquery-language-services 0.3.40 → 0.5.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 (239) hide show
  1. package/lib/powerquery-language-services/analysis/analysis.d.ts +17 -8
  2. package/lib/powerquery-language-services/analysis/analysisBase.d.ts +41 -26
  3. package/lib/powerquery-language-services/analysis/analysisBase.js +524 -173
  4. package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
  5. package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +8 -11
  6. package/lib/powerquery-language-services/analysis/analysisUtils.d.ts +1 -2
  7. package/lib/powerquery-language-services/analysis/analysisUtils.js +20 -2
  8. package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
  9. package/lib/powerquery-language-services/analysis/documentAnalysis.d.ts +4 -6
  10. package/lib/powerquery-language-services/analysis/documentAnalysis.js +4 -11
  11. package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
  12. package/lib/powerquery-language-services/analysis/memoizedAnalysis.d.ts +18 -0
  13. package/lib/powerquery-language-services/analysis/memoizedAnalysis.js +66 -0
  14. package/lib/powerquery-language-services/analysis/memoizedAnalysis.js.map +1 -0
  15. package/lib/powerquery-language-services/documentSymbols.d.ts +2 -2
  16. package/lib/powerquery-language-services/documentSymbols.js +10 -27
  17. package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
  18. package/lib/powerquery-language-services/formatter.d.ts +1 -1
  19. package/lib/powerquery-language-services/formatter.js +2 -4
  20. package/lib/powerquery-language-services/formatter.js.map +1 -1
  21. package/lib/powerquery-language-services/index.d.ts +1 -4
  22. package/lib/powerquery-language-services/index.js +1 -11
  23. package/lib/powerquery-language-services/index.js.map +1 -1
  24. package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +5 -5
  25. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +5 -5
  26. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +78 -83
  27. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
  28. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +2 -2
  29. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +37 -40
  30. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
  31. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +7 -7
  32. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +17 -17
  33. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
  34. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +3 -3
  35. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +43 -43
  36. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
  37. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +7 -7
  38. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
  39. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +7 -7
  40. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
  41. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +4 -4
  42. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
  43. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +20 -22
  44. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
  45. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +4 -4
  46. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
  47. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +9 -9
  48. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +1 -1
  49. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.d.ts +1 -1
  50. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js +5 -5
  51. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
  52. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +4 -4
  53. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
  54. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/commonTypes.d.ts +1 -1
  55. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.d.ts +2 -2
  56. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +21 -26
  57. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
  58. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.d.ts +2 -2
  59. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +21 -21
  60. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
  61. package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +1 -1
  62. package/lib/powerquery-language-services/inspection/autocomplete/task.d.ts +2 -2
  63. package/lib/powerquery-language-services/inspection/autocomplete/task.js +12 -12
  64. package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
  65. package/lib/powerquery-language-services/inspection/commonTypes.d.ts +2 -2
  66. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +12 -13
  67. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -1
  68. package/lib/powerquery-language-services/inspection/expectedType.d.ts +3 -3
  69. package/lib/powerquery-language-services/inspection/expectedType.js +8 -8
  70. package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
  71. package/lib/powerquery-language-services/inspection/invokeExpression/common.d.ts +2 -2
  72. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.d.ts +2 -2
  73. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +24 -24
  74. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
  75. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +17 -18
  76. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
  77. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +20 -22
  78. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
  79. package/lib/powerquery-language-services/inspection/scope/scope.d.ts +2 -2
  80. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +47 -45
  81. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
  82. package/lib/powerquery-language-services/inspection/scope/scopeUtils.d.ts +7 -7
  83. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +15 -15
  84. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
  85. package/lib/powerquery-language-services/inspection/task.d.ts +4 -4
  86. package/lib/powerquery-language-services/inspection/task.js +17 -18
  87. package/lib/powerquery-language-services/inspection/task.js.map +1 -1
  88. package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +7 -7
  89. package/lib/powerquery-language-services/inspection/type/inspectType/common.js +56 -59
  90. package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
  91. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
  92. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +4 -5
  93. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
  94. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
  95. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +4 -4
  96. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
  97. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
  98. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +14 -12
  99. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
  100. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +1 -1
  101. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +13 -13
  102. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
  103. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.d.ts +1 -1
  104. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +9 -9
  105. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
  106. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.d.ts +1 -1
  107. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +13 -14
  108. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
  109. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
  110. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +6 -6
  111. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
  112. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
  113. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +8 -8
  114. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
  115. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
  116. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +9 -9
  117. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
  118. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
  119. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +5 -5
  120. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
  121. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
  122. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +5 -5
  123. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
  124. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
  125. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +4 -4
  126. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
  127. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
  128. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +18 -18
  129. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
  130. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
  131. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +4 -4
  132. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
  133. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
  134. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +7 -7
  135. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
  136. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +1 -1
  137. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +2 -2
  138. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
  139. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
  140. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +10 -10
  141. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
  142. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
  143. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +6 -6
  144. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
  145. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.d.ts +1 -1
  146. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +3 -3
  147. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
  148. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
  149. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +10 -10
  150. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
  151. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
  152. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +7 -6
  153. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
  154. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
  155. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +6 -6
  156. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
  157. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
  158. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +10 -10
  159. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
  160. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
  161. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +35 -41
  162. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
  163. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
  164. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +9 -9
  165. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
  166. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
  167. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +10 -12
  168. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
  169. package/lib/powerquery-language-services/inspection/type/task.js +5 -5
  170. package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
  171. package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -1
  172. package/lib/powerquery-language-services/inspectionUtils.d.ts +3 -6
  173. package/lib/powerquery-language-services/inspectionUtils.js +20 -75
  174. package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
  175. package/lib/powerquery-language-services/library/library.d.ts +1 -1
  176. package/lib/powerquery-language-services/library/libraryUtils.d.ts +9 -9
  177. package/lib/powerquery-language-services/library/libraryUtils.js +21 -21
  178. package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
  179. package/lib/powerquery-language-services/localization/localization.d.ts +3 -3
  180. package/lib/powerquery-language-services/localization/localization.js +9 -9
  181. package/lib/powerquery-language-services/localization/localization.js.map +1 -1
  182. package/lib/powerquery-language-services/positionUtils.js +16 -17
  183. package/lib/powerquery-language-services/positionUtils.js.map +1 -1
  184. package/lib/powerquery-language-services/providers/commonTypes.d.ts +41 -13
  185. package/lib/powerquery-language-services/providers/index.d.ts +2 -2
  186. package/lib/powerquery-language-services/providers/index.js +4 -4
  187. package/lib/powerquery-language-services/providers/index.js.map +1 -1
  188. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +4 -4
  189. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +22 -19
  190. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
  191. package/lib/powerquery-language-services/providers/libraryProvider.d.ts +17 -0
  192. package/lib/powerquery-language-services/providers/libraryProvider.js +129 -0
  193. package/lib/powerquery-language-services/providers/libraryProvider.js.map +1 -0
  194. package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.d.ts +4 -0
  195. package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +51 -0
  196. package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -0
  197. package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.d.ts +18 -19
  198. package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +131 -116
  199. package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js.map +1 -1
  200. package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js +45 -43
  201. package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js.map +1 -1
  202. package/lib/powerquery-language-services/providers/nullSymbolProvider.d.ts +11 -8
  203. package/lib/powerquery-language-services/providers/nullSymbolProvider.js +12 -5
  204. package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
  205. package/lib/powerquery-language-services/traceUtils.d.ts +1 -1
  206. package/lib/powerquery-language-services/traceUtils.js +1 -1
  207. package/lib/powerquery-language-services/traceUtils.js.map +1 -1
  208. package/lib/powerquery-language-services/validate/validate.d.ts +2 -2
  209. package/lib/powerquery-language-services/validate/validate.js +19 -20
  210. package/lib/powerquery-language-services/validate/validate.js.map +1 -1
  211. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.d.ts +2 -1
  212. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +24 -54
  213. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
  214. package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -6
  215. package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
  216. package/lib/powerquery-language-services/validate/validateInvokeExpression.d.ts +1 -1
  217. package/lib/powerquery-language-services/validate/validateInvokeExpression.js +23 -23
  218. package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
  219. package/lib/powerquery-language-services/validate/validateParse.d.ts +4 -0
  220. package/lib/powerquery-language-services/validate/validateParse.js +74 -0
  221. package/lib/powerquery-language-services/validate/validateParse.js.map +1 -0
  222. package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +13 -14
  223. package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
  224. package/package.json +3 -3
  225. package/lib/powerquery-language-services/providers/librarySymbolProvider.d.ts +0 -15
  226. package/lib/powerquery-language-services/providers/librarySymbolProvider.js +0 -117
  227. package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +0 -1
  228. package/lib/powerquery-language-services/validate/validateLexAndParse.d.ts +0 -4
  229. package/lib/powerquery-language-services/validate/validateLexAndParse.js +0 -130
  230. package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +0 -1
  231. package/lib/powerquery-language-services/workspaceCache/index.d.ts +0 -2
  232. package/lib/powerquery-language-services/workspaceCache/index.js +0 -6
  233. package/lib/powerquery-language-services/workspaceCache/index.js.map +0 -1
  234. package/lib/powerquery-language-services/workspaceCache/workspaceCache.d.ts +0 -9
  235. package/lib/powerquery-language-services/workspaceCache/workspaceCache.js +0 -5
  236. package/lib/powerquery-language-services/workspaceCache/workspaceCache.js.map +0 -1
  237. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +0 -13
  238. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +0 -130
  239. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +0 -1
@@ -1,117 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
- return new (P || (P = Promise))(function (resolve, reject) {
7
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
- step((generator = generator.apply(thisArg, _arguments || [])).next());
11
- });
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.LibrarySymbolProvider = void 0;
15
- const vscode_languageserver_types_1 = require("vscode-languageserver-types");
16
- const powerquery_parser_1 = require("@microsoft/powerquery-parser");
17
- const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
18
- const library_1 = require("../library");
19
- const inspection_1 = require("../inspection");
20
- class LibrarySymbolProvider {
21
- constructor(library) {
22
- this.externalTypeResolver = library.externalTypeResolver;
23
- this.libraryDefinitions = library.libraryDefinitions;
24
- this.signatureInformationByLabel = new Map();
25
- }
26
- // eslint-disable-next-line require-await
27
- getAutocompleteItems(context) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const trace = context.traceManager.entry("LibrarySymbolProvider" /* LibrarySymbolProvider */, this.getAutocompleteItems.name, context.maybeInitialCorrelationId);
30
- if (!context.text || !context.range) {
31
- trace.exit({ invalidContext: true });
32
- return [];
33
- }
34
- const partial = [];
35
- const maybeContextText = context.text;
36
- for (const [label, definition] of this.libraryDefinitions.entries()) {
37
- partial.push(inspection_1.AutocompleteItemUtils.createFromLibraryDefinition(label, definition, maybeContextText));
38
- }
39
- trace.exit();
40
- return partial;
41
- });
42
- }
43
- // eslint-disable-next-line require-await
44
- getHover(context) {
45
- return __awaiter(this, void 0, void 0, function* () {
46
- const trace = context.traceManager.entry("LibrarySymbolProvider" /* LibrarySymbolProvider */, this.getHover.name, context.maybeInitialCorrelationId);
47
- if (!context.identifier) {
48
- trace.exit({ invalidContext: true });
49
- return null;
50
- }
51
- const identifierLiteral = context.identifier.literal;
52
- const maybeDefinition = this.libraryDefinitions.get(identifierLiteral);
53
- if (maybeDefinition === undefined) {
54
- trace.exit({ invalidContext: true });
55
- return null;
56
- }
57
- const definition = maybeDefinition;
58
- const definitionText = LibrarySymbolProvider.getDefinitionKindText(definition.kind);
59
- const definitionTypeText = language_1.TypeUtils.nameOf(definition.asPowerQueryType, context.traceManager, trace.id);
60
- const hover = {
61
- contents: {
62
- kind: vscode_languageserver_types_1.MarkupKind.PlainText,
63
- language: "powerquery",
64
- value: `[${definitionText}] ${identifierLiteral}: ${definitionTypeText}`,
65
- },
66
- range: undefined,
67
- };
68
- trace.exit();
69
- return hover;
70
- });
71
- }
72
- // eslint-disable-next-line require-await
73
- getSignatureHelp(context) {
74
- var _a;
75
- return __awaiter(this, void 0, void 0, function* () {
76
- const trace = context.traceManager.entry("LibrarySymbolProvider" /* LibrarySymbolProvider */, this.getSignatureHelp.name, context.maybeInitialCorrelationId);
77
- if (!context.functionName) {
78
- trace.exit({ invalidContext: true });
79
- return null;
80
- }
81
- const identifierLiteral = context.functionName;
82
- const maybeDefinition = this.libraryDefinitions.get(identifierLiteral);
83
- if (!library_1.LibraryUtils.isFunction(maybeDefinition)) {
84
- trace.exit({ invalidContext: true });
85
- return null;
86
- }
87
- const result = {
88
- activeParameter: (_a = context.argumentOrdinal) !== null && _a !== void 0 ? _a : 0,
89
- activeSignature: 0,
90
- signatures: [this.getOrCreateSignatureInformation(identifierLiteral)],
91
- };
92
- trace.exit();
93
- return result;
94
- });
95
- }
96
- static getDefinitionKindText(kind) {
97
- switch (kind) {
98
- case "Function" /* Function */:
99
- return "library function";
100
- case "Constant" /* Constant */:
101
- return "library constant";
102
- case "Type" /* Type */:
103
- return "library type";
104
- default:
105
- throw powerquery_parser_1.Assert.isNever(kind);
106
- }
107
- }
108
- getOrCreateSignatureInformation(key) {
109
- if (!this.signatureInformationByLabel.has(key)) {
110
- const definition = library_1.LibraryUtils.assertAsFunction(this.libraryDefinitions.get(key));
111
- this.signatureInformationByLabel.set(key, library_1.LibraryUtils.createSignatureInformation(definition));
112
- }
113
- return powerquery_parser_1.Assert.asDefined(this.signatureInformationByLabel.get(key));
114
- }
115
- }
116
- exports.LibrarySymbolProvider = LibrarySymbolProvider;
117
- //# sourceMappingURL=librarySymbolProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"librarySymbolProvider.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/providers/librarySymbolProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { Diagnostic } from "vscode-languageserver-types";
2
- import { TextDocument } from "vscode-languageserver-textdocument";
3
- import { ValidationSettings } from "./validationSettings";
4
- export declare function validateLexAndParse(textDocument: TextDocument, validationSettings: ValidationSettings): Promise<Diagnostic[]>;
@@ -1,130 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
- return new (P || (P = Promise))(function (resolve, reject) {
7
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
- step((generator = generator.apply(thisArg, _arguments || [])).next());
11
- });
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.validateLexAndParse = void 0;
15
- const PQP = require("@microsoft/powerquery-parser");
16
- const vscode_languageserver_types_1 = require("vscode-languageserver-types");
17
- const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
18
- const diagnosticErrorCode_1 = require("../diagnosticErrorCode");
19
- const workspaceCache_1 = require("../workspaceCache");
20
- function validateLexAndParse(textDocument, validationSettings) {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const trace = validationSettings.traceManager.entry("Validation" /* Validation */, validateLexAndParse.name, validationSettings.maybeInitialCorrelationId);
23
- const updatedSettings = Object.assign(Object.assign({}, validationSettings), { maybeInitialCorrelationId: trace.id });
24
- const parsePromise = yield workspaceCache_1.WorkspaceCacheUtils.getOrCreateParsePromise(textDocument, updatedSettings, updatedSettings.isWorkspaceCacheAllowed);
25
- if (parsePromise !== undefined) {
26
- const result = yield validateParse(parsePromise, updatedSettings);
27
- trace.exit();
28
- return result;
29
- }
30
- const lexPromise = yield workspaceCache_1.WorkspaceCacheUtils.getOrCreateLexPromise(textDocument, updatedSettings, updatedSettings.isWorkspaceCacheAllowed);
31
- if (lexPromise !== undefined) {
32
- const result = validateLex(lexPromise, updatedSettings);
33
- trace.exit();
34
- return result;
35
- }
36
- return [];
37
- });
38
- }
39
- exports.validateLexAndParse = validateLexAndParse;
40
- function validateLex(triedLex, validationSettings) {
41
- if (PQP.TaskUtils.isOk(triedLex) || !PQP.Lexer.LexError.isLexError(triedLex.error)) {
42
- return [];
43
- }
44
- const error = triedLex.error;
45
- const diagnostics = [];
46
- // TODO: handle other types of lexer errors
47
- if (error instanceof PQP.Lexer.LexError.ErrorLineMapError) {
48
- for (const errorLine of error.errorLineMap.values()) {
49
- const innerError = errorLine.error.innerError;
50
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
51
- if (innerError.graphemePosition) {
52
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
- const graphemePosition = innerError.graphemePosition;
54
- const message = innerError.message;
55
- const position = {
56
- line: graphemePosition.lineNumber,
57
- character: graphemePosition.lineCodeUnit,
58
- };
59
- // TODO: "lex" errors aren't that useful to display to end user. Should we make it more generic?
60
- diagnostics.push({
61
- code: diagnosticErrorCode_1.DiagnosticErrorCode.LexError,
62
- message,
63
- severity: vscode_languageserver_types_1.DiagnosticSeverity.Error,
64
- source: validationSettings === null || validationSettings === void 0 ? void 0 : validationSettings.source,
65
- range: {
66
- start: position,
67
- end: position,
68
- },
69
- });
70
- }
71
- }
72
- }
73
- return diagnostics;
74
- }
75
- function validateParse(triedParse, validationSettings) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- if (PQP.TaskUtils.isOk(triedParse) || !PQP.Parser.ParseError.isParseError(triedParse.error)) {
78
- return [];
79
- }
80
- const error = triedParse.error;
81
- const innerError = error.innerError;
82
- const maybeErrorToken = PQP.Parser.ParseError.maybeTokenFrom(innerError);
83
- const message = error.message;
84
- const parseContextState = error.state.contextState;
85
- let range;
86
- if (maybeErrorToken !== undefined) {
87
- range = {
88
- start: {
89
- line: maybeErrorToken.positionStart.lineNumber,
90
- character: maybeErrorToken.positionStart.lineCodeUnit,
91
- },
92
- end: {
93
- line: maybeErrorToken.positionEnd.lineNumber,
94
- character: maybeErrorToken.positionEnd.lineCodeUnit,
95
- },
96
- };
97
- }
98
- else {
99
- const maybeRoot = parseContextState.maybeRoot;
100
- if (maybeRoot === undefined) {
101
- return [];
102
- }
103
- const maybeLeaf = yield parser_1.NodeIdMapUtils.maybeRightMostLeaf(error.state.contextState.nodeIdMapCollection, maybeRoot.id);
104
- if (maybeLeaf === undefined) {
105
- return [];
106
- }
107
- const leafTokenRange = maybeLeaf.tokenRange;
108
- range = {
109
- start: {
110
- line: leafTokenRange.positionStart.lineNumber,
111
- character: leafTokenRange.positionStart.lineCodeUnit,
112
- },
113
- end: {
114
- line: leafTokenRange.positionEnd.lineNumber,
115
- character: leafTokenRange.positionEnd.lineCodeUnit,
116
- },
117
- };
118
- }
119
- return [
120
- {
121
- code: diagnosticErrorCode_1.DiagnosticErrorCode.ParseError,
122
- message,
123
- range,
124
- severity: vscode_languageserver_types_1.DiagnosticSeverity.Error,
125
- source: validationSettings === null || validationSettings === void 0 ? void 0 : validationSettings.source,
126
- },
127
- ];
128
- });
129
- }
130
- //# sourceMappingURL=validateLexAndParse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateLexAndParse.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/validate/validateLexAndParse.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * as WorkspaceCache from "./workspaceCache";
2
- export * as WorkspaceCacheUtils from "./workspaceCacheUtils";
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WorkspaceCacheUtils = exports.WorkspaceCache = void 0;
4
- exports.WorkspaceCache = require("./workspaceCache");
5
- exports.WorkspaceCacheUtils = require("./workspaceCacheUtils");
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/workspaceCache/index.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AACnD,+DAA6D"}
@@ -1,9 +0,0 @@
1
- import * as PQP from "@microsoft/powerquery-parser";
2
- import { Inspection } from "..";
3
- export interface CacheCollection {
4
- maybeLex: Promise<PQP.Task.TriedLexTask> | undefined;
5
- maybeParse: Promise<PQP.Task.TriedParseTask | undefined> | undefined;
6
- readonly inspectionByPosition: Map<string, Promise<Inspection.Inspected> | undefined>;
7
- readonly typeCache: Inspection.TypeCache;
8
- readonly version: number;
9
- }
@@ -1,5 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- //# sourceMappingURL=workspaceCache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workspaceCache.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/workspaceCache/workspaceCache.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC"}
@@ -1,13 +0,0 @@
1
- import * as PQP from "@microsoft/powerquery-parser";
2
- import type { TextDocument, TextDocumentContentChangeEvent } from "vscode-languageserver-textdocument";
3
- import type { Position } from "vscode-languageserver-types";
4
- import { CacheCollection } from "./workspaceCache";
5
- import { Inspection } from "..";
6
- import { InspectionSettings } from "../inspectionSettings";
7
- export declare function close(textDocument: TextDocument): void;
8
- export declare function getTypeCache(textDocument: TextDocument, isWorkspaceCacheAllowed: boolean): Inspection.TypeCache;
9
- export declare function getOrCreateCacheCollection(textDocument: TextDocument, isWorkspaceCacheAllowed: boolean): CacheCollection;
10
- export declare function getOrCreateLexPromise(textDocument: TextDocument, lexSettings: PQP.LexSettings, isWorkspaceCacheAllowed: boolean): Promise<PQP.Task.TriedLexTask>;
11
- export declare function getOrCreateParsePromise(textDocument: TextDocument, lexAndParseSettings: PQP.LexSettings & PQP.ParseSettings, isWorkspaceCacheAllowed: boolean): Promise<PQP.Task.TriedParseTask | undefined>;
12
- export declare function getOrCreateInspectedPromise(textDocument: TextDocument, inspectionSettings: InspectionSettings, position: Position): Promise<Inspection.Inspected | undefined>;
13
- export declare function update(textDocument: TextDocument, _changes: ReadonlyArray<TextDocumentContentChangeEvent>, _version: number): void;
@@ -1,130 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
- return new (P || (P = Promise))(function (resolve, reject) {
7
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
- step((generator = generator.apply(thisArg, _arguments || [])).next());
11
- });
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.update = exports.getOrCreateInspectedPromise = exports.getOrCreateParsePromise = exports.getOrCreateLexPromise = exports.getOrCreateCacheCollection = exports.getTypeCache = exports.close = void 0;
15
- const PQP = require("@microsoft/powerquery-parser");
16
- const __1 = require("..");
17
- const inspection_1 = require("../inspection");
18
- const CacheCollectionByCacheKey = new Map();
19
- function close(textDocument) {
20
- const collectionCacheKey = createCollectionCacheKey(textDocument);
21
- CacheCollectionByCacheKey.delete(collectionCacheKey);
22
- }
23
- exports.close = close;
24
- function getTypeCache(textDocument, isWorkspaceCacheAllowed) {
25
- if (!isWorkspaceCacheAllowed) {
26
- return inspection_1.TypeCacheUtils.createEmptyCache();
27
- }
28
- const cacheCollection = getOrCreateCacheCollection(textDocument, isWorkspaceCacheAllowed);
29
- return cacheCollection.typeCache;
30
- }
31
- exports.getTypeCache = getTypeCache;
32
- function getOrCreateCacheCollection(textDocument, isWorkspaceCacheAllowed) {
33
- if (!isWorkspaceCacheAllowed) {
34
- return createEmptyCacheCollection(textDocument.version);
35
- }
36
- const cacheKey = createCollectionCacheKey(textDocument);
37
- const maybeCollection = CacheCollectionByCacheKey.get(cacheKey);
38
- if (maybeCollection !== undefined) {
39
- if (textDocument.version === maybeCollection.version) {
40
- return maybeCollection;
41
- }
42
- else {
43
- close(textDocument);
44
- }
45
- }
46
- const cacheCollection = createEmptyCacheCollection(textDocument.version);
47
- if (isWorkspaceCacheAllowed) {
48
- CacheCollectionByCacheKey.set(cacheKey, cacheCollection);
49
- }
50
- return cacheCollection;
51
- }
52
- exports.getOrCreateCacheCollection = getOrCreateCacheCollection;
53
- function getOrCreateLexPromise(textDocument, lexSettings, isWorkspaceCacheAllowed) {
54
- const cacheCollection = getOrCreateCacheCollection(textDocument, isWorkspaceCacheAllowed);
55
- if (cacheCollection.maybeLex) {
56
- return cacheCollection.maybeLex;
57
- }
58
- const lexPromise = Promise.resolve(PQP.TaskUtils.tryLex(lexSettings, textDocument.getText()));
59
- cacheCollection.maybeLex = lexPromise;
60
- return lexPromise;
61
- }
62
- exports.getOrCreateLexPromise = getOrCreateLexPromise;
63
- function getOrCreateParsePromise(textDocument, lexAndParseSettings, isWorkspaceCacheAllowed) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const cacheCollection = getOrCreateCacheCollection(textDocument, isWorkspaceCacheAllowed);
66
- if (cacheCollection.maybeParse) {
67
- return cacheCollection.maybeParse;
68
- }
69
- const maybeTriedLexPromise = getOrCreateLexPromise(textDocument, lexAndParseSettings, isWorkspaceCacheAllowed);
70
- const maybeTriedLex = yield maybeTriedLexPromise;
71
- if (PQP.TaskUtils.isError(maybeTriedLex)) {
72
- cacheCollection.maybeParse = Promise.resolve(undefined);
73
- return undefined;
74
- }
75
- cacheCollection.maybeParse = PQP.TaskUtils.tryParse(lexAndParseSettings, maybeTriedLex.lexerSnapshot);
76
- return cacheCollection.maybeParse;
77
- });
78
- }
79
- exports.getOrCreateParsePromise = getOrCreateParsePromise;
80
- function getOrCreateInspectedPromise(textDocument, inspectionSettings, position) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const cacheCollection = getOrCreateCacheCollection(textDocument, inspectionSettings.isWorkspaceCacheAllowed);
83
- const positionMapKey = createInspectionByPositionKey(position);
84
- if (cacheCollection.inspectionByPosition.has(positionMapKey)) {
85
- return cacheCollection.inspectionByPosition.get(positionMapKey);
86
- }
87
- const maybeTriedParsePromise = getOrCreateParsePromise(textDocument, inspectionSettings, inspectionSettings.isWorkspaceCacheAllowed);
88
- const maybeTriedParse = yield maybeTriedParsePromise;
89
- if (maybeTriedParse === undefined ||
90
- !PQP.TaskUtils.isParseStage(maybeTriedParse) ||
91
- PQP.TaskUtils.isParseStageCommonError(maybeTriedParse)) {
92
- if (inspectionSettings.isWorkspaceCacheAllowed) {
93
- cacheCollection.inspectionByPosition.set(positionMapKey, undefined);
94
- }
95
- return undefined;
96
- }
97
- let parseState;
98
- if (PQP.TaskUtils.isParseStageOk(maybeTriedParse)) {
99
- parseState = maybeTriedParse.parseState;
100
- }
101
- else if (PQP.TaskUtils.isParseStageParseError(maybeTriedParse)) {
102
- parseState = maybeTriedParse.parseState;
103
- }
104
- else {
105
- throw PQP.Assert.isNever(maybeTriedParse);
106
- }
107
- return __1.Inspection.inspect(inspectionSettings, parseState, PQP.TaskUtils.isParseStageParseError(maybeTriedParse) ? maybeTriedParse.error : undefined, position, cacheCollection.typeCache);
108
- });
109
- }
110
- exports.getOrCreateInspectedPromise = getOrCreateInspectedPromise;
111
- function update(textDocument, _changes, _version) {
112
- close(textDocument);
113
- }
114
- exports.update = update;
115
- function createCollectionCacheKey(textDocument) {
116
- return `${textDocument.uri}`;
117
- }
118
- function createEmptyCacheCollection(version) {
119
- return {
120
- maybeLex: undefined,
121
- maybeParse: undefined,
122
- inspectionByPosition: new Map(),
123
- typeCache: inspection_1.TypeCacheUtils.createEmptyCache(),
124
- version,
125
- };
126
- }
127
- function createInspectionByPositionKey(position) {
128
- return `${position.character};${position.line}`;
129
- }
130
- //# sourceMappingURL=workspaceCacheUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workspaceCacheUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/workspaceCache/workspaceCacheUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AAKpD,0BAAgC;AAEhC,8CAA+C;AAE/C,MAAM,yBAAyB,GAAiC,IAAI,GAAG,EAAE,CAAC;AAE1E,SAAgB,KAAK,CAAC,YAA0B;IAC5C,MAAM,kBAAkB,GAAW,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAC1E,yBAAyB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACzD,CAAC;AAHD,sBAGC;AAED,SAAgB,YAAY,CAAC,YAA0B,EAAE,uBAAgC;IACrF,IAAI,CAAC,uBAAuB,EAAE;QAC1B,OAAO,2BAAc,CAAC,gBAAgB,EAAE,CAAC;KAC5C;IAED,MAAM,eAAe,GAAoB,0BAA0B,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IAE3G,OAAO,eAAe,CAAC,SAAS,CAAC;AACrC,CAAC;AARD,oCAQC;AAED,SAAgB,0BAA0B,CACtC,YAA0B,EAC1B,uBAAgC;IAEhC,IAAI,CAAC,uBAAuB,EAAE;QAC1B,OAAO,0BAA0B,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;KAC3D;IAED,MAAM,QAAQ,GAAW,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAChE,MAAM,eAAe,GAAgC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE7F,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,IAAI,YAAY,CAAC,OAAO,KAAK,eAAe,CAAC,OAAO,EAAE;YAClD,OAAO,eAAe,CAAC;SAC1B;aAAM;YACH,KAAK,CAAC,YAAY,CAAC,CAAC;SACvB;KACJ;IAED,MAAM,eAAe,GAAoB,0BAA0B,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAE1F,IAAI,uBAAuB,EAAE;QACzB,yBAAyB,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;KAC5D;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AA1BD,gEA0BC;AAED,SAAgB,qBAAqB,CACjC,YAA0B,EAC1B,WAA4B,EAC5B,uBAAgC;IAEhC,MAAM,eAAe,GAAoB,0BAA0B,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IAE3G,IAAI,eAAe,CAAC,QAAQ,EAAE;QAC1B,OAAO,eAAe,CAAC,QAAQ,CAAC;KACnC;IAED,MAAM,UAAU,GAAmC,OAAO,CAAC,OAAO,CAC9D,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC,CAC5D,CAAC;IAEF,eAAe,CAAC,QAAQ,GAAG,UAAU,CAAC;IAEtC,OAAO,UAAU,CAAC;AACtB,CAAC;AAlBD,sDAkBC;AAED,SAAsB,uBAAuB,CACzC,YAA0B,EAC1B,mBAAwD,EACxD,uBAAgC;;QAEhC,MAAM,eAAe,GAAoB,0BAA0B,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;QAE3G,IAAI,eAAe,CAAC,UAAU,EAAE;YAC5B,OAAO,eAAe,CAAC,UAAU,CAAC;SACrC;QAED,MAAM,oBAAoB,GAAmC,qBAAqB,CAC9E,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,CAC1B,CAAC;QAEF,MAAM,aAAa,GAAsC,MAAM,oBAAoB,CAAC;QAEpF,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACtC,eAAe,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAExD,OAAO,SAAS,CAAC;SACpB;QAED,eAAe,CAAC,UAAU,GAAG,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;QAEtG,OAAO,eAAe,CAAC,UAAU,CAAC;IACtC,CAAC;CAAA;AA5BD,0DA4BC;AAED,SAAsB,2BAA2B,CAC7C,YAA0B,EAC1B,kBAAsC,EACtC,QAAkB;;QAElB,MAAM,eAAe,GAAoB,0BAA0B,CAC/D,YAAY,EACZ,kBAAkB,CAAC,uBAAuB,CAC7C,CAAC;QAEF,MAAM,cAAc,GAAW,6BAA6B,CAAC,QAAQ,CAAC,CAAC;QAEvE,IAAI,eAAe,CAAC,oBAAoB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YAC1D,OAAO,eAAe,CAAC,oBAAoB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;SACnE;QAED,MAAM,sBAAsB,GAAiD,uBAAuB,CAChG,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,CAAC,uBAAuB,CAC7C,CAAC;QAEF,MAAM,eAAe,GAAwC,MAAM,sBAAsB,CAAC;QAE1F,IACI,eAAe,KAAK,SAAS;YAC7B,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,eAAe,CAAC;YAC5C,GAAG,CAAC,SAAS,CAAC,uBAAuB,CAAC,eAAe,CAAC,EACxD;YACE,IAAI,kBAAkB,CAAC,uBAAuB,EAAE;gBAC5C,eAAe,CAAC,oBAAoB,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;aACvE;YAED,OAAO,SAAS,CAAC;SACpB;QAED,IAAI,UAAiC,CAAC;QAEtC,IAAI,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE;YAC/C,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;SAC3C;aAAM,IAAI,GAAG,CAAC,SAAS,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAE;YAC9D,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;SAC3C;aAAM;YACH,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SAC7C;QAED,OAAO,cAAU,CAAC,OAAO,CACrB,kBAAkB,EAClB,UAAU,EACV,GAAG,CAAC,SAAS,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EACzF,QAAQ,EACR,eAAe,CAAC,SAAS,CAC5B,CAAC;IACN,CAAC;CAAA;AArDD,kEAqDC;AAED,SAAgB,MAAM,CAClB,YAA0B,EAC1B,QAAuD,EACvD,QAAgB;IAEhB,KAAK,CAAC,YAAY,CAAC,CAAC;AACxB,CAAC;AAND,wBAMC;AAED,SAAS,wBAAwB,CAAC,YAA0B;IACxD,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IAC/C,OAAO;QACH,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,SAAS;QACrB,oBAAoB,EAAE,IAAI,GAAG,EAAE;QAC/B,SAAS,EAAE,2BAAc,CAAC,gBAAgB,EAAE;QAC5C,OAAO;KACV,CAAC;AACN,CAAC;AAED,SAAS,6BAA6B,CAAC,QAAkB;IACrD,OAAO,GAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;AACpD,CAAC"}