backpack-ui
Version:
Lonely Planet's Components
123 lines (99 loc) • 2.65 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
var _propTypes = require("prop-types");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _moreLink = require("../moreLink");
var _moreLink2 = _interopRequireDefault(_moreLink);
var _heading = require("../heading");
var _heading2 = _interopRequireDefault(_heading);
var _font = require("../../utils/font");
var _font2 = _interopRequireDefault(_font);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var styles = {
day: {
base: {
fontSize: "20px",
lineHeight: 36 / 20,
marginTop: 27 / 20 + "em"
}
},
title: {
base: {
fontSize: "1em",
lineHeight: "inherit"
}
},
description: {
base: {
fontFamily: (0, _font2.default)("miller"),
marginTop: -4 / 20 + "em"
}
}
};
function TourItinerary(_ref) {
var itinerary = _ref.itinerary,
link = _ref.link,
qaHook = _ref.qaHook;
return _react2.default.createElement(
"div",
{ className: "TourItinerary", "data-testid": qaHook ? "tour-itinerary-div" : null },
itinerary.map(function (day, index) {
return _react2.default.createElement(
"div",
{ key: index, className: "TourItinerary-day", style: styles.day.base },
_react2.default.createElement(
_heading2.default,
{
level: 3,
weight: "thick",
override: styles.title.base,
qaHook: qaHook
},
day.title
),
_react2.default.createElement(
"p",
{ style: styles.description.base },
day.description
)
);
}),
link && _react2.default.createElement(
"div",
{ style: { marginTop: "8px" } },
_react2.default.createElement(
_moreLink2.default,
{ href: link, size: "small", caps: true, qaHook: qaHook ? "Full itinerary" : null },
"Full itinerary"
)
)
);
}
TourItinerary.propTypes = {
/**
* Array of objects for each day of the tour
*/
itinerary: _propTypes2.default.arrayOf(_propTypes2.default.shape({
day: _propTypes2.default.number,
description: _propTypes2.default.string,
title: _propTypes2.default.string
})).isRequired,
/**
* Link to full itinerary
*/
link: _propTypes2.default.string,
/**
* QA Hook
*/
qaHook: _propTypes2.default.bool
};
TourItinerary.defaultProps = {
itinerary: [],
link: "",
qaHook: false
};
exports.default = TourItinerary;