UNPKG

styled-hook-form

Version:

React form library for styled-components based on grommet and react-hook-form

36 lines (35 loc) 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useDataTableContext = exports.DataTableContextProvider = exports.DataTableContext = void 0; const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = require("react"); const actions_1 = require("./actions"); const impl_1 = require("./actions/impl"); const defaults = { primaryKey: "", totalRecords: 0, syncKey: 0, orderDir: "desc", orderParam: "id", hasOrder: false, }; const DataTableContext = react_1.createContext({ state: defaults, dispatch: () => { }, }); exports.DataTableContext = DataTableContext; let reducer = (state, action) => actions_1.actionImpl(state, action); const DataTableContextProvider = (props) => { let { children, options } = props; let [state, dispatch] = react_1.useReducer(reducer, Object.assign(Object.assign({}, defaults), options), (s) => s); if (!state.syncKey) { state.syncKey = impl_1.getSyncKey(); } return (jsx_runtime_1.jsx(DataTableContext.Provider, Object.assign({ value: { state, dispatch, } }, { children: children }), void 0)); }; exports.DataTableContextProvider = DataTableContextProvider; const useDataTableContext = () => react_1.useContext(DataTableContext); exports.useDataTableContext = useDataTableContext;