@grafana/plugin-ui 0.10.0 → 0.10.2

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 (1059) hide show
  1. package/dist/cjs/index.cjs +40041 -0
  2. package/dist/cjs/index.cjs.map +1 -0
  3. package/dist/cjs/index.d.cts +76 -3
  4. package/dist/esm/_virtual/AsymmetricMatcher.js +4 -0
  5. package/dist/esm/_virtual/AsymmetricMatcher.js.map +1 -0
  6. package/dist/esm/_virtual/ConvertAnsi.js +4 -0
  7. package/dist/esm/_virtual/ConvertAnsi.js.map +1 -0
  8. package/dist/esm/_virtual/DOMCollection.js +4 -0
  9. package/dist/esm/_virtual/DOMCollection.js.map +1 -0
  10. package/dist/esm/_virtual/DOMElement.js +4 -0
  11. package/dist/esm/_virtual/DOMElement.js.map +1 -0
  12. package/dist/esm/_virtual/Immutable.js +4 -0
  13. package/dist/esm/_virtual/Immutable.js.map +1 -0
  14. package/dist/esm/_virtual/ReactElement.js +4 -0
  15. package/dist/esm/_virtual/ReactElement.js.map +1 -0
  16. package/dist/esm/_virtual/ReactTestComponent.js +4 -0
  17. package/dist/esm/_virtual/ReactTestComponent.js.map +1 -0
  18. package/dist/esm/_virtual/_commonjsHelpers.js +6 -0
  19. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  20. package/dist/esm/_virtual/alertRole.js +4 -0
  21. package/dist/esm/_virtual/alertRole.js.map +1 -0
  22. package/dist/esm/_virtual/alertdialogRole.js +4 -0
  23. package/dist/esm/_virtual/alertdialogRole.js.map +1 -0
  24. package/dist/esm/_virtual/applicationRole.js +4 -0
  25. package/dist/esm/_virtual/applicationRole.js.map +1 -0
  26. package/dist/esm/_virtual/ariaAbstractRoles.js +4 -0
  27. package/dist/esm/_virtual/ariaAbstractRoles.js.map +1 -0
  28. package/dist/esm/_virtual/ariaDpubRoles.js +4 -0
  29. package/dist/esm/_virtual/ariaDpubRoles.js.map +1 -0
  30. package/dist/esm/_virtual/ariaGraphicsRoles.js +4 -0
  31. package/dist/esm/_virtual/ariaGraphicsRoles.js.map +1 -0
  32. package/dist/esm/_virtual/ariaLiteralRoles.js +4 -0
  33. package/dist/esm/_virtual/ariaLiteralRoles.js.map +1 -0
  34. package/dist/esm/_virtual/ariaPropsMap.js +4 -0
  35. package/dist/esm/_virtual/ariaPropsMap.js.map +1 -0
  36. package/dist/esm/_virtual/articleRole.js +4 -0
  37. package/dist/esm/_virtual/articleRole.js.map +1 -0
  38. package/dist/esm/_virtual/bannerRole.js +4 -0
  39. package/dist/esm/_virtual/bannerRole.js.map +1 -0
  40. package/dist/esm/_virtual/blockquoteRole.js +4 -0
  41. package/dist/esm/_virtual/blockquoteRole.js.map +1 -0
  42. package/dist/esm/_virtual/buttonRole.js +4 -0
  43. package/dist/esm/_virtual/buttonRole.js.map +1 -0
  44. package/dist/esm/_virtual/captionRole.js +4 -0
  45. package/dist/esm/_virtual/captionRole.js.map +1 -0
  46. package/dist/esm/_virtual/cellRole.js +4 -0
  47. package/dist/esm/_virtual/cellRole.js.map +1 -0
  48. package/dist/esm/_virtual/chance.js +6 -0
  49. package/dist/esm/_virtual/chance.js.map +1 -0
  50. package/dist/esm/_virtual/chance2.js +4 -0
  51. package/dist/esm/_virtual/chance2.js.map +1 -0
  52. package/dist/esm/_virtual/checkboxRole.js +4 -0
  53. package/dist/esm/_virtual/checkboxRole.js.map +1 -0
  54. package/dist/esm/_virtual/codeRole.js +4 -0
  55. package/dist/esm/_virtual/codeRole.js.map +1 -0
  56. package/dist/esm/_virtual/collections.js +4 -0
  57. package/dist/esm/_virtual/collections.js.map +1 -0
  58. package/dist/esm/_virtual/columnheaderRole.js +4 -0
  59. package/dist/esm/_virtual/columnheaderRole.js.map +1 -0
  60. package/dist/esm/_virtual/comboboxRole.js +4 -0
  61. package/dist/esm/_virtual/comboboxRole.js.map +1 -0
  62. package/dist/esm/_virtual/commandRole.js +4 -0
  63. package/dist/esm/_virtual/commandRole.js.map +1 -0
  64. package/dist/esm/_virtual/complementaryRole.js +4 -0
  65. package/dist/esm/_virtual/complementaryRole.js.map +1 -0
  66. package/dist/esm/_virtual/compositeRole.js +4 -0
  67. package/dist/esm/_virtual/compositeRole.js.map +1 -0
  68. package/dist/esm/_virtual/contentinfoRole.js +4 -0
  69. package/dist/esm/_virtual/contentinfoRole.js.map +1 -0
  70. package/dist/esm/_virtual/definitionRole.js +4 -0
  71. package/dist/esm/_virtual/definitionRole.js.map +1 -0
  72. package/dist/esm/_virtual/deletionRole.js +4 -0
  73. package/dist/esm/_virtual/deletionRole.js.map +1 -0
  74. package/dist/esm/_virtual/dialogRole.js +4 -0
  75. package/dist/esm/_virtual/dialogRole.js.map +1 -0
  76. package/dist/esm/_virtual/directoryRole.js +4 -0
  77. package/dist/esm/_virtual/directoryRole.js.map +1 -0
  78. package/dist/esm/_virtual/docAbstractRole.js +4 -0
  79. package/dist/esm/_virtual/docAbstractRole.js.map +1 -0
  80. package/dist/esm/_virtual/docAcknowledgmentsRole.js +4 -0
  81. package/dist/esm/_virtual/docAcknowledgmentsRole.js.map +1 -0
  82. package/dist/esm/_virtual/docAfterwordRole.js +4 -0
  83. package/dist/esm/_virtual/docAfterwordRole.js.map +1 -0
  84. package/dist/esm/_virtual/docAppendixRole.js +4 -0
  85. package/dist/esm/_virtual/docAppendixRole.js.map +1 -0
  86. package/dist/esm/_virtual/docBacklinkRole.js +4 -0
  87. package/dist/esm/_virtual/docBacklinkRole.js.map +1 -0
  88. package/dist/esm/_virtual/docBiblioentryRole.js +4 -0
  89. package/dist/esm/_virtual/docBiblioentryRole.js.map +1 -0
  90. package/dist/esm/_virtual/docBibliographyRole.js +4 -0
  91. package/dist/esm/_virtual/docBibliographyRole.js.map +1 -0
  92. package/dist/esm/_virtual/docBibliorefRole.js +4 -0
  93. package/dist/esm/_virtual/docBibliorefRole.js.map +1 -0
  94. package/dist/esm/_virtual/docChapterRole.js +4 -0
  95. package/dist/esm/_virtual/docChapterRole.js.map +1 -0
  96. package/dist/esm/_virtual/docColophonRole.js +4 -0
  97. package/dist/esm/_virtual/docColophonRole.js.map +1 -0
  98. package/dist/esm/_virtual/docConclusionRole.js +4 -0
  99. package/dist/esm/_virtual/docConclusionRole.js.map +1 -0
  100. package/dist/esm/_virtual/docCoverRole.js +4 -0
  101. package/dist/esm/_virtual/docCoverRole.js.map +1 -0
  102. package/dist/esm/_virtual/docCreditRole.js +4 -0
  103. package/dist/esm/_virtual/docCreditRole.js.map +1 -0
  104. package/dist/esm/_virtual/docCreditsRole.js +4 -0
  105. package/dist/esm/_virtual/docCreditsRole.js.map +1 -0
  106. package/dist/esm/_virtual/docDedicationRole.js +4 -0
  107. package/dist/esm/_virtual/docDedicationRole.js.map +1 -0
  108. package/dist/esm/_virtual/docEndnoteRole.js +4 -0
  109. package/dist/esm/_virtual/docEndnoteRole.js.map +1 -0
  110. package/dist/esm/_virtual/docEndnotesRole.js +4 -0
  111. package/dist/esm/_virtual/docEndnotesRole.js.map +1 -0
  112. package/dist/esm/_virtual/docEpigraphRole.js +4 -0
  113. package/dist/esm/_virtual/docEpigraphRole.js.map +1 -0
  114. package/dist/esm/_virtual/docEpilogueRole.js +4 -0
  115. package/dist/esm/_virtual/docEpilogueRole.js.map +1 -0
  116. package/dist/esm/_virtual/docErrataRole.js +4 -0
  117. package/dist/esm/_virtual/docErrataRole.js.map +1 -0
  118. package/dist/esm/_virtual/docExampleRole.js +4 -0
  119. package/dist/esm/_virtual/docExampleRole.js.map +1 -0
  120. package/dist/esm/_virtual/docFootnoteRole.js +4 -0
  121. package/dist/esm/_virtual/docFootnoteRole.js.map +1 -0
  122. package/dist/esm/_virtual/docForewordRole.js +4 -0
  123. package/dist/esm/_virtual/docForewordRole.js.map +1 -0
  124. package/dist/esm/_virtual/docGlossaryRole.js +4 -0
  125. package/dist/esm/_virtual/docGlossaryRole.js.map +1 -0
  126. package/dist/esm/_virtual/docGlossrefRole.js +4 -0
  127. package/dist/esm/_virtual/docGlossrefRole.js.map +1 -0
  128. package/dist/esm/_virtual/docIndexRole.js +4 -0
  129. package/dist/esm/_virtual/docIndexRole.js.map +1 -0
  130. package/dist/esm/_virtual/docIntroductionRole.js +4 -0
  131. package/dist/esm/_virtual/docIntroductionRole.js.map +1 -0
  132. package/dist/esm/_virtual/docNoterefRole.js +4 -0
  133. package/dist/esm/_virtual/docNoterefRole.js.map +1 -0
  134. package/dist/esm/_virtual/docNoticeRole.js +4 -0
  135. package/dist/esm/_virtual/docNoticeRole.js.map +1 -0
  136. package/dist/esm/_virtual/docPagebreakRole.js +4 -0
  137. package/dist/esm/_virtual/docPagebreakRole.js.map +1 -0
  138. package/dist/esm/_virtual/docPagelistRole.js +4 -0
  139. package/dist/esm/_virtual/docPagelistRole.js.map +1 -0
  140. package/dist/esm/_virtual/docPartRole.js +4 -0
  141. package/dist/esm/_virtual/docPartRole.js.map +1 -0
  142. package/dist/esm/_virtual/docPrefaceRole.js +4 -0
  143. package/dist/esm/_virtual/docPrefaceRole.js.map +1 -0
  144. package/dist/esm/_virtual/docPrologueRole.js +4 -0
  145. package/dist/esm/_virtual/docPrologueRole.js.map +1 -0
  146. package/dist/esm/_virtual/docPullquoteRole.js +4 -0
  147. package/dist/esm/_virtual/docPullquoteRole.js.map +1 -0
  148. package/dist/esm/_virtual/docQnaRole.js +4 -0
  149. package/dist/esm/_virtual/docQnaRole.js.map +1 -0
  150. package/dist/esm/_virtual/docSubtitleRole.js +4 -0
  151. package/dist/esm/_virtual/docSubtitleRole.js.map +1 -0
  152. package/dist/esm/_virtual/docTipRole.js +4 -0
  153. package/dist/esm/_virtual/docTipRole.js.map +1 -0
  154. package/dist/esm/_virtual/docTocRole.js +4 -0
  155. package/dist/esm/_virtual/docTocRole.js.map +1 -0
  156. package/dist/esm/_virtual/documentRole.js +4 -0
  157. package/dist/esm/_virtual/documentRole.js.map +1 -0
  158. package/dist/esm/_virtual/domMap.js +4 -0
  159. package/dist/esm/_virtual/domMap.js.map +1 -0
  160. package/dist/esm/_virtual/elementRoleMap.js +4 -0
  161. package/dist/esm/_virtual/elementRoleMap.js.map +1 -0
  162. package/dist/esm/_virtual/emphasisRole.js +4 -0
  163. package/dist/esm/_virtual/emphasisRole.js.map +1 -0
  164. package/dist/esm/_virtual/escapeHTML.js +4 -0
  165. package/dist/esm/_virtual/escapeHTML.js.map +1 -0
  166. package/dist/esm/_virtual/feedRole.js +4 -0
  167. package/dist/esm/_virtual/feedRole.js.map +1 -0
  168. package/dist/esm/_virtual/figureRole.js +4 -0
  169. package/dist/esm/_virtual/figureRole.js.map +1 -0
  170. package/dist/esm/_virtual/formRole.js +4 -0
  171. package/dist/esm/_virtual/formRole.js.map +1 -0
  172. package/dist/esm/_virtual/genericRole.js +4 -0
  173. package/dist/esm/_virtual/genericRole.js.map +1 -0
  174. package/dist/esm/_virtual/graphicsDocumentRole.js +4 -0
  175. package/dist/esm/_virtual/graphicsDocumentRole.js.map +1 -0
  176. package/dist/esm/_virtual/graphicsObjectRole.js +4 -0
  177. package/dist/esm/_virtual/graphicsObjectRole.js.map +1 -0
  178. package/dist/esm/_virtual/graphicsSymbolRole.js +4 -0
  179. package/dist/esm/_virtual/graphicsSymbolRole.js.map +1 -0
  180. package/dist/esm/_virtual/gridRole.js +4 -0
  181. package/dist/esm/_virtual/gridRole.js.map +1 -0
  182. package/dist/esm/_virtual/gridcellRole.js +4 -0
  183. package/dist/esm/_virtual/gridcellRole.js.map +1 -0
  184. package/dist/esm/_virtual/groupRole.js +4 -0
  185. package/dist/esm/_virtual/groupRole.js.map +1 -0
  186. package/dist/esm/_virtual/headingRole.js +4 -0
  187. package/dist/esm/_virtual/headingRole.js.map +1 -0
  188. package/dist/esm/_virtual/imgRole.js +4 -0
  189. package/dist/esm/_virtual/imgRole.js.map +1 -0
  190. package/dist/esm/_virtual/index.js +6 -0
  191. package/dist/esm/_virtual/index.js.map +1 -0
  192. package/dist/esm/_virtual/index2.js +6 -0
  193. package/dist/esm/_virtual/index2.js.map +1 -0
  194. package/dist/esm/_virtual/index3.js +4 -0
  195. package/dist/esm/_virtual/index3.js.map +1 -0
  196. package/dist/esm/_virtual/index4.js +4 -0
  197. package/dist/esm/_virtual/index4.js.map +1 -0
  198. package/dist/esm/_virtual/index5.js +4 -0
  199. package/dist/esm/_virtual/index5.js.map +1 -0
  200. package/dist/esm/_virtual/index6.js +4 -0
  201. package/dist/esm/_virtual/index6.js.map +1 -0
  202. package/dist/esm/_virtual/index7.js +4 -0
  203. package/dist/esm/_virtual/index7.js.map +1 -0
  204. package/dist/esm/_virtual/inputRole.js +4 -0
  205. package/dist/esm/_virtual/inputRole.js.map +1 -0
  206. package/dist/esm/_virtual/insertionRole.js +4 -0
  207. package/dist/esm/_virtual/insertionRole.js.map +1 -0
  208. package/dist/esm/_virtual/iterationDecorator.js +4 -0
  209. package/dist/esm/_virtual/iterationDecorator.js.map +1 -0
  210. package/dist/esm/_virtual/iteratorProxy.js +4 -0
  211. package/dist/esm/_virtual/iteratorProxy.js.map +1 -0
  212. package/dist/esm/_virtual/landmarkRole.js +4 -0
  213. package/dist/esm/_virtual/landmarkRole.js.map +1 -0
  214. package/dist/esm/_virtual/linkRole.js +4 -0
  215. package/dist/esm/_virtual/linkRole.js.map +1 -0
  216. package/dist/esm/_virtual/listRole.js +4 -0
  217. package/dist/esm/_virtual/listRole.js.map +1 -0
  218. package/dist/esm/_virtual/listboxRole.js +4 -0
  219. package/dist/esm/_virtual/listboxRole.js.map +1 -0
  220. package/dist/esm/_virtual/listitemRole.js +4 -0
  221. package/dist/esm/_virtual/listitemRole.js.map +1 -0
  222. package/dist/esm/_virtual/logRole.js +4 -0
  223. package/dist/esm/_virtual/logRole.js.map +1 -0
  224. package/dist/esm/_virtual/lz-string.js +8 -0
  225. package/dist/esm/_virtual/lz-string.js.map +1 -0
  226. package/dist/esm/_virtual/lz-string2.js +4 -0
  227. package/dist/esm/_virtual/lz-string2.js.map +1 -0
  228. package/dist/esm/_virtual/mainRole.js +4 -0
  229. package/dist/esm/_virtual/mainRole.js.map +1 -0
  230. package/dist/esm/_virtual/markRole.js +4 -0
  231. package/dist/esm/_virtual/markRole.js.map +1 -0
  232. package/dist/esm/_virtual/markup.js +4 -0
  233. package/dist/esm/_virtual/markup.js.map +1 -0
  234. package/dist/esm/_virtual/marqueeRole.js +4 -0
  235. package/dist/esm/_virtual/marqueeRole.js.map +1 -0
  236. package/dist/esm/_virtual/mathRole.js +4 -0
  237. package/dist/esm/_virtual/mathRole.js.map +1 -0
  238. package/dist/esm/_virtual/menuRole.js +4 -0
  239. package/dist/esm/_virtual/menuRole.js.map +1 -0
  240. package/dist/esm/_virtual/menubarRole.js +4 -0
  241. package/dist/esm/_virtual/menubarRole.js.map +1 -0
  242. package/dist/esm/_virtual/menuitemRole.js +4 -0
  243. package/dist/esm/_virtual/menuitemRole.js.map +1 -0
  244. package/dist/esm/_virtual/menuitemcheckboxRole.js +4 -0
  245. package/dist/esm/_virtual/menuitemcheckboxRole.js.map +1 -0
  246. package/dist/esm/_virtual/menuitemradioRole.js +4 -0
  247. package/dist/esm/_virtual/menuitemradioRole.js.map +1 -0
  248. package/dist/esm/_virtual/meterRole.js +4 -0
  249. package/dist/esm/_virtual/meterRole.js.map +1 -0
  250. package/dist/esm/_virtual/navigationRole.js +4 -0
  251. package/dist/esm/_virtual/navigationRole.js.map +1 -0
  252. package/dist/esm/_virtual/noneRole.js +4 -0
  253. package/dist/esm/_virtual/noneRole.js.map +1 -0
  254. package/dist/esm/_virtual/noteRole.js +4 -0
  255. package/dist/esm/_virtual/noteRole.js.map +1 -0
  256. package/dist/esm/_virtual/optionRole.js +4 -0
  257. package/dist/esm/_virtual/optionRole.js.map +1 -0
  258. package/dist/esm/_virtual/paragraphRole.js +4 -0
  259. package/dist/esm/_virtual/paragraphRole.js.map +1 -0
  260. package/dist/esm/_virtual/presentationRole.js +4 -0
  261. package/dist/esm/_virtual/presentationRole.js.map +1 -0
  262. package/dist/esm/_virtual/progressbarRole.js +4 -0
  263. package/dist/esm/_virtual/progressbarRole.js.map +1 -0
  264. package/dist/esm/_virtual/radioRole.js +4 -0
  265. package/dist/esm/_virtual/radioRole.js.map +1 -0
  266. package/dist/esm/_virtual/radiogroupRole.js +4 -0
  267. package/dist/esm/_virtual/radiogroupRole.js.map +1 -0
  268. package/dist/esm/_virtual/rangeRole.js +4 -0
  269. package/dist/esm/_virtual/rangeRole.js.map +1 -0
  270. package/dist/esm/_virtual/react-is.development.js +4 -0
  271. package/dist/esm/_virtual/react-is.development.js.map +1 -0
  272. package/dist/esm/_virtual/react-is.production.min.js +4 -0
  273. package/dist/esm/_virtual/react-is.production.min.js.map +1 -0
  274. package/dist/esm/_virtual/regionRole.js +4 -0
  275. package/dist/esm/_virtual/regionRole.js.map +1 -0
  276. package/dist/esm/_virtual/roleElementMap.js +4 -0
  277. package/dist/esm/_virtual/roleElementMap.js.map +1 -0
  278. package/dist/esm/_virtual/rolesMap.js +4 -0
  279. package/dist/esm/_virtual/rolesMap.js.map +1 -0
  280. package/dist/esm/_virtual/roletypeRole.js +4 -0
  281. package/dist/esm/_virtual/roletypeRole.js.map +1 -0
  282. package/dist/esm/_virtual/rowRole.js +4 -0
  283. package/dist/esm/_virtual/rowRole.js.map +1 -0
  284. package/dist/esm/_virtual/rowgroupRole.js +4 -0
  285. package/dist/esm/_virtual/rowgroupRole.js.map +1 -0
  286. package/dist/esm/_virtual/rowheaderRole.js +4 -0
  287. package/dist/esm/_virtual/rowheaderRole.js.map +1 -0
  288. package/dist/esm/_virtual/scrollbarRole.js +4 -0
  289. package/dist/esm/_virtual/scrollbarRole.js.map +1 -0
  290. package/dist/esm/_virtual/searchRole.js +4 -0
  291. package/dist/esm/_virtual/searchRole.js.map +1 -0
  292. package/dist/esm/_virtual/searchboxRole.js +4 -0
  293. package/dist/esm/_virtual/searchboxRole.js.map +1 -0
  294. package/dist/esm/_virtual/sectionRole.js +4 -0
  295. package/dist/esm/_virtual/sectionRole.js.map +1 -0
  296. package/dist/esm/_virtual/sectionheadRole.js +4 -0
  297. package/dist/esm/_virtual/sectionheadRole.js.map +1 -0
  298. package/dist/esm/_virtual/selectRole.js +4 -0
  299. package/dist/esm/_virtual/selectRole.js.map +1 -0
  300. package/dist/esm/_virtual/separatorRole.js +4 -0
  301. package/dist/esm/_virtual/separatorRole.js.map +1 -0
  302. package/dist/esm/_virtual/sliderRole.js +4 -0
  303. package/dist/esm/_virtual/sliderRole.js.map +1 -0
  304. package/dist/esm/_virtual/spinbuttonRole.js +4 -0
  305. package/dist/esm/_virtual/spinbuttonRole.js.map +1 -0
  306. package/dist/esm/_virtual/statusRole.js +4 -0
  307. package/dist/esm/_virtual/statusRole.js.map +1 -0
  308. package/dist/esm/_virtual/strongRole.js +4 -0
  309. package/dist/esm/_virtual/strongRole.js.map +1 -0
  310. package/dist/esm/_virtual/structureRole.js +4 -0
  311. package/dist/esm/_virtual/structureRole.js.map +1 -0
  312. package/dist/esm/_virtual/subscriptRole.js +4 -0
  313. package/dist/esm/_virtual/subscriptRole.js.map +1 -0
  314. package/dist/esm/_virtual/superscriptRole.js +4 -0
  315. package/dist/esm/_virtual/superscriptRole.js.map +1 -0
  316. package/dist/esm/_virtual/switchRole.js +4 -0
  317. package/dist/esm/_virtual/switchRole.js.map +1 -0
  318. package/dist/esm/_virtual/tabRole.js +4 -0
  319. package/dist/esm/_virtual/tabRole.js.map +1 -0
  320. package/dist/esm/_virtual/tableRole.js +4 -0
  321. package/dist/esm/_virtual/tableRole.js.map +1 -0
  322. package/dist/esm/_virtual/tablistRole.js +4 -0
  323. package/dist/esm/_virtual/tablistRole.js.map +1 -0
  324. package/dist/esm/_virtual/tabpanelRole.js +4 -0
  325. package/dist/esm/_virtual/tabpanelRole.js.map +1 -0
  326. package/dist/esm/_virtual/termRole.js +4 -0
  327. package/dist/esm/_virtual/termRole.js.map +1 -0
  328. package/dist/esm/_virtual/textboxRole.js +4 -0
  329. package/dist/esm/_virtual/textboxRole.js.map +1 -0
  330. package/dist/esm/_virtual/timeRole.js +4 -0
  331. package/dist/esm/_virtual/timeRole.js.map +1 -0
  332. package/dist/esm/_virtual/timerRole.js +4 -0
  333. package/dist/esm/_virtual/timerRole.js.map +1 -0
  334. package/dist/esm/_virtual/toolbarRole.js +4 -0
  335. package/dist/esm/_virtual/toolbarRole.js.map +1 -0
  336. package/dist/esm/_virtual/tooltipRole.js +4 -0
  337. package/dist/esm/_virtual/tooltipRole.js.map +1 -0
  338. package/dist/esm/_virtual/treeRole.js +4 -0
  339. package/dist/esm/_virtual/treeRole.js.map +1 -0
  340. package/dist/esm/_virtual/treegridRole.js +4 -0
  341. package/dist/esm/_virtual/treegridRole.js.map +1 -0
  342. package/dist/esm/_virtual/treeitemRole.js +4 -0
  343. package/dist/esm/_virtual/treeitemRole.js.map +1 -0
  344. package/dist/esm/_virtual/widgetRole.js +4 -0
  345. package/dist/esm/_virtual/widgetRole.js.map +1 -0
  346. package/dist/esm/_virtual/windowRole.js +4 -0
  347. package/dist/esm/_virtual/windowRole.js.map +1 -0
  348. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js +5 -5
  349. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
  350. package/dist/esm/components/ConfigEditor/Auth/Auth.js +3 -3
  351. package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
  352. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
  353. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  354. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js +5 -5
  355. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
  356. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js +6 -6
  357. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
  358. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +4 -4
  359. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  360. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +4 -4
  361. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
  362. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js +2 -2
  363. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
  364. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +8 -8
  365. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  366. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js +5 -5
  367. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
  368. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js +2 -2
  369. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
  370. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +2 -2
  371. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
  372. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js +2 -2
  373. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
  374. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js +2 -2
  375. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
  376. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js +3 -3
  377. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  378. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +4 -4
  379. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
  380. package/dist/esm/components/ConfigEditor/DataSourceDescription.js +2 -2
  381. package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
  382. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js +4 -4
  383. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  384. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +7 -7
  385. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  386. package/dist/esm/components/DataLinks/DataLink.js +9 -9
  387. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  388. package/dist/esm/components/DataLinks/DataLinks.js +4 -4
  389. package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
  390. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +3 -3
  391. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  392. package/dist/esm/components/DatePicker/DatePicker.js +5 -5
  393. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  394. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js +4 -4
  395. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  396. package/dist/esm/components/DebounceInput/DebounceInput.js +5 -5
  397. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  398. package/dist/esm/components/Plugins/PluginSignatureBadge.js +2 -2
  399. package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
  400. package/dist/esm/components/QueryEditor/AccessoryButton.js +2 -2
  401. package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
  402. package/dist/esm/components/QueryEditor/ConfirmModal.js +6 -6
  403. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  404. package/dist/esm/components/QueryEditor/DatasetSelector.js +5 -3
  405. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  406. package/dist/esm/components/QueryEditor/EditorField.js +3 -3
  407. package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
  408. package/dist/esm/components/QueryEditor/EditorFieldGroup.js +2 -2
  409. package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  410. package/dist/esm/components/QueryEditor/EditorHeader.js +2 -2
  411. package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
  412. package/dist/esm/components/QueryEditor/EditorList.js +4 -4
  413. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  414. package/dist/esm/components/QueryEditor/EditorRow.js +2 -2
  415. package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
  416. package/dist/esm/components/QueryEditor/EditorRows.js +2 -2
  417. package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
  418. package/dist/esm/components/QueryEditor/EditorStack.js +2 -2
  419. package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
  420. package/dist/esm/components/QueryEditor/EditorSwitch.js +2 -2
  421. package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
  422. package/dist/esm/components/QueryEditor/FlexItem.js +2 -2
  423. package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
  424. package/dist/esm/components/QueryEditor/InlineSelect.js +4 -4
  425. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  426. package/dist/esm/components/QueryEditor/InputGroup.js +2 -2
  427. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  428. package/dist/esm/components/QueryEditor/QueryEditor.js +4 -4
  429. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  430. package/dist/esm/components/QueryEditor/QueryHeader.js +16 -13
  431. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  432. package/dist/esm/components/QueryEditor/RunQueryButton.js +4 -4
  433. package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
  434. package/dist/esm/components/QueryEditor/Space.js +2 -2
  435. package/dist/esm/components/QueryEditor/Space.js.map +1 -1
  436. package/dist/esm/components/QueryEditor/TableSelector.js +4 -3
  437. package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
  438. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +2 -2
  439. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  440. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +4 -4
  441. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  442. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +2 -2
  443. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  444. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +7 -7
  445. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  446. package/dist/esm/components/QueryEditor/types.js +1 -1
  447. package/dist/esm/components/QueryEditor/types.js.map +1 -1
  448. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +39 -21
  449. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  450. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +3 -3
  451. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  452. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
  453. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  454. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js +2 -2
  455. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  456. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +4 -4
  457. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  458. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +4 -4
  459. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  460. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +3 -3
  461. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
  462. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +2 -2
  463. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
  464. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +2 -2
  465. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
  466. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +2 -2
  467. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
  468. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +2 -2
  469. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
  470. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +5 -5
  471. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  472. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +2 -2
  473. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  474. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js +4 -4
  475. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  476. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js +2 -2
  477. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  478. package/dist/esm/components/SQLEditor/components/SQLEditor.js +2 -2
  479. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  480. package/dist/esm/components/Segment/Segment.js +3 -3
  481. package/dist/esm/components/Segment/Segment.js.map +1 -1
  482. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +5 -5
  483. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  484. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +4 -4
  485. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  486. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +4 -4
  487. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
  488. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +8 -8
  489. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  490. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +2 -2
  491. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
  492. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +7 -7
  493. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  494. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +5 -5
  495. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  496. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +5 -5
  497. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  498. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +5 -5
  499. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
  500. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +6 -6
  501. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
  502. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +2 -2
  503. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
  504. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +3 -3
  505. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  506. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js +2 -2
  507. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
  508. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +2 -2
  509. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  510. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +5 -5
  511. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
  512. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +2 -2
  513. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
  514. package/dist/esm/index.d.ts +76 -3
  515. package/dist/esm/index.js +5 -0
  516. package/dist/esm/index.js.map +1 -1
  517. package/dist/esm/node_modules/@testing-library/dom/dist/@testing-library/dom.esm.js +2779 -0
  518. package/dist/esm/node_modules/@testing-library/dom/dist/@testing-library/dom.esm.js.map +1 -0
  519. package/dist/esm/node_modules/@testing-library/dom/node_modules/ansi-styles/index.js +179 -0
  520. package/dist/esm/node_modules/@testing-library/dom/node_modules/ansi-styles/index.js.map +1 -0
  521. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/collections.js +198 -0
  522. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/collections.js.map +1 -0
  523. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/index.js +617 -0
  524. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/index.js.map +1 -0
  525. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/AsymmetricMatcher.js +129 -0
  526. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/AsymmetricMatcher.js.map +1 -0
  527. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ConvertAnsi.js +109 -0
  528. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ConvertAnsi.js.map +1 -0
  529. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/DOMCollection.js +92 -0
  530. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/DOMCollection.js.map +1 -0
  531. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/DOMElement.js +140 -0
  532. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/DOMElement.js.map +1 -0
  533. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/Immutable.js +259 -0
  534. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/Immutable.js.map +1 -0
  535. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ReactElement.js +179 -0
  536. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ReactElement.js.map +1 -0
  537. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ReactTestComponent.js +91 -0
  538. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/ReactTestComponent.js.map +1 -0
  539. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/lib/escapeHTML.js +27 -0
  540. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/lib/escapeHTML.js.map +1 -0
  541. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/lib/markup.js +165 -0
  542. package/dist/esm/node_modules/@testing-library/dom/node_modules/pretty-format/build/plugins/lib/markup.js.map +1 -0
  543. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/cjs/react-is.development.js +233 -0
  544. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  545. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/cjs/react-is.production.min.js +27 -0
  546. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  547. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/index.js +20 -0
  548. package/dist/esm/node_modules/@testing-library/dom/node_modules/react-is/index.js.map +1 -0
  549. package/dist/esm/node_modules/@testing-library/react/dist/@testing-library/react.esm.js +262 -0
  550. package/dist/esm/node_modules/@testing-library/react/dist/@testing-library/react.esm.js.map +1 -0
  551. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/copy.js +27 -0
  552. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/copy.js.map +1 -0
  553. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/cut.js +27 -0
  554. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/cut.js.map +1 -0
  555. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/paste.js +30 -0
  556. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/clipboard/paste.js.map +1 -0
  557. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/click.js +32 -0
  558. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/click.js.map +1 -0
  559. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/hover.js +22 -0
  560. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/hover.js.map +1 -0
  561. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/tab.js +6 -0
  562. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/convenience/tab.js.map +1 -0
  563. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/UI.js +80 -0
  564. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/UI.js.map +1 -0
  565. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/copySelection.js +34 -0
  566. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/copySelection.js.map +1 -0
  567. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/getValueOrTextContent.js +23 -0
  568. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/getValueOrTextContent.js.map +1 -0
  569. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/interceptor.js +106 -0
  570. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/interceptor.js.map +1 -0
  571. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/prepareDocument.js +63 -0
  572. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/prepareDocument.js.map +1 -0
  573. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/trackValue.js +60 -0
  574. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/document/trackValue.js.map +1 -0
  575. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/click.js +37 -0
  576. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/click.js.map +1 -0
  577. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/cut.js +18 -0
  578. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/cut.js.map +1 -0
  579. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keydown.js +132 -0
  580. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keydown.js.map +1 -0
  581. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keypress.js +55 -0
  582. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keypress.js.map +1 -0
  583. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keyup.js +21 -0
  584. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/keyup.js.map +1 -0
  585. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/paste.js +22 -0
  586. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/paste.js.map +1 -0
  587. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/registry.js +4 -0
  588. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/behavior/registry.js.map +1 -0
  589. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/createEvent.js +199 -0
  590. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/createEvent.js.map +1 -0
  591. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/dispatchEvent.js +51 -0
  592. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/dispatchEvent.js.map +1 -0
  593. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/eventMap.js +246 -0
  594. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/eventMap.js.map +1 -0
  595. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/focus.js +36 -0
  596. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/focus.js.map +1 -0
  597. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/input.js +161 -0
  598. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/input.js.map +1 -0
  599. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/radio.js +31 -0
  600. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/radio.js.map +1 -0
  601. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/getInputRange.js +17 -0
  602. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/getInputRange.js.map +1 -0
  603. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/getTargetTypeAndSelection.js +36 -0
  604. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/getTargetTypeAndSelection.js.map +1 -0
  605. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/modifySelectionPerMouse.js +45 -0
  606. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/modifySelectionPerMouse.js.map +1 -0
  607. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/moveSelection.js +43 -0
  608. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/moveSelection.js.map +1 -0
  609. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/resolveCaretPosition.js +66 -0
  610. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/resolveCaretPosition.js.map +1 -0
  611. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/selectAll.js +42 -0
  612. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/selectAll.js.map +1 -0
  613. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelection.js +26 -0
  614. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelection.js.map +1 -0
  615. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelectionPerMouse.js +86 -0
  616. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelectionPerMouse.js.map +1 -0
  617. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelectionRange.js +36 -0
  618. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/setSelectionRange.js.map +1 -0
  619. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/updateSelectionOnFocus.js +41 -0
  620. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/selection/updateSelectionOnFocus.js.map +1 -0
  621. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/wrapEvent.js +8 -0
  622. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/event/wrapEvent.js.map +1 -0
  623. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/index.js +44 -0
  624. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/index.js.map +1 -0
  625. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/keyMap.js +155 -0
  626. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/keyMap.js.map +1 -0
  627. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/parseKeyDef.js +49 -0
  628. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/keyboard/parseKeyDef.js.map +1 -0
  629. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/options.js +13 -0
  630. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/options.js.map +1 -0
  631. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/index.js +78 -0
  632. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/index.js.map +1 -0
  633. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/keyMap.js +32 -0
  634. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/keyMap.js.map +1 -0
  635. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/parseKeyDef.js +27 -0
  636. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/pointer/parseKeyDef.js.map +1 -0
  637. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/api.js +34 -0
  638. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/api.js.map +1 -0
  639. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/directApi.js +59 -0
  640. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/directApi.js.map +1 -0
  641. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/index.js +10 -0
  642. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/index.js.map +1 -0
  643. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/setup.js +120 -0
  644. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/setup.js.map +1 -0
  645. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/wrapAsync.js +10 -0
  646. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/setup/wrapAsync.js.map +1 -0
  647. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/index.js +43 -0
  648. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/index.js.map +1 -0
  649. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/keyboard.js +146 -0
  650. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/keyboard.js.map +1 -0
  651. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/buttons.js +79 -0
  652. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/buttons.js.map +1 -0
  653. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/device.js +33 -0
  654. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/device.js.map +1 -0
  655. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/index.js +163 -0
  656. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/index.js.map +1 -0
  657. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/mouse.js +211 -0
  658. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/mouse.js.map +1 -0
  659. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/pointer.js +125 -0
  660. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/pointer.js.map +1 -0
  661. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/shared.js +7 -0
  662. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/system/pointer/shared.js.map +1 -0
  663. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/clear.js +36 -0
  664. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/clear.js.map +1 -0
  665. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/selectOptions.js +117 -0
  666. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/selectOptions.js.map +1 -0
  667. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/type.js +28 -0
  668. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/type.js.map +1 -0
  669. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/upload.js +63 -0
  670. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utility/upload.js.map +1 -0
  671. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/click/isClickableInput.js +19 -0
  672. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/click/isClickableInput.js.map +1 -0
  673. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/Blob.js +15 -0
  674. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/Blob.js.map +1 -0
  675. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/Clipboard.js +164 -0
  676. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/Clipboard.js.map +1 -0
  677. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/DataTransfer.js +138 -0
  678. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/DataTransfer.js.map +1 -0
  679. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/FileList.js +23 -0
  680. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/dataTransfer/FileList.js.map +1 -0
  681. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/isContentEditable.js +16 -0
  682. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/isContentEditable.js.map +1 -0
  683. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/isEditable.js +27 -0
  684. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/isEditable.js.map +1 -0
  685. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/maxLength.js +24 -0
  686. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/maxLength.js.map +1 -0
  687. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/setFiles.js +58 -0
  688. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/setFiles.js.map +1 -0
  689. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/timeValue.js +38 -0
  690. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/edit/timeValue.js.map +1 -0
  691. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/cursor.js +125 -0
  692. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/cursor.js.map +1 -0
  693. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/getActiveElement.js +21 -0
  694. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/getActiveElement.js.map +1 -0
  695. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/getTabDestination.js +79 -0
  696. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/getTabDestination.js.map +1 -0
  697. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/isFocusable.js +8 -0
  698. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/isFocusable.js.map +1 -0
  699. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/selection.js +18 -0
  700. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/selection.js.map +1 -0
  701. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/selector.js +13 -0
  702. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/focus/selector.js.map +1 -0
  703. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/keyDef/readNextDescriptor.js +91 -0
  704. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/keyDef/readNextDescriptor.js.map +1 -0
  705. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/cloneEvent.js +6 -0
  706. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/cloneEvent.js.map +1 -0
  707. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/findClosest.js +13 -0
  708. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/findClosest.js.map +1 -0
  709. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getDocumentFromNode.js +9 -0
  710. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getDocumentFromNode.js.map +1 -0
  711. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getTreeDiff.js +24 -0
  712. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getTreeDiff.js.map +1 -0
  713. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getWindow.js +18 -0
  714. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/getWindow.js.map +1 -0
  715. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isDisabled.js +32 -0
  716. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isDisabled.js.map +1 -0
  717. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isElementType.js +19 -0
  718. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isElementType.js.map +1 -0
  719. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isVisible.js +18 -0
  720. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/isVisible.js.map +1 -0
  721. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/level.js +14 -0
  722. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/level.js.map +1 -0
  723. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/wait.js +13 -0
  724. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/misc/wait.js.map +1 -0
  725. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/pointer/cssPointerEvents.js +101 -0
  726. package/dist/esm/node_modules/@testing-library/user-event/dist/esm/utils/pointer/cssPointerEvents.js.map +1 -0
  727. package/dist/esm/node_modules/ansi-regex/index.js +20 -0
  728. package/dist/esm/node_modules/ansi-regex/index.js.map +1 -0
  729. package/dist/esm/node_modules/aria-query/lib/ariaPropsMap.js +190 -0
  730. package/dist/esm/node_modules/aria-query/lib/ariaPropsMap.js.map +1 -0
  731. package/dist/esm/node_modules/aria-query/lib/domMap.js +333 -0
  732. package/dist/esm/node_modules/aria-query/lib/domMap.js.map +1 -0
  733. package/dist/esm/node_modules/aria-query/lib/elementRoleMap.js +117 -0
  734. package/dist/esm/node_modules/aria-query/lib/elementRoleMap.js.map +1 -0
  735. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/commandRole.js +34 -0
  736. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/commandRole.js.map +1 -0
  737. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/compositeRole.js +37 -0
  738. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/compositeRole.js.map +1 -0
  739. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/inputRole.js +41 -0
  740. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/inputRole.js.map +1 -0
  741. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/landmarkRole.js +34 -0
  742. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/landmarkRole.js.map +1 -0
  743. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/rangeRole.js +38 -0
  744. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/rangeRole.js.map +1 -0
  745. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/roletypeRole.js +62 -0
  746. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/roletypeRole.js.map +1 -0
  747. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/sectionRole.js +49 -0
  748. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/sectionRole.js.map +1 -0
  749. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/sectionheadRole.js +34 -0
  750. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/sectionheadRole.js.map +1 -0
  751. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/selectRole.js +36 -0
  752. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/selectRole.js.map +1 -0
  753. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/structureRole.js +34 -0
  754. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/structureRole.js.map +1 -0
  755. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/widgetRole.js +34 -0
  756. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/widgetRole.js.map +1 -0
  757. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/windowRole.js +36 -0
  758. package/dist/esm/node_modules/aria-query/lib/etc/roles/abstract/windowRole.js.map +1 -0
  759. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaAbstractRoles.js +46 -0
  760. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaAbstractRoles.js.map +1 -0
  761. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaDpubRoles.js +100 -0
  762. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaDpubRoles.js.map +1 -0
  763. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaGraphicsRoles.js +28 -0
  764. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaGraphicsRoles.js.map +1 -0
  765. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaLiteralRoles.js +188 -0
  766. package/dist/esm/node_modules/aria-query/lib/etc/roles/ariaLiteralRoles.js.map +1 -0
  767. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAbstractRole.js +45 -0
  768. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAbstractRole.js.map +1 -0
  769. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAcknowledgmentsRole.js +45 -0
  770. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAcknowledgmentsRole.js.map +1 -0
  771. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAfterwordRole.js +45 -0
  772. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAfterwordRole.js.map +1 -0
  773. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAppendixRole.js +45 -0
  774. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docAppendixRole.js.map +1 -0
  775. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBacklinkRole.js +42 -0
  776. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBacklinkRole.js.map +1 -0
  777. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBiblioentryRole.js +45 -0
  778. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBiblioentryRole.js.map +1 -0
  779. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBibliographyRole.js +45 -0
  780. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBibliographyRole.js.map +1 -0
  781. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBibliorefRole.js +42 -0
  782. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docBibliorefRole.js.map +1 -0
  783. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docChapterRole.js +45 -0
  784. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docChapterRole.js.map +1 -0
  785. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docColophonRole.js +45 -0
  786. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docColophonRole.js.map +1 -0
  787. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docConclusionRole.js +45 -0
  788. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docConclusionRole.js.map +1 -0
  789. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCoverRole.js +45 -0
  790. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCoverRole.js.map +1 -0
  791. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCreditRole.js +45 -0
  792. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCreditRole.js.map +1 -0
  793. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCreditsRole.js +45 -0
  794. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docCreditsRole.js.map +1 -0
  795. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docDedicationRole.js +45 -0
  796. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docDedicationRole.js.map +1 -0
  797. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEndnoteRole.js +45 -0
  798. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEndnoteRole.js.map +1 -0
  799. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEndnotesRole.js +45 -0
  800. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEndnotesRole.js.map +1 -0
  801. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEpigraphRole.js +45 -0
  802. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEpigraphRole.js.map +1 -0
  803. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEpilogueRole.js +45 -0
  804. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docEpilogueRole.js.map +1 -0
  805. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docErrataRole.js +45 -0
  806. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docErrataRole.js.map +1 -0
  807. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docExampleRole.js +40 -0
  808. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docExampleRole.js.map +1 -0
  809. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docFootnoteRole.js +45 -0
  810. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docFootnoteRole.js.map +1 -0
  811. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docForewordRole.js +45 -0
  812. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docForewordRole.js.map +1 -0
  813. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docGlossaryRole.js +45 -0
  814. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docGlossaryRole.js.map +1 -0
  815. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docGlossrefRole.js +42 -0
  816. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docGlossrefRole.js.map +1 -0
  817. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docIndexRole.js +45 -0
  818. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docIndexRole.js.map +1 -0
  819. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docIntroductionRole.js +45 -0
  820. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docIntroductionRole.js.map +1 -0
  821. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docNoterefRole.js +42 -0
  822. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docNoterefRole.js.map +1 -0
  823. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docNoticeRole.js +45 -0
  824. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docNoticeRole.js.map +1 -0
  825. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPagebreakRole.js +44 -0
  826. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPagebreakRole.js.map +1 -0
  827. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPagelistRole.js +45 -0
  828. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPagelistRole.js.map +1 -0
  829. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPartRole.js +45 -0
  830. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPartRole.js.map +1 -0
  831. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPrefaceRole.js +45 -0
  832. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPrefaceRole.js.map +1 -0
  833. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPrologueRole.js +45 -0
  834. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPrologueRole.js.map +1 -0
  835. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPullquoteRole.js +39 -0
  836. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docPullquoteRole.js.map +1 -0
  837. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docQnaRole.js +45 -0
  838. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docQnaRole.js.map +1 -0
  839. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docSubtitleRole.js +45 -0
  840. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docSubtitleRole.js.map +1 -0
  841. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docTipRole.js +45 -0
  842. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docTipRole.js.map +1 -0
  843. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docTocRole.js +45 -0
  844. package/dist/esm/node_modules/aria-query/lib/etc/roles/dpub/docTocRole.js.map +1 -0
  845. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsDocumentRole.js +55 -0
  846. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsDocumentRole.js.map +1 -0
  847. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsObjectRole.js +59 -0
  848. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsObjectRole.js.map +1 -0
  849. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsSymbolRole.js +40 -0
  850. package/dist/esm/node_modules/aria-query/lib/etc/roles/graphics/graphicsSymbolRole.js.map +1 -0
  851. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/alertRole.js +42 -0
  852. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/alertRole.js.map +1 -0
  853. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/alertdialogRole.js +39 -0
  854. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/alertdialogRole.js.map +1 -0
  855. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/applicationRole.js +45 -0
  856. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/applicationRole.js.map +1 -0
  857. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/articleRole.js +42 -0
  858. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/articleRole.js.map +1 -0
  859. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/bannerRole.js +40 -0
  860. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/bannerRole.js.map +1 -0
  861. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/blockquoteRole.js +39 -0
  862. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/blockquoteRole.js.map +1 -0
  863. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/buttonRole.js +85 -0
  864. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/buttonRole.js.map +1 -0
  865. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/captionRole.js +39 -0
  866. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/captionRole.js.map +1 -0
  867. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/cellRole.js +45 -0
  868. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/cellRole.js.map +1 -0
  869. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/checkboxRole.js +57 -0
  870. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/checkboxRole.js.map +1 -0
  871. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/codeRole.js +39 -0
  872. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/codeRole.js.map +1 -0
  873. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/columnheaderRole.js +59 -0
  874. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/columnheaderRole.js.map +1 -0
  875. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/comboboxRole.js +136 -0
  876. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/comboboxRole.js.map +1 -0
  877. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/complementaryRole.js +59 -0
  878. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/complementaryRole.js.map +1 -0
  879. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/contentinfoRole.js +40 -0
  880. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/contentinfoRole.js.map +1 -0
  881. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/definitionRole.js +39 -0
  882. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/definitionRole.js.map +1 -0
  883. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/deletionRole.js +39 -0
  884. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/deletionRole.js.map +1 -0
  885. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/dialogRole.js +39 -0
  886. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/dialogRole.js.map +1 -0
  887. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/directoryRole.js +36 -0
  888. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/directoryRole.js.map +1 -0
  889. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/documentRole.js +43 -0
  890. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/documentRole.js.map +1 -0
  891. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/emphasisRole.js +39 -0
  892. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/emphasisRole.js.map +1 -0
  893. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/feedRole.js +34 -0
  894. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/feedRole.js.map +1 -0
  895. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/figureRole.js +39 -0
  896. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/figureRole.js.map +1 -0
  897. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/formRole.js +61 -0
  898. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/formRole.js.map +1 -0
  899. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/genericRole.js +131 -0
  900. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/genericRole.js.map +1 -0
  901. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/gridRole.js +37 -0
  902. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/gridRole.js.map +1 -0
  903. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/gridcellRole.js +49 -0
  904. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/gridcellRole.js.map +1 -0
  905. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/groupRole.js +57 -0
  906. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/groupRole.js.map +1 -0
  907. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/headingRole.js +68 -0
  908. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/headingRole.js.map +1 -0
  909. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/imgRole.js +57 -0
  910. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/imgRole.js.map +1 -0
  911. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/insertionRole.js +39 -0
  912. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/insertionRole.js.map +1 -0
  913. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/linkRole.js +56 -0
  914. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/linkRole.js.map +1 -0
  915. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listRole.js +49 -0
  916. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listRole.js.map +1 -0
  917. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listboxRole.js +75 -0
  918. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listboxRole.js.map +1 -0
  919. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listitemRole.js +49 -0
  920. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/listitemRole.js.map +1 -0
  921. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/logRole.js +36 -0
  922. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/logRole.js.map +1 -0
  923. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/mainRole.js +39 -0
  924. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/mainRole.js.map +1 -0
  925. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/markRole.js +43 -0
  926. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/markRole.js.map +1 -0
  927. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/marqueeRole.js +34 -0
  928. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/marqueeRole.js.map +1 -0
  929. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/mathRole.js +39 -0
  930. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/mathRole.js.map +1 -0
  931. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuRole.js +56 -0
  932. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuRole.js.map +1 -0
  933. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menubarRole.js +41 -0
  934. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menubarRole.js.map +1 -0
  935. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemRole.js +55 -0
  936. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemRole.js.map +1 -0
  937. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemcheckboxRole.js +41 -0
  938. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemcheckboxRole.js.map +1 -0
  939. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemradioRole.js +41 -0
  940. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/menuitemradioRole.js.map +1 -0
  941. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/meterRole.js +45 -0
  942. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/meterRole.js.map +1 -0
  943. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/navigationRole.js +39 -0
  944. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/navigationRole.js.map +1 -0
  945. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/noneRole.js +34 -0
  946. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/noneRole.js.map +1 -0
  947. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/noteRole.js +34 -0
  948. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/noteRole.js.map +1 -0
  949. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/optionRole.js +56 -0
  950. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/optionRole.js.map +1 -0
  951. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/paragraphRole.js +39 -0
  952. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/paragraphRole.js.map +1 -0
  953. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/presentationRole.js +43 -0
  954. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/presentationRole.js.map +1 -0
  955. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/progressbarRole.js +46 -0
  956. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/progressbarRole.js.map +1 -0
  957. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/radioRole.js +49 -0
  958. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/radioRole.js.map +1 -0
  959. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/radiogroupRole.js +44 -0
  960. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/radiogroupRole.js.map +1 -0
  961. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/regionRole.js +56 -0
  962. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/regionRole.js.map +1 -0
  963. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowRole.js +47 -0
  964. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowRole.js.map +1 -0
  965. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowgroupRole.js +49 -0
  966. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowgroupRole.js.map +1 -0
  967. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowheaderRole.js +54 -0
  968. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/rowheaderRole.js.map +1 -0
  969. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/scrollbarRole.js +43 -0
  970. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/scrollbarRole.js.map +1 -0
  971. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/searchRole.js +34 -0
  972. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/searchRole.js.map +1 -0
  973. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/searchboxRole.js +47 -0
  974. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/searchboxRole.js.map +1 -0
  975. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/separatorRole.js +46 -0
  976. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/separatorRole.js.map +1 -0
  977. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/sliderRole.js +54 -0
  978. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/sliderRole.js.map +1 -0
  979. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/spinbuttonRole.js +50 -0
  980. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/spinbuttonRole.js.map +1 -0
  981. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/statusRole.js +42 -0
  982. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/statusRole.js.map +1 -0
  983. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/strongRole.js +39 -0
  984. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/strongRole.js.map +1 -0
  985. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/subscriptRole.js +39 -0
  986. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/subscriptRole.js.map +1 -0
  987. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/superscriptRole.js +39 -0
  988. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/superscriptRole.js.map +1 -0
  989. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/switchRole.js +41 -0
  990. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/switchRole.js.map +1 -0
  991. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tabRole.js +41 -0
  992. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tabRole.js.map +1 -0
  993. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tableRole.js +42 -0
  994. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tableRole.js.map +1 -0
  995. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tablistRole.js +43 -0
  996. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tablistRole.js.map +1 -0
  997. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tabpanelRole.js +34 -0
  998. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tabpanelRole.js.map +1 -0
  999. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/termRole.js +44 -0
  1000. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/termRole.js.map +1 -0
  1001. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/textboxRole.js +119 -0
  1002. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/textboxRole.js.map +1 -0
  1003. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/timeRole.js +39 -0
  1004. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/timeRole.js.map +1 -0
  1005. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/timerRole.js +34 -0
  1006. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/timerRole.js.map +1 -0
  1007. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/toolbarRole.js +41 -0
  1008. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/toolbarRole.js.map +1 -0
  1009. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tooltipRole.js +34 -0
  1010. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/tooltipRole.js.map +1 -0
  1011. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treeRole.js +40 -0
  1012. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treeRole.js.map +1 -0
  1013. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treegridRole.js +34 -0
  1014. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treegridRole.js.map +1 -0
  1015. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treeitemRole.js +39 -0
  1016. package/dist/esm/node_modules/aria-query/lib/etc/roles/literal/treeitemRole.js.map +1 -0
  1017. package/dist/esm/node_modules/aria-query/lib/index.js +39 -0
  1018. package/dist/esm/node_modules/aria-query/lib/index.js.map +1 -0
  1019. package/dist/esm/node_modules/aria-query/lib/roleElementMap.js +98 -0
  1020. package/dist/esm/node_modules/aria-query/lib/roleElementMap.js.map +1 -0
  1021. package/dist/esm/node_modules/aria-query/lib/rolesMap.js +130 -0
  1022. package/dist/esm/node_modules/aria-query/lib/rolesMap.js.map +1 -0
  1023. package/dist/esm/node_modules/aria-query/lib/util/iterationDecorator.js +29 -0
  1024. package/dist/esm/node_modules/aria-query/lib/util/iterationDecorator.js.map +1 -0
  1025. package/dist/esm/node_modules/aria-query/lib/util/iteratorProxy.js +45 -0
  1026. package/dist/esm/node_modules/aria-query/lib/util/iteratorProxy.js.map +1 -0
  1027. package/dist/esm/node_modules/chance/chance.js +11705 -0
  1028. package/dist/esm/node_modules/chance/chance.js.map +1 -0
  1029. package/dist/esm/node_modules/dequal/lite/index.js +43 -0
  1030. package/dist/esm/node_modules/dequal/lite/index.js.map +1 -0
  1031. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-description.js +37 -0
  1032. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-description.js.map +1 -0
  1033. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-name-and-description.js +537 -0
  1034. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-name-and-description.js.map +1 -0
  1035. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-name.js +26 -0
  1036. package/dist/esm/node_modules/dom-accessibility-api/dist/accessible-name.js.map +1 -0
  1037. package/dist/esm/node_modules/dom-accessibility-api/dist/getRole.js +187 -0
  1038. package/dist/esm/node_modules/dom-accessibility-api/dist/getRole.js.map +1 -0
  1039. package/dist/esm/node_modules/dom-accessibility-api/dist/polyfills/SetLike.js +62 -0
  1040. package/dist/esm/node_modules/dom-accessibility-api/dist/polyfills/SetLike.js.map +1 -0
  1041. package/dist/esm/node_modules/dom-accessibility-api/dist/polyfills/array.from.js +76 -0
  1042. package/dist/esm/node_modules/dom-accessibility-api/dist/polyfills/array.from.js.map +1 -0
  1043. package/dist/esm/node_modules/dom-accessibility-api/dist/util.js +83 -0
  1044. package/dist/esm/node_modules/dom-accessibility-api/dist/util.js.map +1 -0
  1045. package/dist/esm/node_modules/lz-string/libs/lz-string.js +519 -0
  1046. package/dist/esm/node_modules/lz-string/libs/lz-string.js.map +1 -0
  1047. package/dist/esm/test/mocks/DataQuery.js +14 -0
  1048. package/dist/esm/test/mocks/DataQuery.js.map +1 -0
  1049. package/dist/esm/test/mocks/Datasource.js +80 -0
  1050. package/dist/esm/test/mocks/Datasource.js.map +1 -0
  1051. package/dist/esm/test/mocks/Plugin.js +96 -0
  1052. package/dist/esm/test/mocks/Plugin.js.map +1 -0
  1053. package/dist/esm/test/mocks/QueryEditorProps.js +43 -0
  1054. package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -0
  1055. package/dist/esm/test/mocks/utils.js +22 -0
  1056. package/dist/esm/test/mocks/utils.js.map +1 -0
  1057. package/package.json +3 -4
  1058. package/dist/cjs/index.js +0 -9739
  1059. package/dist/cjs/index.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { uniqBy } from 'lodash';
2
- import React, { useState, useRef } from 'react';
2
+ import React__default, { useState, useRef } from 'react';
3
3
  import { v4 } from 'uuid';
4
4
  import { toOption } from '@grafana/data';
5
5
  import { selectors } from '@grafana/e2e-selectors';
@@ -44,7 +44,7 @@ function LabelFilterItem({
44
44
  };
45
45
  const isConflicting = isConflictingLabelFilter(item, items);
46
46
  const { current: id } = useRef(v4());
47
- return /* @__PURE__ */ React.createElement("div", { "data-testid": "visual-query-builder-dimensions-filter-item" }, /* @__PURE__ */ React.createElement(InlineField, { error: CONFLICTING_LABEL_FILTER_ERROR_MESSAGE, invalid: isConflicting ? true : undefined }, /* @__PURE__ */ React.createElement(InputGroup, null, /* @__PURE__ */ React.createElement(
47
+ return /* @__PURE__ */ React__default.createElement("div", { "data-testid": "visual-query-builder-dimensions-filter-item" }, /* @__PURE__ */ React__default.createElement(InlineField, { error: CONFLICTING_LABEL_FILTER_ERROR_MESSAGE, invalid: isConflicting ? true : undefined }, /* @__PURE__ */ React__default.createElement(InputGroup, null, /* @__PURE__ */ React__default.createElement(
48
48
  Select,
49
49
  {
50
50
  placeholder: "Select label",
@@ -77,7 +77,7 @@ function LabelFilterItem({
77
77
  },
78
78
  invalid: isConflicting || invalidLabel
79
79
  }
80
- ), /* @__PURE__ */ React.createElement(
80
+ ), /* @__PURE__ */ React__default.createElement(
81
81
  Select,
82
82
  {
83
83
  "data-testid": selectors.components.QueryBuilder.matchOperatorSelect,
@@ -95,7 +95,7 @@ function LabelFilterItem({
95
95
  },
96
96
  invalid: isConflicting
97
97
  }
98
- ), /* @__PURE__ */ React.createElement(
98
+ ), /* @__PURE__ */ React__default.createElement(
99
99
  Select,
100
100
  {
101
101
  placeholder: "Select value",
@@ -142,7 +142,7 @@ function LabelFilterItem({
142
142
  },
143
143
  invalid: isConflicting || invalidValue
144
144
  }
145
- ), /* @__PURE__ */ React.createElement(AccessoryButton, { "aria-label": "remove", icon: "times", variant: "secondary", onClick: onDelete }))));
145
+ ), /* @__PURE__ */ React__default.createElement(AccessoryButton, { "aria-label": "remove", icon: "times", variant: "secondary", onClick: onDelete }))));
146
146
  }
147
147
  const operators = [
148
148
  { label: "=", value: "=", description: "Equals", isMultiValue: false },
@@ -1 +1 @@
1
- {"version":3,"file":"LabelFilterItem.js","sources":["../../../../../src/components/VisualQueryBuilder/components/LabelFilterItem.tsx"],"sourcesContent":["import { uniqBy } from 'lodash';\nimport React, { useRef, useState } from 'react';\nimport { v4 } from 'uuid';\n\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { InlineField, Select } from '@grafana/ui';\n\nimport { type QueryBuilderLabelFilter } from '../types';\nimport { InputGroup } from '../../QueryEditor/InputGroup';\nimport { AccessoryButton } from '../../QueryEditor/AccessoryButton';\n\nconst CONFLICTING_LABEL_FILTER_ERROR_MESSAGE = 'You have conflicting label filters';\ninterface Props {\n defaultOp: string;\n item: Partial<QueryBuilderLabelFilter>;\n items: Array<Partial<QueryBuilderLabelFilter>>;\n onChange: (value: Partial<QueryBuilderLabelFilter>) => void;\n onGetLabelNames: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<Array<SelectableValue<string>>>;\n onGetLabelValues: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<Array<SelectableValue<string>>>;\n onDelete: () => void;\n invalidLabel?: boolean;\n invalidValue?: boolean;\n multiValueSeparator?: string;\n}\n\nexport function LabelFilterItem({\n item,\n items,\n defaultOp,\n onChange,\n onDelete,\n onGetLabelNames,\n onGetLabelValues,\n invalidLabel,\n invalidValue,\n multiValueSeparator = '|',\n}: Props) {\n const [state, setState] = useState<{\n labelNames?: Array<SelectableValue<string>>;\n labelValues?: Array<SelectableValue<string>>;\n isLoadingLabelNames?: boolean;\n isLoadingLabelValues?: boolean;\n }>({});\n // there's a bug in react-select where the menu doesn't recalculate its position when the options are loaded asynchronously\n // see https://github.com/grafana/grafana/issues/63558\n // instead, we explicitly control the menu visibility and prevent showing it until the options have fully loaded\n const [labelNamesMenuOpen, setLabelNamesMenuOpen] = useState(false);\n const [labelValuesMenuOpen, setLabelValuesMenuOpen] = useState(false);\n\n const isMultiSelect = (operator = item.op) => {\n return operators.find((op) => op.label === operator)?.isMultiValue;\n };\n\n const getSelectOptionsFromString = (item?: string): string[] => {\n if (item) {\n if (item.indexOf(multiValueSeparator) > 0) {\n return item.split(multiValueSeparator);\n }\n return [item];\n }\n return [];\n };\n\n const getOptions = (): Array<SelectableValue<string>> => {\n const labelValues = state.labelValues ? [...state.labelValues] : [];\n const selectedOptions = getSelectOptionsFromString(item?.value).map(toOption);\n\n // Remove possible duplicated values\n return uniqBy([...selectedOptions, ...labelValues], 'value');\n };\n\n const isConflicting = isConflictingLabelFilter(item, items);\n const { current: id } = useRef(v4());\n\n return (\n <div data-testid=\"visual-query-builder-dimensions-filter-item\">\n <InlineField error={CONFLICTING_LABEL_FILTER_ERROR_MESSAGE} invalid={isConflicting ? true : undefined}>\n <InputGroup>\n <Select<string>\n placeholder=\"Select label\"\n data-testid={selectors.components.QueryBuilder.labelSelect}\n inputId={`visual-query-builder-dimensions-filter-item-key-${id}`}\n width=\"auto\"\n value={item.label ? toOption(item.label) : null}\n allowCustomValue\n onOpenMenu={async () => {\n setState({ isLoadingLabelNames: true });\n const labelNames = await onGetLabelNames(item);\n setLabelNamesMenuOpen(true);\n setState({ labelNames, isLoadingLabelNames: undefined });\n }}\n onCloseMenu={() => {\n setLabelNamesMenuOpen(false);\n }}\n isOpen={labelNamesMenuOpen}\n isLoading={state.isLoadingLabelNames}\n options={state.labelNames}\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n op: item.op ?? defaultOp,\n label: change.value,\n });\n }\n }}\n invalid={isConflicting || invalidLabel}\n />\n\n <Select<string>\n data-testid={selectors.components.QueryBuilder.matchOperatorSelect}\n value={toOption(item.op ?? defaultOp)}\n options={operators}\n width=\"auto\"\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n op: change.value,\n value: isMultiSelect(change.value) ? item.value : getSelectOptionsFromString(item?.value)[0],\n });\n }\n }}\n invalid={isConflicting}\n />\n\n <Select<string>\n placeholder=\"Select value\"\n data-testid={selectors.components.QueryBuilder.valueSelect}\n inputId={`visual-query-builder-dimensions-filter-item-value-${id}`}\n width=\"auto\"\n value={\n isMultiSelect()\n ? getSelectOptionsFromString(item?.value).map(toOption)\n : getSelectOptionsFromString(item?.value).map(toOption)[0]\n }\n allowCustomValue\n onOpenMenu={async () => {\n setState({ isLoadingLabelValues: true });\n const labelValues = await onGetLabelValues(item);\n setState({\n ...state,\n labelValues,\n isLoadingLabelValues: undefined,\n });\n setLabelValuesMenuOpen(true);\n }}\n onCloseMenu={() => {\n setLabelValuesMenuOpen(false);\n }}\n isOpen={labelValuesMenuOpen}\n isMulti={isMultiSelect()}\n isLoading={state.isLoadingLabelValues}\n options={getOptions()}\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n value: change.value,\n op: item.op ?? defaultOp,\n });\n } else {\n // otherwise, we're dealing with a multi-value select which is array of options\n const changes = change\n .map((change: SelectableValue<string>) => {\n if (change.value) {\n return change.value;\n } else {\n return undefined;\n }\n })\n .filter((val: string | undefined) => val !== undefined)\n .join(multiValueSeparator);\n onChange({ ...item, value: changes, op: item.op ?? defaultOp });\n }\n }}\n invalid={isConflicting || invalidValue}\n />\n <AccessoryButton aria-label=\"remove\" icon=\"times\" variant=\"secondary\" onClick={onDelete} />\n </InputGroup>\n </InlineField>\n </div>\n );\n}\n\nconst operators = [\n { label: '=', value: '=', description: 'Equals', isMultiValue: false },\n { label: '!=', value: '!=', description: 'Does not equal', isMultiValue: false },\n { label: '=~', value: '=~', description: 'Matches regex', isMultiValue: true },\n { label: '!~', value: '!~', description: 'Does not match regex', isMultiValue: true },\n];\n\nexport function isConflictingLabelFilter(\n newLabel: Partial<QueryBuilderLabelFilter>,\n labels: Array<Partial<QueryBuilderLabelFilter>>\n): boolean {\n if (!newLabel.label || !newLabel.op || !newLabel.value) {\n return false;\n }\n\n if (labels.length < 2) {\n return false;\n }\n\n const operationIsNegative = newLabel.op.toString().startsWith('!');\n\n const candidates = labels.filter(\n (label) => label.label === newLabel.label && label.value === newLabel.value && label.op !== newLabel.op\n );\n\n const conflict = candidates.some((candidate) => {\n if (operationIsNegative && candidate?.op?.toString().startsWith('!') === false) {\n return true;\n }\n if (operationIsNegative === false && candidate?.op?.toString().startsWith('!')) {\n return true;\n }\n return false;\n });\n\n return conflict;\n}\n"],"names":["_a","item","change"],"mappings":"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"}
1
+ {"version":3,"file":"LabelFilterItem.js","sources":["../../../../../src/components/VisualQueryBuilder/components/LabelFilterItem.tsx"],"sourcesContent":["import { uniqBy } from 'lodash';\nimport React, { useRef, useState } from 'react';\nimport { v4 } from 'uuid';\n\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { InlineField, Select } from '@grafana/ui';\n\nimport { type QueryBuilderLabelFilter } from '../types';\nimport { InputGroup } from '../../QueryEditor/InputGroup';\nimport { AccessoryButton } from '../../QueryEditor/AccessoryButton';\n\nconst CONFLICTING_LABEL_FILTER_ERROR_MESSAGE = 'You have conflicting label filters';\ninterface Props {\n defaultOp: string;\n item: Partial<QueryBuilderLabelFilter>;\n items: Array<Partial<QueryBuilderLabelFilter>>;\n onChange: (value: Partial<QueryBuilderLabelFilter>) => void;\n onGetLabelNames: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<Array<SelectableValue<string>>>;\n onGetLabelValues: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<Array<SelectableValue<string>>>;\n onDelete: () => void;\n invalidLabel?: boolean;\n invalidValue?: boolean;\n multiValueSeparator?: string;\n}\n\nexport function LabelFilterItem({\n item,\n items,\n defaultOp,\n onChange,\n onDelete,\n onGetLabelNames,\n onGetLabelValues,\n invalidLabel,\n invalidValue,\n multiValueSeparator = '|',\n}: Props) {\n const [state, setState] = useState<{\n labelNames?: Array<SelectableValue<string>>;\n labelValues?: Array<SelectableValue<string>>;\n isLoadingLabelNames?: boolean;\n isLoadingLabelValues?: boolean;\n }>({});\n // there's a bug in react-select where the menu doesn't recalculate its position when the options are loaded asynchronously\n // see https://github.com/grafana/grafana/issues/63558\n // instead, we explicitly control the menu visibility and prevent showing it until the options have fully loaded\n const [labelNamesMenuOpen, setLabelNamesMenuOpen] = useState(false);\n const [labelValuesMenuOpen, setLabelValuesMenuOpen] = useState(false);\n\n const isMultiSelect = (operator = item.op) => {\n return operators.find((op) => op.label === operator)?.isMultiValue;\n };\n\n const getSelectOptionsFromString = (item?: string): string[] => {\n if (item) {\n if (item.indexOf(multiValueSeparator) > 0) {\n return item.split(multiValueSeparator);\n }\n return [item];\n }\n return [];\n };\n\n const getOptions = (): Array<SelectableValue<string>> => {\n const labelValues = state.labelValues ? [...state.labelValues] : [];\n const selectedOptions = getSelectOptionsFromString(item?.value).map(toOption);\n\n // Remove possible duplicated values\n return uniqBy([...selectedOptions, ...labelValues], 'value');\n };\n\n const isConflicting = isConflictingLabelFilter(item, items);\n const { current: id } = useRef(v4());\n\n return (\n <div data-testid=\"visual-query-builder-dimensions-filter-item\">\n <InlineField error={CONFLICTING_LABEL_FILTER_ERROR_MESSAGE} invalid={isConflicting ? true : undefined}>\n <InputGroup>\n <Select<string>\n placeholder=\"Select label\"\n data-testid={selectors.components.QueryBuilder.labelSelect}\n inputId={`visual-query-builder-dimensions-filter-item-key-${id}`}\n width=\"auto\"\n value={item.label ? toOption(item.label) : null}\n allowCustomValue\n onOpenMenu={async () => {\n setState({ isLoadingLabelNames: true });\n const labelNames = await onGetLabelNames(item);\n setLabelNamesMenuOpen(true);\n setState({ labelNames, isLoadingLabelNames: undefined });\n }}\n onCloseMenu={() => {\n setLabelNamesMenuOpen(false);\n }}\n isOpen={labelNamesMenuOpen}\n isLoading={state.isLoadingLabelNames}\n options={state.labelNames}\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n op: item.op ?? defaultOp,\n label: change.value,\n });\n }\n }}\n invalid={isConflicting || invalidLabel}\n />\n\n <Select<string>\n data-testid={selectors.components.QueryBuilder.matchOperatorSelect}\n value={toOption(item.op ?? defaultOp)}\n options={operators}\n width=\"auto\"\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n op: change.value,\n value: isMultiSelect(change.value) ? item.value : getSelectOptionsFromString(item?.value)[0],\n });\n }\n }}\n invalid={isConflicting}\n />\n\n <Select<string>\n placeholder=\"Select value\"\n data-testid={selectors.components.QueryBuilder.valueSelect}\n inputId={`visual-query-builder-dimensions-filter-item-value-${id}`}\n width=\"auto\"\n value={\n isMultiSelect()\n ? getSelectOptionsFromString(item?.value).map(toOption)\n : getSelectOptionsFromString(item?.value).map(toOption)[0]\n }\n allowCustomValue\n onOpenMenu={async () => {\n setState({ isLoadingLabelValues: true });\n const labelValues = await onGetLabelValues(item);\n setState({\n ...state,\n labelValues,\n isLoadingLabelValues: undefined,\n });\n setLabelValuesMenuOpen(true);\n }}\n onCloseMenu={() => {\n setLabelValuesMenuOpen(false);\n }}\n isOpen={labelValuesMenuOpen}\n isMulti={isMultiSelect()}\n isLoading={state.isLoadingLabelValues}\n options={getOptions()}\n onChange={(change) => {\n if (change.value) {\n onChange({\n ...item,\n value: change.value,\n op: item.op ?? defaultOp,\n });\n } else {\n // otherwise, we're dealing with a multi-value select which is array of options\n const changes = change\n .map((change: SelectableValue<string>) => {\n if (change.value) {\n return change.value;\n } else {\n return undefined;\n }\n })\n .filter((val: string | undefined) => val !== undefined)\n .join(multiValueSeparator);\n onChange({ ...item, value: changes, op: item.op ?? defaultOp });\n }\n }}\n invalid={isConflicting || invalidValue}\n />\n <AccessoryButton aria-label=\"remove\" icon=\"times\" variant=\"secondary\" onClick={onDelete} />\n </InputGroup>\n </InlineField>\n </div>\n );\n}\n\nconst operators = [\n { label: '=', value: '=', description: 'Equals', isMultiValue: false },\n { label: '!=', value: '!=', description: 'Does not equal', isMultiValue: false },\n { label: '=~', value: '=~', description: 'Matches regex', isMultiValue: true },\n { label: '!~', value: '!~', description: 'Does not match regex', isMultiValue: true },\n];\n\nexport function isConflictingLabelFilter(\n newLabel: Partial<QueryBuilderLabelFilter>,\n labels: Array<Partial<QueryBuilderLabelFilter>>\n): boolean {\n if (!newLabel.label || !newLabel.op || !newLabel.value) {\n return false;\n }\n\n if (labels.length < 2) {\n return false;\n }\n\n const operationIsNegative = newLabel.op.toString().startsWith('!');\n\n const candidates = labels.filter(\n (label) => label.label === newLabel.label && label.value === newLabel.value && label.op !== newLabel.op\n );\n\n const conflict = candidates.some((candidate) => {\n if (operationIsNegative && candidate?.op?.toString().startsWith('!') === false) {\n return true;\n }\n if (operationIsNegative === false && candidate?.op?.toString().startsWith('!')) {\n return true;\n }\n return false;\n });\n\n return conflict;\n}\n"],"names":["_a","item","React","change"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { isEqual } from 'lodash';
2
- import React, { useState, useEffect } from 'react';
2
+ import React__default, { useState, useEffect } from 'react';
3
3
  import '@grafana/data';
4
4
  import { EditorField } from '../../QueryEditor/EditorField.js';
5
5
  import { EditorFieldGroup } from '../../QueryEditor/EditorFieldGroup.js';
@@ -34,19 +34,19 @@ function LabelFilters({
34
34
  }
35
35
  };
36
36
  const hasLabelFilter = items.some((item) => item.label && item.value);
37
- return /* @__PURE__ */ React.createElement(EditorFieldGroup, null, /* @__PURE__ */ React.createElement(
37
+ return /* @__PURE__ */ React__default.createElement(EditorFieldGroup, null, /* @__PURE__ */ React__default.createElement(
38
38
  EditorField,
39
39
  {
40
40
  label: "Label filters",
41
41
  error: MISSING_LABEL_FILTER_ERROR_MESSAGE,
42
42
  invalid: labelFilterRequired && !hasLabelFilter
43
43
  },
44
- /* @__PURE__ */ React.createElement(
44
+ /* @__PURE__ */ React__default.createElement(
45
45
  EditorList,
46
46
  {
47
47
  items,
48
48
  onChange: onLabelsChange,
49
- renderItem: (item, onChangeItem, onDelete) => /* @__PURE__ */ React.createElement(
49
+ renderItem: (item, onChangeItem, onDelete) => /* @__PURE__ */ React__default.createElement(
50
50
  LabelFilterItem,
51
51
  {
52
52
  item,
@@ -1 +1 @@
1
- {"version":3,"file":"LabelFilters.js","sources":["../../../../../src/components/VisualQueryBuilder/components/LabelFilters.tsx"],"sourcesContent":["import { isEqual } from 'lodash';\nimport React, { useEffect, useState } from 'react';\n\nimport { type SelectableValue } from '@grafana/data';\n\nimport { type QueryBuilderLabelFilter } from '../types';\n\nimport { EditorField } from '../../QueryEditor/EditorField';\nimport { EditorFieldGroup } from '../../QueryEditor/EditorFieldGroup';\nimport { EditorList } from '../../QueryEditor/EditorList';\nimport { LabelFilterItem } from './LabelFilterItem';\n\nexport const MISSING_LABEL_FILTER_ERROR_MESSAGE = 'Select at least 1 label filter (label and value)';\n\nexport interface Props {\n labelsFilters: QueryBuilderLabelFilter[];\n onChange: (labelFilters: QueryBuilderLabelFilter[]) => void;\n onGetLabelNames: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<SelectableValue[]>;\n onGetLabelValues: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<SelectableValue[]>;\n /** If set to true, component will show error message until at least 1 filter is selected */\n labelFilterRequired?: boolean;\n multiValueSeparator?: string;\n}\n\nexport function LabelFilters({\n labelsFilters,\n onChange,\n onGetLabelNames,\n onGetLabelValues,\n labelFilterRequired,\n multiValueSeparator,\n}: Props) {\n const defaultOp = '=';\n const [items, setItems] = useState<Array<Partial<QueryBuilderLabelFilter>>>([{ op: defaultOp }]);\n\n useEffect(() => {\n if (labelsFilters.length > 0) {\n setItems(labelsFilters);\n } else {\n setItems([{ op: defaultOp }]);\n }\n }, [labelsFilters]);\n\n const onLabelsChange = (newItems: Array<Partial<QueryBuilderLabelFilter>>) => {\n setItems(newItems);\n\n // Extract full label filters with both label & value\n const newLabels = newItems.filter(\n (item): item is QueryBuilderLabelFilter => item.label !== undefined && item.value !== undefined\n );\n if (!isEqual(newLabels, labelsFilters)) {\n onChange(newLabels);\n }\n };\n\n const hasLabelFilter = items.some((item) => item.label && item.value);\n\n return (\n <EditorFieldGroup>\n <EditorField\n label=\"Label filters\"\n error={MISSING_LABEL_FILTER_ERROR_MESSAGE}\n invalid={labelFilterRequired && !hasLabelFilter}\n >\n <EditorList\n items={items}\n onChange={onLabelsChange}\n renderItem={(item: Partial<QueryBuilderLabelFilter>, onChangeItem, onDelete) => (\n <LabelFilterItem\n item={item}\n items={items}\n defaultOp={defaultOp}\n onChange={onChangeItem}\n onDelete={onDelete}\n onGetLabelNames={onGetLabelNames}\n onGetLabelValues={onGetLabelValues}\n invalidLabel={labelFilterRequired && !item.label}\n invalidValue={labelFilterRequired && !item.value}\n multiValueSeparator={multiValueSeparator}\n />\n )}\n />\n </EditorField>\n </EditorFieldGroup>\n );\n}\n"],"names":[],"mappings":";;;;;;;;AAYO,MAAM,kCAAqC,GAAA;AAY3C,SAAS,YAAa,CAAA;AAAA,EAC3B,aAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,mBAAA;AAAA,EACA;AACF,CAAU,EAAA;AACR,EAAA,MAAM,SAAY,GAAA,GAAA;AAClB,EAAM,MAAA,CAAC,KAAO,EAAA,QAAQ,CAAI,GAAA,QAAA,CAAkD,CAAC,EAAE,EAAA,EAAI,SAAU,EAAC,CAAC,CAAA;AAE/F,EAAA,SAAA,CAAU,MAAM;AACd,IAAI,IAAA,aAAA,CAAc,SAAS,CAAG,EAAA;AAC5B,MAAA,QAAA,CAAS,aAAa,CAAA;AAAA,KACjB,MAAA;AACL,MAAA,QAAA,CAAS,CAAC,EAAE,EAAI,EAAA,SAAA,EAAW,CAAC,CAAA;AAAA;AAC9B,GACF,EAAG,CAAC,aAAa,CAAC,CAAA;AAElB,EAAM,MAAA,cAAA,GAAiB,CAAC,QAAsD,KAAA;AAC5E,IAAA,QAAA,CAAS,QAAQ,CAAA;AAGjB,IAAA,MAAM,YAAY,QAAS,CAAA,MAAA;AAAA,MACzB,CAAC,IAA0C,KAAA,IAAA,CAAK,KAAU,KAAA,SAAA,IAAa,KAAK,KAAU,KAAA;AAAA,KACxF;AACA,IAAA,IAAI,CAAC,OAAA,CAAQ,SAAW,EAAA,aAAa,CAAG,EAAA;AACtC,MAAA,QAAA,CAAS,SAAS,CAAA;AAAA;AACpB,GACF;AAEA,EAAM,MAAA,cAAA,GAAiB,MAAM,IAAK,CAAA,CAAC,SAAS,IAAK,CAAA,KAAA,IAAS,KAAK,KAAK,CAAA;AAEpE,EAAA,2CACG,gBACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAM,EAAA,eAAA;AAAA,MACN,KAAO,EAAA,kCAAA;AAAA,MACP,OAAA,EAAS,uBAAuB,CAAC;AAAA,KAAA;AAAA,oBAEjC,KAAA,CAAA,aAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,QAAU,EAAA,cAAA;AAAA,QACV,UAAY,EAAA,CAAC,IAAwC,EAAA,YAAA,EAAc,QACjE,qBAAA,KAAA,CAAA,aAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,IAAA;AAAA,YACA,KAAA;AAAA,YACA,SAAA;AAAA,YACA,QAAU,EAAA,YAAA;AAAA,YACV,QAAA;AAAA,YACA,eAAA;AAAA,YACA,gBAAA;AAAA,YACA,YAAA,EAAc,mBAAuB,IAAA,CAAC,IAAK,CAAA,KAAA;AAAA,YAC3C,YAAA,EAAc,mBAAuB,IAAA,CAAC,IAAK,CAAA,KAAA;AAAA,YAC3C;AAAA;AAAA;AACF;AAAA;AAEJ,GAEJ,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"LabelFilters.js","sources":["../../../../../src/components/VisualQueryBuilder/components/LabelFilters.tsx"],"sourcesContent":["import { isEqual } from 'lodash';\nimport React, { useEffect, useState } from 'react';\n\nimport { type SelectableValue } from '@grafana/data';\n\nimport { type QueryBuilderLabelFilter } from '../types';\n\nimport { EditorField } from '../../QueryEditor/EditorField';\nimport { EditorFieldGroup } from '../../QueryEditor/EditorFieldGroup';\nimport { EditorList } from '../../QueryEditor/EditorList';\nimport { LabelFilterItem } from './LabelFilterItem';\n\nexport const MISSING_LABEL_FILTER_ERROR_MESSAGE = 'Select at least 1 label filter (label and value)';\n\nexport interface Props {\n labelsFilters: QueryBuilderLabelFilter[];\n onChange: (labelFilters: QueryBuilderLabelFilter[]) => void;\n onGetLabelNames: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<SelectableValue[]>;\n onGetLabelValues: (forLabel: Partial<QueryBuilderLabelFilter>) => Promise<SelectableValue[]>;\n /** If set to true, component will show error message until at least 1 filter is selected */\n labelFilterRequired?: boolean;\n multiValueSeparator?: string;\n}\n\nexport function LabelFilters({\n labelsFilters,\n onChange,\n onGetLabelNames,\n onGetLabelValues,\n labelFilterRequired,\n multiValueSeparator,\n}: Props) {\n const defaultOp = '=';\n const [items, setItems] = useState<Array<Partial<QueryBuilderLabelFilter>>>([{ op: defaultOp }]);\n\n useEffect(() => {\n if (labelsFilters.length > 0) {\n setItems(labelsFilters);\n } else {\n setItems([{ op: defaultOp }]);\n }\n }, [labelsFilters]);\n\n const onLabelsChange = (newItems: Array<Partial<QueryBuilderLabelFilter>>) => {\n setItems(newItems);\n\n // Extract full label filters with both label & value\n const newLabels = newItems.filter(\n (item): item is QueryBuilderLabelFilter => item.label !== undefined && item.value !== undefined\n );\n if (!isEqual(newLabels, labelsFilters)) {\n onChange(newLabels);\n }\n };\n\n const hasLabelFilter = items.some((item) => item.label && item.value);\n\n return (\n <EditorFieldGroup>\n <EditorField\n label=\"Label filters\"\n error={MISSING_LABEL_FILTER_ERROR_MESSAGE}\n invalid={labelFilterRequired && !hasLabelFilter}\n >\n <EditorList\n items={items}\n onChange={onLabelsChange}\n renderItem={(item: Partial<QueryBuilderLabelFilter>, onChangeItem, onDelete) => (\n <LabelFilterItem\n item={item}\n items={items}\n defaultOp={defaultOp}\n onChange={onChangeItem}\n onDelete={onDelete}\n onGetLabelNames={onGetLabelNames}\n onGetLabelValues={onGetLabelValues}\n invalidLabel={labelFilterRequired && !item.label}\n invalidValue={labelFilterRequired && !item.value}\n multiValueSeparator={multiValueSeparator}\n />\n )}\n />\n </EditorField>\n </EditorFieldGroup>\n );\n}\n"],"names":["React"],"mappings":";;;;;;;;AAYO,MAAM,kCAAqC,GAAA;AAY3C,SAAS,YAAa,CAAA;AAAA,EAC3B,aAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,mBAAA;AAAA,EACA;AACF,CAAU,EAAA;AACR,EAAA,MAAM,SAAY,GAAA,GAAA;AAClB,EAAM,MAAA,CAAC,KAAO,EAAA,QAAQ,CAAI,GAAA,QAAA,CAAkD,CAAC,EAAE,EAAA,EAAI,SAAU,EAAC,CAAC,CAAA;AAE/F,EAAA,SAAA,CAAU,MAAM;AACd,IAAI,IAAA,aAAA,CAAc,SAAS,CAAG,EAAA;AAC5B,MAAA,QAAA,CAAS,aAAa,CAAA;AAAA,KACjB,MAAA;AACL,MAAA,QAAA,CAAS,CAAC,EAAE,EAAI,EAAA,SAAA,EAAW,CAAC,CAAA;AAAA;AAC9B,GACF,EAAG,CAAC,aAAa,CAAC,CAAA;AAElB,EAAM,MAAA,cAAA,GAAiB,CAAC,QAAsD,KAAA;AAC5E,IAAA,QAAA,CAAS,QAAQ,CAAA;AAGjB,IAAA,MAAM,YAAY,QAAS,CAAA,MAAA;AAAA,MACzB,CAAC,IAA0C,KAAA,IAAA,CAAK,KAAU,KAAA,SAAA,IAAa,KAAK,KAAU,KAAA;AAAA,KACxF;AACA,IAAA,IAAI,CAAC,OAAA,CAAQ,SAAW,EAAA,aAAa,CAAG,EAAA;AACtC,MAAA,QAAA,CAAS,SAAS,CAAA;AAAA;AACpB,GACF;AAEA,EAAM,MAAA,cAAA,GAAiB,MAAM,IAAK,CAAA,CAAC,SAAS,IAAK,CAAA,KAAA,IAAS,KAAK,KAAK,CAAA;AAEpE,EAAA,oDACG,gBACC,EAAA,IAAA,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAM,EAAA,eAAA;AAAA,MACN,KAAO,EAAA,kCAAA;AAAA,MACP,OAAA,EAAS,uBAAuB,CAAC;AAAA,KAAA;AAAA,oBAEjCA,cAAA,CAAA,aAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,QAAU,EAAA,cAAA;AAAA,QACV,UAAY,EAAA,CAAC,IAAwC,EAAA,YAAA,EAAc,QACjE,qBAAAA,cAAA,CAAA,aAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,IAAA;AAAA,YACA,KAAA;AAAA,YACA,SAAA;AAAA,YACA,QAAU,EAAA,YAAA;AAAA,YACV,QAAA;AAAA,YACA,eAAA;AAAA,YACA,gBAAA;AAAA,YACA,YAAA,EAAc,mBAAuB,IAAA,CAAC,IAAK,CAAA,KAAA;AAAA,YAC3C,YAAA,EAAc,mBAAuB,IAAA,CAAC,IAAK,CAAA,KAAA;AAAA,YAC3C;AAAA;AAAA;AACF;AAAA;AAEJ,GAEJ,CAAA;AAEJ;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { cx, css } from '@emotion/css';
2
- import React from 'react';
2
+ import React__default from 'react';
3
3
  import { Draggable } from '@hello-pangea/dnd';
4
4
  import '@grafana/data';
5
5
  import { useTheme2, InlineField } from '@grafana/ui';
@@ -25,7 +25,7 @@ function OperationEditor({
25
25
  const isConflicting = isConflictingOperation ? isConflictingOperation(operation, query.operations) : false;
26
26
  const styles = getStyles(theme);
27
27
  if (!def) {
28
- return /* @__PURE__ */ React.createElement("span", null, "Operation ", operation.id, " not found");
28
+ return /* @__PURE__ */ React__default.createElement("span", null, "Operation ", operation.id, " not found");
29
29
  }
30
30
  const isInvalid = (isDragging) => {
31
31
  if (isDragging) {
@@ -33,14 +33,14 @@ function OperationEditor({
33
33
  }
34
34
  return isConflicting ? true : undefined;
35
35
  };
36
- return /* @__PURE__ */ React.createElement(Draggable, { draggableId: `operation-${index}`, index }, (provided, snapshot) => /* @__PURE__ */ React.createElement(
36
+ return /* @__PURE__ */ React__default.createElement(Draggable, { draggableId: `operation-${index}`, index }, (provided, snapshot) => /* @__PURE__ */ React__default.createElement(
37
37
  InlineField,
38
38
  {
39
39
  error: "You have conflicting label filters",
40
40
  invalid: isInvalid(snapshot.isDragging),
41
41
  className: cx(styles.error, styles.cardWrapper)
42
42
  },
43
- /* @__PURE__ */ React.createElement(
43
+ /* @__PURE__ */ React__default.createElement(
44
44
  OperationEditorBody,
45
45
  {
46
46
  provided,
@@ -1 +1 @@
1
- {"version":3,"file":"OperationEditor.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationEditor.tsx"],"sourcesContent":["import { css, cx } from '@emotion/css';\nimport React from 'react';\nimport { Draggable } from '@hello-pangea/dnd';\n\nimport { type DataSourceApi, type GrafanaTheme2, type TimeRange } from '@grafana/data';\nimport { InlineField, useTheme2 } from '@grafana/ui';\n\nimport { type QueryBuilderOperation, type VisualQuery, type VisualQueryModeller } from '../types';\nimport { OperationEditorBody } from './OperationEditorBody';\n\ninterface Props<T extends VisualQuery> {\n operation: QueryBuilderOperation;\n index: number;\n query: T;\n datasource: DataSourceApi;\n queryModeller: VisualQueryModeller;\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n onRunQuery: () => void;\n flash?: boolean;\n highlight?: boolean;\n timeRange?: TimeRange;\n isConflictingOperation?: (operation: QueryBuilderOperation, otherOperations: QueryBuilderOperation[]) => boolean;\n}\n\nexport function OperationEditor<T extends VisualQuery>({\n operation,\n index,\n onRemove,\n onToggle,\n onChange,\n onRunQuery,\n queryModeller,\n query,\n datasource,\n flash,\n highlight,\n timeRange,\n isConflictingOperation,\n}: Props<T>) {\n const def = queryModeller.getOperationDefinition(operation.id);\n\n const theme = useTheme2();\n const isConflicting = isConflictingOperation ? isConflictingOperation(operation, query.operations) : false;\n const styles = getStyles(theme, isConflicting);\n\n if (!def) {\n return <span>Operation {operation.id} not found</span>;\n }\n\n const isInvalid = (isDragging: boolean) => {\n if (isDragging) {\n return undefined;\n }\n\n return isConflicting ? true : undefined;\n };\n\n return (\n <Draggable draggableId={`operation-${index}`} index={index}>\n {(provided, snapshot) => (\n <InlineField\n error={'You have conflicting label filters'}\n invalid={isInvalid(snapshot.isDragging)}\n className={cx(styles.error, styles.cardWrapper)}\n >\n <OperationEditorBody\n provided={provided}\n flash={flash}\n highlight={highlight}\n isConflicting={isConflicting}\n index={index}\n operation={operation}\n definition={def}\n onChange={onChange}\n onRemove={onRemove}\n onToggle={onToggle}\n queryModeller={queryModeller}\n query={query}\n timeRange={timeRange}\n onRunQuery={onRunQuery}\n datasource={datasource}\n />\n </InlineField>\n )}\n </Draggable>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2, isConflicting: boolean) => {\n return {\n cardWrapper: css({\n alignItems: 'stretch',\n }),\n error: css({\n marginBottom: theme.spacing(1),\n }),\n };\n};\n"],"names":[],"mappings":";;;;;;;AA0BO,SAAS,eAAuC,CAAA;AAAA,EACrD,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,aAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA;AACF,CAAa,EAAA;AACX,EAAA,MAAM,GAAM,GAAA,aAAA,CAAc,sBAAuB,CAAA,SAAA,CAAU,EAAE,CAAA;AAE7D,EAAA,MAAM,QAAQ,SAAU,EAAA;AACxB,EAAA,MAAM,gBAAgB,sBAAyB,GAAA,sBAAA,CAAuB,SAAW,EAAA,KAAA,CAAM,UAAU,CAAI,GAAA,KAAA;AACrG,EAAM,MAAA,MAAA,GAAS,SAAU,CAAA,KAAoB,CAAA;AAE7C,EAAA,IAAI,CAAC,GAAK,EAAA;AACR,IAAA,uBAAQ,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAK,YAAW,EAAA,SAAA,CAAU,IAAG,YAAU,CAAA;AAAA;AAGjD,EAAM,MAAA,SAAA,GAAY,CAAC,UAAwB,KAAA;AACzC,IAAA,IAAI,UAAY,EAAA;AACd,MAAO,OAAA,SAAA;AAAA;AAGT,IAAA,OAAO,gBAAgB,IAAO,GAAA,SAAA;AAAA,GAChC;AAEA,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,aAAU,WAAa,EAAA,CAAA,UAAA,EAAa,KAAK,CAAI,CAAA,EAAA,KAAA,EAAA,EAC3C,CAAC,QAAA,EAAU,QACV,qBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAO,EAAA,oCAAA;AAAA,MACP,OAAA,EAAS,SAAU,CAAA,QAAA,CAAS,UAAU,CAAA;AAAA,MACtC,SAAW,EAAA,EAAA,CAAG,MAAO,CAAA,KAAA,EAAO,OAAO,WAAW;AAAA,KAAA;AAAA,oBAE9C,KAAA,CAAA,aAAA;AAAA,MAAC,mBAAA;AAAA,MAAA;AAAA,QACC,QAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,UAAY,EAAA,GAAA;AAAA,QACZ,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,UAAA;AAAA,QACA;AAAA;AAAA;AACF,GAGN,CAAA;AAEJ;AAEA,MAAM,SAAA,GAAY,CAAC,KAAA,EAAsB,aAA2B,KAAA;AAClE,EAAO,OAAA;AAAA,IACL,aAAa,GAAI,CAAA;AAAA,MACf,UAAY,EAAA;AAAA,KACb,CAAA;AAAA,IACD,OAAO,GAAI,CAAA;AAAA,MACT,YAAA,EAAc,KAAM,CAAA,OAAA,CAAQ,CAAC;AAAA,KAC9B;AAAA,GACH;AACF,CAAA;;;;"}
1
+ {"version":3,"file":"OperationEditor.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationEditor.tsx"],"sourcesContent":["import { css, cx } from '@emotion/css';\nimport React from 'react';\nimport { Draggable } from '@hello-pangea/dnd';\n\nimport { type DataSourceApi, type GrafanaTheme2, type TimeRange } from '@grafana/data';\nimport { InlineField, useTheme2 } from '@grafana/ui';\n\nimport { type QueryBuilderOperation, type VisualQuery, type VisualQueryModeller } from '../types';\nimport { OperationEditorBody } from './OperationEditorBody';\n\ninterface Props<T extends VisualQuery> {\n operation: QueryBuilderOperation;\n index: number;\n query: T;\n datasource: DataSourceApi;\n queryModeller: VisualQueryModeller;\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n onRunQuery: () => void;\n flash?: boolean;\n highlight?: boolean;\n timeRange?: TimeRange;\n isConflictingOperation?: (operation: QueryBuilderOperation, otherOperations: QueryBuilderOperation[]) => boolean;\n}\n\nexport function OperationEditor<T extends VisualQuery>({\n operation,\n index,\n onRemove,\n onToggle,\n onChange,\n onRunQuery,\n queryModeller,\n query,\n datasource,\n flash,\n highlight,\n timeRange,\n isConflictingOperation,\n}: Props<T>) {\n const def = queryModeller.getOperationDefinition(operation.id);\n\n const theme = useTheme2();\n const isConflicting = isConflictingOperation ? isConflictingOperation(operation, query.operations) : false;\n const styles = getStyles(theme, isConflicting);\n\n if (!def) {\n return <span>Operation {operation.id} not found</span>;\n }\n\n const isInvalid = (isDragging: boolean) => {\n if (isDragging) {\n return undefined;\n }\n\n return isConflicting ? true : undefined;\n };\n\n return (\n <Draggable draggableId={`operation-${index}`} index={index}>\n {(provided, snapshot) => (\n <InlineField\n error={'You have conflicting label filters'}\n invalid={isInvalid(snapshot.isDragging)}\n className={cx(styles.error, styles.cardWrapper)}\n >\n <OperationEditorBody\n provided={provided}\n flash={flash}\n highlight={highlight}\n isConflicting={isConflicting}\n index={index}\n operation={operation}\n definition={def}\n onChange={onChange}\n onRemove={onRemove}\n onToggle={onToggle}\n queryModeller={queryModeller}\n query={query}\n timeRange={timeRange}\n onRunQuery={onRunQuery}\n datasource={datasource}\n />\n </InlineField>\n )}\n </Draggable>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2, isConflicting: boolean) => {\n return {\n cardWrapper: css({\n alignItems: 'stretch',\n }),\n error: css({\n marginBottom: theme.spacing(1),\n }),\n };\n};\n"],"names":["React"],"mappings":";;;;;;;AA0BO,SAAS,eAAuC,CAAA;AAAA,EACrD,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,aAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA;AACF,CAAa,EAAA;AACX,EAAA,MAAM,GAAM,GAAA,aAAA,CAAc,sBAAuB,CAAA,SAAA,CAAU,EAAE,CAAA;AAE7D,EAAA,MAAM,QAAQ,SAAU,EAAA;AACxB,EAAA,MAAM,gBAAgB,sBAAyB,GAAA,sBAAA,CAAuB,SAAW,EAAA,KAAA,CAAM,UAAU,CAAI,GAAA,KAAA;AACrG,EAAM,MAAA,MAAA,GAAS,SAAU,CAAA,KAAoB,CAAA;AAE7C,EAAA,IAAI,CAAC,GAAK,EAAA;AACR,IAAA,uBAAQA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAK,YAAW,EAAA,SAAA,CAAU,IAAG,YAAU,CAAA;AAAA;AAGjD,EAAM,MAAA,SAAA,GAAY,CAAC,UAAwB,KAAA;AACzC,IAAA,IAAI,UAAY,EAAA;AACd,MAAO,OAAA,SAAA;AAAA;AAGT,IAAA,OAAO,gBAAgB,IAAO,GAAA,SAAA;AAAA,GAChC;AAEA,EACE,uBAAAA,cAAA,CAAA,aAAA,CAAC,aAAU,WAAa,EAAA,CAAA,UAAA,EAAa,KAAK,CAAI,CAAA,EAAA,KAAA,EAAA,EAC3C,CAAC,QAAA,EAAU,QACV,qBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAO,EAAA,oCAAA;AAAA,MACP,OAAA,EAAS,SAAU,CAAA,QAAA,CAAS,UAAU,CAAA;AAAA,MACtC,SAAW,EAAA,EAAA,CAAG,MAAO,CAAA,KAAA,EAAO,OAAO,WAAW;AAAA,KAAA;AAAA,oBAE9CA,cAAA,CAAA,aAAA;AAAA,MAAC,mBAAA;AAAA,MAAA;AAAA,QACC,QAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,UAAY,EAAA,GAAA;AAAA,QACZ,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA;AAAA,QACA,UAAA;AAAA,QACA;AAAA;AAAA;AACF,GAGN,CAAA;AAEJ;AAEA,MAAM,SAAA,GAAY,CAAC,KAAA,EAAsB,aAA2B,KAAA;AAClE,EAAO,OAAA;AAAA,IACL,aAAa,GAAI,CAAA;AAAA,MACf,UAAY,EAAA;AAAA,KACb,CAAA;AAAA,IACD,OAAO,GAAI,CAAA;AAAA,MACT,YAAA,EAAc,KAAM,CAAA,OAAA,CAAQ,CAAC;AAAA,KAC9B;AAAA,GACH;AACF,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import React, { useRef, useState, useEffect } from 'react';
1
+ import React__default, { useRef, useState, useEffect } from 'react';
2
2
  import '@hello-pangea/dnd';
3
3
  import { useTheme2, Tooltip, Icon, Button } from '@grafana/ui';
4
4
  import { cx, css } from '@emotion/css';
@@ -68,7 +68,7 @@ function OperationEditorBody({
68
68
  restParam = renderAddRestParamButton(lastParamDef, onAddRestParam, index, operation.params.length, styles);
69
69
  }
70
70
  }
71
- return /* @__PURE__ */ React.createElement(
71
+ return /* @__PURE__ */ React__default.createElement(
72
72
  "div",
73
73
  {
74
74
  className: cx(styles.card, {
@@ -80,7 +80,7 @@ function OperationEditorBody({
80
80
  ...provided.draggableProps,
81
81
  "data-testid": `operations.${index}.wrapper`
82
82
  },
83
- /* @__PURE__ */ React.createElement(
83
+ /* @__PURE__ */ React__default.createElement(
84
84
  OperationHeader,
85
85
  {
86
86
  operation,
@@ -93,10 +93,10 @@ function OperationEditorBody({
93
93
  queryModeller
94
94
  }
95
95
  ),
96
- /* @__PURE__ */ React.createElement("div", { className: styles.body }, operation.params.map((param, paramIndex) => {
96
+ /* @__PURE__ */ React__default.createElement("div", { className: styles.body }, operation.params.map((param, paramIndex) => {
97
97
  const paramDef = definition.params[Math.min(definition.params.length - 1, paramIndex)];
98
98
  const Editor = getOperationParamEditor(paramDef);
99
- return /* @__PURE__ */ React.createElement("div", { className: styles.paramRow, key: `${paramIndex}-1` }, !paramDef.hideName && /* @__PURE__ */ React.createElement("div", { className: styles.paramName }, /* @__PURE__ */ React.createElement("label", { htmlFor: getOperationParamId(id, paramIndex) }, paramDef.name), paramDef.description && /* @__PURE__ */ React.createElement(Tooltip, { placement: "top", content: paramDef.description, theme: "info" }, /* @__PURE__ */ React.createElement(Icon, { name: "info-circle", size: "sm", className: styles.infoIcon }))), /* @__PURE__ */ React.createElement("div", { className: styles.paramValue }, /* @__PURE__ */ React.createElement(EditorStack, { gap: 0.5, direction: "row", alignItems: "center", wrap: false }, /* @__PURE__ */ React.createElement(
99
+ return /* @__PURE__ */ React__default.createElement("div", { className: styles.paramRow, key: `${paramIndex}-1` }, !paramDef.hideName && /* @__PURE__ */ React__default.createElement("div", { className: styles.paramName }, /* @__PURE__ */ React__default.createElement("label", { htmlFor: getOperationParamId(id, paramIndex) }, paramDef.name), paramDef.description && /* @__PURE__ */ React__default.createElement(Tooltip, { placement: "top", content: paramDef.description, theme: "info" }, /* @__PURE__ */ React__default.createElement(Icon, { name: "info-circle", size: "sm", className: styles.infoIcon }))), /* @__PURE__ */ React__default.createElement("div", { className: styles.paramValue }, /* @__PURE__ */ React__default.createElement(EditorStack, { gap: 0.5, direction: "row", alignItems: "center", wrap: false }, /* @__PURE__ */ React__default.createElement(
100
100
  Editor,
101
101
  {
102
102
  index: paramIndex,
@@ -111,7 +111,7 @@ function OperationEditorBody({
111
111
  timeRange,
112
112
  queryModeller
113
113
  }
114
- ), paramDef.restParam && (operation.params.length > definition.params.length || paramDef.optional) && /* @__PURE__ */ React.createElement(
114
+ ), paramDef.restParam && (operation.params.length > definition.params.length || paramDef.optional) && /* @__PURE__ */ React__default.createElement(
115
115
  Button,
116
116
  {
117
117
  "data-testid": `operations.${index}.remove-rest-param`,
@@ -125,7 +125,7 @@ function OperationEditorBody({
125
125
  ))));
126
126
  })),
127
127
  restParam,
128
- index < query.operations.length - 1 && /* @__PURE__ */ React.createElement("div", { className: styles.arrow }, /* @__PURE__ */ React.createElement("div", { className: styles.arrowLine }), /* @__PURE__ */ React.createElement("div", { className: styles.arrowArrow }))
128
+ index < query.operations.length - 1 && /* @__PURE__ */ React__default.createElement("div", { className: styles.arrow }, /* @__PURE__ */ React__default.createElement("div", { className: styles.arrowLine }), /* @__PURE__ */ React__default.createElement("div", { className: styles.arrowArrow }))
129
129
  );
130
130
  }
131
131
  const getStyles = (theme, isConflicting) => {
@@ -236,7 +236,7 @@ function callParamChangedThenOnChange(def, operation, operationIndex, paramIndex
236
236
  }
237
237
  }
238
238
  function renderAddRestParamButton(paramDef, onAddRestParam, operationIndex, paramIndex, styles) {
239
- return /* @__PURE__ */ React.createElement("div", { className: styles.restParam, key: `${paramIndex}-2` }, /* @__PURE__ */ React.createElement(
239
+ return /* @__PURE__ */ React__default.createElement("div", { className: styles.restParam, key: `${paramIndex}-2` }, /* @__PURE__ */ React__default.createElement(
240
240
  Button,
241
241
  {
242
242
  size: "sm",
@@ -1 +1 @@
1
- {"version":3,"file":"OperationEditorBody.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationEditorBody.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { type DraggableProvided } from '@hello-pangea/dnd';\nimport { Button, Icon, Tooltip, useTheme2 } from '@grafana/ui';\nimport { css, cx } from '@emotion/css';\nimport { type DataSourceApi, type GrafanaTheme2, type TimeRange } from '@grafana/data';\nimport { OperationHeader } from './OperationHeader';\nimport {\n type QueryBuilderOperation,\n type QueryBuilderOperationDefinition,\n type QueryBuilderOperationParamDef,\n type QueryBuilderOperationParamValue,\n type VisualQuery,\n type VisualQueryModeller,\n} from '../types';\nimport { getOperationParamEditor, getOperationParamId } from './OperationParamEditor';\nimport { v4 } from 'uuid';\nimport { EditorStack } from '../../QueryEditor';\n\ntype Props = {\n provided: DraggableProvided;\n isConflicting: boolean;\n index: number;\n operation: QueryBuilderOperation;\n definition: QueryBuilderOperationDefinition;\n queryModeller: VisualQueryModeller;\n query: VisualQuery;\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n onRunQuery: () => void;\n datasource: DataSourceApi;\n flash?: boolean;\n highlight?: boolean;\n timeRange?: TimeRange;\n};\n\nexport function OperationEditorBody({\n provided,\n flash,\n isConflicting,\n highlight,\n index,\n queryModeller,\n onChange,\n onRemove,\n onToggle,\n operation,\n definition,\n query,\n timeRange,\n onRunQuery,\n datasource,\n}: Props) {\n const theme = useTheme2();\n const styles = getStyles(theme, isConflicting);\n const shouldFlash = useFlash(flash);\n const { current: id } = useRef(v4());\n\n const onParamValueChanged = (paramIdx: number, value: QueryBuilderOperationParamValue) => {\n const update: QueryBuilderOperation = { ...operation, params: [...operation.params] };\n update.params[paramIdx] = value;\n callParamChangedThenOnChange(definition, update, index, paramIdx, onChange);\n };\n\n const onAddRestParam = () => {\n const update: QueryBuilderOperation = { ...operation, params: [...operation.params, ''] };\n callParamChangedThenOnChange(definition, update, index, operation.params.length, onChange);\n };\n\n const onRemoveRestParam = (paramIdx: number) => {\n const update: QueryBuilderOperation = {\n ...operation,\n params: [...operation.params.slice(0, paramIdx), ...operation.params.slice(paramIdx + 1)],\n };\n callParamChangedThenOnChange(definition, update, index, paramIdx, onChange);\n };\n\n // Handle adding button for rest params\n let restParam: React.ReactNode | undefined;\n if (definition.params.length > 0) {\n const lastParamDef = definition.params[definition.params.length - 1];\n if (lastParamDef.restParam) {\n restParam = renderAddRestParamButton(lastParamDef, onAddRestParam, index, operation.params.length, styles);\n }\n }\n\n return (\n <div\n className={cx(styles.card, {\n [styles.cardHighlight]: shouldFlash || highlight,\n [styles.cardError]: isConflicting,\n [styles.disabled]: operation.disabled,\n })}\n ref={provided.innerRef}\n {...provided.draggableProps}\n data-testid={`operations.${index}.wrapper`}\n >\n <OperationHeader\n operation={operation}\n dragHandleProps={provided.dragHandleProps}\n definition={definition}\n index={index}\n onChange={onChange}\n onRemove={onRemove}\n onToggle={onToggle}\n queryModeller={queryModeller}\n />\n <div className={styles.body}>\n {operation.params.map((param, paramIndex) => {\n const paramDef = definition.params[Math.min(definition.params.length - 1, paramIndex)];\n const Editor = getOperationParamEditor(paramDef);\n\n return (\n <div className={styles.paramRow} key={`${paramIndex}-1`}>\n {!paramDef.hideName && (\n <div className={styles.paramName}>\n <label htmlFor={getOperationParamId(id, paramIndex)}>{paramDef.name}</label>\n {paramDef.description && (\n <Tooltip placement=\"top\" content={paramDef.description} theme=\"info\">\n <Icon name=\"info-circle\" size=\"sm\" className={styles.infoIcon} />\n </Tooltip>\n )}\n </div>\n )}\n <div className={styles.paramValue}>\n <EditorStack gap={0.5} direction=\"row\" alignItems=\"center\" wrap={false}>\n <Editor\n index={paramIndex}\n paramDef={paramDef}\n value={operation.params[paramIndex]}\n operation={operation}\n operationId={id}\n onChange={onParamValueChanged}\n onRunQuery={onRunQuery}\n query={query}\n datasource={datasource}\n timeRange={timeRange}\n queryModeller={queryModeller}\n />\n {paramDef.restParam && (operation.params.length > definition.params.length || paramDef.optional) && (\n <Button\n data-testid={`operations.${index}.remove-rest-param`}\n size=\"sm\"\n fill=\"text\"\n icon=\"times\"\n variant=\"secondary\"\n title={`Remove ${paramDef.name}`}\n onClick={() => onRemoveRestParam(paramIndex)}\n />\n )}\n </EditorStack>\n </div>\n </div>\n );\n })}\n </div>\n {restParam}\n {index < query.operations.length - 1 && (\n <div className={styles.arrow}>\n <div className={styles.arrowLine} />\n <div className={styles.arrowArrow} />\n </div>\n )}\n </div>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2, isConflicting: boolean) => {\n return {\n cardWrapper: css({\n alignItems: 'stretch',\n }),\n error: css({\n marginBottom: theme.spacing(1),\n }),\n card: css({\n background: theme.colors.background.primary,\n border: `1px solid ${theme.colors.border.medium}`,\n cursor: 'grab',\n borderRadius: theme.shape.radius.default,\n position: 'relative',\n transition: 'all 0.5s ease-in 0s',\n height: isConflicting ? 'auto' : '100%',\n }),\n disabled: css({\n opacity: 0.5,\n transition: 'none',\n }),\n cardError: css({\n boxShadow: `0px 0px 4px 0px ${theme.colors.warning.main}`,\n border: `1px solid ${theme.colors.warning.main}`,\n }),\n cardHighlight: css({\n boxShadow: `0px 0px 4px 0px ${theme.colors.primary.border}`,\n border: `1px solid ${theme.colors.primary.border}`,\n }),\n infoIcon: css({\n marginLeft: theme.spacing(0.5),\n color: theme.colors.text.secondary,\n ':hover': {\n color: theme.colors.text.primary,\n },\n }),\n body: css({\n margin: theme.spacing(1, 1, 0.5, 1),\n display: 'table',\n }),\n paramRow: css({\n label: 'paramRow',\n display: 'table-row',\n verticalAlign: 'middle',\n }),\n paramName: css({\n display: 'table-cell',\n padding: theme.spacing(0, 1, 0, 0),\n fontSize: theme.typography.bodySmall.fontSize,\n fontWeight: theme.typography.fontWeightMedium,\n verticalAlign: 'middle',\n height: '32px',\n }),\n paramValue: css({\n label: 'paramValue',\n display: 'table-cell',\n verticalAlign: 'middle',\n }),\n restParam: css({\n padding: theme.spacing(0, 1, 1, 1),\n }),\n arrow: css({\n position: 'absolute',\n top: '0',\n right: '-18px',\n display: 'flex',\n }),\n arrowLine: css({\n height: '2px',\n width: '8px',\n backgroundColor: theme.colors.border.strong,\n position: 'relative',\n top: '14px',\n }),\n arrowArrow: css({\n width: 0,\n height: 0,\n borderTop: `5px solid transparent`,\n borderBottom: `5px solid transparent`,\n borderLeft: `7px solid ${theme.colors.border.strong}`,\n position: 'relative',\n top: '10px',\n }),\n };\n};\n\n/**\n * When flash is switched on makes sure it is switched of right away, so we just flash the highlight and then fade\n * out.\n * @param flash\n */\nfunction useFlash(flash?: boolean) {\n const [keepFlash, setKeepFlash] = useState(true);\n useEffect(() => {\n let t: ReturnType<typeof setTimeout>;\n if (flash) {\n t = setTimeout(() => {\n setKeepFlash(false);\n }, 1000);\n } else {\n setKeepFlash(true);\n }\n\n return () => clearTimeout(t);\n }, [flash]);\n\n return keepFlash && flash;\n}\n\nfunction callParamChangedThenOnChange(\n def: QueryBuilderOperationDefinition,\n operation: QueryBuilderOperation,\n operationIndex: number,\n paramIndex: number,\n onChange: (index: number, update: QueryBuilderOperation) => void\n) {\n if (def.paramChangedHandler) {\n onChange(operationIndex, def.paramChangedHandler(paramIndex, operation, def));\n } else {\n onChange(operationIndex, operation);\n }\n}\n\nfunction renderAddRestParamButton(\n paramDef: QueryBuilderOperationParamDef,\n onAddRestParam: () => void,\n operationIndex: number,\n paramIndex: number,\n styles: OperationEditorStyles\n) {\n return (\n <div className={styles.restParam} key={`${paramIndex}-2`}>\n <Button\n size=\"sm\"\n icon=\"plus\"\n title={`Add ${paramDef.name}`.trimEnd()}\n variant=\"secondary\"\n onClick={onAddRestParam}\n data-testid={`operations.${operationIndex}.add-rest-param`}\n >\n {paramDef.name}\n </Button>\n </div>\n );\n}\n\ntype OperationEditorStyles = ReturnType<typeof getStyles>;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationEditorBody.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationEditorBody.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { type DraggableProvided } from '@hello-pangea/dnd';\nimport { Button, Icon, Tooltip, useTheme2 } from '@grafana/ui';\nimport { css, cx } from '@emotion/css';\nimport { type DataSourceApi, type GrafanaTheme2, type TimeRange } from '@grafana/data';\nimport { OperationHeader } from './OperationHeader';\nimport {\n type QueryBuilderOperation,\n type QueryBuilderOperationDefinition,\n type QueryBuilderOperationParamDef,\n type QueryBuilderOperationParamValue,\n type VisualQuery,\n type VisualQueryModeller,\n} from '../types';\nimport { getOperationParamEditor, getOperationParamId } from './OperationParamEditor';\nimport { v4 } from 'uuid';\nimport { EditorStack } from '../../QueryEditor';\n\ntype Props = {\n provided: DraggableProvided;\n isConflicting: boolean;\n index: number;\n operation: QueryBuilderOperation;\n definition: QueryBuilderOperationDefinition;\n queryModeller: VisualQueryModeller;\n query: VisualQuery;\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n onRunQuery: () => void;\n datasource: DataSourceApi;\n flash?: boolean;\n highlight?: boolean;\n timeRange?: TimeRange;\n};\n\nexport function OperationEditorBody({\n provided,\n flash,\n isConflicting,\n highlight,\n index,\n queryModeller,\n onChange,\n onRemove,\n onToggle,\n operation,\n definition,\n query,\n timeRange,\n onRunQuery,\n datasource,\n}: Props) {\n const theme = useTheme2();\n const styles = getStyles(theme, isConflicting);\n const shouldFlash = useFlash(flash);\n const { current: id } = useRef(v4());\n\n const onParamValueChanged = (paramIdx: number, value: QueryBuilderOperationParamValue) => {\n const update: QueryBuilderOperation = { ...operation, params: [...operation.params] };\n update.params[paramIdx] = value;\n callParamChangedThenOnChange(definition, update, index, paramIdx, onChange);\n };\n\n const onAddRestParam = () => {\n const update: QueryBuilderOperation = { ...operation, params: [...operation.params, ''] };\n callParamChangedThenOnChange(definition, update, index, operation.params.length, onChange);\n };\n\n const onRemoveRestParam = (paramIdx: number) => {\n const update: QueryBuilderOperation = {\n ...operation,\n params: [...operation.params.slice(0, paramIdx), ...operation.params.slice(paramIdx + 1)],\n };\n callParamChangedThenOnChange(definition, update, index, paramIdx, onChange);\n };\n\n // Handle adding button for rest params\n let restParam: React.ReactNode | undefined;\n if (definition.params.length > 0) {\n const lastParamDef = definition.params[definition.params.length - 1];\n if (lastParamDef.restParam) {\n restParam = renderAddRestParamButton(lastParamDef, onAddRestParam, index, operation.params.length, styles);\n }\n }\n\n return (\n <div\n className={cx(styles.card, {\n [styles.cardHighlight]: shouldFlash || highlight,\n [styles.cardError]: isConflicting,\n [styles.disabled]: operation.disabled,\n })}\n ref={provided.innerRef}\n {...provided.draggableProps}\n data-testid={`operations.${index}.wrapper`}\n >\n <OperationHeader\n operation={operation}\n dragHandleProps={provided.dragHandleProps}\n definition={definition}\n index={index}\n onChange={onChange}\n onRemove={onRemove}\n onToggle={onToggle}\n queryModeller={queryModeller}\n />\n <div className={styles.body}>\n {operation.params.map((param, paramIndex) => {\n const paramDef = definition.params[Math.min(definition.params.length - 1, paramIndex)];\n const Editor = getOperationParamEditor(paramDef);\n\n return (\n <div className={styles.paramRow} key={`${paramIndex}-1`}>\n {!paramDef.hideName && (\n <div className={styles.paramName}>\n <label htmlFor={getOperationParamId(id, paramIndex)}>{paramDef.name}</label>\n {paramDef.description && (\n <Tooltip placement=\"top\" content={paramDef.description} theme=\"info\">\n <Icon name=\"info-circle\" size=\"sm\" className={styles.infoIcon} />\n </Tooltip>\n )}\n </div>\n )}\n <div className={styles.paramValue}>\n <EditorStack gap={0.5} direction=\"row\" alignItems=\"center\" wrap={false}>\n <Editor\n index={paramIndex}\n paramDef={paramDef}\n value={operation.params[paramIndex]}\n operation={operation}\n operationId={id}\n onChange={onParamValueChanged}\n onRunQuery={onRunQuery}\n query={query}\n datasource={datasource}\n timeRange={timeRange}\n queryModeller={queryModeller}\n />\n {paramDef.restParam && (operation.params.length > definition.params.length || paramDef.optional) && (\n <Button\n data-testid={`operations.${index}.remove-rest-param`}\n size=\"sm\"\n fill=\"text\"\n icon=\"times\"\n variant=\"secondary\"\n title={`Remove ${paramDef.name}`}\n onClick={() => onRemoveRestParam(paramIndex)}\n />\n )}\n </EditorStack>\n </div>\n </div>\n );\n })}\n </div>\n {restParam}\n {index < query.operations.length - 1 && (\n <div className={styles.arrow}>\n <div className={styles.arrowLine} />\n <div className={styles.arrowArrow} />\n </div>\n )}\n </div>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2, isConflicting: boolean) => {\n return {\n cardWrapper: css({\n alignItems: 'stretch',\n }),\n error: css({\n marginBottom: theme.spacing(1),\n }),\n card: css({\n background: theme.colors.background.primary,\n border: `1px solid ${theme.colors.border.medium}`,\n cursor: 'grab',\n borderRadius: theme.shape.radius.default,\n position: 'relative',\n transition: 'all 0.5s ease-in 0s',\n height: isConflicting ? 'auto' : '100%',\n }),\n disabled: css({\n opacity: 0.5,\n transition: 'none',\n }),\n cardError: css({\n boxShadow: `0px 0px 4px 0px ${theme.colors.warning.main}`,\n border: `1px solid ${theme.colors.warning.main}`,\n }),\n cardHighlight: css({\n boxShadow: `0px 0px 4px 0px ${theme.colors.primary.border}`,\n border: `1px solid ${theme.colors.primary.border}`,\n }),\n infoIcon: css({\n marginLeft: theme.spacing(0.5),\n color: theme.colors.text.secondary,\n ':hover': {\n color: theme.colors.text.primary,\n },\n }),\n body: css({\n margin: theme.spacing(1, 1, 0.5, 1),\n display: 'table',\n }),\n paramRow: css({\n label: 'paramRow',\n display: 'table-row',\n verticalAlign: 'middle',\n }),\n paramName: css({\n display: 'table-cell',\n padding: theme.spacing(0, 1, 0, 0),\n fontSize: theme.typography.bodySmall.fontSize,\n fontWeight: theme.typography.fontWeightMedium,\n verticalAlign: 'middle',\n height: '32px',\n }),\n paramValue: css({\n label: 'paramValue',\n display: 'table-cell',\n verticalAlign: 'middle',\n }),\n restParam: css({\n padding: theme.spacing(0, 1, 1, 1),\n }),\n arrow: css({\n position: 'absolute',\n top: '0',\n right: '-18px',\n display: 'flex',\n }),\n arrowLine: css({\n height: '2px',\n width: '8px',\n backgroundColor: theme.colors.border.strong,\n position: 'relative',\n top: '14px',\n }),\n arrowArrow: css({\n width: 0,\n height: 0,\n borderTop: `5px solid transparent`,\n borderBottom: `5px solid transparent`,\n borderLeft: `7px solid ${theme.colors.border.strong}`,\n position: 'relative',\n top: '10px',\n }),\n };\n};\n\n/**\n * When flash is switched on makes sure it is switched of right away, so we just flash the highlight and then fade\n * out.\n * @param flash\n */\nfunction useFlash(flash?: boolean) {\n const [keepFlash, setKeepFlash] = useState(true);\n useEffect(() => {\n let t: ReturnType<typeof setTimeout>;\n if (flash) {\n t = setTimeout(() => {\n setKeepFlash(false);\n }, 1000);\n } else {\n setKeepFlash(true);\n }\n\n return () => clearTimeout(t);\n }, [flash]);\n\n return keepFlash && flash;\n}\n\nfunction callParamChangedThenOnChange(\n def: QueryBuilderOperationDefinition,\n operation: QueryBuilderOperation,\n operationIndex: number,\n paramIndex: number,\n onChange: (index: number, update: QueryBuilderOperation) => void\n) {\n if (def.paramChangedHandler) {\n onChange(operationIndex, def.paramChangedHandler(paramIndex, operation, def));\n } else {\n onChange(operationIndex, operation);\n }\n}\n\nfunction renderAddRestParamButton(\n paramDef: QueryBuilderOperationParamDef,\n onAddRestParam: () => void,\n operationIndex: number,\n paramIndex: number,\n styles: OperationEditorStyles\n) {\n return (\n <div className={styles.restParam} key={`${paramIndex}-2`}>\n <Button\n size=\"sm\"\n icon=\"plus\"\n title={`Add ${paramDef.name}`.trimEnd()}\n variant=\"secondary\"\n onClick={onAddRestParam}\n data-testid={`operations.${operationIndex}.add-rest-param`}\n >\n {paramDef.name}\n </Button>\n </div>\n );\n}\n\ntype OperationEditorStyles = ReturnType<typeof getStyles>;\n"],"names":["React"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { css } from '@emotion/css';
2
- import React from 'react';
2
+ import React__default from 'react';
3
3
  import { renderMarkdown } from '@grafana/data';
4
4
  import { useStyles2 } from '@grafana/ui';
5
5
 
6
6
  function OperationExplainedBox({ title, stepNumber, markdown, children }) {
7
7
  const styles = useStyles2(getStyles);
8
- return /* @__PURE__ */ React.createElement("div", { className: styles.box }, stepNumber !== undefined && /* @__PURE__ */ React.createElement("div", { className: styles.stepNumber }, stepNumber), /* @__PURE__ */ React.createElement("div", { className: styles.boxInner }, title && /* @__PURE__ */ React.createElement("div", { className: styles.header }, /* @__PURE__ */ React.createElement("span", null, title)), /* @__PURE__ */ React.createElement("div", { className: styles.body }, markdown && /* @__PURE__ */ React.createElement("div", { dangerouslySetInnerHTML: { __html: renderMarkdown(markdown) } }), children)));
8
+ return /* @__PURE__ */ React__default.createElement("div", { className: styles.box }, stepNumber !== undefined && /* @__PURE__ */ React__default.createElement("div", { className: styles.stepNumber }, stepNumber), /* @__PURE__ */ React__default.createElement("div", { className: styles.boxInner }, title && /* @__PURE__ */ React__default.createElement("div", { className: styles.header }, /* @__PURE__ */ React__default.createElement("span", null, title)), /* @__PURE__ */ React__default.createElement("div", { className: styles.body }, markdown && /* @__PURE__ */ React__default.createElement("div", { dangerouslySetInnerHTML: { __html: renderMarkdown(markdown) } }), children)));
9
9
  }
10
10
  const getStyles = (theme) => {
11
11
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"OperationExplainedBox.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationExplainedBox.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React from 'react';\n\nimport { type GrafanaTheme2, renderMarkdown } from '@grafana/data';\nimport { useStyles2 } from '@grafana/ui';\n\nexport interface Props {\n title?: React.ReactNode;\n markdown?: string;\n stepNumber?: number;\n}\n\nexport function OperationExplainedBox({ title, stepNumber, markdown, children }: React.PropsWithChildren<Props>) {\n const styles = useStyles2(getStyles);\n\n return (\n <div className={styles.box}>\n {stepNumber !== undefined && <div className={styles.stepNumber}>{stepNumber}</div>}\n <div className={styles.boxInner}>\n {title && (\n <div className={styles.header}>\n <span>{title}</span>\n </div>\n )}\n <div className={styles.body}>\n {markdown && <div dangerouslySetInnerHTML={{ __html: renderMarkdown(markdown) }}></div>}\n {children}\n </div>\n </div>\n </div>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n box: css({\n background: theme.colors.background.secondary,\n padding: theme.spacing(1),\n borderRadius: theme.shape.radius.default,\n position: 'relative',\n }),\n boxInner: css({\n marginLeft: theme.spacing(4),\n }),\n stepNumber: css({\n fontWeight: theme.typography.fontWeightMedium,\n background: theme.colors.secondary.main,\n width: '20px',\n height: '20px',\n borderRadius: theme.shape.radius.circle,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'absolute',\n top: '10px',\n left: '11px',\n fontSize: theme.typography.bodySmall.fontSize,\n }),\n header: css({\n paddingBottom: theme.spacing(0.5),\n display: 'flex',\n alignItems: 'center',\n fontFamily: theme.typography.fontFamilyMonospace,\n }),\n body: css({\n color: theme.colors.text.secondary,\n 'p:last-child': {\n margin: 0,\n },\n a: {\n color: theme.colors.text.link,\n textDecoration: 'underline',\n },\n }),\n };\n};\n"],"names":[],"mappings":";;;;;AAYO,SAAS,sBAAsB,EAAE,KAAA,EAAO,UAAY,EAAA,QAAA,EAAU,UAA4C,EAAA;AAC/G,EAAM,MAAA,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,SAAI,SAAW,EAAA,MAAA,CAAO,OACpB,UAAe,KAAA,SAAA,oBAAc,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,cAAa,UAAW,CAAA,sCAC3E,KAAI,EAAA,EAAA,SAAA,EAAW,OAAO,QACpB,EAAA,EAAA,KAAA,oBACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,0BACpB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAM,KAAM,CACf,CAAA,sCAED,KAAI,EAAA,EAAA,SAAA,EAAW,MAAO,CAAA,IAAA,EAAA,EACpB,QAAY,oBAAA,KAAA,CAAA,aAAA,CAAC,SAAI,uBAAyB,EAAA,EAAE,QAAQ,cAAe,CAAA,QAAQ,GAAK,EAAA,CAAA,EAChF,QACH,CACF,CACF,CAAA;AAEJ;AAEA,MAAM,SAAA,GAAY,CAAC,KAAyB,KAAA;AAC1C,EAAO,OAAA;AAAA,IACL,KAAK,GAAI,CAAA;AAAA,MACP,UAAA,EAAY,KAAM,CAAA,MAAA,CAAO,UAAW,CAAA,SAAA;AAAA,MACpC,OAAA,EAAS,KAAM,CAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACxB,YAAA,EAAc,KAAM,CAAA,KAAA,CAAM,MAAO,CAAA,OAAA;AAAA,MACjC,QAAU,EAAA;AAAA,KACX,CAAA;AAAA,IACD,UAAU,GAAI,CAAA;AAAA,MACZ,UAAA,EAAY,KAAM,CAAA,OAAA,CAAQ,CAAC;AAAA,KAC5B,CAAA;AAAA,IACD,YAAY,GAAI,CAAA;AAAA,MACd,UAAA,EAAY,MAAM,UAAW,CAAA,gBAAA;AAAA,MAC7B,UAAA,EAAY,KAAM,CAAA,MAAA,CAAO,SAAU,CAAA,IAAA;AAAA,MACnC,KAAO,EAAA,MAAA;AAAA,MACP,MAAQ,EAAA,MAAA;AAAA,MACR,YAAA,EAAc,KAAM,CAAA,KAAA,CAAM,MAAO,CAAA,MAAA;AAAA,MACjC,OAAS,EAAA,MAAA;AAAA,MACT,UAAY,EAAA,QAAA;AAAA,MACZ,cAAgB,EAAA,QAAA;AAAA,MAChB,QAAU,EAAA,UAAA;AAAA,MACV,GAAK,EAAA,MAAA;AAAA,MACL,IAAM,EAAA,MAAA;AAAA,MACN,QAAA,EAAU,KAAM,CAAA,UAAA,CAAW,SAAU,CAAA;AAAA,KACtC,CAAA;AAAA,IACD,QAAQ,GAAI,CAAA;AAAA,MACV,aAAA,EAAe,KAAM,CAAA,OAAA,CAAQ,GAAG,CAAA;AAAA,MAChC,OAAS,EAAA,MAAA;AAAA,MACT,UAAY,EAAA,QAAA;AAAA,MACZ,UAAA,EAAY,MAAM,UAAW,CAAA;AAAA,KAC9B,CAAA;AAAA,IACD,MAAM,GAAI,CAAA;AAAA,MACR,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA,SAAA;AAAA,MACzB,cAAgB,EAAA;AAAA,QACd,MAAQ,EAAA;AAAA,OACV;AAAA,MACA,CAAG,EAAA;AAAA,QACD,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA,IAAA;AAAA,QACzB,cAAgB,EAAA;AAAA;AAClB,KACD;AAAA,GACH;AACF,CAAA;;;;"}
1
+ {"version":3,"file":"OperationExplainedBox.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationExplainedBox.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React from 'react';\n\nimport { type GrafanaTheme2, renderMarkdown } from '@grafana/data';\nimport { useStyles2 } from '@grafana/ui';\n\nexport interface Props {\n title?: React.ReactNode;\n markdown?: string;\n stepNumber?: number;\n}\n\nexport function OperationExplainedBox({ title, stepNumber, markdown, children }: React.PropsWithChildren<Props>) {\n const styles = useStyles2(getStyles);\n\n return (\n <div className={styles.box}>\n {stepNumber !== undefined && <div className={styles.stepNumber}>{stepNumber}</div>}\n <div className={styles.boxInner}>\n {title && (\n <div className={styles.header}>\n <span>{title}</span>\n </div>\n )}\n <div className={styles.body}>\n {markdown && <div dangerouslySetInnerHTML={{ __html: renderMarkdown(markdown) }}></div>}\n {children}\n </div>\n </div>\n </div>\n );\n}\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n box: css({\n background: theme.colors.background.secondary,\n padding: theme.spacing(1),\n borderRadius: theme.shape.radius.default,\n position: 'relative',\n }),\n boxInner: css({\n marginLeft: theme.spacing(4),\n }),\n stepNumber: css({\n fontWeight: theme.typography.fontWeightMedium,\n background: theme.colors.secondary.main,\n width: '20px',\n height: '20px',\n borderRadius: theme.shape.radius.circle,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'absolute',\n top: '10px',\n left: '11px',\n fontSize: theme.typography.bodySmall.fontSize,\n }),\n header: css({\n paddingBottom: theme.spacing(0.5),\n display: 'flex',\n alignItems: 'center',\n fontFamily: theme.typography.fontFamilyMonospace,\n }),\n body: css({\n color: theme.colors.text.secondary,\n 'p:last-child': {\n margin: 0,\n },\n a: {\n color: theme.colors.text.link,\n textDecoration: 'underline',\n },\n }),\n };\n};\n"],"names":["React"],"mappings":";;;;;AAYO,SAAS,sBAAsB,EAAE,KAAA,EAAO,UAAY,EAAA,QAAA,EAAU,UAA4C,EAAA;AAC/G,EAAM,MAAA,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EACE,uBAAAA,cAAA,CAAA,aAAA,CAAC,SAAI,SAAW,EAAA,MAAA,CAAO,OACpB,UAAe,KAAA,SAAA,oBAAcA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,cAAa,UAAW,CAAA,+CAC3E,KAAI,EAAA,EAAA,SAAA,EAAW,OAAO,QACpB,EAAA,EAAA,KAAA,oBACEA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,0BACpBA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAM,KAAM,CACf,CAAA,+CAED,KAAI,EAAA,EAAA,SAAA,EAAW,MAAO,CAAA,IAAA,EAAA,EACpB,QAAY,oBAAAA,cAAA,CAAA,aAAA,CAAC,SAAI,uBAAyB,EAAA,EAAE,QAAQ,cAAe,CAAA,QAAQ,GAAK,EAAA,CAAA,EAChF,QACH,CACF,CACF,CAAA;AAEJ;AAEA,MAAM,SAAA,GAAY,CAAC,KAAyB,KAAA;AAC1C,EAAO,OAAA;AAAA,IACL,KAAK,GAAI,CAAA;AAAA,MACP,UAAA,EAAY,KAAM,CAAA,MAAA,CAAO,UAAW,CAAA,SAAA;AAAA,MACpC,OAAA,EAAS,KAAM,CAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACxB,YAAA,EAAc,KAAM,CAAA,KAAA,CAAM,MAAO,CAAA,OAAA;AAAA,MACjC,QAAU,EAAA;AAAA,KACX,CAAA;AAAA,IACD,UAAU,GAAI,CAAA;AAAA,MACZ,UAAA,EAAY,KAAM,CAAA,OAAA,CAAQ,CAAC;AAAA,KAC5B,CAAA;AAAA,IACD,YAAY,GAAI,CAAA;AAAA,MACd,UAAA,EAAY,MAAM,UAAW,CAAA,gBAAA;AAAA,MAC7B,UAAA,EAAY,KAAM,CAAA,MAAA,CAAO,SAAU,CAAA,IAAA;AAAA,MACnC,KAAO,EAAA,MAAA;AAAA,MACP,MAAQ,EAAA,MAAA;AAAA,MACR,YAAA,EAAc,KAAM,CAAA,KAAA,CAAM,MAAO,CAAA,MAAA;AAAA,MACjC,OAAS,EAAA,MAAA;AAAA,MACT,UAAY,EAAA,QAAA;AAAA,MACZ,cAAgB,EAAA,QAAA;AAAA,MAChB,QAAU,EAAA,UAAA;AAAA,MACV,GAAK,EAAA,MAAA;AAAA,MACL,IAAM,EAAA,MAAA;AAAA,MACN,QAAA,EAAU,KAAM,CAAA,UAAA,CAAW,SAAU,CAAA;AAAA,KACtC,CAAA;AAAA,IACD,QAAQ,GAAI,CAAA;AAAA,MACV,aAAA,EAAe,KAAM,CAAA,OAAA,CAAQ,GAAG,CAAA;AAAA,MAChC,OAAS,EAAA,MAAA;AAAA,MACT,UAAY,EAAA,QAAA;AAAA,MACZ,UAAA,EAAY,MAAM,UAAW,CAAA;AAAA,KAC9B,CAAA;AAAA,IACD,MAAM,GAAI,CAAA;AAAA,MACR,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA,SAAA;AAAA,MACzB,cAAgB,EAAA;AAAA,QACd,MAAQ,EAAA;AAAA,OACV;AAAA,MACA,CAAG,EAAA;AAAA,QACD,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA,IAAA;AAAA,QACzB,cAAgB,EAAA;AAAA;AAClB,KACD;AAAA,GACH;AACF,CAAA;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { css } from '@emotion/css';
2
- import React, { useState } from 'react';
2
+ import React__default, { useState } from 'react';
3
3
  import '@hello-pangea/dnd';
4
4
  import '@grafana/data';
5
5
  import { useStyles2, Button, Select } from '@grafana/ui';
6
6
  import { OperationInfoButton } from './OperationInfoButton.js';
7
7
  import { FlexItem } from '../../QueryEditor/FlexItem.js';
8
8
 
9
- const OperationHeader = React.memo(
9
+ const OperationHeader = React__default.memo(
10
10
  ({ operation, definition, index, onChange, onRemove, onToggle, queryModeller, dragHandleProps }) => {
11
11
  var _a;
12
12
  const styles = useStyles2(getStyles);
@@ -19,7 +19,7 @@ const OperationHeader = React.memo(
19
19
  setState({ isOpen: true, alternatives });
20
20
  }
21
21
  };
22
- return /* @__PURE__ */ React.createElement("div", { className: styles.header }, !state.isOpen && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { ...dragHandleProps }, (_a = definition.name) != null ? _a : definition.id), /* @__PURE__ */ React.createElement(FlexItem, { grow: 1 }), /* @__PURE__ */ React.createElement("div", { className: `${styles.operationHeaderButtons} operation-header-show-on-hover` }, /* @__PURE__ */ React.createElement(
22
+ return /* @__PURE__ */ React__default.createElement("div", { className: styles.header }, !state.isOpen && /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("div", { ...dragHandleProps }, (_a = definition.name) != null ? _a : definition.id), /* @__PURE__ */ React__default.createElement(FlexItem, { grow: 1 }), /* @__PURE__ */ React__default.createElement("div", { className: `${styles.operationHeaderButtons} operation-header-show-on-hover` }, /* @__PURE__ */ React__default.createElement(
23
23
  Button,
24
24
  {
25
25
  icon: "angle-down",
@@ -29,14 +29,14 @@ const OperationHeader = React.memo(
29
29
  variant: "secondary",
30
30
  title: "Click to view alternative operations"
31
31
  }
32
- ), /* @__PURE__ */ React.createElement(
32
+ ), /* @__PURE__ */ React__default.createElement(
33
33
  OperationInfoButton,
34
34
  {
35
35
  definition,
36
36
  operation,
37
37
  innerQueryPlaceholder: queryModeller.innerQueryPlaceholder
38
38
  }
39
- ), definition.toggleable && /* @__PURE__ */ React.createElement(
39
+ ), definition.toggleable && /* @__PURE__ */ React__default.createElement(
40
40
  Button,
41
41
  {
42
42
  icon: operation.disabled ? "eye-slash" : "eye",
@@ -46,7 +46,7 @@ const OperationHeader = React.memo(
46
46
  variant: "secondary",
47
47
  title: operation.disabled ? "Enable operation" : "Disable operation"
48
48
  }
49
- ), /* @__PURE__ */ React.createElement(
49
+ ), /* @__PURE__ */ React__default.createElement(
50
50
  Button,
51
51
  {
52
52
  icon: "times",
@@ -56,7 +56,7 @@ const OperationHeader = React.memo(
56
56
  variant: "secondary",
57
57
  title: "Remove operation"
58
58
  }
59
- ))), state.isOpen && /* @__PURE__ */ React.createElement("div", { className: styles.selectWrapper }, /* @__PURE__ */ React.createElement(
59
+ ))), state.isOpen && /* @__PURE__ */ React__default.createElement("div", { className: styles.selectWrapper }, /* @__PURE__ */ React__default.createElement(
60
60
  Select,
61
61
  {
62
62
  autoFocus: true,
@@ -1 +1 @@
1
- {"version":3,"file":"OperationHeader.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationHeader.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React, { useState } from 'react';\nimport { type DraggableProvided } from '@hello-pangea/dnd';\n\nimport { type GrafanaTheme2, type SelectableValue } from '@grafana/data';\nimport { Button, Select, useStyles2 } from '@grafana/ui';\n\nimport { OperationInfoButton } from './OperationInfoButton';\n\nimport { type VisualQueryModeller, type QueryBuilderOperation, type QueryBuilderOperationDefinition } from '../types';\nimport { FlexItem } from '../../QueryEditor/FlexItem';\n\ninterface Props {\n operation: QueryBuilderOperation;\n definition: QueryBuilderOperationDefinition;\n index: number;\n queryModeller: VisualQueryModeller;\n dragHandleProps?: DraggableProvided['dragHandleProps'];\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n}\n\ninterface State {\n isOpen?: boolean;\n disabled?: boolean;\n alternatives?: Array<SelectableValue<QueryBuilderOperationDefinition>>;\n}\n\nexport const OperationHeader = React.memo<Props>(\n ({ operation, definition, index, onChange, onRemove, onToggle, queryModeller, dragHandleProps }) => {\n const styles = useStyles2(getStyles);\n const [state, setState] = useState<State>({});\n\n const onToggleSwitcher = () => {\n if (state.isOpen) {\n setState({ ...state, isOpen: false });\n } else {\n const alternatives = queryModeller\n .getAlternativeOperations(definition.alternativesKey!)\n .map((alt) => ({ label: alt.name, value: alt }));\n setState({ isOpen: true, alternatives });\n }\n };\n\n return (\n <div className={styles.header}>\n {!state.isOpen && (\n <>\n <div {...dragHandleProps}>{definition.name ?? definition.id}</div>\n <FlexItem grow={1} />\n <div className={`${styles.operationHeaderButtons} operation-header-show-on-hover`}>\n <Button\n icon=\"angle-down\"\n size=\"sm\"\n onClick={onToggleSwitcher}\n fill=\"text\"\n variant=\"secondary\"\n title=\"Click to view alternative operations\"\n />\n <OperationInfoButton\n definition={definition}\n operation={operation}\n innerQueryPlaceholder={queryModeller.innerQueryPlaceholder}\n />\n {definition.toggleable && (\n <Button\n icon={operation.disabled ? 'eye-slash' : 'eye'}\n size=\"sm\"\n onClick={() => onToggle(index)}\n fill=\"text\"\n variant=\"secondary\"\n title={operation.disabled ? 'Enable operation' : 'Disable operation'}\n />\n )}\n <Button\n icon=\"times\"\n size=\"sm\"\n onClick={() => onRemove(index)}\n fill=\"text\"\n variant=\"secondary\"\n title=\"Remove operation\"\n />\n </div>\n </>\n )}\n {state.isOpen && (\n <div className={styles.selectWrapper}>\n <Select\n autoFocus\n openMenuOnFocus\n placeholder=\"Replace with\"\n options={state.alternatives}\n isOpen={true}\n onCloseMenu={onToggleSwitcher}\n onChange={(value) => {\n if (value.value) {\n // Operation should exist if it is selectable\n const newDef = queryModeller.getOperationDefinition(value.value.id)!;\n\n // copy default params, and override with all current params\n const newParams = [...newDef.defaultParams];\n for (let i = 0; i < Math.min(operation.params.length, newParams.length); i++) {\n if (newDef.params[i].type === definition.params[i].type) {\n newParams[i] = operation.params[i];\n }\n }\n\n const changedOp = { ...operation, params: newParams, id: value.value.id };\n onChange(\n index,\n definition.changeTypeHandler ? definition.changeTypeHandler(changedOp, newDef) : changedOp\n );\n }\n }}\n />\n </div>\n )}\n </div>\n );\n }\n);\n\nOperationHeader.displayName = 'OperationHeader';\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n header: css({\n borderBottom: `1px solid ${theme.colors.border.medium}`,\n padding: theme.spacing(0.5, 0.5, 0.5, 1),\n display: 'flex',\n alignItems: 'center',\n }),\n operationHeaderButtons: css({\n opacity: 1,\n }),\n selectWrapper: css({\n paddingRight: theme.spacing(2),\n }),\n };\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationHeader.js","sources":["../../../../../src/components/VisualQueryBuilder/components/OperationHeader.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React, { useState } from 'react';\nimport { type DraggableProvided } from '@hello-pangea/dnd';\n\nimport { type GrafanaTheme2, type SelectableValue } from '@grafana/data';\nimport { Button, Select, useStyles2 } from '@grafana/ui';\n\nimport { OperationInfoButton } from './OperationInfoButton';\n\nimport { type VisualQueryModeller, type QueryBuilderOperation, type QueryBuilderOperationDefinition } from '../types';\nimport { FlexItem } from '../../QueryEditor/FlexItem';\n\ninterface Props {\n operation: QueryBuilderOperation;\n definition: QueryBuilderOperationDefinition;\n index: number;\n queryModeller: VisualQueryModeller;\n dragHandleProps?: DraggableProvided['dragHandleProps'];\n onChange: (index: number, update: QueryBuilderOperation) => void;\n onRemove: (index: number) => void;\n onToggle: (index: number) => void;\n}\n\ninterface State {\n isOpen?: boolean;\n disabled?: boolean;\n alternatives?: Array<SelectableValue<QueryBuilderOperationDefinition>>;\n}\n\nexport const OperationHeader = React.memo<Props>(\n ({ operation, definition, index, onChange, onRemove, onToggle, queryModeller, dragHandleProps }) => {\n const styles = useStyles2(getStyles);\n const [state, setState] = useState<State>({});\n\n const onToggleSwitcher = () => {\n if (state.isOpen) {\n setState({ ...state, isOpen: false });\n } else {\n const alternatives = queryModeller\n .getAlternativeOperations(definition.alternativesKey!)\n .map((alt) => ({ label: alt.name, value: alt }));\n setState({ isOpen: true, alternatives });\n }\n };\n\n return (\n <div className={styles.header}>\n {!state.isOpen && (\n <>\n <div {...dragHandleProps}>{definition.name ?? definition.id}</div>\n <FlexItem grow={1} />\n <div className={`${styles.operationHeaderButtons} operation-header-show-on-hover`}>\n <Button\n icon=\"angle-down\"\n size=\"sm\"\n onClick={onToggleSwitcher}\n fill=\"text\"\n variant=\"secondary\"\n title=\"Click to view alternative operations\"\n />\n <OperationInfoButton\n definition={definition}\n operation={operation}\n innerQueryPlaceholder={queryModeller.innerQueryPlaceholder}\n />\n {definition.toggleable && (\n <Button\n icon={operation.disabled ? 'eye-slash' : 'eye'}\n size=\"sm\"\n onClick={() => onToggle(index)}\n fill=\"text\"\n variant=\"secondary\"\n title={operation.disabled ? 'Enable operation' : 'Disable operation'}\n />\n )}\n <Button\n icon=\"times\"\n size=\"sm\"\n onClick={() => onRemove(index)}\n fill=\"text\"\n variant=\"secondary\"\n title=\"Remove operation\"\n />\n </div>\n </>\n )}\n {state.isOpen && (\n <div className={styles.selectWrapper}>\n <Select\n autoFocus\n openMenuOnFocus\n placeholder=\"Replace with\"\n options={state.alternatives}\n isOpen={true}\n onCloseMenu={onToggleSwitcher}\n onChange={(value) => {\n if (value.value) {\n // Operation should exist if it is selectable\n const newDef = queryModeller.getOperationDefinition(value.value.id)!;\n\n // copy default params, and override with all current params\n const newParams = [...newDef.defaultParams];\n for (let i = 0; i < Math.min(operation.params.length, newParams.length); i++) {\n if (newDef.params[i].type === definition.params[i].type) {\n newParams[i] = operation.params[i];\n }\n }\n\n const changedOp = { ...operation, params: newParams, id: value.value.id };\n onChange(\n index,\n definition.changeTypeHandler ? definition.changeTypeHandler(changedOp, newDef) : changedOp\n );\n }\n }}\n />\n </div>\n )}\n </div>\n );\n }\n);\n\nOperationHeader.displayName = 'OperationHeader';\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n header: css({\n borderBottom: `1px solid ${theme.colors.border.medium}`,\n padding: theme.spacing(0.5, 0.5, 0.5, 1),\n display: 'flex',\n alignItems: 'center',\n }),\n operationHeaderButtons: css({\n opacity: 1,\n }),\n selectWrapper: css({\n paddingRight: theme.spacing(2),\n }),\n };\n};\n"],"names":["React"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { css } from '@emotion/css';
2
- import React, { useState } from 'react';
2
+ import React__default, { useState } from 'react';
3
3
  import { usePopperTooltip } from 'react-popper-tooltip';
4
4
  import { renderMarkdown } from '@grafana/data';
5
5
  import { useStyles2, Button, Portal } from '@grafana/ui';
6
6
  import { FlexItem } from '../../QueryEditor/FlexItem.js';
7
7
 
8
- const OperationInfoButton = React.memo(({ definition, operation, innerQueryPlaceholder }) => {
8
+ const OperationInfoButton = React__default.memo(({ definition, operation, innerQueryPlaceholder }) => {
9
9
  const styles = useStyles2(getStyles);
10
10
  const [show, setShow] = useState(false);
11
11
  const { getTooltipProps, setTooltipRef, setTriggerRef, visible } = usePopperTooltip({
@@ -16,7 +16,7 @@ const OperationInfoButton = React.memo(({ definition, operation, innerQueryPlace
16
16
  interactive: true,
17
17
  trigger: ["click"]
18
18
  });
19
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
19
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(
20
20
  Button,
21
21
  {
22
22
  title: "Click to show description",
@@ -26,7 +26,7 @@ const OperationInfoButton = React.memo(({ definition, operation, innerQueryPlace
26
26
  variant: "secondary",
27
27
  fill: "text"
28
28
  }
29
- ), visible && /* @__PURE__ */ React.createElement(Portal, null, /* @__PURE__ */ React.createElement("div", { ref: setTooltipRef, ...getTooltipProps(), className: styles.docBox }, /* @__PURE__ */ React.createElement("div", { className: styles.docBoxHeader }, /* @__PURE__ */ React.createElement("span", null, definition.renderer(operation, definition, innerQueryPlaceholder)), /* @__PURE__ */ React.createElement(FlexItem, { grow: 1 }), /* @__PURE__ */ React.createElement(
29
+ ), visible && /* @__PURE__ */ React__default.createElement(Portal, null, /* @__PURE__ */ React__default.createElement("div", { ref: setTooltipRef, ...getTooltipProps(), className: styles.docBox }, /* @__PURE__ */ React__default.createElement("div", { className: styles.docBoxHeader }, /* @__PURE__ */ React__default.createElement("span", null, definition.renderer(operation, definition, innerQueryPlaceholder)), /* @__PURE__ */ React__default.createElement(FlexItem, { grow: 1 }), /* @__PURE__ */ React__default.createElement(
30
30
  Button,
31
31
  {
32
32
  icon: "times",
@@ -35,7 +35,7 @@ const OperationInfoButton = React.memo(({ definition, operation, innerQueryPlace
35
35
  variant: "secondary",
36
36
  title: "Remove operation"
37
37
  }
38
- )), /* @__PURE__ */ React.createElement(
38
+ )), /* @__PURE__ */ React__default.createElement(
39
39
  "div",
40
40
  {
41
41
  className: styles.docBoxBody,