@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
41 lines • 1.65 kB
JavaScript
/**
* PageFlipper module.
* @module @massds/mayflower-react/PageFlipper
* @requires module:@massds/mayflower-assets/scss/03-organisms/page-flipper
*/
import React from "react";
import PropTypes from "prop-types";
const PageFlipper = props => {
const blank = /*#__PURE__*/React.createElement("div", {
className: "ma__page-flipper__blank"
}, "\xA0");
const prev = props.previousLink || blank;
const next = props.nextLink || blank;
return /*#__PURE__*/React.createElement(React.Fragment, null, props.intro && /*#__PURE__*/React.createElement("div", {
className: "ma__page-flipper__context"
}, props.intro.label && /*#__PURE__*/React.createElement("span", {
className: "ma__page-flipper__context-label"
}, props.intro.label), props.intro.introDecorativeLink && props.intro.introDecorativeLink.props.text && props.intro.introDecorativeLink), /*#__PURE__*/React.createElement("div", {
className: "ma__page-flipper"
}, /*#__PURE__*/React.createElement("div", {
className: "ma__page-flipper__container"
}, prev, next)));
};
PageFlipper.propTypes = process.env.NODE_ENV !== "production" ? {
/** Introduction section containing a label and / or a link:<ul>
* `label:` Optional label. <br />
* `introDecorativeLink:` Optional DecorativeLink. <br />
* </ul>
*/
intro: PropTypes.shape({
/** Optional label */
label: PropTypes.string,
/** Optional DecorativeLink */
introDecorativeLink: PropTypes.element
}),
/** Previous Link (or left button) */
previousLink: PropTypes.element,
/** Next Link (or right button) */
nextLink: PropTypes.element
} : {};
export default PageFlipper;