@lobehub/editor
Version:
A powerful and extensible rich text editor built on Meta's Lexical framework, providing a modern editing experience with React integration.
62 lines • 2.06 kB
JavaScript
import { ActionIcon, Block } from '@lobehub/ui';
import { useThemeMode } from 'antd-style';
import { Check, X } from 'lucide-react';
import { LexicalPortalContainer } from "../../../../editor-kernel/react";
import { useTranslation } from "../../../../editor-kernel/react/useTranslation";
import { DiffAction, LITEXML_DIFFNODE_COMMAND } from "../../command/diffCommand";
import { styles } from "./style";
import { jsx as _jsx } from "react/jsx-runtime";
import { jsxs as _jsxs } from "react/jsx-runtime";
var ReactDiffNodeToolbar = function ReactDiffNodeToolbar(_ref) {
var editor = _ref.editor,
node = _ref.node;
var t = useTranslation();
var _useThemeMode = useThemeMode(),
isDarkMode = _useThemeMode.isDarkMode;
return /*#__PURE__*/_jsx(LexicalPortalContainer, {
editor: editor,
node: node,
children: /*#__PURE__*/_jsxs(Block, {
className: isDarkMode ? styles.toolbarDark : styles.toolbarLight,
gap: 2,
horizontal: true,
padding: 2,
shadow: true,
variant: 'outlined',
children: [/*#__PURE__*/_jsx(ActionIcon, {
"aria-label": "Reject change",
className: styles.reject,
danger: true,
icon: X,
onClick: function onClick() {
editor.dispatchCommand(LITEXML_DIFFNODE_COMMAND, {
action: DiffAction.Reject,
nodeKey: node.getKey()
});
},
size: {
blockSize: 28,
size: 16
},
title: t('modifier.reject')
}), /*#__PURE__*/_jsx(ActionIcon, {
"aria-label": "Accept change",
className: styles.accept,
icon: Check,
onClick: function onClick() {
editor.dispatchCommand(LITEXML_DIFFNODE_COMMAND, {
action: DiffAction.Accept,
nodeKey: node.getKey()
});
},
size: {
blockSize: 28,
size: 16
},
title: t('modifier.accept')
})]
})
});
};
ReactDiffNodeToolbar.displayName = 'ReactDiffNodeToolbar';
export default ReactDiffNodeToolbar;