@grafana/plugin-ui 0.1.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 (249) hide show
  1. package/README.md +45 -0
  2. package/dist/8x/fixtures/index.js +7 -0
  3. package/dist/8x/fixtures/index.js.map +1 -0
  4. package/dist/8x/fixtures/select.js +43 -0
  5. package/dist/8x/fixtures/select.js.map +1 -0
  6. package/dist/8x/index.js +5 -0
  7. package/dist/8x/index.js.map +1 -0
  8. package/dist/components/AsyncButtonCascader/AsyncButtonCascader.js +34 -0
  9. package/dist/components/AsyncButtonCascader/AsyncButtonCascader.js.map +1 -0
  10. package/dist/components/Cascader/Cascader.js +6 -0
  11. package/dist/components/Cascader/Cascader.js.map +1 -0
  12. package/dist/components/DataLinks/DataLink.js +79 -0
  13. package/dist/components/DataLinks/DataLink.js.map +1 -0
  14. package/dist/components/DataLinks/DataLinks.js +59 -0
  15. package/dist/components/DataLinks/DataLinks.js.map +1 -0
  16. package/dist/components/DataLinks/index.js +7 -0
  17. package/dist/components/DataLinks/index.js.map +1 -0
  18. package/dist/components/DataLinks/types.js +3 -0
  19. package/dist/components/DataLinks/types.js.map +1 -0
  20. package/dist/components/DataSourcePicker/DataSourcePicker.js +90 -0
  21. package/dist/components/DataSourcePicker/DataSourcePicker.js.map +1 -0
  22. package/dist/components/DatePicker/DatePicker.js +29 -0
  23. package/dist/components/DatePicker/DatePicker.js.map +1 -0
  24. package/dist/components/DatePicker/styles.js +156 -0
  25. package/dist/components/DatePicker/styles.js.map +1 -0
  26. package/dist/components/DatePickerWithInput/DatePickerWithInput.js +19 -0
  27. package/dist/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -0
  28. package/dist/components/DatePickerWithInput/style.css +6 -0
  29. package/dist/components/DebounceInput/DebounceInput.js +17 -0
  30. package/dist/components/DebounceInput/DebounceInput.js.map +1 -0
  31. package/dist/components/Plugins/PluginSignatureBadge.js +65 -0
  32. package/dist/components/Plugins/PluginSignatureBadge.js.map +1 -0
  33. package/dist/components/QueryEditor/AccessoryButton.js +21 -0
  34. package/dist/components/QueryEditor/AccessoryButton.js.map +1 -0
  35. package/dist/components/QueryEditor/ConfirmModal.js +28 -0
  36. package/dist/components/QueryEditor/ConfirmModal.js.map +1 -0
  37. package/dist/components/QueryEditor/DatasetSelector.js +36 -0
  38. package/dist/components/QueryEditor/DatasetSelector.js.map +1 -0
  39. package/dist/components/QueryEditor/EditorField.js +51 -0
  40. package/dist/components/QueryEditor/EditorField.js.map +1 -0
  41. package/dist/components/QueryEditor/EditorFieldGroup.js +11 -0
  42. package/dist/components/QueryEditor/EditorFieldGroup.js.map +1 -0
  43. package/dist/components/QueryEditor/EditorHeader.js +23 -0
  44. package/dist/components/QueryEditor/EditorHeader.js.map +1 -0
  45. package/dist/components/QueryEditor/EditorList.js +28 -0
  46. package/dist/components/QueryEditor/EditorList.js.map +1 -0
  47. package/dist/components/QueryEditor/EditorRow.js +24 -0
  48. package/dist/components/QueryEditor/EditorRow.js.map +1 -0
  49. package/dist/components/QueryEditor/EditorRows.js +11 -0
  50. package/dist/components/QueryEditor/EditorRows.js.map +1 -0
  51. package/dist/components/QueryEditor/EditorSwitch.js +24 -0
  52. package/dist/components/QueryEditor/EditorSwitch.js.map +1 -0
  53. package/dist/components/QueryEditor/ErrorBoundary.js +23 -0
  54. package/dist/components/QueryEditor/ErrorBoundary.js.map +1 -0
  55. package/dist/components/QueryEditor/FlexItem.js +10 -0
  56. package/dist/components/QueryEditor/FlexItem.js.map +1 -0
  57. package/dist/components/QueryEditor/InlineSelect.js +60 -0
  58. package/dist/components/QueryEditor/InlineSelect.js.map +1 -0
  59. package/dist/components/QueryEditor/InputGroup.js +46 -0
  60. package/dist/components/QueryEditor/InputGroup.js.map +1 -0
  61. package/dist/components/QueryEditor/QueryEditor.js +73 -0
  62. package/dist/components/QueryEditor/QueryEditor.js.map +1 -0
  63. package/dist/components/QueryEditor/QueryHeader.js +92 -0
  64. package/dist/components/QueryEditor/QueryHeader.js.map +1 -0
  65. package/dist/components/QueryEditor/Space.js +36 -0
  66. package/dist/components/QueryEditor/Space.js.map +1 -0
  67. package/dist/components/QueryEditor/Stack.js +27 -0
  68. package/dist/components/QueryEditor/Stack.js.map +1 -0
  69. package/dist/components/QueryEditor/TableSelector.js +20 -0
  70. package/dist/components/QueryEditor/TableSelector.js.map +1 -0
  71. package/dist/components/QueryEditor/defaults.js +20 -0
  72. package/dist/components/QueryEditor/defaults.js.map +1 -0
  73. package/dist/components/QueryEditor/expressions.js +18 -0
  74. package/dist/components/QueryEditor/expressions.js.map +1 -0
  75. package/dist/components/QueryEditor/index.js +35 -0
  76. package/dist/components/QueryEditor/index.js.map +1 -0
  77. package/dist/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +21 -0
  78. package/dist/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -0
  79. package/dist/components/QueryEditor/query-editor-raw/QueryToolbox.js +59 -0
  80. package/dist/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -0
  81. package/dist/components/QueryEditor/query-editor-raw/QueryValidator.js +79 -0
  82. package/dist/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -0
  83. package/dist/components/QueryEditor/query-editor-raw/RawEditor.js +60 -0
  84. package/dist/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -0
  85. package/dist/components/QueryEditor/types.js +21 -0
  86. package/dist/components/QueryEditor/types.js.map +1 -0
  87. package/dist/components/QueryEditor/utils/formatSQL.js +13 -0
  88. package/dist/components/QueryEditor/utils/formatSQL.js.map +1 -0
  89. package/dist/components/QueryEditor/utils/sql.utils.js +94 -0
  90. package/dist/components/QueryEditor/utils/sql.utils.js.map +1 -0
  91. package/dist/components/QueryEditor/utils/useSqlChange.js +16 -0
  92. package/dist/components/QueryEditor/utils/useSqlChange.js.map +1 -0
  93. package/dist/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +109 -0
  94. package/dist/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -0
  95. package/dist/components/QueryEditor/visual-query-builder/EditorField.js +51 -0
  96. package/dist/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -0
  97. package/dist/components/QueryEditor/visual-query-builder/EditorRow.js +24 -0
  98. package/dist/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -0
  99. package/dist/components/QueryEditor/visual-query-builder/EditorRows.js +11 -0
  100. package/dist/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -0
  101. package/dist/components/QueryEditor/visual-query-builder/GroupByRow.js +33 -0
  102. package/dist/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -0
  103. package/dist/components/QueryEditor/visual-query-builder/OrderByRow.js +50 -0
  104. package/dist/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -0
  105. package/dist/components/QueryEditor/visual-query-builder/Preview.js +28 -0
  106. package/dist/components/QueryEditor/visual-query-builder/Preview.js.map +1 -0
  107. package/dist/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +13 -0
  108. package/dist/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -0
  109. package/dist/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +34 -0
  110. package/dist/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -0
  111. package/dist/components/QueryEditor/visual-query-builder/SQLSelectRow.js +19 -0
  112. package/dist/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -0
  113. package/dist/components/QueryEditor/visual-query-builder/SQLWhereRow.js +35 -0
  114. package/dist/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -0
  115. package/dist/components/QueryEditor/visual-query-builder/SelectRow.js +68 -0
  116. package/dist/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -0
  117. package/dist/components/QueryEditor/visual-query-builder/Stack.js +27 -0
  118. package/dist/components/QueryEditor/visual-query-builder/Stack.js.map +1 -0
  119. package/dist/components/QueryEditor/visual-query-builder/VisualEditor.js +38 -0
  120. package/dist/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -0
  121. package/dist/components/QueryEditor/visual-query-builder/WhereRow.js +67 -0
  122. package/dist/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -0
  123. package/dist/components/QueryEditor/visual-query-builder/index.js +6 -0
  124. package/dist/components/QueryEditor/visual-query-builder/index.js.map +1 -0
  125. package/dist/components/QueryEditorRow/QueryEditorRow.js +17 -0
  126. package/dist/components/QueryEditorRow/QueryEditorRow.js.map +1 -0
  127. package/dist/components/Segment/Segment.js +18 -0
  128. package/dist/components/Segment/Segment.js.map +1 -0
  129. package/dist/components/index.js +25 -0
  130. package/dist/components/index.js.map +1 -0
  131. package/dist/datasource/SqlDatasource.js +161 -0
  132. package/dist/datasource/SqlDatasource.js.map +1 -0
  133. package/dist/datasource/constants.js +19 -0
  134. package/dist/datasource/constants.js.map +1 -0
  135. package/dist/hooks/useDebounce.js +19 -0
  136. package/dist/hooks/useDebounce.js.map +1 -0
  137. package/dist/index.js +19 -0
  138. package/dist/index.js.map +1 -0
  139. package/dist/src/8x/fixtures/index.d.ts +1 -0
  140. package/dist/src/8x/fixtures/select.d.ts +11 -0
  141. package/dist/src/8x/index.d.ts +1 -0
  142. package/dist/src/components/AsyncButtonCascader/AsyncButtonCascader.d.ts +18 -0
  143. package/dist/src/components/Cascader/Cascader.d.ts +1 -0
  144. package/dist/src/components/DataLinks/DataLink.d.ts +13 -0
  145. package/dist/src/components/DataLinks/DataLinks.d.ts +8 -0
  146. package/dist/src/components/DataLinks/index.d.ts +3 -0
  147. package/dist/src/components/DataLinks/types.d.ts +7 -0
  148. package/dist/src/components/DataSourcePicker/DataSourcePicker.d.ts +34 -0
  149. package/dist/src/components/DatePicker/DatePicker.d.ts +8 -0
  150. package/dist/src/components/DatePicker/styles.d.ts +11 -0
  151. package/dist/src/components/DatePickerWithInput/DatePickerWithInput.d.ts +9 -0
  152. package/dist/src/components/DebounceInput/DebounceInput.d.ts +8 -0
  153. package/dist/src/components/Plugins/PluginSignatureBadge.d.ts +9 -0
  154. package/dist/src/components/QueryEditor/AccessoryButton.d.ts +6 -0
  155. package/dist/src/components/QueryEditor/ConfirmModal.d.ts +9 -0
  156. package/dist/src/components/QueryEditor/DatasetSelector.d.ts +12 -0
  157. package/dist/src/components/QueryEditor/EditorField.d.ts +11 -0
  158. package/dist/src/components/QueryEditor/EditorFieldGroup.d.ts +5 -0
  159. package/dist/src/components/QueryEditor/EditorHeader.d.ts +5 -0
  160. package/dist/src/components/QueryEditor/EditorList.d.ts +8 -0
  161. package/dist/src/components/QueryEditor/EditorRow.d.ts +5 -0
  162. package/dist/src/components/QueryEditor/EditorRows.d.ts +5 -0
  163. package/dist/src/components/QueryEditor/EditorSwitch.d.ts +3 -0
  164. package/dist/src/components/QueryEditor/ErrorBoundary.d.ts +14 -0
  165. package/dist/src/components/QueryEditor/FlexItem.d.ts +7 -0
  166. package/dist/src/components/QueryEditor/InlineSelect.d.ts +7 -0
  167. package/dist/src/components/QueryEditor/InputGroup.d.ts +5 -0
  168. package/dist/src/components/QueryEditor/QueryEditor.d.ts +7 -0
  169. package/dist/src/components/QueryEditor/QueryHeader.d.ts +15 -0
  170. package/dist/src/components/QueryEditor/Space.d.ts +14 -0
  171. package/dist/src/components/QueryEditor/Stack.d.ts +9 -0
  172. package/dist/src/components/QueryEditor/TableSelector.d.ts +12 -0
  173. package/dist/src/components/QueryEditor/defaults.d.ts +3 -0
  174. package/dist/src/components/QueryEditor/expressions.d.ts +50 -0
  175. package/dist/src/components/QueryEditor/index.d.ts +16 -0
  176. package/dist/src/components/QueryEditor/query-editor-raw/QueryEditorRaw.d.ts +15 -0
  177. package/dist/src/components/QueryEditor/query-editor-raw/QueryToolbox.d.ts +11 -0
  178. package/dist/src/components/QueryEditor/query-editor-raw/QueryValidator.d.ts +10 -0
  179. package/dist/src/components/QueryEditor/query-editor-raw/RawEditor.d.ts +10 -0
  180. package/dist/src/components/QueryEditor/types.d.ts +149 -0
  181. package/dist/src/components/QueryEditor/utils/formatSQL.d.ts +1 -0
  182. package/dist/src/components/QueryEditor/utils/sql.utils.d.ts +13 -0
  183. package/dist/src/components/QueryEditor/utils/useSqlChange.d.ts +10 -0
  184. package/dist/src/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.d.ts +7 -0
  185. package/dist/src/components/QueryEditor/visual-query-builder/EditorField.d.ts +11 -0
  186. package/dist/src/components/QueryEditor/visual-query-builder/EditorRow.d.ts +5 -0
  187. package/dist/src/components/QueryEditor/visual-query-builder/EditorRows.d.ts +5 -0
  188. package/dist/src/components/QueryEditor/visual-query-builder/GroupByRow.d.ts +10 -0
  189. package/dist/src/components/QueryEditor/visual-query-builder/OrderByRow.d.ts +11 -0
  190. package/dist/src/components/QueryEditor/visual-query-builder/Preview.d.ts +6 -0
  191. package/dist/src/components/QueryEditor/visual-query-builder/SQLGroupByRow.d.ts +12 -0
  192. package/dist/src/components/QueryEditor/visual-query-builder/SQLOrderByRow.d.ts +12 -0
  193. package/dist/src/components/QueryEditor/visual-query-builder/SQLSelectRow.d.ts +12 -0
  194. package/dist/src/components/QueryEditor/visual-query-builder/SQLWhereRow.d.ts +12 -0
  195. package/dist/src/components/QueryEditor/visual-query-builder/SelectRow.d.ts +11 -0
  196. package/dist/src/components/QueryEditor/visual-query-builder/Stack.d.ts +9 -0
  197. package/dist/src/components/QueryEditor/visual-query-builder/VisualEditor.d.ts +14 -0
  198. package/dist/src/components/QueryEditor/visual-query-builder/WhereRow.d.ts +10 -0
  199. package/dist/src/components/QueryEditor/visual-query-builder/index.d.ts +1 -0
  200. package/dist/src/components/QueryEditorRow/QueryEditorRow.d.ts +8 -0
  201. package/dist/src/components/Segment/Segment.d.ts +8 -0
  202. package/dist/src/components/index.d.ts +11 -0
  203. package/dist/src/datasource/SqlDatasource.d.ts +64 -0
  204. package/dist/src/datasource/constants.d.ts +1 -0
  205. package/dist/src/hooks/useDebounce.d.ts +2 -0
  206. package/dist/src/index.d.ts +11 -0
  207. package/dist/src/test/mocks/DataQuery.d.ts +2 -0
  208. package/dist/src/test/mocks/Datasource.d.ts +4 -0
  209. package/dist/src/test/mocks/Plugin.d.ts +10 -0
  210. package/dist/src/test/mocks/QueryEditorProps.d.ts +4 -0
  211. package/dist/src/test/mocks/TestDatasource.d.ts +6 -0
  212. package/dist/src/test/mocks/index.d.ts +5 -0
  213. package/dist/src/test/mocks/style.d.ts +1 -0
  214. package/dist/src/test/mocks/utils.d.ts +18 -0
  215. package/dist/src/test/setupTests.d.ts +1 -0
  216. package/dist/src/unreleasedComponents/index.d.ts +1 -0
  217. package/dist/src/utils/compatFeatures.d.ts +9 -0
  218. package/dist/src/utils/compatibility.d.ts +12 -0
  219. package/dist/src/utils/index.d.ts +3 -0
  220. package/dist/src/utils/testDatasource.d.ts +19 -0
  221. package/dist/test/mocks/DataQuery.js +14 -0
  222. package/dist/test/mocks/DataQuery.js.map +1 -0
  223. package/dist/test/mocks/Datasource.js +73 -0
  224. package/dist/test/mocks/Datasource.js.map +1 -0
  225. package/dist/test/mocks/Plugin.js +114 -0
  226. package/dist/test/mocks/Plugin.js.map +1 -0
  227. package/dist/test/mocks/QueryEditorProps.js +47 -0
  228. package/dist/test/mocks/QueryEditorProps.js.map +1 -0
  229. package/dist/test/mocks/TestDatasource.js +24 -0
  230. package/dist/test/mocks/TestDatasource.js.map +1 -0
  231. package/dist/test/mocks/index.js +9 -0
  232. package/dist/test/mocks/index.js.map +1 -0
  233. package/dist/test/mocks/style.js +5 -0
  234. package/dist/test/mocks/style.js.map +1 -0
  235. package/dist/test/mocks/utils.js +48 -0
  236. package/dist/test/mocks/utils.js.map +1 -0
  237. package/dist/test/setupTests.js +17 -0
  238. package/dist/test/setupTests.js.map +1 -0
  239. package/dist/unreleasedComponents/index.js +3 -0
  240. package/dist/unreleasedComponents/index.js.map +1 -0
  241. package/dist/utils/compatFeatures.js +20 -0
  242. package/dist/utils/compatFeatures.js.map +1 -0
  243. package/dist/utils/compatibility.js +28 -0
  244. package/dist/utils/compatibility.js.map +1 -0
  245. package/dist/utils/index.js +8 -0
  246. package/dist/utils/index.js.map +1 -0
  247. package/dist/utils/testDatasource.js +30 -0
  248. package/dist/utils/testDatasource.js.map +1 -0
  249. package/package.json +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RawEditor.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/query-editor-raw/RawEditor.tsx"],"names":[],"mappings":";;;;AAAA,sCAAmC;AACnC,uDAAiD;AACjD,yCAAuC;AACvC,aAAa;AACb,wGAAqD;AAGrD,oCAA2D;AAE3D,qDAAkD;AAClD,iDAA8C;AAU9C,SAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAkB;IAC/G,MAAM,KAAK,GAAG,IAAA,cAAS,GAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAA,eAAU,EAAC,SAAS,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG,IAAA,sBAAU,GAAkB,CAAC;IAClE,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,IAAA,sBAAU,GAAkB,CAAC;IAEhE,MAAM,kBAAkB,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9E,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,MAAe,EAAE,EAAE;QAC5D,OAAO,CACL,8BAAC,+BAAc,IACb,kBAAkB,EAAE,kBAAkB,EACtC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC3D,QAAQ,EAAE,QAAQ,IAEjB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YACnB,OAAO,CACL,uCAAK,GAAG,EAAE,UAAU;gBAClB,8BAAC,2BAAY,IACX,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,WAAW,EACzB,SAAS,QACT,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,UAAU,GACtB,CACE,CACP,CAAC;QACJ,CAAC,CACc,CAClB,CAAC;IACJ,CAAC,CAAC;IAOF,MAAM,YAAY,GAAG,CAAC,UAAU,GAAG,KAAK,EAAE,EAAE;QAC1C,OAAO,UAAU,CAAC,CAAC,CAAC,CAClB,8BAAC,sCAAS,QACP,CAAC,EAAE,KAAK,EAAE,MAAM,EAAkB,EAAE,EAAE;YACrC,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC,CACS,CACb,CAAC,CAAC,CAAC,CACF,uCAAK,GAAG,EAAE,SAAS,IAAG,iBAAiB,EAAE,CAAO,CACjD,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,OAAO,CACL,uCACE,KAAK,EAAE;gBACL,KAAK,EAAE,aAAa,CAAC,KAAK;gBAC1B,MAAM,EAAE,aAAa,CAAC,MAAM;gBAC5B,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO;gBAC3C,OAAO,EAAE,MAAM;gBACf,UAAU,EAAE,QAAQ;gBACpB,cAAc,EAAE,QAAQ;aACzB,sCAGG,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL;QACG,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE;QACjD,UAAU,IAAI,CACb,8BAAC,UAAK,IACJ,KAAK,EAAE,SAAS,KAAK,CAAC,KAAK,EAAE,EAC7B,oBAAoB,EAAE,KAAK,EAC3B,aAAa,EAAE,KAAK,EACpB,SAAS,EAAE,MAAM,CAAC,KAAK,EACvB,gBAAgB,EAAE,MAAM,CAAC,YAAY,EACrC,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,GAAG,EAAE;gBACd,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC,IAEA,YAAY,CAAC,IAAI,CAAC,CACb,CACT,CACA,CACJ,CAAC;AACJ,CAAC;AA5FD,8BA4FC;AAED,SAAS,SAAS,CAAC,KAAoB;IACrC,OAAO;QACL,KAAK,EAAE,IAAA,SAAG,EAAA;;;KAGT;QACD,YAAY,EAAE,IAAA,SAAG,EAAA;;;KAGhB;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toOption = exports.QUERY_FORMAT_OPTIONS = exports.EditorMode = exports.QueryFormat = void 0;
4
+ const data_1 = require("@grafana/data");
5
+ var QueryFormat;
6
+ (function (QueryFormat) {
7
+ QueryFormat["Timeseries"] = "time_series";
8
+ QueryFormat["Table"] = "table";
9
+ })(QueryFormat = exports.QueryFormat || (exports.QueryFormat = {}));
10
+ var EditorMode;
11
+ (function (EditorMode) {
12
+ EditorMode["Builder"] = "builder";
13
+ EditorMode["Code"] = "code";
14
+ })(EditorMode = exports.EditorMode || (exports.EditorMode = {}));
15
+ exports.QUERY_FORMAT_OPTIONS = [
16
+ { label: 'Time series', value: QueryFormat.Timeseries },
17
+ { label: 'Table', value: QueryFormat.Table },
18
+ ];
19
+ const backWardToOption = (value) => ({ label: value, value });
20
+ exports.toOption = data_1.toOption !== null && data_1.toOption !== void 0 ? data_1.toOption : backWardToOption;
21
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/QueryEditor/types.ts"],"names":[],"mappings":";;;AAEA,wCAQuB;AAoCvB,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,yCAA0B,CAAA;IAC1B,8BAAe,CAAA;AACjB,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAoDY,QAAA,oBAAoB,GAAG;IAClC,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE;IACvD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE;CAC7C,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAEzD,QAAA,QAAQ,GAAG,eAAgB,aAAhB,eAAgB,cAAhB,eAAgB,GAAI,gBAAgB,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatSQL = void 0;
4
+ const tslib_1 = require("tslib");
5
+ // @ts-ignore
6
+ const sql_formatter_plus_1 = tslib_1.__importDefault(require("sql-formatter-plus"));
7
+ function formatSQL(q) {
8
+ return sql_formatter_plus_1.default.format(q).replace(/(\$ \{ .* \})|(\$ __)|(\$ \w+)/g, (m) => {
9
+ return m.replace(/\s/g, '');
10
+ });
11
+ }
12
+ exports.formatSQL = formatSQL;
13
+ //# sourceMappingURL=formatSQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatSQL.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/utils/formatSQL.ts"],"names":[],"mappings":";;;;AAAA,aAAa;AACb,oFAA8C;AAE9C,SAAgB,SAAS,CAAC,CAAS;IACjC,OAAO,4BAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iCAAiC,EAAE,CAAC,CAAS,EAAE,EAAE;QACrF,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC;AAJD,8BAIC"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createFunctionField = exports.setPropertyField = exports.setGroupByField = exports.haveColumns = exports.defaultToRawSql = void 0;
4
+ const lodash_1 = require("lodash");
5
+ const expressions_1 = require("../expressions");
6
+ function defaultToRawSql({ sql, dataset, table }) {
7
+ var _a, _b, _c, _d;
8
+ let rawQuery = '';
9
+ // Return early with empty string if there is no sql column
10
+ if (!sql || !(0, exports.haveColumns)(sql.columns)) {
11
+ return rawQuery;
12
+ }
13
+ rawQuery += createSelectClause(sql.columns);
14
+ if (dataset && table) {
15
+ rawQuery += `FROM ${dataset}.${table} `;
16
+ }
17
+ if (sql.whereString) {
18
+ rawQuery += `WHERE ${sql.whereString} `;
19
+ }
20
+ if ((_b = (_a = sql.groupBy) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.property.name) {
21
+ const groupBy = sql.groupBy.map((g) => g.property.name).filter((g) => !(0, lodash_1.isEmpty)(g));
22
+ rawQuery += `GROUP BY ${groupBy.join(', ')} `;
23
+ }
24
+ if ((_c = sql.orderBy) === null || _c === void 0 ? void 0 : _c.property.name) {
25
+ rawQuery += `ORDER BY ${sql.orderBy.property.name} `;
26
+ }
27
+ if (((_d = sql.orderBy) === null || _d === void 0 ? void 0 : _d.property.name) && sql.orderByDirection) {
28
+ rawQuery += `${sql.orderByDirection} `;
29
+ }
30
+ // Altough LIMIT 0 doesn't make sense, it is still possible to have LIMIT 0
31
+ if (sql.limit !== undefined && sql.limit >= 0) {
32
+ rawQuery += `LIMIT ${sql.limit} `;
33
+ }
34
+ return rawQuery;
35
+ }
36
+ exports.defaultToRawSql = defaultToRawSql;
37
+ function createSelectClause(sqlColumns) {
38
+ const columns = sqlColumns.map((c) => {
39
+ var _a, _b;
40
+ let rawColumn = '';
41
+ if (c.name) {
42
+ rawColumn += `${c.name}(${(_a = c.parameters) === null || _a === void 0 ? void 0 : _a.map((p) => `${p.name}`)})`;
43
+ }
44
+ else {
45
+ rawColumn += `${(_b = c.parameters) === null || _b === void 0 ? void 0 : _b.map((p) => `${p.name}`)}`;
46
+ }
47
+ return rawColumn;
48
+ });
49
+ return `SELECT ${columns.join(', ')} `;
50
+ }
51
+ const haveColumns = (columns) => {
52
+ if (!columns) {
53
+ return false;
54
+ }
55
+ const haveColumn = columns.some((c) => { var _a, _b; return ((_a = c.parameters) === null || _a === void 0 ? void 0 : _a.length) || ((_b = c.parameters) === null || _b === void 0 ? void 0 : _b.some((p) => p.name)); });
56
+ const haveFunction = columns.some((c) => c.name);
57
+ return haveColumn || haveFunction;
58
+ };
59
+ exports.haveColumns = haveColumns;
60
+ /**
61
+ * Creates a GroupByExpression for a specified field
62
+ */
63
+ function setGroupByField(field) {
64
+ return {
65
+ type: expressions_1.QueryEditorExpressionType.GroupBy,
66
+ property: {
67
+ type: expressions_1.QueryEditorPropertyType.String,
68
+ name: field,
69
+ },
70
+ };
71
+ }
72
+ exports.setGroupByField = setGroupByField;
73
+ /**
74
+ * Creates a PropertyExpression for a specified field
75
+ */
76
+ function setPropertyField(field) {
77
+ return {
78
+ type: expressions_1.QueryEditorExpressionType.Property,
79
+ property: {
80
+ type: expressions_1.QueryEditorPropertyType.String,
81
+ name: field,
82
+ },
83
+ };
84
+ }
85
+ exports.setPropertyField = setPropertyField;
86
+ function createFunctionField(functionName) {
87
+ return {
88
+ type: expressions_1.QueryEditorExpressionType.Function,
89
+ name: functionName,
90
+ parameters: [],
91
+ };
92
+ }
93
+ exports.createFunctionField = createFunctionField;
94
+ //# sourceMappingURL=sql.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql.utils.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/utils/sql.utils.ts"],"names":[],"mappings":";;;AAAA,mCAAiC;AAEjC,gDAMwB;AAGxB,SAAgB,eAAe,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAY;;IAC/D,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,2DAA2D;IAC3D,IAAI,CAAC,GAAG,IAAI,CAAC,IAAA,mBAAW,EAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QACrC,OAAO,QAAQ,CAAC;KACjB;IAED,QAAQ,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,OAAO,IAAI,KAAK,EAAE;QACpB,QAAQ,IAAI,QAAQ,OAAO,IAAI,KAAK,GAAG,CAAC;KACzC;IAED,IAAI,GAAG,CAAC,WAAW,EAAE;QACnB,QAAQ,IAAI,SAAS,GAAG,CAAC,WAAW,GAAG,CAAC;KACzC;IAED,IAAI,MAAA,MAAA,GAAG,CAAC,OAAO,0CAAG,CAAC,CAAC,0CAAE,QAAQ,CAAC,IAAI,EAAE;QACnC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAO,EAAC,CAAC,CAAC,CAAC,CAAC;QACnF,QAAQ,IAAI,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;KAC/C;IAED,IAAI,MAAA,GAAG,CAAC,OAAO,0CAAE,QAAQ,CAAC,IAAI,EAAE;QAC9B,QAAQ,IAAI,YAAY,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC;KACtD;IAED,IAAI,CAAA,MAAA,GAAG,CAAC,OAAO,0CAAE,QAAQ,CAAC,IAAI,KAAI,GAAG,CAAC,gBAAgB,EAAE;QACtD,QAAQ,IAAI,GAAG,GAAG,CAAC,gBAAgB,GAAG,CAAC;KACxC;IAED,2EAA2E;IAC3E,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,EAAE;QAC7C,QAAQ,IAAI,SAAS,GAAG,CAAC,KAAK,GAAG,CAAC;KACnC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AApCD,0CAoCC;AAED,SAAS,kBAAkB,CAAC,UAAiD;IAC3E,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;QACnC,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,CAAC,IAAI,EAAE;YACV,SAAS,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,MAAA,CAAC,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;SACpE;aAAM;YACL,SAAS,IAAI,GAAG,MAAA,CAAC,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;SACzD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACzC,CAAC;AAEM,MAAM,WAAW,GAAG,CAAC,OAAiC,EAAoD,EAAE;IACjH,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,KAAK,CAAC;KACd;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,eAAC,OAAA,CAAA,MAAA,CAAC,CAAC,UAAU,0CAAE,MAAM,MAAI,MAAA,CAAC,CAAC,UAAU,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA,CAAA,EAAA,CAAC,CAAC;IAClG,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,UAAU,IAAI,YAAY,CAAC;AACpC,CAAC,CAAC;AARW,QAAA,WAAW,eAQtB;AAEF;;GAEG;AACH,SAAgB,eAAe,CAAC,KAAc;IAC5C,OAAO;QACL,IAAI,EAAE,uCAAyB,CAAC,OAAO;QACvC,QAAQ,EAAE;YACR,IAAI,EAAE,qCAAuB,CAAC,MAAM;YACpC,IAAI,EAAE,KAAK;SACZ;KACF,CAAC;AACJ,CAAC;AARD,0CAQC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,OAAO;QACL,IAAI,EAAE,uCAAyB,CAAC,QAAQ;QACxC,QAAQ,EAAE;YACR,IAAI,EAAE,qCAAuB,CAAC,MAAM;YACpC,IAAI,EAAE,KAAK;SACZ;KACF,CAAC;AACJ,CAAC;AARD,4CAQC;AAED,SAAgB,mBAAmB,CAAC,YAAqB;IACvD,OAAO;QACL,IAAI,EAAE,uCAAyB,CAAC,QAAQ;QACxC,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,EAAE;KACf,CAAC;AACJ,CAAC;AAND,kDAMC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSqlChange = void 0;
4
+ const react_1 = require("react");
5
+ const sql_utils_1 = require("./sql.utils");
6
+ function useSqlChange({ query, onQueryChange, db }) {
7
+ const onSqlChange = (0, react_1.useCallback)((sql) => {
8
+ const toRawSql = db.toRawSql || sql_utils_1.defaultToRawSql;
9
+ const rawSql = toRawSql({ sql, dataset: query.dataset, table: query.table, refId: query.refId });
10
+ const newQuery = Object.assign(Object.assign({}, query), { sql, rawSql });
11
+ onQueryChange(newQuery);
12
+ }, [db, onQueryChange, query]);
13
+ return { onSqlChange };
14
+ }
15
+ exports.useSqlChange = useSqlChange;
16
+ //# sourceMappingURL=useSqlChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSqlChange.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/utils/useSqlChange.ts"],"names":[],"mappings":";;;AAAA,iCAAoC;AAIpC,2CAA8C;AAQ9C,SAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAgB;IACrE,MAAM,WAAW,GAAG,IAAA,mBAAW,EAC7B,CAAC,GAAkB,EAAE,EAAE;QACrB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,IAAI,2BAAe,CAAC;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACjG,MAAM,QAAQ,mCAAkB,KAAK,KAAE,GAAG,EAAE,MAAM,GAAE,CAAC;QACrD,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,CAC3B,CAAC;IAEF,OAAO,EAAE,WAAW,EAAE,CAAC;AACzB,CAAC;AAZD,oCAYC"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.raqbConfig = exports.settings = exports.widgets = exports.emptyInitTree = exports.emptyInitValue = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const lodash_1 = require("lodash");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const react_awesome_query_builder_1 = require("react-awesome-query-builder");
8
+ const data_1 = require("@grafana/data");
9
+ const ui_1 = require("@grafana/ui");
10
+ const buttonLabels = {
11
+ add: 'Add',
12
+ remove: 'Remove',
13
+ };
14
+ exports.emptyInitValue = {
15
+ id: react_awesome_query_builder_1.Utils.uuid(),
16
+ type: 'group',
17
+ children1: {
18
+ [react_awesome_query_builder_1.Utils.uuid()]: {
19
+ type: 'rule',
20
+ properties: {
21
+ field: null,
22
+ operator: null,
23
+ value: [],
24
+ valueSrc: [],
25
+ },
26
+ },
27
+ },
28
+ };
29
+ exports.emptyInitTree = {
30
+ id: react_awesome_query_builder_1.Utils.uuid(),
31
+ type: 'group',
32
+ children1: {
33
+ [react_awesome_query_builder_1.Utils.uuid()]: {
34
+ type: 'rule',
35
+ properties: {
36
+ field: null,
37
+ operator: null,
38
+ value: [],
39
+ valueSrc: [],
40
+ },
41
+ },
42
+ },
43
+ };
44
+ exports.widgets = Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.widgets), { text: Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.widgets.text), { factory: function TextInput(props) {
45
+ return (react_1.default.createElement(ui_1.Input, { value: (props === null || props === void 0 ? void 0 : props.value) || '', placeholder: props === null || props === void 0 ? void 0 : props.placeholder, onChange: (e) => props === null || props === void 0 ? void 0 : props.setValue(e.currentTarget.value) }));
46
+ } }), number: Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.widgets.number), { factory: function NumberInput(props) {
47
+ return (react_1.default.createElement(ui_1.Input, { value: props === null || props === void 0 ? void 0 : props.value, placeholder: props === null || props === void 0 ? void 0 : props.placeholder, type: "number", onChange: (e) => props === null || props === void 0 ? void 0 : props.setValue(Number.parseInt(e.currentTarget.value, 10)) }));
48
+ } }), datetime: Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.widgets.datetime), { factory: function DateTimeInput(props) {
49
+ return (react_1.default.createElement(ui_1.DateTimePicker, { onChange: (e) => {
50
+ props === null || props === void 0 ? void 0 : props.setValue(e.format(react_awesome_query_builder_1.BasicConfig.widgets.datetime.valueFormat));
51
+ }, date: (0, data_1.dateTime)(props === null || props === void 0 ? void 0 : props.value).utc() }));
52
+ } }) });
53
+ exports.settings = Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.settings), { canRegroup: false, maxNesting: 1, canReorder: false, showNot: false, addRuleLabel: buttonLabels.add, deleteLabel: buttonLabels.remove, renderConjs: function Conjunctions(conjProps) {
54
+ return (react_1.default.createElement(ui_1.Select, { id: conjProps === null || conjProps === void 0 ? void 0 : conjProps.id, "aria-label": "Conjunction", menuShouldPortal: true, options: (conjProps === null || conjProps === void 0 ? void 0 : conjProps.conjunctionOptions) ? Object.keys(conjProps === null || conjProps === void 0 ? void 0 : conjProps.conjunctionOptions).map(data_1.toOption) : undefined, value: conjProps === null || conjProps === void 0 ? void 0 : conjProps.selectedConjunction, onChange: (val) => conjProps === null || conjProps === void 0 ? void 0 : conjProps.setConjunction(val.value) }));
55
+ }, renderField: function Field(fieldProps) {
56
+ var _a;
57
+ const fields = ((_a = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.config) === null || _a === void 0 ? void 0 : _a.fields) || {};
58
+ return (react_1.default.createElement(ui_1.Select, { id: fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.id, width: 25, "aria-label": "Field", menuShouldPortal: true, options: fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.items.map((f) => {
59
+ var _a, _b;
60
+ // @ts-ignore
61
+ const icon = (_b = (_a = fields[f.key].mainWidgetProps) === null || _a === void 0 ? void 0 : _a.customProps) === null || _b === void 0 ? void 0 : _b.icon;
62
+ return {
63
+ label: f.label,
64
+ value: f.key,
65
+ icon,
66
+ };
67
+ }), value: fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.selectedKey, onChange: (val) => {
68
+ fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.setField(val.label);
69
+ } }));
70
+ }, renderButton: function RAQBButton(buttonProps) {
71
+ return (react_1.default.createElement(ui_1.Button, { type: "button", title: `${buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.label} filter`, onClick: buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.onClick, variant: "secondary", size: "md", icon: (buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.label) === buttonLabels.add ? 'plus' : 'times' }));
72
+ }, renderOperator: function Operator(operatorProps) {
73
+ return (react_1.default.createElement(ui_1.Select, { options: operatorProps === null || operatorProps === void 0 ? void 0 : operatorProps.items.map((op) => ({ label: op.label, value: op.key })), "aria-label": "Operator", menuShouldPortal: true, value: operatorProps === null || operatorProps === void 0 ? void 0 : operatorProps.selectedKey, onChange: (val) => {
74
+ operatorProps === null || operatorProps === void 0 ? void 0 : operatorProps.setField(val.value || '');
75
+ } }));
76
+ } });
77
+ // eslint-ignore
78
+ const customOperators = getCustomOperators(react_awesome_query_builder_1.BasicConfig);
79
+ const textWidget = react_awesome_query_builder_1.BasicConfig.types.text.widgets.text;
80
+ const opers = [...(textWidget.operators || []), "select_any_in" /* Op.IN */, "select_not_any_in" /* Op.NOT_IN */];
81
+ const customTextWidget = Object.assign(Object.assign({}, textWidget), { operators: opers });
82
+ const customTypes = Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.types), { text: Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.types.text), { widgets: Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig.types.text.widgets), { text: customTextWidget }) }) });
83
+ exports.raqbConfig = Object.assign(Object.assign({}, react_awesome_query_builder_1.BasicConfig), { widgets: exports.widgets,
84
+ settings: exports.settings, operators: customOperators, types: customTypes });
85
+ function getCustomOperators(config) {
86
+ const supportedOperators = tslib_1.__rest(config.operators, []);
87
+ const noop = () => '';
88
+ // IN operator expects array, override IN formatter for multi-value variables
89
+ const sqlFormatInOp = supportedOperators["select_any_in" /* Op.IN */].sqlFormatOp || noop;
90
+ const customSqlInFormatter = (field, op, value, valueSrc, valueType, opDef, operatorOptions, fieldDef) => {
91
+ return sqlFormatInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);
92
+ };
93
+ // NOT IN operator expects array, override NOT IN formatter for multi-value variables
94
+ const sqlFormatNotInOp = supportedOperators["select_not_any_in" /* Op.NOT_IN */].sqlFormatOp || noop;
95
+ const customSqlNotInFormatter = (field, op, value, valueSrc, valueType, opDef, operatorOptions, fieldDef) => {
96
+ return sqlFormatNotInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);
97
+ };
98
+ const customOperators = Object.assign(Object.assign({}, supportedOperators), { ["select_any_in" /* Op.IN */]: Object.assign(Object.assign({}, supportedOperators["select_any_in" /* Op.IN */]), { sqlFormatOp: customSqlInFormatter }), ["select_not_any_in" /* Op.NOT_IN */]: Object.assign(Object.assign({}, supportedOperators["select_not_any_in" /* Op.NOT_IN */]), { sqlFormatOp: customSqlNotInFormatter }) });
99
+ return customOperators;
100
+ }
101
+ // value: string | List<string> but AQB uses a different version of Immutable
102
+ // eslint-ignore
103
+ function splitIfString(value) {
104
+ if ((0, lodash_1.isString)(value)) {
105
+ return value.split(',');
106
+ }
107
+ return value;
108
+ }
109
+ //# sourceMappingURL=AwesomeQueryBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AwesomeQueryBuilder.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.tsx"],"names":[],"mappings":";;;;AACA,mCAAkC;AAClC,0DAA0B;AAC1B,6EAWqC;AAErC,wCAAmD;AACnD,oCAAoE;AAEpE,MAAM,YAAY,GAAG;IACnB,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEW,QAAA,cAAc,GAAa;IACtC,EAAE,EAAE,mCAAK,CAAC,IAAI,EAAE;IAChB,IAAI,EAAE,OAAgB;IACtB,SAAS,EAAE;QACT,CAAC,mCAAK,CAAC,IAAI,EAAE,CAAC,EAAE;YACd,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE;gBACV,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb;SACF;KACF;CACF,CAAC;AAEW,QAAA,aAAa,GAAa;IACrC,EAAE,EAAE,mCAAK,CAAC,IAAI,EAAE;IAChB,IAAI,EAAE,OAAgB;IACtB,SAAS,EAAE;QACT,CAAC,mCAAK,CAAC,IAAI,EAAE,CAAC,EAAE;YACd,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE;gBACV,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb;SACF;KACF;CACF,CAAC;AAEW,QAAA,OAAO,mCACf,yCAAW,CAAC,OAAO,KACtB,IAAI,kCACC,yCAAW,CAAC,OAAO,CAAC,IAAI,KAC3B,OAAO,EAAE,SAAS,SAAS,CAAC,KAAK;YAC/B,OAAO,CACL,8BAAC,UAAK,IACJ,KAAK,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,KAAI,EAAE,EACzB,WAAW,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,GACvD,CACH,CAAC;QACJ,CAAC,KAEH,MAAM,kCACD,yCAAW,CAAC,OAAO,CAAC,MAAM,KAC7B,OAAO,EAAE,SAAS,WAAW,CAAC,KAAK;YACjC,OAAO,CACL,8BAAC,UAAK,IACJ,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,EACnB,WAAW,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAC/B,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAC5E,CACH,CAAC;QACJ,CAAC,KAEH,QAAQ,kCACH,yCAAW,CAAC,OAAO,CAAC,QAAQ,KAC/B,OAAO,EAAE,SAAS,aAAa,CAAC,KAAK;YACnC,OAAO,CACL,8BAAC,mBAAc,IACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,yCAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;gBACtE,CAAC,EACD,IAAI,EAAE,IAAA,eAAQ,EAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,CAAC,GAAG,EAAE,GAClC,CACH,CAAC;QACJ,CAAC,OAEH;AAEW,QAAA,QAAQ,mCAChB,yCAAW,CAAC,QAAQ,KACvB,UAAU,EAAE,KAAK,EACjB,UAAU,EAAE,CAAC,EACb,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,EACd,YAAY,EAAE,YAAY,CAAC,GAAG,EAC9B,WAAW,EAAE,YAAY,CAAC,MAAM,EAChC,WAAW,EAAE,SAAS,YAAY,CAAC,SAAS;QAC1C,OAAO,CACL,8BAAC,WAAM,IACL,EAAE,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,EAAE,gBACN,aAAa,EACxB,gBAAgB,QAChB,OAAO,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,kBAAkB,EAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,kBAAkB,CAAC,CAAC,GAAG,CAAC,eAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAC7G,KAAK,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,mBAAmB,EACrC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,cAAc,CAAC,GAAG,CAAC,KAAM,CAAC,GACxD,CACH,CAAC;IACJ,CAAC,EACD,WAAW,EAAE,SAAS,KAAK,CAAC,UAAU;;QACpC,MAAM,MAAM,GAAG,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,MAAM,KAAI,EAAE,CAAC;QAChD,OAAO,CACL,8BAAC,WAAM,IACL,EAAE,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,EAClB,KAAK,EAAE,EAAE,gBACE,OAAO,EAClB,gBAAgB,QAChB,OAAO,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;gBACnC,aAAa;gBACb,MAAM,IAAI,GAAG,MAAA,MAAA,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,0CAAE,WAAW,0CAAE,IAAI,CAAC;gBAC9D,OAAO;oBACL,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,KAAK,EAAE,CAAC,CAAC,GAAG;oBACZ,IAAI;iBACL,CAAC;YACJ,CAAC,CAAC,EACF,KAAK,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,EAC9B,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;gBAChB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC;YACnC,CAAC,GACD,CACH,CAAC;IACJ,CAAC,EACD,YAAY,EAAE,SAAS,UAAU,CAAC,WAAW;QAC3C,OAAO,CACL,8BAAC,WAAM,IACL,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,SAAS,EACrC,OAAO,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,EAC7B,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,IAAI,EACT,IAAI,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,MAAK,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAChE,CACH,CAAC;IACJ,CAAC,EACD,cAAc,EAAE,SAAS,QAAQ,CAAC,aAAa;QAC7C,OAAO,CACL,8BAAC,WAAM,IACL,OAAO,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,gBACpE,UAAU,EACrB,gBAAgB,QAChB,KAAK,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAW,EACjC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;gBAChB,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC3C,CAAC,GACD,CACH,CAAC;IACJ,CAAC,IACD;AAOF,gBAAgB;AAChB,MAAM,eAAe,GAAG,kBAAkB,CAAC,yCAAW,CAAiC,CAAC;AACxF,MAAM,UAAU,GAAG,yCAAW,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AACvD,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC,mEAAmB,CAAC;AAClE,MAAM,gBAAgB,mCACjB,UAAU,KACb,SAAS,EAAE,KAAK,GACjB,CAAC;AAEF,MAAM,WAAW,mCACZ,yCAAW,CAAC,KAAK,KACpB,IAAI,kCACC,yCAAW,CAAC,KAAK,CAAC,IAAI,KACzB,OAAO,kCACF,yCAAW,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KACjC,IAAI,EAAE,gBAAgB,SAG3B,CAAC;AAEW,QAAA,UAAU,mCAClB,yCAAW,KACd,OAAO,EAAP,eAAO;IACP,QAAQ,EAAR,gBAAQ,EACR,SAAS,EAAE,eAA+C,EAC1D,KAAK,EAAE,WAAW,IAClB;AAIF,SAAS,kBAAkB,CAAC,MAAmB;IAC7C,MAAW,kBAAkB,kBAAK,MAAM,CAAC,SAAS,EAA5C,EAAyB,CAAmB,CAAC;IACnD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;IACtB,6EAA6E;IAC7E,MAAM,aAAa,GAAG,kBAAkB,6BAAO,CAAC,WAAW,IAAI,IAAI,CAAC;IACpE,MAAM,oBAAoB,GAAG,CAC3B,KAAa,EACb,EAAU,EACV,KAA4B,EAC5B,QAAqB,EACrB,SAAiB,EACjB,KAAe,EACf,eAAuB,EACvB,QAAqB,EACrB,EAAE;QACF,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IAC/G,CAAC,CAAC;IACF,qFAAqF;IACrF,MAAM,gBAAgB,GAAG,kBAAkB,qCAAW,CAAC,WAAW,IAAI,IAAI,CAAC;IAC3E,MAAM,uBAAuB,GAAG,CAC9B,KAAa,EACb,EAAU,EACV,KAA4B,EAC5B,QAAqB,EACrB,SAAiB,EACjB,KAAe,EACf,eAAuB,EACvB,QAAqB,EACrB,EAAE;QACF,OAAO,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IAClH,CAAC,CAAC;IAEF,MAAM,eAAe,mCAChB,kBAAkB,KACrB,6BAAO,kCACF,kBAAkB,6BAAO,KAC5B,WAAW,EAAE,oBAAoB,KAEnC,qCAAW,kCACN,kBAAkB,qCAAW,KAChC,WAAW,EAAE,uBAAuB,MAEvC,CAAC;IAEF,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,6EAA6E;AAC7E,gBAAgB;AAChB,SAAS,aAAa,CAAC,KAAU;IAC/B,IAAI,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorField = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const css_1 = require("@emotion/css");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const ui_1 = require("@grafana/ui");
8
+ const Space_1 = require("../Space");
9
+ const EditorField = (props) => {
10
+ const { label, optional, tooltip, children, width } = props, fieldProps = tslib_1.__rest(props, ["label", "optional", "tooltip", "children", "width"]);
11
+ const theme = (0, ui_1.useTheme2)();
12
+ const styles = getStyles(theme, width);
13
+ // Null check for backward compatibility
14
+ const childInputId = (fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.htmlFor) || (ui_1.ReactUtils === null || ui_1.ReactUtils === void 0 ? void 0 : ui_1.ReactUtils.getChildId(children));
15
+ const labelEl = (react_1.default.createElement(react_1.default.Fragment, null,
16
+ react_1.default.createElement("label", { className: styles.label, htmlFor: childInputId },
17
+ label,
18
+ optional && react_1.default.createElement("span", { className: styles.optional }, " - optional"),
19
+ tooltip && (react_1.default.createElement(ui_1.Tooltip, { placement: "top", content: tooltip, theme: "info" },
20
+ react_1.default.createElement(ui_1.Icon, { name: "info-circle", size: "sm", className: styles.icon })))),
21
+ react_1.default.createElement(Space_1.Space, { v: 0.5 })));
22
+ return (react_1.default.createElement("div", { className: styles.root },
23
+ react_1.default.createElement(ui_1.Field, Object.assign({ className: styles.field, label: labelEl }, fieldProps), children)));
24
+ };
25
+ exports.EditorField = EditorField;
26
+ const getStyles = (0, ui_1.stylesFactory)((theme, width) => {
27
+ return {
28
+ root: (0, css_1.css)({
29
+ minWidth: theme.spacing(width !== null && width !== void 0 ? width : 0),
30
+ }),
31
+ label: (0, css_1.css)({
32
+ fontSize: 12,
33
+ fontWeight: theme.typography.fontWeightMedium,
34
+ }),
35
+ optional: (0, css_1.css)({
36
+ fontStyle: 'italic',
37
+ color: theme.colors.text.secondary,
38
+ }),
39
+ field: (0, css_1.css)({
40
+ marginBottom: 0, // GrafanaUI/Field has a bottom margin which we must remove
41
+ }),
42
+ icon: (0, css_1.css)({
43
+ color: theme.colors.text.secondary,
44
+ marginLeft: theme.spacing(1),
45
+ ':hover': {
46
+ color: theme.colors.text.primary,
47
+ },
48
+ }),
49
+ };
50
+ });
51
+ //# sourceMappingURL=EditorField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorField.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/EditorField.tsx"],"names":[],"mappings":";;;;AAAA,sCAAmC;AACnC,0DAA8C;AAG9C,oCAAyG;AACzG,oCAAiC;AAU1B,MAAM,WAAW,GAA+B,CAAC,KAAK,EAAE,EAAE;IAC/D,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,KAAoB,KAAK,EAApB,UAAU,kBAAK,KAAK,EAApE,qDAA4D,CAAQ,CAAC;IAE3E,MAAM,KAAK,GAAG,IAAA,cAAS,GAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEvC,wCAAwC;IACxC,MAAM,YAAY,GAAG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,MAAI,eAAU,aAAV,eAAU,uBAAV,eAAU,CAAE,UAAU,CAAC,QAAQ,CAAC,CAAA,CAAC;IAE7E,MAAM,OAAO,GAAG,CACd;QACE,yCAAO,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY;YAClD,KAAK;YACL,QAAQ,IAAI,wCAAM,SAAS,EAAE,MAAM,CAAC,QAAQ,kBAAoB;YAChE,OAAO,IAAI,CACV,8BAAC,YAAO,IAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC,MAAM;gBACrD,8BAAC,SAAI,IAAC,IAAI,EAAC,aAAa,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI,CACrD,CACX,CACK;QACR,8BAAC,aAAK,IAAC,CAAC,EAAE,GAAG,GAAI,CAChB,CACJ,CAAC;IAEF,OAAO,CACL,uCAAK,SAAS,EAAE,MAAM,CAAC,IAAI;QACzB,8BAAC,UAAK,kBAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,IAAM,UAAU,GAC3D,QAAQ,CACH,CACJ,CACP,CAAC;AACJ,CAAC,CAAC;AA/BW,QAAA,WAAW,eA+BtB;AAEF,MAAM,SAAS,GAAG,IAAA,kBAAa,EAAC,CAAC,KAAoB,EAAE,KAAuB,EAAE,EAAE;IAChF,OAAO;QACL,IAAI,EAAE,IAAA,SAAG,EAAC;YACR,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAC;SACpC,CAAC;QACF,KAAK,EAAE,IAAA,SAAG,EAAC;YACT,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB;SAC9C,CAAC;QACF,QAAQ,EAAE,IAAA,SAAG,EAAC;YACZ,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;SACnC,CAAC;QACF,KAAK,EAAE,IAAA,SAAG,EAAC;YACT,YAAY,EAAE,CAAC,EAAE,2DAA2D;SAC7E,CAAC;QACF,IAAI,EAAE,IAAA,SAAG,EAAC;YACR,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS;YAClC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5B,QAAQ,EAAE;gBACR,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;aACjC;SACF,CAAC;KACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorRow = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const css_1 = require("@emotion/css");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const Stack_1 = require("./Stack");
8
+ const ui_1 = require("@grafana/ui");
9
+ const EditorRow = ({ children }) => {
10
+ const styles = (0, ui_1.useStyles2)(getStyles);
11
+ return (react_1.default.createElement("div", { className: styles.root },
12
+ react_1.default.createElement(Stack_1.Stack, { gap: 2 }, children)));
13
+ };
14
+ exports.EditorRow = EditorRow;
15
+ const getStyles = (theme) => {
16
+ return {
17
+ root: (0, css_1.css)({
18
+ padding: theme.spacing(1),
19
+ backgroundColor: theme.colors.background.secondary,
20
+ borderRadius: theme.shape.borderRadius(1),
21
+ }),
22
+ };
23
+ };
24
+ //# sourceMappingURL=EditorRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorRow.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/EditorRow.tsx"],"names":[],"mappings":";;;;AAAA,sCAAmC;AACnC,0DAA0B;AAI1B,mCAAgC;AAChC,oCAAyC;AAIlC,MAAM,SAAS,GAA6B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClE,MAAM,MAAM,GAAG,IAAA,eAAU,EAAC,SAAS,CAAC,CAAC;IAErC,OAAO,CACL,uCAAK,SAAS,EAAE,MAAM,CAAC,IAAI;QACzB,8BAAC,aAAK,IAAC,GAAG,EAAE,CAAC,IAAG,QAAQ,CAAS,CAC7B,CACP,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,SAAS,aAQpB;AAEF,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAE,EAAE;IACzC,OAAO;QACL,IAAI,EAAE,IAAA,SAAG,EAAC;YACR,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACzB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS;YAClD,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;SAC1C,CAAC;KACH,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorRows = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const Stack_1 = require("./Stack");
7
+ const EditorRows = ({ children }) => {
8
+ return (react_1.default.createElement(Stack_1.Stack, { gap: 0.5, direction: "column" }, children));
9
+ };
10
+ exports.EditorRows = EditorRows;
11
+ //# sourceMappingURL=EditorRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorRows.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/EditorRows.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,mCAAgC;AAIzB,MAAM,UAAU,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpE,OAAO,CACL,8BAAC,aAAK,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,QAAQ,IAChC,QAAQ,CACH,CACT,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,UAAU,cAMrB"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupByRow = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importStar(require("react"));
6
+ const data_1 = require("@grafana/data");
7
+ const sql_utils_1 = require("../utils/sql.utils");
8
+ const EditorList_1 = require("../EditorList");
9
+ const ui_1 = require("@grafana/ui");
10
+ const AccessoryButton_1 = require("../AccessoryButton");
11
+ const InputGroup_1 = require("../InputGroup");
12
+ function GroupByRow({ sql, columns, onSqlChange }) {
13
+ const onGroupByChange = (0, react_1.useCallback)((item) => {
14
+ // As new (empty object) items come in, we need to make sure they have the correct type
15
+ const cleaned = item.map((v) => { var _a; return (0, sql_utils_1.setGroupByField)((_a = v.property) === null || _a === void 0 ? void 0 : _a.name); });
16
+ const newSql = Object.assign(Object.assign({}, sql), { groupBy: cleaned });
17
+ onSqlChange(newSql);
18
+ }, [onSqlChange, sql]);
19
+ return (react_1.default.createElement(EditorList_1.EditorList, { items: sql.groupBy, onChange: onGroupByChange, renderItem: makeRenderColumn({
20
+ options: columns,
21
+ }) }));
22
+ }
23
+ exports.GroupByRow = GroupByRow;
24
+ function makeRenderColumn({ options }) {
25
+ const renderColumn = function (item, onChangeItem, onDeleteItem) {
26
+ var _a;
27
+ return (react_1.default.createElement(InputGroup_1.InputGroup, null,
28
+ react_1.default.createElement(ui_1.Select, { value: ((_a = item.property) === null || _a === void 0 ? void 0 : _a.name) ? (0, data_1.toOption)(item.property.name) : null, "aria-label": "Group by", options: options, menuShouldPortal: true, onChange: ({ value }) => value && onChangeItem((0, sql_utils_1.setGroupByField)(value)) }),
29
+ react_1.default.createElement(AccessoryButton_1.AccessoryButton, { "aria-label": "Remove group by column", icon: "times", variant: "secondary", onClick: onDeleteItem })));
30
+ };
31
+ return renderColumn;
32
+ }
33
+ //# sourceMappingURL=GroupByRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupByRow.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/GroupByRow.tsx"],"names":[],"mappings":";;;;AAAA,uDAA2C;AAE3C,wCAA0D;AAG1D,kDAAqD;AACrD,8CAA2C;AAC3C,oCAAqC;AACrC,wDAAqD;AACrD,8CAA2C;AAQ3C,SAAgB,UAAU,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAmB;IACvE,MAAM,eAAe,GAAG,IAAA,mBAAW,EACjC,CAAC,IAAkD,EAAE,EAAE;QACrD,uFAAuF;QACvF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,IAAA,2BAAe,EAAC,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAA,EAAA,CAAC,CAAC;QACnE,MAAM,MAAM,mCAAQ,GAAG,KAAE,OAAO,EAAE,OAAO,GAAE,CAAC;QAC5C,WAAW,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC,EACD,CAAC,WAAW,EAAE,GAAG,CAAC,CACnB,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,KAAK,EAAE,GAAG,CAAC,OAAQ,EACnB,QAAQ,EAAE,eAAe,EACzB,UAAU,EAAE,gBAAgB,CAAC;YAC3B,OAAO,EAAE,OAAO;SACjB,CAAC,GACF,CACH,CAAC;AACJ,CAAC;AApBD,gCAoBC;AAED,SAAS,gBAAgB,CAAC,EAAE,OAAO,EAAgD;IACjF,MAAM,YAAY,GAAG,UACnB,IAA2C,EAC3C,YAA0D,EAC1D,YAAwB;;QAExB,OAAO,CACL,8BAAC,uBAAU;YACT,8BAAC,WAAM,IACL,KAAK,EAAE,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,EAAC,CAAC,CAAC,IAAA,eAAQ,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,gBACrD,UAAU,EACrB,OAAO,EAAE,OAAO,EAChB,gBAAgB,QAChB,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,YAAY,CAAC,IAAA,2BAAe,EAAC,KAAK,CAAC,CAAC,GACtE;YACF,8BAAC,iCAAe,kBAAY,wBAAwB,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,YAAY,GAAI,CACpG,CACd,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrderByRow = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const lodash_1 = require("lodash");
6
+ const react_1 = tslib_1.__importStar(require("react"));
7
+ const data_1 = require("@grafana/data");
8
+ const ui_1 = require("@grafana/ui");
9
+ const sql_utils_1 = require("../utils/sql.utils");
10
+ const Space_1 = require("../Space");
11
+ const EditorField_1 = require("../EditorField");
12
+ const InputGroup_1 = require("../InputGroup");
13
+ const sortOrderOptions = [
14
+ { description: 'Sort by ascending', value: 'ASC', icon: 'sort-amount-up' },
15
+ { description: 'Sort by descending', value: 'DESC', icon: 'sort-amount-down' },
16
+ ];
17
+ function OrderByRow({ sql, onSqlChange, columns, showOffset }) {
18
+ var _a, _b;
19
+ const onSortOrderChange = (0, react_1.useCallback)((item) => {
20
+ const newSql = Object.assign(Object.assign({}, sql), { orderByDirection: item });
21
+ onSqlChange(newSql);
22
+ }, [onSqlChange, sql]);
23
+ const onLimitChange = (0, react_1.useCallback)((event) => {
24
+ const newSql = Object.assign(Object.assign({}, sql), { limit: Number.parseInt(event.currentTarget.value, 10) });
25
+ onSqlChange(newSql);
26
+ }, [onSqlChange, sql]);
27
+ const onOffsetChange = (0, react_1.useCallback)((event) => {
28
+ const newSql = Object.assign(Object.assign({}, sql), { offset: Number.parseInt(event.currentTarget.value, 10) });
29
+ onSqlChange(newSql);
30
+ }, [onSqlChange, sql]);
31
+ const onOrderByChange = (0, react_1.useCallback)((item) => {
32
+ const newSql = Object.assign(Object.assign({}, sql), { orderBy: (0, sql_utils_1.setPropertyField)(item === null || item === void 0 ? void 0 : item.value) });
33
+ if (item === null) {
34
+ newSql.orderByDirection = undefined;
35
+ }
36
+ onSqlChange(newSql);
37
+ }, [onSqlChange, sql]);
38
+ return (react_1.default.createElement(react_1.default.Fragment, null,
39
+ react_1.default.createElement(EditorField_1.EditorField, { label: "Order by", width: 25 },
40
+ react_1.default.createElement(InputGroup_1.InputGroup, null,
41
+ react_1.default.createElement(ui_1.Select, { "aria-label": "Order by", options: columns, value: ((_a = sql.orderBy) === null || _a === void 0 ? void 0 : _a.property.name) ? (0, data_1.toOption)(sql.orderBy.property.name) : null, isClearable: true, menuShouldPortal: true, onChange: onOrderByChange }),
42
+ react_1.default.createElement(Space_1.Space, { h: 1.5 }),
43
+ react_1.default.createElement(ui_1.RadioButtonGroup, { options: sortOrderOptions, disabled: !((_b = sql === null || sql === void 0 ? void 0 : sql.orderBy) === null || _b === void 0 ? void 0 : _b.property.name), value: sql.orderByDirection, onChange: onSortOrderChange }))),
44
+ react_1.default.createElement(EditorField_1.EditorField, { label: "Limit", optional: true, width: 25 },
45
+ react_1.default.createElement(ui_1.Input, { type: "number", min: 0, id: (0, lodash_1.uniqueId)('limit-'), value: sql.limit || '', onChange: onLimitChange })),
46
+ showOffset && (react_1.default.createElement(EditorField_1.EditorField, { label: "Offset", optional: true, width: 25 },
47
+ react_1.default.createElement(ui_1.Input, { type: "number", id: (0, lodash_1.uniqueId)('offset-'), value: sql.offset || '', onChange: onOffsetChange })))));
48
+ }
49
+ exports.OrderByRow = OrderByRow;
50
+ //# sourceMappingURL=OrderByRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderByRow.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/OrderByRow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Preview = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const css_1 = require("@emotion/css");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const react_use_1 = require("react-use");
8
+ const ui_1 = require("@grafana/ui");
9
+ const formatSQL_1 = require("../utils/formatSQL");
10
+ function Preview({ rawSql }) {
11
+ // TODO: use zero index to give feedback about copy success
12
+ const [_, copyToClipboard] = (0, react_use_1.useCopyToClipboard)();
13
+ const styles = (0, ui_1.useStyles2)(getStyles);
14
+ const labelElement = (react_1.default.createElement("div", { className: styles.labelWrapper },
15
+ react_1.default.createElement("label", { className: styles.label }, "Preview"),
16
+ react_1.default.createElement(ui_1.IconButton, { tooltip: "Copy to clipboard", onClick: () => copyToClipboard(rawSql), name: "copy" })));
17
+ return (react_1.default.createElement(ui_1.Field, { label: labelElement, className: styles.grow },
18
+ react_1.default.createElement(ui_1.CodeEditor, { language: "sql", height: 80, value: (0, formatSQL_1.formatSQL)(rawSql), monacoOptions: { scrollbar: { vertical: 'hidden' }, scrollBeyondLastLine: false }, readOnly: true, showMiniMap: false })));
19
+ }
20
+ exports.Preview = Preview;
21
+ function getStyles(theme) {
22
+ return {
23
+ grow: (0, css_1.css)({ flexGrow: 1 }),
24
+ label: (0, css_1.css)({ fontSize: 12, fontWeight: theme.typography.fontWeightMedium }),
25
+ labelWrapper: (0, css_1.css)({ display: 'flex', justifyContent: 'space-between', paddingBottom: theme.spacing(0.5) }),
26
+ };
27
+ }
28
+ //# sourceMappingURL=Preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Preview.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/Preview.tsx"],"names":[],"mappings":";;;;AAAA,sCAAmC;AACnC,0DAA0B;AAC1B,yCAA+C;AAG/C,oCAAwE;AAExE,kDAA+C;AAM/C,SAAgB,OAAO,CAAC,EAAE,MAAM,EAAgB;IAC9C,2DAA2D;IAC3D,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,IAAA,8BAAkB,GAAE,CAAC;IAClD,MAAM,MAAM,GAAG,IAAA,eAAU,EAAC,SAAS,CAAC,CAAC;IAErC,MAAM,YAAY,GAAG,CACnB,uCAAK,SAAS,EAAE,MAAM,CAAC,YAAY;QACjC,yCAAO,SAAS,EAAE,MAAM,CAAC,KAAK,cAAiB;QAC/C,8BAAC,eAAU,IAAC,OAAO,EAAC,mBAAmB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,IAAI,EAAC,MAAM,GAAG,CAC1F,CACP,CAAC;IAEF,OAAO,CACL,8BAAC,UAAK,IAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI;QAChD,8BAAC,eAAU,IACT,QAAQ,EAAC,KAAK,EACd,MAAM,EAAE,EAAE,EACV,KAAK,EAAE,IAAA,qBAAS,EAAC,MAAM,CAAC,EACxB,aAAa,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,EACjF,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,KAAK,GAClB,CACI,CACT,CAAC;AACJ,CAAC;AAxBD,0BAwBC;AAED,SAAS,SAAS,CAAC,KAAoB;IACrC,OAAO;QACL,IAAI,EAAE,IAAA,SAAG,EAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QAC1B,KAAK,EAAE,IAAA,SAAG,EAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QAC3E,YAAY,EAAE,IAAA,SAAG,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;KAC3G,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SQLGroupByRow = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const GroupByRow_1 = require("./GroupByRow");
7
+ const useSqlChange_1 = require("../utils/useSqlChange");
8
+ function SQLGroupByRow({ fields, query, onQueryChange, db }) {
9
+ const { onSqlChange } = (0, useSqlChange_1.useSqlChange)({ query, onQueryChange, db });
10
+ return react_1.default.createElement(GroupByRow_1.GroupByRow, { columns: fields, sql: query.sql, onSqlChange: onSqlChange });
11
+ }
12
+ exports.SQLGroupByRow = SQLGroupByRow;
13
+ //# sourceMappingURL=SQLGroupByRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQLGroupByRow.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/SQLGroupByRow.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAI1B,6CAA0C;AAG1C,wDAAqD;AASrD,SAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAsB;IACpF,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,2BAAY,EAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;IAEnE,OAAO,8BAAC,uBAAU,IAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,GAAI,EAAE,WAAW,EAAE,WAAW,GAAI,CAAC;AACpF,CAAC;AAJD,sCAIC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SQLOrderByRow = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const OrderByRow_1 = require("./OrderByRow");
7
+ const useSqlChange_1 = require("../utils/useSqlChange");
8
+ function SQLOrderByRow({ fields, query, onQueryChange, db }) {
9
+ var _a, _b;
10
+ const { onSqlChange } = (0, useSqlChange_1.useSqlChange)({ query, onQueryChange, db });
11
+ let columnsWithIndices = [];
12
+ if (fields) {
13
+ const options = (_b = (_a = query.sql) === null || _a === void 0 ? void 0 : _a.columns) === null || _b === void 0 ? void 0 : _b.map((c, i) => {
14
+ var _a, _b;
15
+ const value = c.name ? `${c.name}(${(_a = c.parameters) === null || _a === void 0 ? void 0 : _a.map((p) => p.name)})` : (_b = c.parameters) === null || _b === void 0 ? void 0 : _b.map((p) => p.name);
16
+ return {
17
+ value,
18
+ label: `${i + 1} - ${value}`,
19
+ };
20
+ });
21
+ columnsWithIndices = [
22
+ {
23
+ value: '',
24
+ label: 'Selected columns',
25
+ options,
26
+ expanded: true,
27
+ },
28
+ ...fields,
29
+ ];
30
+ }
31
+ return react_1.default.createElement(OrderByRow_1.OrderByRow, { sql: query.sql, onSqlChange: onSqlChange, columns: columnsWithIndices });
32
+ }
33
+ exports.SQLOrderByRow = SQLOrderByRow;
34
+ //# sourceMappingURL=SQLOrderByRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQLOrderByRow.js","sourceRoot":"","sources":["../../../../src/components/QueryEditor/visual-query-builder/SQLOrderByRow.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAI1B,6CAA0C;AAG1C,wDAAqD;AASrD,SAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAsB;;IACpF,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,2BAAY,EAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,IAAI,kBAAkB,GAAsB,EAAE,CAAC;IAE/C,IAAI,MAAM,EAAE;QACV,MAAM,OAAO,GAAG,MAAA,MAAA,KAAK,CAAC,GAAG,0CAAE,OAAO,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;;YAC/C,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,MAAA,CAAC,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAA,CAAC,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3G,OAAO;gBACL,KAAK;gBACL,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,EAAE;aAC7B,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,kBAAkB,GAAG;YACnB;gBACE,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,kBAAkB;gBACzB,OAAO;gBACP,QAAQ,EAAE,IAAI;aACf;YACD,GAAG,MAAM;SACV,CAAC;KACH;IAED,OAAO,8BAAC,uBAAU,IAAC,GAAG,EAAE,KAAK,CAAC,GAAI,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB,GAAI,CAAC;AAChG,CAAC;AAxBD,sCAwBC"}