UNPKG

@xrenders/xflow

Version:

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

78 lines (77 loc) 4.45 kB
"use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } Object.defineProperty(exports, "__esModule", { value: true }); exports.default = withProvider; require("antd/es/config-provider/style"); var _configProvider = _interopRequireDefault(require("antd/es/config-provider")); var _tslib = require("tslib"); var _eventEmitter = require("./models/event-emitter"); var _react = _interopRequireWildcard(require("react")); var _FlowProvider = require("./components/FlowProvider"); var _context = require("./models/context"); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function withProvider(Element, defaultWidgets) { return function (props) { var configProvider = props.configProvider, widgets = props.widgets, methods = props.methods, nodeSelector = props.nodeSelector, settings = props.settings, initialValues = props.initialValues, layout = props.layout, iconFontUrl = props.iconFontUrl, globalConfig = props.globalConfig, logPanel = props.logPanel, onMenuItemClick = props.onMenuItemClick, _props$antdVersion = props.antdVersion, antdVersion = _props$antdVersion === void 0 ? 'V5' : _props$antdVersion, readOnly = props.readOnly, clickAddNode = props.clickAddNode, onTesting = props.onTesting, openColorfulMode = props.openColorfulMode, restProps = (0, _tslib.__rest)(props, ["configProvider", "widgets", "methods", "nodeSelector", "settings", "initialValues", "layout", "iconFontUrl", "globalConfig", "logPanel", "onMenuItemClick", "antdVersion", "readOnly", "clickAddNode", "onTesting", "openColorfulMode"]); var settingMap = (0, _react.useMemo)(function () { var obj = {}; settings === null || settings === void 0 ? void 0 : settings.forEach(function (node) { if (node.type !== '_group') { obj[node.type] = node; } else { node.items.forEach(function (item) { obj[item.type] = item; }); } }); return obj; }, [settings]); var configContext = { methods: methods, nodeSelector: nodeSelector, settings: settings, settingMap: settingMap, iconFontUrl: iconFontUrl, globalConfig: globalConfig, logPanel: logPanel, antdVersion: antdVersion, onMenuItemClick: onMenuItemClick, readOnly: readOnly, clickAddNode: clickAddNode, onTesting: onTesting, openColorfulMode: openColorfulMode, widgets: Object.assign(Object.assign({}, defaultWidgets), widgets) }; return /*#__PURE__*/_react.default.createElement(_configProvider.default, Object.assign({}, configProvider), /*#__PURE__*/_react.default.createElement(_context.ConfigContext.Provider, { value: configContext }, /*#__PURE__*/_react.default.createElement(_eventEmitter.EventEmitterContextProvider, null, /*#__PURE__*/_react.default.createElement(_FlowProvider.FlowProviderWrapper, { nodes: initialValues === null || initialValues === void 0 ? void 0 : initialValues.nodes, edges: initialValues === null || initialValues === void 0 ? void 0 : initialValues.edges, layout: layout }, /*#__PURE__*/_react.default.createElement(Element, Object.assign({}, restProps, { initialValues: initialValues, settings: settings })))))); }; }