1 |
|
2 | import EditBlockquote from "slate-edit-blockquote";
|
3 | import { BLOCKQUOTE, PARAGRAPH } from "@canner/slate-constant/lib/blocks";
|
4 |
|
5 | export const DEFAULT = {
|
6 | type: BLOCKQUOTE,
|
7 | typeDefault: PARAGRAPH
|
8 | };
|
9 |
|
10 | export default (change, opt = DEFAULT) => {
|
11 | const options = Object.assign({}, DEFAULT, opt);
|
12 | let newChange;
|
13 |
|
14 | const utils = EditBlockquote(options).utils;
|
15 | const changes = EditBlockquote(options).changes;
|
16 |
|
17 | if (utils.isSelectionInBlockquote(change.value)) {
|
18 | newChange = changes.unwrapBlockquote(change);
|
19 | } else {
|
20 | newChange = changes.wrapInBlockquote(change);
|
21 | }
|
22 |
|
23 | return newChange;
|
24 | };
|