UNPKG

oc-template-react-compiler

Version:
32 lines (31 loc) 1.17 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.DataProvider = void 0; exports.useData = useData; const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = __importDefault(require("react")); const DataContext = react_1.default.createContext({}); const DataProvider = ({ children, ...props }) => { return (0, jsx_runtime_1.jsx)(DataContext.Provider, { value: props, children: children }); }; exports.DataProvider = DataProvider; function useData() { const { value: { getData, ...rest } } = react_1.default.useContext(DataContext); const asyncGetData = react_1.default.useCallback((data) => { return new Promise((resolve, reject) => { // @ts-ignore getData({ ...rest, ...data }, (err, newData) => { if (err) { reject(err); } else { resolve(newData); } }); }); }, []); return { getData: asyncGetData, ...rest }; }