@flanksource/clicky-ui 0.3.55 → 0.3.57

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 (1118) hide show
  1. package/NOTICE.md +6 -0
  2. package/dist/ai.cjs +6 -0
  3. package/dist/ai.js +3 -1
  4. package/dist/chat.cjs +2 -0
  5. package/dist/chat.d.ts +1 -0
  6. package/dist/chat.d.ts.map +1 -1
  7. package/dist/chat.js +2 -1
  8. package/dist/comments/CommentCard.cjs +37 -7
  9. package/dist/comments/CommentCard.cjs.map +1 -1
  10. package/dist/comments/CommentCard.d.ts +11 -1
  11. package/dist/comments/CommentCard.d.ts.map +1 -1
  12. package/dist/comments/CommentCard.js +37 -7
  13. package/dist/comments/CommentCard.js.map +1 -1
  14. package/dist/comments/CommentCardParts.cjs +9 -4
  15. package/dist/comments/CommentCardParts.cjs.map +1 -1
  16. package/dist/comments/CommentCardParts.d.ts.map +1 -1
  17. package/dist/comments/CommentCardParts.js +9 -4
  18. package/dist/comments/CommentCardParts.js.map +1 -1
  19. package/dist/comments/CommentComposer.cjs +8 -8
  20. package/dist/comments/CommentComposer.cjs.map +1 -1
  21. package/dist/comments/CommentComposer.d.ts.map +1 -1
  22. package/dist/comments/CommentComposer.js +8 -8
  23. package/dist/comments/CommentComposer.js.map +1 -1
  24. package/dist/comments/CommentProvider.cjs +5 -1
  25. package/dist/comments/CommentProvider.cjs.map +1 -1
  26. package/dist/comments/CommentProvider.d.ts +1 -1
  27. package/dist/comments/CommentProvider.d.ts.map +1 -1
  28. package/dist/comments/CommentProvider.js +5 -1
  29. package/dist/comments/CommentProvider.js.map +1 -1
  30. package/dist/comments/CommentSidePanel.cjs +17 -11
  31. package/dist/comments/CommentSidePanel.cjs.map +1 -1
  32. package/dist/comments/CommentSidePanel.d.ts +6 -0
  33. package/dist/comments/CommentSidePanel.d.ts.map +1 -1
  34. package/dist/comments/CommentSidePanel.js +17 -11
  35. package/dist/comments/CommentSidePanel.js.map +1 -1
  36. package/dist/comments/CommentThread.cjs +4 -1
  37. package/dist/comments/CommentThread.cjs.map +1 -1
  38. package/dist/comments/CommentThread.d.ts +4 -1
  39. package/dist/comments/CommentThread.d.ts.map +1 -1
  40. package/dist/comments/CommentThread.js +4 -1
  41. package/dist/comments/CommentThread.js.map +1 -1
  42. package/dist/comments/CommentThreadList.cjs +6 -3
  43. package/dist/comments/CommentThreadList.cjs.map +1 -1
  44. package/dist/comments/CommentThreadList.d.ts +7 -2
  45. package/dist/comments/CommentThreadList.d.ts.map +1 -1
  46. package/dist/comments/CommentThreadList.js +6 -3
  47. package/dist/comments/CommentThreadList.js.map +1 -1
  48. package/dist/comments/MentionTextarea.cjs +1 -1
  49. package/dist/comments/MentionTextarea.cjs.map +1 -1
  50. package/dist/comments/MentionTextarea.d.ts.map +1 -1
  51. package/dist/comments/MentionTextarea.js +1 -1
  52. package/dist/comments/MentionTextarea.js.map +1 -1
  53. package/dist/comments/comment-assign.cjs +68 -0
  54. package/dist/comments/comment-assign.cjs.map +1 -0
  55. package/dist/comments/comment-assign.d.ts +31 -0
  56. package/dist/comments/comment-assign.d.ts.map +1 -0
  57. package/dist/comments/comment-assign.js +67 -0
  58. package/dist/comments/comment-assign.js.map +1 -0
  59. package/dist/comments/comment-types.cjs.map +1 -1
  60. package/dist/comments/comment-types.d.ts +39 -0
  61. package/dist/comments/comment-types.d.ts.map +1 -1
  62. package/dist/comments/comment-types.js.map +1 -1
  63. package/dist/comments/comment-utils.cjs +2 -0
  64. package/dist/comments/comment-utils.cjs.map +1 -1
  65. package/dist/comments/comment-utils.d.ts +2 -0
  66. package/dist/comments/comment-utils.d.ts.map +1 -1
  67. package/dist/comments/comment-utils.js +2 -0
  68. package/dist/comments/comment-utils.js.map +1 -1
  69. package/dist/comments.cjs +3 -0
  70. package/dist/comments.d.ts +1 -0
  71. package/dist/comments.d.ts.map +1 -1
  72. package/dist/comments.js +2 -1
  73. package/dist/components/ComboboxMenu.cjs +23 -13
  74. package/dist/components/ComboboxMenu.cjs.map +1 -1
  75. package/dist/components/ComboboxMenu.d.ts.map +1 -1
  76. package/dist/components/ComboboxMenu.js +23 -13
  77. package/dist/components/ComboboxMenu.js.map +1 -1
  78. package/dist/components/ErrorWrapper.cjs +15 -4
  79. package/dist/components/ErrorWrapper.cjs.map +1 -1
  80. package/dist/components/ErrorWrapper.d.ts +7 -0
  81. package/dist/components/ErrorWrapper.d.ts.map +1 -1
  82. package/dist/components/ErrorWrapper.js +15 -4
  83. package/dist/components/ErrorWrapper.js.map +1 -1
  84. package/dist/components/FilterBar.cjs +29 -6
  85. package/dist/components/FilterBar.cjs.map +1 -1
  86. package/dist/components/FilterBar.d.ts +3 -1
  87. package/dist/components/FilterBar.d.ts.map +1 -1
  88. package/dist/components/FilterBar.js +29 -6
  89. package/dist/components/FilterBar.js.map +1 -1
  90. package/dist/components/ItemActions.cjs +1 -1
  91. package/dist/components/ItemActions.cjs.map +1 -1
  92. package/dist/components/ItemActions.js +1 -1
  93. package/dist/components/ItemActions.js.map +1 -1
  94. package/dist/components/ListMenu.cjs +33 -3
  95. package/dist/components/ListMenu.cjs.map +1 -1
  96. package/dist/components/ListMenu.d.ts +4 -1
  97. package/dist/components/ListMenu.d.ts.map +1 -1
  98. package/dist/components/ListMenu.js +33 -3
  99. package/dist/components/ListMenu.js.map +1 -1
  100. package/dist/components/ListMenuItems.cjs +80 -0
  101. package/dist/components/ListMenuItems.cjs.map +1 -0
  102. package/dist/components/ListMenuItems.d.ts +8 -0
  103. package/dist/components/ListMenuItems.d.ts.map +1 -0
  104. package/dist/components/ListMenuItems.js +80 -0
  105. package/dist/components/ListMenuItems.js.map +1 -0
  106. package/dist/components/LocalPathPicker.cjs +182 -0
  107. package/dist/components/LocalPathPicker.cjs.map +1 -0
  108. package/dist/components/LocalPathPicker.d.ts +11 -0
  109. package/dist/components/LocalPathPicker.d.ts.map +1 -0
  110. package/dist/components/LocalPathPicker.js +182 -0
  111. package/dist/components/LocalPathPicker.js.map +1 -0
  112. package/dist/components/LocalPathTree.cjs +89 -0
  113. package/dist/components/LocalPathTree.cjs.map +1 -0
  114. package/dist/components/LocalPathTree.d.ts +9 -0
  115. package/dist/components/LocalPathTree.d.ts.map +1 -0
  116. package/dist/components/LocalPathTree.js +89 -0
  117. package/dist/components/LocalPathTree.js.map +1 -0
  118. package/dist/components/RangeSlider.cjs +10 -30
  119. package/dist/components/RangeSlider.cjs.map +1 -1
  120. package/dist/components/RangeSlider.d.ts.map +1 -1
  121. package/dist/components/RangeSlider.js +4 -24
  122. package/dist/components/RangeSlider.js.map +1 -1
  123. package/dist/components/Slider.cjs +79 -0
  124. package/dist/components/Slider.cjs.map +1 -0
  125. package/dist/components/Slider.d.ts +23 -0
  126. package/dist/components/Slider.d.ts.map +1 -0
  127. package/dist/components/Slider.js +79 -0
  128. package/dist/components/Slider.js.map +1 -0
  129. package/dist/components/combobox-types.d.ts +4 -1
  130. package/dist/components/combobox-types.d.ts.map +1 -1
  131. package/dist/components/filter-bar-field-utils.cjs +3 -5
  132. package/dist/components/filter-bar-field-utils.cjs.map +1 -1
  133. package/dist/components/filter-bar-field-utils.d.ts.map +1 -1
  134. package/dist/components/filter-bar-field-utils.js +3 -5
  135. package/dist/components/filter-bar-field-utils.js.map +1 -1
  136. package/dist/components/filter-bar-tree-model.cjs +22 -0
  137. package/dist/components/filter-bar-tree-model.cjs.map +1 -0
  138. package/dist/components/filter-bar-tree-model.d.ts +33 -0
  139. package/dist/components/filter-bar-tree-model.d.ts.map +1 -0
  140. package/dist/components/filter-bar-tree-model.js +21 -0
  141. package/dist/components/filter-bar-tree-model.js.map +1 -0
  142. package/dist/components/filter-bar-tree.cjs +84 -0
  143. package/dist/components/filter-bar-tree.cjs.map +1 -0
  144. package/dist/components/filter-bar-tree.d.ts +7 -0
  145. package/dist/components/filter-bar-tree.d.ts.map +1 -0
  146. package/dist/components/filter-bar-tree.js +84 -0
  147. package/dist/components/filter-bar-tree.js.map +1 -0
  148. package/dist/components/json-schema-form-debug-glyph-map.cjs +2 -0
  149. package/dist/components/json-schema-form-debug-glyph-map.cjs.map +1 -1
  150. package/dist/components/json-schema-form-debug-glyph-map.d.ts.map +1 -1
  151. package/dist/components/json-schema-form-debug-glyph-map.js +2 -0
  152. package/dist/components/json-schema-form-debug-glyph-map.js.map +1 -1
  153. package/dist/components/json-schema-form-help-links.cjs +18 -0
  154. package/dist/components/json-schema-form-help-links.cjs.map +1 -0
  155. package/dist/components/json-schema-form-help-links.d.ts +5 -0
  156. package/dist/components/json-schema-form-help-links.d.ts.map +1 -0
  157. package/dist/components/json-schema-form-help-links.js +18 -0
  158. package/dist/components/json-schema-form-help-links.js.map +1 -0
  159. package/dist/components/json-schema-form-help-model.cjs +7 -0
  160. package/dist/components/json-schema-form-help-model.cjs.map +1 -0
  161. package/dist/components/json-schema-form-help-model.d.ts +3 -0
  162. package/dist/components/json-schema-form-help-model.d.ts.map +1 -0
  163. package/dist/components/json-schema-form-help-model.js +7 -0
  164. package/dist/components/json-schema-form-help-model.js.map +1 -0
  165. package/dist/components/json-schema-form-json.cjs +48 -0
  166. package/dist/components/json-schema-form-json.cjs.map +1 -0
  167. package/dist/components/json-schema-form-json.d.ts +7 -0
  168. package/dist/components/json-schema-form-json.d.ts.map +1 -0
  169. package/dist/components/json-schema-form-json.js +48 -0
  170. package/dist/components/json-schema-form-json.js.map +1 -0
  171. package/dist/components/json-schema-form-layout.cjs +7 -5
  172. package/dist/components/json-schema-form-layout.cjs.map +1 -1
  173. package/dist/components/json-schema-form-layout.d.ts +2 -2
  174. package/dist/components/json-schema-form-layout.d.ts.map +1 -1
  175. package/dist/components/json-schema-form-layout.js +7 -5
  176. package/dist/components/json-schema-form-layout.js.map +1 -1
  177. package/dist/components/json-schema-form-object.cjs +2 -13
  178. package/dist/components/json-schema-form-object.cjs.map +1 -1
  179. package/dist/components/json-schema-form-object.d.ts.map +1 -1
  180. package/dist/components/json-schema-form-object.js +2 -13
  181. package/dist/components/json-schema-form-object.js.map +1 -1
  182. package/dist/components/json-schema-form-refs.cjs +1 -1
  183. package/dist/components/json-schema-form-refs.cjs.map +1 -1
  184. package/dist/components/json-schema-form-refs.d.ts.map +1 -1
  185. package/dist/components/json-schema-form-refs.js +1 -1
  186. package/dist/components/json-schema-form-refs.js.map +1 -1
  187. package/dist/components/json-schema-form-render.cjs +20 -6
  188. package/dist/components/json-schema-form-render.cjs.map +1 -1
  189. package/dist/components/json-schema-form-render.d.ts.map +1 -1
  190. package/dist/components/json-schema-form-render.js +20 -6
  191. package/dist/components/json-schema-form-render.js.map +1 -1
  192. package/dist/components/json-schema-form-resolve.cjs +22 -2
  193. package/dist/components/json-schema-form-resolve.cjs.map +1 -1
  194. package/dist/components/json-schema-form-resolve.d.ts.map +1 -1
  195. package/dist/components/json-schema-form-resolve.js +22 -2
  196. package/dist/components/json-schema-form-resolve.js.map +1 -1
  197. package/dist/components/json-schema-form-types.d.ts +5 -1
  198. package/dist/components/json-schema-form-types.d.ts.map +1 -1
  199. package/dist/components/json-schema-form-union-model.cjs +46 -0
  200. package/dist/components/json-schema-form-union-model.cjs.map +1 -0
  201. package/dist/components/json-schema-form-union-model.d.ts +6 -0
  202. package/dist/components/json-schema-form-union-model.d.ts.map +1 -0
  203. package/dist/components/json-schema-form-union-model.js +43 -0
  204. package/dist/components/json-schema-form-union-model.js.map +1 -0
  205. package/dist/components/json-schema-form-union.cjs +52 -0
  206. package/dist/components/json-schema-form-union.cjs.map +1 -0
  207. package/dist/components/json-schema-form-union.d.ts +7 -0
  208. package/dist/components/json-schema-form-union.d.ts.map +1 -0
  209. package/dist/components/json-schema-form-union.js +52 -0
  210. package/dist/components/json-schema-form-union.js.map +1 -0
  211. package/dist/components/list-menu-virtual.cjs +5 -0
  212. package/dist/components/list-menu-virtual.cjs.map +1 -0
  213. package/dist/components/list-menu-virtual.d.ts +12 -0
  214. package/dist/components/list-menu-virtual.d.ts.map +1 -0
  215. package/dist/components/list-menu-virtual.js +6 -0
  216. package/dist/components/list-menu-virtual.js.map +1 -0
  217. package/dist/components/local-path.cjs +12 -0
  218. package/dist/components/local-path.cjs.map +1 -0
  219. package/dist/components/local-path.d.ts +14 -0
  220. package/dist/components/local-path.d.ts.map +1 -0
  221. package/dist/components/local-path.js +12 -0
  222. package/dist/components/local-path.js.map +1 -0
  223. package/dist/components/slider-shared.cjs +32 -0
  224. package/dist/components/slider-shared.cjs.map +1 -0
  225. package/dist/components/slider-shared.d.ts +18 -0
  226. package/dist/components/slider-shared.d.ts.map +1 -0
  227. package/dist/components/slider-shared.js +27 -0
  228. package/dist/components/slider-shared.js.map +1 -0
  229. package/dist/components.cjs +8 -0
  230. package/dist/components.d.ts +6 -1
  231. package/dist/components.d.ts.map +1 -1
  232. package/dist/components.js +5 -1
  233. package/dist/connections/ConnectionsPage.cjs +51 -19
  234. package/dist/connections/ConnectionsPage.cjs.map +1 -1
  235. package/dist/connections/ConnectionsPage.d.ts +9 -1
  236. package/dist/connections/ConnectionsPage.d.ts.map +1 -1
  237. package/dist/connections/ConnectionsPage.js +52 -20
  238. package/dist/connections/ConnectionsPage.js.map +1 -1
  239. package/dist/connections/connectionDashboard.cjs +13 -8
  240. package/dist/connections/connectionDashboard.cjs.map +1 -1
  241. package/dist/connections/connectionDashboard.d.ts +8 -3
  242. package/dist/connections/connectionDashboard.d.ts.map +1 -1
  243. package/dist/connections/connectionDashboard.js +14 -9
  244. package/dist/connections/connectionDashboard.js.map +1 -1
  245. package/dist/connections/connectionDashboardModel.cjs.map +1 -1
  246. package/dist/connections/connectionDashboardModel.d.ts +4 -0
  247. package/dist/connections/connectionDashboardModel.d.ts.map +1 -1
  248. package/dist/connections/connectionDashboardModel.js.map +1 -1
  249. package/dist/connections/connectionDashboardRow.cjs +75 -55
  250. package/dist/connections/connectionDashboardRow.cjs.map +1 -1
  251. package/dist/connections/connectionDashboardRow.d.ts +3 -2
  252. package/dist/connections/connectionDashboardRow.d.ts.map +1 -1
  253. package/dist/connections/connectionDashboardRow.js +75 -55
  254. package/dist/connections/connectionDashboardRow.js.map +1 -1
  255. package/dist/connections/connectionNamespaceField.cjs +17 -0
  256. package/dist/connections/connectionNamespaceField.cjs.map +1 -0
  257. package/dist/connections/connectionNamespaceField.d.ts +10 -0
  258. package/dist/connections/connectionNamespaceField.d.ts.map +1 -0
  259. package/dist/connections/connectionNamespaceField.js +17 -0
  260. package/dist/connections/connectionNamespaceField.js.map +1 -0
  261. package/dist/connections/connectionSchemaFormExtensions.cjs +98 -0
  262. package/dist/connections/connectionSchemaFormExtensions.cjs.map +1 -0
  263. package/dist/connections/connectionSchemaFormExtensions.d.ts +41 -0
  264. package/dist/connections/connectionSchemaFormExtensions.d.ts.map +1 -0
  265. package/dist/connections/connectionSchemaFormExtensions.js +96 -0
  266. package/dist/connections/connectionSchemaFormExtensions.js.map +1 -0
  267. package/dist/connections/connectionsPageModel.cjs +11 -0
  268. package/dist/connections/connectionsPageModel.cjs.map +1 -1
  269. package/dist/connections/connectionsPageModel.d.ts +5 -0
  270. package/dist/connections/connectionsPageModel.d.ts.map +1 -1
  271. package/dist/connections/connectionsPageModel.js +11 -1
  272. package/dist/connections/connectionsPageModel.js.map +1 -1
  273. package/dist/connections.cjs +5 -0
  274. package/dist/connections.d.ts +2 -1
  275. package/dist/connections.d.ts.map +1 -1
  276. package/dist/connections.js +3 -2
  277. package/dist/data/AvatarBadge.cjs +3 -3
  278. package/dist/data/AvatarBadge.cjs.map +1 -1
  279. package/dist/data/AvatarBadge.js +3 -3
  280. package/dist/data/AvatarBadge.js.map +1 -1
  281. package/dist/data/CodeDiff.cjs +2 -0
  282. package/dist/data/CodeDiff.cjs.map +1 -1
  283. package/dist/data/CodeDiff.js +2 -0
  284. package/dist/data/CodeDiff.js.map +1 -1
  285. package/dist/data/DataTable.cjs +3 -2
  286. package/dist/data/DataTable.cjs.map +1 -1
  287. package/dist/data/DataTable.d.ts.map +1 -1
  288. package/dist/data/DataTable.js +3 -2
  289. package/dist/data/DataTable.js.map +1 -1
  290. package/dist/data/Gauge.cjs +1 -1
  291. package/dist/data/Gauge.cjs.map +1 -1
  292. package/dist/data/Gauge.js +1 -1
  293. package/dist/data/Gauge.js.map +1 -1
  294. package/dist/data/HighlightedTokens.cjs +2 -10
  295. package/dist/data/HighlightedTokens.cjs.map +1 -1
  296. package/dist/data/HighlightedTokens.d.ts.map +1 -1
  297. package/dist/data/HighlightedTokens.js +1 -9
  298. package/dist/data/HighlightedTokens.js.map +1 -1
  299. package/dist/data/Markdown.cjs +38 -11
  300. package/dist/data/Markdown.cjs.map +1 -1
  301. package/dist/data/Markdown.d.ts +9 -1
  302. package/dist/data/Markdown.d.ts.map +1 -1
  303. package/dist/data/Markdown.js +39 -12
  304. package/dist/data/Markdown.js.map +1 -1
  305. package/dist/data/MultiGaugeBar.cjs +157 -0
  306. package/dist/data/MultiGaugeBar.cjs.map +1 -0
  307. package/dist/data/MultiGaugeBar.d.ts +29 -0
  308. package/dist/data/MultiGaugeBar.d.ts.map +1 -0
  309. package/dist/data/MultiGaugeBar.js +157 -0
  310. package/dist/data/MultiGaugeBar.js.map +1 -0
  311. package/dist/data/OpenInFilesLink.cjs +27 -0
  312. package/dist/data/OpenInFilesLink.cjs.map +1 -0
  313. package/dist/data/OpenInFilesLink.d.ts +15 -0
  314. package/dist/data/OpenInFilesLink.d.ts.map +1 -0
  315. package/dist/data/OpenInFilesLink.js +27 -0
  316. package/dist/data/OpenInFilesLink.js.map +1 -0
  317. package/dist/data/ProgressBar.cjs +5 -3
  318. package/dist/data/ProgressBar.cjs.map +1 -1
  319. package/dist/data/ProgressBar.d.ts +5 -1
  320. package/dist/data/ProgressBar.d.ts.map +1 -1
  321. package/dist/data/ProgressBar.js +5 -3
  322. package/dist/data/ProgressBar.js.map +1 -1
  323. package/dist/data/ProgressBars.cjs +13 -5
  324. package/dist/data/ProgressBars.cjs.map +1 -1
  325. package/dist/data/ProgressBars.d.ts +6 -1
  326. package/dist/data/ProgressBars.d.ts.map +1 -1
  327. package/dist/data/ProgressBars.js +13 -5
  328. package/dist/data/ProgressBars.js.map +1 -1
  329. package/dist/data/Properties.cjs +3 -3
  330. package/dist/data/Properties.cjs.map +1 -1
  331. package/dist/data/Properties.js +3 -3
  332. package/dist/data/Properties.js.map +1 -1
  333. package/dist/data/TaskProgress.cjs +14 -6
  334. package/dist/data/TaskProgress.cjs.map +1 -1
  335. package/dist/data/TaskProgress.d.ts +3 -1
  336. package/dist/data/TaskProgress.d.ts.map +1 -1
  337. package/dist/data/TaskProgress.js +14 -6
  338. package/dist/data/TaskProgress.js.map +1 -1
  339. package/dist/data/TaskPrompts.cjs +96 -0
  340. package/dist/data/TaskPrompts.cjs.map +1 -0
  341. package/dist/data/TaskPrompts.d.ts +6 -0
  342. package/dist/data/TaskPrompts.d.ts.map +1 -0
  343. package/dist/data/TaskPrompts.js +96 -0
  344. package/dist/data/TaskPrompts.js.map +1 -0
  345. package/dist/data/TaskSnapshot.cjs.map +1 -1
  346. package/dist/data/TaskSnapshot.d.ts +3 -0
  347. package/dist/data/TaskSnapshot.d.ts.map +1 -1
  348. package/dist/data/TaskSnapshot.js.map +1 -1
  349. package/dist/data/TimeseriesCoreBars.cjs +7 -3
  350. package/dist/data/TimeseriesCoreBars.cjs.map +1 -1
  351. package/dist/data/TimeseriesCoreBars.d.ts.map +1 -1
  352. package/dist/data/TimeseriesCoreBars.js +8 -4
  353. package/dist/data/TimeseriesCoreBars.js.map +1 -1
  354. package/dist/data/TimeseriesGauge.cjs +12 -5
  355. package/dist/data/TimeseriesGauge.cjs.map +1 -1
  356. package/dist/data/TimeseriesGauge.d.ts.map +1 -1
  357. package/dist/data/TimeseriesGauge.js +13 -6
  358. package/dist/data/TimeseriesGauge.js.map +1 -1
  359. package/dist/data/TimeseriesPanel.cjs +10 -9
  360. package/dist/data/TimeseriesPanel.cjs.map +1 -1
  361. package/dist/data/TimeseriesPanel.d.ts +1 -1
  362. package/dist/data/TimeseriesPanel.d.ts.map +1 -1
  363. package/dist/data/TimeseriesPanel.js +11 -10
  364. package/dist/data/TimeseriesPanel.js.map +1 -1
  365. package/dist/data/TimeseriesPanel.model.cjs +62 -10
  366. package/dist/data/TimeseriesPanel.model.cjs.map +1 -1
  367. package/dist/data/TimeseriesPanel.model.d.ts +40 -1
  368. package/dist/data/TimeseriesPanel.model.d.ts.map +1 -1
  369. package/dist/data/TimeseriesPanel.model.js +62 -11
  370. package/dist/data/TimeseriesPanel.model.js.map +1 -1
  371. package/dist/data/WorkloadCard.cjs +7 -3
  372. package/dist/data/WorkloadCard.cjs.map +1 -1
  373. package/dist/data/WorkloadCard.d.ts +3 -1
  374. package/dist/data/WorkloadCard.d.ts.map +1 -1
  375. package/dist/data/WorkloadCard.js +7 -3
  376. package/dist/data/WorkloadCard.js.map +1 -1
  377. package/dist/data/WorkloadCard.model.cjs.map +1 -1
  378. package/dist/data/WorkloadCard.model.d.ts +2 -0
  379. package/dist/data/WorkloadCard.model.d.ts.map +1 -1
  380. package/dist/data/WorkloadCard.model.js.map +1 -1
  381. package/dist/data/ai/ChatWindow.placement.cjs +2 -1
  382. package/dist/data/ai/ChatWindow.placement.cjs.map +1 -1
  383. package/dist/data/ai/ChatWindow.placement.d.ts +1 -1
  384. package/dist/data/ai/ChatWindow.placement.d.ts.map +1 -1
  385. package/dist/data/ai/ChatWindow.placement.js +2 -1
  386. package/dist/data/ai/ChatWindow.placement.js.map +1 -1
  387. package/dist/data/ai/PromptCatalog/PromptLayerStrip.cjs +6 -3
  388. package/dist/data/ai/PromptCatalog/PromptLayerStrip.cjs.map +1 -1
  389. package/dist/data/ai/PromptCatalog/PromptLayerStrip.js +6 -3
  390. package/dist/data/ai/PromptCatalog/PromptLayerStrip.js.map +1 -1
  391. package/dist/data/ai/PromptCatalog/PromptPage.cjs +2 -1
  392. package/dist/data/ai/PromptCatalog/PromptPage.cjs.map +1 -1
  393. package/dist/data/ai/PromptCatalog/PromptPage.d.ts.map +1 -1
  394. package/dist/data/ai/PromptCatalog/PromptPage.js +2 -1
  395. package/dist/data/ai/PromptCatalog/PromptPage.js.map +1 -1
  396. package/dist/data/ai/PromptCatalog/PromptPageHeader.cjs +9 -6
  397. package/dist/data/ai/PromptCatalog/PromptPageHeader.cjs.map +1 -1
  398. package/dist/data/ai/PromptCatalog/PromptPageHeader.d.ts.map +1 -1
  399. package/dist/data/ai/PromptCatalog/PromptPageHeader.js +9 -6
  400. package/dist/data/ai/PromptCatalog/PromptPageHeader.js.map +1 -1
  401. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.cjs +3 -3
  402. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.cjs.map +1 -1
  403. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.d.ts +2 -1
  404. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.d.ts.map +1 -1
  405. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.js +3 -3
  406. package/dist/data/ai/PromptCatalog/PromptPageSaveBar.js.map +1 -1
  407. package/dist/data/ai/PromptCatalog/prompt-page-model.cjs +4 -3
  408. package/dist/data/ai/PromptCatalog/prompt-page-model.cjs.map +1 -1
  409. package/dist/data/ai/PromptCatalog/prompt-page-model.d.ts +1 -1
  410. package/dist/data/ai/PromptCatalog/prompt-page-model.d.ts.map +1 -1
  411. package/dist/data/ai/PromptCatalog/prompt-page-model.js +4 -3
  412. package/dist/data/ai/PromptCatalog/prompt-page-model.js.map +1 -1
  413. package/dist/data/ai/PromptCatalog/types.d.ts +1 -0
  414. package/dist/data/ai/PromptCatalog/types.d.ts.map +1 -1
  415. package/dist/data/ai/SpecRuntimeBar.cjs +2 -2
  416. package/dist/data/ai/SpecRuntimeBar.cjs.map +1 -1
  417. package/dist/data/ai/SpecRuntimeBar.d.ts +4 -1
  418. package/dist/data/ai/SpecRuntimeBar.d.ts.map +1 -1
  419. package/dist/data/ai/SpecRuntimeBar.js +2 -2
  420. package/dist/data/ai/SpecRuntimeBar.js.map +1 -1
  421. package/dist/data/ai/SpecRuntimeEditor/PromptSection.cjs +1 -1
  422. package/dist/data/ai/SpecRuntimeEditor/PromptSection.cjs.map +1 -1
  423. package/dist/data/ai/SpecRuntimeEditor/PromptSection.js +1 -1
  424. package/dist/data/ai/SpecRuntimeEditor/PromptSection.js.map +1 -1
  425. package/dist/data/ai/SpecRuntimeEditor.model.cjs +2 -2
  426. package/dist/data/ai/SpecRuntimeEditor.model.cjs.map +1 -1
  427. package/dist/data/ai/SpecRuntimeEditor.model.d.ts +2 -2
  428. package/dist/data/ai/SpecRuntimeEditor.model.d.ts.map +1 -1
  429. package/dist/data/ai/SpecRuntimeEditor.model.js +2 -2
  430. package/dist/data/ai/SpecRuntimeEditor.model.js.map +1 -1
  431. package/dist/data/ai/ThreadPicker.cjs +2 -2
  432. package/dist/data/ai/ThreadPicker.cjs.map +1 -1
  433. package/dist/data/ai/ThreadPicker.js +2 -2
  434. package/dist/data/ai/ThreadPicker.js.map +1 -1
  435. package/dist/data/ai/index.d.ts +2 -0
  436. package/dist/data/ai/index.d.ts.map +1 -1
  437. package/dist/data/ai/use-prompt-run-stream.cjs +126 -0
  438. package/dist/data/ai/use-prompt-run-stream.cjs.map +1 -0
  439. package/dist/data/ai/use-prompt-run-stream.d.ts +52 -0
  440. package/dist/data/ai/use-prompt-run-stream.d.ts.map +1 -0
  441. package/dist/data/ai/use-prompt-run-stream.js +126 -0
  442. package/dist/data/ai/use-prompt-run-stream.js.map +1 -0
  443. package/dist/data/cache-browser/CacheBrowser.cjs +1 -0
  444. package/dist/data/cache-browser/CacheBrowser.cjs.map +1 -1
  445. package/dist/data/cache-browser/CacheBrowser.d.ts.map +1 -1
  446. package/dist/data/cache-browser/CacheBrowser.js +1 -0
  447. package/dist/data/cache-browser/CacheBrowser.js.map +1 -1
  448. package/dist/data/charts/BarChart.cjs +194 -0
  449. package/dist/data/charts/BarChart.cjs.map +1 -0
  450. package/dist/data/charts/BarChart.d.ts +19 -0
  451. package/dist/data/charts/BarChart.d.ts.map +1 -0
  452. package/dist/data/charts/BarChart.js +194 -0
  453. package/dist/data/charts/BarChart.js.map +1 -0
  454. package/dist/data/charts/ChartLegend.cjs +54 -0
  455. package/dist/data/charts/ChartLegend.cjs.map +1 -0
  456. package/dist/data/charts/ChartLegend.d.ts +17 -0
  457. package/dist/data/charts/ChartLegend.d.ts.map +1 -0
  458. package/dist/data/charts/ChartLegend.js +54 -0
  459. package/dist/data/charts/ChartLegend.js.map +1 -0
  460. package/dist/data/charts/Sparkline.cjs +56 -0
  461. package/dist/data/charts/Sparkline.cjs.map +1 -0
  462. package/dist/data/charts/Sparkline.d.ts +15 -0
  463. package/dist/data/charts/Sparkline.d.ts.map +1 -0
  464. package/dist/data/charts/Sparkline.js +56 -0
  465. package/dist/data/charts/Sparkline.js.map +1 -0
  466. package/dist/data/charts/StackedBarChart.cjs +241 -0
  467. package/dist/data/charts/StackedBarChart.cjs.map +1 -0
  468. package/dist/data/charts/StackedBarChart.d.ts +20 -0
  469. package/dist/data/charts/StackedBarChart.d.ts.map +1 -0
  470. package/dist/data/charts/StackedBarChart.js +241 -0
  471. package/dist/data/charts/StackedBarChart.js.map +1 -0
  472. package/dist/data/charts/TrendChart.cjs +157 -0
  473. package/dist/data/charts/TrendChart.cjs.map +1 -0
  474. package/dist/data/charts/TrendChart.d.ts +20 -0
  475. package/dist/data/charts/TrendChart.d.ts.map +1 -0
  476. package/dist/data/charts/TrendChart.js +157 -0
  477. package/dist/data/charts/TrendChart.js.map +1 -0
  478. package/dist/data/charts/chart-marks.cjs +115 -0
  479. package/dist/data/charts/chart-marks.cjs.map +1 -0
  480. package/dist/data/charts/chart-marks.d.ts +39 -0
  481. package/dist/data/charts/chart-marks.d.ts.map +1 -0
  482. package/dist/data/charts/chart-marks.js +112 -0
  483. package/dist/data/charts/chart-marks.js.map +1 -0
  484. package/dist/data/charts/chart-palette.cjs +74 -0
  485. package/dist/data/charts/chart-palette.cjs.map +1 -0
  486. package/dist/data/charts/chart-palette.d.ts +58 -0
  487. package/dist/data/charts/chart-palette.d.ts.map +1 -0
  488. package/dist/data/charts/chart-palette.js +72 -0
  489. package/dist/data/charts/chart-palette.js.map +1 -0
  490. package/dist/data/charts/chart-scale.cjs +115 -0
  491. package/dist/data/charts/chart-scale.cjs.map +1 -0
  492. package/dist/data/charts/chart-scale.d.ts +41 -0
  493. package/dist/data/charts/chart-scale.d.ts.map +1 -0
  494. package/dist/data/charts/chart-scale.js +104 -0
  495. package/dist/data/charts/chart-scale.js.map +1 -0
  496. package/dist/data/charts/chart.test-utils.d.ts +7 -0
  497. package/dist/data/charts/chart.test-utils.d.ts.map +1 -0
  498. package/dist/data/charts/index.d.ts +7 -0
  499. package/dist/data/charts/index.d.ts.map +1 -0
  500. package/dist/data/chat/MessageActions.cjs +1 -1
  501. package/dist/data/chat/MessageActions.cjs.map +1 -1
  502. package/dist/data/chat/MessageActions.js +1 -1
  503. package/dist/data/chat/MessageActions.js.map +1 -1
  504. package/dist/data/diagnostics/DiagnosticsDetailPanel.cjs +1 -1
  505. package/dist/data/diagnostics/DiagnosticsDetailPanel.js +1 -1
  506. package/dist/data/diagnostics/DiagnosticsTree.cjs +1 -1
  507. package/dist/data/diagnostics/DiagnosticsTree.cjs.map +1 -1
  508. package/dist/data/diagnostics/DiagnosticsTree.js +1 -1
  509. package/dist/data/diagnostics/DiagnosticsTree.js.map +1 -1
  510. package/dist/data/diagnostics/FrameSourceWindow.cjs +9 -2
  511. package/dist/data/diagnostics/FrameSourceWindow.cjs.map +1 -1
  512. package/dist/data/diagnostics/FrameSourceWindow.d.ts +1 -1
  513. package/dist/data/diagnostics/FrameSourceWindow.d.ts.map +1 -1
  514. package/dist/data/diagnostics/FrameSourceWindow.js +9 -2
  515. package/dist/data/diagnostics/FrameSourceWindow.js.map +1 -1
  516. package/dist/data/diagnostics/ProblemActions.cjs +37 -0
  517. package/dist/data/diagnostics/ProblemActions.cjs.map +1 -0
  518. package/dist/data/diagnostics/ProblemActions.d.ts +6 -0
  519. package/dist/data/diagnostics/ProblemActions.d.ts.map +1 -0
  520. package/dist/data/diagnostics/ProblemActions.js +37 -0
  521. package/dist/data/diagnostics/ProblemActions.js.map +1 -0
  522. package/dist/data/diagnostics/ProblemFacet.cjs +33 -0
  523. package/dist/data/diagnostics/ProblemFacet.cjs.map +1 -0
  524. package/dist/data/diagnostics/ProblemFacet.d.ts +9 -0
  525. package/dist/data/diagnostics/ProblemFacet.d.ts.map +1 -0
  526. package/dist/data/diagnostics/ProblemFacet.js +33 -0
  527. package/dist/data/diagnostics/ProblemFacet.js.map +1 -0
  528. package/dist/data/diagnostics/ProblemRow.cjs +62 -0
  529. package/dist/data/diagnostics/ProblemRow.cjs.map +1 -0
  530. package/dist/data/diagnostics/ProblemRow.d.ts +14 -0
  531. package/dist/data/diagnostics/ProblemRow.d.ts.map +1 -0
  532. package/dist/data/diagnostics/ProblemRow.js +62 -0
  533. package/dist/data/diagnostics/ProblemRow.js.map +1 -0
  534. package/dist/data/diagnostics/ProblemViewOptions.cjs +18 -0
  535. package/dist/data/diagnostics/ProblemViewOptions.cjs.map +1 -0
  536. package/dist/data/diagnostics/ProblemViewOptions.d.ts +6 -0
  537. package/dist/data/diagnostics/ProblemViewOptions.d.ts.map +1 -0
  538. package/dist/data/diagnostics/ProblemViewOptions.js +18 -0
  539. package/dist/data/diagnostics/ProblemViewOptions.js.map +1 -0
  540. package/dist/data/diagnostics/StackFrameRow.cjs +1 -1
  541. package/dist/data/diagnostics/StackFrameRow.cjs.map +1 -1
  542. package/dist/data/diagnostics/StackFrameRow.js +1 -1
  543. package/dist/data/diagnostics/StackFrameRow.js.map +1 -1
  544. package/dist/data/diagnostics/diagnostic-identity.cjs +14 -0
  545. package/dist/data/diagnostics/diagnostic-identity.cjs.map +1 -0
  546. package/dist/data/diagnostics/diagnostic-identity.d.ts +3 -0
  547. package/dist/data/diagnostics/diagnostic-identity.d.ts.map +1 -0
  548. package/dist/data/diagnostics/diagnostic-identity.js +14 -0
  549. package/dist/data/diagnostics/diagnostic-identity.js.map +1 -0
  550. package/dist/data/diagnostics/use-problem-expansion.cjs +16 -0
  551. package/dist/data/diagnostics/use-problem-expansion.cjs.map +1 -0
  552. package/dist/data/diagnostics/use-problem-expansion.d.ts +3 -0
  553. package/dist/data/diagnostics/use-problem-expansion.d.ts.map +1 -0
  554. package/dist/data/diagnostics/use-problem-expansion.js +16 -0
  555. package/dist/data/diagnostics/use-problem-expansion.js.map +1 -0
  556. package/dist/data/git/GitChangeList.cjs +9 -6
  557. package/dist/data/git/GitChangeList.cjs.map +1 -1
  558. package/dist/data/git/GitChangeList.d.ts +6 -0
  559. package/dist/data/git/GitChangeList.d.ts.map +1 -1
  560. package/dist/data/git/GitChangeList.js +9 -6
  561. package/dist/data/git/GitChangeList.js.map +1 -1
  562. package/dist/data/git/pickers/GitPickersDemo.d.ts.map +1 -1
  563. package/dist/data/git/pickers/ReferencePicker.cjs +1 -0
  564. package/dist/data/git/pickers/ReferencePicker.cjs.map +1 -1
  565. package/dist/data/git/pickers/ReferencePicker.js +1 -0
  566. package/dist/data/git/pickers/ReferencePicker.js.map +1 -1
  567. package/dist/data/lint/LintDetail.cjs +230 -189
  568. package/dist/data/lint/LintDetail.cjs.map +1 -1
  569. package/dist/data/lint/LintDetail.d.ts +25 -3
  570. package/dist/data/lint/LintDetail.d.ts.map +1 -1
  571. package/dist/data/lint/LintDetail.js +231 -192
  572. package/dist/data/lint/LintDetail.js.map +1 -1
  573. package/dist/data/lint/LintFilterBar.cjs +78 -83
  574. package/dist/data/lint/LintFilterBar.cjs.map +1 -1
  575. package/dist/data/lint/LintFilterBar.d.ts +23 -6
  576. package/dist/data/lint/LintFilterBar.d.ts.map +1 -1
  577. package/dist/data/lint/LintFilterBar.js +78 -85
  578. package/dist/data/lint/LintFilterBar.js.map +1 -1
  579. package/dist/data/lint/LintIgnoreMenu.cjs +59 -0
  580. package/dist/data/lint/LintIgnoreMenu.cjs.map +1 -0
  581. package/dist/data/lint/LintIgnoreMenu.d.ts +20 -0
  582. package/dist/data/lint/LintIgnoreMenu.d.ts.map +1 -0
  583. package/dist/data/lint/LintIgnoreMenu.js +58 -0
  584. package/dist/data/lint/LintIgnoreMenu.js.map +1 -0
  585. package/dist/data/lint/LintResults.cjs +59 -14
  586. package/dist/data/lint/LintResults.cjs.map +1 -1
  587. package/dist/data/lint/LintResults.d.ts +25 -1
  588. package/dist/data/lint/LintResults.d.ts.map +1 -1
  589. package/dist/data/lint/LintResults.fixtures.d.ts +19 -0
  590. package/dist/data/lint/LintResults.fixtures.d.ts.map +1 -1
  591. package/dist/data/lint/LintResults.js +60 -15
  592. package/dist/data/lint/LintResults.js.map +1 -1
  593. package/dist/data/lint/LintTable.cjs +156 -0
  594. package/dist/data/lint/LintTable.cjs.map +1 -0
  595. package/dist/data/lint/LintTable.d.ts +13 -0
  596. package/dist/data/lint/LintTable.d.ts.map +1 -0
  597. package/dist/data/lint/LintTable.js +156 -0
  598. package/dist/data/lint/LintTable.js.map +1 -0
  599. package/dist/data/lint/LintTreeNode.cjs +42 -19
  600. package/dist/data/lint/LintTreeNode.cjs.map +1 -1
  601. package/dist/data/lint/LintTreeNode.d.ts +7 -2
  602. package/dist/data/lint/LintTreeNode.d.ts.map +1 -1
  603. package/dist/data/lint/LintTreeNode.js +44 -21
  604. package/dist/data/lint/LintTreeNode.js.map +1 -1
  605. package/dist/data/lint/ViolationSnippet.cjs +113 -0
  606. package/dist/data/lint/ViolationSnippet.cjs.map +1 -0
  607. package/dist/data/lint/ViolationSnippet.d.ts +20 -0
  608. package/dist/data/lint/ViolationSnippet.d.ts.map +1 -0
  609. package/dist/data/lint/ViolationSnippet.js +112 -0
  610. package/dist/data/lint/ViolationSnippet.js.map +1 -0
  611. package/dist/data/lint/actions.cjs +44 -16
  612. package/dist/data/lint/actions.cjs.map +1 -1
  613. package/dist/data/lint/actions.d.ts +7 -3
  614. package/dist/data/lint/actions.d.ts.map +1 -1
  615. package/dist/data/lint/actions.js +44 -16
  616. package/dist/data/lint/actions.js.map +1 -1
  617. package/dist/data/lint/grouping.cjs +105 -8
  618. package/dist/data/lint/grouping.cjs.map +1 -1
  619. package/dist/data/lint/grouping.d.ts +21 -1
  620. package/dist/data/lint/grouping.d.ts.map +1 -1
  621. package/dist/data/lint/grouping.js +105 -10
  622. package/dist/data/lint/grouping.js.map +1 -1
  623. package/dist/data/lint/ignore-menu-items.cjs +18 -0
  624. package/dist/data/lint/ignore-menu-items.cjs.map +1 -0
  625. package/dist/data/lint/ignore-menu-items.d.ts +6 -0
  626. package/dist/data/lint/ignore-menu-items.d.ts.map +1 -0
  627. package/dist/data/lint/ignore-menu-items.js +17 -0
  628. package/dist/data/lint/ignore-menu-items.js.map +1 -0
  629. package/dist/data/lint/index.d.ts +7 -5
  630. package/dist/data/lint/index.d.ts.map +1 -1
  631. package/dist/data/lint/stats.cjs +19 -4
  632. package/dist/data/lint/stats.cjs.map +1 -1
  633. package/dist/data/lint/stats.d.ts +13 -3
  634. package/dist/data/lint/stats.d.ts.map +1 -1
  635. package/dist/data/lint/stats.js +17 -5
  636. package/dist/data/lint/stats.js.map +1 -1
  637. package/dist/data/lint/types.cjs +8 -0
  638. package/dist/data/lint/types.cjs.map +1 -1
  639. package/dist/data/lint/types.d.ts +47 -0
  640. package/dist/data/lint/types.d.ts.map +1 -1
  641. package/dist/data/lint/types.js +8 -1
  642. package/dist/data/lint/types.js.map +1 -1
  643. package/dist/data/lint/violation-menu-items.cjs +31 -0
  644. package/dist/data/lint/violation-menu-items.cjs.map +1 -0
  645. package/dist/data/lint/violation-menu-items.d.ts +12 -0
  646. package/dist/data/lint/violation-menu-items.d.ts.map +1 -0
  647. package/dist/data/lint/violation-menu-items.js +31 -0
  648. package/dist/data/lint/violation-menu-items.js.map +1 -0
  649. package/dist/data/markdown-source-blocks.cjs +38 -0
  650. package/dist/data/markdown-source-blocks.cjs.map +1 -0
  651. package/dist/data/markdown-source-blocks.d.ts +32 -0
  652. package/dist/data/markdown-source-blocks.d.ts.map +1 -0
  653. package/dist/data/markdown-source-blocks.js +35 -0
  654. package/dist/data/markdown-source-blocks.js.map +1 -0
  655. package/dist/data/test-runner/FilterFacet.cjs +52 -0
  656. package/dist/data/test-runner/FilterFacet.cjs.map +1 -0
  657. package/dist/data/test-runner/FilterFacet.d.ts +13 -0
  658. package/dist/data/test-runner/FilterFacet.d.ts.map +1 -0
  659. package/dist/data/test-runner/FilterFacet.js +52 -0
  660. package/dist/data/test-runner/FilterFacet.js.map +1 -0
  661. package/dist/data/test-runner/MatrixMarks.cjs +19 -29
  662. package/dist/data/test-runner/MatrixMarks.cjs.map +1 -1
  663. package/dist/data/test-runner/MatrixMarks.d.ts +4 -4
  664. package/dist/data/test-runner/MatrixMarks.d.ts.map +1 -1
  665. package/dist/data/test-runner/MatrixMarks.js +19 -29
  666. package/dist/data/test-runner/MatrixMarks.js.map +1 -1
  667. package/dist/data/test-runner/TestAttemptDetail.cjs +1 -1
  668. package/dist/data/test-runner/TestAttemptDetail.js +1 -1
  669. package/dist/data/test-runner/TestDetailPanel.cjs +11 -0
  670. package/dist/data/test-runner/TestDetailPanel.cjs.map +1 -1
  671. package/dist/data/test-runner/TestDetailPanel.d.ts.map +1 -1
  672. package/dist/data/test-runner/TestDetailPanel.js +11 -0
  673. package/dist/data/test-runner/TestDetailPanel.js.map +1 -1
  674. package/dist/data/test-runner/TestFilterBar.cjs +3 -44
  675. package/dist/data/test-runner/TestFilterBar.cjs.map +1 -1
  676. package/dist/data/test-runner/TestFilterBar.d.ts.map +1 -1
  677. package/dist/data/test-runner/TestFilterBar.js +3 -44
  678. package/dist/data/test-runner/TestFilterBar.js.map +1 -1
  679. package/dist/data/test-runner/TestRunner.cjs +3 -1
  680. package/dist/data/test-runner/TestRunner.cjs.map +1 -1
  681. package/dist/data/test-runner/TestRunner.d.ts +7 -1
  682. package/dist/data/test-runner/TestRunner.d.ts.map +1 -1
  683. package/dist/data/test-runner/TestRunner.js +3 -1
  684. package/dist/data/test-runner/TestRunner.js.map +1 -1
  685. package/dist/data/test-runner/context.cjs.map +1 -1
  686. package/dist/data/test-runner/context.d.ts +3 -0
  687. package/dist/data/test-runner/context.d.ts.map +1 -1
  688. package/dist/data/test-runner/context.js.map +1 -1
  689. package/dist/data/test-runner/types.d.ts +2 -0
  690. package/dist/data/test-runner/types.d.ts.map +1 -1
  691. package/dist/data/timeseries-query.cjs +98 -2
  692. package/dist/data/timeseries-query.cjs.map +1 -1
  693. package/dist/data/timeseries-query.d.ts +31 -5
  694. package/dist/data/timeseries-query.d.ts.map +1 -1
  695. package/dist/data/timeseries-query.js +98 -3
  696. package/dist/data/timeseries-query.js.map +1 -1
  697. package/dist/data/timeseries-stream-provider.cjs +38 -0
  698. package/dist/data/timeseries-stream-provider.cjs.map +1 -0
  699. package/dist/data/timeseries-stream-provider.d.ts +26 -0
  700. package/dist/data/timeseries-stream-provider.d.ts.map +1 -0
  701. package/dist/data/timeseries-stream-provider.js +38 -0
  702. package/dist/data/timeseries-stream-provider.js.map +1 -0
  703. package/dist/data/timeseries-stream.cjs +304 -0
  704. package/dist/data/timeseries-stream.cjs.map +1 -0
  705. package/dist/data/timeseries-stream.d.ts +81 -0
  706. package/dist/data/timeseries-stream.d.ts.map +1 -0
  707. package/dist/data/timeseries-stream.fixtures.d.ts +36 -0
  708. package/dist/data/timeseries-stream.fixtures.d.ts.map +1 -0
  709. package/dist/data/timeseries-stream.js +296 -0
  710. package/dist/data/timeseries-stream.js.map +1 -0
  711. package/dist/data/token-style.cjs +13 -0
  712. package/dist/data/token-style.cjs.map +1 -0
  713. package/dist/data/token-style.d.ts +4 -0
  714. package/dist/data/token-style.d.ts.map +1 -0
  715. package/dist/data/token-style.js +13 -0
  716. package/dist/data/token-style.js.map +1 -0
  717. package/dist/data/traces/ProcessTraceDetail.cjs +1 -1
  718. package/dist/data/traces/ProcessTraceDetail.js +1 -1
  719. package/dist/data/traces/index.d.ts +8 -1
  720. package/dist/data/traces/index.d.ts.map +1 -1
  721. package/dist/data/traces/otel/OperationList.cjs +64 -0
  722. package/dist/data/traces/otel/OperationList.cjs.map +1 -0
  723. package/dist/data/traces/otel/OperationList.d.ts +10 -0
  724. package/dist/data/traces/otel/OperationList.d.ts.map +1 -0
  725. package/dist/data/traces/otel/OperationList.js +64 -0
  726. package/dist/data/traces/otel/OperationList.js.map +1 -0
  727. package/dist/data/traces/otel/OtelTraceDetail.cjs +781 -0
  728. package/dist/data/traces/otel/OtelTraceDetail.cjs.map +1 -0
  729. package/dist/data/traces/otel/OtelTraceDetail.d.ts +7 -0
  730. package/dist/data/traces/otel/OtelTraceDetail.d.ts.map +1 -0
  731. package/dist/data/traces/otel/OtelTraceDetail.js +781 -0
  732. package/dist/data/traces/otel/OtelTraceDetail.js.map +1 -0
  733. package/dist/data/traces/otel/OtelTraceSearch.cjs +145 -0
  734. package/dist/data/traces/otel/OtelTraceSearch.cjs.map +1 -0
  735. package/dist/data/traces/otel/OtelTraceSearch.d.ts +16 -0
  736. package/dist/data/traces/otel/OtelTraceSearch.d.ts.map +1 -0
  737. package/dist/data/traces/otel/OtelTraceSearch.js +145 -0
  738. package/dist/data/traces/otel/OtelTraceSearch.js.map +1 -0
  739. package/dist/data/traces/otel/OtelTraceTable.cjs +47 -0
  740. package/dist/data/traces/otel/OtelTraceTable.cjs.map +1 -0
  741. package/dist/data/traces/otel/OtelTraceTable.d.ts +12 -0
  742. package/dist/data/traces/otel/OtelTraceTable.d.ts.map +1 -0
  743. package/dist/data/traces/otel/OtelTraceTable.js +47 -0
  744. package/dist/data/traces/otel/OtelTraceTable.js.map +1 -0
  745. package/dist/data/traces/otel/QueryBar.cjs +158 -0
  746. package/dist/data/traces/otel/QueryBar.cjs.map +1 -0
  747. package/dist/data/traces/otel/QueryBar.d.ts +12 -0
  748. package/dist/data/traces/otel/QueryBar.d.ts.map +1 -0
  749. package/dist/data/traces/otel/QueryBar.js +158 -0
  750. package/dist/data/traces/otel/QueryBar.js.map +1 -0
  751. package/dist/data/traces/otel/SpanCards.cjs +264 -0
  752. package/dist/data/traces/otel/SpanCards.cjs.map +1 -0
  753. package/dist/data/traces/otel/SpanCards.d.ts +17 -0
  754. package/dist/data/traces/otel/SpanCards.d.ts.map +1 -0
  755. package/dist/data/traces/otel/SpanCards.js +261 -0
  756. package/dist/data/traces/otel/SpanCards.js.map +1 -0
  757. package/dist/data/traces/otel/SpanCategory.cjs +18 -0
  758. package/dist/data/traces/otel/SpanCategory.cjs.map +1 -0
  759. package/dist/data/traces/otel/SpanCategory.d.ts +7 -0
  760. package/dist/data/traces/otel/SpanCategory.d.ts.map +1 -0
  761. package/dist/data/traces/otel/SpanCategory.js +18 -0
  762. package/dist/data/traces/otel/SpanCategory.js.map +1 -0
  763. package/dist/data/traces/otel/TraceResults.cjs +195 -0
  764. package/dist/data/traces/otel/TraceResults.cjs.map +1 -0
  765. package/dist/data/traces/otel/TraceResults.d.ts +19 -0
  766. package/dist/data/traces/otel/TraceResults.d.ts.map +1 -0
  767. package/dist/data/traces/otel/TraceResults.js +193 -0
  768. package/dist/data/traces/otel/TraceResults.js.map +1 -0
  769. package/dist/data/traces/otel/api.cjs +36 -0
  770. package/dist/data/traces/otel/api.cjs.map +1 -0
  771. package/dist/data/traces/otel/api.d.ts +87 -0
  772. package/dist/data/traces/otel/api.d.ts.map +1 -0
  773. package/dist/data/traces/otel/api.js +33 -0
  774. package/dist/data/traces/otel/api.js.map +1 -0
  775. package/dist/data/traces/otel/fixtures.d.ts +4 -0
  776. package/dist/data/traces/otel/fixtures.d.ts.map +1 -0
  777. package/dist/data/traces/otel/metrics.cjs +7 -0
  778. package/dist/data/traces/otel/metrics.cjs.map +1 -0
  779. package/dist/data/traces/otel/metrics.d.ts +2 -0
  780. package/dist/data/traces/otel/metrics.d.ts.map +1 -0
  781. package/dist/data/traces/otel/metrics.js +7 -0
  782. package/dist/data/traces/otel/metrics.js.map +1 -0
  783. package/dist/data/traces/otel/model.cjs +167 -0
  784. package/dist/data/traces/otel/model.cjs.map +1 -0
  785. package/dist/data/traces/otel/model.d.ts +81 -0
  786. package/dist/data/traces/otel/model.d.ts.map +1 -0
  787. package/dist/data/traces/otel/model.js +154 -0
  788. package/dist/data/traces/otel/model.js.map +1 -0
  789. package/dist/data/traces/otel/query.cjs +90 -0
  790. package/dist/data/traces/otel/query.cjs.map +1 -0
  791. package/dist/data/traces/otel/query.d.ts +20 -0
  792. package/dist/data/traces/otel/query.d.ts.map +1 -0
  793. package/dist/data/traces/otel/query.js +86 -0
  794. package/dist/data/traces/otel/query.js.map +1 -0
  795. package/dist/data/traces/otel/result-model.cjs +25 -0
  796. package/dist/data/traces/otel/result-model.cjs.map +1 -0
  797. package/dist/data/traces/otel/result-model.d.ts +5 -0
  798. package/dist/data/traces/otel/result-model.d.ts.map +1 -0
  799. package/dist/data/traces/otel/result-model.js +24 -0
  800. package/dist/data/traces/otel/result-model.js.map +1 -0
  801. package/dist/data/traces/otel/source.cjs +11 -0
  802. package/dist/data/traces/otel/source.cjs.map +1 -0
  803. package/dist/data/traces/otel/source.d.ts +5 -0
  804. package/dist/data/traces/otel/source.d.ts.map +1 -0
  805. package/dist/data/traces/otel/source.js +10 -0
  806. package/dist/data/traces/otel/source.js.map +1 -0
  807. package/dist/data/traces/otel/span-traces.cjs +39 -0
  808. package/dist/data/traces/otel/span-traces.cjs.map +1 -0
  809. package/dist/data/traces/otel/span-traces.d.ts +3 -0
  810. package/dist/data/traces/otel/span-traces.d.ts.map +1 -0
  811. package/dist/data/traces/otel/span-traces.js +39 -0
  812. package/dist/data/traces/otel/span-traces.js.map +1 -0
  813. package/dist/data/use-data-table-virtual.d.ts +1 -1
  814. package/dist/data/version-info.cjs +3 -3
  815. package/dist/data/version-info.js +3 -3
  816. package/dist/data/workload-panel/MemoryStack.cjs +49 -0
  817. package/dist/data/workload-panel/MemoryStack.cjs.map +1 -0
  818. package/dist/data/workload-panel/MemoryStack.d.ts +11 -0
  819. package/dist/data/workload-panel/MemoryStack.d.ts.map +1 -0
  820. package/dist/data/workload-panel/MemoryStack.js +48 -0
  821. package/dist/data/workload-panel/MemoryStack.js.map +1 -0
  822. package/dist/data/workload-panel/Metrics.cjs +197 -0
  823. package/dist/data/workload-panel/Metrics.cjs.map +1 -0
  824. package/dist/data/workload-panel/Metrics.d.ts +11 -0
  825. package/dist/data/workload-panel/Metrics.d.ts.map +1 -0
  826. package/dist/data/workload-panel/Metrics.js +196 -0
  827. package/dist/data/workload-panel/Metrics.js.map +1 -0
  828. package/dist/data/workload-panel/WorkloadPanel.cjs +66 -0
  829. package/dist/data/workload-panel/WorkloadPanel.cjs.map +1 -0
  830. package/dist/data/workload-panel/WorkloadPanel.d.ts +3 -0
  831. package/dist/data/workload-panel/WorkloadPanel.d.ts.map +1 -0
  832. package/dist/data/workload-panel/WorkloadPanel.js +66 -0
  833. package/dist/data/workload-panel/WorkloadPanel.js.map +1 -0
  834. package/dist/data/workload-panel/fixtures.d.ts +60 -0
  835. package/dist/data/workload-panel/fixtures.d.ts.map +1 -0
  836. package/dist/data/workload-panel/model.cjs +137 -0
  837. package/dist/data/workload-panel/model.cjs.map +1 -0
  838. package/dist/data/workload-panel/model.d.ts +53 -0
  839. package/dist/data/workload-panel/model.d.ts.map +1 -0
  840. package/dist/data/workload-panel/model.js +133 -0
  841. package/dist/data/workload-panel/model.js.map +1 -0
  842. package/dist/data/workload-panel/types.d.ts +56 -0
  843. package/dist/data/workload-panel/types.d.ts.map +1 -0
  844. package/dist/data.cjs +68 -6
  845. package/dist/data.d.ts +9 -1
  846. package/dist/data.d.ts.map +1 -1
  847. package/dist/data.js +32 -10
  848. package/dist/file-findings/AnnotatedCode.cjs +243 -0
  849. package/dist/file-findings/AnnotatedCode.cjs.map +1 -0
  850. package/dist/file-findings/AnnotatedCode.d.ts +30 -0
  851. package/dist/file-findings/AnnotatedCode.d.ts.map +1 -0
  852. package/dist/file-findings/AnnotatedCode.js +243 -0
  853. package/dist/file-findings/AnnotatedCode.js.map +1 -0
  854. package/dist/file-findings/FileFindingsView.cjs +213 -0
  855. package/dist/file-findings/FileFindingsView.cjs.map +1 -0
  856. package/dist/file-findings/FileFindingsView.d.ts +35 -0
  857. package/dist/file-findings/FileFindingsView.d.ts.map +1 -0
  858. package/dist/file-findings/FileFindingsView.js +213 -0
  859. package/dist/file-findings/FileFindingsView.js.map +1 -0
  860. package/dist/file-findings/LazyAnnotatedCode.cjs +22 -0
  861. package/dist/file-findings/LazyAnnotatedCode.cjs.map +1 -0
  862. package/dist/file-findings/LazyAnnotatedCode.d.ts +5 -0
  863. package/dist/file-findings/LazyAnnotatedCode.d.ts.map +1 -0
  864. package/dist/file-findings/LazyAnnotatedCode.js +22 -0
  865. package/dist/file-findings/LazyAnnotatedCode.js.map +1 -0
  866. package/dist/file-findings/adapters.cjs +155 -0
  867. package/dist/file-findings/adapters.cjs.map +1 -0
  868. package/dist/file-findings/adapters.d.ts +24 -0
  869. package/dist/file-findings/adapters.d.ts.map +1 -0
  870. package/dist/file-findings/adapters.js +153 -0
  871. package/dist/file-findings/adapters.js.map +1 -0
  872. package/dist/file-findings/file-review/CommentDraft.cjs +97 -0
  873. package/dist/file-findings/file-review/CommentDraft.cjs.map +1 -0
  874. package/dist/file-findings/file-review/CommentDraft.d.ts +25 -0
  875. package/dist/file-findings/file-review/CommentDraft.d.ts.map +1 -0
  876. package/dist/file-findings/file-review/CommentDraft.js +97 -0
  877. package/dist/file-findings/file-review/CommentDraft.js.map +1 -0
  878. package/dist/file-findings/file-review/FileReview.cjs +863 -0
  879. package/dist/file-findings/file-review/FileReview.cjs.map +1 -0
  880. package/dist/file-findings/file-review/FileReview.d.ts +79 -0
  881. package/dist/file-findings/file-review/FileReview.d.ts.map +1 -0
  882. package/dist/file-findings/file-review/FileReview.fixtures.d.ts +25 -0
  883. package/dist/file-findings/file-review/FileReview.fixtures.d.ts.map +1 -0
  884. package/dist/file-findings/file-review/FileReview.js +863 -0
  885. package/dist/file-findings/file-review/FileReview.js.map +1 -0
  886. package/dist/file-findings/file-review/InlineAuthors.cjs +77 -0
  887. package/dist/file-findings/file-review/InlineAuthors.cjs.map +1 -0
  888. package/dist/file-findings/file-review/InlineAuthors.d.ts +9 -0
  889. package/dist/file-findings/file-review/InlineAuthors.d.ts.map +1 -0
  890. package/dist/file-findings/file-review/InlineAuthors.js +77 -0
  891. package/dist/file-findings/file-review/InlineAuthors.js.map +1 -0
  892. package/dist/file-findings/file-review/InlineThread.cjs +77 -0
  893. package/dist/file-findings/file-review/InlineThread.cjs.map +1 -0
  894. package/dist/file-findings/file-review/InlineThread.d.ts +27 -0
  895. package/dist/file-findings/file-review/InlineThread.d.ts.map +1 -0
  896. package/dist/file-findings/file-review/InlineThread.js +77 -0
  897. package/dist/file-findings/file-review/InlineThread.js.map +1 -0
  898. package/dist/file-findings/file-review/ProblemsList.cjs +164 -0
  899. package/dist/file-findings/file-review/ProblemsList.cjs.map +1 -0
  900. package/dist/file-findings/file-review/ProblemsList.d.ts +15 -0
  901. package/dist/file-findings/file-review/ProblemsList.d.ts.map +1 -0
  902. package/dist/file-findings/file-review/ProblemsList.js +164 -0
  903. package/dist/file-findings/file-review/ProblemsList.js.map +1 -0
  904. package/dist/file-findings/file-review/SourceView.cjs +179 -0
  905. package/dist/file-findings/file-review/SourceView.cjs.map +1 -0
  906. package/dist/file-findings/file-review/SourceView.d.ts +29 -0
  907. package/dist/file-findings/file-review/SourceView.d.ts.map +1 -0
  908. package/dist/file-findings/file-review/SourceView.js +179 -0
  909. package/dist/file-findings/file-review/SourceView.js.map +1 -0
  910. package/dist/file-findings/file-review/blame.cjs +35 -0
  911. package/dist/file-findings/file-review/blame.cjs.map +1 -0
  912. package/dist/file-findings/file-review/blame.d.ts +28 -0
  913. package/dist/file-findings/file-review/blame.d.ts.map +1 -0
  914. package/dist/file-findings/file-review/blame.js +33 -0
  915. package/dist/file-findings/file-review/blame.js.map +1 -0
  916. package/dist/file-findings/file-review/geometry.cjs +101 -0
  917. package/dist/file-findings/file-review/geometry.cjs.map +1 -0
  918. package/dist/file-findings/file-review/geometry.d.ts +45 -0
  919. package/dist/file-findings/file-review/geometry.d.ts.map +1 -0
  920. package/dist/file-findings/file-review/geometry.js +98 -0
  921. package/dist/file-findings/file-review/geometry.js.map +1 -0
  922. package/dist/file-findings/file-review/hooks.cjs +101 -0
  923. package/dist/file-findings/file-review/hooks.cjs.map +1 -0
  924. package/dist/file-findings/file-review/hooks.d.ts +22 -0
  925. package/dist/file-findings/file-review/hooks.d.ts.map +1 -0
  926. package/dist/file-findings/file-review/hooks.js +99 -0
  927. package/dist/file-findings/file-review/hooks.js.map +1 -0
  928. package/dist/file-findings/file-review/marks.cjs +52 -0
  929. package/dist/file-findings/file-review/marks.cjs.map +1 -0
  930. package/dist/file-findings/file-review/marks.d.ts +23 -0
  931. package/dist/file-findings/file-review/marks.d.ts.map +1 -0
  932. package/dist/file-findings/file-review/marks.js +47 -0
  933. package/dist/file-findings/file-review/marks.js.map +1 -0
  934. package/dist/file-findings/file-review/problem-filters.cjs +14 -0
  935. package/dist/file-findings/file-review/problem-filters.cjs.map +1 -0
  936. package/dist/file-findings/file-review/problem-filters.d.ts +10 -0
  937. package/dist/file-findings/file-review/problem-filters.d.ts.map +1 -0
  938. package/dist/file-findings/file-review/problem-filters.js +13 -0
  939. package/dist/file-findings/file-review/problem-filters.js.map +1 -0
  940. package/dist/file-findings/file-review/quote-anchor.cjs +234 -0
  941. package/dist/file-findings/file-review/quote-anchor.cjs.map +1 -0
  942. package/dist/file-findings/file-review/quote-anchor.d.ts +54 -0
  943. package/dist/file-findings/file-review/quote-anchor.d.ts.map +1 -0
  944. package/dist/file-findings/file-review/quote-anchor.js +226 -0
  945. package/dist/file-findings/file-review/quote-anchor.js.map +1 -0
  946. package/dist/file-findings/file-review/source-anchor.cjs +104 -0
  947. package/dist/file-findings/file-review/source-anchor.cjs.map +1 -0
  948. package/dist/file-findings/file-review/source-anchor.d.ts +27 -0
  949. package/dist/file-findings/file-review/source-anchor.d.ts.map +1 -0
  950. package/dist/file-findings/file-review/source-anchor.js +99 -0
  951. package/dist/file-findings/file-review/source-anchor.js.map +1 -0
  952. package/dist/file-findings/file-review/source-marks.cjs +71 -0
  953. package/dist/file-findings/file-review/source-marks.cjs.map +1 -0
  954. package/dist/file-findings/file-review/source-marks.d.ts +27 -0
  955. package/dist/file-findings/file-review/source-marks.d.ts.map +1 -0
  956. package/dist/file-findings/file-review/source-marks.js +68 -0
  957. package/dist/file-findings/file-review/source-marks.js.map +1 -0
  958. package/dist/file-findings/findings-comments.cjs +136 -0
  959. package/dist/file-findings/findings-comments.cjs.map +1 -0
  960. package/dist/file-findings/findings-comments.d.ts +28 -0
  961. package/dist/file-findings/findings-comments.d.ts.map +1 -0
  962. package/dist/file-findings/findings-comments.js +131 -0
  963. package/dist/file-findings/findings-comments.js.map +1 -0
  964. package/dist/file-findings/findings-languages.cjs +53 -0
  965. package/dist/file-findings/findings-languages.cjs.map +1 -0
  966. package/dist/file-findings/findings-languages.d.ts +11 -0
  967. package/dist/file-findings/findings-languages.d.ts.map +1 -0
  968. package/dist/file-findings/findings-languages.js +53 -0
  969. package/dist/file-findings/findings-languages.js.map +1 -0
  970. package/dist/file-findings/mdx-source.cjs +48 -0
  971. package/dist/file-findings/mdx-source.cjs.map +1 -0
  972. package/dist/file-findings/mdx-source.d.ts +7 -0
  973. package/dist/file-findings/mdx-source.d.ts.map +1 -0
  974. package/dist/file-findings/mdx-source.js +48 -0
  975. package/dist/file-findings/mdx-source.js.map +1 -0
  976. package/dist/file-findings/monaco-language.cjs +73 -0
  977. package/dist/file-findings/monaco-language.cjs.map +1 -0
  978. package/dist/file-findings/monaco-language.d.ts +11 -0
  979. package/dist/file-findings/monaco-language.d.ts.map +1 -0
  980. package/dist/file-findings/monaco-language.js +72 -0
  981. package/dist/file-findings/monaco-language.js.map +1 -0
  982. package/dist/file-findings/severity-counts.cjs +20 -0
  983. package/dist/file-findings/severity-counts.cjs.map +1 -0
  984. package/dist/file-findings/severity-counts.d.ts +5 -0
  985. package/dist/file-findings/severity-counts.d.ts.map +1 -0
  986. package/dist/file-findings/severity-counts.js +19 -0
  987. package/dist/file-findings/severity-counts.js.map +1 -0
  988. package/dist/file-findings/types.cjs +12 -0
  989. package/dist/file-findings/types.cjs.map +1 -0
  990. package/dist/file-findings/types.d.ts +43 -0
  991. package/dist/file-findings/types.d.ts.map +1 -0
  992. package/dist/file-findings/types.js +11 -0
  993. package/dist/file-findings/types.js.map +1 -0
  994. package/dist/file-findings.cjs +47 -0
  995. package/dist/file-findings.d.ts +15 -0
  996. package/dist/file-findings.d.ts.map +1 -0
  997. package/dist/file-findings.js +15 -0
  998. package/dist/hooks/event-hub.cjs +22 -8
  999. package/dist/hooks/event-hub.cjs.map +1 -1
  1000. package/dist/hooks/event-hub.d.ts.map +1 -1
  1001. package/dist/hooks/event-hub.js +22 -8
  1002. package/dist/hooks/event-hub.js.map +1 -1
  1003. package/dist/icons/components/UiBrowser.cjs +51 -0
  1004. package/dist/icons/components/UiBrowser.cjs.map +1 -0
  1005. package/dist/icons/components/UiBrowser.d.ts +15 -0
  1006. package/dist/icons/components/UiBrowser.d.ts.map +1 -0
  1007. package/dist/icons/components/UiBrowser.js +48 -0
  1008. package/dist/icons/components/UiBrowser.js.map +1 -0
  1009. package/dist/icons/components/UiCreditCard.cjs +51 -0
  1010. package/dist/icons/components/UiCreditCard.cjs.map +1 -0
  1011. package/dist/icons/components/UiCreditCard.d.ts +15 -0
  1012. package/dist/icons/components/UiCreditCard.d.ts.map +1 -0
  1013. package/dist/icons/components/UiCreditCard.js +48 -0
  1014. package/dist/icons/components/UiCreditCard.js.map +1 -0
  1015. package/dist/icons/components/UiShoppingCart.cjs +51 -0
  1016. package/dist/icons/components/UiShoppingCart.cjs.map +1 -0
  1017. package/dist/icons/components/UiShoppingCart.d.ts +15 -0
  1018. package/dist/icons/components/UiShoppingCart.d.ts.map +1 -0
  1019. package/dist/icons/components/UiShoppingCart.js +48 -0
  1020. package/dist/icons/components/UiShoppingCart.js.map +1 -0
  1021. package/dist/icons/index.d.ts +6 -0
  1022. package/dist/icons/index.d.ts.map +1 -1
  1023. package/dist/icons/registry.cjs +6 -0
  1024. package/dist/icons/registry.cjs.map +1 -1
  1025. package/dist/icons/registry.d.ts.map +1 -1
  1026. package/dist/icons/registry.js +6 -0
  1027. package/dist/icons/registry.js.map +1 -1
  1028. package/dist/icons.cjs +9 -0
  1029. package/dist/icons.js +4 -1
  1030. package/dist/index.cjs +86 -7
  1031. package/dist/index.d.ts +1 -0
  1032. package/dist/index.d.ts.map +1 -1
  1033. package/dist/index.js +40 -12
  1034. package/dist/layout/AppShell.cjs +37 -21
  1035. package/dist/layout/AppShell.cjs.map +1 -1
  1036. package/dist/layout/AppShell.d.ts +13 -2
  1037. package/dist/layout/AppShell.d.ts.map +1 -1
  1038. package/dist/layout/AppShell.js +37 -21
  1039. package/dist/layout/AppShell.js.map +1 -1
  1040. package/dist/layout/AppShell.nav.cjs +7 -6
  1041. package/dist/layout/AppShell.nav.cjs.map +1 -1
  1042. package/dist/layout/AppShell.nav.d.ts.map +1 -1
  1043. package/dist/layout/AppShell.nav.js +7 -6
  1044. package/dist/layout/AppShell.nav.js.map +1 -1
  1045. package/dist/layout/SplitPane.cjs +16 -6
  1046. package/dist/layout/SplitPane.cjs.map +1 -1
  1047. package/dist/layout/SplitPane.d.ts +12 -2
  1048. package/dist/layout/SplitPane.d.ts.map +1 -1
  1049. package/dist/layout/SplitPane.js +16 -6
  1050. package/dist/layout/SplitPane.js.map +1 -1
  1051. package/dist/layout/Workspace.cjs +37 -33
  1052. package/dist/layout/Workspace.cjs.map +1 -1
  1053. package/dist/layout/Workspace.d.ts.map +1 -1
  1054. package/dist/layout/Workspace.js +37 -33
  1055. package/dist/layout/Workspace.js.map +1 -1
  1056. package/dist/layout/Workspace.regions.cjs +3 -3
  1057. package/dist/layout/Workspace.regions.cjs.map +1 -1
  1058. package/dist/layout/Workspace.regions.js +3 -3
  1059. package/dist/layout/Workspace.regions.js.map +1 -1
  1060. package/dist/lib/breakpoints.cjs +102 -0
  1061. package/dist/lib/breakpoints.cjs.map +1 -0
  1062. package/dist/lib/breakpoints.d.ts +36 -0
  1063. package/dist/lib/breakpoints.d.ts.map +1 -0
  1064. package/dist/lib/breakpoints.js +99 -0
  1065. package/dist/lib/breakpoints.js.map +1 -0
  1066. package/dist/lib/combobox.cjs +2 -1
  1067. package/dist/lib/combobox.cjs.map +1 -1
  1068. package/dist/lib/combobox.d.ts +1 -1
  1069. package/dist/lib/combobox.d.ts.map +1 -1
  1070. package/dist/lib/combobox.js +2 -1
  1071. package/dist/lib/combobox.js.map +1 -1
  1072. package/dist/lib/path-tree.cjs +21 -0
  1073. package/dist/lib/path-tree.cjs.map +1 -1
  1074. package/dist/lib/path-tree.d.ts +15 -0
  1075. package/dist/lib/path-tree.d.ts.map +1 -1
  1076. package/dist/lib/path-tree.js +21 -1
  1077. package/dist/lib/path-tree.js.map +1 -1
  1078. package/dist/overlay/Modal.cjs +2 -1
  1079. package/dist/overlay/Modal.cjs.map +1 -1
  1080. package/dist/overlay/Modal.d.ts.map +1 -1
  1081. package/dist/overlay/Modal.js +2 -1
  1082. package/dist/overlay/Modal.js.map +1 -1
  1083. package/dist/overlay/dropdownMenuContext.d.ts +1 -1
  1084. package/dist/profiles/editor/profileEditor.cjs +1 -1
  1085. package/dist/profiles/editor/profileEditor.cjs.map +1 -1
  1086. package/dist/profiles/editor/profileEditor.js +1 -1
  1087. package/dist/profiles/editor/profileEditor.js.map +1 -1
  1088. package/dist/profiles/editor/profileEditorSections.cjs +6 -2
  1089. package/dist/profiles/editor/profileEditorSections.cjs.map +1 -1
  1090. package/dist/profiles/editor/profileEditorSections.d.ts.map +1 -1
  1091. package/dist/profiles/editor/profileEditorSections.js +6 -2
  1092. package/dist/profiles/editor/profileEditorSections.js.map +1 -1
  1093. package/dist/profiles/query/prometheusResults.cjs +24 -36
  1094. package/dist/profiles/query/prometheusResults.cjs.map +1 -1
  1095. package/dist/profiles/query/prometheusResults.d.ts.map +1 -1
  1096. package/dist/profiles/query/prometheusResults.js +24 -36
  1097. package/dist/profiles/query/prometheusResults.js.map +1 -1
  1098. package/dist/rpc/CommandForm.cjs +1 -1
  1099. package/dist/rpc/CommandForm.cjs.map +1 -1
  1100. package/dist/rpc/CommandForm.js +1 -1
  1101. package/dist/rpc/CommandForm.js.map +1 -1
  1102. package/dist/rpc/classify.cjs +1 -1
  1103. package/dist/rpc/classify.cjs.map +1 -1
  1104. package/dist/rpc/classify.d.ts.map +1 -1
  1105. package/dist/rpc/classify.js +1 -1
  1106. package/dist/rpc/classify.js.map +1 -1
  1107. package/dist/rpc/useOperations.d.ts +24 -24
  1108. package/dist/rpc.cjs +0 -2
  1109. package/dist/rpc.d.ts +0 -1
  1110. package/dist/rpc.d.ts.map +1 -1
  1111. package/dist/rpc.js +1 -2
  1112. package/dist/styles.css +1 -1
  1113. package/dist/utils.cjs +6 -0
  1114. package/dist/utils.d.ts +2 -1
  1115. package/dist/utils.d.ts.map +1 -1
  1116. package/dist/utils.js +3 -2
  1117. package/package.json +9 -3
  1118. package/schemas/json-schema-form.schema.json +9 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FrameSourceWindow.js","names":[],"sources":["../../../src/data/diagnostics/FrameSourceWindow.tsx"],"sourcesContent":["import { useEffect, useMemo, useState, type ReactNode } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { highlightToLines, type HighlightedLine } from \"../code-highlight\";\nimport { HighlightedTokens } from \"../HighlightedTokens\";\nimport type { FrameSource } from \"./FrameSourceWindow.utils\";\n\n// FrameSourceWindow renders a decompiled / resolved source window beneath a\n// stack frame: a gutter of absolute line numbers with the focal line (the one\n// the frame points at) highlighted. It is the single source-window renderer,\n// shared by the JVM thread-dump frames, the exception stack-trace frames, and\n// frameless callers that have source but no stack (a template error, a single\n// decompiled class).\n//\n// The gutter is painted explicitly rather than by embedding Shiki's own `<pre>`,\n// because `sourceLineNumbers` is frequently NOT a contiguous run: arthas `jad`\n// returns bytecode-keyed line numbers with gaps. A CSS-counter gutter would\n// silently renumber those. Tokenizing via `highlightToLines` keeps the\n// highlighting while letting us own the numbering — the same trade CodeDiff makes.\nexport function FrameSourceWindow({\n frame,\n className,\n focalTone = \"error\",\n markers,\n}: {\n frame: FrameSource;\n className?: string;\n /**\n * Lines to point at besides the focal one, each with an annotation painted\n * under its code — e.g. the calls a caller's source makes. A marked line\n * takes the neutral highlight.\n */\n markers?: { line: number; content: ReactNode }[];\n /**\n * Styling for the focal line. `\"error\"` (the default, so existing callers\n * render unchanged) is the red highlight meaning \"this line failed\".\n * `\"neutral\"` marks \"the line that made this call\" — a subtle theme-token\n * highlight with no red.\n */\n focalTone?: \"error\" | \"neutral\";\n}) {\n const lines = useMemo(() => frame.sourceLines ?? [], [frame.sourceLines]);\n const start = frame.sourceStartLine ?? 0;\n const numbers = frame.sourceLineNumbers;\n const focal = frame.line ?? -1;\n // No default language: this renderer is shared by JVM frames, exception frames\n // and frameless callers, so a Go dump or a template error must not be coloured\n // with Java grammar. `highlightToLines` returns null without a language and\n // `HighlightedTokens` then paints the plain source.\n const language = frame.sourceLanguage;\n\n const [tokens, setTokens] = useState<HighlightedLine[] | null>(null);\n\n useEffect(() => {\n if (lines.length === 0) {\n setTokens(null);\n return;\n }\n let cancelled = false;\n highlightToLines(lines.join(\"\\n\"), { lang: language }).then((out) => {\n if (!cancelled) setTokens(out);\n });\n return () => {\n cancelled = true;\n };\n }, [lines, language]);\n\n if (lines.length === 0) return null;\n\n const neutralClassName = \"bg-primary/10 font-semibold text-foreground\";\n const focalClassName =\n focalTone === \"neutral\" ? neutralClassName : \"bg-red-500/10 font-semibold text-red-800 dark:text-red-300\";\n const markerAt = new Map(markers?.map((marker) => [marker.line, marker.content]));\n\n return (\n <div\n className={cn(\n \"mx-3 mb-2 ml-12 overflow-x-auto rounded border border-border/60 bg-muted/30 py-1 font-mono text-[11px] leading-relaxed\",\n className,\n )}\n >\n {lines.map((source, i) => {\n const lineNumber = numbers?.[i] ?? start + i;\n const known = numbers === undefined || lineNumber > 0;\n const isFocal = known && lineNumber === focal;\n const marker = known ? markerAt.get(lineNumber) : undefined;\n return (\n <div\n key={`${lineNumber}-${i}`}\n data-source-line={known ? lineNumber : undefined}\n data-marked={marker === undefined ? undefined : \"true\"}\n className={[\n \"grid min-w-max grid-cols-[3.5rem_minmax(24rem,1fr)] gap-3 px-2\",\n isFocal ? focalClassName : marker !== undefined ? neutralClassName : \"text-foreground\",\n ].join(\" \")}\n >\n <span className=\"select-none text-right text-muted-foreground\">\n {isFocal || marker !== undefined ? \">\" : \"\"}\n {known ? lineNumber : \"\"}\n </span>\n <code className=\"whitespace-pre\">\n {source ? <HighlightedTokens tokens={tokens?.[i]} content={source} /> : \" \"}\n </code>\n {/* Under the line rather than after it: a long line would push it past the window's scroll edge. */}\n {marker !== undefined ? (\n <span data-source-marker className=\"col-start-2 -mt-0.5 mb-0.5 font-sans font-normal\">\n {marker}\n </span>\n ) : null}\n </div>\n );\n })}\n </div>\n );\n}\n"],"mappings":";;;;;;AAkBA,SAAgB,kBAAkB,EAChC,OACA,WACA,YAAY,SACZ,WAiBC;CACD,MAAM,QAAQ,cAAc,MAAM,eAAe,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC;CACxE,MAAM,QAAQ,MAAM,mBAAmB;CACvC,MAAM,UAAU,MAAM;CACtB,MAAM,QAAQ,MAAM,QAAQ;CAK5B,MAAM,WAAW,MAAM;CAEvB,MAAM,CAAC,QAAQ,aAAa,SAAmC,IAAI;CAEnE,gBAAgB;EACd,IAAI,MAAM,WAAW,GAAG;GACtB,UAAU,IAAI;GACd;EACF;EACA,IAAI,YAAY;EAChB,iBAAiB,MAAM,KAAK,IAAI,GAAG,EAAE,MAAM,SAAS,CAAC,CAAC,CAAC,MAAM,QAAQ;GACnE,IAAI,CAAC,WAAW,UAAU,GAAG;EAC/B,CAAC;EACD,aAAa;GACX,YAAY;EACd;CACF,GAAG,CAAC,OAAO,QAAQ,CAAC;CAEpB,IAAI,MAAM,WAAW,GAAG,OAAO;CAE/B,MAAM,mBAAmB;CACzB,MAAM,iBACJ,cAAc,YAAY,mBAAmB;CAC/C,MAAM,WAAW,IAAI,IAAI,SAAS,KAAK,WAAW,CAAC,OAAO,MAAM,OAAO,OAAO,CAAC,CAAC;CAEhF,OACE,oBAAC,OAAD;EACE,WAAW,GACT,0HACA,SACF;EAEC,UAAA,MAAM,KAAK,QAAQ,MAAM;GACxB,MAAM,aAAa,UAAU,MAAM,QAAQ;GAC3C,MAAM,QAAQ,YAAY,KAAA,KAAa,aAAa;GACpD,MAAM,UAAU,SAAS,eAAe;GACxC,MAAM,SAAS,QAAQ,SAAS,IAAI,UAAU,IAAI,KAAA;GAClD,OACE,qBAAC,OAAD;IAEE,oBAAkB,QAAQ,aAAa,KAAA;IACvC,eAAa,WAAW,KAAA,IAAY,KAAA,IAAY;IAChD,WAAW,CACT,kEACA,UAAU,iBAAiB,WAAW,KAAA,IAAY,mBAAmB,iBACvE,CAAC,CAAC,KAAK,GAAG;IAPZ,UAAA;KASE,qBAAC,QAAD;MAAM,WAAU;MAAhB,UAAA,CACG,WAAW,WAAW,KAAA,IAAY,MAAM,IACxC,QAAQ,aAAa,EAClB;;KACN,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,SAAS,oBAAC,mBAAD;OAAmB,QAAQ,SAAS;OAAI,SAAS;MAAS,CAAA,IAAI;KACpE,CAAA;KAEL,WAAW,KAAA,IACV,oBAAC,QAAD;MAAM,sBAAA;MAAmB,WAAU;MAChC,UAAA;KACG,CAAA,IACJ;IACD;GArBE,GAAA,GAAG,WAAW,GAAG,GAqBnB;EAET,CAAC;CACE,CAAA;AAET"}
1
+ {"version":3,"file":"FrameSourceWindow.js","names":[],"sources":["../../../src/data/diagnostics/FrameSourceWindow.tsx"],"sourcesContent":["import { useEffect, useMemo, useState, type ReactNode } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { highlightToLines, type HighlightedLine } from \"../code-highlight\";\nimport { HighlightedTokens } from \"../HighlightedTokens\";\nimport type { FrameSource } from \"./FrameSourceWindow.utils\";\n\n// FrameSourceWindow renders a decompiled / resolved source window beneath a\n// stack frame: a gutter of absolute line numbers with the focal line (the one\n// the frame points at) highlighted. It is the single source-window renderer,\n// shared by the JVM thread-dump frames, the exception stack-trace frames, and\n// frameless callers that have source but no stack (a template error, a single\n// decompiled class).\n//\n// The gutter is painted explicitly rather than by embedding Shiki's own `<pre>`,\n// because `sourceLineNumbers` is frequently NOT a contiguous run: arthas `jad`\n// returns bytecode-keyed line numbers with gaps. A CSS-counter gutter would\n// silently renumber those. Tokenizing via `highlightToLines` keeps the\n// highlighting while letting us own the numbering — the same trade CodeDiff makes.\nexport function FrameSourceWindow({\n frame,\n className,\n focalTone = \"error\",\n markers,\n}: {\n frame: FrameSource;\n className?: string;\n /**\n * Lines to point at besides the focal one, each with an annotation painted\n * under its code — e.g. the calls a caller's source makes. A marked line\n * takes the neutral highlight.\n */\n markers?: { line: number; content: ReactNode }[];\n /**\n * Styling for the focal line. `\"error\"` (the default, so existing callers\n * render unchanged) is the red highlight meaning \"this line failed\".\n * `\"neutral\"` marks \"the line that made this call\" — a subtle theme-token\n * highlight with no red.\n */\n focalTone?: \"error\" | \"warning\" | \"info\" | \"neutral\";\n}) {\n const lines = useMemo(() => frame.sourceLines ?? [], [frame.sourceLines]);\n const start = frame.sourceStartLine ?? 0;\n const numbers = frame.sourceLineNumbers;\n const focal = frame.line ?? -1;\n // No default language: this renderer is shared by JVM frames, exception frames\n // and frameless callers, so a Go dump or a template error must not be coloured\n // with Java grammar. `highlightToLines` returns null without a language and\n // `HighlightedTokens` then paints the plain source.\n const language = frame.sourceLanguage;\n\n const [tokens, setTokens] = useState<HighlightedLine[] | null>(null);\n\n useEffect(() => {\n if (lines.length === 0) {\n setTokens(null);\n return;\n }\n let cancelled = false;\n highlightToLines(lines.join(\"\\n\"), { lang: language }).then((out) => {\n if (!cancelled) setTokens(out);\n });\n return () => {\n cancelled = true;\n };\n }, [lines, language]);\n\n if (lines.length === 0) return null;\n\n const neutralClassName = \"bg-primary/10 font-semibold text-foreground\";\n const focalClassName = {\n neutral: neutralClassName,\n error: \"bg-red-500/10 font-semibold text-red-800 dark:text-red-300\",\n warning: \"bg-amber-500/10 font-semibold text-foreground\",\n info: \"bg-sky-500/10 font-semibold text-foreground\",\n }[focalTone];\n const markerAt = new Map(markers?.map((marker) => [marker.line, marker.content]));\n\n return (\n <div\n data-scroll-x\n className={cn(\n \"mx-3 mb-2 ml-12 overflow-x-auto max-sm:ml-6 rounded border border-border/60 bg-muted/30 py-1 font-mono text-[11px] leading-relaxed\",\n className,\n )}\n >\n {lines.map((source, i) => {\n const lineNumber = numbers?.[i] ?? start + i;\n const known = numbers === undefined || lineNumber > 0;\n const isFocal = known && lineNumber === focal;\n const marker = known ? markerAt.get(lineNumber) : undefined;\n return (\n <div\n key={`${lineNumber}-${i}`}\n data-source-line={known ? lineNumber : undefined}\n data-source-tone={isFocal ? focalTone : undefined}\n data-marked={marker === undefined ? undefined : \"true\"}\n className={[\n \"grid min-w-max grid-cols-[3.5rem_minmax(24rem,1fr)] gap-3 px-2\",\n isFocal ? focalClassName : marker !== undefined ? neutralClassName : \"text-foreground\",\n ].join(\" \")}\n >\n <span className=\"select-none text-right text-muted-foreground\">\n {isFocal || marker !== undefined ? \">\" : \"\"}\n {known ? lineNumber : \"\"}\n </span>\n <code className=\"whitespace-pre\">\n {source ? <HighlightedTokens tokens={tokens?.[i]} content={source} /> : \" \"}\n </code>\n {/* Under the line rather than after it: a long line would push it past the window's scroll edge. */}\n {marker !== undefined ? (\n <span data-source-marker className=\"col-start-2 -mt-0.5 mb-0.5 font-sans font-normal\">\n {marker}\n </span>\n ) : null}\n </div>\n );\n })}\n </div>\n );\n}\n"],"mappings":";;;;;;AAkBA,SAAgB,kBAAkB,EAChC,OACA,WACA,YAAY,SACZ,WAiBC;CACD,MAAM,QAAQ,cAAc,MAAM,eAAe,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC;CACxE,MAAM,QAAQ,MAAM,mBAAmB;CACvC,MAAM,UAAU,MAAM;CACtB,MAAM,QAAQ,MAAM,QAAQ;CAK5B,MAAM,WAAW,MAAM;CAEvB,MAAM,CAAC,QAAQ,aAAa,SAAmC,IAAI;CAEnE,gBAAgB;EACd,IAAI,MAAM,WAAW,GAAG;GACtB,UAAU,IAAI;GACd;EACF;EACA,IAAI,YAAY;EAChB,iBAAiB,MAAM,KAAK,IAAI,GAAG,EAAE,MAAM,SAAS,CAAC,CAAC,CAAC,MAAM,QAAQ;GACnE,IAAI,CAAC,WAAW,UAAU,GAAG;EAC/B,CAAC;EACD,aAAa;GACX,YAAY;EACd;CACF,GAAG,CAAC,OAAO,QAAQ,CAAC;CAEpB,IAAI,MAAM,WAAW,GAAG,OAAO;CAE/B,MAAM,mBAAmB;CACzB,MAAM,iBAAiB;EACrB,SAAS;EACT,OAAO;EACP,SAAS;EACT,MAAM;CACR,EAAE;CACF,MAAM,WAAW,IAAI,IAAI,SAAS,KAAK,WAAW,CAAC,OAAO,MAAM,OAAO,OAAO,CAAC,CAAC;CAEhF,OACE,oBAAC,OAAD;EACE,iBAAA;EACA,WAAW,GACT,sIACA,SACF;EAEC,UAAA,MAAM,KAAK,QAAQ,MAAM;GACxB,MAAM,aAAa,UAAU,MAAM,QAAQ;GAC3C,MAAM,QAAQ,YAAY,KAAA,KAAa,aAAa;GACpD,MAAM,UAAU,SAAS,eAAe;GACxC,MAAM,SAAS,QAAQ,SAAS,IAAI,UAAU,IAAI,KAAA;GAClD,OACE,qBAAC,OAAD;IAEE,oBAAkB,QAAQ,aAAa,KAAA;IACvC,oBAAkB,UAAU,YAAY,KAAA;IACxC,eAAa,WAAW,KAAA,IAAY,KAAA,IAAY;IAChD,WAAW,CACT,kEACA,UAAU,iBAAiB,WAAW,KAAA,IAAY,mBAAmB,iBACvE,CAAC,CAAC,KAAK,GAAG;IARZ,UAAA;KAUE,qBAAC,QAAD;MAAM,WAAU;MAAhB,UAAA,CACG,WAAW,WAAW,KAAA,IAAY,MAAM,IACxC,QAAQ,aAAa,EAClB;;KACN,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,SAAS,oBAAC,mBAAD;OAAmB,QAAQ,SAAS;OAAI,SAAS;MAAS,CAAA,IAAI;KACpE,CAAA;KAEL,WAAW,KAAA,IACV,oBAAC,QAAD;MAAM,sBAAA;MAAmB,WAAU;MAChC,UAAA;KACG,CAAA,IACJ;IACD;GAtBE,GAAA,GAAG,WAAW,GAAG,GAsBnB;EAET,CAAC;CACE,CAAA;AAET"}
@@ -0,0 +1,37 @@
1
+ const require_UiEllipsis = require("../../icons/components/UiEllipsis.cjs");
2
+ const require_Icon = require("../Icon.cjs");
3
+ const require_button = require("../../components/button.cjs");
4
+ const require_DropdownMenu = require("../../overlay/DropdownMenu.cjs");
5
+ const require_ContextMenu = require("../../overlay/ContextMenu.cjs");
6
+ let react = require("react");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ // src/data/diagnostics/ProblemActions.tsx
9
+ function ProblemActions({ items, label = "Problem actions" }) {
10
+ const [target, setTarget] = (0, react.useState)(null);
11
+ const bind = (0, react.useCallback)((el) => setTarget(el?.closest("tr") ?? el?.parentElement ?? null), []);
12
+ if (!items.length) return null;
13
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
14
+ ref: bind,
15
+ className: "shrink-0",
16
+ onClick: (event) => event.stopPropagation(),
17
+ onKeyDown: (event) => event.stopPropagation(),
18
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_DropdownMenu.DropdownMenu, {
19
+ menuLabel: label,
20
+ items,
21
+ trigger: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_button.Button, {
22
+ variant: "ghost",
23
+ size: "icon",
24
+ className: "size-7 text-muted-foreground",
25
+ "aria-label": label,
26
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, { icon: require_UiEllipsis.UiEllipsis })
27
+ })
28
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ContextMenu.ContextMenu, {
29
+ contextTarget: target,
30
+ menuLabel: label,
31
+ menuItems: items
32
+ })]
33
+ });
34
+ }
35
+ exports.ProblemActions = ProblemActions;
36
+
37
+ //# sourceMappingURL=ProblemActions.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemActions.cjs","names":["useState","useCallback","DropdownMenu","Button","Icon","UiEllipsis","ContextMenu"],"sources":["../../../src/data/diagnostics/ProblemActions.tsx"],"sourcesContent":["import { useCallback, useState } from \"react\";\nimport { Button } from \"../../components/button\";\nimport { ContextMenu } from \"../../overlay/ContextMenu\";\nimport {\n DropdownMenu,\n type DropdownMenuItem,\n} from \"../../overlay/DropdownMenu\";\nimport { Icon } from \"../Icon\";\nimport { UiEllipsis } from \"../../icons\";\n\nexport function ProblemActions({\n items,\n label = \"Problem actions\",\n}: {\n items: DropdownMenuItem[];\n label?: string;\n}) {\n const [target, setTarget] = useState<HTMLElement | null>(null);\n const bind = useCallback(\n (el: HTMLSpanElement | null) =>\n setTarget(el?.closest(\"tr\") ?? el?.parentElement ?? null),\n [],\n );\n if (!items.length) return null;\n return (\n <span\n ref={bind}\n className=\"shrink-0\"\n onClick={(event) => event.stopPropagation()}\n onKeyDown={(event) => event.stopPropagation()}\n >\n <DropdownMenu\n menuLabel={label}\n items={items}\n trigger={\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"size-7 text-muted-foreground\"\n aria-label={label}\n >\n <Icon icon={UiEllipsis} />\n </Button>\n }\n />\n <ContextMenu contextTarget={target} menuLabel={label} menuItems={items} />\n </span>\n );\n}\n"],"mappings":";;;;;;;;AAUA,SAAgB,eAAe,EAC7B,OACA,QAAQ,qBAIP;CACD,MAAM,CAAC,QAAQ,cAAA,GAAaA,MAAAA,SAAAA,CAA6B,IAAI;CAC7D,MAAM,QAAA,GAAOC,MAAAA,YAAAA,EACV,OACC,UAAU,IAAI,QAAQ,IAAI,KAAK,IAAI,iBAAiB,IAAI,GAC1D,CAAC,CACH;CACA,IAAI,CAAC,MAAM,QAAQ,OAAO;CAC1B,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,QAAD;EACE,KAAK;EACL,WAAU;EACV,UAAU,UAAU,MAAM,gBAAgB;EAC1C,YAAY,UAAU,MAAM,gBAAgB;EAJ9C,UAAA,CAME,iBAAA,GAAA,kBAAA,IAAA,CAACC,qBAAAA,cAAD;GACE,WAAW;GACJ;GACP,SACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,eAAAA,QAAD;IACE,SAAQ;IACR,MAAK;IACL,WAAU;IACV,cAAY;IAEZ,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACC,aAAAA,MAAD,EAAM,MAAMC,mBAAAA,WAAa,CAAA;GACnB,CAAA;EAEX,CAAA,GACD,iBAAA,GAAA,kBAAA,IAAA,CAACC,oBAAAA,aAAD;GAAa,eAAe;GAAQ,WAAW;GAAO,WAAW;EAAQ,CAAA,CACrE;;AAEV"}
@@ -0,0 +1,6 @@
1
+ import { DropdownMenuItem } from '../../overlay/DropdownMenu.js';
2
+ export declare function ProblemActions({ items, label, }: {
3
+ items: DropdownMenuItem[];
4
+ label?: string;
5
+ }): import("react").JSX.Element | null;
6
+ //# sourceMappingURL=ProblemActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemActions.d.ts","sourceRoot":"","sources":["../../../src/data/diagnostics/ProblemActions.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,4BAA4B,CAAC;AAIpC,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,KAAyB,GAC1B,EAAE;IACD,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,sCAgCA"}
@@ -0,0 +1,37 @@
1
+ import { UiEllipsis } from "../../icons/components/UiEllipsis.js";
2
+ import { Icon } from "../Icon.js";
3
+ import { Button } from "../../components/button.js";
4
+ import { DropdownMenu } from "../../overlay/DropdownMenu.js";
5
+ import { ContextMenu } from "../../overlay/ContextMenu.js";
6
+ import { useCallback, useState } from "react";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+ // src/data/diagnostics/ProblemActions.tsx
9
+ function ProblemActions({ items, label = "Problem actions" }) {
10
+ const [target, setTarget] = useState(null);
11
+ const bind = useCallback((el) => setTarget(el?.closest("tr") ?? el?.parentElement ?? null), []);
12
+ if (!items.length) return null;
13
+ return /* @__PURE__ */ jsxs("span", {
14
+ ref: bind,
15
+ className: "shrink-0",
16
+ onClick: (event) => event.stopPropagation(),
17
+ onKeyDown: (event) => event.stopPropagation(),
18
+ children: [/* @__PURE__ */ jsx(DropdownMenu, {
19
+ menuLabel: label,
20
+ items,
21
+ trigger: /* @__PURE__ */ jsx(Button, {
22
+ variant: "ghost",
23
+ size: "icon",
24
+ className: "size-7 text-muted-foreground",
25
+ "aria-label": label,
26
+ children: /* @__PURE__ */ jsx(Icon, { icon: UiEllipsis })
27
+ })
28
+ }), /* @__PURE__ */ jsx(ContextMenu, {
29
+ contextTarget: target,
30
+ menuLabel: label,
31
+ menuItems: items
32
+ })]
33
+ });
34
+ }
35
+ export { ProblemActions };
36
+
37
+ //# sourceMappingURL=ProblemActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemActions.js","names":[],"sources":["../../../src/data/diagnostics/ProblemActions.tsx"],"sourcesContent":["import { useCallback, useState } from \"react\";\nimport { Button } from \"../../components/button\";\nimport { ContextMenu } from \"../../overlay/ContextMenu\";\nimport {\n DropdownMenu,\n type DropdownMenuItem,\n} from \"../../overlay/DropdownMenu\";\nimport { Icon } from \"../Icon\";\nimport { UiEllipsis } from \"../../icons\";\n\nexport function ProblemActions({\n items,\n label = \"Problem actions\",\n}: {\n items: DropdownMenuItem[];\n label?: string;\n}) {\n const [target, setTarget] = useState<HTMLElement | null>(null);\n const bind = useCallback(\n (el: HTMLSpanElement | null) =>\n setTarget(el?.closest(\"tr\") ?? el?.parentElement ?? null),\n [],\n );\n if (!items.length) return null;\n return (\n <span\n ref={bind}\n className=\"shrink-0\"\n onClick={(event) => event.stopPropagation()}\n onKeyDown={(event) => event.stopPropagation()}\n >\n <DropdownMenu\n menuLabel={label}\n items={items}\n trigger={\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"size-7 text-muted-foreground\"\n aria-label={label}\n >\n <Icon icon={UiEllipsis} />\n </Button>\n }\n />\n <ContextMenu contextTarget={target} menuLabel={label} menuItems={items} />\n </span>\n );\n}\n"],"mappings":";;;;;;;;AAUA,SAAgB,eAAe,EAC7B,OACA,QAAQ,qBAIP;CACD,MAAM,CAAC,QAAQ,aAAa,SAA6B,IAAI;CAC7D,MAAM,OAAO,aACV,OACC,UAAU,IAAI,QAAQ,IAAI,KAAK,IAAI,iBAAiB,IAAI,GAC1D,CAAC,CACH;CACA,IAAI,CAAC,MAAM,QAAQ,OAAO;CAC1B,OACE,qBAAC,QAAD;EACE,KAAK;EACL,WAAU;EACV,UAAU,UAAU,MAAM,gBAAgB;EAC1C,YAAY,UAAU,MAAM,gBAAgB;EAJ9C,UAAA,CAME,oBAAC,cAAD;GACE,WAAW;GACJ;GACP,SACE,oBAAC,QAAD;IACE,SAAQ;IACR,MAAK;IACL,WAAU;IACV,cAAY;IAEZ,UAAA,oBAAC,MAAD,EAAM,MAAM,WAAa,CAAA;GACnB,CAAA;EAEX,CAAA,GACD,oBAAC,aAAD;GAAa,eAAe;GAAQ,WAAW;GAAO,WAAW;EAAQ,CAAA,CACrE;;AAEV"}
@@ -0,0 +1,33 @@
1
+ const require_filter_bar_context = require("../../components/filter-bar-context.cjs");
2
+ const require_filter_bar_multi = require("../../components/filter-bar-multi.cjs");
3
+ let react_jsx_runtime = require("react/jsx-runtime");
4
+ // src/data/diagnostics/ProblemFacet.tsx
5
+ var IMMEDIATE = {
6
+ autoSubmit: false,
7
+ compact: false
8
+ };
9
+ function ProblemFacet({ label, options, state, onChange }) {
10
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
11
+ "aria-label": label,
12
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
13
+ className: "mb-1 text-xs font-medium text-muted-foreground",
14
+ children: label
15
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_filter_bar_context.FilterBarContext.Provider, {
16
+ value: IMMEDIATE,
17
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_filter_bar_multi.MultiFilterPanel, {
18
+ chrome: "embedded",
19
+ filter: {
20
+ key: label,
21
+ kind: "multi",
22
+ label,
23
+ options,
24
+ value: Object.fromEntries(state),
25
+ onChange: (value) => onChange(new Map(Object.entries(value)))
26
+ }
27
+ })
28
+ })]
29
+ });
30
+ }
31
+ exports.ProblemFacet = ProblemFacet;
32
+
33
+ //# sourceMappingURL=ProblemFacet.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemFacet.cjs","names":["FilterBarContext","MultiFilterPanel"],"sources":["../../../src/data/diagnostics/ProblemFacet.tsx"],"sourcesContent":["import type { FilterState } from \"../test-runner/filterState\";\nimport { MultiFilterPanel } from \"../../components/filter-bar-multi\";\nimport { FilterBarContext } from \"../../components/filter-bar-context\";\nimport type { MultiSelectOption } from \"../../components/MultiSelect\";\n\nconst IMMEDIATE = { autoSubmit: false, compact: false };\nexport function ProblemFacet({\n label,\n options,\n state,\n onChange,\n}: {\n label: string;\n options: MultiSelectOption[];\n state: FilterState<string>;\n onChange: (state: FilterState<string>) => void;\n}) {\n return (\n <section aria-label={label}>\n <div className=\"mb-1 text-xs font-medium text-muted-foreground\">\n {label}\n </div>\n <FilterBarContext.Provider value={IMMEDIATE}>\n <MultiFilterPanel\n chrome=\"embedded\"\n filter={{\n key: label,\n kind: \"multi\",\n label,\n options,\n value: Object.fromEntries(state),\n onChange: (value) => onChange(new Map(Object.entries(value))),\n }}\n />\n </FilterBarContext.Provider>\n </section>\n );\n}\n"],"mappings":";;;;AAKA,IAAM,YAAY;CAAE,YAAY;CAAO,SAAS;AAAM;AACtD,SAAgB,aAAa,EAC3B,OACA,SACA,OACA,YAMC;CACD,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,WAAD;EAAS,cAAY;EAArB,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;GAAK,WAAU;GACZ,UAAA;EACE,CAAA,GACL,iBAAA,GAAA,kBAAA,IAAA,CAACA,2BAAAA,iBAAiB,UAAlB;GAA2B,OAAO;GAChC,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACC,yBAAAA,kBAAD;IACE,QAAO;IACP,QAAQ;KACN,KAAK;KACL,MAAM;KACN;KACA;KACA,OAAO,OAAO,YAAY,KAAK;KAC/B,WAAW,UAAU,SAAS,IAAI,IAAI,OAAO,QAAQ,KAAK,CAAC,CAAC;IAC9D;GACD,CAAA;EACwB,CAAA,CACpB;;AAEb"}
@@ -0,0 +1,9 @@
1
+ import { FilterState } from '../test-runner/filterState.js';
2
+ import { MultiSelectOption } from '../../components/MultiSelect.js';
3
+ export declare function ProblemFacet({ label, options, state, onChange, }: {
4
+ label: string;
5
+ options: MultiSelectOption[];
6
+ state: FilterState<string>;
7
+ onChange: (state: FilterState<string>) => void;
8
+ }): import("react").JSX.Element;
9
+ //# sourceMappingURL=ProblemFacet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemFacet.d.ts","sourceRoot":"","sources":["../../../src/data/diagnostics/ProblemFacet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,OAAO,EACP,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;CAChD,+BAqBA"}
@@ -0,0 +1,33 @@
1
+ import { FilterBarContext } from "../../components/filter-bar-context.js";
2
+ import { MultiFilterPanel } from "../../components/filter-bar-multi.js";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ // src/data/diagnostics/ProblemFacet.tsx
5
+ var IMMEDIATE = {
6
+ autoSubmit: false,
7
+ compact: false
8
+ };
9
+ function ProblemFacet({ label, options, state, onChange }) {
10
+ return /* @__PURE__ */ jsxs("section", {
11
+ "aria-label": label,
12
+ children: [/* @__PURE__ */ jsx("div", {
13
+ className: "mb-1 text-xs font-medium text-muted-foreground",
14
+ children: label
15
+ }), /* @__PURE__ */ jsx(FilterBarContext.Provider, {
16
+ value: IMMEDIATE,
17
+ children: /* @__PURE__ */ jsx(MultiFilterPanel, {
18
+ chrome: "embedded",
19
+ filter: {
20
+ key: label,
21
+ kind: "multi",
22
+ label,
23
+ options,
24
+ value: Object.fromEntries(state),
25
+ onChange: (value) => onChange(new Map(Object.entries(value)))
26
+ }
27
+ })
28
+ })]
29
+ });
30
+ }
31
+ export { ProblemFacet };
32
+
33
+ //# sourceMappingURL=ProblemFacet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemFacet.js","names":[],"sources":["../../../src/data/diagnostics/ProblemFacet.tsx"],"sourcesContent":["import type { FilterState } from \"../test-runner/filterState\";\nimport { MultiFilterPanel } from \"../../components/filter-bar-multi\";\nimport { FilterBarContext } from \"../../components/filter-bar-context\";\nimport type { MultiSelectOption } from \"../../components/MultiSelect\";\n\nconst IMMEDIATE = { autoSubmit: false, compact: false };\nexport function ProblemFacet({\n label,\n options,\n state,\n onChange,\n}: {\n label: string;\n options: MultiSelectOption[];\n state: FilterState<string>;\n onChange: (state: FilterState<string>) => void;\n}) {\n return (\n <section aria-label={label}>\n <div className=\"mb-1 text-xs font-medium text-muted-foreground\">\n {label}\n </div>\n <FilterBarContext.Provider value={IMMEDIATE}>\n <MultiFilterPanel\n chrome=\"embedded\"\n filter={{\n key: label,\n kind: \"multi\",\n label,\n options,\n value: Object.fromEntries(state),\n onChange: (value) => onChange(new Map(Object.entries(value))),\n }}\n />\n </FilterBarContext.Provider>\n </section>\n );\n}\n"],"mappings":";;;;AAKA,IAAM,YAAY;CAAE,YAAY;CAAO,SAAS;AAAM;AACtD,SAAgB,aAAa,EAC3B,OACA,SACA,OACA,YAMC;CACD,OACE,qBAAC,WAAD;EAAS,cAAY;EAArB,UAAA,CACE,oBAAC,OAAD;GAAK,WAAU;GACZ,UAAA;EACE,CAAA,GACL,oBAAC,iBAAiB,UAAlB;GAA2B,OAAO;GAChC,UAAA,oBAAC,kBAAD;IACE,QAAO;IACP,QAAQ;KACN,KAAK;KACL,MAAM;KACN;KACA;KACA,OAAO,OAAO,YAAY,KAAK;KAC/B,WAAW,UAAU,SAAS,IAAI,IAAI,OAAO,QAAQ,KAAK,CAAC,CAAC;IAC9D;GACD,CAAA;EACwB,CAAA,CACpB;;AAEb"}
@@ -0,0 +1,62 @@
1
+ const require_UiChevronDown = require("../../icons/components/UiChevronDown.cjs");
2
+ const require_UiChevronRight = require("../../icons/components/UiChevronRight.cjs");
3
+ const require_Icon = require("../Icon.cjs");
4
+ const require_MarkIcons = require("../test-runner/MarkIcons.cjs");
5
+ const require_ProblemActions = require("./ProblemActions.cjs");
6
+ let react = require("react");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ // src/data/diagnostics/ProblemRow.tsx
9
+ function ProblemRow({ message, severity, metadata, location, actions, children, expanded: controlled, onExpandedChange }) {
10
+ const [localExpanded, setLocalExpanded] = (0, react.useState)(false);
11
+ const expanded = controlled ?? localExpanded;
12
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
13
+ className: "border-b border-border/50",
14
+ "data-problem-row": "",
15
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
16
+ className: "flex min-w-0 items-center hover:bg-muted/50",
17
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
18
+ type: "button",
19
+ "aria-expanded": expanded,
20
+ title: message,
21
+ onClick: () => controlled === void 0 ? setLocalExpanded(!expanded) : onExpandedChange?.(!expanded),
22
+ className: "flex min-h-7 min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring [@media(pointer:coarse)]:min-h-11",
23
+ children: [
24
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, {
25
+ icon: expanded ? require_UiChevronDown.UiChevronDown : require_UiChevronRight.UiChevronRight,
26
+ className: "shrink-0 text-muted-foreground"
27
+ }),
28
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MarkIcons.LintSeverityIcon, { severity }),
29
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
30
+ className: "min-w-0 flex-1 truncate",
31
+ children: message
32
+ }),
33
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
34
+ className: "hidden max-w-[30%] truncate text-muted-foreground sm:block",
35
+ children: metadata
36
+ }),
37
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
38
+ className: "max-w-[25%] shrink-0 truncate font-mono text-muted-foreground",
39
+ "data-problem-ln": "",
40
+ children: location
41
+ })
42
+ ]
43
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ProblemActions.ProblemActions, { items: actions })]
44
+ }), expanded && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
45
+ className: "space-y-2 px-3 pb-3 pl-8 text-xs",
46
+ children: [
47
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
48
+ className: "whitespace-pre-wrap break-words",
49
+ children: message
50
+ }),
51
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
52
+ className: "text-muted-foreground sm:hidden",
53
+ children: metadata
54
+ }),
55
+ children
56
+ ]
57
+ })]
58
+ });
59
+ }
60
+ exports.ProblemRow = ProblemRow;
61
+
62
+ //# sourceMappingURL=ProblemRow.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemRow.cjs","names":["useState","Icon","UiChevronDown","UiChevronRight","LintSeverityIcon","ProblemActions"],"sources":["../../../src/data/diagnostics/ProblemRow.tsx"],"sourcesContent":["import { useState, type ReactNode } from \"react\";\nimport type { DropdownMenuItem } from \"../../overlay/DropdownMenu\";\nimport { Icon } from \"../Icon\";\nimport { UiChevronDown, UiChevronRight } from \"../../icons\";\nimport { LintSeverityIcon } from \"../test-runner/MarkIcons\";\nimport type { LintSeverity } from \"../test-runner/marks\";\nimport { ProblemActions } from \"./ProblemActions\";\n\nexport function ProblemRow({\n message,\n severity,\n metadata,\n location,\n actions,\n children,\n expanded: controlled,\n onExpandedChange,\n}: {\n message: string;\n severity: LintSeverity;\n metadata: ReactNode;\n location: ReactNode;\n actions: DropdownMenuItem[];\n children: ReactNode;\n expanded?: boolean;\n onExpandedChange?: (expanded: boolean) => void;\n}) {\n const [localExpanded, setLocalExpanded] = useState(false);\n const expanded = controlled ?? localExpanded;\n return (\n <div className=\"border-b border-border/50\" data-problem-row=\"\">\n <div className=\"flex min-w-0 items-center hover:bg-muted/50\">\n <button\n type=\"button\"\n aria-expanded={expanded}\n title={message}\n onClick={() =>\n controlled === undefined\n ? setLocalExpanded(!expanded)\n : onExpandedChange?.(!expanded)\n }\n className=\"flex min-h-7 min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring [@media(pointer:coarse)]:min-h-11\"\n >\n <Icon\n icon={expanded ? UiChevronDown : UiChevronRight}\n className=\"shrink-0 text-muted-foreground\"\n />\n <LintSeverityIcon severity={severity} />\n <span className=\"min-w-0 flex-1 truncate\">{message}</span>\n <span className=\"hidden max-w-[30%] truncate text-muted-foreground sm:block\">\n {metadata}\n </span>\n <span\n className=\"max-w-[25%] shrink-0 truncate font-mono text-muted-foreground\"\n data-problem-ln=\"\"\n >\n {location}\n </span>\n </button>\n <ProblemActions items={actions} />\n </div>\n {expanded && (\n <div className=\"space-y-2 px-3 pb-3 pl-8 text-xs\">\n <p className=\"whitespace-pre-wrap break-words\">{message}</p>\n <div className=\"text-muted-foreground sm:hidden\">{metadata}</div>\n {children}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;;;AAQA,SAAgB,WAAW,EACzB,SACA,UACA,UACA,UACA,SACA,UACA,UAAU,YACV,oBAUC;CACD,MAAM,CAAC,eAAe,qBAAA,GAAoBA,MAAAA,SAAAA,CAAS,KAAK;CACxD,MAAM,WAAW,cAAc;CAC/B,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;EAAK,WAAU;EAA4B,oBAAiB;EAA5D,UAAA,CACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,UAAD;IACE,MAAK;IACL,iBAAe;IACf,OAAO;IACP,eACE,eAAe,KAAA,IACX,iBAAiB,CAAC,QAAQ,IAC1B,mBAAmB,CAAC,QAAQ;IAElC,WAAU;IATZ,UAAA;KAWE,iBAAA,GAAA,kBAAA,IAAA,CAACC,aAAAA,MAAD;MACE,MAAM,WAAWC,sBAAAA,gBAAgBC,uBAAAA;MACjC,WAAU;KACX,CAAA;KACD,iBAAA,GAAA,kBAAA,IAAA,CAACC,kBAAAA,kBAAD,EAA4B,SAAW,CAAA;KACvC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MAA2B,UAAA;KAAc,CAAA;KACzD,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MACb,UAAA;KACG,CAAA;KACN,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MACE,WAAU;MACV,mBAAgB;MAEf,UAAA;KACG,CAAA;IACA;GACR,CAAA,GAAA,iBAAA,GAAA,kBAAA,IAAA,CAACC,uBAAAA,gBAAD,EAAgB,OAAO,QAAU,CAAA,CAC9B;EACJ,CAAA,GAAA,YACC,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;GAAK,WAAU;GAAf,UAAA;IACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,KAAD;KAAG,WAAU;KAAmC,UAAA;IAAW,CAAA;IAC3D,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;KAAK,WAAU;KAAmC,UAAA;IAAc,CAAA;IAC/D;GACE;EAEJ,CAAA,CAAA;;AAET"}
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ import { DropdownMenuItem } from '../../overlay/DropdownMenu.js';
3
+ import { LintSeverity } from '../test-runner/marks.js';
4
+ export declare function ProblemRow({ message, severity, metadata, location, actions, children, expanded: controlled, onExpandedChange, }: {
5
+ message: string;
6
+ severity: LintSeverity;
7
+ metadata: ReactNode;
8
+ location: ReactNode;
9
+ actions: DropdownMenuItem[];
10
+ children: ReactNode;
11
+ expanded?: boolean;
12
+ onExpandedChange?: (expanded: boolean) => void;
13
+ }): import("react").JSX.Element;
14
+ //# sourceMappingURL=ProblemRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemRow.d.ts","sourceRoot":"","sources":["../../../src/data/diagnostics/ProblemRow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EAAE,UAAU,EACpB,gBAAgB,GACjB,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,+BA4CA"}
@@ -0,0 +1,62 @@
1
+ import { UiChevronDown } from "../../icons/components/UiChevronDown.js";
2
+ import { UiChevronRight } from "../../icons/components/UiChevronRight.js";
3
+ import { Icon } from "../Icon.js";
4
+ import { LintSeverityIcon } from "../test-runner/MarkIcons.js";
5
+ import { ProblemActions } from "./ProblemActions.js";
6
+ import { useState } from "react";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+ // src/data/diagnostics/ProblemRow.tsx
9
+ function ProblemRow({ message, severity, metadata, location, actions, children, expanded: controlled, onExpandedChange }) {
10
+ const [localExpanded, setLocalExpanded] = useState(false);
11
+ const expanded = controlled ?? localExpanded;
12
+ return /* @__PURE__ */ jsxs("div", {
13
+ className: "border-b border-border/50",
14
+ "data-problem-row": "",
15
+ children: [/* @__PURE__ */ jsxs("div", {
16
+ className: "flex min-w-0 items-center hover:bg-muted/50",
17
+ children: [/* @__PURE__ */ jsxs("button", {
18
+ type: "button",
19
+ "aria-expanded": expanded,
20
+ title: message,
21
+ onClick: () => controlled === void 0 ? setLocalExpanded(!expanded) : onExpandedChange?.(!expanded),
22
+ className: "flex min-h-7 min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring [@media(pointer:coarse)]:min-h-11",
23
+ children: [
24
+ /* @__PURE__ */ jsx(Icon, {
25
+ icon: expanded ? UiChevronDown : UiChevronRight,
26
+ className: "shrink-0 text-muted-foreground"
27
+ }),
28
+ /* @__PURE__ */ jsx(LintSeverityIcon, { severity }),
29
+ /* @__PURE__ */ jsx("span", {
30
+ className: "min-w-0 flex-1 truncate",
31
+ children: message
32
+ }),
33
+ /* @__PURE__ */ jsx("span", {
34
+ className: "hidden max-w-[30%] truncate text-muted-foreground sm:block",
35
+ children: metadata
36
+ }),
37
+ /* @__PURE__ */ jsx("span", {
38
+ className: "max-w-[25%] shrink-0 truncate font-mono text-muted-foreground",
39
+ "data-problem-ln": "",
40
+ children: location
41
+ })
42
+ ]
43
+ }), /* @__PURE__ */ jsx(ProblemActions, { items: actions })]
44
+ }), expanded && /* @__PURE__ */ jsxs("div", {
45
+ className: "space-y-2 px-3 pb-3 pl-8 text-xs",
46
+ children: [
47
+ /* @__PURE__ */ jsx("p", {
48
+ className: "whitespace-pre-wrap break-words",
49
+ children: message
50
+ }),
51
+ /* @__PURE__ */ jsx("div", {
52
+ className: "text-muted-foreground sm:hidden",
53
+ children: metadata
54
+ }),
55
+ children
56
+ ]
57
+ })]
58
+ });
59
+ }
60
+ export { ProblemRow };
61
+
62
+ //# sourceMappingURL=ProblemRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemRow.js","names":[],"sources":["../../../src/data/diagnostics/ProblemRow.tsx"],"sourcesContent":["import { useState, type ReactNode } from \"react\";\nimport type { DropdownMenuItem } from \"../../overlay/DropdownMenu\";\nimport { Icon } from \"../Icon\";\nimport { UiChevronDown, UiChevronRight } from \"../../icons\";\nimport { LintSeverityIcon } from \"../test-runner/MarkIcons\";\nimport type { LintSeverity } from \"../test-runner/marks\";\nimport { ProblemActions } from \"./ProblemActions\";\n\nexport function ProblemRow({\n message,\n severity,\n metadata,\n location,\n actions,\n children,\n expanded: controlled,\n onExpandedChange,\n}: {\n message: string;\n severity: LintSeverity;\n metadata: ReactNode;\n location: ReactNode;\n actions: DropdownMenuItem[];\n children: ReactNode;\n expanded?: boolean;\n onExpandedChange?: (expanded: boolean) => void;\n}) {\n const [localExpanded, setLocalExpanded] = useState(false);\n const expanded = controlled ?? localExpanded;\n return (\n <div className=\"border-b border-border/50\" data-problem-row=\"\">\n <div className=\"flex min-w-0 items-center hover:bg-muted/50\">\n <button\n type=\"button\"\n aria-expanded={expanded}\n title={message}\n onClick={() =>\n controlled === undefined\n ? setLocalExpanded(!expanded)\n : onExpandedChange?.(!expanded)\n }\n className=\"flex min-h-7 min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring [@media(pointer:coarse)]:min-h-11\"\n >\n <Icon\n icon={expanded ? UiChevronDown : UiChevronRight}\n className=\"shrink-0 text-muted-foreground\"\n />\n <LintSeverityIcon severity={severity} />\n <span className=\"min-w-0 flex-1 truncate\">{message}</span>\n <span className=\"hidden max-w-[30%] truncate text-muted-foreground sm:block\">\n {metadata}\n </span>\n <span\n className=\"max-w-[25%] shrink-0 truncate font-mono text-muted-foreground\"\n data-problem-ln=\"\"\n >\n {location}\n </span>\n </button>\n <ProblemActions items={actions} />\n </div>\n {expanded && (\n <div className=\"space-y-2 px-3 pb-3 pl-8 text-xs\">\n <p className=\"whitespace-pre-wrap break-words\">{message}</p>\n <div className=\"text-muted-foreground sm:hidden\">{metadata}</div>\n {children}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;;;AAQA,SAAgB,WAAW,EACzB,SACA,UACA,UACA,UACA,SACA,UACA,UAAU,YACV,oBAUC;CACD,MAAM,CAAC,eAAe,oBAAoB,SAAS,KAAK;CACxD,MAAM,WAAW,cAAc;CAC/B,OACE,qBAAC,OAAD;EAAK,WAAU;EAA4B,oBAAiB;EAA5D,UAAA,CACE,qBAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,qBAAC,UAAD;IACE,MAAK;IACL,iBAAe;IACf,OAAO;IACP,eACE,eAAe,KAAA,IACX,iBAAiB,CAAC,QAAQ,IAC1B,mBAAmB,CAAC,QAAQ;IAElC,WAAU;IATZ,UAAA;KAWE,oBAAC,MAAD;MACE,MAAM,WAAW,gBAAgB;MACjC,WAAU;KACX,CAAA;KACD,oBAAC,kBAAD,EAA4B,SAAW,CAAA;KACvC,oBAAC,QAAD;MAAM,WAAU;MAA2B,UAAA;KAAc,CAAA;KACzD,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA;KACG,CAAA;KACN,oBAAC,QAAD;MACE,WAAU;MACV,mBAAgB;MAEf,UAAA;KACG,CAAA;IACA;GACR,CAAA,GAAA,oBAAC,gBAAD,EAAgB,OAAO,QAAU,CAAA,CAC9B;EACJ,CAAA,GAAA,YACC,qBAAC,OAAD;GAAK,WAAU;GAAf,UAAA;IACE,oBAAC,KAAD;KAAG,WAAU;KAAmC,UAAA;IAAW,CAAA;IAC3D,oBAAC,OAAD;KAAK,WAAU;KAAmC,UAAA;IAAc,CAAA;IAC/D;GACE;EAEJ,CAAA,CAAA;;AAET"}
@@ -0,0 +1,18 @@
1
+ const require_DropdownMenu = require("../../overlay/DropdownMenu.cjs");
2
+ let react_jsx_runtime = require("react/jsx-runtime");
3
+ // src/data/diagnostics/ProblemViewOptions.tsx
4
+ function ProblemViewOptions({ active, children }) {
5
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_DropdownMenu.DropdownMenu, {
6
+ label: `View Options${active ? ` (${active})` : ""}`,
7
+ menuLabel: "Problem view options",
8
+ variant: "ghost",
9
+ menuClassName: "max-h-[70vh] w-80 overflow-y-auto p-3",
10
+ children: () => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
11
+ className: "space-y-3",
12
+ children
13
+ })
14
+ });
15
+ }
16
+ exports.ProblemViewOptions = ProblemViewOptions;
17
+
18
+ //# sourceMappingURL=ProblemViewOptions.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemViewOptions.cjs","names":["DropdownMenu"],"sources":["../../../src/data/diagnostics/ProblemViewOptions.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { DropdownMenu } from \"../../overlay/DropdownMenu\";\n\nexport function ProblemViewOptions({\n active,\n children,\n}: {\n active: number;\n children: ReactNode;\n}) {\n return (\n <DropdownMenu\n label={`View Options${active ? ` (${active})` : \"\"}`}\n menuLabel=\"Problem view options\"\n variant=\"ghost\"\n menuClassName=\"max-h-[70vh] w-80 overflow-y-auto p-3\"\n >\n {() => <div className=\"space-y-3\">{children}</div>}\n </DropdownMenu>\n );\n}\n"],"mappings":";;;AAGA,SAAgB,mBAAmB,EACjC,QACA,YAIC;CACD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,qBAAAA,cAAD;EACE,OAAO,eAAe,SAAS,KAAK,OAAO,KAAK;EAChD,WAAU;EACV,SAAQ;EACR,eAAc;EAEP,gBAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;GAAK,WAAU;GAAa;EAAc,CAAA;CACrC,CAAA;AAElB"}
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ export declare function ProblemViewOptions({ active, children, }: {
3
+ active: number;
4
+ children: ReactNode;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=ProblemViewOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemViewOptions.d.ts","sourceRoot":"","sources":["../../../src/data/diagnostics/ProblemViewOptions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,CAAC;CACrB,+BAWA"}
@@ -0,0 +1,18 @@
1
+ import { DropdownMenu } from "../../overlay/DropdownMenu.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ // src/data/diagnostics/ProblemViewOptions.tsx
4
+ function ProblemViewOptions({ active, children }) {
5
+ return /* @__PURE__ */ jsx(DropdownMenu, {
6
+ label: `View Options${active ? ` (${active})` : ""}`,
7
+ menuLabel: "Problem view options",
8
+ variant: "ghost",
9
+ menuClassName: "max-h-[70vh] w-80 overflow-y-auto p-3",
10
+ children: () => /* @__PURE__ */ jsx("div", {
11
+ className: "space-y-3",
12
+ children
13
+ })
14
+ });
15
+ }
16
+ export { ProblemViewOptions };
17
+
18
+ //# sourceMappingURL=ProblemViewOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProblemViewOptions.js","names":[],"sources":["../../../src/data/diagnostics/ProblemViewOptions.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { DropdownMenu } from \"../../overlay/DropdownMenu\";\n\nexport function ProblemViewOptions({\n active,\n children,\n}: {\n active: number;\n children: ReactNode;\n}) {\n return (\n <DropdownMenu\n label={`View Options${active ? ` (${active})` : \"\"}`}\n menuLabel=\"Problem view options\"\n variant=\"ghost\"\n menuClassName=\"max-h-[70vh] w-80 overflow-y-auto p-3\"\n >\n {() => <div className=\"space-y-3\">{children}</div>}\n </DropdownMenu>\n );\n}\n"],"mappings":";;;AAGA,SAAgB,mBAAmB,EACjC,QACA,YAIC;CACD,OACE,oBAAC,cAAD;EACE,OAAO,eAAe,SAAS,KAAK,OAAO,KAAK;EAChD,WAAU;EACV,SAAQ;EACR,eAAc;EAEP,gBAAA,oBAAC,OAAD;GAAK,WAAU;GAAa;EAAc,CAAA;CACrC,CAAA;AAElB"}
@@ -59,7 +59,7 @@ function StackFrameRow({ frame, index, showIndex = false, frameActions, renderFr
59
59
  })
60
60
  }),
61
61
  actions ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
62
- className: ["flex shrink-0 items-start gap-1", frameActionsVisibility === "hover" ? "opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100" : "opacity-100"].join(" "),
62
+ className: ["flex shrink-0 items-start gap-1", frameActionsVisibility === "hover" ? "opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100" : "opacity-100"].join(" "),
63
63
  children: actions
64
64
  }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {}),
65
65
  !isAnnotation && require_FrameSourceWindow_utils.frameHasSource(frame) ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"StackFrameRow.cjs","names":["Icon","_Fragment","frameHasSource","FrameSourceWindow","UiLock","UiSync","UiWatch","UiChip","UiDebugStepOver","UiMethod","UiStackFrameDot"],"sources":["../../../src/data/diagnostics/StackFrameRow.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Icon } from \"../Icon\";\nimport {\n UiChip,\n UiDebugStepOver,\n UiLock,\n UiMethod,\n UiStackFrameDot,\n UiSync,\n UiWatch,\n} from \"../../icons\";\nimport { FrameSourceWindow } from \"./FrameSourceWindow\";\nimport { frameHasSource } from \"./FrameSourceWindow.utils\";\nimport type { ParsedThreadFrame } from \"./jvm-stacktrace\";\n\n// StackFrameActions renders trailing per-frame affordances. It is a slot: the\n// shared library never knows what the actions do, only where they go.\nexport type StackFrameActions = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFramePart = \"method\" | \"class\" | \"location\";\nexport type StackFramePartRenderer = (\n part: StackFramePart,\n frame: ParsedThreadFrame,\n index: number,\n) => ReactNode;\nexport type StackFrameDetailRenderer = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFrameActionsVisibility = \"hover\" | \"always\";\n\nexport interface StackFrameRowProps {\n frame: ParsedThreadFrame;\n index: number;\n /** Show the 1-based frame ordinal in the gutter. */\n showIndex?: boolean;\n /** Trailing actions for this frame, revealed on hover/focus. */\n frameActions?: StackFrameActions;\n /** Replace the method, class, or location label while preserving row layout. */\n renderFramePart?: StackFramePartRenderer;\n /** Additional detail rendered below an ordinary frame. */\n renderFrameDetail?: StackFrameDetailRenderer;\n /** Whether actions are hover-only or permanently visible. */\n frameActionsVisibility?: StackFrameActionsVisibility;\n}\n\n// StackFrameRow is THE stack-frame renderer. Both an exception dump (via\n// StackTrace) and a JVM thread dump (via JvmStackTrace) render their frames\n// through it, so a frame looks and behaves the same wherever it is shown.\n//\n// Thread dumps carry lock/monitor annotation entries alongside real frames —\n// `frame.kind !== \"frame\"` — which are rendered as their own muted rows with a\n// lock/wait icon and no source window. An exception dump simply never produces\n// them.\nexport function StackFrameRow({\n frame,\n index,\n showIndex = false,\n frameActions,\n renderFramePart,\n renderFrameDetail,\n frameActionsVisibility = \"hover\",\n}: StackFrameRowProps) {\n const isAnnotation = frame.kind !== \"frame\";\n const methodName = frame.displayName || frame.method || frame.functionName;\n const actions = frameActions?.(frame, index);\n const detail = !isAnnotation ? renderFrameDetail?.(frame, index) : null;\n\n return (\n <div\n className={[\n \"group grid gap-x-2 gap-y-0.5 px-3 py-0.5 text-xs\",\n showIndex ? \"grid-cols-[2rem_minmax(0,1fr)_auto]\" : \"grid-cols-[1.25rem_minmax(0,1fr)_auto]\",\n frame.runtime ? \"text-muted-foreground\" : \"text-foreground\",\n ].join(\" \")}\n >\n <div className=\"flex items-start justify-end gap-1 pt-0.5 font-mono text-[10px] text-muted-foreground\">\n {showIndex && <span data-frame-index>{index + 1}</span>}\n <Icon icon={frameIcon(frame)} className=\"mt-px shrink-0 text-[11px]\" />\n </div>\n\n <div className=\"min-w-0\">\n <div className=\"flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n {isAnnotation ? (\n <>\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4 opacity-70\">\n {frame.functionName}\n </span>\n {frame.annotationText && (\n <span className=\"min-w-0 break-all font-mono text-[11px] font-normal opacity-80\">\n {frame.annotationText}\n </span>\n )}\n </>\n ) : (\n <>\n {renderFramePart ? (\n renderFramePart(\"method\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4\">\n {methodName}\n </span>\n )}\n {frame.class && (\n renderFramePart ? (\n renderFramePart(\"class\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono text-[11px] text-muted-foreground\">\n {frame.class}\n </span>\n )\n )}\n {frame.location && (\n renderFramePart ? (\n renderFramePart(\"location\", frame, index)\n ) : (\n <span className=\"rounded border border-border bg-muted/40 px-1.5 py-px font-mono text-[10px] text-muted-foreground\">\n {frame.location}\n </span>\n )\n )}\n </>\n )}\n </div>\n </div>\n\n {actions ? (\n <div\n className={[\n \"flex shrink-0 items-start gap-1\",\n frameActionsVisibility === \"hover\"\n ? \"opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100\"\n : \"opacity-100\",\n ].join(\" \")}\n >\n {actions}\n </div>\n ) : (\n <div />\n )}\n\n {!isAnnotation && frameHasSource(frame) ? (\n <div className=\"col-span-3\">\n <FrameSourceWindow frame={frame} />\n </div>\n ) : null}\n {detail ? <div className=\"col-start-2 col-span-2 min-w-0\">{detail}</div> : null}\n </div>\n );\n}\n\nfunction frameIcon(frame: ParsedThreadFrame) {\n switch (frame.kind) {\n case \"locked\":\n return UiLock;\n case \"waiting_to_lock\":\n return UiSync;\n case \"waiting_on\":\n case \"parking\":\n return UiWatch;\n default:\n break;\n }\n if (frame.nativeMethod) return UiChip;\n if (frame.runtime) return UiDebugStepOver;\n return frame.method || frame.class ? UiMethod : UiStackFrameDot;\n}\n"],"mappings":";;;;;;;;;;;;AAkDA,SAAgB,cAAc,EAC5B,OACA,OACA,YAAY,OACZ,cACA,iBACA,mBACA,yBAAyB,WACJ;CACrB,MAAM,eAAe,MAAM,SAAS;CACpC,MAAM,aAAa,MAAM,eAAe,MAAM,UAAU,MAAM;CAC9D,MAAM,UAAU,eAAe,OAAO,KAAK;CAC3C,MAAM,SAAS,CAAC,eAAe,oBAAoB,OAAO,KAAK,IAAI;CAEnE,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;EACE,WAAW;GACT;GACA,YAAY,wCAAwC;GACpD,MAAM,UAAU,0BAA0B;EAC5C,CAAC,CAAC,KAAK,GAAG;EALZ,UAAA;GAOE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACG,aAAa,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;KAAM,oBAAA;KAAkB,UAAA,QAAQ;IAAQ,CAAA,GACtD,iBAAA,GAAA,kBAAA,IAAA,CAACA,aAAAA,MAAD;KAAM,MAAM,UAAU,KAAK;KAAG,WAAU;IAA8B,CAAA,CACnE;;GAEL,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IACb,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;KAAK,WAAU;KACZ,UAAA,eACC,iBAAA,GAAA,kBAAA,KAAA,CAAAC,kBAAAA,UAAA,EAAA,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,GACL,MAAM,kBACL,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,CAER,EAAA,CAAA,IAEF,iBAAA,GAAA,kBAAA,KAAA,CAAAA,kBAAAA,UAAA,EAAA,UAAA;MACG,kBACC,gBAAgB,UAAU,OAAO,KAAK,IAEtC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA;MACG,CAAA;MAEP,MAAM,UACL,kBACE,gBAAgB,SAAS,OAAO,KAAK,IAErC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;MAGT,MAAM,aACL,kBACE,gBAAgB,YAAY,OAAO,KAAK,IAExC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;KAGV,EAAA,CAAA;IAED,CAAA;GACF,CAAA;GAEJ,UACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IACE,WAAW,CACT,mCACA,2BAA2B,UACvB,kFACA,aACN,CAAC,CAAC,KAAK,GAAG;IAET,UAAA;GACE,CAAA,IAEL,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD,CAAM,CAAA;GAGP,CAAC,gBAAgBC,gCAAAA,eAAe,KAAK,IACpC,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IACb,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACC,0BAAAA,mBAAD,EAA0B,MAAQ,CAAA;GAC/B,CAAA,IACH;GACH,SAAS,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IAAkC,UAAA;GAAY,CAAA,IAAI;EACxE;;AAET;AAEA,SAAS,UAAU,OAA0B;CAC3C,QAAQ,MAAM,MAAd;EACE,KAAK,UACH,OAAOC,eAAAA;EACT,KAAK,mBACH,OAAOC,eAAAA;EACT,KAAK;EACL,KAAK,WACH,OAAOC,gBAAAA;CAGX;CACA,IAAI,MAAM,cAAc,OAAOC,eAAAA;CAC/B,IAAI,MAAM,SAAS,OAAOC,wBAAAA;CAC1B,OAAO,MAAM,UAAU,MAAM,QAAQC,iBAAAA,WAAWC,wBAAAA;AAClD"}
1
+ {"version":3,"file":"StackFrameRow.cjs","names":["Icon","_Fragment","frameHasSource","FrameSourceWindow","UiLock","UiSync","UiWatch","UiChip","UiDebugStepOver","UiMethod","UiStackFrameDot"],"sources":["../../../src/data/diagnostics/StackFrameRow.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Icon } from \"../Icon\";\nimport {\n UiChip,\n UiDebugStepOver,\n UiLock,\n UiMethod,\n UiStackFrameDot,\n UiSync,\n UiWatch,\n} from \"../../icons\";\nimport { FrameSourceWindow } from \"./FrameSourceWindow\";\nimport { frameHasSource } from \"./FrameSourceWindow.utils\";\nimport type { ParsedThreadFrame } from \"./jvm-stacktrace\";\n\n// StackFrameActions renders trailing per-frame affordances. It is a slot: the\n// shared library never knows what the actions do, only where they go.\nexport type StackFrameActions = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFramePart = \"method\" | \"class\" | \"location\";\nexport type StackFramePartRenderer = (\n part: StackFramePart,\n frame: ParsedThreadFrame,\n index: number,\n) => ReactNode;\nexport type StackFrameDetailRenderer = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFrameActionsVisibility = \"hover\" | \"always\";\n\nexport interface StackFrameRowProps {\n frame: ParsedThreadFrame;\n index: number;\n /** Show the 1-based frame ordinal in the gutter. */\n showIndex?: boolean;\n /** Trailing actions for this frame, revealed on hover/focus. */\n frameActions?: StackFrameActions;\n /** Replace the method, class, or location label while preserving row layout. */\n renderFramePart?: StackFramePartRenderer;\n /** Additional detail rendered below an ordinary frame. */\n renderFrameDetail?: StackFrameDetailRenderer;\n /** Whether actions are hover-only or permanently visible. */\n frameActionsVisibility?: StackFrameActionsVisibility;\n}\n\n// StackFrameRow is THE stack-frame renderer. Both an exception dump (via\n// StackTrace) and a JVM thread dump (via JvmStackTrace) render their frames\n// through it, so a frame looks and behaves the same wherever it is shown.\n//\n// Thread dumps carry lock/monitor annotation entries alongside real frames —\n// `frame.kind !== \"frame\"` — which are rendered as their own muted rows with a\n// lock/wait icon and no source window. An exception dump simply never produces\n// them.\nexport function StackFrameRow({\n frame,\n index,\n showIndex = false,\n frameActions,\n renderFramePart,\n renderFrameDetail,\n frameActionsVisibility = \"hover\",\n}: StackFrameRowProps) {\n const isAnnotation = frame.kind !== \"frame\";\n const methodName = frame.displayName || frame.method || frame.functionName;\n const actions = frameActions?.(frame, index);\n const detail = !isAnnotation ? renderFrameDetail?.(frame, index) : null;\n\n return (\n <div\n className={[\n \"group grid gap-x-2 gap-y-0.5 px-3 py-0.5 text-xs\",\n showIndex ? \"grid-cols-[2rem_minmax(0,1fr)_auto]\" : \"grid-cols-[1.25rem_minmax(0,1fr)_auto]\",\n frame.runtime ? \"text-muted-foreground\" : \"text-foreground\",\n ].join(\" \")}\n >\n <div className=\"flex items-start justify-end gap-1 pt-0.5 font-mono text-[10px] text-muted-foreground\">\n {showIndex && <span data-frame-index>{index + 1}</span>}\n <Icon icon={frameIcon(frame)} className=\"mt-px shrink-0 text-[11px]\" />\n </div>\n\n <div className=\"min-w-0\">\n <div className=\"flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n {isAnnotation ? (\n <>\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4 opacity-70\">\n {frame.functionName}\n </span>\n {frame.annotationText && (\n <span className=\"min-w-0 break-all font-mono text-[11px] font-normal opacity-80\">\n {frame.annotationText}\n </span>\n )}\n </>\n ) : (\n <>\n {renderFramePart ? (\n renderFramePart(\"method\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4\">\n {methodName}\n </span>\n )}\n {frame.class && (\n renderFramePart ? (\n renderFramePart(\"class\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono text-[11px] text-muted-foreground\">\n {frame.class}\n </span>\n )\n )}\n {frame.location && (\n renderFramePart ? (\n renderFramePart(\"location\", frame, index)\n ) : (\n <span className=\"rounded border border-border bg-muted/40 px-1.5 py-px font-mono text-[10px] text-muted-foreground\">\n {frame.location}\n </span>\n )\n )}\n </>\n )}\n </div>\n </div>\n\n {actions ? (\n <div\n className={[\n \"flex shrink-0 items-start gap-1\",\n frameActionsVisibility === \"hover\"\n ? \"opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100\"\n : \"opacity-100\",\n ].join(\" \")}\n >\n {actions}\n </div>\n ) : (\n <div />\n )}\n\n {!isAnnotation && frameHasSource(frame) ? (\n <div className=\"col-span-3\">\n <FrameSourceWindow frame={frame} />\n </div>\n ) : null}\n {detail ? <div className=\"col-start-2 col-span-2 min-w-0\">{detail}</div> : null}\n </div>\n );\n}\n\nfunction frameIcon(frame: ParsedThreadFrame) {\n switch (frame.kind) {\n case \"locked\":\n return UiLock;\n case \"waiting_to_lock\":\n return UiSync;\n case \"waiting_on\":\n case \"parking\":\n return UiWatch;\n default:\n break;\n }\n if (frame.nativeMethod) return UiChip;\n if (frame.runtime) return UiDebugStepOver;\n return frame.method || frame.class ? UiMethod : UiStackFrameDot;\n}\n"],"mappings":";;;;;;;;;;;;AAkDA,SAAgB,cAAc,EAC5B,OACA,OACA,YAAY,OACZ,cACA,iBACA,mBACA,yBAAyB,WACJ;CACrB,MAAM,eAAe,MAAM,SAAS;CACpC,MAAM,aAAa,MAAM,eAAe,MAAM,UAAU,MAAM;CAC9D,MAAM,UAAU,eAAe,OAAO,KAAK;CAC3C,MAAM,SAAS,CAAC,eAAe,oBAAoB,OAAO,KAAK,IAAI;CAEnE,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;EACE,WAAW;GACT;GACA,YAAY,wCAAwC;GACpD,MAAM,UAAU,0BAA0B;EAC5C,CAAC,CAAC,KAAK,GAAG;EALZ,UAAA;GAOE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACG,aAAa,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;KAAM,oBAAA;KAAkB,UAAA,QAAQ;IAAQ,CAAA,GACtD,iBAAA,GAAA,kBAAA,IAAA,CAACA,aAAAA,MAAD;KAAM,MAAM,UAAU,KAAK;KAAG,WAAU;IAA8B,CAAA,CACnE;;GAEL,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IACb,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;KAAK,WAAU;KACZ,UAAA,eACC,iBAAA,GAAA,kBAAA,KAAA,CAAAC,kBAAAA,UAAA,EAAA,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,GACL,MAAM,kBACL,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,CAER,EAAA,CAAA,IAEF,iBAAA,GAAA,kBAAA,KAAA,CAAAA,kBAAAA,UAAA,EAAA,UAAA;MACG,kBACC,gBAAgB,UAAU,OAAO,KAAK,IAEtC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA;MACG,CAAA;MAEP,MAAM,UACL,kBACE,gBAAgB,SAAS,OAAO,KAAK,IAErC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;MAGT,MAAM,aACL,kBACE,gBAAgB,YAAY,OAAO,KAAK,IAExC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;KAGV,EAAA,CAAA;IAED,CAAA;GACF,CAAA;GAEJ,UACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IACE,WAAW,CACT,mCACA,2BAA2B,UACvB,mHACA,aACN,CAAC,CAAC,KAAK,GAAG;IAET,UAAA;GACE,CAAA,IAEL,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD,CAAM,CAAA;GAGP,CAAC,gBAAgBC,gCAAAA,eAAe,KAAK,IACpC,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IACb,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACC,0BAAAA,mBAAD,EAA0B,MAAQ,CAAA;GAC/B,CAAA,IACH;GACH,SAAS,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,WAAU;IAAkC,UAAA;GAAY,CAAA,IAAI;EACxE;;AAET;AAEA,SAAS,UAAU,OAA0B;CAC3C,QAAQ,MAAM,MAAd;EACE,KAAK,UACH,OAAOC,eAAAA;EACT,KAAK,mBACH,OAAOC,eAAAA;EACT,KAAK;EACL,KAAK,WACH,OAAOC,gBAAAA;CAGX;CACA,IAAI,MAAM,cAAc,OAAOC,eAAAA;CAC/B,IAAI,MAAM,SAAS,OAAOC,wBAAAA;CAC1B,OAAO,MAAM,UAAU,MAAM,QAAQC,iBAAAA,WAAWC,wBAAAA;AAClD"}
@@ -59,7 +59,7 @@ function StackFrameRow({ frame, index, showIndex = false, frameActions, renderFr
59
59
  })
60
60
  }),
61
61
  actions ? /* @__PURE__ */ jsx("div", {
62
- className: ["flex shrink-0 items-start gap-1", frameActionsVisibility === "hover" ? "opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100" : "opacity-100"].join(" "),
62
+ className: ["flex shrink-0 items-start gap-1", frameActionsVisibility === "hover" ? "opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100" : "opacity-100"].join(" "),
63
63
  children: actions
64
64
  }) : /* @__PURE__ */ jsx("div", {}),
65
65
  !isAnnotation && frameHasSource(frame) ? /* @__PURE__ */ jsx("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"StackFrameRow.js","names":["_Fragment"],"sources":["../../../src/data/diagnostics/StackFrameRow.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Icon } from \"../Icon\";\nimport {\n UiChip,\n UiDebugStepOver,\n UiLock,\n UiMethod,\n UiStackFrameDot,\n UiSync,\n UiWatch,\n} from \"../../icons\";\nimport { FrameSourceWindow } from \"./FrameSourceWindow\";\nimport { frameHasSource } from \"./FrameSourceWindow.utils\";\nimport type { ParsedThreadFrame } from \"./jvm-stacktrace\";\n\n// StackFrameActions renders trailing per-frame affordances. It is a slot: the\n// shared library never knows what the actions do, only where they go.\nexport type StackFrameActions = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFramePart = \"method\" | \"class\" | \"location\";\nexport type StackFramePartRenderer = (\n part: StackFramePart,\n frame: ParsedThreadFrame,\n index: number,\n) => ReactNode;\nexport type StackFrameDetailRenderer = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFrameActionsVisibility = \"hover\" | \"always\";\n\nexport interface StackFrameRowProps {\n frame: ParsedThreadFrame;\n index: number;\n /** Show the 1-based frame ordinal in the gutter. */\n showIndex?: boolean;\n /** Trailing actions for this frame, revealed on hover/focus. */\n frameActions?: StackFrameActions;\n /** Replace the method, class, or location label while preserving row layout. */\n renderFramePart?: StackFramePartRenderer;\n /** Additional detail rendered below an ordinary frame. */\n renderFrameDetail?: StackFrameDetailRenderer;\n /** Whether actions are hover-only or permanently visible. */\n frameActionsVisibility?: StackFrameActionsVisibility;\n}\n\n// StackFrameRow is THE stack-frame renderer. Both an exception dump (via\n// StackTrace) and a JVM thread dump (via JvmStackTrace) render their frames\n// through it, so a frame looks and behaves the same wherever it is shown.\n//\n// Thread dumps carry lock/monitor annotation entries alongside real frames —\n// `frame.kind !== \"frame\"` — which are rendered as their own muted rows with a\n// lock/wait icon and no source window. An exception dump simply never produces\n// them.\nexport function StackFrameRow({\n frame,\n index,\n showIndex = false,\n frameActions,\n renderFramePart,\n renderFrameDetail,\n frameActionsVisibility = \"hover\",\n}: StackFrameRowProps) {\n const isAnnotation = frame.kind !== \"frame\";\n const methodName = frame.displayName || frame.method || frame.functionName;\n const actions = frameActions?.(frame, index);\n const detail = !isAnnotation ? renderFrameDetail?.(frame, index) : null;\n\n return (\n <div\n className={[\n \"group grid gap-x-2 gap-y-0.5 px-3 py-0.5 text-xs\",\n showIndex ? \"grid-cols-[2rem_minmax(0,1fr)_auto]\" : \"grid-cols-[1.25rem_minmax(0,1fr)_auto]\",\n frame.runtime ? \"text-muted-foreground\" : \"text-foreground\",\n ].join(\" \")}\n >\n <div className=\"flex items-start justify-end gap-1 pt-0.5 font-mono text-[10px] text-muted-foreground\">\n {showIndex && <span data-frame-index>{index + 1}</span>}\n <Icon icon={frameIcon(frame)} className=\"mt-px shrink-0 text-[11px]\" />\n </div>\n\n <div className=\"min-w-0\">\n <div className=\"flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n {isAnnotation ? (\n <>\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4 opacity-70\">\n {frame.functionName}\n </span>\n {frame.annotationText && (\n <span className=\"min-w-0 break-all font-mono text-[11px] font-normal opacity-80\">\n {frame.annotationText}\n </span>\n )}\n </>\n ) : (\n <>\n {renderFramePart ? (\n renderFramePart(\"method\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4\">\n {methodName}\n </span>\n )}\n {frame.class && (\n renderFramePart ? (\n renderFramePart(\"class\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono text-[11px] text-muted-foreground\">\n {frame.class}\n </span>\n )\n )}\n {frame.location && (\n renderFramePart ? (\n renderFramePart(\"location\", frame, index)\n ) : (\n <span className=\"rounded border border-border bg-muted/40 px-1.5 py-px font-mono text-[10px] text-muted-foreground\">\n {frame.location}\n </span>\n )\n )}\n </>\n )}\n </div>\n </div>\n\n {actions ? (\n <div\n className={[\n \"flex shrink-0 items-start gap-1\",\n frameActionsVisibility === \"hover\"\n ? \"opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100\"\n : \"opacity-100\",\n ].join(\" \")}\n >\n {actions}\n </div>\n ) : (\n <div />\n )}\n\n {!isAnnotation && frameHasSource(frame) ? (\n <div className=\"col-span-3\">\n <FrameSourceWindow frame={frame} />\n </div>\n ) : null}\n {detail ? <div className=\"col-start-2 col-span-2 min-w-0\">{detail}</div> : null}\n </div>\n );\n}\n\nfunction frameIcon(frame: ParsedThreadFrame) {\n switch (frame.kind) {\n case \"locked\":\n return UiLock;\n case \"waiting_to_lock\":\n return UiSync;\n case \"waiting_on\":\n case \"parking\":\n return UiWatch;\n default:\n break;\n }\n if (frame.nativeMethod) return UiChip;\n if (frame.runtime) return UiDebugStepOver;\n return frame.method || frame.class ? UiMethod : UiStackFrameDot;\n}\n"],"mappings":";;;;;;;;;;;;AAkDA,SAAgB,cAAc,EAC5B,OACA,OACA,YAAY,OACZ,cACA,iBACA,mBACA,yBAAyB,WACJ;CACrB,MAAM,eAAe,MAAM,SAAS;CACpC,MAAM,aAAa,MAAM,eAAe,MAAM,UAAU,MAAM;CAC9D,MAAM,UAAU,eAAe,OAAO,KAAK;CAC3C,MAAM,SAAS,CAAC,eAAe,oBAAoB,OAAO,KAAK,IAAI;CAEnE,OACE,qBAAC,OAAD;EACE,WAAW;GACT;GACA,YAAY,wCAAwC;GACpD,MAAM,UAAU,0BAA0B;EAC5C,CAAC,CAAC,KAAK,GAAG;EALZ,UAAA;GAOE,qBAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACG,aAAa,oBAAC,QAAD;KAAM,oBAAA;KAAkB,UAAA,QAAQ;IAAQ,CAAA,GACtD,oBAAC,MAAD;KAAM,MAAM,UAAU,KAAK;KAAG,WAAU;IAA8B,CAAA,CACnE;;GAEL,oBAAC,OAAD;IAAK,WAAU;IACb,UAAA,oBAAC,OAAD;KAAK,WAAU;KACZ,UAAA,eACC,qBAAAA,UAAA,EAAA,UAAA,CACE,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,GACL,MAAM,kBACL,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,CAER,EAAA,CAAA,IAEF,qBAAAA,UAAA,EAAA,UAAA;MACG,kBACC,gBAAgB,UAAU,OAAO,KAAK,IAEtC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA;MACG,CAAA;MAEP,MAAM,UACL,kBACE,gBAAgB,SAAS,OAAO,KAAK,IAErC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;MAGT,MAAM,aACL,kBACE,gBAAgB,YAAY,OAAO,KAAK,IAExC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;KAGV,EAAA,CAAA;IAED,CAAA;GACF,CAAA;GAEJ,UACC,oBAAC,OAAD;IACE,WAAW,CACT,mCACA,2BAA2B,UACvB,kFACA,aACN,CAAC,CAAC,KAAK,GAAG;IAET,UAAA;GACE,CAAA,IAEL,oBAAC,OAAD,CAAM,CAAA;GAGP,CAAC,gBAAgB,eAAe,KAAK,IACpC,oBAAC,OAAD;IAAK,WAAU;IACb,UAAA,oBAAC,mBAAD,EAA0B,MAAQ,CAAA;GAC/B,CAAA,IACH;GACH,SAAS,oBAAC,OAAD;IAAK,WAAU;IAAkC,UAAA;GAAY,CAAA,IAAI;EACxE;;AAET;AAEA,SAAS,UAAU,OAA0B;CAC3C,QAAQ,MAAM,MAAd;EACE,KAAK,UACH,OAAO;EACT,KAAK,mBACH,OAAO;EACT,KAAK;EACL,KAAK,WACH,OAAO;CAGX;CACA,IAAI,MAAM,cAAc,OAAO;CAC/B,IAAI,MAAM,SAAS,OAAO;CAC1B,OAAO,MAAM,UAAU,MAAM,QAAQ,WAAW;AAClD"}
1
+ {"version":3,"file":"StackFrameRow.js","names":["_Fragment"],"sources":["../../../src/data/diagnostics/StackFrameRow.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Icon } from \"../Icon\";\nimport {\n UiChip,\n UiDebugStepOver,\n UiLock,\n UiMethod,\n UiStackFrameDot,\n UiSync,\n UiWatch,\n} from \"../../icons\";\nimport { FrameSourceWindow } from \"./FrameSourceWindow\";\nimport { frameHasSource } from \"./FrameSourceWindow.utils\";\nimport type { ParsedThreadFrame } from \"./jvm-stacktrace\";\n\n// StackFrameActions renders trailing per-frame affordances. It is a slot: the\n// shared library never knows what the actions do, only where they go.\nexport type StackFrameActions = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFramePart = \"method\" | \"class\" | \"location\";\nexport type StackFramePartRenderer = (\n part: StackFramePart,\n frame: ParsedThreadFrame,\n index: number,\n) => ReactNode;\nexport type StackFrameDetailRenderer = (frame: ParsedThreadFrame, index: number) => ReactNode;\nexport type StackFrameActionsVisibility = \"hover\" | \"always\";\n\nexport interface StackFrameRowProps {\n frame: ParsedThreadFrame;\n index: number;\n /** Show the 1-based frame ordinal in the gutter. */\n showIndex?: boolean;\n /** Trailing actions for this frame, revealed on hover/focus. */\n frameActions?: StackFrameActions;\n /** Replace the method, class, or location label while preserving row layout. */\n renderFramePart?: StackFramePartRenderer;\n /** Additional detail rendered below an ordinary frame. */\n renderFrameDetail?: StackFrameDetailRenderer;\n /** Whether actions are hover-only or permanently visible. */\n frameActionsVisibility?: StackFrameActionsVisibility;\n}\n\n// StackFrameRow is THE stack-frame renderer. Both an exception dump (via\n// StackTrace) and a JVM thread dump (via JvmStackTrace) render their frames\n// through it, so a frame looks and behaves the same wherever it is shown.\n//\n// Thread dumps carry lock/monitor annotation entries alongside real frames —\n// `frame.kind !== \"frame\"` — which are rendered as their own muted rows with a\n// lock/wait icon and no source window. An exception dump simply never produces\n// them.\nexport function StackFrameRow({\n frame,\n index,\n showIndex = false,\n frameActions,\n renderFramePart,\n renderFrameDetail,\n frameActionsVisibility = \"hover\",\n}: StackFrameRowProps) {\n const isAnnotation = frame.kind !== \"frame\";\n const methodName = frame.displayName || frame.method || frame.functionName;\n const actions = frameActions?.(frame, index);\n const detail = !isAnnotation ? renderFrameDetail?.(frame, index) : null;\n\n return (\n <div\n className={[\n \"group grid gap-x-2 gap-y-0.5 px-3 py-0.5 text-xs\",\n showIndex ? \"grid-cols-[2rem_minmax(0,1fr)_auto]\" : \"grid-cols-[1.25rem_minmax(0,1fr)_auto]\",\n frame.runtime ? \"text-muted-foreground\" : \"text-foreground\",\n ].join(\" \")}\n >\n <div className=\"flex items-start justify-end gap-1 pt-0.5 font-mono text-[10px] text-muted-foreground\">\n {showIndex && <span data-frame-index>{index + 1}</span>}\n <Icon icon={frameIcon(frame)} className=\"mt-px shrink-0 text-[11px]\" />\n </div>\n\n <div className=\"min-w-0\">\n <div className=\"flex min-w-0 flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n {isAnnotation ? (\n <>\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4 opacity-70\">\n {frame.functionName}\n </span>\n {frame.annotationText && (\n <span className=\"min-w-0 break-all font-mono text-[11px] font-normal opacity-80\">\n {frame.annotationText}\n </span>\n )}\n </>\n ) : (\n <>\n {renderFramePart ? (\n renderFramePart(\"method\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono font-semibold leading-4\">\n {methodName}\n </span>\n )}\n {frame.class && (\n renderFramePart ? (\n renderFramePart(\"class\", frame, index)\n ) : (\n <span className=\"min-w-0 break-all font-mono text-[11px] text-muted-foreground\">\n {frame.class}\n </span>\n )\n )}\n {frame.location && (\n renderFramePart ? (\n renderFramePart(\"location\", frame, index)\n ) : (\n <span className=\"rounded border border-border bg-muted/40 px-1.5 py-px font-mono text-[10px] text-muted-foreground\">\n {frame.location}\n </span>\n )\n )}\n </>\n )}\n </div>\n </div>\n\n {actions ? (\n <div\n className={[\n \"flex shrink-0 items-start gap-1\",\n frameActionsVisibility === \"hover\"\n ? \"opacity-0 transition-opacity focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100\"\n : \"opacity-100\",\n ].join(\" \")}\n >\n {actions}\n </div>\n ) : (\n <div />\n )}\n\n {!isAnnotation && frameHasSource(frame) ? (\n <div className=\"col-span-3\">\n <FrameSourceWindow frame={frame} />\n </div>\n ) : null}\n {detail ? <div className=\"col-start-2 col-span-2 min-w-0\">{detail}</div> : null}\n </div>\n );\n}\n\nfunction frameIcon(frame: ParsedThreadFrame) {\n switch (frame.kind) {\n case \"locked\":\n return UiLock;\n case \"waiting_to_lock\":\n return UiSync;\n case \"waiting_on\":\n case \"parking\":\n return UiWatch;\n default:\n break;\n }\n if (frame.nativeMethod) return UiChip;\n if (frame.runtime) return UiDebugStepOver;\n return frame.method || frame.class ? UiMethod : UiStackFrameDot;\n}\n"],"mappings":";;;;;;;;;;;;AAkDA,SAAgB,cAAc,EAC5B,OACA,OACA,YAAY,OACZ,cACA,iBACA,mBACA,yBAAyB,WACJ;CACrB,MAAM,eAAe,MAAM,SAAS;CACpC,MAAM,aAAa,MAAM,eAAe,MAAM,UAAU,MAAM;CAC9D,MAAM,UAAU,eAAe,OAAO,KAAK;CAC3C,MAAM,SAAS,CAAC,eAAe,oBAAoB,OAAO,KAAK,IAAI;CAEnE,OACE,qBAAC,OAAD;EACE,WAAW;GACT;GACA,YAAY,wCAAwC;GACpD,MAAM,UAAU,0BAA0B;EAC5C,CAAC,CAAC,KAAK,GAAG;EALZ,UAAA;GAOE,qBAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACG,aAAa,oBAAC,QAAD;KAAM,oBAAA;KAAkB,UAAA,QAAQ;IAAQ,CAAA,GACtD,oBAAC,MAAD;KAAM,MAAM,UAAU,KAAK;KAAG,WAAU;IAA8B,CAAA,CACnE;;GAEL,oBAAC,OAAD;IAAK,WAAU;IACb,UAAA,oBAAC,OAAD;KAAK,WAAU;KACZ,UAAA,eACC,qBAAAA,UAAA,EAAA,UAAA,CACE,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,GACL,MAAM,kBACL,oBAAC,QAAD;MAAM,WAAU;MACb,UAAA,MAAM;KACH,CAAA,CAER,EAAA,CAAA,IAEF,qBAAAA,UAAA,EAAA,UAAA;MACG,kBACC,gBAAgB,UAAU,OAAO,KAAK,IAEtC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA;MACG,CAAA;MAEP,MAAM,UACL,kBACE,gBAAgB,SAAS,OAAO,KAAK,IAErC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;MAGT,MAAM,aACL,kBACE,gBAAgB,YAAY,OAAO,KAAK,IAExC,oBAAC,QAAD;OAAM,WAAU;OACb,UAAA,MAAM;MACH,CAAA;KAGV,EAAA,CAAA;IAED,CAAA;GACF,CAAA;GAEJ,UACC,oBAAC,OAAD;IACE,WAAW,CACT,mCACA,2BAA2B,UACvB,mHACA,aACN,CAAC,CAAC,KAAK,GAAG;IAET,UAAA;GACE,CAAA,IAEL,oBAAC,OAAD,CAAM,CAAA;GAGP,CAAC,gBAAgB,eAAe,KAAK,IACpC,oBAAC,OAAD;IAAK,WAAU;IACb,UAAA,oBAAC,mBAAD,EAA0B,MAAQ,CAAA;GAC/B,CAAA,IACH;GACH,SAAS,oBAAC,OAAD;IAAK,WAAU;IAAkC,UAAA;GAAY,CAAA,IAAI;EACxE;;AAET;AAEA,SAAS,UAAU,OAA0B;CAC3C,QAAQ,MAAM,MAAd;EACE,KAAK,UACH,OAAO;EACT,KAAK,mBACH,OAAO;EACT,KAAK;EACL,KAAK,WACH,OAAO;CAGX;CACA,IAAI,MAAM,cAAc,OAAO;CAC/B,IAAI,MAAM,SAAS,OAAO;CAC1B,OAAO,MAAM,UAAU,MAAM,QAAQ,WAAW;AAClD"}
@@ -0,0 +1,14 @@
1
+ // src/data/diagnostics/diagnostic-identity.ts
2
+ /** Assign before filtering: identical diagnostics remain separate occurrences. */
3
+ function diagnosticKeys(identities) {
4
+ const counts = /* @__PURE__ */ new Map();
5
+ return identities.map((identity) => {
6
+ const key = JSON.stringify(identity);
7
+ const occurrence = counts.get(key) ?? 0;
8
+ counts.set(key, occurrence + 1);
9
+ return `${key}:${occurrence}`;
10
+ });
11
+ }
12
+ exports.diagnosticKeys = diagnosticKeys;
13
+
14
+ //# sourceMappingURL=diagnostic-identity.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-identity.cjs","names":[],"sources":["../../../src/data/diagnostics/diagnostic-identity.ts"],"sourcesContent":["/** Assign before filtering: identical diagnostics remain separate occurrences. */\nexport function diagnosticKeys(\n identities: readonly (readonly unknown[])[],\n): string[] {\n const counts = new Map<string, number>();\n return identities.map((identity) => {\n const key = JSON.stringify(identity);\n const occurrence = counts.get(key) ?? 0;\n counts.set(key, occurrence + 1);\n return `${key}:${occurrence}`;\n });\n}\n"],"mappings":";;AACA,SAAgB,eACd,YACU;CACV,MAAM,yBAAS,IAAI,IAAoB;CACvC,OAAO,WAAW,KAAK,aAAa;EAClC,MAAM,MAAM,KAAK,UAAU,QAAQ;EACnC,MAAM,aAAa,OAAO,IAAI,GAAG,KAAK;EACtC,OAAO,IAAI,KAAK,aAAa,CAAC;EAC9B,OAAO,GAAG,IAAI,GAAG;CACnB,CAAC;AACH"}
@@ -0,0 +1,3 @@
1
+ /** Assign before filtering: identical diagnostics remain separate occurrences. */
2
+ export declare function diagnosticKeys(identities: readonly (readonly unknown[])[]): string[];
3
+ //# sourceMappingURL=diagnostic-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-identity.d.ts","sourceRoot":"","sources":["../../../src/data/diagnostics/diagnostic-identity.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,wBAAgB,cAAc,CAC5B,UAAU,EAAE,SAAS,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,GAC1C,MAAM,EAAE,CAQV"}