@mrii/react-table-builder
Version:
library to easily build tables using MUI grid
33 lines (29 loc) • 1.09 kB
JavaScript
;
var jsxRuntime = require('react/jsx-runtime');
var react = require('react');
var zustand = require('zustand');
var middleware = require('zustand/middleware');
var immer = require('zustand/middleware/immer');
const createZustandContext = ()=>{
const Context = /*#__PURE__*/ react.createContext(null);
const useStore = (selector, equals)=>{
const store = react.useContext(Context);
if (!store) throw new Error('using columns outside a provider');
return zustand.useStore(store, selector, equals);
};
const Provider = ({ initialState , name , actions , children })=>{
const [store] = react.useState(()=>zustand.createStore(middleware.devtools(middleware.combine(initialState, immer.immer(actions)), {
name
})));
return /*#__PURE__*/ jsxRuntime.jsx(Context.Provider, {
value: store,
children: children
});
};
return [
Provider,
useStore
];
};
exports.createZustandContext = createZustandContext;
//# sourceMappingURL=index.js.map