@gooddata/sdk-maql-language-server 0.0.0-stage → 11.65.0-alpha.10

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 (314) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +118 -2
  3. package/esm/completions/complete.d.ts +12 -0
  4. package/esm/completions/complete.d.ts.map +1 -0
  5. package/esm/completions/complete.js +316 -0
  6. package/esm/completions/descriptions.d.ts +42 -0
  7. package/esm/completions/descriptions.d.ts.map +1 -0
  8. package/esm/completions/descriptions.js +289 -0
  9. package/esm/completions/findContext.d.ts +19 -0
  10. package/esm/completions/findContext.d.ts.map +1 -0
  11. package/esm/completions/findContext.js +171 -0
  12. package/esm/completions/functionDescriptions.d.ts +3 -0
  13. package/esm/completions/functionDescriptions.d.ts.map +1 -0
  14. package/esm/completions/functionDescriptions.js +98 -0
  15. package/esm/completions/sort.d.ts +4 -0
  16. package/esm/completions/sort.d.ts.map +1 -0
  17. package/esm/completions/sort.js +88 -0
  18. package/esm/constants.d.ts +21 -0
  19. package/esm/constants.d.ts.map +1 -0
  20. package/esm/constants.js +22 -0
  21. package/esm/dateElementFormat.d.ts +9 -0
  22. package/esm/dateElementFormat.d.ts.map +1 -0
  23. package/esm/dateElementFormat.js +60 -0
  24. package/esm/decorations.d.ts +46 -0
  25. package/esm/decorations.d.ts.map +1 -0
  26. package/esm/decorations.js +42 -0
  27. package/esm/diagnostics.d.ts +12 -0
  28. package/esm/diagnostics.d.ts.map +1 -0
  29. package/esm/diagnostics.js +259 -0
  30. package/esm/docs/en/docs/create-metrics/maql/aggregation/approximate_count.d.ts +2 -0
  31. package/esm/docs/en/docs/create-metrics/maql/aggregation/approximate_count.d.ts.map +1 -0
  32. package/esm/docs/en/docs/create-metrics/maql/aggregation/approximate_count.js +61 -0
  33. package/esm/docs/en/docs/create-metrics/maql/aggregation/avg.d.ts +2 -0
  34. package/esm/docs/en/docs/create-metrics/maql/aggregation/avg.d.ts.map +1 -0
  35. package/esm/docs/en/docs/create-metrics/maql/aggregation/avg.js +19 -0
  36. package/esm/docs/en/docs/create-metrics/maql/aggregation/count.d.ts +2 -0
  37. package/esm/docs/en/docs/create-metrics/maql/aggregation/count.d.ts.map +1 -0
  38. package/esm/docs/en/docs/create-metrics/maql/aggregation/count.js +72 -0
  39. package/esm/docs/en/docs/create-metrics/maql/aggregation/first.d.ts +2 -0
  40. package/esm/docs/en/docs/create-metrics/maql/aggregation/first.d.ts.map +1 -0
  41. package/esm/docs/en/docs/create-metrics/maql/aggregation/first.js +41 -0
  42. package/esm/docs/en/docs/create-metrics/maql/aggregation/last.d.ts +2 -0
  43. package/esm/docs/en/docs/create-metrics/maql/aggregation/last.d.ts.map +1 -0
  44. package/esm/docs/en/docs/create-metrics/maql/aggregation/last.js +69 -0
  45. package/esm/docs/en/docs/create-metrics/maql/aggregation/max.d.ts +2 -0
  46. package/esm/docs/en/docs/create-metrics/maql/aggregation/max.d.ts.map +1 -0
  47. package/esm/docs/en/docs/create-metrics/maql/aggregation/max.js +61 -0
  48. package/esm/docs/en/docs/create-metrics/maql/aggregation/median.d.ts +2 -0
  49. package/esm/docs/en/docs/create-metrics/maql/aggregation/median.d.ts.map +1 -0
  50. package/esm/docs/en/docs/create-metrics/maql/aggregation/median.js +25 -0
  51. package/esm/docs/en/docs/create-metrics/maql/aggregation/min.d.ts +2 -0
  52. package/esm/docs/en/docs/create-metrics/maql/aggregation/min.d.ts.map +1 -0
  53. package/esm/docs/en/docs/create-metrics/maql/aggregation/min.js +63 -0
  54. package/esm/docs/en/docs/create-metrics/maql/aggregation/sum.d.ts +2 -0
  55. package/esm/docs/en/docs/create-metrics/maql/aggregation/sum.d.ts.map +1 -0
  56. package/esm/docs/en/docs/create-metrics/maql/aggregation/sum.js +20 -0
  57. package/esm/docs/en/docs/create-metrics/maql/conditionals/case.d.ts +2 -0
  58. package/esm/docs/en/docs/create-metrics/maql/conditionals/case.d.ts.map +1 -0
  59. package/esm/docs/en/docs/create-metrics/maql/conditionals/case.js +73 -0
  60. package/esm/docs/en/docs/create-metrics/maql/conditionals/if-then-else.d.ts +2 -0
  61. package/esm/docs/en/docs/create-metrics/maql/conditionals/if-then-else.d.ts.map +1 -0
  62. package/esm/docs/en/docs/create-metrics/maql/conditionals/if-then-else.js +29 -0
  63. package/esm/docs/en/docs/create-metrics/maql/conditionals/ifnull.d.ts +2 -0
  64. package/esm/docs/en/docs/create-metrics/maql/conditionals/ifnull.d.ts.map +1 -0
  65. package/esm/docs/en/docs/create-metrics/maql/conditionals/ifnull.js +96 -0
  66. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-ranking-filters.d.ts +2 -0
  67. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-ranking-filters.d.ts.map +1 -0
  68. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-ranking-filters.js +71 -0
  69. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-having-clause.d.ts +2 -0
  70. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-having-clause.d.ts.map +1 -0
  71. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-having-clause.js +65 -0
  72. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-like-clause.d.ts +2 -0
  73. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-like-clause.d.ts.map +1 -0
  74. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-like-clause.js +36 -0
  75. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-where-clause.d.ts +2 -0
  76. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-where-clause.d.ts.map +1 -0
  77. package/esm/docs/en/docs/create-metrics/maql/filters/filtering-with-the-where-clause.js +36 -0
  78. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions-except-for-attribute.d.ts +2 -0
  79. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions-except-for-attribute.d.ts.map +1 -0
  80. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions-except-for-attribute.js +21 -0
  81. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions.d.ts +2 -0
  82. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions.d.ts.map +1 -0
  83. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all-in-all-other-dimensions.js +27 -0
  84. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all.d.ts +2 -0
  85. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all.d.ts.map +1 -0
  86. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-all.js +64 -0
  87. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-attribute-all-in-all-other-dimensions.d.ts +2 -0
  88. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-attribute-all-in-all-other-dimensions.d.ts.map +1 -0
  89. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by-attribute-all-in-all-other-dimensions.js +22 -0
  90. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by.d.ts +2 -0
  91. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by.d.ts.map +1 -0
  92. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-attribute-filters/by.js +85 -0
  93. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-except.d.ts +2 -0
  94. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-except.d.ts.map +1 -0
  95. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-except.js +37 -0
  96. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-filter.d.ts +2 -0
  97. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-filter.d.ts.map +1 -0
  98. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/with-parent-filter.js +42 -0
  99. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-except.d.ts +2 -0
  100. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-except.d.ts.map +1 -0
  101. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-except.js +94 -0
  102. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-filter.d.ts +2 -0
  103. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-filter.d.ts.map +1 -0
  104. package/esm/docs/en/docs/create-metrics/maql/filters/overriding-parent/without-parent-filter.js +33 -0
  105. package/esm/docs/en/docs/create-metrics/maql/for-each.d.ts +2 -0
  106. package/esm/docs/en/docs/create-metrics/maql/for-each.d.ts.map +1 -0
  107. package/esm/docs/en/docs/create-metrics/maql/for-each.js +17 -0
  108. package/esm/docs/en/docs/create-metrics/maql/logical-operators/and.d.ts +2 -0
  109. package/esm/docs/en/docs/create-metrics/maql/logical-operators/and.d.ts.map +1 -0
  110. package/esm/docs/en/docs/create-metrics/maql/logical-operators/and.js +37 -0
  111. package/esm/docs/en/docs/create-metrics/maql/logical-operators/not.d.ts +2 -0
  112. package/esm/docs/en/docs/create-metrics/maql/logical-operators/not.d.ts.map +1 -0
  113. package/esm/docs/en/docs/create-metrics/maql/logical-operators/not.js +12 -0
  114. package/esm/docs/en/docs/create-metrics/maql/logical-operators/or.d.ts +2 -0
  115. package/esm/docs/en/docs/create-metrics/maql/logical-operators/or.d.ts.map +1 -0
  116. package/esm/docs/en/docs/create-metrics/maql/logical-operators/or.js +22 -0
  117. package/esm/docs/en/docs/create-metrics/maql/maql-and-multidimensionality.d.ts +2 -0
  118. package/esm/docs/en/docs/create-metrics/maql/maql-and-multidimensionality.d.ts.map +1 -0
  119. package/esm/docs/en/docs/create-metrics/maql/maql-and-multidimensionality.js +59 -0
  120. package/esm/docs/en/docs/create-metrics/maql/math/abs.d.ts +2 -0
  121. package/esm/docs/en/docs/create-metrics/maql/math/abs.d.ts.map +1 -0
  122. package/esm/docs/en/docs/create-metrics/maql/math/abs.js +23 -0
  123. package/esm/docs/en/docs/create-metrics/maql/math/arithmetic-operations.d.ts +2 -0
  124. package/esm/docs/en/docs/create-metrics/maql/math/arithmetic-operations.d.ts.map +1 -0
  125. package/esm/docs/en/docs/create-metrics/maql/math/arithmetic-operations.js +29 -0
  126. package/esm/docs/en/docs/create-metrics/maql/math/ceiling.d.ts +2 -0
  127. package/esm/docs/en/docs/create-metrics/maql/math/ceiling.d.ts.map +1 -0
  128. package/esm/docs/en/docs/create-metrics/maql/math/ceiling.js +21 -0
  129. package/esm/docs/en/docs/create-metrics/maql/math/exp.d.ts +2 -0
  130. package/esm/docs/en/docs/create-metrics/maql/math/exp.d.ts.map +1 -0
  131. package/esm/docs/en/docs/create-metrics/maql/math/exp.js +27 -0
  132. package/esm/docs/en/docs/create-metrics/maql/math/floor.d.ts +2 -0
  133. package/esm/docs/en/docs/create-metrics/maql/math/floor.d.ts.map +1 -0
  134. package/esm/docs/en/docs/create-metrics/maql/math/floor.js +21 -0
  135. package/esm/docs/en/docs/create-metrics/maql/math/greatest.d.ts +2 -0
  136. package/esm/docs/en/docs/create-metrics/maql/math/greatest.d.ts.map +1 -0
  137. package/esm/docs/en/docs/create-metrics/maql/math/greatest.js +13 -0
  138. package/esm/docs/en/docs/create-metrics/maql/math/least.d.ts +2 -0
  139. package/esm/docs/en/docs/create-metrics/maql/math/least.d.ts.map +1 -0
  140. package/esm/docs/en/docs/create-metrics/maql/math/least.js +13 -0
  141. package/esm/docs/en/docs/create-metrics/maql/math/ln.d.ts +2 -0
  142. package/esm/docs/en/docs/create-metrics/maql/math/ln.d.ts.map +1 -0
  143. package/esm/docs/en/docs/create-metrics/maql/math/ln.js +33 -0
  144. package/esm/docs/en/docs/create-metrics/maql/math/log.d.ts +2 -0
  145. package/esm/docs/en/docs/create-metrics/maql/math/log.d.ts.map +1 -0
  146. package/esm/docs/en/docs/create-metrics/maql/math/log.js +29 -0
  147. package/esm/docs/en/docs/create-metrics/maql/math/power.d.ts +2 -0
  148. package/esm/docs/en/docs/create-metrics/maql/math/power.d.ts.map +1 -0
  149. package/esm/docs/en/docs/create-metrics/maql/math/power.js +33 -0
  150. package/esm/docs/en/docs/create-metrics/maql/math/round.d.ts +2 -0
  151. package/esm/docs/en/docs/create-metrics/maql/math/round.d.ts.map +1 -0
  152. package/esm/docs/en/docs/create-metrics/maql/math/round.js +34 -0
  153. package/esm/docs/en/docs/create-metrics/maql/math/sign.d.ts +2 -0
  154. package/esm/docs/en/docs/create-metrics/maql/math/sign.d.ts.map +1 -0
  155. package/esm/docs/en/docs/create-metrics/maql/math/sign.js +30 -0
  156. package/esm/docs/en/docs/create-metrics/maql/math/sqrt.d.ts +2 -0
  157. package/esm/docs/en/docs/create-metrics/maql/math/sqrt.d.ts.map +1 -0
  158. package/esm/docs/en/docs/create-metrics/maql/math/sqrt.js +32 -0
  159. package/esm/docs/en/docs/create-metrics/maql/math/trunc.d.ts +2 -0
  160. package/esm/docs/en/docs/create-metrics/maql/math/trunc.d.ts.map +1 -0
  161. package/esm/docs/en/docs/create-metrics/maql/math/trunc.js +36 -0
  162. package/esm/docs/en/docs/create-metrics/maql/ranking/percentile.d.ts +2 -0
  163. package/esm/docs/en/docs/create-metrics/maql/ranking/percentile.d.ts.map +1 -0
  164. package/esm/docs/en/docs/create-metrics/maql/ranking/percentile.js +57 -0
  165. package/esm/docs/en/docs/create-metrics/maql/ranking/rank-variations.d.ts +2 -0
  166. package/esm/docs/en/docs/create-metrics/maql/ranking/rank-variations.d.ts.map +1 -0
  167. package/esm/docs/en/docs/create-metrics/maql/ranking/rank-variations.js +90 -0
  168. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-in.d.ts +2 -0
  169. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-in.d.ts.map +1 -0
  170. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-in.js +53 -0
  171. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-of.d.ts +2 -0
  172. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-of.d.ts.map +1 -0
  173. package/esm/docs/en/docs/create-metrics/maql/ranking/where-top-or-bottom-of.js +29 -0
  174. package/esm/docs/en/docs/create-metrics/maql/ranking/within-clause.d.ts +2 -0
  175. package/esm/docs/en/docs/create-metrics/maql/ranking/within-clause.d.ts.map +1 -0
  176. package/esm/docs/en/docs/create-metrics/maql/ranking/within-clause.js +101 -0
  177. package/esm/docs/en/docs/create-metrics/maql/relational-operators.d.ts +2 -0
  178. package/esm/docs/en/docs/create-metrics/maql/relational-operators.d.ts.map +1 -0
  179. package/esm/docs/en/docs/create-metrics/maql/relational-operators.js +50 -0
  180. package/esm/docs/en/docs/create-metrics/maql/runing-totals/rolling-window.d.ts +2 -0
  181. package/esm/docs/en/docs/create-metrics/maql/runing-totals/rolling-window.d.ts.map +1 -0
  182. package/esm/docs/en/docs/create-metrics/maql/runing-totals/rolling-window.js +71 -0
  183. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-total-statistical-functions.d.ts +2 -0
  184. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-total-statistical-functions.d.ts.map +1 -0
  185. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-total-statistical-functions.js +54 -0
  186. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-totals-for-core-functions.d.ts +2 -0
  187. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-totals-for-core-functions.d.ts.map +1 -0
  188. package/esm/docs/en/docs/create-metrics/maql/runing-totals/running-totals-for-core-functions.js +37 -0
  189. package/esm/docs/en/docs/create-metrics/maql/statistic/correl.d.ts +2 -0
  190. package/esm/docs/en/docs/create-metrics/maql/statistic/correl.d.ts.map +1 -0
  191. package/esm/docs/en/docs/create-metrics/maql/statistic/correl.js +47 -0
  192. package/esm/docs/en/docs/create-metrics/maql/statistic/covariance-functions.d.ts +2 -0
  193. package/esm/docs/en/docs/create-metrics/maql/statistic/covariance-functions.d.ts.map +1 -0
  194. package/esm/docs/en/docs/create-metrics/maql/statistic/covariance-functions.js +46 -0
  195. package/esm/docs/en/docs/create-metrics/maql/statistic/forecast.d.ts +2 -0
  196. package/esm/docs/en/docs/create-metrics/maql/statistic/forecast.d.ts.map +1 -0
  197. package/esm/docs/en/docs/create-metrics/maql/statistic/forecast.js +74 -0
  198. package/esm/docs/en/docs/create-metrics/maql/statistic/least-squares-functions.d.ts +2 -0
  199. package/esm/docs/en/docs/create-metrics/maql/statistic/least-squares-functions.d.ts.map +1 -0
  200. package/esm/docs/en/docs/create-metrics/maql/statistic/least-squares-functions.js +44 -0
  201. package/esm/docs/en/docs/create-metrics/maql/statistic/standard-deviation-functions.d.ts +2 -0
  202. package/esm/docs/en/docs/create-metrics/maql/statistic/standard-deviation-functions.d.ts.map +1 -0
  203. package/esm/docs/en/docs/create-metrics/maql/statistic/standard-deviation-functions.js +88 -0
  204. package/esm/docs/en/docs/create-metrics/maql/statistic/variance-functions.d.ts +2 -0
  205. package/esm/docs/en/docs/create-metrics/maql/statistic/variance-functions.d.ts.map +1 -0
  206. package/esm/docs/en/docs/create-metrics/maql/statistic/variance-functions.js +54 -0
  207. package/esm/docs/en/docs/create-metrics/maql/time/for-each.d.ts +2 -0
  208. package/esm/docs/en/docs/create-metrics/maql/time/for-each.d.ts.map +1 -0
  209. package/esm/docs/en/docs/create-metrics/maql/time/for-each.js +96 -0
  210. package/esm/docs/en/docs/create-metrics/maql/time/for-next-period.d.ts +2 -0
  211. package/esm/docs/en/docs/create-metrics/maql/time/for-next-period.d.ts.map +1 -0
  212. package/esm/docs/en/docs/create-metrics/maql/time/for-next-period.js +38 -0
  213. package/esm/docs/en/docs/create-metrics/maql/time/for-next.d.ts +2 -0
  214. package/esm/docs/en/docs/create-metrics/maql/time/for-next.d.ts.map +1 -0
  215. package/esm/docs/en/docs/create-metrics/maql/time/for-next.js +27 -0
  216. package/esm/docs/en/docs/create-metrics/maql/time/for-previous-period.d.ts +2 -0
  217. package/esm/docs/en/docs/create-metrics/maql/time/for-previous-period.d.ts.map +1 -0
  218. package/esm/docs/en/docs/create-metrics/maql/time/for-previous-period.js +26 -0
  219. package/esm/docs/en/docs/create-metrics/maql/time/for-previous.d.ts +2 -0
  220. package/esm/docs/en/docs/create-metrics/maql/time/for-previous.d.ts.map +1 -0
  221. package/esm/docs/en/docs/create-metrics/maql/time/for-previous.js +30 -0
  222. package/esm/docs/en/docs/create-metrics/maql/time/functions-for-referring-to-past-time-periods.d.ts +2 -0
  223. package/esm/docs/en/docs/create-metrics/maql/time/functions-for-referring-to-past-time-periods.d.ts.map +1 -0
  224. package/esm/docs/en/docs/create-metrics/maql/time/functions-for-referring-to-past-time-periods.js +36 -0
  225. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-add.d.ts +2 -0
  226. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-add.d.ts.map +1 -0
  227. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-add.js +53 -0
  228. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-diff.d.ts +2 -0
  229. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-diff.d.ts.map +1 -0
  230. package/esm/docs/en/docs/create-metrics/maql/time-arithmetics/datetime-diff.js +55 -0
  231. package/esm/docs/en/docs/create-metrics/maql/time-macros.d.ts +2 -0
  232. package/esm/docs/en/docs/create-metrics/maql/time-macros.d.ts.map +1 -0
  233. package/esm/docs/en/docs/create-metrics/maql/time-macros.js +79 -0
  234. package/esm/docs/index.d.ts +82 -0
  235. package/esm/docs/index.d.ts.map +1 -0
  236. package/esm/docs/index.js +143 -0
  237. package/esm/findObjects.d.ts +13 -0
  238. package/esm/findObjects.d.ts.map +1 -0
  239. package/esm/findObjects.js +73 -0
  240. package/esm/format.d.ts +4 -0
  241. package/esm/format.d.ts.map +1 -0
  242. package/esm/format.js +569 -0
  243. package/esm/highlight/convert.d.ts +3 -0
  244. package/esm/highlight/convert.d.ts.map +1 -0
  245. package/esm/highlight/convert.js +12 -0
  246. package/esm/highlight/semanticsHighlight.d.ts +47 -0
  247. package/esm/highlight/semanticsHighlight.d.ts.map +1 -0
  248. package/esm/highlight/semanticsHighlight.js +345 -0
  249. package/esm/highlight/utils.d.ts +3 -0
  250. package/esm/highlight/utils.d.ts.map +1 -0
  251. package/esm/highlight/utils.js +14 -0
  252. package/esm/hover.d.ts +23 -0
  253. package/esm/hover.d.ts.map +1 -0
  254. package/esm/hover.js +60 -0
  255. package/esm/index.d.ts +11 -0
  256. package/esm/index.d.ts.map +1 -0
  257. package/esm/index.js +9 -0
  258. package/esm/labelElements.d.ts +22 -0
  259. package/esm/labelElements.d.ts.map +1 -0
  260. package/esm/labelElements.js +224 -0
  261. package/esm/maqlLanguageService.d.ts +56 -0
  262. package/esm/maqlLanguageService.d.ts.map +1 -0
  263. package/esm/maqlLanguageService.js +104 -0
  264. package/esm/maqlObjectTypes.d.ts +17 -0
  265. package/esm/maqlObjectTypes.d.ts.map +1 -0
  266. package/esm/maqlObjectTypes.js +30 -0
  267. package/esm/maqlServer.d.ts +4 -0
  268. package/esm/maqlServer.d.ts.map +1 -0
  269. package/esm/maqlServer.js +78 -0
  270. package/esm/metadata/model.d.ts +162 -0
  271. package/esm/metadata/model.d.ts.map +1 -0
  272. package/esm/metadata/model.js +143 -0
  273. package/esm/metadata/parameters.d.ts +16 -0
  274. package/esm/metadata/parameters.d.ts.map +1 -0
  275. package/esm/metadata/parameters.js +37 -0
  276. package/esm/metadata/types.d.ts +16 -0
  277. package/esm/metadata/types.d.ts.map +1 -0
  278. package/esm/metadata/types.js +2 -0
  279. package/esm/metadataService.d.ts +56 -0
  280. package/esm/metadataService.d.ts.map +1 -0
  281. package/esm/metadataService.js +159 -0
  282. package/esm/node/main.d.ts +2 -0
  283. package/esm/node/main.d.ts.map +1 -0
  284. package/esm/node/main.js +18 -0
  285. package/esm/parameterConstraints.d.ts +5 -0
  286. package/esm/parameterConstraints.d.ts.map +1 -0
  287. package/esm/parameterConstraints.js +197 -0
  288. package/esm/parseMaql.d.ts +43 -0
  289. package/esm/parseMaql.d.ts.map +1 -0
  290. package/esm/parseMaql.js +96 -0
  291. package/esm/renderParameters.d.ts +41 -0
  292. package/esm/renderParameters.d.ts.map +1 -0
  293. package/esm/renderParameters.js +76 -0
  294. package/esm/sdk-maql-language-server.d.ts +496 -0
  295. package/esm/tests/metadata.test.helpers.d.ts +8 -0
  296. package/esm/tests/metadata.test.helpers.d.ts.map +1 -0
  297. package/esm/tests/metadata.test.helpers.js +468 -0
  298. package/esm/tokenRanges.d.ts +36 -0
  299. package/esm/tokenRanges.d.ts.map +1 -0
  300. package/esm/tokenRanges.js +55 -0
  301. package/esm/tsdoc-metadata.json +11 -0
  302. package/esm/types/hierarchy.d.ts +37 -0
  303. package/esm/types/hierarchy.d.ts.map +1 -0
  304. package/esm/types/hierarchy.js +165 -0
  305. package/esm/types/signatures.d.ts +40 -0
  306. package/esm/types/signatures.d.ts.map +1 -0
  307. package/esm/types/signatures.js +141 -0
  308. package/esm/types/typeChecking.d.ts +54 -0
  309. package/esm/types/typeChecking.d.ts.map +1 -0
  310. package/esm/types/typeChecking.js +295 -0
  311. package/esm/types/typeModel.d.ts +18 -0
  312. package/esm/types/typeModel.d.ts.map +1 -0
  313. package/esm/types/typeModel.js +84 -0
  314. package/package.json +83 -3
@@ -0,0 +1,295 @@
1
+ // (C) 2022-2026 GoodData Corporation
2
+ import { AbstractAstVisitor, } from "@gooddata/maql-antlr4ts";
3
+ import { isTigerType } from "@gooddata/sdk-backend-tiger";
4
+ import { normalizeMaqlObjectType } from "../maqlObjectTypes.js";
5
+ import { MaqlType, abstractValueTypes, isSubtype, lowestCommonAncestor } from "./hierarchy.js";
6
+ import { CallNotation, MaqlCallSignature, findFunctionDefinitions, getCustomDefinitions, } from "./signatures.js";
7
+ export class TypedAstNode {
8
+ type;
9
+ node;
10
+ constructor(type, node) {
11
+ this.type = type;
12
+ this.node = node;
13
+ }
14
+ }
15
+ export class AstTypeChecker extends AbstractAstVisitor {
16
+ model;
17
+ constructor(model) {
18
+ super();
19
+ this.model = model;
20
+ }
21
+ typeConstraintsViolations = [];
22
+ defaultResult() {
23
+ return new TypedAstNode(MaqlType.UNIT, null);
24
+ }
25
+ mergeResultWithParent(parentNode, result) {
26
+ return {
27
+ // oxlint-disable-next-line typescript-eslint/no-misused-spread
28
+ ...result,
29
+ node: parentNode,
30
+ };
31
+ }
32
+ visitEmptyNode(node) {
33
+ const message = "Missing expression" + (node.value === "" ? "" : `. ${node.value}`);
34
+ this.logViolation(message, node.range);
35
+ return new TypedAstNode(MaqlType.ALL, node);
36
+ }
37
+ visitSelectNode(node) {
38
+ if (node.by) {
39
+ this.visit(node.by);
40
+ }
41
+ if (node.forEach) {
42
+ this.visit(node.forEach);
43
+ }
44
+ if (node.datetimeTransformation) {
45
+ this.visit(node.datetimeTransformation);
46
+ }
47
+ if (node.filter) {
48
+ this.visit(node.filter);
49
+ }
50
+ if (node.using) {
51
+ this.visit(node.using);
52
+ }
53
+ if (node.parentFilterModification) {
54
+ this.visit(node.parentFilterModification);
55
+ }
56
+ return this.visit(node.expression);
57
+ }
58
+ visitExpressionNode(node) {
59
+ return this.visit(node.expression);
60
+ }
61
+ visitOperatorNode(node) {
62
+ const operands = node.content.map((operand) => this.visit(operand));
63
+ switch (node.type) {
64
+ case "not":
65
+ return this.checkBySignature(node, node.type, operands, CallNotation.PREFIX, getCustomDefinitions(node.type));
66
+ case "+":
67
+ case "-":
68
+ case "*":
69
+ case "/":
70
+ case "and":
71
+ case "or":
72
+ case "=":
73
+ case "<>":
74
+ case ">=":
75
+ case "<=":
76
+ case "<":
77
+ case ">":
78
+ case "like":
79
+ case "ilike":
80
+ case "not like":
81
+ case "not ilike":
82
+ return this.checkBySignature(node, node.type, operands, CallNotation.INFIX, getCustomDefinitions(node.type));
83
+ case "neg":
84
+ return this.checkUnaryMinusOperator(node, operands);
85
+ case "between":
86
+ case "not between":
87
+ return this.checkBetween(node, operands);
88
+ case "in":
89
+ case "not in":
90
+ return this.checkIn(node, operands);
91
+ }
92
+ }
93
+ checkUnaryMinusOperator(node, operands) {
94
+ if (!this.checkOperandCount(node, operands.length, 1, "Unary operator '-'")) {
95
+ return new TypedAstNode(MaqlType.NUMERIC, node);
96
+ }
97
+ const operand = operands[0];
98
+ // Propagate the type of the operand if it is a subtype of NUMERIC
99
+ // e.g. if it is INTEGER_LITERAL, keep it
100
+ const returnType = this.checkType(operand, MaqlType.NUMERIC) ? operand.type : MaqlType.NUMERIC;
101
+ return new TypedAstNode(returnType, node);
102
+ }
103
+ checkBetween(node, operands) {
104
+ if (!this.checkOperandCount(node, operands.length, 3, `Operator ${node.type.toUpperCase()}`)) {
105
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
106
+ }
107
+ const [expr, from, to] = operands;
108
+ this.checkType(expr, ...abstractValueTypes);
109
+ // if we can't determine the type of the expression, don't validate the types of from and to
110
+ if (expr.type !== MaqlType.ALL) {
111
+ this.checkType(from, expr.type);
112
+ this.checkType(to, expr.type);
113
+ }
114
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
115
+ }
116
+ checkIn(node, operands) {
117
+ if (!this.checkOperandCount(node, operands.length, 2, `Operator ${node.type.toUpperCase()}`)) {
118
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
119
+ }
120
+ const [expr, list] = operands;
121
+ this.checkType(expr, ...abstractValueTypes);
122
+ // if we can't determine the type of the expression, don't validate the type of list
123
+ if (expr.type !== MaqlType.ALL) {
124
+ this.checkType(list, expr.type);
125
+ }
126
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
127
+ }
128
+ visitListNode(node) {
129
+ if (node.content.length > 0) {
130
+ return this.visitChildren(node);
131
+ }
132
+ return new TypedAstNode(MaqlType.ALL, node);
133
+ }
134
+ visitFunctionNode(node) {
135
+ const defs = findFunctionDefinitions(node.type, node.name);
136
+ if (defs.length === 0) {
137
+ this.logViolation(`No definition for function '${node.name}'`, node.range);
138
+ return new TypedAstNode(MaqlType.ALL, node);
139
+ }
140
+ const args = node.content.map((arg) => this.visit(arg));
141
+ return this.checkBySignature(node, node.name, args, CallNotation.FUNCTION, defs);
142
+ }
143
+ /**
144
+ * Checks functions and operators that have defined signatures.
145
+ */
146
+ checkBySignature(node, name, args, notation, defs) {
147
+ const signature = new MaqlCallSignature(name, args, notation);
148
+ const validDefs = this.findValidDefinitions(signature, defs, node.range);
149
+ if (validDefs.length === 0) {
150
+ // if all available definitions have the same return type we can use it
151
+ const commonReturnType = defs.length > 0 && defs.every((def) => def.returns.type === defs[0].returns.type)
152
+ ? defs[0].returns.type
153
+ : MaqlType.ALL;
154
+ return new TypedAstNode(commonReturnType, node);
155
+ }
156
+ // If multiple valid definitions remain, use the first one
157
+ const def = validDefs[0];
158
+ return new TypedAstNode(def.returns.type, node);
159
+ }
160
+ findValidDefinitions(signature, defs, range) {
161
+ const validDefs = defs
162
+ .filter((def) => {
163
+ return def.parameters.length === signature.parameters.length || def.vararg;
164
+ })
165
+ .filter((def) => {
166
+ const argTypes = signature.parameters.map((arg) => arg.type);
167
+ // get the function signature or if the definition is `vararg` then match the number of arguments
168
+ const paramTypes = def.vararg
169
+ ? Array(argTypes.length).fill(def.parameters[0].type)
170
+ : def.parameters.map((param) => param.type);
171
+ return argTypes.every((argType, idx) => {
172
+ const paramType = paramTypes[idx];
173
+ return isSubtype(argType, paramType);
174
+ });
175
+ });
176
+ if (validDefs.length === 0) {
177
+ const receivedSignature = signature.toString();
178
+ const expectedSignatures = defs.map((def) => def.toString());
179
+ this.logViolation(`The call expression '${receivedSignature}' has invalid arguments\n` +
180
+ "Possible definitions:\n" +
181
+ expectedSignatures.join("\n"), range);
182
+ }
183
+ return validDefs;
184
+ }
185
+ visitRunningFunctionNode(node) {
186
+ if (node.within) {
187
+ this.visit(node.within);
188
+ }
189
+ if (node.rollWindow) {
190
+ this.visit(node.rollWindow);
191
+ }
192
+ return this.visit(node.functionNode);
193
+ }
194
+ visitRankFunctionNode(node) {
195
+ if (node.within) {
196
+ this.visit(node.within);
197
+ }
198
+ return this.visit(node.functionNode);
199
+ }
200
+ visitLastFirstValueFunctionNode(node) {
201
+ if (node.orderBy) {
202
+ this.visit(node.orderBy);
203
+ }
204
+ if (node.within) {
205
+ this.visit(node.within);
206
+ }
207
+ return this.visit(node.functionNode);
208
+ }
209
+ visitOrderByElement(node) {
210
+ this.checkType(this.visit(node.content[0]), ...abstractValueTypes);
211
+ return new TypedAstNode(MaqlType.UNIT, node);
212
+ }
213
+ visitRankingFilterNode(node) {
214
+ this.checkType(this.visit(node.rankSpec), MaqlType.NUMERIC_LITERAL);
215
+ node.operands.forEach((operand) => this.visit(operand));
216
+ if (node.within) {
217
+ this.visit(node.within);
218
+ }
219
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
220
+ }
221
+ visitCaseNode(node) {
222
+ const branchTypes = node.content.map((branch) => this.visit(branch).type);
223
+ const exprType = this.findCompatibleSupertype(branchTypes);
224
+ return new TypedAstNode(exprType, node);
225
+ }
226
+ visitConditionalNode(node) {
227
+ this.checkType(this.visit(node.condition), MaqlType.BOOLEAN);
228
+ const exprType = this.visit(node.expression);
229
+ this.checkType(exprType, ...abstractValueTypes);
230
+ return exprType;
231
+ }
232
+ visitIdentifierNode(node) {
233
+ // The AST carries the object type as the author spelled it in MAQL, in any casing.
234
+ const objectType = normalizeMaqlObjectType(node.objectType.toLowerCase());
235
+ if (isTigerType(objectType)) {
236
+ return new TypedAstNode(this.model.getType(objectType, node.id), node);
237
+ }
238
+ return new TypedAstNode(MaqlType.ALL, node);
239
+ }
240
+ visitBooleanLiteralNode(node) {
241
+ return new TypedAstNode(MaqlType.BOOLEAN, node);
242
+ }
243
+ visitNumberLiteralNode(node) {
244
+ const numberType = node.format === "integer" ? MaqlType.INTEGER_LITERAL : MaqlType.NUMERIC_LITERAL;
245
+ return new TypedAstNode(numberType, node);
246
+ }
247
+ visitStringLiteralNode(node) {
248
+ return new TypedAstNode(MaqlType.STRING_LITERAL, node);
249
+ }
250
+ visitNullLiteralNode(node) {
251
+ return new TypedAstNode(MaqlType.NULL_LITERAL, node);
252
+ }
253
+ visitGranularityNode(node) {
254
+ const granularityType = this.model.granularities.getType(node.value);
255
+ if (granularityType === MaqlType.GRANULARITY) {
256
+ // granularity not recognized - either `DatetimeGranularities` does not contain all granularities
257
+ // or error node is encountered
258
+ this.logViolation(`Unrecognized datetime granularity '${node.value}'`, node.range);
259
+ }
260
+ return new TypedAstNode(granularityType, node);
261
+ }
262
+ visitFilterNode(node) {
263
+ this.checkType(this.visit(node.condition), MaqlType.BOOLEAN);
264
+ return new TypedAstNode(MaqlType.UNIT, node);
265
+ }
266
+ findCompatibleSupertype(types) {
267
+ return types.reduce((left, right) => lowestCommonAncestor(left, right));
268
+ }
269
+ checkOperandCount(node, actualCount, expectedCount, nodeName) {
270
+ if (actualCount !== expectedCount) {
271
+ this.logUnexpectedOperandCount(actualCount, node.range, `${nodeName} expects ${expectedCount} operands`);
272
+ return false;
273
+ }
274
+ return true;
275
+ }
276
+ checkType(marker, ...expected) {
277
+ const isValid = expected.some((expectedType) => isSubtype(marker.type, expectedType));
278
+ if (!isValid) {
279
+ this.logIncompatibleSubtype(expected, marker.type, marker.node?.range);
280
+ }
281
+ return isValid;
282
+ }
283
+ logIncompatibleSubtype(expected, received, range) {
284
+ const expMessage = expected.map((type) => `'${MaqlType[type]}'`).join(" or ");
285
+ const message = `Type mismatch: Expected ${expMessage}, but got '${MaqlType[received]}'`;
286
+ this.logViolation(message, range);
287
+ }
288
+ logUnexpectedOperandCount(count, range, extraInfo = "") {
289
+ const message = [`Unexpected count of operands: ${count}`, extraInfo].join(". ");
290
+ this.logViolation(message, range);
291
+ }
292
+ logViolation(message, range) {
293
+ this.typeConstraintsViolations.push({ message, range });
294
+ }
295
+ }
@@ -0,0 +1,18 @@
1
+ import type { TigerObjectType } from "@gooddata/sdk-backend-tiger";
2
+ import { MaqlType } from "./hierarchy.js";
3
+ /**
4
+ * Simplified logical model which holds MAQL type information
5
+ */
6
+ export declare class TypeModel {
7
+ readonly granularities: DatetimeGranularities;
8
+ private readonly labelSet;
9
+ private readonly dateLabelSet;
10
+ constructor(labels?: string[], dateLabels?: string[]);
11
+ getType(objectType: TigerObjectType, id: string): MaqlType;
12
+ }
13
+ export declare class DatetimeGranularities {
14
+ readonly chronologicalGranularities: Set<string>;
15
+ readonly periodicalGranularities: Set<string>;
16
+ getType(granularity: string): MaqlType;
17
+ }
18
+ //# sourceMappingURL=typeModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeModel.d.ts","sourceRoot":"","sources":["../../src/types/typeModel.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C;;GAEG;AACH,qBAAa,SAAS;IAClB,QAAQ,CAAC,aAAa,wBAA+B;IACrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAE3C,YAAY,MAAM,GAAE,MAAM,EAAO,EAAE,UAAU,GAAE,MAAM,EAAO,EAG3D;IAED,OAAO,CAAC,UAAU,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ,CAyBzD;CACJ;AAED,qBAAa,qBAAqB;IAC9B,QAAQ,CAAC,0BAA0B,cAahC;IACH,QAAQ,CAAC,uBAAuB,cAa7B;IAEH,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CASrC;CACJ"}
@@ -0,0 +1,84 @@
1
+ // (C) 2022-2026 GoodData Corporation
2
+ import { MaqlType } from "./hierarchy.js";
3
+ /**
4
+ * Simplified logical model which holds MAQL type information
5
+ */
6
+ export class TypeModel {
7
+ granularities = new DatetimeGranularities();
8
+ labelSet;
9
+ dateLabelSet;
10
+ constructor(labels = [], dateLabels = []) {
11
+ this.labelSet = new Set(labels);
12
+ this.dateLabelSet = new Set(dateLabels);
13
+ }
14
+ getType(objectType, id) {
15
+ switch (objectType) {
16
+ case "dataset":
17
+ return MaqlType.DATASET;
18
+ case "fact":
19
+ return MaqlType.NUMERIC;
20
+ case "attribute":
21
+ case "label":
22
+ if (this.labelSet.has(id)) {
23
+ return MaqlType.STRING;
24
+ }
25
+ else if (this.dateLabelSet.has(id)) {
26
+ return MaqlType.DATE;
27
+ }
28
+ else {
29
+ // Unrecognized ID, we can make no further claims
30
+ return MaqlType.STRING_AND_DATE;
31
+ }
32
+ case "computedAttribute":
33
+ // A computed attribute buckets rows into string values.
34
+ return MaqlType.STRING;
35
+ case "metric":
36
+ // TODO add option to resolve metric type
37
+ return MaqlType.ALL;
38
+ default:
39
+ return MaqlType.ALL;
40
+ }
41
+ }
42
+ }
43
+ export class DatetimeGranularities {
44
+ chronologicalGranularities = new Set([
45
+ "timestamp",
46
+ "second",
47
+ "minute",
48
+ "hour",
49
+ "day",
50
+ "month",
51
+ "year",
52
+ "quarter",
53
+ "week",
54
+ "fiscalyear",
55
+ "fiscalquarter",
56
+ "fiscalmonth",
57
+ ]);
58
+ periodicalGranularities = new Set([
59
+ "secondofminute",
60
+ "secondofday",
61
+ "minuteofhour",
62
+ "minuteofday",
63
+ "hourofday",
64
+ "dayofweek",
65
+ "dayofmonth",
66
+ "dayofquarter",
67
+ "dayofyear",
68
+ "weekofyear",
69
+ "monthofyear",
70
+ "quarterofyear",
71
+ ]);
72
+ getType(granularity) {
73
+ const value = granularity.toLowerCase();
74
+ if (this.chronologicalGranularities.has(value)) {
75
+ return MaqlType.CHRONOLOGICAL_GRANULARITY;
76
+ }
77
+ else if (this.periodicalGranularities.has(value)) {
78
+ return MaqlType.PERIODICAL_GRANULARITY;
79
+ }
80
+ else {
81
+ return MaqlType.GRANULARITY;
82
+ }
83
+ }
84
+ }
package/package.json CHANGED
@@ -1,6 +1,86 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-maql-language-server",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "11.65.0-alpha.10",
4
+ "license": "MIT",
5
+ "author": {
6
+ "name": "Stellar",
7
+ "email": "stellar@gooddata.com"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/gooddata/gooddata-ui-sdk.git",
12
+ "directory": "libs/sdk-maql-language-server"
13
+ },
14
+ "files": [
15
+ "esm",
16
+ "README.md"
17
+ ],
18
+ "type": "module",
19
+ "browser": "esm/index.js",
20
+ "types": "esm/index.d.ts",
21
+ "exports": "./esm/index.js",
22
+ "dependencies": {
23
+ "@gooddata/maql-antlr4ts": "0.7.2",
24
+ "antlr4-c3": "3.4.4",
25
+ "antlr4ng": "3.0.16",
26
+ "lodash-es": "^4.17.23",
27
+ "vscode-languageserver": "8.1.0",
28
+ "vscode-languageserver-textdocument": "1.0.12",
29
+ "@gooddata/sdk-backend-base": "11.65.0-alpha.10",
30
+ "@gooddata/sdk-backend-spi": "11.65.0-alpha.10",
31
+ "@gooddata/sdk-backend-tiger": "11.65.0-alpha.10",
32
+ "@gooddata/sdk-model": "11.65.0-alpha.10"
33
+ },
34
+ "devDependencies": {
35
+ "@microsoft/api-documenter": "7.30.16",
36
+ "@microsoft/api-extractor": "7.59.2",
37
+ "@types/lodash-es": "4.17.12",
38
+ "@types/node": "24.12.0",
39
+ "@typescript-eslint/eslint-plugin": "8.58.0",
40
+ "@typescript-eslint/parser": "8.58.0",
41
+ "colors": "1.4.0",
42
+ "eslint": "^9.39.2",
43
+ "eslint-plugin-headers": "1.3.3",
44
+ "eslint-plugin-import-esm": "1.2.1",
45
+ "eslint-plugin-jsdoc": "62.1.0",
46
+ "eslint-plugin-no-barrel-files": "1.2.2",
47
+ "eslint-plugin-no-only-tests": "3.3.0",
48
+ "eslint-plugin-regexp": "1.15.0",
49
+ "eslint-plugin-sonarjs": "3.0.6",
50
+ "eslint-plugin-tsdoc": "0.2.14",
51
+ "glob": "13.0.2",
52
+ "jiti": "2.6.1",
53
+ "npm-run-all": "4.1.5",
54
+ "oxfmt": "0.68.0",
55
+ "oxlint": "1.83.0",
56
+ "oxlint-plugin-eslint": "1.82.0",
57
+ "oxlint-tsgolint": "7.0.2001",
58
+ "ts-dedent": "2.3.0",
59
+ "typescript": "7.0.2",
60
+ "vitest": "5.0.4",
61
+ "@gooddata/api-client-tiger": "11.65.0-alpha.10",
62
+ "@gooddata/eslint-config": "11.65.0-alpha.10",
63
+ "@gooddata/stylelint-config": "11.65.0-alpha.10",
64
+ "@gooddata/oxlint-config": "11.65.0-alpha.10"
65
+ },
66
+ "scripts": {
67
+ "_phase:build": "npm run build",
68
+ "_phase:test": "npm run test-once",
69
+ "_phase:validate": "npm run validate",
70
+ "api-extractor": "mkdir -p api && [ -z \"${CI}\" ] && (api-extractor run -l) || (api-extractor run)",
71
+ "build": "npm-run-all -p build-check build-ts && npm run api-extractor",
72
+ "build-check": "tsc",
73
+ "build-ts": "tsc -p ./tsconfig.build.json",
74
+ "clean": "../../common/scripts/clean-command-state.sh && rm -rf esm *.log",
75
+ "format-check": "oxfmt --check .",
76
+ "format-write": "oxfmt .",
77
+ "lint": "oxlint . --quiet && eslint .",
78
+ "lint-fix": "oxlint . --quiet --fix && eslint . --fix",
79
+ "test": "vitest watch",
80
+ "test-once": "vitest run",
81
+ "update-docs": "tsc -p ./scripts && node scripts/build/docsParser.js src/docs",
82
+ "validate": "npm run lint && npm run format-check",
83
+ "validate-esm": "node --input-type=module --eval 'import \"@gooddata/sdk-maql-language-server\"'",
84
+ "watch": "tsc -watch -p ./tsconfig.build.json"
85
+ }
6
86
  }