UNPKG

react-slot-machine-gen

Version:

Create an extremely biased, web-based slot machine game.

59 lines (57 loc) 2.33 kB
/** * React Slot Machine * Create an extremely biased, web-based slot machine game. * * Copyright 2020-2023, Marc S. Brooks (https://mbrooks.info) * Licensed under the MIT license: * http://www.opensource.org/licenses/mit-license.php */ 'use strict'; exports.__esModule = true; exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _slotMachineGen = _interopRequireDefault(require("slot-machine-gen")); require("slot-machine-gen/dist/slot-machine.min.css"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } /** * Provides React Component wrapper. */ var SlotMachine = /*#__PURE__*/function (_React$Component) { _inheritsLoose(SlotMachine, _React$Component); function SlotMachine() { return _React$Component.apply(this, arguments) || this; } var _proto = SlotMachine.prototype; _proto.componentDidMount = function componentDidMount() { this.slot = new _slotMachineGen["default"](this.refs.wrapper, this.props.reels, this.props.callback, this.props.options); }; _proto.componentDidUpdate = function componentDidUpdate(prevProps) { if (this.props.play !== prevProps.play) { this.slot.play(); } }; _proto.render = function render() { return /*#__PURE__*/_react["default"].createElement("div", { id: this.props.id, className: "slot-machine", ref: "wrapper" }); }; return SlotMachine; }(_react["default"].Component); SlotMachine.defaultProps = { id: 'slot-machine', play: false }; SlotMachine.propTypes = { id: _propTypes["default"].string, play: _propTypes["default"].bool, reels: _propTypes["default"].array.isRequired, callback: _propTypes["default"].func, options: _propTypes["default"].object }; var _default = exports["default"] = SlotMachine; //# sourceMappingURL=react-slot-machine.js.map