@scripty/react-store
Version:
This lightweight global react hook store is inspired by the extjs store architecture. Share your stores through your application with only a few lines of code!
35 lines (25 loc) • 888 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStore = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = require("react");
var _ = require("./");
var useStore = function useStore(storeName) {
var _useContext = (0, _react.useContext)(_.StoreContext),
store = _useContext.store,
setStore = _useContext.setStore;
var mStore = window.globalStorage.config[storeName];
window.globalStorage.setStore = function (e) {
setStore(e);
};
(0, _.addStore)({
name: storeName,
store: mStore
}, storeName);
var records = (0, _.getStore)(store, storeName);
return (0, _defineProperty2["default"])({}, storeName, records.store);
};
exports.useStore = useStore;