ydb-embedded-ui 8.26.2 → 9.1.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 (218) hide show
  1. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +1 -1
  2. package/dist/components/Drawer/Drawer.d.ts +1 -1
  3. package/dist/components/Drawer/Drawer.js +11 -4
  4. package/dist/components/Drawer/Drawer.js.map +1 -1
  5. package/dist/components/Drawer/Drawer.scss +6 -1
  6. package/dist/components/EnableFullscreenButton/EnableFullscreenButton.d.ts +3 -1
  7. package/dist/components/EnableFullscreenButton/EnableFullscreenButton.js +2 -2
  8. package/dist/components/EnableFullscreenButton/EnableFullscreenButton.js.map +1 -1
  9. package/dist/components/EntityStatus/EntityStatus.d.ts +2 -1
  10. package/dist/components/EntityStatus/EntityStatus.js +6 -3
  11. package/dist/components/EntityStatus/EntityStatus.js.map +1 -1
  12. package/dist/components/EntityStatusNew/i18n/en.json +1 -1
  13. package/dist/components/JsonViewer/JsonViewer.d.ts +2 -0
  14. package/dist/components/JsonViewer/JsonViewer.js +4 -4
  15. package/dist/components/JsonViewer/JsonViewer.js.map +1 -1
  16. package/dist/components/JsonViewer/JsonViewer.scss +2 -0
  17. package/dist/components/JsonViewer/components/Cell.d.ts +1 -0
  18. package/dist/components/JsonViewer/components/Cell.js +6 -6
  19. package/dist/components/JsonViewer/components/Cell.js.map +1 -1
  20. package/dist/components/JsonViewer/components/FullValueDialog.js +5 -1
  21. package/dist/components/JsonViewer/components/FullValueDialog.js.map +1 -1
  22. package/dist/components/MemoryViewer/MemoryViewer.js +1 -1
  23. package/dist/components/ProgressViewer/ProgressViewer.js +1 -1
  24. package/dist/components/ShortyString/ShortyString.scss +1 -1
  25. package/dist/components/TableWithControlsLayout/TableWithControlsLayout.scss +1 -1
  26. package/dist/components/Tags/Tags.js +2 -1
  27. package/dist/components/Tags/Tags.js.map +1 -1
  28. package/dist/components/VDisk/utils.d.ts +2 -2
  29. package/dist/components/VDisk/utils.js +12 -13
  30. package/dist/components/VDisk/utils.js.map +1 -1
  31. package/dist/components/VDiskInfo/VDiskInfo.js +5 -1
  32. package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
  33. package/dist/components/VDiskPopup/VDiskPopup.js +15 -12
  34. package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
  35. package/dist/containers/AppWithClusters/AppWithClusters.d.ts +1 -5
  36. package/dist/containers/AppWithClusters/AppWithClusters.js +4 -5
  37. package/dist/containers/AppWithClusters/AppWithClusters.js.map +1 -1
  38. package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.d.ts +2 -1
  39. package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js.map +1 -1
  40. package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.d.ts +2 -1
  41. package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.js.map +1 -1
  42. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +3 -3
  43. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +2 -0
  44. package/dist/containers/Cluster/ClusterInfo/components/DiskGroupsStatsBars/DiskGroupsStats.js +3 -3
  45. package/dist/containers/Cluster/ClusterInfo/components/DiskGroupsStatsBars/DiskGroupsStats.js.map +1 -1
  46. package/dist/containers/Cluster/ClusterInfo/components/DiskGroupsStatsBars/DiskGroupsStats.scss +6 -1
  47. package/dist/containers/Cluster/ClusterInfo/utils/utils.js +3 -3
  48. package/dist/containers/Cluster/ClusterInfo/utils/utils.js.map +1 -1
  49. package/dist/containers/Node/Node.js +1 -1
  50. package/dist/containers/Node/Node.js.map +1 -1
  51. package/dist/containers/Operations/constants.js +1 -0
  52. package/dist/containers/Operations/constants.js.map +1 -1
  53. package/dist/containers/Operations/i18n/en.json +1 -0
  54. package/dist/containers/Operations/i18n/index.d.ts +1 -1
  55. package/dist/containers/Operations/useOperationsQueryParams.js +1 -1
  56. package/dist/containers/Operations/useOperationsQueryParams.js.map +1 -1
  57. package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.js +1 -1
  58. package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.js.map +1 -1
  59. package/dist/containers/Tablets/Tablets.d.ts +6 -1
  60. package/dist/containers/Tablets/Tablets.js +4 -3
  61. package/dist/containers/Tablets/Tablets.js.map +1 -1
  62. package/dist/containers/Tenant/Diagnostics/Describe/Describe.d.ts +1 -3
  63. package/dist/containers/Tenant/Diagnostics/Describe/Describe.js +9 -33
  64. package/dist/containers/Tenant/Diagnostics/Describe/Describe.js.map +1 -1
  65. package/dist/containers/Tenant/Diagnostics/Diagnostics.d.ts +2 -1
  66. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +2 -2
  67. package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
  68. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +2 -2
  69. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js +13 -7
  70. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js.map +1 -1
  71. package/dist/containers/Tenant/Diagnostics/Overview/ChangefeedInfo/ChangefeedInfo.d.ts +1 -1
  72. package/dist/containers/Tenant/Diagnostics/Overview/ChangefeedInfo/ChangefeedInfo.js +7 -10
  73. package/dist/containers/Tenant/Diagnostics/Overview/ChangefeedInfo/ChangefeedInfo.js.map +1 -1
  74. package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +8 -32
  75. package/dist/containers/Tenant/Diagnostics/Overview/Overview.js.map +1 -1
  76. package/dist/containers/Tenant/Diagnostics/Overview/TopicInfo/TopicInfo.js +10 -1
  77. package/dist/containers/Tenant/Diagnostics/Overview/TopicInfo/TopicInfo.js.map +1 -1
  78. package/dist/containers/Tenant/Diagnostics/Partitions/PartitionsControls/PartitionsControls.js +1 -1
  79. package/dist/containers/Tenant/Diagnostics/Partitions/PartitionsControls/PartitionsControls.js.map +1 -1
  80. package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js +1 -1
  81. package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js.map +1 -1
  82. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/NotFoundContainer.d.ts +5 -0
  83. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/NotFoundContainer.js +10 -0
  84. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/NotFoundContainer.js.map +1 -0
  85. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetails.d.ts +9 -0
  86. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetails.js +13 -0
  87. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetails.js.map +1 -0
  88. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetails.scss +43 -0
  89. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetailsDrawerContent.d.ts +7 -0
  90. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetailsDrawerContent.js +35 -0
  91. package/dist/containers/Tenant/Diagnostics/TopQueries/QueryDetails/QueryDetailsDrawerContent.js.map +1 -0
  92. package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.d.ts +1 -2
  93. package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js +28 -7
  94. package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js.map +1 -1
  95. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js +5 -25
  96. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js.map +1 -1
  97. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.scss +29 -0
  98. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.d.ts +1 -2
  99. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js +37 -8
  100. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js.map +1 -1
  101. package/dist/containers/Tenant/Diagnostics/TopQueries/hooks/useSetSelectedTopQueryRowFromParams.d.ts +8 -0
  102. package/dist/containers/Tenant/Diagnostics/TopQueries/hooks/useSetSelectedTopQueryRowFromParams.js +33 -0
  103. package/dist/containers/Tenant/Diagnostics/TopQueries/hooks/useSetSelectedTopQueryRowFromParams.js.map +1 -0
  104. package/dist/containers/Tenant/Diagnostics/TopQueries/i18n/en.json +7 -1
  105. package/dist/containers/Tenant/Diagnostics/TopQueries/i18n/index.d.ts +1 -1
  106. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/generateShareableUrl.d.ts +7 -0
  107. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/generateShareableUrl.js +20 -0
  108. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/generateShareableUrl.js.map +1 -0
  109. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/getTopQueryRowQueryParams.d.ts +8 -0
  110. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/getTopQueryRowQueryParams.js +16 -0
  111. package/dist/containers/Tenant/Diagnostics/TopQueries/utils/getTopQueryRowQueryParams.js.map +1 -0
  112. package/dist/containers/Tenant/Diagnostics/TopQueries/utils.d.ts +3 -0
  113. package/dist/containers/Tenant/Diagnostics/TopQueries/utils.js +69 -0
  114. package/dist/containers/Tenant/Diagnostics/TopQueries/utils.js.map +1 -1
  115. package/dist/containers/Tenant/Diagnostics/TopicData/TopicData.js +67 -24
  116. package/dist/containers/Tenant/Diagnostics/TopicData/TopicData.js.map +1 -1
  117. package/dist/containers/Tenant/Diagnostics/TopicData/TopicData.scss +8 -2
  118. package/dist/containers/Tenant/Diagnostics/TopicData/TopicDataControls/TopicDataControls.d.ts +2 -1
  119. package/dist/containers/Tenant/Diagnostics/TopicData/TopicDataControls/TopicDataControls.js +15 -7
  120. package/dist/containers/Tenant/Diagnostics/TopicData/TopicDataControls/TopicDataControls.js.map +1 -1
  121. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.d.ts +7 -0
  122. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js +82 -0
  123. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js.map +1 -0
  124. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.scss +53 -0
  125. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicDataSection.d.ts +8 -0
  126. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicDataSection.js +7 -0
  127. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicDataSection.js.map +1 -0
  128. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessage.d.ts +7 -0
  129. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessage.js +65 -0
  130. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessage.js.map +1 -0
  131. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageGeneralInfo.d.ts +6 -0
  132. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageGeneralInfo.js +39 -0
  133. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageGeneralInfo.js.map +1 -0
  134. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageMetadata.d.ts +6 -0
  135. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageMetadata.js +9 -0
  136. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageMetadata.js.map +1 -0
  137. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/fields.d.ts +10 -0
  138. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/fields.js +67 -0
  139. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/fields.js.map +1 -0
  140. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/shared.d.ts +2 -0
  141. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/shared.js +4 -0
  142. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/shared.js.map +1 -0
  143. package/dist/containers/Tenant/Diagnostics/TopicData/__test__/getData.test.js +116 -42
  144. package/dist/containers/Tenant/Diagnostics/TopicData/__test__/getData.test.js.map +1 -1
  145. package/dist/containers/Tenant/Diagnostics/TopicData/columns/Columns.scss +25 -4
  146. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.d.ts +16 -0
  147. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js +153 -117
  148. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js.map +1 -1
  149. package/dist/containers/Tenant/Diagnostics/TopicData/getData.d.ts +6 -4
  150. package/dist/containers/Tenant/Diagnostics/TopicData/getData.js +30 -15
  151. package/dist/containers/Tenant/Diagnostics/TopicData/getData.js.map +1 -1
  152. package/dist/containers/Tenant/Diagnostics/TopicData/i18n/en.json +10 -2
  153. package/dist/containers/Tenant/Diagnostics/TopicData/i18n/index.d.ts +1 -1
  154. package/dist/containers/Tenant/Diagnostics/TopicData/useTopicDataQueryParams.d.ts +2 -0
  155. package/dist/containers/Tenant/Diagnostics/TopicData/useTopicDataQueryParams.js +7 -1
  156. package/dist/containers/Tenant/Diagnostics/TopicData/useTopicDataQueryParams.js.map +1 -1
  157. package/dist/containers/Tenant/Diagnostics/TopicData/utils/constants.js +3 -0
  158. package/dist/containers/Tenant/Diagnostics/TopicData/utils/constants.js.map +1 -1
  159. package/dist/containers/Tenant/Diagnostics/TopicData/utils/types.d.ts +1 -0
  160. package/dist/containers/Tenant/Diagnostics/TopicData/utils/types.js +1 -0
  161. package/dist/containers/Tenant/Diagnostics/TopicData/utils/types.js.map +1 -1
  162. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.d.ts +2 -1
  163. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +2 -2
  164. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js.map +1 -1
  165. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +1 -1
  166. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
  167. package/dist/containers/Tenant/Tenant.js +1 -1
  168. package/dist/containers/Tenant/Tenant.js.map +1 -1
  169. package/dist/containers/Tenant/TenantPages.d.ts +1 -0
  170. package/dist/containers/Tenant/TenantPages.js.map +1 -1
  171. package/dist/containers/Tenant/utils/schema.d.ts +0 -1
  172. package/dist/containers/Tenant/utils/schema.js +2 -22
  173. package/dist/containers/Tenant/utils/schema.js.map +1 -1
  174. package/dist/containers/Tenants/Tenants.js +1 -1
  175. package/dist/containers/Tenants/Tenants.js.map +1 -1
  176. package/dist/containers/VDiskPage/VDiskPage.js +19 -3
  177. package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
  178. package/dist/routes.d.ts +9 -1
  179. package/dist/routes.js +2 -2
  180. package/dist/routes.js.map +1 -1
  181. package/dist/services/api/viewer.d.ts +2 -5
  182. package/dist/services/api/viewer.js +2 -1
  183. package/dist/services/api/viewer.js.map +1 -1
  184. package/dist/store/reducers/capabilities/hooks.js +1 -1
  185. package/dist/store/reducers/overview/overview.d.ts +0 -36
  186. package/dist/store/reducers/overview/overview.js +0 -55
  187. package/dist/store/reducers/overview/overview.js.map +1 -1
  188. package/dist/store/reducers/partitions/types.d.ts +1 -1
  189. package/dist/store/reducers/storage/prepareGroupsDisks.js +6 -0
  190. package/dist/store/reducers/storage/prepareGroupsDisks.js.map +1 -1
  191. package/dist/store/reducers/topic.d.ts +1 -1
  192. package/dist/store/reducers/topic.js +1 -1
  193. package/dist/store/reducers/topic.js.map +1 -1
  194. package/dist/store/state-url-mapping.d.ts +1 -0
  195. package/dist/store/state-url-mapping.js +1 -0
  196. package/dist/store/state-url-mapping.js.map +1 -1
  197. package/dist/types/api/operations.d.ts +1 -1
  198. package/dist/types/api/topic.d.ts +1 -0
  199. package/dist/types/store/tablets.d.ts +1 -0
  200. package/dist/uiFactory/types.d.ts +5 -0
  201. package/dist/uiFactory/uiFactory.js +5 -1
  202. package/dist/uiFactory/uiFactory.js.map +1 -1
  203. package/dist/utils/disks/__test__/prepareDisks.test.js +2 -2
  204. package/dist/utils/disks/prepareDisks.js +2 -2
  205. package/dist/utils/downloadFile.d.ts +1 -0
  206. package/dist/utils/downloadFile.js +8 -4
  207. package/dist/utils/downloadFile.js.map +1 -1
  208. package/dist/utils/logs.d.ts +1 -3
  209. package/dist/utils/logs.js +1 -23
  210. package/dist/utils/logs.js.map +1 -1
  211. package/dist/utils/monitoring.d.ts +0 -5
  212. package/dist/utils/utils.d.ts +1 -0
  213. package/dist/utils/utils.js +1 -1
  214. package/dist/utils/utils.js.map +1 -1
  215. package/package.json +1 -1
  216. package/dist/utils/__test__/logs.test.d.ts +0 -1
  217. package/dist/utils/__test__/logs.test.js +0 -36
  218. package/dist/utils/__test__/logs.test.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { DefinitionList, Flex } from '@gravity-ui/uikit';
3
+ import { formatTimestamp } from '../../../../../../utils/dataFormatters/dataFormatters';
4
+ import { TOPIC_DATA_COLUMNS_IDS } from '../../utils/types';
5
+ import { b } from '../shared';
6
+ import { fields } from './fields';
7
+ const dataGroups = [
8
+ [
9
+ { name: TOPIC_DATA_COLUMNS_IDS.PARTITION },
10
+ { name: TOPIC_DATA_COLUMNS_IDS.OFFSET },
11
+ { name: TOPIC_DATA_COLUMNS_IDS.SIZE },
12
+ ],
13
+ [
14
+ {
15
+ name: TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_CREATE,
16
+ copy: (row) => formatTimestamp(row.CreateTimestamp),
17
+ },
18
+ {
19
+ name: TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_WRITE,
20
+ copy: (row) => formatTimestamp(row.WriteTimestamp),
21
+ },
22
+ { name: TOPIC_DATA_COLUMNS_IDS.TS_DIFF },
23
+ ],
24
+ [
25
+ { name: TOPIC_DATA_COLUMNS_IDS.ORIGINAL_SIZE },
26
+ { name: TOPIC_DATA_COLUMNS_IDS.CODEC },
27
+ { name: TOPIC_DATA_COLUMNS_IDS.PRODUCERID, copy: (row) => row.ProducerId },
28
+ { name: TOPIC_DATA_COLUMNS_IDS.SEQNO, copy: (row) => row.SeqNo },
29
+ ],
30
+ ];
31
+ export function TopicMessageGeneralInfo({ messageData }) {
32
+ return (_jsx(Flex, { direction: "column", gap: 3, className: b('details'), children: dataGroups.map((group, index) => (_jsx(DefinitionList, { className: b('list'), nameMaxWidth: 200, children: group.map((item) => {
33
+ var _a, _b;
34
+ const column = fields.find((f) => f.name === item.name);
35
+ const copyText = (_a = item.copy) === null || _a === void 0 ? void 0 : _a.call(item, messageData);
36
+ return (_jsx(DefinitionList.Item, { name: column === null || column === void 0 ? void 0 : column.header, copyText: copyText, children: (_b = column === null || column === void 0 ? void 0 : column.render) === null || _b === void 0 ? void 0 : _b.call(column, { row: messageData }) }, item.name));
37
+ }) }, index))) }));
38
+ }
39
+ //# sourceMappingURL=TopicMessageGeneralInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TopicMessageGeneralInfo.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageGeneralInfo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,cAAc,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAIvD,OAAO,EAAC,eAAe,EAAC,MAAM,uDAAuD,CAAC;AACtF,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,CAAC,EAAC,MAAM,WAAW,CAAC;AAE5B,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAEhC,MAAM,UAAU,GAGR;IACJ;QACI,EAAC,IAAI,EAAE,sBAAsB,CAAC,SAAS,EAAC;QACxC,EAAC,IAAI,EAAE,sBAAsB,CAAC,MAAM,EAAC;QACrC,EAAC,IAAI,EAAE,sBAAsB,CAAC,IAAI,EAAC;KACtC;IACD;QACI;YACI,IAAI,EAAE,sBAAsB,CAAC,gBAAgB;YAC7C,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC;SACtD;QACD;YACI,IAAI,EAAE,sBAAsB,CAAC,eAAe;YAC5C,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC;SACrD;QACD,EAAC,IAAI,EAAE,sBAAsB,CAAC,OAAO,EAAC;KACzC;IACD;QACI,EAAC,IAAI,EAAE,sBAAsB,CAAC,aAAa,EAAC;QAC5C,EAAC,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAC;QACpC,EAAC,IAAI,EAAE,sBAAsB,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAC;QACxE,EAAC,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,EAAC;KACjE;CACJ,CAAC;AAMF,MAAM,UAAU,uBAAuB,CAAC,EAAC,WAAW,EAA+B;IAC/E,OAAO,CACH,KAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YACnD,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAC9B,KAAC,cAAc,IAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,YAClD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;;gBAChB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,IAAI,qDAAG,WAAW,CAAC,CAAC;gBAC1C,OAAO,CACH,KAAC,cAAc,CAAC,IAAI,IAEhB,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,EACpB,QAAQ,EAAE,QAAQ,YAEjB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,uDAAG,EAAC,GAAG,EAAE,WAAW,EAAC,CAAC,IAJhC,IAAI,CAAC,IAAI,CAKI,CACzB,CAAC;YACN,CAAC,CAAC,IAbwD,KAAK,CAclD,CACpB,CAAC,GACC,CACV,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { TopicMessageMetadataItem } from '../../../../../../types/api/topic';
2
+ interface TopicMessageMetadataProps {
3
+ data: TopicMessageMetadataItem[];
4
+ }
5
+ export declare function TopicMessageMetadata({ data }: TopicMessageMetadataProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { DefinitionList } from '@gravity-ui/uikit';
3
+ import i18n from '../../i18n';
4
+ import { b } from '../shared';
5
+ import { TopicDataSection } from './TopicDataSection';
6
+ export function TopicMessageMetadata({ data }) {
7
+ return (_jsx(TopicDataSection, { title: i18n('label_metadata'), children: _jsx(DefinitionList, { nameMaxWidth: 200, className: b('message-meta'), children: data.map((item) => (_jsx(DefinitionList.Item, { name: item.Key, copyText: item.Value, children: item.Value }, item.Key))) }) }));
8
+ }
9
+ //# sourceMappingURL=TopicMessageMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TopicMessageMetadata.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/TopicMessageMetadata.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAGjD,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAC,CAAC,EAAC,MAAM,WAAW,CAAC;AAE5B,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAMpD,MAAM,UAAU,oBAAoB,CAAC,EAAC,IAAI,EAA4B;IAClE,OAAO,CACH,KAAC,gBAAgB,IAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAC3C,KAAC,cAAc,IAAC,YAAY,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,cAAc,CAAC,YAC1D,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAChB,KAAC,cAAc,CAAC,IAAI,IAAgB,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,YACnE,IAAI,CAAC,KAAK,IADW,IAAI,CAAC,GAAG,CAEZ,CACzB,CAAC,GACW,GACF,CACtB,CAAC;AACN,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { TopicMessageEnhanced } from '../../../../../../types/api/topic';
2
+ type TopicMessageDetailsField = {
3
+ name: string;
4
+ header?: React.ReactNode;
5
+ render: (props: {
6
+ row: TopicMessageEnhanced;
7
+ }) => React.ReactNode;
8
+ };
9
+ export declare const fields: TopicMessageDetailsField[];
10
+ export {};
@@ -0,0 +1,67 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { isNil } from 'lodash';
3
+ import { EMPTY_DATA_PLACEHOLDER } from '../../../../../../utils/constants';
4
+ import { TopicDataTimestamp, codecColumn, messageColumn, metadataColumn, originalSizeColumn, sizeColumn, tsDiffColumn, } from '../../columns/columns';
5
+ import { useTopicDataQueryParams } from '../../useTopicDataQueryParams';
6
+ import { TOPIC_DATA_COLUMNS_TITLES } from '../../utils/constants';
7
+ import { TOPIC_DATA_COLUMNS_IDS } from '../../utils/types';
8
+ function valueOrPlaceholder(value, placeholder = EMPTY_DATA_PLACEHOLDER) {
9
+ return isNil(value) ? placeholder : value;
10
+ }
11
+ const partitionColumn = {
12
+ name: TOPIC_DATA_COLUMNS_IDS.PARTITION,
13
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.PARTITION],
14
+ render: () => {
15
+ return _jsx(PartitionId, {});
16
+ },
17
+ };
18
+ const offsetColumn = {
19
+ name: TOPIC_DATA_COLUMNS_IDS.OFFSET,
20
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.OFFSET],
21
+ render: ({ row }) => {
22
+ return valueOrPlaceholder(row.Offset);
23
+ },
24
+ };
25
+ const timestampCreateColumn = {
26
+ name: TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_CREATE,
27
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_CREATE],
28
+ render: ({ row }) => _jsx(TopicDataTimestamp, { timestamp: row.CreateTimestamp }),
29
+ };
30
+ const timestampWriteColumn = {
31
+ name: TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_WRITE,
32
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.TIMESTAMP_WRITE],
33
+ render: ({ row }) => _jsx(TopicDataTimestamp, { timestamp: row.WriteTimestamp }),
34
+ };
35
+ const producerIdColumn = {
36
+ name: TOPIC_DATA_COLUMNS_IDS.PRODUCERID,
37
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.PRODUCERID],
38
+ render: ({ row }) => {
39
+ return valueOrPlaceholder(row.ProducerId);
40
+ },
41
+ };
42
+ const seqNoColumn = {
43
+ name: TOPIC_DATA_COLUMNS_IDS.SEQNO,
44
+ header: TOPIC_DATA_COLUMNS_TITLES[TOPIC_DATA_COLUMNS_IDS.SEQNO],
45
+ render: ({ row }) => {
46
+ return valueOrPlaceholder(row.SeqNo);
47
+ },
48
+ };
49
+ function PartitionId() {
50
+ const { selectedPartition } = useTopicDataQueryParams();
51
+ return selectedPartition;
52
+ }
53
+ export const fields = [
54
+ partitionColumn,
55
+ offsetColumn,
56
+ timestampCreateColumn,
57
+ timestampWriteColumn,
58
+ tsDiffColumn,
59
+ metadataColumn,
60
+ messageColumn,
61
+ sizeColumn,
62
+ originalSizeColumn,
63
+ codecColumn,
64
+ producerIdColumn,
65
+ seqNoColumn,
66
+ ];
67
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/components/fields.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const b: import("@bem-react/classname").ClassNameFormatter;
2
+ export declare const MESSAGE_SIZE_LIMIT = 10000000;
@@ -0,0 +1,4 @@
1
+ import { cn } from '../../../../../utils/cn';
2
+ export const b = cn('ydb-diagnostics-message-details');
3
+ export const MESSAGE_SIZE_LIMIT = 10000000;
4
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,iCAAiC,CAAC,CAAC;AAEvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAU,CAAC"}
@@ -1,23 +1,7 @@
1
1
  import { prepareResponse } from '../getData';
2
2
  import { TOPIC_DATA_FETCH_LIMIT } from '../utils/constants';
3
3
  describe('prepareResponse', () => {
4
- // Test case 1: Normal case with no removed messages
5
- test('should handle case with no removed messages', () => {
6
- const response = {
7
- StartOffset: '100',
8
- EndOffset: '120',
9
- Messages: [{ Offset: '100' }, { Offset: '101' }, { Offset: '102' }],
10
- };
11
- const result = prepareResponse(response, 100);
12
- expect(result.start).toBe(100);
13
- expect(result.end).toBe(120);
14
- expect(result.messages.length).toBe(3);
15
- expect(result.messages[0]).toEqual({ Offset: '100' });
16
- expect(result.messages[1]).toEqual({ Offset: '101' });
17
- expect(result.messages[2]).toEqual({ Offset: '102' });
18
- });
19
- // Test case 2: Case with some removed messages
20
- test('should handle case with some removed messages', () => {
4
+ test('should handle case with some notLoaded messages', () => {
21
5
  const response = {
22
6
  StartOffset: '105',
23
7
  EndOffset: '120',
@@ -26,20 +10,19 @@ describe('prepareResponse', () => {
26
10
  const result = prepareResponse(response, 100);
27
11
  expect(result.start).toBe(105);
28
12
  expect(result.end).toBe(120);
29
- expect(result.messages.length).toBe(8); // 5 removed + 3 actual
30
- // Check removed messages
31
- expect(result.messages[0]).toEqual({ Offset: '100', removed: true });
32
- expect(result.messages[1]).toEqual({ Offset: '101', removed: true });
33
- expect(result.messages[2]).toEqual({ Offset: '102', removed: true });
34
- expect(result.messages[3]).toEqual({ Offset: '103', removed: true });
35
- expect(result.messages[4]).toEqual({ Offset: '104', removed: true });
36
- // Check actual messages
13
+ expect(result.messages.length).toBe(20);
14
+ expect(result.messages[0]).toEqual({ Offset: 100, removed: true });
15
+ expect(result.messages[1]).toEqual({ Offset: 101, removed: true });
16
+ expect(result.messages[2]).toEqual({ Offset: 102, removed: true });
17
+ expect(result.messages[3]).toEqual({ Offset: 103, removed: true });
18
+ expect(result.messages[4]).toEqual({ Offset: 104, removed: true });
37
19
  expect(result.messages[5]).toEqual({ Offset: '105' });
38
20
  expect(result.messages[6]).toEqual({ Offset: '106' });
39
21
  expect(result.messages[7]).toEqual({ Offset: '107' });
22
+ expect(result.messages[8]).toEqual({ Offset: 108, notLoaded: true });
23
+ expect(result.messages[19]).toEqual({ Offset: 119, notLoaded: true });
40
24
  });
41
- // Test case 3: Case with more removed messages than the limit
42
- test('should handle case with more removed messages than the limit', () => {
25
+ test('should handle case with more notLoaded messages than the limit', () => {
43
26
  const response = {
44
27
  StartOffset: '150',
45
28
  EndOffset: '170',
@@ -51,10 +34,9 @@ describe('prepareResponse', () => {
51
34
  expect(result.messages.length).toBe(TOPIC_DATA_FETCH_LIMIT); // Limited by TOPIC_DATA_FETCH_LIMIT
52
35
  // All messages should be "removed" placeholders since there are more than the limit
53
36
  for (let i = 0; i < TOPIC_DATA_FETCH_LIMIT; i++) {
54
- expect(result.messages[i]).toEqual({ Offset: `${100 + i}`, removed: true });
37
+ expect(result.messages[i]).toEqual({ Offset: 100 + i, removed: true });
55
38
  }
56
39
  });
57
- // Test case 4: Case with non-numeric offsets
58
40
  test('should handle case with non-numeric offsets', () => {
59
41
  const response = {
60
42
  StartOffset: 'not-a-number',
@@ -65,29 +47,28 @@ describe('prepareResponse', () => {
65
47
  // safeParseNumber should return 0 for non-numeric values
66
48
  expect(result.start).toBe(0);
67
49
  expect(result.end).toBe(0);
68
- // Since start (0) < offset (100), removedMessagesCount is negative
69
- // No removed messages should be added
70
- expect(result.messages.length).toBe(2);
71
- expect(result.messages[0]).toEqual({ Offset: '100' });
72
- expect(result.messages[1]).toEqual({ Offset: '101' });
50
+ // Since end (0) <= offset (100), no messages should be processed
51
+ expect(result.messages.length).toBe(0);
73
52
  });
74
- // Test case 5: Case with empty Messages array
75
53
  test('should handle case with empty Messages array', () => {
76
54
  const response = {
77
55
  StartOffset: '100',
78
- EndOffset: '100',
56
+ EndOffset: '120',
79
57
  Messages: [],
80
58
  };
81
59
  const result = prepareResponse(response, 100);
82
60
  expect(result.start).toBe(100);
83
- expect(result.end).toBe(100);
84
- expect(result.messages.length).toBe(0);
61
+ expect(result.end).toBe(120);
62
+ // Should have placeholders for all offsets in range
63
+ expect(result.messages.length).toBe(TOPIC_DATA_FETCH_LIMIT);
64
+ // All should be marked as notLoaded
65
+ expect(result.messages[0]).toEqual({ Offset: 100, notLoaded: true });
66
+ expect(result.messages[19]).toEqual({ Offset: 119, notLoaded: true });
85
67
  });
86
- // Test case 6: Case with more messages than the limit
87
68
  test('should handle case with more messages than the limit', () => {
88
69
  // Create an array of 30 messages (more than TOPIC_DATA_FETCH_LIMIT)
89
70
  const messages = [];
90
- for (let i = 0; i < TOPIC_DATA_FETCH_LIMIT + 1; i++) {
71
+ for (let i = 0; i < TOPIC_DATA_FETCH_LIMIT + 10; i++) {
91
72
  messages.push({ Offset: `${100 + i}` });
92
73
  }
93
74
  const response = {
@@ -105,8 +86,7 @@ describe('prepareResponse', () => {
105
86
  expect(result.messages[1]).toEqual({ Offset: '101' });
106
87
  expect(result.messages[2]).toEqual({ Offset: '102' });
107
88
  });
108
- // Test case 7: Case with both removed messages and actual messages within limit
109
- test('should handle case with both removed and actual messages within limit', () => {
89
+ test('should handle case with both notLoaded and actual messages within limit', () => {
110
90
  const response = {
111
91
  StartOffset: '110',
112
92
  EndOffset: '130',
@@ -117,6 +97,100 @@ describe('prepareResponse', () => {
117
97
  expect(result.end).toBe(130);
118
98
  // 10 removed + 10 actual = 20 (TOPIC_DATA_FETCH_LIMIT)
119
99
  expect(result.messages.length).toBe(TOPIC_DATA_FETCH_LIMIT);
100
+ // Check first 10 messages are marked as removed
101
+ for (let i = 0; i < 10; i++) {
102
+ expect(result.messages[i]).toEqual({ Offset: 100 + i, removed: true });
103
+ }
104
+ // Check next 10 messages are actual messages
105
+ for (let i = 0; i < 10; i++) {
106
+ expect(result.messages[i + 10]).toEqual({ Offset: `${110 + i}` });
107
+ }
108
+ });
109
+ test('should handle case with gaps in message offsets', () => {
110
+ const response = {
111
+ StartOffset: '100',
112
+ EndOffset: '110',
113
+ Messages: [
114
+ { Offset: '100' },
115
+ { Offset: '102' },
116
+ { Offset: '105' },
117
+ { Offset: '109' },
118
+ ],
119
+ };
120
+ const result = prepareResponse(response, 100);
121
+ expect(result.start).toBe(100);
122
+ expect(result.end).toBe(110);
123
+ expect(result.messages.length).toBe(10);
124
+ // Check actual messages
125
+ expect(result.messages[0]).toEqual({ Offset: '100' });
126
+ expect(result.messages[2]).toEqual({ Offset: '102' });
127
+ expect(result.messages[5]).toEqual({ Offset: '105' });
128
+ expect(result.messages[9]).toEqual({ Offset: '109' });
129
+ // Check notLoaded messages (gaps)
130
+ expect(result.messages[1]).toEqual({ Offset: 101, notLoaded: true });
131
+ expect(result.messages[3]).toEqual({ Offset: 103, notLoaded: true });
132
+ expect(result.messages[4]).toEqual({ Offset: 104, notLoaded: true });
133
+ expect(result.messages[6]).toEqual({ Offset: 106, notLoaded: true });
134
+ expect(result.messages[7]).toEqual({ Offset: 107, notLoaded: true });
135
+ expect(result.messages[8]).toEqual({ Offset: 108, notLoaded: true });
136
+ });
137
+ test('should handle case with offset greater than EndOffset', () => {
138
+ const response = {
139
+ StartOffset: '100',
140
+ EndOffset: '110',
141
+ Messages: [{ Offset: '100' }, { Offset: '101' }, { Offset: '102' }],
142
+ };
143
+ const result = prepareResponse(response, 115);
144
+ expect(result.start).toBe(100);
145
+ expect(result.end).toBe(110);
146
+ // Since offset > end, no messages should be processed
147
+ expect(result.messages.length).toBe(0);
148
+ });
149
+ test('should handle case with offset equal to EndOffset', () => {
150
+ const response = {
151
+ StartOffset: '100',
152
+ EndOffset: '110',
153
+ Messages: [{ Offset: '100' }, { Offset: '101' }, { Offset: '102' }],
154
+ };
155
+ const result = prepareResponse(response, 110);
156
+ expect(result.start).toBe(100);
157
+ expect(result.end).toBe(110);
158
+ // Since offset = end, no messages should be processed
159
+ expect(result.messages.length).toBe(0);
160
+ });
161
+ test('should handle case with undefined Messages', () => {
162
+ const response = {
163
+ StartOffset: '100',
164
+ EndOffset: '110',
165
+ // Messages is undefined
166
+ };
167
+ const result = prepareResponse(response, 100);
168
+ expect(result.start).toBe(100);
169
+ expect(result.end).toBe(110);
170
+ // Should have placeholders for all offsets in range
171
+ expect(result.messages.length).toBe(10);
172
+ // All should be marked as notLoaded
173
+ for (let i = 0; i < 10; i++) {
174
+ expect(result.messages[i]).toEqual({ Offset: 100 + i, notLoaded: true });
175
+ }
176
+ });
177
+ test('should handle zero StartOffset and EndOffset', () => {
178
+ const response = {
179
+ StartOffset: '0',
180
+ EndOffset: '10',
181
+ Messages: [{ Offset: '0' }, { Offset: '1' }, { Offset: '2' }],
182
+ };
183
+ const result = prepareResponse(response, 0);
184
+ expect(result.start).toBe(0);
185
+ expect(result.end).toBe(10);
186
+ // Since offset equals start, only actual messages should be returned
187
+ expect(result.messages.length).toBe(10);
188
+ // Check if the function correctly handles zero offsets
189
+ expect(result.messages[0]).toEqual({ Offset: '0' });
190
+ expect(result.messages[1]).toEqual({ Offset: '1' });
191
+ expect(result.messages[2]).toEqual({ Offset: '2' });
192
+ expect(result.messages[3]).toEqual({ Offset: 3, notLoaded: true });
193
+ expect(result.messages[9]).toEqual({ Offset: 9, notLoaded: true });
120
194
  });
121
195
  });
122
196
  //# sourceMappingURL=getData.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getData.test.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TopicData/__test__/getData.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getData.test.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TopicData/__test__/getData.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
- .ydb-diagnostics-topic-data-columns {
2
- &__timestamp-ms {
3
- color: var(--g-color-text-secondary);
4
- }
1
+ @use '../../../../../styles/mixins.scss';
5
2
 
3
+ .ydb-diagnostics-topic-data-columns {
6
4
  &__ts-diff_danger {
7
5
  color: var(--g-color-text-danger);
8
6
  }
@@ -11,7 +9,24 @@
11
9
 
12
10
  color: var(--g-color-text-info);
13
11
  }
12
+ &__offset {
13
+ display: inline-flex;
14
+ align-items: center;
15
+ gap: var(--g-spacing-1);
16
+ .g-help-mark,
17
+ .g-help-mark__button {
18
+ display: flex;
19
+ }
20
+ }
21
+ &__offset {
22
+ width: 100%;
23
+ height: 100%;
24
+ }
25
+ &__offset_link {
26
+ @extend .link;
27
+ }
14
28
  &__offset_removed {
29
+ cursor: not-allowed;
15
30
  text-decoration: line-through;
16
31
  }
17
32
 
@@ -19,4 +34,10 @@
19
34
  &__truncated {
20
35
  font-style: italic;
21
36
  }
37
+ &__help {
38
+ white-space: pre-wrap;
39
+ }
40
+ &__help-popover {
41
+ display: flex;
42
+ }
22
43
  }
@@ -2,6 +2,22 @@ import type { Column } from '../../../../../components/PaginatedTable';
2
2
  import type { TopicMessageEnhanced } from '../../../../../types/api/topic';
3
3
  import type { TopicDataColumnId } from '../utils/types';
4
4
  import './Columns.scss';
5
+ export declare const offsetColumn: Column<TopicMessageEnhanced>;
6
+ export declare const timestampCreateColumn: Column<TopicMessageEnhanced>;
7
+ export declare const timestampWriteColumn: Column<TopicMessageEnhanced>;
8
+ export declare const tsDiffColumn: Column<TopicMessageEnhanced>;
9
+ export declare const metadataColumn: Column<TopicMessageEnhanced>;
10
+ export declare const messageColumn: Column<TopicMessageEnhanced>;
11
+ export declare const sizeColumn: Column<TopicMessageEnhanced>;
12
+ export declare const originalSizeColumn: Column<TopicMessageEnhanced>;
13
+ export declare const codecColumn: Column<TopicMessageEnhanced>;
14
+ export declare const producerIdColumn: Column<TopicMessageEnhanced>;
15
+ export declare const seqNoColumn: Column<TopicMessageEnhanced>;
5
16
  export declare function getAllColumns(): Column<TopicMessageEnhanced>[];
6
17
  export declare const DEFAULT_TOPIC_DATA_COLUMNS: TopicDataColumnId[];
7
18
  export declare const REQUIRED_TOPIC_DATA_COLUMNS: TopicDataColumnId[];
19
+ interface TopicDataTimestampProps {
20
+ timestamp?: string;
21
+ }
22
+ export declare function TopicDataTimestamp({ timestamp }: TopicDataTimestampProps): "—" | import("react/jsx-runtime").JSX.Element;
23
+ export {};