@dslate/dslate
Version:
一个Ant Design风格的富文本编辑器 - An Ant Design style rich editor based on Slate
64 lines (63 loc) • 3.61 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
require("antd/es/config-provider/style");
var _configProvider = _interopRequireDefault(require("antd/es/config-provider"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _slateReact = require("slate-react");
var _SizeContext = _interopRequireDefault(require("antd/lib/config-provider/SizeContext"));
var _core = _interopRequireWildcard(require("@dslate/core"));
var _component = require("@dslate/component");
require("./index.less");
var _excluded = ["value", "onChange"];
var AntdStyleEditor = function AntdStyleEditor(_ref) {
var _ref$bordered = _ref.bordered,
bordered = _ref$bordered === void 0 ? true : _ref$bordered,
customizeSize = _ref.size,
_ref$showCount = _ref.showCount,
showCount = _ref$showCount === void 0 ? false : _ref$showCount,
_ref$disabled = _ref.disabled,
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
placeholder = _ref.placeholder,
toolbar = _ref.toolbar,
className = _ref.className;
var focused = (0, _slateReact.useFocused)();
var _usePluginHelper = (0, _core.usePluginHelper)(),
getPrefixCls = _usePluginHelper.getPrefixCls;
var prefixCls = getPrefixCls === null || getPrefixCls === void 0 ? void 0 : getPrefixCls('');
return /*#__PURE__*/_react.default.createElement(_SizeContext.default.Consumer, null, function (size) {
var _classNames;
var realSize = customizeSize || size;
return /*#__PURE__*/_react.default.createElement("div", {
className: (0, _classnames.default)("".concat(prefixCls), className, (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(prefixCls, "-sm"), realSize === 'small'), (0, _defineProperty2.default)(_classNames, "".concat(prefixCls, "-lg"), realSize === 'large'), (0, _defineProperty2.default)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0, _defineProperty2.default)(_classNames, "".concat(prefixCls, "-borderless"), !bordered), (0, _defineProperty2.default)(_classNames, "".concat(prefixCls, "-focused"), focused), _classNames))
}, /*#__PURE__*/_react.default.createElement(_component.Toolbar, {
toolbar: toolbar
}), /*#__PURE__*/_react.default.createElement(_component.Progress, null), /*#__PURE__*/_react.default.createElement(_component.Editable, {
disabled: disabled,
placeholder: placeholder
}), /*#__PURE__*/_react.default.createElement(_component.Counter, {
showCount: showCount
}));
});
};
var _default = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
var value = _ref2.value,
onChange = _ref2.onChange,
rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
var _useContext = (0, _react.useContext)(_configProvider.default.ConfigContext),
getAntdPrefixCls = _useContext.getPrefixCls;
return /*#__PURE__*/_react.default.createElement(_core.default, {
ref: ref,
value: value,
onChange: onChange,
prefixCls: getAntdPrefixCls('dslate')
}, /*#__PURE__*/_react.default.createElement(AntdStyleEditor, rest));
});
exports.default = _default;