@workflow/web-shared 5.0.0-beta.37 → 5.0.0-beta.39

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 (313) hide show
  1. package/README.md +3 -3
  2. package/dist/components/event-list-view.d.ts.map +1 -1
  3. package/dist/components/event-list-view.js +10 -10
  4. package/dist/components/index.d.ts +4 -5
  5. package/dist/components/index.d.ts.map +1 -1
  6. package/dist/components/index.js +4 -5
  7. package/dist/components/sidebar/attribute-panel.d.ts.map +1 -1
  8. package/dist/components/sidebar/attribute-panel.js +32 -8
  9. package/dist/components/sidebar/attributes-block.js +3 -3
  10. package/dist/components/sidebar/copyable-data-block.js +2 -2
  11. package/dist/components/sidebar/entity-detail-panel.js +3 -3
  12. package/dist/components/sidebar/events-list.js +2 -2
  13. package/dist/components/stream-viewer-skeleton.d.ts +2 -0
  14. package/dist/components/stream-viewer-skeleton.d.ts.map +1 -0
  15. package/dist/components/stream-viewer-skeleton.js +12 -0
  16. package/dist/components/stream-viewer.d.ts +1 -1
  17. package/dist/components/stream-viewer.d.ts.map +1 -1
  18. package/dist/components/stream-viewer.js +9 -26
  19. package/dist/components/trace-viewer/components/copy-button.d.ts.map +1 -0
  20. package/dist/components/trace-viewer/components/copy-button.js +27 -0
  21. package/dist/components/trace-viewer/components/detail-panel-width.d.ts.map +1 -0
  22. package/dist/components/trace-viewer/components/detail-panel-width.js +67 -0
  23. package/dist/components/trace-viewer/components/detail-panel.d.ts.map +1 -0
  24. package/dist/components/trace-viewer/components/detail-panel.js +122 -0
  25. package/dist/components/trace-viewer/components/draggable-border.d.ts.map +1 -0
  26. package/dist/components/trace-viewer/components/draggable-border.js +140 -0
  27. package/dist/components/trace-viewer/components/event-list.d.ts.map +1 -0
  28. package/dist/components/trace-viewer/components/event-list.js +47 -0
  29. package/dist/components/trace-viewer/components/middle-truncate/copy-selection.d.ts.map +1 -0
  30. package/dist/components/trace-viewer/components/middle-truncate/copy-selection.js +54 -0
  31. package/dist/components/trace-viewer/components/middle-truncate/middle-truncate.d.ts.map +1 -0
  32. package/dist/components/trace-viewer/components/middle-truncate/middle-truncate.js +81 -0
  33. package/dist/components/trace-viewer/components/middle-truncate/truncate.d.ts.map +1 -0
  34. package/dist/components/trace-viewer/components/middle-truncate/truncate.js +101 -0
  35. package/dist/components/trace-viewer/components/middle-truncate/use-middle-truncate.d.ts.map +1 -0
  36. package/dist/components/trace-viewer/components/middle-truncate/use-middle-truncate.js +114 -0
  37. package/dist/components/trace-viewer/components/minimap.d.ts.map +1 -0
  38. package/dist/components/trace-viewer/components/minimap.js +337 -0
  39. package/dist/components/trace-viewer/components/pane-constants.d.ts.map +1 -0
  40. package/dist/components/trace-viewer/components/pane-constants.js +16 -0
  41. package/dist/components/trace-viewer/components/span-markers.d.ts.map +1 -0
  42. package/dist/components/trace-viewer/components/span-markers.js +85 -0
  43. package/dist/components/trace-viewer/components/split-pane.d.ts.map +1 -0
  44. package/dist/components/trace-viewer/components/split-pane.js +41 -0
  45. package/dist/components/trace-viewer/components/timeline.d.ts.map +1 -0
  46. package/dist/components/trace-viewer/components/timeline.js +321 -0
  47. package/dist/components/trace-viewer/components/trace-shortcut-helper.d.ts.map +1 -0
  48. package/dist/components/trace-viewer/components/trace-shortcut-helper.js +55 -0
  49. package/dist/components/trace-viewer/components/trace-viewer-skeleton.d.ts.map +1 -0
  50. package/dist/components/trace-viewer/components/trace-viewer-skeleton.js +26 -0
  51. package/dist/components/trace-viewer/components/use-element-width.d.ts.map +1 -0
  52. package/dist/components/trace-viewer/components/use-element-width.js +25 -0
  53. package/dist/components/trace-viewer/components/use-row-window.d.ts.map +1 -0
  54. package/dist/components/trace-viewer/components/use-row-window.js +107 -0
  55. package/dist/components/trace-viewer/context.d.ts +14 -182
  56. package/dist/components/trace-viewer/context.d.ts.map +1 -1
  57. package/dist/components/trace-viewer/context.js +44 -351
  58. package/dist/components/trace-viewer/icons.d.ts.map +1 -0
  59. package/dist/components/trace-viewer/icons.js +15 -0
  60. package/dist/components/trace-viewer/search.d.ts.map +1 -0
  61. package/dist/components/trace-viewer/search.js +134 -0
  62. package/dist/components/trace-viewer/trace-viewer.d.ts +7 -28
  63. package/dist/components/trace-viewer/trace-viewer.d.ts.map +1 -1
  64. package/dist/components/trace-viewer/trace-viewer.js +306 -356
  65. package/dist/components/trace-viewer/types.d.ts +2 -211
  66. package/dist/components/trace-viewer/types.d.ts.map +1 -1
  67. package/dist/components/trace-viewer/types.js +1 -1
  68. package/dist/components/trace-viewer/utils.d.ts.map +1 -0
  69. package/dist/components/trace-viewer/utils.js +430 -0
  70. package/dist/components/{trace-viewer-new.d.ts → trace-viewer.d.ts} +3 -3
  71. package/dist/components/trace-viewer.d.ts.map +1 -0
  72. package/dist/components/trace-viewer.js +21 -0
  73. package/dist/components/ui/alert.js +2 -2
  74. package/dist/components/ui/button.d.ts +1 -1
  75. package/dist/components/ui/button.d.ts.map +1 -1
  76. package/dist/components/ui/button.js +3 -3
  77. package/dist/components/ui/card.d.ts.map +1 -1
  78. package/dist/components/ui/card.js +3 -3
  79. package/dist/components/ui/error-card.js +2 -2
  80. package/dist/components/ui/error-stack-block.js +4 -4
  81. package/dist/components/ui/kbd.js +3 -3
  82. package/dist/components/ui/timestamp-tooltip.js +3 -3
  83. package/dist/components/workflow-traces/trace-span-construction.d.ts +1 -1
  84. package/dist/components/workflow-traces/trace-span-construction.js +1 -1
  85. package/dist/lib/trace-builder.d.ts +1 -1
  86. package/dist/lib/trace-builder.d.ts.map +1 -1
  87. package/dist/lib/trace-builder.js +1 -1
  88. package/dist/lib/trace-types.d.ts +54 -0
  89. package/dist/lib/trace-types.d.ts.map +1 -0
  90. package/dist/lib/trace-types.js +2 -0
  91. package/package.json +6 -6
  92. package/src/components/event-list-view.tsx +12 -9
  93. package/src/components/index.ts +4 -5
  94. package/src/components/sidebar/attribute-panel.tsx +46 -8
  95. package/src/components/sidebar/attributes-block.tsx +2 -2
  96. package/src/components/sidebar/copyable-data-block.tsx +1 -1
  97. package/src/components/sidebar/entity-detail-panel.tsx +3 -3
  98. package/src/components/sidebar/events-list.tsx +1 -1
  99. package/src/components/stream-viewer-skeleton.tsx +34 -0
  100. package/src/components/stream-viewer.tsx +34 -106
  101. package/src/components/{new-trace-viewer → trace-viewer}/components/event-list.tsx +1 -1
  102. package/src/components/{new-trace-viewer → trace-viewer}/components/minimap.tsx +1 -4
  103. package/src/components/{new-trace-viewer → trace-viewer}/components/timeline.tsx +2 -5
  104. package/src/components/{new-trace-viewer → trace-viewer}/components/trace-shortcut-helper.tsx +1 -1
  105. package/src/components/trace-viewer/context.tsx +63 -656
  106. package/src/components/trace-viewer/trace-viewer.tsx +563 -531
  107. package/src/components/trace-viewer/types.ts +2 -234
  108. package/src/components/{new-trace-viewer → trace-viewer}/utils.ts +2 -2
  109. package/src/components/{trace-viewer-new.tsx → trace-viewer.tsx} +5 -5
  110. package/src/components/ui/alert.tsx +1 -1
  111. package/src/components/ui/button.tsx +3 -3
  112. package/src/components/ui/card.tsx +2 -9
  113. package/src/components/ui/error-card.tsx +3 -3
  114. package/src/components/ui/error-stack-block.tsx +3 -3
  115. package/src/components/ui/kbd.tsx +2 -2
  116. package/src/components/ui/timestamp-tooltip.tsx +4 -4
  117. package/src/components/workflow-traces/trace-span-construction.ts +1 -1
  118. package/src/lib/trace-builder.ts +1 -1
  119. package/src/lib/trace-types.ts +56 -0
  120. package/dist/components/new-trace-viewer/components/copy-button.d.ts.map +0 -1
  121. package/dist/components/new-trace-viewer/components/copy-button.js +0 -27
  122. package/dist/components/new-trace-viewer/components/detail-panel-width.d.ts.map +0 -1
  123. package/dist/components/new-trace-viewer/components/detail-panel-width.js +0 -67
  124. package/dist/components/new-trace-viewer/components/detail-panel.d.ts.map +0 -1
  125. package/dist/components/new-trace-viewer/components/detail-panel.js +0 -122
  126. package/dist/components/new-trace-viewer/components/draggable-border.d.ts.map +0 -1
  127. package/dist/components/new-trace-viewer/components/draggable-border.js +0 -140
  128. package/dist/components/new-trace-viewer/components/event-list.d.ts.map +0 -1
  129. package/dist/components/new-trace-viewer/components/event-list.js +0 -47
  130. package/dist/components/new-trace-viewer/components/middle-truncate/copy-selection.d.ts.map +0 -1
  131. package/dist/components/new-trace-viewer/components/middle-truncate/copy-selection.js +0 -54
  132. package/dist/components/new-trace-viewer/components/middle-truncate/middle-truncate.d.ts.map +0 -1
  133. package/dist/components/new-trace-viewer/components/middle-truncate/middle-truncate.js +0 -81
  134. package/dist/components/new-trace-viewer/components/middle-truncate/truncate.d.ts.map +0 -1
  135. package/dist/components/new-trace-viewer/components/middle-truncate/truncate.js +0 -101
  136. package/dist/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.d.ts.map +0 -1
  137. package/dist/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.js +0 -114
  138. package/dist/components/new-trace-viewer/components/minimap.d.ts.map +0 -1
  139. package/dist/components/new-trace-viewer/components/minimap.js +0 -337
  140. package/dist/components/new-trace-viewer/components/pane-constants.d.ts.map +0 -1
  141. package/dist/components/new-trace-viewer/components/pane-constants.js +0 -16
  142. package/dist/components/new-trace-viewer/components/span-markers.d.ts.map +0 -1
  143. package/dist/components/new-trace-viewer/components/span-markers.js +0 -85
  144. package/dist/components/new-trace-viewer/components/split-pane.d.ts.map +0 -1
  145. package/dist/components/new-trace-viewer/components/split-pane.js +0 -41
  146. package/dist/components/new-trace-viewer/components/timeline.d.ts.map +0 -1
  147. package/dist/components/new-trace-viewer/components/timeline.js +0 -321
  148. package/dist/components/new-trace-viewer/components/trace-shortcut-helper.d.ts.map +0 -1
  149. package/dist/components/new-trace-viewer/components/trace-shortcut-helper.js +0 -55
  150. package/dist/components/new-trace-viewer/components/trace-viewer-skeleton.d.ts.map +0 -1
  151. package/dist/components/new-trace-viewer/components/trace-viewer-skeleton.js +0 -26
  152. package/dist/components/new-trace-viewer/components/use-element-width.d.ts.map +0 -1
  153. package/dist/components/new-trace-viewer/components/use-element-width.js +0 -25
  154. package/dist/components/new-trace-viewer/components/use-row-window.d.ts.map +0 -1
  155. package/dist/components/new-trace-viewer/components/use-row-window.js +0 -107
  156. package/dist/components/new-trace-viewer/context.d.ts +0 -17
  157. package/dist/components/new-trace-viewer/context.d.ts.map +0 -1
  158. package/dist/components/new-trace-viewer/context.js +0 -48
  159. package/dist/components/new-trace-viewer/icons.d.ts.map +0 -1
  160. package/dist/components/new-trace-viewer/icons.js +0 -15
  161. package/dist/components/new-trace-viewer/search.d.ts.map +0 -1
  162. package/dist/components/new-trace-viewer/search.js +0 -134
  163. package/dist/components/new-trace-viewer/trace-viewer.d.ts +0 -11
  164. package/dist/components/new-trace-viewer/trace-viewer.d.ts.map +0 -1
  165. package/dist/components/new-trace-viewer/trace-viewer.js +0 -336
  166. package/dist/components/new-trace-viewer/types.d.ts +0 -3
  167. package/dist/components/new-trace-viewer/types.d.ts.map +0 -1
  168. package/dist/components/new-trace-viewer/types.js +0 -2
  169. package/dist/components/new-trace-viewer/utils.d.ts.map +0 -1
  170. package/dist/components/new-trace-viewer/utils.js +0 -430
  171. package/dist/components/run-trace-view.d.ts +0 -23
  172. package/dist/components/run-trace-view.d.ts.map +0 -1
  173. package/dist/components/run-trace-view.js +0 -11
  174. package/dist/components/trace-viewer/components/map.d.ts +0 -8
  175. package/dist/components/trace-viewer/components/map.d.ts.map +0 -1
  176. package/dist/components/trace-viewer/components/map.js +0 -162
  177. package/dist/components/trace-viewer/components/markers.d.ts +0 -23
  178. package/dist/components/trace-viewer/components/markers.d.ts.map +0 -1
  179. package/dist/components/trace-viewer/components/markers.js +0 -416
  180. package/dist/components/trace-viewer/components/node.d.ts +0 -35
  181. package/dist/components/trace-viewer/components/node.d.ts.map +0 -1
  182. package/dist/components/trace-viewer/components/node.js +0 -286
  183. package/dist/components/trace-viewer/components/search-input.d.ts +0 -9
  184. package/dist/components/trace-viewer/components/search-input.d.ts.map +0 -1
  185. package/dist/components/trace-viewer/components/search-input.js +0 -9
  186. package/dist/components/trace-viewer/components/search.d.ts +0 -3
  187. package/dist/components/trace-viewer/components/search.d.ts.map +0 -1
  188. package/dist/components/trace-viewer/components/search.js +0 -25
  189. package/dist/components/trace-viewer/components/span-content.d.ts +0 -19
  190. package/dist/components/trace-viewer/components/span-content.d.ts.map +0 -1
  191. package/dist/components/trace-viewer/components/span-content.js +0 -137
  192. package/dist/components/trace-viewer/components/span-detail-panel.d.ts +0 -10
  193. package/dist/components/trace-viewer/components/span-detail-panel.d.ts.map +0 -1
  194. package/dist/components/trace-viewer/components/span-detail-panel.js +0 -285
  195. package/dist/components/trace-viewer/components/span-segments.d.ts +0 -50
  196. package/dist/components/trace-viewer/components/span-segments.d.ts.map +0 -1
  197. package/dist/components/trace-viewer/components/span-segments.js +0 -445
  198. package/dist/components/trace-viewer/components/span-strategies.d.ts +0 -46
  199. package/dist/components/trace-viewer/components/span-strategies.d.ts.map +0 -1
  200. package/dist/components/trace-viewer/components/span-strategies.js +0 -108
  201. package/dist/components/trace-viewer/components/ui.d.ts +0 -28
  202. package/dist/components/trace-viewer/components/ui.d.ts.map +0 -1
  203. package/dist/components/trace-viewer/components/ui.js +0 -39
  204. package/dist/components/trace-viewer/components/zoom-button.d.ts +0 -3
  205. package/dist/components/trace-viewer/components/zoom-button.d.ts.map +0 -1
  206. package/dist/components/trace-viewer/components/zoom-button.js +0 -29
  207. package/dist/components/trace-viewer/components/zoom-icons.d.ts +0 -11
  208. package/dist/components/trace-viewer/components/zoom-icons.d.ts.map +0 -1
  209. package/dist/components/trace-viewer/components/zoom-icons.js +0 -11
  210. package/dist/components/trace-viewer/index.d.ts +0 -5
  211. package/dist/components/trace-viewer/index.d.ts.map +0 -1
  212. package/dist/components/trace-viewer/index.js +0 -4
  213. package/dist/components/trace-viewer/trace-viewer.module.css +0 -1465
  214. package/dist/components/trace-viewer/util/constants.d.ts +0 -9
  215. package/dist/components/trace-viewer/util/constants.d.ts.map +0 -1
  216. package/dist/components/trace-viewer/util/constants.js +0 -9
  217. package/dist/components/trace-viewer/util/scrollbar-width.d.ts +0 -2
  218. package/dist/components/trace-viewer/util/scrollbar-width.d.ts.map +0 -1
  219. package/dist/components/trace-viewer/util/scrollbar-width.js +0 -14
  220. package/dist/components/trace-viewer/util/tree.d.ts +0 -13
  221. package/dist/components/trace-viewer/util/tree.d.ts.map +0 -1
  222. package/dist/components/trace-viewer/util/tree.js +0 -227
  223. package/dist/components/trace-viewer/util/use-immediate-style.d.ts +0 -15
  224. package/dist/components/trace-viewer/util/use-immediate-style.d.ts.map +0 -1
  225. package/dist/components/trace-viewer/util/use-immediate-style.js +0 -23
  226. package/dist/components/trace-viewer/util/use-streaming-spans.d.ts +0 -8
  227. package/dist/components/trace-viewer/util/use-streaming-spans.d.ts.map +0 -1
  228. package/dist/components/trace-viewer/util/use-streaming-spans.js +0 -345
  229. package/dist/components/trace-viewer/util/use-trackpad-zoom.d.ts +0 -6
  230. package/dist/components/trace-viewer/util/use-trackpad-zoom.d.ts.map +0 -1
  231. package/dist/components/trace-viewer/util/use-trackpad-zoom.js +0 -39
  232. package/dist/components/trace-viewer/worker.d.ts +0 -2
  233. package/dist/components/trace-viewer/worker.d.ts.map +0 -1
  234. package/dist/components/trace-viewer/worker.js +0 -109
  235. package/dist/components/trace-viewer-new.d.ts.map +0 -1
  236. package/dist/components/trace-viewer-new.js +0 -21
  237. package/dist/components/workflow-trace-view.d.ts +0 -39
  238. package/dist/components/workflow-trace-view.d.ts.map +0 -1
  239. package/dist/components/workflow-trace-view.js +0 -690
  240. package/dist/components/workflow-traces/trace-colors.d.ts +0 -15
  241. package/dist/components/workflow-traces/trace-colors.d.ts.map +0 -1
  242. package/dist/components/workflow-traces/trace-colors.js +0 -86
  243. package/src/components/new-trace-viewer/context.tsx +0 -93
  244. package/src/components/new-trace-viewer/trace-viewer.tsx +0 -632
  245. package/src/components/new-trace-viewer/types.ts +0 -2
  246. package/src/components/run-trace-view.tsx +0 -80
  247. package/src/components/trace-viewer/components/map.tsx +0 -226
  248. package/src/components/trace-viewer/components/markers.tsx +0 -612
  249. package/src/components/trace-viewer/components/node.tsx +0 -506
  250. package/src/components/trace-viewer/components/search-input.tsx +0 -52
  251. package/src/components/trace-viewer/components/search.tsx +0 -47
  252. package/src/components/trace-viewer/components/span-content.tsx +0 -247
  253. package/src/components/trace-viewer/components/span-detail-panel.tsx +0 -655
  254. package/src/components/trace-viewer/components/span-segments.ts +0 -585
  255. package/src/components/trace-viewer/components/span-strategies.ts +0 -205
  256. package/src/components/trace-viewer/components/ui.tsx +0 -156
  257. package/src/components/trace-viewer/components/zoom-button.tsx +0 -61
  258. package/src/components/trace-viewer/components/zoom-icons.tsx +0 -65
  259. package/src/components/trace-viewer/index.tsx +0 -4
  260. package/src/components/trace-viewer/trace-viewer.module.css +0 -1465
  261. package/src/components/trace-viewer/util/constants.ts +0 -8
  262. package/src/components/trace-viewer/util/scrollbar-width.ts +0 -13
  263. package/src/components/trace-viewer/util/tree.ts +0 -277
  264. package/src/components/trace-viewer/util/use-immediate-style.ts +0 -38
  265. package/src/components/trace-viewer/util/use-streaming-spans.ts +0 -426
  266. package/src/components/trace-viewer/util/use-trackpad-zoom.tsx +0 -51
  267. package/src/components/trace-viewer/worker.ts +0 -131
  268. package/src/components/workflow-trace-view.tsx +0 -1166
  269. package/src/components/workflow-traces/trace-colors.ts +0 -112
  270. package/dist/components/{new-trace-viewer → trace-viewer}/components/copy-button.d.ts +0 -0
  271. package/dist/components/{new-trace-viewer → trace-viewer}/components/detail-panel-width.d.ts +0 -0
  272. package/dist/components/{new-trace-viewer → trace-viewer}/components/detail-panel.d.ts +0 -0
  273. package/dist/components/{new-trace-viewer → trace-viewer}/components/draggable-border.d.ts +0 -0
  274. package/dist/components/{new-trace-viewer → trace-viewer}/components/event-list.d.ts +0 -0
  275. package/dist/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/copy-selection.d.ts +0 -0
  276. package/dist/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/middle-truncate.d.ts +0 -0
  277. package/dist/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/truncate.d.ts +0 -0
  278. package/dist/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/use-middle-truncate.d.ts +0 -0
  279. package/dist/components/{new-trace-viewer → trace-viewer}/components/minimap.d.ts +0 -0
  280. package/dist/components/{new-trace-viewer → trace-viewer}/components/pane-constants.d.ts +0 -0
  281. package/dist/components/{new-trace-viewer → trace-viewer}/components/span-markers.d.ts +0 -0
  282. package/dist/components/{new-trace-viewer → trace-viewer}/components/split-pane.d.ts +0 -0
  283. package/dist/components/{new-trace-viewer → trace-viewer}/components/timeline.d.ts +0 -0
  284. package/dist/components/{new-trace-viewer → trace-viewer}/components/timeline.module.css +0 -0
  285. package/dist/components/{new-trace-viewer → trace-viewer}/components/trace-shortcut-helper.d.ts +0 -0
  286. package/dist/components/{new-trace-viewer → trace-viewer}/components/trace-shortcut-helper.module.css +0 -0
  287. package/dist/components/{new-trace-viewer → trace-viewer}/components/trace-viewer-skeleton.d.ts +0 -0
  288. package/dist/components/{new-trace-viewer → trace-viewer}/components/use-element-width.d.ts +0 -0
  289. package/dist/components/{new-trace-viewer → trace-viewer}/components/use-row-window.d.ts +0 -0
  290. package/dist/components/{new-trace-viewer → trace-viewer}/icons.d.ts +0 -0
  291. package/dist/components/{new-trace-viewer → trace-viewer}/search.d.ts +0 -0
  292. package/dist/components/{new-trace-viewer → trace-viewer}/utils.d.ts +0 -0
  293. package/src/components/{new-trace-viewer → trace-viewer}/components/copy-button.tsx +0 -0
  294. package/src/components/{new-trace-viewer → trace-viewer}/components/detail-panel-width.test.ts +0 -0
  295. package/src/components/{new-trace-viewer → trace-viewer}/components/detail-panel-width.ts +0 -0
  296. package/src/components/{new-trace-viewer → trace-viewer}/components/detail-panel.tsx +0 -0
  297. package/src/components/{new-trace-viewer → trace-viewer}/components/draggable-border.tsx +0 -0
  298. package/src/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/copy-selection.ts +0 -0
  299. package/src/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/middle-truncate.tsx +1 -1
  300. /package/src/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/truncate.ts +0 -0
  301. /package/src/components/{new-trace-viewer → trace-viewer}/components/middle-truncate/use-middle-truncate.ts +0 -0
  302. /package/src/components/{new-trace-viewer → trace-viewer}/components/pane-constants.ts +0 -0
  303. /package/src/components/{new-trace-viewer → trace-viewer}/components/span-markers.tsx +0 -0
  304. /package/src/components/{new-trace-viewer → trace-viewer}/components/split-pane.tsx +0 -0
  305. /package/src/components/{new-trace-viewer → trace-viewer}/components/timeline.module.css +0 -0
  306. /package/src/components/{new-trace-viewer → trace-viewer}/components/trace-shortcut-helper.module.css +0 -0
  307. /package/src/components/{new-trace-viewer → trace-viewer}/components/trace-viewer-skeleton.tsx +0 -0
  308. /package/src/components/{new-trace-viewer → trace-viewer}/components/use-element-width.ts +0 -0
  309. /package/src/components/{new-trace-viewer → trace-viewer}/components/use-row-window.ts +0 -0
  310. /package/src/components/{new-trace-viewer → trace-viewer}/icons.tsx +0 -0
  311. /package/src/components/{new-trace-viewer → trace-viewer}/search.ts +0 -0
  312. /package/src/components/{new-trace-viewer → trace-viewer}/utils.test.ts +0 -0
  313. /package/src/{components/trace-viewer/modules.d.ts → modules.d.ts} +0 -0
@@ -1,162 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { memo, useEffect, useLayoutEffect, useRef, useState, } from 'react';
3
- import { useTraceViewer } from '../context';
4
- import styles from '../trace-viewer.module.css';
5
- import { MAP_HEIGHT, TIMELINE_PADDING } from '../util/constants';
6
- import { useImmediateStyle } from '../util/use-immediate-style';
7
- const getDpi = () => {
8
- if ('devicePixelRatio' in globalThis) {
9
- return globalThis.devicePixelRatio || 1;
10
- }
11
- return 1;
12
- };
13
- const useDpi = () => {
14
- const [dpi, setDpi] = useState(1);
15
- useLayoutEffect(() => {
16
- const onChange = () => setDpi(getDpi());
17
- const media = matchMedia(`(resolution: ${dpi}dppx)`);
18
- media.addEventListener('change', onChange);
19
- onChange();
20
- return () => {
21
- media.removeEventListener('change', onChange);
22
- };
23
- }, [dpi]);
24
- return dpi;
25
- };
26
- const padding = TIMELINE_PADDING;
27
- export const MiniMap = memo(function MiniMap({ timelineRef, rows, scale, }) {
28
- const { state: { root, baseScale, timelineWidth, width: fullWidth, scrollbarWidth }, } = useTraceViewer();
29
- const mapWidth = fullWidth + TIMELINE_PADDING * 2;
30
- const dpi = useDpi();
31
- const containerRef = useRef(null);
32
- const canvasRef = useRef(null);
33
- const thumbRatio = (fullWidth / (fullWidth - scrollbarWidth)) *
34
- Math.min(fullWidth / timelineWidth, baseScale / scale);
35
- const thumbWidth = Math.min(fullWidth, (timelineWidth - scrollbarWidth) * thumbRatio);
36
- useEffect(() => {
37
- let isHeld = false;
38
- let clientX = 0;
39
- let rect;
40
- const isValidEventTarget = (target) => {
41
- return Boolean(containerRef.current?.contains(target));
42
- };
43
- let nextFrame = 0;
44
- const onFrame = () => {
45
- if (!isHeld || !rect)
46
- return;
47
- const $timeline = timelineRef.current;
48
- if (!$timeline)
49
- return;
50
- const x = clientX - thumbWidth * 0.5 - rect.left;
51
- $timeline.scrollLeft = x / thumbRatio;
52
- };
53
- const onPointerMove = (event) => {
54
- ({ clientX } = event);
55
- cancelAnimationFrame(nextFrame);
56
- nextFrame = requestAnimationFrame(onFrame);
57
- };
58
- const onPointerDown = (event) => {
59
- if (!isValidEventTarget(event.target))
60
- return;
61
- isHeld = true;
62
- rect = containerRef.current?.getBoundingClientRect();
63
- onPointerMove(event);
64
- };
65
- const onPointerUp = () => {
66
- isHeld = false;
67
- rect = undefined;
68
- };
69
- const onTouchStart = (event) => {
70
- if (!isValidEventTarget(event.target))
71
- return;
72
- if (event.cancelable) {
73
- event.preventDefault();
74
- }
75
- };
76
- const onTouchMove = (event) => {
77
- if (!isHeld)
78
- return;
79
- if (event.cancelable) {
80
- event.preventDefault();
81
- }
82
- };
83
- window.addEventListener('pointerdown', onPointerDown);
84
- window.addEventListener('pointermove', onPointerMove);
85
- window.addEventListener('pointerup', onPointerUp);
86
- window.addEventListener('blur', onPointerUp);
87
- window.addEventListener('touchstart', onTouchStart, { passive: false });
88
- window.addEventListener('touchmove', onTouchMove, { passive: false });
89
- return () => {
90
- window.removeEventListener('pointerdown', onPointerDown);
91
- window.removeEventListener('pointermove', onPointerMove);
92
- window.removeEventListener('pointerup', onPointerUp);
93
- window.removeEventListener('blur', onPointerUp);
94
- window.removeEventListener('touchstart', onTouchStart);
95
- window.removeEventListener('touchmove', onTouchMove);
96
- cancelAnimationFrame(nextFrame);
97
- };
98
- }, [timelineRef, thumbRatio, thumbWidth]);
99
- useEffect(() => {
100
- const canvas = canvasRef.current;
101
- const ctx = canvas?.getContext('2d');
102
- if (!canvas || !ctx)
103
- return;
104
- const render = () => {
105
- ctx.resetTransform();
106
- ctx.clearRect(0, 0, canvas.width, canvas.height);
107
- ctx.scale(dpi, dpi);
108
- const gap = 1;
109
- const height = 3;
110
- const ratio = (mapWidth - padding * 2) / root.duration;
111
- // TODO: fill spans based on depth
112
- ctx.fillStyle = '#ccc';
113
- ctx.beginPath();
114
- for (const row of rows) {
115
- for (const span of row) {
116
- const y = padding - gap + (gap + height) * span.row;
117
- if (y >= MAP_HEIGHT - height - padding)
118
- break;
119
- const x = padding + (span.startTime - root.startTime) * ratio;
120
- const width = span.duration * ratio;
121
- ctx.roundRect(x, y, width, height, height);
122
- }
123
- }
124
- ctx.fill();
125
- };
126
- const nextFrame = requestAnimationFrame(render);
127
- return () => cancelAnimationFrame(nextFrame);
128
- }, [dpi, root, mapWidth, rows]);
129
- const thumbRef = useRef(null);
130
- const { style: thumbStyle, setStyle: setThumbStyle } = useImmediateStyle(thumbRef);
131
- useLayoutEffect(() => {
132
- const $timeline = timelineRef.current;
133
- if (!$timeline)
134
- return;
135
- let nextFrame = 0;
136
- const onFrame = () => {
137
- setThumbStyle('transform', `translateX(${padding + $timeline.scrollLeft * thumbRatio}px)`);
138
- };
139
- onFrame();
140
- const onScroll = () => {
141
- cancelAnimationFrame(nextFrame);
142
- nextFrame = requestAnimationFrame(onFrame);
143
- };
144
- $timeline.addEventListener('scroll', onScroll);
145
- return () => {
146
- cancelAnimationFrame(nextFrame);
147
- $timeline.removeEventListener('scroll', onScroll);
148
- };
149
- }, [timelineRef, thumbRatio, setThumbStyle]);
150
- return (_jsxs("div", { className: styles.mapContainer, ref: containerRef, style: {
151
- width: thumbWidth > 0 ? mapWidth : '100%',
152
- height: MAP_HEIGHT,
153
- }, children: [_jsx("canvas", { className: styles.mapCanvas, height: MAP_HEIGHT * dpi, ref: canvasRef, style: { width: mapWidth, height: MAP_HEIGHT }, width: mapWidth * dpi }), _jsx("div", { className: styles.mapThumb, ref: thumbRef, style: {
154
- transform: thumbStyle.transform,
155
- width: thumbWidth > 0
156
- ? thumbWidth
157
- : `calc(100% - ${TIMELINE_PADDING * 2}px)`,
158
- top: 2,
159
- height: MAP_HEIGHT - 4,
160
- } })] }));
161
- });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdHJhY2Utdmlld2VyL2NvbXBvbmVudHMvbWFwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLElBQUksRUFDSixTQUFTLEVBQ1QsZUFBZSxFQUNmLE1BQU0sRUFDTixRQUFRLEdBQ1QsTUFBTSxPQUFPLENBQUM7QUFDZixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sTUFBTSxNQUFNLDRCQUE0QixDQUFDO0FBRWhELE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxNQUFNLE1BQU0sR0FBRyxHQUFXLEVBQUU7SUFDMUIsSUFBSSxrQkFBa0IsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNyQyxPQUFPLFVBQVUsQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNELE9BQU8sQ0FBQyxDQUFDO0FBQ1gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxNQUFNLEdBQUcsR0FBVyxFQUFFO0lBQzFCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7UUFDbkIsTUFBTSxRQUFRLEdBQUcsR0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDOUMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsUUFBUSxFQUFFLENBQUM7UUFFWCxPQUFPLEdBQUcsRUFBRTtZQUNWLEtB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RSxNQUFNLEVBQUUsVUFBVSxFQUFFLEVBQzlDLEtBQUssRUFBRSxRQUFRLEdBQUcsR0FBRyxHQUNyQixFQUNGLGNBQ0UsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQzFCLEdBQUcsRUFBRSxRQUFRLEVBQ2IsS0FBSyxFQUFFO29CQUNMLFNBQVMsRUFBRSxVQUFVLENBQUMsU0FBUztvQkFDL0IsS0FBSyxFQUNILFVBQVUsR0FBRyxDQUFDO3dCQUNaLENBQUMsQ0FBQyxVQUFVO3dCQUNaLENBQUMsQ0FBQyxlQUFlLGdCQUFnQixHQUFHLENBQUMsS0FBSztvQkFDOUMsR0FBRyxFQUFFLENBQUM7b0JBQ04sTUFBTSxFQUFFLFVBQVUsR0FBRyxDQUFDO2lCQUN2QixHQUNELElBQ0UsQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIE11dGFibGVSZWZPYmplY3QsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VUcmFjZVZpZXdlciB9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHN0eWxlcyBmcm9tICcuLi90cmFjZS12aWV3ZXIubW9kdWxlLmNzcyc7XG5pbXBvcnQgdHlwZSB7IFZpc2libGVTcGFuIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgTUFQX0hFSUdIVCwgVElNRUxJTkVfUEFERElORyB9IGZyb20gJy4uL3V0aWwvY29uc3RhbnRzJztcbmltcG9ydCB7IHVzZUltbWVkaWF0ZVN0eWxlIH0gZnJvbSAnLi4vdXRpbC91c2UtaW1tZWRpYXRlLXN0eWxlJztcblxuY29uc3QgZ2V0RHBpID0gKCk6IG51bWJlciA9PiB7XG4gIGlmICgnZGV2aWNlUGl4ZWxSYXRpbycgaW4gZ2xvYmFsVGhpcykge1xuICAgIHJldHVybiBnbG9iYWxUaGlzLmRldmljZVBpeGVsUmF0aW8gfHwgMTtcbiAgfVxuICByZXR1cm4gMTtcbn07XG5cbmNvbnN0IHVzZURwaSA9ICgpOiBudW1iZXIgPT4ge1xuICBjb25zdCBbZHBpLCBzZXREcGldID0gdXNlU3RhdGUoMSk7XG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3Qgb25DaGFuZ2UgPSAoKTogdm9pZCA9PiBzZXREcGkoZ2V0RHBpKCkpO1xuICAgIGNvbnN0IG1lZGlhID0gbWF0Y2hNZWRpYShgKHJlc29sdXRpb246ICR7ZHBpfWRwcHgpYCk7XG4gICAgbWVkaWEuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgb25DaGFuZ2UpO1xuICAgIG9uQ2hhbmdlKCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgbWVkaWEucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgb25DaGFuZ2UpO1xuICAgIH07XG4gIH0sIFtkcGldKTtcbiAgcmV0dXJuIGRwaTtcbn07XG5cbmNvbnN0IHBhZGRpbmcgPSBUSU1FTElORV9QQURESU5HO1xuXG5leHBvcnQgY29uc3QgTWluaU1hcCA9IG1lbW8oZnVuY3Rpb24gTWluaU1hcCh7XG4gIHRpbWVsaW5lUmVmLFxuICByb3dzLFxuICBzY2FsZSxcbn06IHtcbiAgdGltZWxpbmVSZWY6IE11dGFibGVSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPjtcbiAgcm93czogVmlzaWJsZVNwYW5bXVtdO1xuICBzY2FsZTogbnVtYmVyO1xufSkge1xuICBjb25zdCB7XG4gICAgc3RhdGU6IHsgcm9vdCwgYmFzZVNjYWxlLCB0aW1lbGluZVdpZHRoLCB3aWR0aDogZnVsbFdpZHRoLCBzY3JvbGxiYXJXaWR0aCB9LFxuICB9ID0gdXNlVHJhY2VWaWV3ZXIoKTtcbiAgY29uc3QgbWFwV2lkdGggPSBmdWxsV2lkdGggKyBUSU1FTElORV9QQURESU5HICogMjtcbiAgY29uc3QgZHBpID0gdXNlRHBpKCk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGNhbnZhc1JlZiA9IHVzZVJlZjxIVE1MQ2FudmFzRWxlbWVudD4obnVsbCk7XG5cbiAgY29uc3QgdGh1bWJSYXRpbyA9XG4gICAgKGZ1bGxXaWR0aCAvIChmdWxsV2lkdGggLSBzY3JvbGxiYXJXaWR0aCkpICpcbiAgICBNYXRoLm1pbihmdWxsV2lkdGggLyB0aW1lbGluZVdpZHRoLCBiYXNlU2NhbGUgLyBzY2FsZSk7XG4gIGNvbnN0IHRodW1iV2lkdGggPSBNYXRoLm1pbihcbiAgICBmdWxsV2lkdGgsXG4gICAgKHRpbWVsaW5lV2lkdGggLSBzY3JvbGxiYXJXaWR0aCkgKiB0aHVtYlJhdGlvXG4gICk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGlzSGVsZCA9IGZhbHNlO1xuICAgIGxldCBjbGllbnRYID0gMDtcbiAgICBsZXQgcmVjdDogRE9NUmVjdCB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IGlzVmFsaWRFdmVudFRhcmdldCA9ICh0YXJnZXQ6IEV2ZW50VGFyZ2V0IHwgbnVsbCk6IGJvb2xlYW4gPT4ge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oY29udGFpbmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKHRhcmdldCBhcyBIVE1MRWxlbWVudCkpO1xuICAgIH07XG5cbiAgICBsZXQgbmV4dEZyYW1lID0gMDtcbiAgICBjb25zdCBvbkZyYW1lID0gKCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFpc0hlbGQgfHwgIXJlY3QpIHJldHVybjtcbiAgICAgIGNvbnN0ICR0aW1lbGluZSA9IHRpbWVsaW5lUmVmLmN1cnJlbnQ7XG4gICAgICBpZiAoISR0aW1lbGluZSkgcmV0dXJuO1xuXG4gICAgICBjb25zdCB4ID0gY2xpZW50WCAtIHRodW1iV2lkdGggKiAwLjUgLSByZWN0LmxlZnQ7XG4gICAgICAkdGltZWxpbmUuc2Nyb2xsTGVmdCA9IHggLyB0aHVtYlJhdGlvO1xuICAgIH07XG5cbiAgICBjb25zdCBvblBvaW50ZXJNb3ZlID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICh7IGNsaWVudFggfSA9IGV2ZW50KTtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKG5leHRGcmFtZSk7XG4gICAgICBuZXh0RnJhbWUgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUob25GcmFtZSk7XG4gICAgfTtcblxuICAgIGNvbnN0IG9uUG9pbnRlckRvd24gPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFpc1ZhbGlkRXZlbnRUYXJnZXQoZXZlbnQudGFyZ2V0KSkgcmV0dXJuO1xuICAgICAgaXNIZWxkID0gdHJ1ZTtcbiAgICAgIHJlY3QgPSBjb250YWluZXJSZWYuY3VycmVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBvblBvaW50ZXJNb3ZlKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29uc3Qgb25Qb2ludGVyVXAgPSAoKTogdm9pZCA9PiB7XG4gICAgICBpc0hlbGQgPSBmYWxzZTtcbiAgICAgIHJlY3QgPSB1bmRlZmluZWQ7XG4gICAgfTtcblxuICAgIGNvbnN0IG9uVG91Y2hTdGFydCA9IChldmVudDogVG91Y2hFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFpc1ZhbGlkRXZlbnRUYXJnZXQoZXZlbnQudGFyZ2V0KSkgcmV0dXJuO1xuICAgICAgaWYgKGV2ZW50LmNhbmNlbGFibGUpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IG9uVG91Y2hNb3ZlID0gKGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCA9PiB7XG4gICAgICBpZiAoIWlzSGVsZCkgcmV0dXJuO1xuICAgICAgaWYgKGV2ZW50LmNhbmNlbGFibGUpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgb25Qb2ludGVyRG93bik7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgb25Qb2ludGVyTW92ZSk7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJ1cCcsIG9uUG9pbnRlclVwKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsIG9uUG9pbnRlclVwKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIG9uVG91Y2hTdGFydCwgeyBwYXNzaXZlOiBmYWxzZSB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgb25Ub3VjaE1vdmUsIHsgcGFzc2l2ZTogZmFsc2UgfSk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgb25Qb2ludGVyRG93bik7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcm1vdmUnLCBvblBvaW50ZXJNb3ZlKTtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCBvblBvaW50ZXJVcCk7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmx1cicsIG9uUG9pbnRlclVwKTtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0Jywgb25Ub3VjaFN0YXJ0KTtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCBvblRvdWNoTW92ZSk7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShuZXh0RnJhbWUpO1xuICAgIH07XG4gIH0sIFt0aW1lbGluZVJlZiwgdGh1bWJSYXRpbywgdGh1bWJXaWR0aF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgY2FudmFzID0gY2FudmFzUmVmLmN1cnJlbnQ7XG4gICAgY29uc3QgY3R4ID0gY2FudmFzPy5nZXRDb250ZXh0KCcyZCcpO1xuICAgIGlmICghY2FudmFzIHx8ICFjdHgpIHJldHVybjtcblxuICAgIGNvbnN0IHJlbmRlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGN0eC5yZXNldFRyYW5zZm9ybSgpO1xuICAgICAgY3R4LmNsZWFyUmVjdCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpO1xuICAgICAgY3R4LnNjYWxlKGRwaSwgZHBpKTtcblxuICAgICAgY29uc3QgZ2FwID0gMTtcbiAgICAgIGNvbnN0IGhlaWdodCA9IDM7XG4gICAgICBjb25zdCByYXRpbyA9IChtYXBXaWR0aCAtIHBhZGRpbmcgKiAyKSAvIHJvb3QuZHVyYXRpb247XG5cbiAgICAgIC8vIFRPRE86IGZpbGwgc3BhbnMgYmFzZWQgb24gZGVwdGhcbiAgICAgIGN0eC5maWxsU3R5bGUgPSAnI2NjYyc7XG4gICAgICBjdHguYmVnaW5QYXRoKCk7XG4gICAgICBmb3IgKGNvbnN0IHJvdyBvZiByb3dzKSB7XG4gICAgICAgIGZvciAoY29uc3Qgc3BhbiBvZiByb3cpIHtcbiAgICAgICAgICBjb25zdCB5ID0gcGFkZGluZyAtIGdhcCArIChnYXAgKyBoZWlnaHQpICogc3Bhbi5yb3c7XG4gICAgICAgICAgaWYgKHkgPj0gTUFQX0hFSUdIVCAtIGhlaWdodCAtIHBhZGRpbmcpIGJyZWFrO1xuXG4gICAgICAgICAgY29uc3QgeCA9IHBhZGRpbmcgKyAoc3Bhbi5zdGFydFRpbWUgLSByb290LnN0YXJ0VGltZSkgKiByYXRpbztcbiAgICAgICAgICBjb25zdCB3aWR0aCA9IHNwYW4uZHVyYXRpb24gKiByYXRpbztcblxuICAgICAgICAgIGN0eC5yb3VuZFJlY3QoeCwgeSwgd2lkdGgsIGhlaWdodCwgaGVpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY3R4LmZpbGwoKTtcbiAgICB9O1xuXG4gICAgY29uc3QgbmV4dEZyYW1lID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHJlbmRlcik7XG5cbiAgICByZXR1cm4gKCkgPT4gY2FuY2VsQW5pbWF0aW9uRnJhbWUobmV4dEZyYW1lKTtcbiAgfSwgW2RwaSwgcm9vdCwgbWFwV2lkdGgsIHJvd3NdKTtcblxuICBjb25zdCB0aHVtYlJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHsgc3R5bGU6IHRodW1iU3R5bGUsIHNldFN0eWxlOiBzZXRUaHVtYlN0eWxlIH0gPVxuICAgIHVzZUltbWVkaWF0ZVN0eWxlKHRodW1iUmVmKTtcbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCAkdGltZWxpbmUgPSB0aW1lbGluZVJlZi5jdXJyZW50O1xuICAgIGlmICghJHRpbWVsaW5lKSByZXR1cm47XG5cbiAgICBsZXQgbmV4dEZyYW1lID0gMDtcbiAgICBjb25zdCBvbkZyYW1lID0gKCk6IHZvaWQgPT4ge1xuICAgICAgc2V0VGh1bWJTdHlsZShcbiAgICAgICAgJ3RyYW5zZm9ybScsXG4gICAgICAgIGB0cmFuc2xhdGVYKCR7cGFkZGluZyArICR0aW1lbGluZS5zY3JvbGxMZWZ0ICogdGh1bWJSYXRpb31weClgXG4gICAgICApO1xuICAgIH07XG4gICAgb25GcmFtZSgpO1xuXG4gICAgY29uc3Qgb25TY3JvbGwgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShuZXh0RnJhbWUpO1xuICAgICAgbmV4dEZyYW1lID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKG9uRnJhbWUpO1xuICAgIH07XG4gICAgJHRpbWVsaW5lLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uU2Nyb2xsKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShuZXh0RnJhbWUpO1xuICAgICAgJHRpbWVsaW5lLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uU2Nyb2xsKTtcbiAgICB9O1xuICB9LCBbdGltZWxpbmVSZWYsIHRodW1iUmF0aW8sIHNldFRodW1iU3R5bGVdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17c3R5bGVzLm1hcENvbnRhaW5lcn1cbiAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgc3R5bGU9e3tcbiAgICAgICAgd2lkdGg6IHRodW1iV2lkdGggPiAwID8gbWFwV2lkdGggOiAnMTAwJScsXG4gICAgICAgIGhlaWdodDogTUFQX0hFSUdIVCxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPGNhbnZhc1xuICAgICAgICBjbGFzc05hbWU9e3N0eWxlcy5tYXBDYW52YXN9XG4gICAgICAgIGhlaWdodD17TUFQX0hFSUdIVCAqIGRwaX1cbiAgICAgICAgcmVmPXtjYW52YXNSZWZ9XG4gICAgICAgIHN0eWxlPXt7IHdpZHRoOiBtYXBXaWR0aCwgaGVpZ2h0OiBNQVBfSEVJR0hUIH19XG4gICAgICAgIHdpZHRoPXttYXBXaWR0aCAqIGRwaX1cbiAgICAgIC8+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17c3R5bGVzLm1hcFRodW1ifVxuICAgICAgICByZWY9e3RodW1iUmVmfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIHRyYW5zZm9ybTogdGh1bWJTdHlsZS50cmFuc2Zvcm0sXG4gICAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICB0aHVtYldpZHRoID4gMFxuICAgICAgICAgICAgICA/IHRodW1iV2lkdGhcbiAgICAgICAgICAgICAgOiBgY2FsYygxMDAlIC0gJHtUSU1FTElORV9QQURESU5HICogMn1weClgLFxuICAgICAgICAgIHRvcDogMixcbiAgICAgICAgICBoZWlnaHQ6IE1BUF9IRUlHSFQgLSA0LFxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuIl19
@@ -1,23 +0,0 @@
1
- import type { Dispatch, MutableRefObject, ReactNode } from 'react';
2
- import { type TraceViewerAction } from '../context';
3
- import type { MemoCache, RootNode, ScrollSnapshot, VisibleSpan, VisibleSpanEvent } from '../types';
4
- export declare function Markers({ scale, isLive, }: {
5
- scale: number;
6
- isLive?: boolean;
7
- }): ReactNode;
8
- export declare function EventMarkers({ events, root, scale, }: {
9
- events: VisibleSpanEvent[];
10
- root: RootNode;
11
- scale: number;
12
- }): ReactNode;
13
- export declare function CursorMarker({ memoCacheRef, timelineRef, root, spans, events, scale, dispatch, scrollSnapshotRef, }: {
14
- memoCacheRef: MutableRefObject<MemoCache>;
15
- timelineRef: MutableRefObject<HTMLDivElement | null>;
16
- root: RootNode;
17
- spans: VisibleSpan[];
18
- events: VisibleSpanEvent[];
19
- scale: number;
20
- dispatch: Dispatch<TraceViewerAction>;
21
- scrollSnapshotRef: MutableRefObject<ScrollSnapshot | undefined>;
22
- }): ReactNode;
23
- //# sourceMappingURL=markers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../../../src/components/trace-viewer/components/markers.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,QAAQ,EACR,gBAAgB,EAChB,SAAS,EACV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,iBAAiB,EAAkB,MAAM,YAAY,CAAC;AAEpE,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,gBAAgB,EACjB,MAAM,UAAU,CAAC;AA+BlB,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,MAAc,GACf,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,SAAS,CAyEZ;AAED,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,IAAI,EACJ,KAAK,GACN,EAAE;IACD,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,SAAS,CAiCZ;AASD,wBAAgB,YAAY,CAAC,EAC3B,YAAY,EACZ,WAAW,EACX,IAAI,EACJ,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,iBAAiB,GAClB,EAAE;IACD,YAAY,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC1C,WAAW,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IACtC,iBAAiB,EAAE,gBAAgB,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;CACjE,GAAG,SAAS,CA6ZZ"}