UNPKG

nice-ui

Version:

React design system, components, and utilities

72 lines (71 loc) 2.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const React = require("react"); const nano_theme_1 = require("nano-theme"); const Space_1 = require("../../3-list-item/Space"); const LinkBack_1 = require("../../2-inline-block/LinkBack"); const blockClass = (0, nano_theme_1.rule)({ pad: '0 0 16px', mar: '0 0 16px', d: 'flex', justifyContent: 'space-between', }); const blockClass3 = (0, nano_theme_1.rule)({ pad: '0 0 8px', mar: '0 0 8px', }); const blockClass5 = (0, nano_theme_1.rule)({ pad: '0 0 12px', mar: 0, }); const blockClass6 = (0, nano_theme_1.rule)({ pad: '0 0 12px', mar: 0, }); const useBlockClass = (0, nano_theme_1.makeRule)((theme) => ({ bdb: `1px solid ${theme.g(0.9)}`, })); const headerClass = (0, nano_theme_1.rule)({ ...nano_theme_1.theme.font.ui2.bold, fz: '28px', mar: 0, pad: 0, }); const headerClassH2 = (0, nano_theme_1.rule)({ fz: '24px', }); const headerClassH3 = (0, nano_theme_1.rule)({ fz: '20px', }); const headerClassH4 = (0, nano_theme_1.rule)({ fz: '18px', }); const headerClassH5 = (0, nano_theme_1.rule)({ fz: '16px', }); const headerClassH6 = (0, nano_theme_1.rule)({ fz: '15px', }); const PageTitle = ({ h2, h3, h4, h5, h6, right, back, backTo, children }) => { const dynamicBlockClass = useBlockClass(); const Component = h6 ? 'h6' : h5 ? 'h5' : h4 ? 'h4' : h3 ? 'h3' : h2 ? 'h2' : 'h1'; return (React.createElement(React.Fragment, null, !!back && !!backTo && (React.createElement(React.Fragment, null, React.createElement(LinkBack_1.default, { to: backTo }, back), React.createElement(Space_1.Space, null))), React.createElement("div", { className: blockClass + dynamicBlockClass + (h6 ? blockClass6 : h5 ? blockClass5 : h2 || h3 || h4 ? blockClass3 : ''), style: { borderBottom: h6 || h5 || h4 || h3 || h2 ? 0 : undefined } }, React.createElement(Component, { className: headerClass + (h6 ? headerClassH6 : h5 ? headerClassH5 : h4 ? headerClassH4 : h3 ? headerClassH3 : h2 ? headerClassH2 : '') }, children), right))); }; exports.default = PageTitle;