UNPKG

@xrenders/xflow

Version:

一款功能强大、易用灵活的流程编辑器框架,帮助你轻松构建复杂的工作流和流程产品

31 lines (30 loc) 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useStoreApi = exports.useStore = void 0; var _react = require("react"); var _context = _interopRequireDefault(require("../models/context")); var _traditional = require("zustand/traditional"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } var useStore = exports.useStore = function useStore(selector, equalityFn) { var store = (0, _react.useContext)(_context.default); if (store === null) { throw new Error('[XFlow]: Seems like you have not used zustand provider as an ancestor.'); } return (0, _traditional.useStoreWithEqualityFn)(store, selector, equalityFn); }; var useStoreApi = exports.useStoreApi = function useStoreApi() { var store = (0, _react.useContext)(_context.default); if (store === null) { throw new Error('[XFlow]: Seems like you have not used zustand provider as an ancestor.'); } return (0, _react.useMemo)(function () { return { getState: store.getState, setState: store.setState, subscribe: store.subscribe, temporal: store.temporal }; }, [store]); };