nice-ui
Version:
React design system, components, and utilities
29 lines (28 loc) • 1.54 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const use_t_1 = require("use-t");
const ContentsList_1 = require("./ContentsList");
const ContentPageMarkdown_1 = require("./ContentPageMarkdown");
const PrevNext_1 = require("./PrevNext");
const util_1 = require("./util");
const Space_1 = require("../../3-list-item/Space");
const Button_1 = require("../../2-inline-block/Button");
const DocsRightIndex = (props) => {
const { page } = props;
const [t] = (0, use_t_1.useT)();
const showSpecDownloadButton = page.type === 'spec' || page.type === 'spec-note';
const onSpecDownloadClick = async () => {
const md = await (0, util_1.downloadPageAsMarkdown)(page);
(0, util_1.downloadFile)(`${page.slug}.md`, md.text, 'text/markdown');
};
return (React.createElement(React.Fragment, null,
React.createElement(ContentPageMarkdown_1.default, { page: page }),
!!showSpecDownloadButton && (React.createElement(React.Fragment, null,
React.createElement(Space_1.Space, { size: 3 }),
React.createElement(Button_1.Button, { ghost: true, size: -1, onClick: onSpecDownloadClick }, t('Download as Markdown')))),
page.children && page.children.length ? React.createElement(ContentsList_1.default, { page: page }) : null,
React.createElement(Space_1.Space, { size: 8 }),
React.createElement(PrevNext_1.default, { top: page, page: page, onlyNext: true })));
};
exports.default = DocsRightIndex;