UNPKG

@kineticdata/react

Version:
105 lines (104 loc) 3.48 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"]; Object.defineProperty(exports, "__esModule", { value: true }); exports.dispatcher = exports.dispatch = exports.context = exports.connect = exports.commitStore = exports.action = void 0; Object.defineProperty(exports, "reducer", { enumerable: true, get: function get() { return _reducer.reducer; } }); Object.defineProperty(exports, "regHandlers", { enumerable: true, get: function get() { return _reducer.regHandlers; } }); Object.defineProperty(exports, "regSaga", { enumerable: true, get: function get() { return _saga.regSaga; } }); Object.defineProperty(exports, "runSaga", { enumerable: true, get: function get() { return _saga.runSaga; } }); exports.store = exports.selectWaiting = void 0; var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/regeneratorRuntime")); var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray")); var _react = require("react"); var _redux = require("redux"); var _reactRedux = require("react-redux"); var _effects = require("redux-saga/effects"); var _immutable = require("immutable"); var _reducer = require("./reducer"); var _saga = require("./saga"); var composeEnhancers = typeof window !== "undefined" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({ name: '@kineticdata/react' }) : _redux.compose; var store = exports.store = (0, _redux.createStore)(_reducer.reducer, (0, _immutable.Map)(), composeEnhancers((0, _redux.applyMiddleware)(_saga.sagaMiddleware))); var dispatch = exports.dispatch = function dispatch(type, payload) { return store.dispatch({ type: type, payload: payload }); }; var dispatcher = exports.dispatcher = function dispatcher(type) { return function (payload) { return store.dispatch({ type: type, payload: payload }); }; }; var action = exports.action = function action(type, payload) { return { type: type, payload: payload }; }; var commitStore = exports.commitStore = function commitStore() { (0, _saga.commitSagas)(); }; var context = exports.context = /*#__PURE__*/(0, _react.createContext)(); var connect = exports.connect = function connect() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _reactRedux.connect.apply(void 0, (0, _toConsumableArray2["default"])((0, _immutable.setIn)(args, [3, 'context'], context))); }; var selectWaiting = exports.selectWaiting = /*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function selectWaiting(selector) { var value; return (0, _regeneratorRuntime2["default"])().wrap(function selectWaiting$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!true) { _context.next = 12; break; } _context.next = 3; return (0, _effects.select)(selector); case 3: value = _context.sent; if (!value) { _context.next = 8; break; } return _context.abrupt("return", value); case 8: _context.next = 10; return (0, _effects.take)(); case 10: _context.next = 0; break; case 12: case "end": return _context.stop(); } }, selectWaiting); });