@redocly/theme
Version:
Shared UI components lib
67 lines (66 loc) • 3.65 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CatalogEntityRevisionItem = CatalogEntityRevisionItem;
const react_1 = __importDefault(require("react"));
const styled_components_1 = __importDefault(require("styled-components"));
const Link_1 = require("../../../../components/Link/Link");
const Tag_1 = require("../../../../components/Tag/Tag");
const utils_1 = require("../../../../core/utils");
const hooks_1 = require("../../../../core/hooks");
function CatalogEntityRevisionItem({ revisionItem, basePath, version, }) {
var _a, _b;
const { useTranslate } = (0, hooks_1.useThemeHooks)();
const { translate } = useTranslate();
const revisionFilter = (_a = (0, utils_1.buildRevisionUrl)(basePath, revisionItem.revisionDate, version)) !== null && _a !== void 0 ? _a : basePath;
const isActive = (_b = revisionItem.isActive) !== null && _b !== void 0 ? _b : false;
return (react_1.default.createElement(RevisionItemWrapper, { to: revisionFilter, "$isActive": isActive },
react_1.default.createElement(RevisionNameRow, null,
react_1.default.createElement(RevisionName, null, revisionItem.name),
revisionItem.isCurrent && (react_1.default.createElement(Tag_1.Tag, { color: "grey", borderless: true, textTransform: "none", style: {
fontSize: 'var(--font-size-xs)',
borderRadius: 'var(--catalog-history-sidebar-revision-tag-border-radius)',
} }, translate('catalog.history.revision.current', 'current')))),
react_1.default.createElement(RevisionDate, null, revisionItem.date)));
}
const RevisionItemWrapper = (0, styled_components_1.default)(Link_1.Link) `
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--catalog-history-sidebar-revision-item-padding);
margin-left: calc(-1 * var(--catalog-history-sidebar-revisions-padding-left));
padding-left: var(--catalog-history-sidebar-revisions-padding-left);
border-radius: var(--catalog-history-sidebar-revision-item-border-radius);
transition: 0.2s ease;
text-decoration: none;
color: inherit;
cursor: pointer;
background-color: ${({ $isActive }) => $isActive ? 'var(--catalog-history-sidebar-revision-item-bg-color-active)' : 'transparent'};
&:hover {
background-color: ${({ $isActive }) => $isActive
? 'var(--catalog-history-sidebar-revision-item-bg-color-active)'
: 'var(--catalog-history-sidebar-revision-item-bg-color-hover)'};
}
`;
const RevisionNameRow = styled_components_1.default.div `
display: flex;
align-items: center;
gap: var(--spacing-xs, 8px);
`;
const RevisionName = styled_components_1.default.span `
font-family: var(--catalog-history-sidebar-revision-name-font-family);
font-size: var(--catalog-history-sidebar-revision-name-font-size);
font-weight: var(--catalog-history-sidebar-revision-name-font-weight);
line-height: var(--catalog-history-sidebar-revision-name-line-height);
color: var(--catalog-history-sidebar-revision-name-color);
`;
const RevisionDate = styled_components_1.default.span `
font-family: var(--catalog-history-sidebar-revision-date-font-family);
font-size: var(--catalog-history-sidebar-revision-date-font-size);
font-weight: var(--catalog-history-sidebar-revision-date-font-weight);
line-height: var(--catalog-history-sidebar-revision-date-line-height);
color: var(--catalog-history-sidebar-revision-date-color);
`;
//# sourceMappingURL=CatalogEntityRevisionItem.js.map