UNPKG

@adamson/react-crossword

Version:

A flexible, responsive, and easy-to-use crossword component for React apps

70 lines (57 loc) 2.43 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = DirectionClues; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _Clue = _interopRequireDefault(require("./Clue")); var DirectionWrapper = _styledComponents["default"].div.attrs(function () { return { className: "direction" }; }).withConfig({ displayName: "DirectionClues__DirectionWrapper", componentId: "sc-1mqymi7-0" })(["display:flex;flex-direction:column;height:50%;margin-bottom:2em;.header{margin-top:0;margin-bottom:0.5em;}div{margin-top:0.5em;}"]); var DirectionCluesWrapper = _styledComponents["default"].div.attrs(function () { return { className: "direction-clues" }; }).withConfig({ displayName: "DirectionClues__DirectionCluesWrapper", componentId: "sc-1mqymi7-1" })(["height:100%;overflow-y:scroll;"]); function DirectionClues(_ref) { var direction = _ref.direction, clues = _ref.clues, correctness = _ref.correctness; return /*#__PURE__*/_react["default"].createElement(DirectionWrapper, null, /*#__PURE__*/_react["default"].createElement("h3", { className: "header" }, direction.toUpperCase()), /*#__PURE__*/_react["default"].createElement(DirectionCluesWrapper, null, clues.map(function (_ref2) { var number = _ref2.number, text = _ref2.text; return /*#__PURE__*/_react["default"].createElement(_Clue["default"], { key: number, direction: direction, number: number, correct: correctness[number] }, text); }))); } process.env.NODE_ENV !== "production" ? DirectionClues.propTypes = { /** direction of this list of clues ("across" or "down") */ direction: _propTypes["default"].string.isRequired, /** clues for this List's direction */ clues: _propTypes["default"].arrayOf(_propTypes["default"].shape({ /** number of the clue (the label shown) */ number: _propTypes["default"].string.isRequired, /** clue text */ clue: _propTypes["default"].node.isRequired /** whether the answer/guess is correct */ })).isRequired, correctness: _propTypes["default"].objectOf(_propTypes["default"].bool).isRequired } : void 0; DirectionClues.defaultProps = {};