@microsoft/powerquery-language-services 0.9.2 → 0.10.0

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 (173) hide show
  1. package/lib/powerquery-language-services/analysis/analysisBase.js +51 -48
  2. package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
  3. package/lib/powerquery-language-services/documentSymbols.js +6 -5
  4. package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
  5. package/lib/powerquery-language-services/externalType/externalType.d.ts +1 -1
  6. package/lib/powerquery-language-services/externalType/externalType.js.map +1 -1
  7. package/lib/powerquery-language-services/externalType/externalTypeUtils.js +3 -2
  8. package/lib/powerquery-language-services/externalType/externalTypeUtils.js.map +1 -1
  9. package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +2 -2
  10. package/lib/powerquery-language-services/inspection/activeNode/activeNode.js.map +1 -1
  11. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +41 -40
  12. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
  13. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +4 -2
  14. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +118 -95
  15. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
  16. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +1 -3
  17. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +8 -31
  18. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
  19. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +31 -31
  20. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
  21. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +23 -22
  22. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
  23. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +6 -6
  24. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
  25. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +2 -2
  26. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
  27. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +6 -6
  28. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
  29. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +1 -1
  30. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
  31. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +6 -5
  32. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +1 -1
  33. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js +6 -5
  34. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
  35. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.d.ts +2 -2
  36. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +122 -78
  37. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
  38. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +56 -54
  39. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
  40. package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +6 -4
  41. package/lib/powerquery-language-services/inspection/autocomplete/task.js +6 -9
  42. package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
  43. package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.d.ts +0 -1
  44. package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js +3 -3
  45. package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js.map +1 -1
  46. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +17 -14
  47. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -1
  48. package/lib/powerquery-language-services/inspection/expectedType.js +61 -60
  49. package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
  50. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +15 -10
  51. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
  52. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +8 -6
  53. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
  54. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +6 -6
  55. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
  56. package/lib/powerquery-language-services/inspection/scope/scope.d.ts +1 -1
  57. package/lib/powerquery-language-services/inspection/scope/scope.js.map +1 -1
  58. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +35 -33
  59. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
  60. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +20 -18
  61. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
  62. package/lib/powerquery-language-services/inspection/task.js +17 -14
  63. package/lib/powerquery-language-services/inspection/task.js.map +1 -1
  64. package/lib/powerquery-language-services/inspection/type/inspectType/common.js +80 -79
  65. package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
  66. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +4 -3
  67. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
  68. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +20 -20
  69. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map +1 -1
  70. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +5 -4
  71. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
  72. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +8 -7
  73. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
  74. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +6 -5
  75. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
  76. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +23 -22
  77. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
  78. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +11 -10
  79. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
  80. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +4 -3
  81. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
  82. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +15 -13
  83. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
  84. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +13 -11
  85. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
  86. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +4 -3
  87. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
  88. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +4 -3
  89. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
  90. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +10 -9
  91. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
  92. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +10 -9
  93. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
  94. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +8 -6
  95. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
  96. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +9 -7
  97. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
  98. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +9 -8
  99. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
  100. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +6 -5
  101. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
  102. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +5 -4
  103. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
  104. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +5 -4
  105. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
  106. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +10 -8
  107. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
  108. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +8 -6
  109. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
  110. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +9 -7
  111. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
  112. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +10 -9
  113. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
  114. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +74 -73
  115. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
  116. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +11 -9
  117. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
  118. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +12 -11
  119. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
  120. package/lib/powerquery-language-services/inspection/type/task.js +6 -4
  121. package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
  122. package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -1
  123. package/lib/powerquery-language-services/inspectionSettings.js.map +1 -1
  124. package/lib/powerquery-language-services/inspectionUtils.js +22 -21
  125. package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
  126. package/lib/powerquery-language-services/library/index.d.ts +1 -0
  127. package/lib/powerquery-language-services/library/index.js +2 -1
  128. package/lib/powerquery-language-services/library/index.js.map +1 -1
  129. package/lib/powerquery-language-services/library/library.d.ts +8 -2
  130. package/lib/powerquery-language-services/library/library.js +4 -1
  131. package/lib/powerquery-language-services/library/library.js.map +1 -1
  132. package/lib/powerquery-language-services/library/libraryDefinitionUtils.d.ts +21 -0
  133. package/lib/powerquery-language-services/library/libraryDefinitionUtils.js +108 -0
  134. package/lib/powerquery-language-services/library/libraryDefinitionUtils.js.map +1 -0
  135. package/lib/powerquery-language-services/library/librarySymbolUtils.d.ts +3 -3
  136. package/lib/powerquery-language-services/library/librarySymbolUtils.js +21 -15
  137. package/lib/powerquery-language-services/library/librarySymbolUtils.js.map +1 -1
  138. package/lib/powerquery-language-services/library/libraryUtils.d.ts +5 -16
  139. package/lib/powerquery-language-services/library/libraryUtils.js +15 -71
  140. package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
  141. package/lib/powerquery-language-services/localization/templates.js +42 -42
  142. package/lib/powerquery-language-services/localization/templates.js.map +1 -1
  143. package/lib/powerquery-language-services/positionUtils.d.ts +1 -0
  144. package/lib/powerquery-language-services/positionUtils.js +20 -15
  145. package/lib/powerquery-language-services/positionUtils.js.map +1 -1
  146. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +15 -15
  147. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
  148. package/lib/powerquery-language-services/providers/libraryProvider.d.ts +2 -3
  149. package/lib/powerquery-language-services/providers/libraryProvider.js +16 -13
  150. package/lib/powerquery-language-services/providers/libraryProvider.js.map +1 -1
  151. package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +15 -13
  152. package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -1
  153. package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +21 -20
  154. package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js.map +1 -1
  155. package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js +64 -62
  156. package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js.map +1 -1
  157. package/lib/powerquery-language-services/providers/nullSymbolProvider.js +4 -1
  158. package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
  159. package/lib/powerquery-language-services/tokenPositionComparison.d.ts +1 -1
  160. package/lib/powerquery-language-services/tokenPositionComparison.js.map +1 -1
  161. package/lib/powerquery-language-services/trace.d.ts +4 -4
  162. package/lib/powerquery-language-services/trace.js.map +1 -1
  163. package/lib/powerquery-language-services/validate/validate.js +2 -1
  164. package/lib/powerquery-language-services/validate/validate.js.map +1 -1
  165. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +13 -11
  166. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
  167. package/lib/powerquery-language-services/validate/validateFunctionExpression.js +5 -3
  168. package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
  169. package/lib/powerquery-language-services/validate/validateInvokeExpression.js +5 -3
  170. package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
  171. package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +11 -8
  172. package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
  173. package/package.json +4 -4
@@ -16,11 +16,12 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
16
16
  const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
17
17
  const vscode_languageserver_types_1 = require("vscode-languageserver-types");
18
18
  const _1 = require(".");
19
+ const inspectionSettings_1 = require("./inspectionSettings");
19
20
  const autocomplete_1 = require("./inspection/autocomplete");
20
21
  const library_1 = require("./library");
21
22
  function inspectionSettings(settings, overrides) {
22
23
  var _a, _b, _c, _d;
23
- return Object.assign(Object.assign({}, settings), { isWorkspaceCacheAllowed: (_a = overrides === null || overrides === void 0 ? void 0 : overrides.isWorkspaceCacheAllowed) !== null && _a !== void 0 ? _a : true, library: (_b = overrides === null || overrides === void 0 ? void 0 : overrides.library) !== null && _b !== void 0 ? _b : library_1.Library.NoOpLibrary, typeStrategy: (_c = overrides === null || overrides === void 0 ? void 0 : overrides.typeStrategy) !== null && _c !== void 0 ? _c : "Extended" /* Extended */, eachScopeById: (_d = overrides === null || overrides === void 0 ? void 0 : overrides.eachScopeById) !== null && _d !== void 0 ? _d : undefined });
24
+ return Object.assign(Object.assign({}, settings), { isWorkspaceCacheAllowed: (_a = overrides === null || overrides === void 0 ? void 0 : overrides.isWorkspaceCacheAllowed) !== null && _a !== void 0 ? _a : true, library: (_b = overrides === null || overrides === void 0 ? void 0 : overrides.library) !== null && _b !== void 0 ? _b : library_1.Library.NoOpLibrary, typeStrategy: (_c = overrides === null || overrides === void 0 ? void 0 : overrides.typeStrategy) !== null && _c !== void 0 ? _c : inspectionSettings_1.TypeStrategy.Extended, eachScopeById: (_d = overrides === null || overrides === void 0 ? void 0 : overrides.eachScopeById) !== null && _d !== void 0 ? _d : undefined });
24
25
  }
25
26
  exports.inspectionSettings = inspectionSettings;
26
27
  function getAutocompleteItemsFromScope(context) {
@@ -52,17 +53,17 @@ function getIdentifierType(inspected, identifier) {
52
53
  exports.getIdentifierType = getIdentifierType;
53
54
  function getScopeItemKindText(scopeItemKind) {
54
55
  switch (scopeItemKind) {
55
- case "Each" /* Each */:
56
+ case _1.Inspection.ScopeItemKind.Each:
56
57
  return "each";
57
- case "LetVariable" /* LetVariable */:
58
+ case _1.Inspection.ScopeItemKind.LetVariable:
58
59
  return "let-variable";
59
- case "Parameter" /* Parameter */:
60
+ case _1.Inspection.ScopeItemKind.Parameter:
60
61
  return "parameter";
61
- case "RecordField" /* RecordField */:
62
+ case _1.Inspection.ScopeItemKind.RecordField:
62
63
  return "record-field";
63
- case "SectionMember" /* SectionMember */:
64
+ case _1.Inspection.ScopeItemKind.SectionMember:
64
65
  return "section-member";
65
- case "Undefined" /* Undefined */:
66
+ case _1.Inspection.ScopeItemKind.Undefined:
66
67
  return "unknown";
67
68
  default:
68
69
  throw powerquery_parser_1.Assert.isNever(scopeItemKind);
@@ -71,15 +72,15 @@ function getScopeItemKindText(scopeItemKind) {
71
72
  exports.getScopeItemKindText = getScopeItemKindText;
72
73
  function getSymbolKindFromLiteralExpression(node) {
73
74
  switch (node.literalKind) {
74
- case "List" /* List */:
75
+ case language_1.Ast.LiteralKind.List:
75
76
  return vscode_languageserver_types_1.SymbolKind.Array;
76
- case "Logical" /* Logical */:
77
+ case language_1.Ast.LiteralKind.Logical:
77
78
  return vscode_languageserver_types_1.SymbolKind.Boolean;
78
- case "Null" /* Null */:
79
+ case language_1.Ast.LiteralKind.Null:
79
80
  return vscode_languageserver_types_1.SymbolKind.Null;
80
- case "Numeric" /* Numeric */:
81
+ case language_1.Ast.LiteralKind.Numeric:
81
82
  return vscode_languageserver_types_1.SymbolKind.Number;
82
- case "Text" /* Text */:
83
+ case language_1.Ast.LiteralKind.Text:
83
84
  return vscode_languageserver_types_1.SymbolKind.String;
84
85
  default:
85
86
  return powerquery_parser_1.Assert.isNever(node.literalKind);
@@ -88,21 +89,21 @@ function getSymbolKindFromLiteralExpression(node) {
88
89
  exports.getSymbolKindFromLiteralExpression = getSymbolKindFromLiteralExpression;
89
90
  function getSymbolKindFromNode(node) {
90
91
  switch (node.kind) {
91
- case "Constant" /* Constant */:
92
+ case language_1.Ast.NodeKind.Constant:
92
93
  return vscode_languageserver_types_1.SymbolKind.Constant;
93
- case "FunctionExpression" /* FunctionExpression */:
94
+ case language_1.Ast.NodeKind.FunctionExpression:
94
95
  return vscode_languageserver_types_1.SymbolKind.Function;
95
- case "ListExpression" /* ListExpression */:
96
- case "ListLiteral" /* ListLiteral */:
96
+ case language_1.Ast.NodeKind.ListExpression:
97
+ case language_1.Ast.NodeKind.ListLiteral:
97
98
  return vscode_languageserver_types_1.SymbolKind.Array;
98
- case "LiteralExpression" /* LiteralExpression */:
99
+ case language_1.Ast.NodeKind.LiteralExpression:
99
100
  return getSymbolKindFromLiteralExpression(node);
100
- case "MetadataExpression" /* MetadataExpression */:
101
+ case language_1.Ast.NodeKind.MetadataExpression:
101
102
  return vscode_languageserver_types_1.SymbolKind.TypeParameter;
102
- case "RecordExpression" /* RecordExpression */:
103
- case "RecordLiteral" /* RecordLiteral */:
103
+ case language_1.Ast.NodeKind.RecordExpression:
104
+ case language_1.Ast.NodeKind.RecordLiteral:
104
105
  return vscode_languageserver_types_1.SymbolKind.Struct;
105
- case "Section" /* Section */:
106
+ case language_1.Ast.NodeKind.Section:
106
107
  return vscode_languageserver_types_1.SymbolKind.Module;
107
108
  default:
108
109
  return vscode_languageserver_types_1.SymbolKind.Variable;
@@ -1 +1 @@
1
- {"version":3,"file":"inspectionUtils.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspectionUtils.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionUtils.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export * as Library from "./library";
2
+ export * as LibraryDefinitionUtils from "./libraryDefinitionUtils";
2
3
  export * as LibrarySymbol from "./librarySymbol";
3
4
  export * as LibrarySymbolUtils from "./librarySymbolUtils";
4
5
  export * as LibraryUtils from "./libraryUtils";
@@ -2,8 +2,9 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.LibraryUtils = exports.LibrarySymbolUtils = exports.LibrarySymbol = exports.Library = void 0;
5
+ exports.LibraryUtils = exports.LibrarySymbolUtils = exports.LibrarySymbol = exports.LibraryDefinitionUtils = exports.Library = void 0;
6
6
  exports.Library = require("./library");
7
+ exports.LibraryDefinitionUtils = require("./libraryDefinitionUtils");
7
8
  exports.LibrarySymbol = require("./librarySymbol");
8
9
  exports.LibrarySymbolUtils = require("./librarySymbolUtils");
9
10
  exports.LibraryUtils = require("./libraryUtils");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,uCAAqC;AACrC,mDAAiD;AACjD,6DAA2D;AAC3D,iDAA+C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,uCAAqC;AACrC,qEAAmE;AACnE,mDAAiD;AACjD,6DAA2D;AAC3D,iDAA+C"}
@@ -1,9 +1,8 @@
1
1
  import { CompletionItemKind } from "vscode-languageserver-types";
2
2
  import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
3
3
  import { ExternalType } from "../externalType";
4
- export declare type LibraryDefinitions = ReadonlyMap<string, TLibraryDefinition>;
5
4
  export declare type TLibraryDefinition = LibraryConstant | LibraryFunction | LibraryType;
6
- export declare const enum LibraryDefinitionKind {
5
+ export declare enum LibraryDefinitionKind {
7
6
  Constant = "Constant",
8
7
  Function = "Function",
9
8
  Type = "Type"
@@ -19,6 +18,13 @@ export interface ILibraryDefinition {
19
18
  readonly kind: LibraryDefinitionKind;
20
19
  readonly label: string;
21
20
  }
21
+ export interface LibraryDefinitions {
22
+ /** Used by the host to inject library definitions,
23
+ * either because they're dynamically generated or if they prefer lazy evaluation. */
24
+ readonly dynamicLibraryDefinitions: () => ReadonlyMap<string, TLibraryDefinition>;
25
+ /** Represents an unchanging standard library. It's expected to never change. */
26
+ readonly staticLibraryDefinitions: ReadonlyMap<string, TLibraryDefinition>;
27
+ }
22
28
  export interface LibraryConstant extends ILibraryDefinition {
23
29
  readonly kind: LibraryDefinitionKind.Constant;
24
30
  }
@@ -12,6 +12,9 @@ var LibraryDefinitionKind;
12
12
  })(LibraryDefinitionKind = exports.LibraryDefinitionKind || (exports.LibraryDefinitionKind = {}));
13
13
  exports.NoOpLibrary = {
14
14
  externalTypeResolver: externalType_1.ExternalType.noOpExternalTypeResolver,
15
- libraryDefinitions: new Map(),
15
+ libraryDefinitions: {
16
+ dynamicLibraryDefinitions: () => new Map(),
17
+ staticLibraryDefinitions: new Map(),
18
+ },
16
19
  };
17
20
  //# sourceMappingURL=library.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/library.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAKlC,kDAA+C;AAM/C,IAAkB,qBAIjB;AAJD,WAAkB,qBAAqB;IACnC,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,sCAAa,CAAA;AACjB,CAAC,EAJiB,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAItC;AAoCY,QAAA,WAAW,GAAa;IACjC,oBAAoB,EAAE,2BAAY,CAAC,wBAAwB;IAC3D,kBAAkB,EAAE,IAAI,GAAG,EAAE;CAChC,CAAC"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/library.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAKlC,kDAA+C;AAI/C,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,sCAAa,CAAA;AACjB,CAAC,EAJW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAIhC;AA4CY,QAAA,WAAW,GAAa;IACjC,oBAAoB,EAAE,2BAAY,CAAC,wBAAwB;IAC3D,kBAAkB,EAAE;QAChB,yBAAyB,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAA8B;QACtE,wBAAwB,EAAE,IAAI,GAAG,EAA8B;KAClE;CACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { CompletionItemKind, ParameterInformation, SignatureInformation } from "vscode-languageserver-types";
2
+ import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
3
+ import { LibraryConstant, LibraryDefinitions, LibraryFunction, LibraryParameter, LibraryType, TLibraryDefinition } from "./library";
4
+ import { ExternalType } from "../externalType";
5
+ export declare function assertAsConstant(definition: TLibraryDefinition | undefined): LibraryConstant;
6
+ export declare function assertAsFunction(definition: TLibraryDefinition | undefined): LibraryFunction;
7
+ export declare function assertAsType(definition: TLibraryDefinition | undefined): LibraryType;
8
+ export declare function assertIsConstant(definition: TLibraryDefinition | undefined): asserts definition is LibraryConstant;
9
+ export declare function assertIsFunction(definition: TLibraryDefinition | undefined): asserts definition is LibraryFunction;
10
+ export declare function assertIsType(definition: TLibraryDefinition | undefined): asserts definition is LibraryType;
11
+ export declare function constantDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind): LibraryConstant;
12
+ export declare function externalTypeResolver(libraryDefinitions: LibraryDefinitions): ExternalType.TExternalTypeResolverFn;
13
+ export declare function functionDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind, parameters: ReadonlyArray<LibraryParameter>): LibraryFunction;
14
+ export declare function getDefinition(libraryDefinitions: LibraryDefinitions, identifierLiteral: string): TLibraryDefinition | undefined;
15
+ export declare function getKeys(libraryDefinitions: LibraryDefinitions): ReadonlyArray<string>;
16
+ export declare function hasDefinition(libraryDefinitions: LibraryDefinitions, key: string): boolean;
17
+ export declare function isConstant(definition: TLibraryDefinition | undefined): definition is LibraryConstant;
18
+ export declare function isFunction(definition: TLibraryDefinition | undefined): definition is LibraryFunction;
19
+ export declare function isType(definition: TLibraryDefinition | undefined): definition is LibraryType;
20
+ export declare function signatureInformation(libraryFunctionSignature: LibraryFunction): SignatureInformation;
21
+ export declare function parameterInformation(libraryParameter: LibraryParameter): ParameterInformation;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT license.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.parameterInformation = exports.signatureInformation = exports.isType = exports.isFunction = exports.isConstant = exports.hasDefinition = exports.getKeys = exports.getDefinition = exports.functionDefinition = exports.externalTypeResolver = exports.constantDefinition = exports.assertIsType = exports.assertIsFunction = exports.assertIsConstant = exports.assertAsType = exports.assertAsFunction = exports.assertAsConstant = void 0;
6
+ const library_1 = require("./library");
7
+ function assertAsConstant(definition) {
8
+ assertIsConstant(definition);
9
+ return definition;
10
+ }
11
+ exports.assertAsConstant = assertAsConstant;
12
+ function assertAsFunction(definition) {
13
+ assertIsFunction(definition);
14
+ return definition;
15
+ }
16
+ exports.assertAsFunction = assertAsFunction;
17
+ function assertAsType(definition) {
18
+ assertIsType(definition);
19
+ return definition;
20
+ }
21
+ exports.assertAsType = assertAsType;
22
+ function assertIsConstant(definition) {
23
+ if (!isConstant(definition)) {
24
+ throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Constant}`);
25
+ }
26
+ }
27
+ exports.assertIsConstant = assertIsConstant;
28
+ function assertIsFunction(definition) {
29
+ if (!isFunction(definition)) {
30
+ throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Function}`);
31
+ }
32
+ }
33
+ exports.assertIsFunction = assertIsFunction;
34
+ function assertIsType(definition) {
35
+ if (!isType(definition)) {
36
+ throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Type}`);
37
+ }
38
+ }
39
+ exports.assertIsType = assertIsType;
40
+ function constantDefinition(label, description, asType, completionItemKind) {
41
+ return {
42
+ kind: library_1.LibraryDefinitionKind.Constant,
43
+ asPowerQueryType: asType,
44
+ completionItemKind,
45
+ description,
46
+ label,
47
+ };
48
+ }
49
+ exports.constantDefinition = constantDefinition;
50
+ function externalTypeResolver(libraryDefinitions) {
51
+ return (request) => { var _a; return (_a = getDefinition(libraryDefinitions, request.identifierLiteral)) === null || _a === void 0 ? void 0 : _a.asPowerQueryType; };
52
+ }
53
+ exports.externalTypeResolver = externalTypeResolver;
54
+ function functionDefinition(label, description, asType, completionItemKind, parameters) {
55
+ return {
56
+ kind: library_1.LibraryDefinitionKind.Function,
57
+ asPowerQueryType: asType,
58
+ completionItemKind,
59
+ description,
60
+ label,
61
+ parameters,
62
+ };
63
+ }
64
+ exports.functionDefinition = functionDefinition;
65
+ function getDefinition(libraryDefinitions, identifierLiteral) {
66
+ var _a;
67
+ return ((_a = libraryDefinitions.staticLibraryDefinitions.get(identifierLiteral)) !== null && _a !== void 0 ? _a : libraryDefinitions.dynamicLibraryDefinitions().get(identifierLiteral));
68
+ }
69
+ exports.getDefinition = getDefinition;
70
+ function getKeys(libraryDefinitions) {
71
+ return [
72
+ ...libraryDefinitions.staticLibraryDefinitions.keys(),
73
+ ...libraryDefinitions.dynamicLibraryDefinitions().keys(),
74
+ ];
75
+ }
76
+ exports.getKeys = getKeys;
77
+ function hasDefinition(libraryDefinitions, key) {
78
+ return getDefinition(libraryDefinitions, key) !== undefined;
79
+ }
80
+ exports.hasDefinition = hasDefinition;
81
+ function isConstant(definition) {
82
+ return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Constant;
83
+ }
84
+ exports.isConstant = isConstant;
85
+ function isFunction(definition) {
86
+ return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Function;
87
+ }
88
+ exports.isFunction = isFunction;
89
+ function isType(definition) {
90
+ return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Type;
91
+ }
92
+ exports.isType = isType;
93
+ function signatureInformation(libraryFunctionSignature) {
94
+ return {
95
+ label: libraryFunctionSignature.label,
96
+ documentation: libraryFunctionSignature.description,
97
+ parameters: libraryFunctionSignature.parameters.map(parameterInformation),
98
+ };
99
+ }
100
+ exports.signatureInformation = signatureInformation;
101
+ function parameterInformation(libraryParameter) {
102
+ return {
103
+ label: libraryParameter.label,
104
+ documentation: undefined,
105
+ };
106
+ }
107
+ exports.parameterInformation = parameterInformation;
108
+ //# sourceMappingURL=libraryDefinitionUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libraryDefinitionUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/libraryDefinitionUtils.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ export declare type IncompleteLibrary = {
7
7
  readonly invalidSymbols: ReadonlyArray<LibrarySymbol>;
8
8
  };
9
9
  export declare type IncompleteLibraryDefinitions = {
10
- readonly libraryDefinitions: Library.LibraryDefinitions;
10
+ readonly libraryDefinitions: ReadonlyMap<string, Library.TLibraryDefinition>;
11
11
  readonly invalidSymbols: ReadonlyArray<LibrarySymbol>;
12
12
  };
13
- export declare function createLibrary(librarySymbols: ReadonlyArray<LibrarySymbol>, externalTypeResolverFn: ExternalType.TExternalTypeResolverFn | undefined): PartialResult<Library.ILibrary, IncompleteLibrary, ReadonlyArray<LibrarySymbol>>;
14
- export declare function createLibraryDefinitions(librarySymbols: ReadonlyArray<LibrarySymbol>): PartialResult<Library.LibraryDefinitions, IncompleteLibraryDefinitions, ReadonlyArray<LibrarySymbol>>;
13
+ export declare function createLibrary(librarySymbols: ReadonlyArray<LibrarySymbol>, dynamicLibraryDefinitions: () => ReadonlyMap<string, Library.TLibraryDefinition>, externalTypeResolverFn: ExternalType.TExternalTypeResolverFn | undefined): PartialResult<Library.ILibrary, IncompleteLibrary, ReadonlyArray<LibrarySymbol>>;
14
+ export declare function createLibraryDefinitions(librarySymbols: ReadonlyArray<LibrarySymbol>): PartialResult<ReadonlyMap<string, Library.TLibraryDefinition>, IncompleteLibraryDefinitions, ReadonlyArray<LibrarySymbol>>;
15
15
  export declare function librarySymbolToLibraryDefinition(librarySymbol: LibrarySymbol): Library.TLibraryDefinition | undefined;
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT license.
2
4
  Object.defineProperty(exports, "__esModule", { value: true });
3
5
  exports.librarySymbolToLibraryDefinition = exports.createLibraryDefinitions = exports.createLibrary = void 0;
4
6
  const powerquery_parser_1 = require("@microsoft/powerquery-parser");
@@ -7,16 +9,16 @@ const trace_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/comm
7
9
  const externalType_1 = require("../externalType");
8
10
  const library_1 = require("../library");
9
11
  const commonTypes_1 = require("../commonTypes");
10
- function createLibrary(librarySymbols, externalTypeResolverFn) {
12
+ function createLibrary(librarySymbols, dynamicLibraryDefinitions, externalTypeResolverFn) {
11
13
  const libraryDefinitionsResult = createLibraryDefinitions(librarySymbols);
12
- let libraryDefinitions;
14
+ let librarySymbolDefinitions;
13
15
  let invalidSymbols;
14
16
  if (powerquery_parser_1.PartialResultUtils.isOk(libraryDefinitionsResult)) {
15
- libraryDefinitions = libraryDefinitionsResult.value;
17
+ librarySymbolDefinitions = libraryDefinitionsResult.value;
16
18
  invalidSymbols = [];
17
19
  }
18
20
  else if (powerquery_parser_1.PartialResultUtils.isIncomplete(libraryDefinitionsResult)) {
19
- libraryDefinitions = libraryDefinitionsResult.partial.libraryDefinitions;
21
+ librarySymbolDefinitions = libraryDefinitionsResult.partial.libraryDefinitions;
20
22
  invalidSymbols = libraryDefinitionsResult.partial.invalidSymbols;
21
23
  }
22
24
  else if (powerquery_parser_1.PartialResultUtils.isError(libraryDefinitionsResult)) {
@@ -25,12 +27,16 @@ function createLibrary(librarySymbols, externalTypeResolverFn) {
25
27
  else {
26
28
  powerquery_parser_1.Assert.isNever(libraryDefinitionsResult);
27
29
  }
28
- const definitionResolverFn = library_1.LibraryUtils.externalTypeResolver(libraryDefinitions);
30
+ const libraryDefinitions = {
31
+ dynamicLibraryDefinitions,
32
+ staticLibraryDefinitions: librarySymbolDefinitions,
33
+ };
34
+ const definitionResolverFn = library_1.LibraryDefinitionUtils.externalTypeResolver(libraryDefinitions);
29
35
  const library = {
30
- libraryDefinitions,
31
36
  externalTypeResolver: externalTypeResolverFn
32
37
  ? externalType_1.ExternalTypeUtils.composeExternalTypeResolvers(externalTypeResolverFn, definitionResolverFn)
33
38
  : definitionResolverFn,
39
+ libraryDefinitions,
34
40
  };
35
41
  if (invalidSymbols.length > 0) {
36
42
  return powerquery_parser_1.PartialResultUtils.incomplete({
@@ -78,9 +84,9 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
78
84
  }
79
85
  const label = librarySymbol.name;
80
86
  const description = (_b = (_a = librarySymbol.documentation) === null || _a === void 0 ? void 0 : _a.description) !== null && _b !== void 0 ? _b : "No description available";
81
- if (primitiveType.kind === "Type" /* Type */) {
87
+ if (primitiveType.kind === language_1.Type.TypeKind.Type) {
82
88
  return {
83
- kind: "Type" /* Type */,
89
+ kind: library_1.Library.LibraryDefinitionKind.Type,
84
90
  label,
85
91
  description,
86
92
  asPowerQueryType: primitiveType,
@@ -101,7 +107,7 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
101
107
  parameters.push(libraryParameter);
102
108
  }
103
109
  return {
104
- kind: "Function" /* Function */,
110
+ kind: library_1.Library.LibraryDefinitionKind.Function,
105
111
  label: language_1.TypeUtils.nameOf(asPowerQueryType, trace_1.NoOpTraceManagerInstance, undefined),
106
112
  description,
107
113
  asPowerQueryType,
@@ -111,7 +117,7 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
111
117
  }
112
118
  else {
113
119
  return {
114
- kind: "Constant" /* Constant */,
120
+ kind: library_1.Library.LibraryDefinitionKind.Constant,
115
121
  label,
116
122
  description,
117
123
  asPowerQueryType: primitiveType,
@@ -201,14 +207,14 @@ function stringToPrimitiveType(text) {
201
207
  // Either `nullable $typeKind` or `list {$typeKind}`
202
208
  case 2: {
203
209
  const first = split[0];
204
- if (first === "nullable" /* Nullable */) {
210
+ if (first === language_1.Constant.LanguageConstant.Nullable) {
205
211
  isNullable = true;
206
212
  typeKind = stringToTypeKind(split[1]);
207
213
  break;
208
214
  }
209
- else if (first === "list" /* List */) {
215
+ else if (first === language_1.Constant.PrimitiveTypeConstant.List) {
210
216
  isNullable = false;
211
- typeKind = "List" /* List */;
217
+ typeKind = language_1.Type.TypeKind.List;
212
218
  break;
213
219
  }
214
220
  else {
@@ -217,11 +223,11 @@ function stringToPrimitiveType(text) {
217
223
  }
218
224
  // `nullable list {$typeKind}`
219
225
  case 3: {
220
- if (split[0] !== "nullable" /* Nullable */ || split[1] !== "list" /* List */) {
226
+ if (split[0] !== language_1.Constant.LanguageConstant.Nullable || split[1] !== language_1.Constant.PrimitiveTypeConstant.List) {
221
227
  return undefined;
222
228
  }
223
229
  isNullable = true;
224
- typeKind = "List" /* List */;
230
+ typeKind = language_1.Type.TypeKind.List;
225
231
  break;
226
232
  }
227
233
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"librarySymbolUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/librarySymbolUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"librarySymbolUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/librarySymbolUtils.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,8 @@
1
- import { CompletionItemKind, ParameterInformation, SignatureInformation } from "vscode-languageserver-types";
2
- import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
3
- import { LibraryConstant, LibraryDefinitionKind, LibraryDefinitions, LibraryFunction, LibraryParameter, LibraryType, TLibraryDefinition } from "./library";
4
- import { ExternalType } from "../externalType";
5
- export declare function assertAsConstant(definition: TLibraryDefinition | undefined): LibraryConstant;
6
- export declare function assertAsFunction(definition: TLibraryDefinition | undefined): LibraryFunction;
7
- export declare function assertAsType(definition: TLibraryDefinition | undefined): LibraryType;
8
- export declare function assertIsConstant(definition: TLibraryDefinition | undefined): asserts definition is LibraryConstant;
9
- export declare function assertIsFunction(definition: TLibraryDefinition | undefined): asserts definition is LibraryFunction;
10
- export declare function assertIsType(definition: TLibraryDefinition | undefined): asserts definition is LibraryType;
11
- export declare function constantDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind): LibraryConstant;
12
- export declare function externalTypeResolver(libraryDefinitions: LibraryDefinitions): ExternalType.TExternalTypeResolverFn;
13
- export declare function functionDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind, parameters: ReadonlyArray<LibraryParameter>): LibraryFunction;
14
- export declare function isConstant(definition: TLibraryDefinition | undefined): definition is LibraryConstant;
15
- export declare function isFunction(definition: TLibraryDefinition | undefined): definition is LibraryFunction;
16
- export declare function isType(definition: TLibraryDefinition | undefined): definition is LibraryType;
1
+ import { ParameterInformation, SignatureInformation } from "vscode-languageserver-types";
2
+ import { ILibrary, LibraryDefinitionKind, LibraryFunction, LibraryParameter, TLibraryDefinition } from "./library";
3
+ export declare function getDefinition(library: ILibrary, identifierLiteral: string): TLibraryDefinition | undefined;
4
+ export declare function getDefinitionKeys(library: ILibrary): ReadonlyArray<string>;
5
+ export declare function hasDefinition(library: ILibrary, key: string): boolean;
17
6
  export declare function signatureInformation(libraryFunctionSignature: LibraryFunction): SignatureInformation;
18
7
  export declare function parameterInformation(libraryParameter: LibraryParameter): ParameterInformation;
19
8
  export declare function nameOf(kind: LibraryDefinitionKind): string;
@@ -2,78 +2,22 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.nameOf = exports.parameterInformation = exports.signatureInformation = exports.isType = exports.isFunction = exports.isConstant = exports.functionDefinition = exports.externalTypeResolver = exports.constantDefinition = exports.assertIsType = exports.assertIsFunction = exports.assertIsConstant = exports.assertAsType = exports.assertAsFunction = exports.assertAsConstant = void 0;
5
+ exports.nameOf = exports.parameterInformation = exports.signatureInformation = exports.hasDefinition = exports.getDefinitionKeys = exports.getDefinition = void 0;
6
6
  const powerquery_parser_1 = require("@microsoft/powerquery-parser");
7
- function assertAsConstant(definition) {
8
- assertIsConstant(definition);
9
- return definition;
7
+ const library_1 = require("./library");
8
+ const _1 = require(".");
9
+ function getDefinition(library, identifierLiteral) {
10
+ return _1.LibraryDefinitionUtils.getDefinition(library.libraryDefinitions, identifierLiteral);
10
11
  }
11
- exports.assertAsConstant = assertAsConstant;
12
- function assertAsFunction(definition) {
13
- assertIsFunction(definition);
14
- return definition;
12
+ exports.getDefinition = getDefinition;
13
+ function getDefinitionKeys(library) {
14
+ return _1.LibraryDefinitionUtils.getKeys(library.libraryDefinitions);
15
15
  }
16
- exports.assertAsFunction = assertAsFunction;
17
- function assertAsType(definition) {
18
- assertIsType(definition);
19
- return definition;
16
+ exports.getDefinitionKeys = getDefinitionKeys;
17
+ function hasDefinition(library, key) {
18
+ return _1.LibraryDefinitionUtils.hasDefinition(library.libraryDefinitions, key);
20
19
  }
21
- exports.assertAsType = assertAsType;
22
- function assertIsConstant(definition) {
23
- if (!isConstant(definition)) {
24
- throw new Error(`expected definition to be ${"Constant" /* Constant */}`);
25
- }
26
- }
27
- exports.assertIsConstant = assertIsConstant;
28
- function assertIsFunction(definition) {
29
- if (!isFunction(definition)) {
30
- throw new Error(`expected definition to be ${"Function" /* Function */}`);
31
- }
32
- }
33
- exports.assertIsFunction = assertIsFunction;
34
- function assertIsType(definition) {
35
- if (!isType(definition)) {
36
- throw new Error(`expected definition to be ${"Type" /* Type */}`);
37
- }
38
- }
39
- exports.assertIsType = assertIsType;
40
- function constantDefinition(label, description, asType, completionItemKind) {
41
- return {
42
- kind: "Constant" /* Constant */,
43
- asPowerQueryType: asType,
44
- completionItemKind,
45
- description,
46
- label,
47
- };
48
- }
49
- exports.constantDefinition = constantDefinition;
50
- function externalTypeResolver(libraryDefinitions) {
51
- return (request) => { var _a; return (_a = libraryDefinitions.get(request.identifierLiteral)) === null || _a === void 0 ? void 0 : _a.asPowerQueryType; };
52
- }
53
- exports.externalTypeResolver = externalTypeResolver;
54
- function functionDefinition(label, description, asType, completionItemKind, parameters) {
55
- return {
56
- kind: "Function" /* Function */,
57
- asPowerQueryType: asType,
58
- completionItemKind,
59
- description,
60
- label,
61
- parameters,
62
- };
63
- }
64
- exports.functionDefinition = functionDefinition;
65
- function isConstant(definition) {
66
- return (definition === null || definition === void 0 ? void 0 : definition.kind) === "Constant" /* Constant */;
67
- }
68
- exports.isConstant = isConstant;
69
- function isFunction(definition) {
70
- return (definition === null || definition === void 0 ? void 0 : definition.kind) === "Function" /* Function */;
71
- }
72
- exports.isFunction = isFunction;
73
- function isType(definition) {
74
- return (definition === null || definition === void 0 ? void 0 : definition.kind) === "Type" /* Type */;
75
- }
76
- exports.isType = isType;
20
+ exports.hasDefinition = hasDefinition;
77
21
  function signatureInformation(libraryFunctionSignature) {
78
22
  return {
79
23
  label: libraryFunctionSignature.label,
@@ -91,11 +35,11 @@ function parameterInformation(libraryParameter) {
91
35
  exports.parameterInformation = parameterInformation;
92
36
  function nameOf(kind) {
93
37
  switch (kind) {
94
- case "Function" /* Function */:
38
+ case library_1.LibraryDefinitionKind.Function:
95
39
  return "library function";
96
- case "Constant" /* Constant */:
40
+ case library_1.LibraryDefinitionKind.Constant:
97
41
  return "library constant";
98
- case "Type" /* Type */:
42
+ case library_1.LibraryDefinitionKind.Type:
99
43
  return "library type";
100
44
  default:
101
45
  throw powerquery_parser_1.Assert.isNever(kind);
@@ -1 +1 @@
1
- {"version":3,"file":"libraryUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/libraryUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libraryUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/libraryUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,oEAAsD;AAEtD,uCAAmH;AACnH,wBAA2C;AAE3C,SAAgB,aAAa,CAAC,OAAiB,EAAE,iBAAyB;IACtE,OAAO,yBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;AAC/F,CAAC;AAFD,sCAEC;AAED,SAAgB,iBAAiB,CAAC,OAAiB;IAC/C,OAAO,yBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;AACtE,CAAC;AAFD,8CAEC;AAED,SAAgB,aAAa,CAAC,OAAiB,EAAE,GAAW;IACxD,OAAO,yBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;AACjF,CAAC;AAFD,sCAEC;AAED,SAAgB,oBAAoB,CAAC,wBAAyC;IAC1E,OAAO;QACH,KAAK,EAAE,wBAAwB,CAAC,KAAK;QACrC,aAAa,EAAE,wBAAwB,CAAC,WAAW;QACnD,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;KAC5E,CAAC;AACN,CAAC;AAND,oDAMC;AAED,SAAgB,oBAAoB,CAAC,gBAAkC;IACnE,OAAO;QACH,KAAK,EAAE,gBAAgB,CAAC,KAAK;QAC7B,aAAa,EAAE,SAAS;KAC3B,CAAC;AACN,CAAC;AALD,oDAKC;AAED,SAAgB,MAAM,CAAC,IAA2B;IAC9C,QAAQ,IAAI,EAAE;QACV,KAAK,+BAAqB,CAAC,QAAQ;YAC/B,OAAO,kBAAkB,CAAC;QAE9B,KAAK,+BAAqB,CAAC,QAAQ;YAC/B,OAAO,kBAAkB,CAAC;QAE9B,KAAK,+BAAqB,CAAC,IAAI;YAC3B,OAAO,cAAc,CAAC;QAE1B;YACI,MAAM,0BAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAClC;AACL,CAAC;AAdD,wBAcC"}