@perses-dev/greptimedb-plugin 0.1.0-beta.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 (331) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +41 -0
  3. package/__mf/css/async/8077.85c2cbf6.css +1 -0
  4. package/__mf/font/inter-cyrillic-300-normal.432f2b21.woff +0 -0
  5. package/__mf/font/inter-cyrillic-300-normal.9da91009.woff2 +0 -0
  6. package/__mf/font/inter-cyrillic-400-normal.372704ff.woff2 +0 -0
  7. package/__mf/font/inter-cyrillic-400-normal.a6b6ef6f.woff +0 -0
  8. package/__mf/font/inter-cyrillic-500-normal.7c15bba8.woff2 +0 -0
  9. package/__mf/font/inter-cyrillic-500-normal.b9f8c929.woff +0 -0
  10. package/__mf/font/inter-cyrillic-600-normal.2f42892a.woff2 +0 -0
  11. package/__mf/font/inter-cyrillic-600-normal.c3987adc.woff +0 -0
  12. package/__mf/font/inter-cyrillic-700-normal.93eba3c3.woff +0 -0
  13. package/__mf/font/inter-cyrillic-700-normal.e9e5b2dc.woff2 +0 -0
  14. package/__mf/font/inter-cyrillic-900-normal.f285bd7a.woff2 +0 -0
  15. package/__mf/font/inter-cyrillic-900-normal.ffbd8a3a.woff +0 -0
  16. package/__mf/font/inter-cyrillic-ext-300-normal.95bb9038.woff2 +0 -0
  17. package/__mf/font/inter-cyrillic-ext-300-normal.cfc143a9.woff +0 -0
  18. package/__mf/font/inter-cyrillic-ext-400-normal.2a31c04b.woff +0 -0
  19. package/__mf/font/inter-cyrillic-ext-400-normal.f572b170.woff2 +0 -0
  20. package/__mf/font/inter-cyrillic-ext-500-normal.5a6bb1da.woff +0 -0
  21. package/__mf/font/inter-cyrillic-ext-500-normal.fe0d9b14.woff2 +0 -0
  22. package/__mf/font/inter-cyrillic-ext-600-normal.ecbdecad.woff +0 -0
  23. package/__mf/font/inter-cyrillic-ext-600-normal.f7b3c15b.woff2 +0 -0
  24. package/__mf/font/inter-cyrillic-ext-700-normal.4b4022a6.woff +0 -0
  25. package/__mf/font/inter-cyrillic-ext-700-normal.74b516d2.woff2 +0 -0
  26. package/__mf/font/inter-cyrillic-ext-900-normal.9970ddb5.woff +0 -0
  27. package/__mf/font/inter-cyrillic-ext-900-normal.a0d59adc.woff2 +0 -0
  28. package/__mf/font/inter-greek-300-normal.0d7be683.woff2 +0 -0
  29. package/__mf/font/inter-greek-300-normal.8f0b988e.woff +0 -0
  30. package/__mf/font/inter-greek-400-normal.cc58c11b.woff +0 -0
  31. package/__mf/font/inter-greek-400-normal.d7020e3c.woff2 +0 -0
  32. package/__mf/font/inter-greek-500-normal.d9a33207.woff +0 -0
  33. package/__mf/font/inter-greek-500-normal.f41f43db.woff2 +0 -0
  34. package/__mf/font/inter-greek-600-normal.4ec0c1c1.woff +0 -0
  35. package/__mf/font/inter-greek-600-normal.cc532937.woff2 +0 -0
  36. package/__mf/font/inter-greek-700-normal.5ec6c758.woff +0 -0
  37. package/__mf/font/inter-greek-700-normal.97f0eeeb.woff2 +0 -0
  38. package/__mf/font/inter-greek-900-normal.46b66369.woff2 +0 -0
  39. package/__mf/font/inter-greek-900-normal.9ae3a3c5.woff +0 -0
  40. package/__mf/font/inter-greek-ext-300-normal.10247a66.woff2 +0 -0
  41. package/__mf/font/inter-greek-ext-300-normal.4668e5cb.woff +0 -0
  42. package/__mf/font/inter-greek-ext-400-normal.4ce1df5d.woff2 +0 -0
  43. package/__mf/font/inter-greek-ext-400-normal.88ede1ea.woff +0 -0
  44. package/__mf/font/inter-greek-ext-500-normal.7a4aa726.woff +0 -0
  45. package/__mf/font/inter-greek-ext-500-normal.cbd51e2d.woff2 +0 -0
  46. package/__mf/font/inter-greek-ext-600-normal.089a95ee.woff +0 -0
  47. package/__mf/font/inter-greek-ext-600-normal.1f33d317.woff2 +0 -0
  48. package/__mf/font/inter-greek-ext-700-normal.31f1075d.woff +0 -0
  49. package/__mf/font/inter-greek-ext-700-normal.827cd618.woff2 +0 -0
  50. package/__mf/font/inter-greek-ext-900-normal.531bcee7.woff +0 -0
  51. package/__mf/font/inter-greek-ext-900-normal.8a9b36b9.woff2 +0 -0
  52. package/__mf/font/inter-latin-300-normal.15fb600d.woff2 +0 -0
  53. package/__mf/font/inter-latin-300-normal.6f95f590.woff +0 -0
  54. package/__mf/font/inter-latin-400-normal.2c7a775c.woff +0 -0
  55. package/__mf/font/inter-latin-400-normal.ef6d3f52.woff2 +0 -0
  56. package/__mf/font/inter-latin-500-normal.b7b43ace.woff2 +0 -0
  57. package/__mf/font/inter-latin-500-normal.cb4c8ceb.woff +0 -0
  58. package/__mf/font/inter-latin-600-normal.8fb1a964.woff2 +0 -0
  59. package/__mf/font/inter-latin-600-normal.ce0f5f43.woff +0 -0
  60. package/__mf/font/inter-latin-700-normal.953b7aa5.woff2 +0 -0
  61. package/__mf/font/inter-latin-700-normal.9c21d4dc.woff +0 -0
  62. package/__mf/font/inter-latin-900-normal.2a8028ec.woff2 +0 -0
  63. package/__mf/font/inter-latin-900-normal.fa252135.woff +0 -0
  64. package/__mf/font/inter-latin-ext-300-normal.167cc8c9.woff2 +0 -0
  65. package/__mf/font/inter-latin-ext-300-normal.f695be66.woff +0 -0
  66. package/__mf/font/inter-latin-ext-400-normal.32a25442.woff2 +0 -0
  67. package/__mf/font/inter-latin-ext-400-normal.4edcaace.woff +0 -0
  68. package/__mf/font/inter-latin-ext-500-normal.a19a84a6.woff +0 -0
  69. package/__mf/font/inter-latin-ext-500-normal.d9b491de.woff2 +0 -0
  70. package/__mf/font/inter-latin-ext-600-normal.38b075d8.woff2 +0 -0
  71. package/__mf/font/inter-latin-ext-600-normal.49faa47a.woff +0 -0
  72. package/__mf/font/inter-latin-ext-700-normal.93534b50.woff +0 -0
  73. package/__mf/font/inter-latin-ext-700-normal.b63daa1a.woff2 +0 -0
  74. package/__mf/font/inter-latin-ext-900-normal.0efdb307.woff +0 -0
  75. package/__mf/font/inter-latin-ext-900-normal.9c0fc2c7.woff2 +0 -0
  76. package/__mf/font/inter-vietnamese-300-normal.aad496d8.woff +0 -0
  77. package/__mf/font/inter-vietnamese-300-normal.ad9ef503.woff2 +0 -0
  78. package/__mf/font/inter-vietnamese-400-normal.a9dd2faf.woff +0 -0
  79. package/__mf/font/inter-vietnamese-400-normal.de4fc44f.woff2 +0 -0
  80. package/__mf/font/inter-vietnamese-500-normal.7c0a695f.woff2 +0 -0
  81. package/__mf/font/inter-vietnamese-500-normal.a3a73b95.woff +0 -0
  82. package/__mf/font/inter-vietnamese-600-normal.9d518599.woff2 +0 -0
  83. package/__mf/font/inter-vietnamese-600-normal.c5ce3fcb.woff +0 -0
  84. package/__mf/font/inter-vietnamese-700-normal.bc68b199.woff +0 -0
  85. package/__mf/font/inter-vietnamese-700-normal.faf12809.woff2 +0 -0
  86. package/__mf/font/inter-vietnamese-900-normal.2b782045.woff +0 -0
  87. package/__mf/font/inter-vietnamese-900-normal.e639b65a.woff2 +0 -0
  88. package/__mf/js/GreptimeDB.7a063e9e.js +7 -0
  89. package/__mf/js/async/1616.20d43f7e.js +1 -0
  90. package/__mf/js/async/2043.97b1f27f.js +2 -0
  91. package/__mf/js/async/2043.97b1f27f.js.LICENSE.txt +24 -0
  92. package/__mf/js/async/2269.f1322789.js +3 -0
  93. package/__mf/js/async/2386.b7243314.js +2 -0
  94. package/__mf/js/async/2386.b7243314.js.LICENSE.txt +9 -0
  95. package/__mf/js/async/3181.7ac30201.js +2 -0
  96. package/__mf/js/async/3181.7ac30201.js.LICENSE.txt +9 -0
  97. package/__mf/js/async/3247.65183b95.js +2 -0
  98. package/__mf/js/async/3247.65183b95.js.LICENSE.txt +37 -0
  99. package/__mf/js/async/392.91ae0e19.js +2 -0
  100. package/__mf/js/async/392.91ae0e19.js.LICENSE.txt +8 -0
  101. package/__mf/js/async/3944.12d0f358.js +10 -0
  102. package/__mf/js/async/3944.12d0f358.js.LICENSE.txt +17 -0
  103. package/__mf/js/async/4121.06b9cab6.js +2 -0
  104. package/__mf/js/async/4121.06b9cab6.js.LICENSE.txt +9 -0
  105. package/__mf/js/async/5002.0a422150.js +1 -0
  106. package/__mf/js/async/5071.e5cc2bd7.js +1 -0
  107. package/__mf/js/async/5402.eda0fb07.js +101 -0
  108. package/__mf/js/async/5440.7abefadb.js +2 -0
  109. package/__mf/js/async/5440.7abefadb.js.LICENSE.txt +32 -0
  110. package/__mf/js/async/5562.a39a5d1e.js +2 -0
  111. package/__mf/js/async/5562.a39a5d1e.js.LICENSE.txt +9 -0
  112. package/__mf/js/async/5587.a3fb718a.js +1 -0
  113. package/__mf/js/async/6045.10e9fa5a.js +1 -0
  114. package/__mf/js/async/6274.6f0093e7.js +2 -0
  115. package/__mf/js/async/6274.6f0093e7.js.LICENSE.txt +8 -0
  116. package/__mf/js/async/6753.1e42e819.js +1 -0
  117. package/__mf/js/async/7177.78bced1c.js +1 -0
  118. package/__mf/js/async/7192.e0362dae.js +1 -0
  119. package/__mf/js/async/7862.8048abcc.js +2 -0
  120. package/__mf/js/async/7862.8048abcc.js.LICENSE.txt +9 -0
  121. package/__mf/js/async/7968.7b2e2836.js +1 -0
  122. package/__mf/js/async/7978.8cd67008.js +1 -0
  123. package/__mf/js/async/8077.fe9828a3.js +7 -0
  124. package/__mf/js/async/8077.fe9828a3.js.LICENSE.txt +39 -0
  125. package/__mf/js/async/8356.ac21fc24.js +1 -0
  126. package/__mf/js/async/8470.a2e67e3a.js +2 -0
  127. package/__mf/js/async/8470.a2e67e3a.js.LICENSE.txt +19 -0
  128. package/__mf/js/async/873.863f53e4.js +1 -0
  129. package/__mf/js/async/9235.7651eaca.js +1 -0
  130. package/__mf/js/async/941.4155d3cc.js +2 -0
  131. package/__mf/js/async/941.4155d3cc.js.LICENSE.txt +9 -0
  132. package/__mf/js/async/9558.215ad80c.js +1 -0
  133. package/__mf/js/async/9588.2f544a41.js +1 -0
  134. package/__mf/js/async/9877.8766524e.js +38 -0
  135. package/__mf/js/async/9916.2a1eb7a0.js +22 -0
  136. package/__mf/js/async/9916.2a1eb7a0.js.LICENSE.txt +19 -0
  137. package/__mf/js/async/__federation_expose_GreptimeDBDatasource.bf1dec3c.js +2 -0
  138. package/__mf/js/async/__federation_expose_GreptimeDBDatasource.bf1dec3c.js.LICENSE.txt +9 -0
  139. package/__mf/js/async/__federation_expose_GreptimeDBLogQuery.d80b2965.js +21 -0
  140. package/__mf/js/async/__federation_expose_GreptimeDBLogQuery.d80b2965.js.LICENSE.txt +9 -0
  141. package/__mf/js/async/__federation_expose_GreptimeDBTimeSeriesQuery.59cda507.js +21 -0
  142. package/__mf/js/async/__federation_expose_GreptimeDBTimeSeriesQuery.59cda507.js.LICENSE.txt +9 -0
  143. package/__mf/js/async/__federation_expose_GreptimeDBTraceQuery.00464f43.js +21 -0
  144. package/__mf/js/async/__federation_expose_GreptimeDBTraceQuery.00464f43.js.LICENSE.txt +9 -0
  145. package/__mf/js/main.a4e4afce.js +7 -0
  146. package/lib/bootstrap.d.ts +2 -0
  147. package/lib/bootstrap.d.ts.map +1 -0
  148. package/lib/bootstrap.js +19 -0
  149. package/lib/bootstrap.js.map +1 -0
  150. package/lib/cjs/bootstrap.js +26 -0
  151. package/lib/cjs/components/GreptimeDBQLEditor.js +72 -0
  152. package/lib/cjs/components/constants.js +42 -0
  153. package/lib/cjs/components/index.js +31 -0
  154. package/lib/cjs/datasources/greptimedb-datasource/GreptimeDBDatasource.js +53 -0
  155. package/lib/cjs/datasources/greptimedb-datasource/GreptimeDBDatasourceEditor.js +51 -0
  156. package/lib/cjs/datasources/greptimedb-datasource/greptimedb-datasource-types.js +16 -0
  157. package/lib/cjs/datasources/greptimedb-datasource/index.js +32 -0
  158. package/lib/cjs/datasources/index.js +30 -0
  159. package/lib/cjs/env.d.js +14 -0
  160. package/lib/cjs/getPluginModule.js +39 -0
  161. package/lib/cjs/index-federation.js +55 -0
  162. package/lib/cjs/index.js +38 -0
  163. package/lib/cjs/model/greptimedb-client.js +76 -0
  164. package/lib/cjs/model/greptimedb-data-types.js +16 -0
  165. package/lib/cjs/queries/constants.js +34 -0
  166. package/lib/cjs/queries/greptimedb-log-query/GreptimeDBLogQuery.js +43 -0
  167. package/lib/cjs/queries/greptimedb-log-query/GreptimeDBLogQueryEditor.js +108 -0
  168. package/lib/cjs/queries/greptimedb-log-query/get-greptimedb-log-data.js +103 -0
  169. package/lib/cjs/queries/greptimedb-log-query/greptimedb-log-query-types.js +16 -0
  170. package/lib/cjs/queries/greptimedb-log-query/index.js +33 -0
  171. package/lib/cjs/queries/greptimedb-log-query/log-query-plugin-interface.js +16 -0
  172. package/lib/cjs/queries/greptimedb-query-data-model.js +152 -0
  173. package/lib/cjs/queries/greptimedb-time-series-query/GreptimeDBQuery.js +43 -0
  174. package/lib/cjs/queries/greptimedb-time-series-query/GreptimeDBQueryEditor.js +107 -0
  175. package/lib/cjs/queries/greptimedb-time-series-query/get-greptimedb-data.js +184 -0
  176. package/lib/cjs/queries/greptimedb-time-series-query/greptimedb-query-types.js +16 -0
  177. package/lib/cjs/queries/greptimedb-time-series-query/index.js +33 -0
  178. package/lib/cjs/queries/greptimedb-trace-query/GreptimeDBTraceQuery.js +40 -0
  179. package/lib/cjs/queries/greptimedb-trace-query/GreptimeDBTraceQueryEditor.js +79 -0
  180. package/lib/cjs/queries/greptimedb-trace-query/get-greptimedb-trace-data.js +518 -0
  181. package/lib/cjs/queries/greptimedb-trace-query/greptimedb-trace-query-types.js +16 -0
  182. package/lib/cjs/queries/greptimedb-trace-query/index.js +33 -0
  183. package/lib/cjs/queries/greptimedb-trace-query/trace-query-sql.js +25 -0
  184. package/lib/cjs/queries/index.js +32 -0
  185. package/lib/cjs/queries/query-editor-model.js +47 -0
  186. package/lib/cjs/setup-tests.js +19 -0
  187. package/lib/components/GreptimeDBQLEditor.d.ts +4 -0
  188. package/lib/components/GreptimeDBQLEditor.d.ts.map +1 -0
  189. package/lib/components/GreptimeDBQLEditor.js +59 -0
  190. package/lib/components/GreptimeDBQLEditor.js.map +1 -0
  191. package/lib/components/constants.d.ts +2 -0
  192. package/lib/components/constants.d.ts.map +1 -0
  193. package/lib/components/constants.js +34 -0
  194. package/lib/components/constants.js.map +1 -0
  195. package/lib/components/index.d.ts +3 -0
  196. package/lib/components/index.d.ts.map +1 -0
  197. package/lib/components/index.js +16 -0
  198. package/lib/components/index.js.map +1 -0
  199. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasource.d.ts +4 -0
  200. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasource.d.ts.map +1 -0
  201. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasource.js +45 -0
  202. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasource.js.map +1 -0
  203. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasourceEditor.d.ts +9 -0
  204. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasourceEditor.d.ts.map +1 -0
  205. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasourceEditor.js +43 -0
  206. package/lib/datasources/greptimedb-datasource/GreptimeDBDatasourceEditor.js.map +1 -0
  207. package/lib/datasources/greptimedb-datasource/greptimedb-datasource-types.d.ts +29 -0
  208. package/lib/datasources/greptimedb-datasource/greptimedb-datasource-types.d.ts.map +1 -0
  209. package/lib/datasources/greptimedb-datasource/greptimedb-datasource-types.js +15 -0
  210. package/lib/datasources/greptimedb-datasource/greptimedb-datasource-types.js.map +1 -0
  211. package/lib/datasources/greptimedb-datasource/index.d.ts +4 -0
  212. package/lib/datasources/greptimedb-datasource/index.d.ts.map +1 -0
  213. package/lib/datasources/greptimedb-datasource/index.js +17 -0
  214. package/lib/datasources/greptimedb-datasource/index.js.map +1 -0
  215. package/lib/datasources/index.d.ts +2 -0
  216. package/lib/datasources/index.d.ts.map +1 -0
  217. package/lib/datasources/index.js +15 -0
  218. package/lib/datasources/index.js.map +1 -0
  219. package/lib/env.d.js +15 -0
  220. package/lib/env.d.js.map +1 -0
  221. package/lib/getPluginModule.d.ts +6 -0
  222. package/lib/getPluginModule.d.ts.map +1 -0
  223. package/lib/getPluginModule.js +28 -0
  224. package/lib/getPluginModule.js.map +1 -0
  225. package/lib/index-federation.d.ts +1 -0
  226. package/lib/index-federation.d.ts.map +1 -0
  227. package/lib/index-federation.js +15 -0
  228. package/lib/index-federation.js.map +1 -0
  229. package/lib/index.d.ts +4 -0
  230. package/lib/index.d.ts.map +1 -0
  231. package/lib/index.js +17 -0
  232. package/lib/index.js.map +1 -0
  233. package/lib/model/greptimedb-client.d.ts +17 -0
  234. package/lib/model/greptimedb-client.d.ts.map +1 -0
  235. package/lib/model/greptimedb-client.js +68 -0
  236. package/lib/model/greptimedb-client.js.map +1 -0
  237. package/lib/model/greptimedb-data-types.d.ts +21 -0
  238. package/lib/model/greptimedb-data-types.d.ts.map +1 -0
  239. package/lib/model/greptimedb-data-types.js +15 -0
  240. package/lib/model/greptimedb-data-types.js.map +1 -0
  241. package/lib/queries/constants.d.ts +5 -0
  242. package/lib/queries/constants.d.ts.map +1 -0
  243. package/lib/queries/constants.js +18 -0
  244. package/lib/queries/constants.js.map +1 -0
  245. package/lib/queries/greptimedb-log-query/GreptimeDBLogQuery.d.ts +4 -0
  246. package/lib/queries/greptimedb-log-query/GreptimeDBLogQuery.d.ts.map +1 -0
  247. package/lib/queries/greptimedb-log-query/GreptimeDBLogQuery.js +35 -0
  248. package/lib/queries/greptimedb-log-query/GreptimeDBLogQuery.js.map +1 -0
  249. package/lib/queries/greptimedb-log-query/GreptimeDBLogQueryEditor.d.ts +7 -0
  250. package/lib/queries/greptimedb-log-query/GreptimeDBLogQueryEditor.d.ts.map +1 -0
  251. package/lib/queries/greptimedb-log-query/GreptimeDBLogQueryEditor.js +100 -0
  252. package/lib/queries/greptimedb-log-query/GreptimeDBLogQueryEditor.js.map +1 -0
  253. package/lib/queries/greptimedb-log-query/get-greptimedb-log-data.d.ts +4 -0
  254. package/lib/queries/greptimedb-log-query/get-greptimedb-log-data.d.ts.map +1 -0
  255. package/lib/queries/greptimedb-log-query/get-greptimedb-log-data.js +95 -0
  256. package/lib/queries/greptimedb-log-query/get-greptimedb-log-data.js.map +1 -0
  257. package/lib/queries/greptimedb-log-query/greptimedb-log-query-types.d.ts +6 -0
  258. package/lib/queries/greptimedb-log-query/greptimedb-log-query-types.d.ts.map +1 -0
  259. package/lib/queries/greptimedb-log-query/greptimedb-log-query-types.js +15 -0
  260. package/lib/queries/greptimedb-log-query/greptimedb-log-query-types.js.map +1 -0
  261. package/lib/queries/greptimedb-log-query/index.d.ts +5 -0
  262. package/lib/queries/greptimedb-log-query/index.d.ts.map +1 -0
  263. package/lib/queries/greptimedb-log-query/index.js +18 -0
  264. package/lib/queries/greptimedb-log-query/index.js.map +1 -0
  265. package/lib/queries/greptimedb-log-query/log-query-plugin-interface.d.ts +23 -0
  266. package/lib/queries/greptimedb-log-query/log-query-plugin-interface.d.ts.map +1 -0
  267. package/lib/queries/greptimedb-log-query/log-query-plugin-interface.js +15 -0
  268. package/lib/queries/greptimedb-log-query/log-query-plugin-interface.js.map +1 -0
  269. package/lib/queries/greptimedb-query-data-model.d.ts +18 -0
  270. package/lib/queries/greptimedb-query-data-model.d.ts.map +1 -0
  271. package/lib/queries/greptimedb-query-data-model.js +138 -0
  272. package/lib/queries/greptimedb-query-data-model.js.map +1 -0
  273. package/lib/queries/greptimedb-time-series-query/GreptimeDBQuery.d.ts +4 -0
  274. package/lib/queries/greptimedb-time-series-query/GreptimeDBQuery.d.ts.map +1 -0
  275. package/lib/queries/greptimedb-time-series-query/GreptimeDBQuery.js +35 -0
  276. package/lib/queries/greptimedb-time-series-query/GreptimeDBQuery.js.map +1 -0
  277. package/lib/queries/greptimedb-time-series-query/GreptimeDBQueryEditor.d.ts +7 -0
  278. package/lib/queries/greptimedb-time-series-query/GreptimeDBQueryEditor.d.ts.map +1 -0
  279. package/lib/queries/greptimedb-time-series-query/GreptimeDBQueryEditor.js +99 -0
  280. package/lib/queries/greptimedb-time-series-query/GreptimeDBQueryEditor.js.map +1 -0
  281. package/lib/queries/greptimedb-time-series-query/get-greptimedb-data.d.ts +4 -0
  282. package/lib/queries/greptimedb-time-series-query/get-greptimedb-data.d.ts.map +1 -0
  283. package/lib/queries/greptimedb-time-series-query/get-greptimedb-data.js +176 -0
  284. package/lib/queries/greptimedb-time-series-query/get-greptimedb-data.js.map +1 -0
  285. package/lib/queries/greptimedb-time-series-query/greptimedb-query-types.d.ts +7 -0
  286. package/lib/queries/greptimedb-time-series-query/greptimedb-query-types.d.ts.map +1 -0
  287. package/lib/queries/greptimedb-time-series-query/greptimedb-query-types.js +15 -0
  288. package/lib/queries/greptimedb-time-series-query/greptimedb-query-types.js.map +1 -0
  289. package/lib/queries/greptimedb-time-series-query/index.d.ts +5 -0
  290. package/lib/queries/greptimedb-time-series-query/index.d.ts.map +1 -0
  291. package/lib/queries/greptimedb-time-series-query/index.js +18 -0
  292. package/lib/queries/greptimedb-time-series-query/index.js.map +1 -0
  293. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQuery.d.ts +4 -0
  294. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQuery.d.ts.map +1 -0
  295. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQuery.js +32 -0
  296. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQuery.js.map +1 -0
  297. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQueryEditor.d.ts +7 -0
  298. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQueryEditor.d.ts.map +1 -0
  299. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQueryEditor.js +71 -0
  300. package/lib/queries/greptimedb-trace-query/GreptimeDBTraceQueryEditor.js.map +1 -0
  301. package/lib/queries/greptimedb-trace-query/get-greptimedb-trace-data.d.ts +11 -0
  302. package/lib/queries/greptimedb-trace-query/get-greptimedb-trace-data.d.ts.map +1 -0
  303. package/lib/queries/greptimedb-trace-query/get-greptimedb-trace-data.js +466 -0
  304. package/lib/queries/greptimedb-trace-query/get-greptimedb-trace-data.js.map +1 -0
  305. package/lib/queries/greptimedb-trace-query/greptimedb-trace-query-types.d.ts +6 -0
  306. package/lib/queries/greptimedb-trace-query/greptimedb-trace-query-types.d.ts.map +1 -0
  307. package/lib/queries/greptimedb-trace-query/greptimedb-trace-query-types.js +15 -0
  308. package/lib/queries/greptimedb-trace-query/greptimedb-trace-query-types.js.map +1 -0
  309. package/lib/queries/greptimedb-trace-query/index.d.ts +5 -0
  310. package/lib/queries/greptimedb-trace-query/index.d.ts.map +1 -0
  311. package/lib/queries/greptimedb-trace-query/index.js +18 -0
  312. package/lib/queries/greptimedb-trace-query/index.js.map +1 -0
  313. package/lib/queries/greptimedb-trace-query/trace-query-sql.d.ts +2 -0
  314. package/lib/queries/greptimedb-trace-query/trace-query-sql.d.ts.map +1 -0
  315. package/lib/queries/greptimedb-trace-query/trace-query-sql.js +17 -0
  316. package/lib/queries/greptimedb-trace-query/trace-query-sql.js.map +1 -0
  317. package/lib/queries/index.d.ts +4 -0
  318. package/lib/queries/index.d.ts.map +1 -0
  319. package/lib/queries/index.js +17 -0
  320. package/lib/queries/index.js.map +1 -0
  321. package/lib/queries/query-editor-model.d.ts +19 -0
  322. package/lib/queries/query-editor-model.d.ts.map +1 -0
  323. package/lib/queries/query-editor-model.js +44 -0
  324. package/lib/queries/query-editor-model.js.map +1 -0
  325. package/lib/setup-tests.d.ts +2 -0
  326. package/lib/setup-tests.d.ts.map +1 -0
  327. package/lib/setup-tests.js +17 -0
  328. package/lib/setup-tests.js.map +1 -0
  329. package/mf-manifest.json +462 -0
  330. package/mf-stats.json +530 -0
  331. package/package.json +86 -0
@@ -0,0 +1,108 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ Object.defineProperty(exports, "GreptimeDBLogQueryEditor", {
18
+ enumerable: true,
19
+ get: function() {
20
+ return GreptimeDBLogQueryEditor;
21
+ }
22
+ });
23
+ const _jsxruntime = require("react/jsx-runtime");
24
+ const _pluginsystem = require("@perses-dev/plugin-system");
25
+ const _react = require("react");
26
+ const _immer = require("immer");
27
+ const _material = require("@mui/material");
28
+ const _constants = require("../constants");
29
+ const _components = require("../../components");
30
+ const _constants1 = require("../../components/constants");
31
+ const _queryeditormodel = require("../query-editor-model");
32
+ function GreptimeDBLogQueryEditor(props) {
33
+ const theme = (0, _material.useTheme)();
34
+ const { onChange, value } = props;
35
+ const { datasource } = value;
36
+ const selectedDatasource = datasource ?? _constants.DEFAULT_DATASOURCE;
37
+ const { query, handleQueryChange, handleQueryBlur } = (0, _queryeditormodel.useQueryState)(props);
38
+ const handleDatasourceChange = (newDatasourceSelection)=>{
39
+ if (!(0, _pluginsystem.isVariableDatasource)(newDatasourceSelection) && newDatasourceSelection.kind === _constants.DATASOURCE_KIND) {
40
+ onChange((0, _immer.produce)(value, (draft)=>{
41
+ draft.datasource = newDatasourceSelection;
42
+ }));
43
+ return;
44
+ }
45
+ throw new Error('Got unexpected non GreptimeDB datasource selection');
46
+ };
47
+ const handleQueryExecute = (queryValue)=>{
48
+ onChange((0, _immer.produce)(value, (draft)=>{
49
+ draft.query = queryValue;
50
+ }));
51
+ };
52
+ const handleGreptimeDBQueryChange = (0, _react.useCallback)((e)=>{
53
+ handleQueryChange(e);
54
+ }, [
55
+ handleQueryChange
56
+ ]);
57
+ const examplesStyle = {
58
+ fontSize: '11px',
59
+ color: theme.palette.text.secondary,
60
+ backgroundColor: theme.palette.background.code,
61
+ padding: '8px',
62
+ borderRadius: '4px',
63
+ fontFamily: 'Monaco, Menlo, "Ubuntu Mono", monospace',
64
+ whiteSpace: 'pre-wrap',
65
+ lineHeight: '1.3'
66
+ };
67
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Stack, {
68
+ spacing: 1.5,
69
+ children: [
70
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_pluginsystem.DatasourceSelect, {
71
+ datasourcePluginKind: _constants.DATASOURCE_KIND,
72
+ value: selectedDatasource,
73
+ onChange: handleDatasourceChange,
74
+ label: "GreptimeDB Datasource",
75
+ notched: true
76
+ }),
77
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.GreptimeDBQLEditor, {
78
+ value: query,
79
+ onChange: handleGreptimeDBQueryChange,
80
+ onBlur: handleQueryBlur,
81
+ onKeyDown: (event)=>{
82
+ if (event.key === 'Enter' && (event.ctrlKey || event.metaKey)) {
83
+ event.preventDefault();
84
+ handleQueryExecute(query);
85
+ }
86
+ },
87
+ placeholder: "Enter GreptimeDB SQL query"
88
+ }),
89
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("details", {
90
+ children: [
91
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("summary", {
92
+ style: {
93
+ cursor: 'pointer',
94
+ fontSize: '12px',
95
+ color: theme.palette.text.secondary,
96
+ marginBottom: '8px'
97
+ },
98
+ children: "Query Examples"
99
+ }),
100
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
101
+ style: examplesStyle,
102
+ children: _constants1.queryExample
103
+ })
104
+ ]
105
+ })
106
+ ]
107
+ });
108
+ }
@@ -0,0 +1,103 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ Object.defineProperty(exports, "getGreptimeDBLogData", {
18
+ enumerable: true,
19
+ get: function() {
20
+ return getGreptimeDBLogData;
21
+ }
22
+ });
23
+ const _constants = require("../constants");
24
+ const _greptimedbquerydatamodel = require("../greptimedb-query-data-model");
25
+ function buildLogs(records) {
26
+ const columnSchemas = records?.schema?.column_schemas ?? [];
27
+ const rows = records?.rows ?? [];
28
+ if (!columnSchemas.length || !rows.length) {
29
+ return {
30
+ entries: [],
31
+ totalCount: 0
32
+ };
33
+ }
34
+ const timeIndex = (0, _greptimedbquerydatamodel.findTimeColumnIndex)(columnSchemas);
35
+ if (timeIndex === -1) {
36
+ return {
37
+ entries: [],
38
+ totalCount: 0
39
+ };
40
+ }
41
+ const entries = rows.map((row)=>{
42
+ const tsMs = (0, _greptimedbquerydatamodel.toTimestampMs)(row?.[timeIndex], columnSchemas[timeIndex]?.data_type);
43
+ if (tsMs === null) {
44
+ return null;
45
+ }
46
+ const labels = {};
47
+ const lineParts = [];
48
+ columnSchemas.forEach((col, index)=>{
49
+ if (index === timeIndex) {
50
+ return;
51
+ }
52
+ const value = row?.[index];
53
+ const stringValue = value === null || value === undefined ? '' : String(value);
54
+ labels[col.name] = stringValue;
55
+ lineParts.push(`${col.name}=${stringValue === '' ? '--' : stringValue}`);
56
+ });
57
+ return {
58
+ timestamp: Math.floor(tsMs / 1000),
59
+ labels,
60
+ line: lineParts.join(' ')
61
+ };
62
+ }).filter((entry)=>entry !== null);
63
+ return {
64
+ entries,
65
+ totalCount: entries.length
66
+ };
67
+ }
68
+ const getGreptimeDBLogData = async (spec, context)=>{
69
+ if (!spec.query) {
70
+ return {
71
+ logs: {
72
+ entries: [],
73
+ totalCount: 0
74
+ },
75
+ timeRange: {
76
+ start: context.timeRange.start,
77
+ end: context.timeRange.end
78
+ }
79
+ };
80
+ }
81
+ const { start, end } = context.timeRange;
82
+ const query = (0, _greptimedbquerydatamodel.replaceQueryVariables)(spec.query, context.variableState, context.timeRange);
83
+ const client = await context.datasourceStore.getDatasourceClient(spec.datasource ?? _constants.DEFAULT_DATASOURCE);
84
+ const response = await client.query({
85
+ start: start.getTime().toString(),
86
+ end: end.getTime().toString(),
87
+ query
88
+ });
89
+ if (response.status === 'error') {
90
+ throw new Error(response.error ?? 'GreptimeDB query failed');
91
+ }
92
+ const records = (0, _greptimedbquerydatamodel.normalizeRecords)(response.data);
93
+ return {
94
+ timeRange: {
95
+ start,
96
+ end
97
+ },
98
+ logs: buildLogs(records),
99
+ metadata: {
100
+ executedQueryString: query
101
+ }
102
+ };
103
+ };
@@ -0,0 +1,16 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
@@ -0,0 +1,33 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ _export_star(require("./GreptimeDBLogQuery"), exports);
18
+ _export_star(require("./GreptimeDBLogQueryEditor"), exports);
19
+ _export_star(require("./get-greptimedb-log-data"), exports);
20
+ _export_star(require("./greptimedb-log-query-types"), exports);
21
+ function _export_star(from, to) {
22
+ Object.keys(from).forEach(function(k) {
23
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
24
+ Object.defineProperty(to, k, {
25
+ enumerable: true,
26
+ get: function() {
27
+ return from[k];
28
+ }
29
+ });
30
+ }
31
+ });
32
+ return from;
33
+ }
@@ -0,0 +1,16 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
@@ -0,0 +1,152 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ function _export(target, all) {
18
+ for(var name in all)Object.defineProperty(target, name, {
19
+ enumerable: true,
20
+ get: Object.getOwnPropertyDescriptor(all, name).get
21
+ });
22
+ }
23
+ _export(exports, {
24
+ get findTimeColumnIndex () {
25
+ return findTimeColumnIndex;
26
+ },
27
+ get normalizeRecords () {
28
+ return normalizeRecords;
29
+ },
30
+ get replaceQueryVariables () {
31
+ return replaceQueryVariables;
32
+ },
33
+ get toTimestampMs () {
34
+ return toTimestampMs;
35
+ }
36
+ });
37
+ const _pluginsystem = require("@perses-dev/plugin-system");
38
+ function replaceQueryVariables(query, variableState, timeRange) {
39
+ const { start, end } = timeRange;
40
+ const rangeMs = end.valueOf() - start.valueOf();
41
+ const builtinState = {
42
+ __from: {
43
+ value: start.valueOf().toString(),
44
+ loading: false
45
+ },
46
+ __to: {
47
+ value: end.valueOf().toString(),
48
+ loading: false
49
+ },
50
+ __range_ms: {
51
+ value: rangeMs.toString(),
52
+ loading: false
53
+ },
54
+ __range_s: {
55
+ value: Math.floor(rangeMs / 1000).toString(),
56
+ loading: false
57
+ },
58
+ __range: {
59
+ value: formatDuration(rangeMs),
60
+ loading: false
61
+ }
62
+ };
63
+ // User-defined variables take precedence over builtins (matching framework behaviour).
64
+ return (0, _pluginsystem.replaceVariables)(query, {
65
+ ...builtinState,
66
+ ...variableState
67
+ });
68
+ }
69
+ /** Format a millisecond duration as a human-readable Prometheus-style string, e.g. "1h5m30s". */ function formatDuration(ms) {
70
+ const totalSeconds = Math.floor(ms / 1000);
71
+ const hours = Math.floor(totalSeconds / 3600);
72
+ const minutes = Math.floor(totalSeconds % 3600 / 60);
73
+ const seconds = totalSeconds % 60;
74
+ let result = '';
75
+ if (hours > 0) result += `${hours}h`;
76
+ if (minutes > 0) result += `${minutes}m`;
77
+ if (seconds > 0 || result === '') result += `${seconds}s`;
78
+ return result;
79
+ }
80
+ function normalizeTimestampType(dataType) {
81
+ if (!dataType) {
82
+ return null;
83
+ }
84
+ return dataType.toLowerCase();
85
+ }
86
+ function toTimestampMs(value, dataType) {
87
+ if (value === null || value === undefined) {
88
+ return null;
89
+ }
90
+ const normalizedType = normalizeTimestampType(dataType);
91
+ if (typeof value === 'number') {
92
+ if (normalizedType) {
93
+ if (normalizedType.includes('nanosecond')) {
94
+ return Math.floor(value / 1_000_000);
95
+ }
96
+ if (normalizedType.includes('microsecond')) {
97
+ return Math.floor(value / 1_000);
98
+ }
99
+ if (normalizedType.includes('millisecond')) {
100
+ return value;
101
+ }
102
+ if (normalizedType.includes('second')) {
103
+ return value * 1000;
104
+ }
105
+ }
106
+ if (value > 1_000_000_000_000_000) {
107
+ return Math.floor(value / 1_000_000);
108
+ }
109
+ if (value > 1_000_000_000_000) {
110
+ return value;
111
+ }
112
+ if (value > 1_000_000_000) {
113
+ return value * 1000;
114
+ }
115
+ return value;
116
+ }
117
+ if (typeof value === 'string') {
118
+ const asNumber = Number(value);
119
+ if (!Number.isNaN(asNumber)) {
120
+ return toTimestampMs(asNumber, dataType);
121
+ }
122
+ }
123
+ const asDate = new Date(value);
124
+ const ts = asDate.getTime();
125
+ return Number.isNaN(ts) ? null : ts;
126
+ }
127
+ function normalizeRecords(payload) {
128
+ if (!payload || typeof payload !== 'object') return undefined;
129
+ return payload.output?.[0]?.records;
130
+ }
131
+ function findTimeColumnIndex(columnSchemas) {
132
+ let timeIndex = -1;
133
+ const timestampColumns = columnSchemas.filter((col)=>{
134
+ const normalizedType = normalizeTimestampType(col.data_type);
135
+ return normalizedType !== null && normalizedType.startsWith('timestamp');
136
+ });
137
+ if (timestampColumns.length > 0) {
138
+ const semanticTimestamp = timestampColumns.find((col)=>col.semantic_type?.toLowerCase() === 'timestamp');
139
+ const selectedColumn = semanticTimestamp ?? timestampColumns[0];
140
+ timeIndex = columnSchemas.findIndex((col)=>col.name === selectedColumn.name);
141
+ }
142
+ if (timeIndex === -1) {
143
+ const fallbackColumns = [
144
+ 'greptime_timestamp',
145
+ 'timestamp',
146
+ 'ts',
147
+ 'time'
148
+ ];
149
+ timeIndex = columnSchemas.findIndex((col)=>fallbackColumns.includes(col.name.toLowerCase()));
150
+ }
151
+ return timeIndex;
152
+ }
@@ -0,0 +1,43 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ Object.defineProperty(exports, "GreptimeDBTimeSeriesQuery", {
18
+ enumerable: true,
19
+ get: function() {
20
+ return GreptimeDBTimeSeriesQuery;
21
+ }
22
+ });
23
+ const _pluginsystem = require("@perses-dev/plugin-system");
24
+ const _getgreptimedbdata = require("./get-greptimedb-data");
25
+ const _GreptimeDBQueryEditor = require("./GreptimeDBQueryEditor");
26
+ const GreptimeDBTimeSeriesQuery = {
27
+ getTimeSeriesData: _getgreptimedbdata.getTimeSeriesData,
28
+ OptionsEditorComponent: _GreptimeDBQueryEditor.GreptimeDBTimeSeriesQueryEditor,
29
+ createInitialOptions: ()=>({
30
+ query: ''
31
+ }),
32
+ dependsOn: (spec)=>{
33
+ const queryVariables = (0, _pluginsystem.parseVariables)(spec.query);
34
+ const allVariables = [
35
+ ...new Set([
36
+ ...queryVariables
37
+ ])
38
+ ];
39
+ return {
40
+ variables: allVariables
41
+ };
42
+ }
43
+ };
@@ -0,0 +1,107 @@
1
+ // Copyright The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ Object.defineProperty(exports, "GreptimeDBTimeSeriesQueryEditor", {
18
+ enumerable: true,
19
+ get: function() {
20
+ return GreptimeDBTimeSeriesQueryEditor;
21
+ }
22
+ });
23
+ const _jsxruntime = require("react/jsx-runtime");
24
+ const _pluginsystem = require("@perses-dev/plugin-system");
25
+ const _react = require("react");
26
+ const _immer = require("immer");
27
+ const _material = require("@mui/material");
28
+ const _constants = require("../constants");
29
+ const _components = require("../../components");
30
+ const _constants1 = require("../../components/constants");
31
+ const _queryeditormodel = require("../query-editor-model");
32
+ function GreptimeDBTimeSeriesQueryEditor(props) {
33
+ const { onChange, value } = props;
34
+ const { datasource } = value;
35
+ const selectedDatasource = datasource ?? _constants.DEFAULT_DATASOURCE;
36
+ const { query, handleQueryChange, handleQueryBlur } = (0, _queryeditormodel.useQueryState)(props);
37
+ const handleDatasourceChange = (newDatasourceSelection)=>{
38
+ if (!(0, _pluginsystem.isVariableDatasource)(newDatasourceSelection) && newDatasourceSelection.kind === _constants.DATASOURCE_KIND) {
39
+ onChange((0, _immer.produce)(value, (draft)=>{
40
+ draft.datasource = newDatasourceSelection;
41
+ }));
42
+ return;
43
+ }
44
+ throw new Error('Got unexpected non GreptimeDB datasource selection');
45
+ };
46
+ const handleQueryExecute = (queryValue)=>{
47
+ onChange((0, _immer.produce)(value, (draft)=>{
48
+ draft.query = queryValue;
49
+ }));
50
+ };
51
+ const handleGreptimeDBQueryChange = (0, _react.useCallback)((e)=>{
52
+ handleQueryChange(e);
53
+ }, [
54
+ handleQueryChange
55
+ ]);
56
+ const examplesStyle = {
57
+ fontSize: '11px',
58
+ color: '#777',
59
+ backgroundColor: '#f5f5f5',
60
+ padding: '8px',
61
+ borderRadius: '4px',
62
+ fontFamily: 'Monaco, Menlo, "Ubuntu Mono", monospace',
63
+ whiteSpace: 'pre-wrap',
64
+ lineHeight: '1.3'
65
+ };
66
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Stack, {
67
+ spacing: 1.5,
68
+ children: [
69
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_pluginsystem.DatasourceSelect, {
70
+ datasourcePluginKind: _constants.DATASOURCE_KIND,
71
+ value: selectedDatasource,
72
+ onChange: handleDatasourceChange,
73
+ label: "GreptimeDB Datasource",
74
+ notched: true
75
+ }),
76
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.GreptimeDBQLEditor, {
77
+ value: query,
78
+ onChange: handleGreptimeDBQueryChange,
79
+ onBlur: handleQueryBlur,
80
+ onKeyDown: (event)=>{
81
+ if (event.key === 'Enter' && (event.ctrlKey || event.metaKey)) {
82
+ event.preventDefault();
83
+ handleQueryExecute(query);
84
+ }
85
+ },
86
+ placeholder: "Enter GreptimeDB SQL query"
87
+ }),
88
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("details", {
89
+ children: [
90
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("summary", {
91
+ style: {
92
+ cursor: 'pointer',
93
+ fontSize: '12px',
94
+ color: '#666',
95
+ marginBottom: '8px'
96
+ },
97
+ children: "Query Examples"
98
+ }),
99
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
100
+ style: examplesStyle,
101
+ children: _constants1.queryExample
102
+ })
103
+ ]
104
+ })
105
+ ]
106
+ });
107
+ }