nice-ui
Version:
React design system, components, and utilities
49 lines (48 loc) • 1.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const iconista_1 = require("iconista");
const nano_theme_1 = require("nano-theme");
const BasicButton_1 = require("../BasicButton");
const Link_1 = require("../../1-inline/Link");
const blockClass = (0, nano_theme_1.rule)({
...nano_theme_1.theme.font.ui2.mid,
fz: '14px',
col: nano_theme_1.theme.g(0.3),
fill: nano_theme_1.theme.g(0.3),
d: 'inline-flex',
alignItems: 'center',
svg: {
marr: '8px',
},
'&:hover': {
col: nano_theme_1.theme.blue,
fill: nano_theme_1.theme.blue,
},
});
const linkWithUnderlineClass = (0, nano_theme_1.rule)({
bdb: '1px solid transparent',
'&:hover': {
bdb: '1px solid rgba(244,18,36,.3)',
},
});
const backButtonClass = (0, nano_theme_1.rule)({
mar: '-4px 4px -4px -8px',
d: 'flex',
justifyContent: 'center',
alignItems: 'center',
});
const backButtonInnerClass = (0, nano_theme_1.rule)({
pad: '0 0 0 8px',
d: 'flex',
justifyContent: 'center',
alignItems: 'center',
});
const LinkBack = ({ to, children }) => {
return (React.createElement("span", { className: blockClass },
React.createElement(BasicButton_1.default, { to: to, noOutline: true, round: true, size: 28, className: backButtonClass },
React.createElement("span", { className: backButtonInnerClass },
React.createElement(iconista_1.default, { set: "ibm_16", icon: "arrow--left", width: 16, height: 16 }))),
React.createElement(Link_1.Link, { a: true, to: to, className: linkWithUnderlineClass }, children)));
};
exports.default = LinkBack;