芝麻web文件管理V1.00
编辑当前文件:/home/freeclou/app.optimyar.com/backend/node_modules/video-react/lib/Manager.js
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _redux = require("redux"); var _reducers = _interopRequireDefault(require("./reducers")); var playerActions = _interopRequireWildcard(require("./actions/player")); var videoActions = _interopRequireWildcard(require("./actions/video")); var Manager = /*#__PURE__*/ function () { function Manager(store) { (0, _classCallCheck2["default"])(this, Manager); this.store = store || (0, _redux.createStore)(_reducers["default"]); this.video = null; this.rootElement = null; } (0, _createClass2["default"])(Manager, [{ key: "getActions", value: function getActions() { var manager = this; var dispatch = this.store.dispatch; var actions = (0, _objectSpread2["default"])({}, playerActions, videoActions); function bindActionCreator(actionCreator) { return function bindAction() { // eslint-disable-next-line prefer-rest-params var action = actionCreator.apply(manager, arguments); if (typeof action !== 'undefined') { dispatch(action); } }; } return Object.keys(actions).filter(function (key) { return typeof actions[key] === 'function'; }).reduce(function (boundActions, key) { boundActions[key] = bindActionCreator(actions[key]); return boundActions; }, {}); } }, { key: "getState", value: function getState() { return this.store.getState(); } // subscribe state change }, { key: "subscribeToStateChange", value: function subscribeToStateChange(listener, getState) { if (!getState) { getState = this.getState.bind(this); } var prevState = getState(); var handleChange = function handleChange() { var state = getState(); if (state === prevState) { return; } var prevStateCopy = prevState; prevState = state; listener(state, prevStateCopy); }; return this.store.subscribe(handleChange); } // subscribe to operation state change }, { key: "subscribeToOperationStateChange", value: function subscribeToOperationStateChange(listener) { var _this = this; return this.subscribeToStateChange(listener, function () { return _this.getState().operation; }); } // subscribe to player state change }, { key: "subscribeToPlayerStateChange", value: function subscribeToPlayerStateChange(listener) { var _this2 = this; return this.subscribeToStateChange(listener, function () { return _this2.getState().player; }); } }]); return Manager; }(); exports["default"] = Manager;