1
0
mirror of https://github.com/ianstormtaylor/slate.git synced 2025-08-12 18:24:03 +02:00

allow mark to be set/unset with type only

This commit is contained in:
Ian Storm Taylor
2016-06-20 13:58:04 -07:00
parent 420d38edec
commit 201609a655

View File

@@ -1,6 +1,7 @@
import Character from './character'
import Element from './element'
import Mark from './mark'
import Selection from './selection'
import Text from './text'
import { List, OrderedMap, Set } from 'immutable'
@@ -607,13 +608,18 @@ const Node = {
* Add a new `mark` to the characters at `range`.
*
* @param {Selection} range
* @param {Mark} mark
* @param {Mark or String} mark
* @return {Node} node
*/
markAtRange(range, mark) {
let node = this
// Allow for just passing a type for convenience.
if (typeof mark == 'string') {
mark = new Mark({ type: mark })
}
// When the range is collapsed, do nothing.
if (range.isCollapsed) return node
@@ -776,13 +782,18 @@ const Node = {
* Remove an existing `mark` to the characters at `range`.
*
* @param {Selection} range
* @param {Mark} mark
* @param {Mark or String} mark
* @return {Node} node
*/
unmarkAtRange(range, mark) {
let node = this
// Allow for just passing a type for convenience.
if (typeof mark == 'string') {
mark = new Mark({ type: mark })
}
// When the range is collapsed, do nothing.
if (range.isCollapsed) return node