UNPKG

react-memory-game

Version:
58 lines (45 loc) 1.96 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.CARD_STATE = undefined; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _react = require('react'); var _react2 = _interopRequireDefault(_react); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } var CARD_STATE = exports.CARD_STATE = { CLOSED: 'CLOSED', OPEN: 'OPEN', FOUND: 'FOUND' }; var CardContent = function CardContent(_ref) { var children = _ref.children, props = _objectWithoutProperties(_ref, ['children']); return _react2.default.createElement( 'div', _extends({}, props, { className: 'memory-game--memory-card--content' }), children ); }; var MemoryCard = function MemoryCard(_ref2) { var children = _ref2.children, state = _ref2.state, onClick = _ref2.onClick, props = _objectWithoutProperties(_ref2, ['children', 'state', 'onClick']); var classes = ['memory-game--memory-card', state === CARD_STATE.FOUND ? 'memory-game--memory-card__found' : state === CARD_STATE.OPEN ? 'memory-game--memory-card__open' : 'memory-game--memory-card__closed'].join(' '); return _react2.default.createElement( 'div', { className: 'memory-game--memory-slot' }, _react2.default.createElement( 'button', _extends({}, props, { className: classes, onClick: onClick }), _react2.default.createElement( CardContent, null, children ) ) ); }; exports.default = MemoryCard;