@msqd/lydia 0.0.0-stage → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) hide show
  1. package/LICENSE +373 -0
  2. package/README.md +151 -2
  3. package/THIRD_PARTY_NOTICES.md +29 -0
  4. package/dist/Components/Badges/Badge.d.ts +20 -0
  5. package/dist/Components/Badges/Badge.js +33 -0
  6. package/dist/Components/Badges/index.d.ts +1 -0
  7. package/dist/Components/Badges/index.js +4 -0
  8. package/dist/Components/Buttons/Button.d.ts +8 -0
  9. package/dist/Components/Buttons/Button.js +30 -0
  10. package/dist/Components/Buttons/ButtonGroup.d.ts +13 -0
  11. package/dist/Components/Buttons/ButtonGroup.js +61 -0
  12. package/dist/Components/Buttons/index.d.ts +2 -0
  13. package/dist/Components/Buttons/index.js +6 -0
  14. package/dist/Components/Cards/Card.d.ts +38 -0
  15. package/dist/Components/Cards/Card.js +31 -0
  16. package/dist/Components/Cards/StatCard.d.ts +14 -0
  17. package/dist/Components/Cards/StatCard.js +27 -0
  18. package/dist/Components/Cards/index.d.ts +2 -0
  19. package/dist/Components/Cards/index.js +7 -0
  20. package/dist/Components/Charts/Components/ThinBarChart.d.ts +35 -0
  21. package/dist/Components/Charts/Components/ThinBarChart.js +41 -0
  22. package/dist/Components/Charts/Components/WideBarChart.d.ts +48 -0
  23. package/dist/Components/Charts/Components/WideBarChart.js +50 -0
  24. package/dist/Components/Charts/Components/index.d.ts +2 -0
  25. package/dist/Components/Charts/Components/index.js +6 -0
  26. package/dist/Components/Charts/Hooks/index.d.ts +2 -0
  27. package/dist/Components/Charts/Hooks/index.js +7 -0
  28. package/dist/Components/Charts/Hooks/useChartDimensions.d.ts +24 -0
  29. package/dist/Components/Charts/Hooks/useChartDimensions.js +42 -0
  30. package/dist/Components/Charts/Hooks/useThemeColors.d.ts +10 -0
  31. package/dist/Components/Charts/Hooks/useThemeColors.js +51 -0
  32. package/dist/Components/Charts/SummaryPerformancesChart.d.ts +7 -0
  33. package/dist/Components/Charts/SummaryPerformancesChart.js +93 -0
  34. package/dist/Components/Charts/SummaryRateChart.d.ts +9 -0
  35. package/dist/Components/Charts/SummaryRateChart.js +81 -0
  36. package/dist/Components/Charts/TransactionsChart.d.ts +6 -0
  37. package/dist/Components/Charts/TransactionsChart.js +70 -0
  38. package/dist/Components/Charts/Utils/ChartBarCalculator.d.ts +48 -0
  39. package/dist/Components/Charts/Utils/ChartBarCalculator.js +66 -0
  40. package/dist/Components/Charts/Utils/ChartColors.d.ts +13 -0
  41. package/dist/Components/Charts/Utils/ChartColors.js +10 -0
  42. package/dist/Components/Charts/Utils/ChartTooltipFormatter.d.ts +43 -0
  43. package/dist/Components/Charts/Utils/ChartTooltipFormatter.js +57 -0
  44. package/dist/Components/Charts/Utils/ReactEChartsCore.d.ts +4 -0
  45. package/dist/Components/Charts/Utils/ReactEChartsCore.js +5 -0
  46. package/dist/Components/Charts/Utils/ThemeColor.d.ts +21 -0
  47. package/dist/Components/Charts/Utils/ThemeColor.js +54 -0
  48. package/dist/Components/Charts/Utils/TimeFormatter.d.ts +9 -0
  49. package/dist/Components/Charts/Utils/TimeFormatter.js +25 -0
  50. package/dist/Components/Charts/Utils/escapeTooltipHtml.d.ts +6 -0
  51. package/dist/Components/Charts/Utils/escapeTooltipHtml.js +5 -0
  52. package/dist/Components/Charts/Utils/index.d.ts +5 -0
  53. package/dist/Components/Charts/Utils/index.js +14 -0
  54. package/dist/Components/Charts/index.d.ts +6 -0
  55. package/dist/Components/Charts/index.js +29 -0
  56. package/dist/Components/Colors/Colors.d.ts +19 -0
  57. package/dist/Components/Colors/Colors.js +154 -0
  58. package/dist/Components/Colors/index.d.ts +1 -0
  59. package/dist/Components/Colors/index.js +4 -0
  60. package/dist/Components/DataTable/DataTable.d.ts +86 -0
  61. package/dist/Components/DataTable/DataTable.js +122 -0
  62. package/dist/Components/DataTable/Paginator.d.ts +41 -0
  63. package/dist/Components/DataTable/Paginator.js +122 -0
  64. package/dist/Components/DataTable/ProportionBar.d.ts +48 -0
  65. package/dist/Components/DataTable/ProportionBar.js +20 -0
  66. package/dist/Components/DataTable/index.d.ts +3 -0
  67. package/dist/Components/DataTable/index.js +9 -0
  68. package/dist/Components/Dialog/Dialog.d.ts +49 -0
  69. package/dist/Components/Dialog/Dialog.js +83 -0
  70. package/dist/Components/Dialog/Drawer.d.ts +45 -0
  71. package/dist/Components/Dialog/Drawer.js +120 -0
  72. package/dist/Components/Dialog/index.d.ts +3 -0
  73. package/dist/Components/Dialog/index.js +12 -0
  74. package/dist/Components/Dialog/modal.types.d.ts +47 -0
  75. package/dist/Components/Dialog/modal.types.js +8 -0
  76. package/dist/Components/Facets/FacetCount.d.ts +11 -0
  77. package/dist/Components/Facets/FacetCount.js +8 -0
  78. package/dist/Components/Facets/FacetCountsCaption.d.ts +16 -0
  79. package/dist/Components/Facets/FacetCountsCaption.js +14 -0
  80. package/dist/Components/Facets/FacetInnerLightButton.d.ts +10 -0
  81. package/dist/Components/Facets/FacetInnerLightButton.js +17 -0
  82. package/dist/Components/Facets/FacetLabel.d.ts +13 -0
  83. package/dist/Components/Facets/FacetLabel.js +15 -0
  84. package/dist/Components/Facets/FacetList.d.ts +40 -0
  85. package/dist/Components/Facets/FacetList.js +37 -0
  86. package/dist/Components/Facets/FacetListCard.d.ts +38 -0
  87. package/dist/Components/Facets/FacetListCard.js +47 -0
  88. package/dist/Components/Facets/FacetResetLink.d.ts +13 -0
  89. package/dist/Components/Facets/FacetResetLink.js +23 -0
  90. package/dist/Components/Facets/Variants/DateRangeFacet.d.ts +47 -0
  91. package/dist/Components/Facets/Variants/DateRangeFacet.js +51 -0
  92. package/dist/Components/Facets/Variants/MultipleChoiceFacet.d.ts +67 -0
  93. package/dist/Components/Facets/Variants/MultipleChoiceFacet.js +200 -0
  94. package/dist/Components/Facets/Variants/PerformanceFacet.d.ts +61 -0
  95. package/dist/Components/Facets/Variants/PerformanceFacet.js +77 -0
  96. package/dist/Components/Facets/Variants/SingleChoiceFacet.d.ts +56 -0
  97. package/dist/Components/Facets/Variants/SingleChoiceFacet.js +54 -0
  98. package/dist/Components/Facets/Variants/index.d.ts +8 -0
  99. package/dist/Components/Facets/Variants/index.js +10 -0
  100. package/dist/Components/Facets/Variants/nestedValues.d.ts +33 -0
  101. package/dist/Components/Facets/Variants/nestedValues.js +87 -0
  102. package/dist/Components/Facets/index.d.ts +15 -0
  103. package/dist/Components/Facets/index.js +27 -0
  104. package/dist/Components/Formatter/BodyNotice.d.ts +9 -0
  105. package/dist/Components/Formatter/BodyNotice.js +21 -0
  106. package/dist/Components/Formatter/CodeFormatter.d.ts +47 -0
  107. package/dist/Components/Formatter/CodeFormatter.js +47 -0
  108. package/dist/Components/Formatter/HeadersDisplay.d.ts +9 -0
  109. package/dist/Components/Formatter/HeadersDisplay.js +18 -0
  110. package/dist/Components/Formatter/JsonTreeView.d.ts +27 -0
  111. package/dist/Components/Formatter/JsonTreeView.js +145 -0
  112. package/dist/Components/Formatter/PerformanceMetrics.d.ts +27 -0
  113. package/dist/Components/Formatter/PerformanceMetrics.js +29 -0
  114. package/dist/Components/Formatter/SyntaxHighlighter.d.ts +11 -0
  115. package/dist/Components/Formatter/SyntaxHighlighter.js +16 -0
  116. package/dist/Components/Formatter/VirtualizedCodeView.d.ts +24 -0
  117. package/dist/Components/Formatter/VirtualizedCodeView.js +47 -0
  118. package/dist/Components/Formatter/bodyLimits.d.ts +6 -0
  119. package/dist/Components/Formatter/bodyLimits.js +6 -0
  120. package/dist/Components/Formatter/index.d.ts +8 -0
  121. package/dist/Components/Formatter/index.js +16 -0
  122. package/dist/Components/Formatter/syntaxTheme.d.ts +8 -0
  123. package/dist/Components/Formatter/syntaxTheme.js +15 -0
  124. package/dist/Components/Formatter/useCodeHighlighting.d.ts +15 -0
  125. package/dist/Components/Formatter/useCodeHighlighting.js +47 -0
  126. package/dist/Components/Formatter/useVirtualization.d.ts +29 -0
  127. package/dist/Components/Formatter/useVirtualization.js +18 -0
  128. package/dist/Components/Inputs/Checkbox/Checkbox.d.ts +6 -0
  129. package/dist/Components/Inputs/Checkbox/Checkbox.js +75 -0
  130. package/dist/Components/Inputs/Checkbox/index.d.ts +1 -0
  131. package/dist/Components/Inputs/Checkbox/index.js +4 -0
  132. package/dist/Components/Inputs/DateRangeSelector/DateRangeSelector.d.ts +48 -0
  133. package/dist/Components/Inputs/DateRangeSelector/DateRangeSelector.js +71 -0
  134. package/dist/Components/Inputs/DateRangeSelector/index.d.ts +1 -0
  135. package/dist/Components/Inputs/DateRangeSelector/index.js +4 -0
  136. package/dist/Components/Inputs/Field/Field.d.ts +19 -0
  137. package/dist/Components/Inputs/Field/Field.js +35 -0
  138. package/dist/Components/Inputs/Field/index.d.ts +2 -0
  139. package/dist/Components/Inputs/Field/index.js +7 -0
  140. package/dist/Components/Inputs/Field/useField.d.ts +33 -0
  141. package/dist/Components/Inputs/Field/useField.js +36 -0
  142. package/dist/Components/Inputs/Input/Input.d.ts +85 -0
  143. package/dist/Components/Inputs/Input/Input.js +146 -0
  144. package/dist/Components/Inputs/Input/index.d.ts +1 -0
  145. package/dist/Components/Inputs/Input/index.js +4 -0
  146. package/dist/Components/Inputs/InputAddon/InputAddon.d.ts +21 -0
  147. package/dist/Components/Inputs/InputAddon/InputAddon.js +18 -0
  148. package/dist/Components/Inputs/InputAddon/index.d.ts +1 -0
  149. package/dist/Components/Inputs/InputAddon/index.js +4 -0
  150. package/dist/Components/Inputs/InputButton/InputButton.d.ts +21 -0
  151. package/dist/Components/Inputs/InputButton/InputButton.js +29 -0
  152. package/dist/Components/Inputs/InputButton/index.d.ts +1 -0
  153. package/dist/Components/Inputs/InputButton/index.js +4 -0
  154. package/dist/Components/Inputs/InputIcon/InputIcon.d.ts +20 -0
  155. package/dist/Components/Inputs/InputIcon/InputIcon.js +16 -0
  156. package/dist/Components/Inputs/InputIcon/index.d.ts +1 -0
  157. package/dist/Components/Inputs/InputIcon/index.js +4 -0
  158. package/dist/Components/Inputs/KeyboardShortcut/KeyboardShortcut.d.ts +12 -0
  159. package/dist/Components/Inputs/KeyboardShortcut/KeyboardShortcut.js +18 -0
  160. package/dist/Components/Inputs/KeyboardShortcut/index.d.ts +1 -0
  161. package/dist/Components/Inputs/KeyboardShortcut/index.js +4 -0
  162. package/dist/Components/Inputs/Radio/Radio.d.ts +3 -0
  163. package/dist/Components/Inputs/Radio/Radio.js +59 -0
  164. package/dist/Components/Inputs/Radio/index.d.ts +1 -0
  165. package/dist/Components/Inputs/Radio/index.js +4 -0
  166. package/dist/Components/Inputs/SearchInput/SearchInput.d.ts +9 -0
  167. package/dist/Components/Inputs/SearchInput/SearchInput.js +48 -0
  168. package/dist/Components/Inputs/SearchInput/index.d.ts +2 -0
  169. package/dist/Components/Inputs/SearchInput/index.js +4 -0
  170. package/dist/Components/Inputs/Sliders/RangeSlider.d.ts +40 -0
  171. package/dist/Components/Inputs/Sliders/RangeSlider.js +160 -0
  172. package/dist/Components/Inputs/Sliders/index.d.ts +2 -0
  173. package/dist/Components/Inputs/Sliders/index.js +4 -0
  174. package/dist/Components/Inputs/Textarea/Textarea.d.ts +56 -0
  175. package/dist/Components/Inputs/Textarea/Textarea.js +79 -0
  176. package/dist/Components/Inputs/Textarea/index.d.ts +1 -0
  177. package/dist/Components/Inputs/Textarea/index.js +4 -0
  178. package/dist/Components/Inputs/choiceInput.d.ts +12 -0
  179. package/dist/Components/Inputs/choiceInput.js +8 -0
  180. package/dist/Components/Inputs/index.d.ts +11 -0
  181. package/dist/Components/Inputs/index.js +24 -0
  182. package/dist/Components/Layouts/DefaultLayout.d.ts +30 -0
  183. package/dist/Components/Layouts/DefaultLayout.js +25 -0
  184. package/dist/Components/Layouts/index.d.ts +2 -0
  185. package/dist/Components/Layouts/index.js +4 -0
  186. package/dist/Components/NavBar/Assets/defaultAvatar.d.ts +4 -0
  187. package/dist/Components/NavBar/Assets/defaultAvatar.js +28 -0
  188. package/dist/Components/NavBar/Assets/index.d.ts +2 -0
  189. package/dist/Components/NavBar/Assets/index.js +4 -0
  190. package/dist/Components/NavBar/NavBar.d.ts +58 -0
  191. package/dist/Components/NavBar/NavBar.js +141 -0
  192. package/dist/Components/NavBar/index.d.ts +1 -0
  193. package/dist/Components/NavBar/index.js +5 -0
  194. package/dist/Components/Tabs/Tabs.d.ts +24 -0
  195. package/dist/Components/Tabs/Tabs.js +69 -0
  196. package/dist/Components/Tabs/index.d.ts +2 -0
  197. package/dist/Components/Tabs/index.js +5 -0
  198. package/dist/Components/Toast/Toast.d.ts +28 -0
  199. package/dist/Components/Toast/Toast.js +128 -0
  200. package/dist/Components/Toast/ToastContainer.d.ts +29 -0
  201. package/dist/Components/Toast/ToastContainer.js +28 -0
  202. package/dist/Components/Toast/ToastContext.d.ts +103 -0
  203. package/dist/Components/Toast/ToastContext.js +124 -0
  204. package/dist/Components/Toast/index.d.ts +3 -0
  205. package/dist/Components/Toast/index.js +13 -0
  206. package/dist/Components/Typography/HeadingLevel.d.ts +28 -0
  207. package/dist/Components/Typography/HeadingLevel.js +20 -0
  208. package/dist/Components/Typography/Paragraphs.d.ts +8 -0
  209. package/dist/Components/Typography/Paragraphs.js +6 -0
  210. package/dist/Components/Typography/Section.d.ts +8 -0
  211. package/dist/Components/Typography/Section.js +6 -0
  212. package/dist/Components/Typography/Titles.d.ts +31 -0
  213. package/dist/Components/Typography/Titles.js +14 -0
  214. package/dist/Components/Typography/index.d.ts +4 -0
  215. package/dist/Components/Typography/index.js +17 -0
  216. package/dist/Components/Utilities/Foldable.d.ts +42 -0
  217. package/dist/Components/Utilities/Foldable.js +39 -0
  218. package/dist/Components/Utilities/index.d.ts +2 -0
  219. package/dist/Components/Utilities/index.js +6 -0
  220. package/dist/Components/Utilities/useClickOutside.d.ts +21 -0
  221. package/dist/Components/Utilities/useClickOutside.js +23 -0
  222. package/dist/Components/index.d.ts +16 -0
  223. package/dist/Components/index.js +158 -0
  224. package/dist/Elements/Http/CacheBadge.d.ts +13 -0
  225. package/dist/Elements/Http/CacheBadge.js +34 -0
  226. package/dist/Elements/Http/CacheIndicator.d.ts +17 -0
  227. package/dist/Elements/Http/CacheIndicator.js +47 -0
  228. package/dist/Elements/Http/RequestMethodBadge.d.ts +5 -0
  229. package/dist/Elements/Http/RequestMethodBadge.js +13 -0
  230. package/dist/Elements/Http/ResponseStatusBadge.d.ts +19 -0
  231. package/dist/Elements/Http/ResponseStatusBadge.js +20 -0
  232. package/dist/Elements/Http/index.d.ts +4 -0
  233. package/dist/Elements/Http/index.js +10 -0
  234. package/dist/Elements/System/CircuitBreakerStatus.d.ts +11 -0
  235. package/dist/Elements/System/CircuitBreakerStatus.js +98 -0
  236. package/dist/Elements/System/EndpointNode.d.ts +10 -0
  237. package/dist/Elements/System/EndpointNode.js +19 -0
  238. package/dist/Elements/System/EntrypointNode.d.ts +9 -0
  239. package/dist/Elements/System/EntrypointNode.js +17 -0
  240. package/dist/Elements/System/NetworkEdges.d.ts +37 -0
  241. package/dist/Elements/System/NetworkEdges.js +52 -0
  242. package/dist/Elements/System/NetworkMap.d.ts +33 -0
  243. package/dist/Elements/System/NetworkMap.js +121 -0
  244. package/dist/Elements/System/NetworkNode.d.ts +29 -0
  245. package/dist/Elements/System/NetworkNode.js +31 -0
  246. package/dist/Elements/System/ProxyNode.d.ts +8 -0
  247. package/dist/Elements/System/ProxyNode.js +10 -0
  248. package/dist/Elements/System/index.d.ts +9 -0
  249. package/dist/Elements/System/index.js +17 -0
  250. package/dist/Elements/Tpdex/TpdexBadge.d.ts +26 -0
  251. package/dist/Elements/Tpdex/TpdexBadge.js +36 -0
  252. package/dist/Elements/Tpdex/index.d.ts +4 -0
  253. package/dist/Elements/Tpdex/index.js +8 -0
  254. package/dist/Elements/Transactions/TransactionFiltersCard.d.ts +41 -0
  255. package/dist/Elements/Transactions/TransactionFiltersCard.js +121 -0
  256. package/dist/Elements/Transactions/TransactionsExplorerSidebar.d.ts +37 -0
  257. package/dist/Elements/Transactions/TransactionsExplorerSidebar.js +154 -0
  258. package/dist/Elements/Transactions/TransactionsFiltersSidebar.d.ts +22 -0
  259. package/dist/Elements/Transactions/TransactionsFiltersSidebar.js +39 -0
  260. package/dist/Elements/Transactions/index.d.ts +13 -0
  261. package/dist/Elements/Transactions/index.js +9 -0
  262. package/dist/Elements/index.d.ts +18 -0
  263. package/dist/Elements/index.js +38 -0
  264. package/dist/Models/Filters/active.d.ts +12 -0
  265. package/dist/Models/Filters/active.js +10 -0
  266. package/dist/Models/Filters/dates.d.ts +8 -0
  267. package/dist/Models/Filters/dates.js +16 -0
  268. package/dist/Models/Filters/index.d.ts +4 -0
  269. package/dist/Models/Filters/index.js +13 -0
  270. package/dist/Models/Filters/read.d.ts +9 -0
  271. package/dist/Models/Filters/read.js +22 -0
  272. package/dist/Models/Filters/types.d.ts +50 -0
  273. package/dist/Models/Filters/types.js +1 -0
  274. package/dist/Models/Http/body.d.ts +7 -0
  275. package/dist/Models/Http/body.js +6 -0
  276. package/dist/Models/Http/contentDisposition.d.ts +7 -0
  277. package/dist/Models/Http/contentDisposition.js +51 -0
  278. package/dist/Models/Http/dataUrl.d.ts +12 -0
  279. package/dist/Models/Http/dataUrl.js +21 -0
  280. package/dist/Models/Http/headers.d.ts +18 -0
  281. package/dist/Models/Http/headers.js +7 -0
  282. package/dist/Models/Http/index.d.ts +2 -0
  283. package/dist/Models/Http/index.js +6 -0
  284. package/dist/Models/Http/percent.d.ts +5 -0
  285. package/dist/Models/Http/percent.js +17 -0
  286. package/dist/Models/Http/requestTarget.d.ts +11 -0
  287. package/dist/Models/Http/requestTarget.js +7 -0
  288. package/dist/Models/System/index.d.ts +1 -0
  289. package/dist/Models/System/index.js +7 -0
  290. package/dist/Models/System/types.d.ts +20 -0
  291. package/dist/Models/System/types.js +48 -0
  292. package/dist/Models/Tpdex.d.ts +36 -0
  293. package/dist/Models/Tpdex.js +38 -0
  294. package/dist/Models/Transactions/Overview.d.ts +19 -0
  295. package/dist/Models/Transactions/Overview.js +1 -0
  296. package/dist/Models/Transactions/encoding.d.ts +49 -0
  297. package/dist/Models/Transactions/encoding.js +26 -0
  298. package/dist/Models/Transactions/endpoints.d.ts +15 -0
  299. package/dist/Models/Transactions/endpoints.js +21 -0
  300. package/dist/Models/Transactions/facets.d.ts +25 -0
  301. package/dist/Models/Transactions/facets.js +40 -0
  302. package/dist/Models/Transactions/filtering.d.ts +20 -0
  303. package/dist/Models/Transactions/filtering.js +34 -0
  304. package/dist/Models/Transactions/treeDepth.d.ts +2 -0
  305. package/dist/Models/Transactions/treeDepth.js +4 -0
  306. package/dist/Models/Transactions/types.d.ts +58 -0
  307. package/dist/Models/Transactions/types.js +1 -0
  308. package/dist/Models/index.d.ts +10 -0
  309. package/dist/Models/index.js +46 -0
  310. package/dist/Pages/Alerts/AlertsPage.d.ts +18 -0
  311. package/dist/Pages/Alerts/AlertsPage.js +104 -0
  312. package/dist/Pages/Alerts/index.d.ts +1 -0
  313. package/dist/Pages/Alerts/index.js +4 -0
  314. package/dist/Pages/Explorer/ExplorerPage.d.ts +6 -0
  315. package/dist/Pages/Explorer/ExplorerPage.js +55 -0
  316. package/dist/Pages/Explorer/index.d.ts +1 -0
  317. package/dist/Pages/Explorer/index.js +4 -0
  318. package/dist/Pages/Overview/OverviewPage.d.ts +11 -0
  319. package/dist/Pages/Overview/OverviewPage.js +10 -0
  320. package/dist/Pages/Overview/Sections/Components/TransactionsHistoryView.d.ts +7 -0
  321. package/dist/Pages/Overview/Sections/Components/TransactionsHistoryView.js +32 -0
  322. package/dist/Pages/Overview/Sections/Components/index.d.ts +1 -0
  323. package/dist/Pages/Overview/Sections/Components/index.js +4 -0
  324. package/dist/Pages/Overview/Sections/HistorySection.d.ts +18 -0
  325. package/dist/Pages/Overview/Sections/HistorySection.js +21 -0
  326. package/dist/Pages/Overview/Sections/SummarySection.d.ts +44 -0
  327. package/dist/Pages/Overview/Sections/SummarySection.js +127 -0
  328. package/dist/Pages/Overview/index.d.ts +4 -0
  329. package/dist/Pages/Overview/index.js +8 -0
  330. package/dist/Pages/SystemPage/SystemPage.d.ts +8 -0
  331. package/dist/Pages/SystemPage/SystemPage.js +16 -0
  332. package/dist/Pages/SystemPage/index.d.ts +1 -0
  333. package/dist/Pages/SystemPage/index.js +4 -0
  334. package/dist/Pages/Transactions/Detail/Components/DownloadButton.d.ts +33 -0
  335. package/dist/Pages/Transactions/Detail/Components/DownloadButton.js +62 -0
  336. package/dist/Pages/Transactions/Detail/Components/TransactionMessage.d.ts +16 -0
  337. package/dist/Pages/Transactions/Detail/Components/TransactionMessage.js +44 -0
  338. package/dist/Pages/Transactions/Detail/Components/TransactionMetadata.d.ts +21 -0
  339. package/dist/Pages/Transactions/Detail/Components/TransactionMetadata.js +127 -0
  340. package/dist/Pages/Transactions/Detail/Components/index.d.ts +6 -0
  341. package/dist/Pages/Transactions/Detail/Components/index.js +8 -0
  342. package/dist/Pages/Transactions/Detail/TransactionsDetailPage.d.ts +8 -0
  343. package/dist/Pages/Transactions/Detail/TransactionsDetailPage.js +15 -0
  344. package/dist/Pages/Transactions/Detail/Utils/BodyPreview.d.ts +15 -0
  345. package/dist/Pages/Transactions/Detail/Utils/BodyPreview.js +30 -0
  346. package/dist/Pages/Transactions/Detail/Utils/ContentRenderer.d.ts +28 -0
  347. package/dist/Pages/Transactions/Detail/Utils/ContentRenderer.js +115 -0
  348. package/dist/Pages/Transactions/Detail/Utils/index.d.ts +4 -0
  349. package/dist/Pages/Transactions/Detail/Utils/index.js +9 -0
  350. package/dist/Pages/Transactions/Detail/index.d.ts +4 -0
  351. package/dist/Pages/Transactions/Detail/index.js +8 -0
  352. package/dist/Pages/Transactions/List/TransactionsListPage.d.ts +80 -0
  353. package/dist/Pages/Transactions/List/TransactionsListPage.js +220 -0
  354. package/dist/Pages/Transactions/List/index.d.ts +4 -0
  355. package/dist/Pages/Transactions/List/index.js +6 -0
  356. package/dist/Pages/Transactions/List/useClientSideTransactions.d.ts +38 -0
  357. package/dist/Pages/Transactions/List/useClientSideTransactions.js +32 -0
  358. package/dist/Pages/Transactions/index.d.ts +4 -0
  359. package/dist/Pages/Transactions/index.js +6 -0
  360. package/dist/Pages/index.d.ts +5 -0
  361. package/dist/Pages/index.js +18 -0
  362. package/dist/Settings.d.ts +13 -0
  363. package/dist/Settings.js +16 -0
  364. package/dist/css/Components/Formatter/prism.css +79 -0
  365. package/dist/css/Components/Inputs/Input/Input.css +73 -0
  366. package/dist/css/Components/Inputs/Sliders/RangeSliderStyles.css +92 -0
  367. package/dist/css/components.css +6 -0
  368. package/dist/css/fonts/Lato-Bold.woff2 +0 -0
  369. package/dist/css/fonts/Lato-BoldItalic.woff2 +0 -0
  370. package/dist/css/fonts/Lato-Italic.woff2 +0 -0
  371. package/dist/css/fonts/Lato-Regular.woff2 +0 -0
  372. package/dist/css/fonts/OFL.txt +93 -0
  373. package/dist/css/theme.css +109 -0
  374. package/dist/index.d.ts +4 -0
  375. package/dist/index.js +250 -0
  376. package/dist/logo.svg +1 -0
  377. package/dist/styles/styles.css +1 -0
  378. package/package.json +367 -3
@@ -0,0 +1,127 @@
1
+ import { jsx as r, jsxs as l, Fragment as g } from "react/jsx-runtime";
2
+ import { ArrowTopRightOnSquareIcon as p } from "@heroicons/react/24/outline";
3
+ import { H2 as x, H3 as o } from "../../../Components/Typography/Titles.js";
4
+ import { TpdexBadge as N } from "../../../Elements/Tpdex/TpdexBadge.js";
5
+ import { twMerge as d } from "tailwind-merge";
6
+ import { Card as v } from "../../../Components/Cards/Card.js";
7
+ import { SummaryPerformancesChart as y } from "../../../Components/Charts/SummaryPerformancesChart.js";
8
+ import { SummaryRateChart as h } from "../../../Components/Charts/SummaryRateChart.js";
9
+ const S = (e) => /* @__PURE__ */ r("a", { ...e }), m = (e, a) => a ? `${e} (${a})` : e;
10
+ function f({ windowLabel: e, className: a }) {
11
+ return e ? /* @__PURE__ */ l("div", { className: a, children: [
12
+ e,
13
+ " average"
14
+ ] }) : null;
15
+ }
16
+ const n = Object.assign(
17
+ ({ className: e, children: a, ...i }) => /* @__PURE__ */ r(v, { className: d("overflow-hidden relative h-60", e), ...i, children: a }),
18
+ {
19
+ Title: ({ children: e }) => /* @__PURE__ */ r("div", { className: "flex items-start relative z-10", children: e }),
20
+ Link: ({ to: e, linkComponent: a, children: i }) => e === void 0 ? null : /* @__PURE__ */ l(
21
+ a,
22
+ {
23
+ href: e,
24
+ className: "leading-7 text-gray-400 mx-1 font-medium text-xs px-2 whitespace-nowrap z-10 flex items-center gap-1",
25
+ children: [
26
+ /* @__PURE__ */ r(p, { className: "h-3 w-3" }),
27
+ i
28
+ ]
29
+ }
30
+ ),
31
+ Badge: ({ children: e }) => /* @__PURE__ */ r("div", { className: "inline-flex flex-col self-center relative z-10 items-start", children: e }),
32
+ AbsoluteChart: ({ children: e }) => /* @__PURE__ */ r("div", { className: "absolute w-full h-full left-0 top-0", children: e })
33
+ }
34
+ );
35
+ function u({
36
+ rate: e,
37
+ period: a,
38
+ windowLabel: i,
39
+ className: t
40
+ }) {
41
+ return /* @__PURE__ */ r(n.Badge, { children: /* @__PURE__ */ l("div", { className: d("bg-white ring-1 text-lg px-4 py-2 rounded", t), children: [
42
+ e,
43
+ " ",
44
+ /* @__PURE__ */ l("span", { className: "font-light", children: [
45
+ "/",
46
+ a
47
+ ] }),
48
+ /* @__PURE__ */ r(f, { windowLabel: i, className: "text-xs font-normal text-gray-500 text-right" })
49
+ ] }) });
50
+ }
51
+ function T({
52
+ data: e,
53
+ to: a,
54
+ linkComponent: i,
55
+ windowLabel: t
56
+ }) {
57
+ return /* @__PURE__ */ l(n, { children: [
58
+ /* @__PURE__ */ l(n.Title, { children: [
59
+ /* @__PURE__ */ r(o, { children: m("Performances", t) }),
60
+ /* @__PURE__ */ r(n.Link, { to: a, linkComponent: i, children: "details" })
61
+ ] }),
62
+ /* @__PURE__ */ r(n.Badge, { children: /* @__PURE__ */ l("div", { className: "flex flex-col items-center gap-1", children: [
63
+ /* @__PURE__ */ r(N, { score: e.mean, className: "ring-1 ring-white" }),
64
+ /* @__PURE__ */ r(f, { windowLabel: t, className: "text-xs font-normal text-right" })
65
+ ] }) }),
66
+ /* @__PURE__ */ r(n.AbsoluteChart, { children: /* @__PURE__ */ r(y, { data: e.data }) })
67
+ ] });
68
+ }
69
+ function P({
70
+ data: e,
71
+ to: a,
72
+ linkComponent: i,
73
+ windowLabel: t
74
+ }) {
75
+ return /* @__PURE__ */ l(n, { children: [
76
+ /* @__PURE__ */ l(n.Title, { children: [
77
+ /* @__PURE__ */ r(o, { children: m("Transactions", t) }),
78
+ /* @__PURE__ */ r(n.Link, { to: a, linkComponent: i, children: "details" })
79
+ ] }),
80
+ /* @__PURE__ */ r(u, { className: "ring-blue-200", rate: e.rate, period: e.period, windowLabel: t }),
81
+ /* @__PURE__ */ r(n.AbsoluteChart, { children: /* @__PURE__ */ r(h, { data: e.data, color: "--color-chart-transactions" }) })
82
+ ] });
83
+ }
84
+ function A({ data: e, to: a, linkComponent: i, windowLabel: t }) {
85
+ return /* @__PURE__ */ l(n, { children: [
86
+ /* @__PURE__ */ l(n.Title, { children: [
87
+ /* @__PURE__ */ r(o, { children: m("Errors", t) }),
88
+ /* @__PURE__ */ r(n.Link, { to: a, linkComponent: i, children: "details" })
89
+ ] }),
90
+ /* @__PURE__ */ r(u, { className: "ring-danger-200", rate: e.rate, period: e.period, windowLabel: t }),
91
+ /* @__PURE__ */ r(n.AbsoluteChart, { children: /* @__PURE__ */ r(h, { data: e.data, color: "--color-danger-200" }) })
92
+ ] });
93
+ }
94
+ const H = ({
95
+ performance: e,
96
+ transactions: a,
97
+ errors: i,
98
+ links: t = {},
99
+ linkComponent: s = S,
100
+ windowLabel: c
101
+ }) => /* @__PURE__ */ l(g, { children: [
102
+ /* @__PURE__ */ r("div", { className: "flex justify-end my-2", children: /* @__PURE__ */ r(x, { className: "grow", children: "Summary" }) }),
103
+ /* @__PURE__ */ l("div", { className: "grid grid-cols-3 gap-4 mb-8", children: [
104
+ /* @__PURE__ */ r(
105
+ T,
106
+ {
107
+ data: e,
108
+ to: t.performance,
109
+ linkComponent: s,
110
+ windowLabel: c
111
+ }
112
+ ),
113
+ /* @__PURE__ */ r(
114
+ P,
115
+ {
116
+ data: a,
117
+ to: t.transactions,
118
+ linkComponent: s,
119
+ windowLabel: c
120
+ }
121
+ ),
122
+ /* @__PURE__ */ r(A, { data: i, to: t.errors, linkComponent: s, windowLabel: c })
123
+ ] })
124
+ ] });
125
+ export {
126
+ H as SummarySection
127
+ };
@@ -0,0 +1,4 @@
1
+ export { OverviewPage } from "./OverviewPage.js";
2
+ export type { OverviewPageProps, SummarySectionProps, ChartDataPoint, PerformanceData, RateData, } from "./OverviewPage.js";
3
+ export { SummarySection } from "./Sections/SummarySection.js";
4
+ export { HistorySection, type HistorySectionProps } from "./Sections/HistorySection.js";
@@ -0,0 +1,8 @@
1
+ import { OverviewPage as e } from "./OverviewPage.js";
2
+ import { SummarySection as m } from "./Sections/SummarySection.js";
3
+ import { HistorySection as f } from "./Sections/HistorySection.js";
4
+ export {
5
+ f as HistorySection,
6
+ e as OverviewPage,
7
+ m as SummarySection
8
+ };
@@ -0,0 +1,8 @@
1
+ import { type NetworkTopology } from "../../Elements/System/index.js";
2
+ import type { ComponentProps } from "react";
3
+ export interface SystemPageProps extends ComponentProps<"div"> {
4
+ /** Network topology to render in the architecture map. */
5
+ topology: NetworkTopology;
6
+ className?: string;
7
+ }
8
+ export declare function SystemPage({ topology, className, ...props }: SystemPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,16 @@
1
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
2
+ import { Section as m } from "../../Components/Typography/Section.js";
3
+ import { H2 as s } from "../../Components/Typography/Titles.js";
4
+ import { P as n } from "../../Components/Typography/Paragraphs.js";
5
+ import { HeadingLevel as c } from "../../Components/Typography/HeadingLevel.js";
6
+ import { NetworkMap as l } from "../../Elements/System/NetworkMap.js";
7
+ function x({ topology: e, className: o = "", ...t }) {
8
+ return /* @__PURE__ */ r("div", { className: `space-y-6 ${o}`, ...t, children: /* @__PURE__ */ i(m, { children: [
9
+ /* @__PURE__ */ r(s, { children: "System Architecture" }),
10
+ /* @__PURE__ */ r(n, { className: "text-gray-600 mb-6", children: "Network topology showing traffic flow from ingresses through proxies to endpoints." }),
11
+ /* @__PURE__ */ r(c, { level: 2, children: /* @__PURE__ */ r(l, { topology: e }) })
12
+ ] }) });
13
+ }
14
+ export {
15
+ x as SystemPage
16
+ };
@@ -0,0 +1 @@
1
+ export { SystemPage, type SystemPageProps } from "./SystemPage.js";
@@ -0,0 +1,4 @@
1
+ import { SystemPage as o } from "./SystemPage.js";
2
+ export {
3
+ o as SystemPage
4
+ };
@@ -0,0 +1,33 @@
1
+ import { Button } from "../../../../Components/Buttons/index.js";
2
+ import { type HttpBody } from "../../../../Models/Http/body.js";
3
+ import { type ComponentProps } from "react";
4
+ export interface DownloadButtonProps extends Omit<ComponentProps<typeof Button>, "onClick"> {
5
+ /**
6
+ * Data to be downloaded. A `data:` URL is decoded to its bytes, any other string is saved as text and
7
+ * parsed documents as JSON.
8
+ */
9
+ data: HttpBody;
10
+ /**
11
+ * Filename for the download
12
+ */
13
+ filename: string;
14
+ /**
15
+ * MIME type for the download. Defaults to the data URL's own type, else `text/plain` for text and
16
+ * `application/json` for parsed documents.
17
+ */
18
+ mimeType?: string;
19
+ /**
20
+ * Whether to show the download icon
21
+ */
22
+ showIcon?: boolean;
23
+ /**
24
+ * Custom onClick handler (in addition to download)
25
+ */
26
+ onDownload?: () => void;
27
+ }
28
+ /**
29
+ * Button component that handles file downloads
30
+ * Supports text, parsed documents and `data:` URLs, base64 or percent-encoded.
31
+ * A failure is shown as text under the button.
32
+ */
33
+ export declare function DownloadButton({ data, filename, mimeType, showIcon, onDownload, children, variant, size, className, ...props }: DownloadButtonProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,62 @@
1
+ import { jsxs as d, jsx as m } from "react/jsx-runtime";
2
+ import { ArrowDownTrayIcon as x } from "@heroicons/react/24/outline";
3
+ import { stringifyBody as y } from "../../../../Models/Http/body.js";
4
+ import { decodeDataUrl as B } from "../../../../Models/Http/dataUrl.js";
5
+ import { useState as D } from "react";
6
+ import { twMerge as g } from "tailwind-merge";
7
+ import { Button as E } from "../../../../Components/Buttons/Button.js";
8
+ const j = 1e3;
9
+ function L(e, t) {
10
+ if (typeof e != "string")
11
+ return new Blob([y(e)], { type: t ?? "application/json" });
12
+ if (/^data:/i.test(e)) {
13
+ const r = B(e);
14
+ return new Blob([r.bytes], { type: t ?? r.mimeType ?? "text/plain" });
15
+ }
16
+ return new Blob([e], { type: t ?? "text/plain" });
17
+ }
18
+ function M({
19
+ data: e,
20
+ filename: t,
21
+ mimeType: r,
22
+ showIcon: n = !0,
23
+ onDownload: p,
24
+ children: f = "Download",
25
+ variant: u = "primary",
26
+ size: w = "sm",
27
+ className: b,
28
+ ...h
29
+ }) {
30
+ const [l, i] = D();
31
+ return /* @__PURE__ */ d("div", { className: "inline-flex flex-col items-center gap-1", children: [
32
+ /* @__PURE__ */ d(
33
+ E,
34
+ {
35
+ variant: u,
36
+ size: w,
37
+ onClick: () => {
38
+ let c;
39
+ try {
40
+ c = L(e, r);
41
+ } catch (s) {
42
+ i(s instanceof Error ? s.message : "The download failed");
43
+ return;
44
+ }
45
+ i(void 0);
46
+ const a = URL.createObjectURL(c), o = document.createElement("a");
47
+ o.href = a, o.download = t, document.body.appendChild(o), o.click(), document.body.removeChild(o), setTimeout(() => URL.revokeObjectURL(a), j), p?.();
48
+ },
49
+ className: g(n && "flex items-center gap-2", b),
50
+ ...h,
51
+ children: [
52
+ n && /* @__PURE__ */ m(x, { className: "h-4 w-4", "aria-hidden": "true" }),
53
+ f
54
+ ]
55
+ }
56
+ ),
57
+ l && /* @__PURE__ */ m("p", { role: "alert", className: "text-xs text-red-600", children: l })
58
+ ] });
59
+ }
60
+ export {
61
+ M as DownloadButton
62
+ };
@@ -0,0 +1,16 @@
1
+ import type { HttpMessage } from "../../../../Models/Transactions/types.js";
2
+ import { type ComponentProps } from "react";
3
+ export interface TransactionMessageProps extends ComponentProps<"div"> {
4
+ /** Section title, e.g. "Request" or "Response". */
5
+ title: string;
6
+ /** The HTTP message (headers + body) to display. */
7
+ message: HttpMessage;
8
+ /** Default open state for the foldable. */
9
+ defaultOpen?: boolean;
10
+ /** Maximum height for content display. */
11
+ maxContentHeight?: number;
12
+ }
13
+ /**
14
+ * Displays one HTTP message (request or response) — its headers and body — in a foldable section.
15
+ */
16
+ export declare function TransactionMessage({ title, message, defaultOpen, maxContentHeight, className, ...props }: TransactionMessageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,44 @@
1
+ import { jsx as t, jsxs as r } from "react/jsx-runtime";
2
+ import { Subheading as i } from "../../../../Components/Typography/HeadingLevel.js";
3
+ import { Foldable as m } from "../../../../Components/Utilities/Foldable.js";
4
+ import "react";
5
+ import { twMerge as l } from "tailwind-merge";
6
+ import { ContentRenderer as s, isPreviewedBody as h } from "../Utils/ContentRenderer.js";
7
+ import { HeadersDisplay as p } from "../../../../Components/Formatter/HeadersDisplay.js";
8
+ import { contentPaddingClassName as y } from "../../../../Components/Cards/Card.js";
9
+ function j({
10
+ title: d,
11
+ message: e,
12
+ defaultOpen: n = !0,
13
+ maxContentHeight: o = 384,
14
+ className: a,
15
+ ...c
16
+ }) {
17
+ return /* @__PURE__ */ t("div", { className: l(y, a), ...c, children: /* @__PURE__ */ t(m, { title: d, defaultOpen: n && !h(e.body, e.contentType), children: /* @__PURE__ */ r("div", { className: "space-y-4", children: [
18
+ /* @__PURE__ */ r("div", { children: [
19
+ /* @__PURE__ */ t(i, { className: "text-sm font-medium text-gray-900 mb-2", children: "Headers" }),
20
+ /* @__PURE__ */ t("div", { className: "max-h-64 overflow-auto", children: /* @__PURE__ */ t(p, { headers: e.headers }) })
21
+ ] }),
22
+ e.body && /* @__PURE__ */ r("div", { children: [
23
+ /* @__PURE__ */ r("div", { className: "flex items-center justify-between mb-2", children: [
24
+ /* @__PURE__ */ t(i, { className: "text-sm font-medium text-gray-900", children: "Body" }),
25
+ e.size && /* @__PURE__ */ r("span", { className: "text-xs text-gray-500", children: [
26
+ e.size,
27
+ " bytes"
28
+ ] })
29
+ ] }),
30
+ /* @__PURE__ */ t(
31
+ s,
32
+ {
33
+ content: e.body,
34
+ contentType: e.contentType,
35
+ headers: e.headers,
36
+ maxHeight: o
37
+ }
38
+ )
39
+ ] })
40
+ ] }) }) });
41
+ }
42
+ export {
43
+ j as TransactionMessage
44
+ };
@@ -0,0 +1,21 @@
1
+ import type { DetailedTransaction } from "../../../../Models/Transactions/types.js";
2
+ import { type ComponentProps } from "react";
3
+ export interface TransactionMetadataProps extends ComponentProps<"div"> {
4
+ /**
5
+ * Transaction data
6
+ */
7
+ transaction: DetailedTransaction;
8
+ /**
9
+ * Tags to display
10
+ */
11
+ tags?: Record<string, string>;
12
+ /**
13
+ * Default open state for the foldable
14
+ */
15
+ defaultOpen?: boolean;
16
+ }
17
+ /**
18
+ * Component that displays transaction metadata in a foldable section
19
+ * Includes URL, status, timing, client info, and tags
20
+ */
21
+ export declare function TransactionMetadata({ transaction, tags, defaultOpen, className, ...props }: TransactionMetadataProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,127 @@
1
+ import { jsx as e, jsxs as s } from "react/jsx-runtime";
2
+ import { ClipboardDocumentIcon as N, ArrowRightIcon as v } from "@heroicons/react/24/outline";
3
+ import { Foldable as y } from "../../../../Components/Utilities/Foldable.js";
4
+ import { TpdexBadge as a } from "../../../../Elements/Tpdex/TpdexBadge.js";
5
+ import { splitRequestTarget as C } from "../../../../Models/Http/requestTarget.js";
6
+ import "react";
7
+ import { twMerge as T } from "tailwind-merge";
8
+ import { useSuccessToast as S } from "../../../../Components/Toast/ToastContext.js";
9
+ import { RequestMethodBadge as l } from "../../../../Elements/Http/RequestMethodBadge.js";
10
+ import { Button as b } from "../../../../Components/Buttons/Button.js";
11
+ import { ResponseStatusBadge as c } from "../../../../Elements/Http/ResponseStatusBadge.js";
12
+ import { CacheBadge as w } from "../../../../Elements/Http/CacheBadge.js";
13
+ import { Badge as A } from "../../../../Components/Badges/Badge.js";
14
+ import { contentPaddingClassName as R } from "../../../../Components/Cards/Card.js";
15
+ import { CacheIndicator as D } from "../../../../Elements/Http/CacheIndicator.js";
16
+ function H({
17
+ transaction: t,
18
+ tags: d = {},
19
+ defaultOpen: o = !1,
20
+ className: n,
21
+ ...h
22
+ }) {
23
+ const i = S(), x = new Date(t.timestamp).toLocaleString(), p = async (r, m) => {
24
+ try {
25
+ await navigator.clipboard.writeText(r), i("Copied", `${m} copied to clipboard`);
26
+ } catch {
27
+ i("Copy", m);
28
+ }
29
+ }, g = () => {
30
+ const { path: r, query: m } = C(t.url);
31
+ return /* @__PURE__ */ s("span", { className: "font-normal", children: [
32
+ /* @__PURE__ */ e(l, { method: t.method }),
33
+ t.apiName && /* @__PURE__ */ e("span", { className: "inline-flex items-center bg-gray-50 px-1 ml-2 py-0.5 text-xs font-medium text-gray-700 ring-1 ring-inset ring-gray-600/20", children: t.apiName }),
34
+ /* @__PURE__ */ e("span", { className: "text-gray-500 font-mono text-xs ml-1", title: t.url, children: r }),
35
+ m && /* @__PURE__ */ e("span", { className: "text-gray-500 font-mono text-xs", title: t.url, children: m })
36
+ ] });
37
+ }, u = () => /* @__PURE__ */ e("span", { className: "font-normal", children: /* @__PURE__ */ e(c, { statusCode: t.statusCode }) }), f = () => /* @__PURE__ */ s("div", { className: "flex gap-x-1 items-center font-normal", children: [
38
+ /* @__PURE__ */ e(a, { score: t.tpdex, responseTime: t.responseTime }),
39
+ /* @__PURE__ */ s("span", { className: "text-sm", children: [
40
+ t.responseTime,
41
+ "ms"
42
+ ] }),
43
+ /* @__PURE__ */ e(D, { cacheStatus: t.cacheStatus, cached: t.cached, size: "sm" })
44
+ ] });
45
+ return /* @__PURE__ */ e("div", { className: T(R, n), ...h, children: /* @__PURE__ */ e(
46
+ y,
47
+ {
48
+ title: /* @__PURE__ */ s("div", { className: "flex gap-x-1 items-center", children: [
49
+ /* @__PURE__ */ e(g, {}),
50
+ /* @__PURE__ */ e(v, { className: "h-4 w-4 text-gray-400 mx-1" }),
51
+ /* @__PURE__ */ e(u, {}),
52
+ /* @__PURE__ */ e("div", { className: "flex-1" }),
53
+ /* @__PURE__ */ e(f, {})
54
+ ] }),
55
+ defaultOpen: o,
56
+ children: /* @__PURE__ */ s("div", { className: "space-y-4", children: [
57
+ /* @__PURE__ */ s("div", { className: "flex items-center justify-between p-4 bg-gray-50 rounded-md", children: [
58
+ /* @__PURE__ */ s("div", { className: "flex items-center space-x-3", children: [
59
+ /* @__PURE__ */ e(l, { method: t.method }),
60
+ /* @__PURE__ */ e("span", { className: "font-mono text-sm text-gray-900 break-all", children: t.url })
61
+ ] }),
62
+ /* @__PURE__ */ s(
63
+ b,
64
+ {
65
+ variant: "secondary",
66
+ size: "sm",
67
+ onClick: () => p(`${t.method} ${t.url}`, "Transaction URL"),
68
+ className: "flex items-center space-x-1 flex-shrink-0",
69
+ children: [
70
+ /* @__PURE__ */ e(N, { className: "h-4 w-4" }),
71
+ /* @__PURE__ */ e("span", { children: "Copy" })
72
+ ]
73
+ }
74
+ )
75
+ ] }),
76
+ /* @__PURE__ */ s("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4", children: [
77
+ /* @__PURE__ */ s("div", { children: [
78
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Status" }),
79
+ /* @__PURE__ */ e("div", { className: "mt-1", children: /* @__PURE__ */ e(c, { statusCode: t.statusCode }) })
80
+ ] }),
81
+ /* @__PURE__ */ s("div", { children: [
82
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Duration" }),
83
+ /* @__PURE__ */ s("div", { className: "mt-1 text-sm text-gray-900", children: [
84
+ t.responseTime,
85
+ "ms"
86
+ ] })
87
+ ] }),
88
+ /* @__PURE__ */ s("div", { children: [
89
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "TPDEX" }),
90
+ /* @__PURE__ */ e("div", { className: "mt-1", children: /* @__PURE__ */ e(a, { score: t.tpdex, responseTime: t.responseTime, showScore: !0 }) })
91
+ ] }),
92
+ (t.cacheStatus || t.cached) && /* @__PURE__ */ s("div", { children: [
93
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Cache Status" }),
94
+ /* @__PURE__ */ e("div", { className: "mt-1", children: /* @__PURE__ */ e(w, { cacheStatus: t.cacheStatus, cached: t.cached }) })
95
+ ] }),
96
+ /* @__PURE__ */ s("div", { children: [
97
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Client" }),
98
+ /* @__PURE__ */ e("div", { className: "mt-1 text-sm text-gray-900", children: t.client })
99
+ ] }),
100
+ /* @__PURE__ */ s("div", { children: [
101
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Created" }),
102
+ /* @__PURE__ */ e("div", { className: "mt-1 text-sm text-gray-900", children: x })
103
+ ] }),
104
+ t.userAgent && /* @__PURE__ */ s("div", { children: [
105
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "User Agent" }),
106
+ /* @__PURE__ */ e("div", { className: "mt-1 text-sm text-gray-900 font-mono truncate", title: t.userAgent, children: t.userAgent })
107
+ ] })
108
+ ] }),
109
+ t.remoteAddress && /* @__PURE__ */ s("div", { children: [
110
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500", children: "Remote Address" }),
111
+ /* @__PURE__ */ e("div", { className: "mt-1 text-sm text-gray-900 font-mono", children: t.remoteAddress })
112
+ ] }),
113
+ Object.keys(d).length > 0 && /* @__PURE__ */ s("div", { children: [
114
+ /* @__PURE__ */ e("div", { className: "text-sm font-medium text-gray-500 mb-2", children: "Tags" }),
115
+ /* @__PURE__ */ e("div", { className: "flex flex-wrap gap-2", children: Object.entries(d).map(([r, m]) => /* @__PURE__ */ s(A, { color: "blue", children: [
116
+ r,
117
+ "=",
118
+ m
119
+ ] }, r)) })
120
+ ] })
121
+ ] })
122
+ }
123
+ ) });
124
+ }
125
+ export {
126
+ H as TransactionMetadata
127
+ };
@@ -0,0 +1,6 @@
1
+ export { DownloadButton } from "./DownloadButton.js";
2
+ export { TransactionMetadata } from "./TransactionMetadata.js";
3
+ export { TransactionMessage } from "./TransactionMessage.js";
4
+ export type { DownloadButtonProps } from "./DownloadButton.js";
5
+ export type { TransactionMetadataProps } from "./TransactionMetadata.js";
6
+ export type { TransactionMessageProps } from "./TransactionMessage.js";
@@ -0,0 +1,8 @@
1
+ import { DownloadButton as t } from "./DownloadButton.js";
2
+ import { TransactionMetadata as e } from "./TransactionMetadata.js";
3
+ import { TransactionMessage as s } from "./TransactionMessage.js";
4
+ export {
5
+ t as DownloadButton,
6
+ s as TransactionMessage,
7
+ e as TransactionMetadata
8
+ };
@@ -0,0 +1,8 @@
1
+ import type { ComponentProps } from "react";
2
+ import type { DetailedTransaction } from "../../../Models/Transactions/types.js";
3
+ export interface TransactionsDetailPageProps extends ComponentProps<"div"> {
4
+ className?: string;
5
+ /** The detailed transaction to display. */
6
+ transaction: DetailedTransaction;
7
+ }
8
+ export declare function TransactionsDetailPage({ className, transaction, ...props }: TransactionsDetailPageProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsxs as l, Fragment as o, jsx as e } from "react/jsx-runtime";
2
+ import { twMerge as d } from "tailwind-merge";
3
+ import { TransactionMetadata as n } from "./Components/TransactionMetadata.js";
4
+ import { TransactionMessage as t } from "./Components/TransactionMessage.js";
5
+ function g({ className: r, transaction: s, ...a }) {
6
+ const i = /* @__PURE__ */ l(o, { children: [
7
+ /* @__PURE__ */ e(n, { transaction: s, tags: s.tags, defaultOpen: !1 }),
8
+ /* @__PURE__ */ e(t, { title: "Request", message: s.request, defaultOpen: !0 }),
9
+ /* @__PURE__ */ e(t, { title: "Response", message: s.response, defaultOpen: !0 })
10
+ ] });
11
+ return /* @__PURE__ */ e("div", { className: d("h-full", r), ...a, children: /* @__PURE__ */ e("div", { className: "h-full divide-y divide-gray-100 overflow-hidden", children: i }) });
12
+ }
13
+ export {
14
+ g as TransactionsDetailPage
15
+ };
@@ -0,0 +1,15 @@
1
+ export interface BodyPreviewProps {
2
+ /** The whole body, too large to be formatted. */
3
+ body: string;
4
+ /** Name the whole body is saved under. */
5
+ filename: string;
6
+ /** MIME type the whole body is saved as. */
7
+ mimeType?: string;
8
+ /** Maximum height of the body in pixels. */
9
+ maxHeight?: number;
10
+ }
11
+ /**
12
+ * Shows the start of a body too large to format, with the choice of the whole body as plain text
13
+ * or as a download. Only the preview is drawn until the reader asks for more.
14
+ */
15
+ export declare function BodyPreview({ body, filename, mimeType, maxHeight }: BodyPreviewProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,30 @@
1
+ import { jsxs as a, jsx as o, Fragment as p } from "react/jsx-runtime";
2
+ import { BodyNotice as f } from "../../../../Components/Formatter/BodyNotice.js";
3
+ import { formatFileSize as i } from "../../../../Components/Formatter/PerformanceMetrics.js";
4
+ import { PREVIEW_SIZE as d } from "../../../../Components/Formatter/bodyLimits.js";
5
+ import { useState as h } from "react";
6
+ import { DownloadButton as w } from "../Components/DownloadButton.js";
7
+ import { CodeFormatter as x } from "../../../../Components/Formatter/CodeFormatter.js";
8
+ import { Button as u } from "../../../../Components/Buttons/Button.js";
9
+ function I({ body: e, filename: l, mimeType: s, maxHeight: t = 384 }) {
10
+ const [m, c] = h(), r = m === e, n = i(e.length);
11
+ return /* @__PURE__ */ a("div", { className: "overflow-hidden rounded-md border border-gray-200 bg-white", children: [
12
+ /* @__PURE__ */ o(f, { actions: /* @__PURE__ */ a(p, { children: [
13
+ /* @__PURE__ */ o(u, { variant: "secondary", size: "sm", onClick: () => c(r ? void 0 : e), children: r ? "Show preview only" : "Show all" }),
14
+ /* @__PURE__ */ o(w, { data: e, filename: l, mimeType: s, variant: "secondary" })
15
+ ] }), children: r ? `Showing all ${n} as plain text, not reformatted.` : `Showing the first ${i(d)} of ${n}.` }),
16
+ r ? /* @__PURE__ */ o(x, { language: "text", code: e, maxHeight: t, className: "rounded-none border-0" }) : /* @__PURE__ */ o(
17
+ "pre",
18
+ {
19
+ tabIndex: 0,
20
+ "aria-label": "Body preview",
21
+ className: "overflow-auto whitespace-pre-wrap break-all p-3 font-mono text-xs leading-5",
22
+ style: { maxHeight: t },
23
+ children: e.slice(0, d)
24
+ }
25
+ )
26
+ ] });
27
+ }
28
+ export {
29
+ I as BodyPreview
30
+ };
@@ -0,0 +1,28 @@
1
+ import { type HttpBody } from "../../../../Models/Http/body.js";
2
+ import { type HttpHeader } from "../../../../Models/Http/headers.js";
3
+ import type { ContentType } from "../../../../Models/Transactions/types.js";
4
+ export interface ContentRendererProps {
5
+ /**
6
+ * Content to render
7
+ */
8
+ content: HttpBody | undefined;
9
+ /**
10
+ * Content type
11
+ */
12
+ contentType?: ContentType;
13
+ /**
14
+ * Headers associated with the content, looked up by name rather than displayed.
15
+ */
16
+ headers?: HttpHeader[];
17
+ /**
18
+ * Maximum height for code formatter
19
+ */
20
+ maxHeight?: number;
21
+ }
22
+ /** Whether the body is code too large to format, which is shown as a preview. */
23
+ export declare function isPreviewedBody(content: HttpBody | undefined, contentType: ContentType | undefined): boolean;
24
+ /**
25
+ * Utility component that renders different content types appropriately
26
+ * Supports JSON, XML, HTML, text, images, and binary content
27
+ */
28
+ export declare function ContentRenderer({ content, contentType, headers, maxHeight }: ContentRendererProps): import("react/jsx-runtime").JSX.Element;