UNPKG

@cc98/react-ubb-editor

Version:
30 lines (29 loc) 1.33 kB
import { __assign } from "tslib"; import createCache from '@emotion/cache'; import { CacheProvider } from '@emotion/core'; import React from 'react'; import Core, { Core as CoreType } from './components'; import configMap from './config'; import { Provider } from './context'; import createAction from './createAction'; import { ConfigType, ExtendValueType, } from './types'; var cache = createCache(); export default function createEditor(extraConfig, ignoreDefaultConfig) { if (extraConfig === void 0) { extraConfig = {}; } if (ignoreDefaultConfig === void 0) { ignoreDefaultConfig = false; } var configs = __assign({}, configMap); if (ignoreDefaultConfig) { if (!extraConfig.configs) { throw new Error('need extra config with ignoreDefaultConfig specified'); } configs = {}; } if (extraConfig.configs) { extraConfig.configs.forEach(function (item) { return (configs[item.tagName] = item); }); } var Editor = function (props) { return (React.createElement(Provider, { value: __assign(__assign({}, extraConfig), { configs: configs }) }, React.createElement(CacheProvider, { value: cache }, React.createElement(Core, __assign({}, props))))); }; return Editor; } export { createAction, ConfigType, ExtendValueType, CoreType, };