UNPKG

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

Version:

.NET library implementing distributed task queue machinery using Apache Cassandra

27 lines 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TimeLineCycled = void 0; const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const react_ui_1 = require("@skbkontur/react-ui"); const react_1 = tslib_1.__importDefault(require("react")); const TimeLine_styles_1 = require("./TimeLine.styles"); function TimeLineCycled({ children, content, icon }) { const entries = react_1.default.useRef(null); const lines = react_1.default.useRef(null); const theme = react_1.default.useContext(react_ui_1.ThemeContext); react_1.default.useEffect(() => { if (entries.current != null) { const children = entries.current.children; const lastEntry = children[children.length - 1]; const lastEntryHeight = lastEntry.clientHeight; const currentLines = lines.current; if (!isNaN(lastEntryHeight) && currentLines != null) { currentLines.style.marginBottom = (lastEntryHeight - 22).toString() + "px"; } } }); return (jsx_runtime_1.jsxs("div", Object.assign({ className: `__root-cycle ${TimeLine_styles_1.jsStyles.cycle()}` }, { children: [jsx_runtime_1.jsx("div", Object.assign({ ref: entries, className: "__root-cycle-entries" }, { children: children }), void 0), jsx_runtime_1.jsxs("div", Object.assign({ className: TimeLine_styles_1.jsStyles.lines(theme), ref: lines }, { children: [jsx_runtime_1.jsx("div", { className: TimeLine_styles_1.jsStyles.line1() }, void 0), jsx_runtime_1.jsx("div", { className: TimeLine_styles_1.jsStyles.line2() }, void 0), jsx_runtime_1.jsx("div", { className: TimeLine_styles_1.jsStyles.line3() }, void 0)] }), void 0), icon && jsx_runtime_1.jsx("div", Object.assign({ className: TimeLine_styles_1.jsStyles.cycleIcon() }, { children: icon }), void 0), content && jsx_runtime_1.jsx("div", Object.assign({ className: TimeLine_styles_1.jsStyles.cycleInfo() }, { children: content }), void 0)] }), void 0)); } exports.TimeLineCycled = TimeLineCycled; //# sourceMappingURL=TimeLineCycled.js.map