UNPKG

@skbkontur/cassandra-distributed-task-queue-ui

Version:

.NET library implementing distributed task queue machinery using Apache Cassandra

41 lines 3.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TaskDetailsMetaTable = void 0; const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const edi_ui_1 = require("@skbkontur/edi-ui"); const react_ui_1 = require("@skbkontur/react-ui"); const react_1 = tslib_1.__importDefault(require("react")); const CustomSettingsContext_1 = require("../../CustomSettingsContext"); const ConvertTimeUtil_1 = require("../../Domain/Utils/ConvertTimeUtil"); const RouterLink_1 = require("../RouterLink/RouterLink"); const TaskDetailsMetaTable_styles_1 = require("./TaskDetailsMetaTable.styles"); const TaskDetailsMetaTable = ({ taskMeta: { attempts, executionDurationTicks, expirationModificationTicks, expirationTimestampTicks, finishExecutingTicks, id, lastModificationTicks, minimalStartTicks, name, parentTaskId, startExecutingTicks, state, ticks, }, childTaskIds, }) => { const theme = react_1.default.useContext(react_ui_1.ThemeContext); const { customStateCaptions, hideMissingMeta } = CustomSettingsContext_1.useCustomSettings(); const renderDate = (date) => jsx_runtime_1.jsx(edi_ui_1.Timestamp, { value: date }, void 0); const renderRow = (name, value, render) => value || !hideMissingMeta ? (jsx_runtime_1.jsxs("tr", { children: [jsx_runtime_1.jsx("td", { children: name }, void 0), jsx_runtime_1.jsx("td", Object.assign({ "data-tid": name }, { children: render ? render(value) : value }), void 0)] }, name)) : null; const renderMetaInfo = () => { const executionTime = ConvertTimeUtil_1.ticksToMilliseconds(executionDurationTicks); return [ renderRow("TaskId", id, id => jsx_runtime_1.jsx(edi_ui_1.AllowCopyToClipboard, { children: id }, void 0)), renderRow("State", customStateCaptions[state]), renderRow("Name", name), renderRow("EnqueueTime", ticks, renderDate), renderRow("StartExecutingTime", startExecutingTicks, renderDate), renderRow("FinishExecutingTime", finishExecutingTicks, renderDate), renderRow("LastExecutionDurationInMs", executionTime, executionTime => executionTime || "unknown"), renderRow("MinimalStartTime", minimalStartTicks, renderDate), renderRow("ExpirationTime", expirationTimestampTicks, renderDate), renderRow("ExpirationModificationTime", expirationModificationTicks, renderDate), renderRow("LastModificationTime", lastModificationTicks, renderDate), renderRow("Attempts", attempts.toString()), jsx_runtime_1.jsxs("tr", { children: [jsx_runtime_1.jsx("td", { children: "ParentTaskId" }, void 0), jsx_runtime_1.jsx("td", Object.assign({ "data-tid": "ParentTaskId" }, { children: parentTaskId && jsx_runtime_1.jsx(RouterLink_1.RouterLink, Object.assign({ to: `../${parentTaskId}` }, { children: parentTaskId }), void 0) }), void 0)] }, "ParentTaskId"), jsx_runtime_1.jsxs("tr", { children: [jsx_runtime_1.jsx("td", { children: "ChildTaskIds" }, void 0), jsx_runtime_1.jsx("td", Object.assign({ "data-tid": "ChildTaskIds" }, { children: childTaskIds && childTaskIds.map(item => (jsx_runtime_1.jsxs("span", { children: [jsx_runtime_1.jsx(RouterLink_1.RouterLink, Object.assign({ to: `../${item}` }, { children: item }), void 0), jsx_runtime_1.jsx("br", {}, void 0)] }, item))) }), void 0)] }, "ChildTaskIds"), ]; }; return (jsx_runtime_1.jsx("table", Object.assign({ className: TaskDetailsMetaTable_styles_1.jsStyles.table(theme) }, { children: jsx_runtime_1.jsx("tbody", { children: renderMetaInfo() }, void 0) }), void 0)); }; exports.TaskDetailsMetaTable = TaskDetailsMetaTable; //# sourceMappingURL=TaskDetailsMetaTable.js.map