@trellixio/roaster-coffee
Version:
Beans' product component library
32 lines (31 loc) • 1.78 kB
JavaScript
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
import * as React from 'react';
import { classNames } from '@/utils';
import { Spinner } from '../Spinner';
export function Page({ title, className, size = 'medium', children, breadcrumbs, primaryAction, secondaryAction, loading, }) {
return (React.createElement("main", { className: classNames(size, className) },
React.createElement("section", { className: "page-header" },
breadcrumbs != null && breadcrumbs.length > 0 ? (React.createElement("nav", { className: "breadcrumbs" }, breadcrumbs.map((_a) => {
var { component, content } = _a, restProps = __rest(_a, ["component", "content"]);
const Component = component || 'a';
return (React.createElement(Component, Object.assign({ key: `breadcrumb-${content}` }, restProps),
React.createElement("span", null, content)));
}))) : null,
React.createElement("div", { className: "title-wrapper" },
React.createElement("h2", null, title),
loading && React.createElement(Spinner, null),
(secondaryAction || primaryAction) && (React.createElement("div", { className: "items-group" },
primaryAction,
secondaryAction)))),
children));
}