@studysync/draft-js-modifiers 0.3.2 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/addBlock.js +2 -2
  2. package/adjustBlockDepth.js +4 -4
  3. package/es/addBlock.js +30 -19
  4. package/es/adjustBlockDepth.js +16 -5
  5. package/es/getAllEntities.js +29 -0
  6. package/es/getEntitiesForBlock.js +44 -0
  7. package/es/getEntitiesForSelection.js +31 -0
  8. package/es/getSelectedText.js +19 -0
  9. package/es/index.js +267 -23
  10. package/es/insertAtomicBlock.js +11 -3
  11. package/es/insertBlockAfter.js +70 -0
  12. package/es/insertBlockBefore.js +70 -0
  13. package/es/insertEmptyBlock.js +13 -3
  14. package/es/insertEntity.js +37 -0
  15. package/es/insertNewBlock.js +25 -11
  16. package/es/insertText.js +14 -4
  17. package/es/mergeBlockData.js +16 -5
  18. package/es/mergeBlockDataByKey.js +12 -4
  19. package/es/mergeEntityData.js +11 -3
  20. package/es/modifyBlock.js +16 -5
  21. package/es/modifyBlockByKey.js +11 -3
  22. package/es/moveCaretAfterBlock.js +13 -5
  23. package/es/moveCaretToEnd.js +25 -0
  24. package/es/removeBlock.js +16 -7
  25. package/es/removeBlockStyle.js +12 -4
  26. package/es/removeEntity.js +34 -0
  27. package/es/removeInlineStyles.js +19 -8
  28. package/es/resetBlock.js +19 -7
  29. package/es/selectAll.js +22 -0
  30. package/es/selectBlockByKey.js +14 -5
  31. package/es/toggleBlockStyle.js +19 -9
  32. package/es/toggleBlockType.js +11 -3
  33. package/es/toggleEntity.js +11 -3
  34. package/es/toggleInlineStyle.js +11 -3
  35. package/es/utils/getCurrentBlock.js +9 -1
  36. package/es/utils/numbers.js +18 -0
  37. package/getAllEntities.js +29 -0
  38. package/getEntitiesForBlock.js +44 -0
  39. package/getEntitiesForSelection.js +31 -0
  40. package/getSelectedText.js +19 -0
  41. package/index.js +105 -25
  42. package/insertAtomicBlock.js +2 -2
  43. package/insertBlockAfter.js +70 -0
  44. package/insertBlockBefore.js +70 -0
  45. package/insertEmptyBlock.js +4 -4
  46. package/insertEntity.js +37 -0
  47. package/insertNewBlock.js +4 -4
  48. package/insertText.js +2 -2
  49. package/mergeBlockData.js +2 -2
  50. package/mergeBlockDataByKey.js +2 -2
  51. package/mergeEntityData.js +2 -2
  52. package/modifyBlock.js +4 -4
  53. package/modifyBlockByKey.js +2 -2
  54. package/moveCaretAfterBlock.js +2 -2
  55. package/moveCaretToEnd.js +25 -0
  56. package/package.json +8 -10
  57. package/removeBlock.js +2 -2
  58. package/removeBlockStyle.js +2 -2
  59. package/removeEntity.js +34 -0
  60. package/removeInlineStyles.js +4 -4
  61. package/resetBlock.js +2 -2
  62. package/selectAll.js +22 -0
  63. package/selectBlockByKey.js +2 -2
  64. package/toggleBlockStyle.js +2 -2
  65. package/toggleBlockType.js +2 -2
  66. package/toggleEntity.js +2 -2
  67. package/toggleInlineStyle.js +2 -2
  68. package/utils/getCurrentBlock.js +2 -2
  69. package/utils/numbers.js +18 -0
  70. package/es/getCurrentBlock.js +0 -6
  71. package/getCurrentBlock.js +0 -14
@@ -1,16 +1,25 @@
1
- import { SelectionState } from "draft-js";
2
- import { EditorState } from "draft-js";
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
3
9
 
4
10
  var selectBlockByKey = function selectBlockByKey(editorState, key) {
5
11
  var currentBlock = editorState.getCurrentContent().getBlockForKey(key);
6
- var selectionState = SelectionState.createEmpty();
12
+
13
+ var selectionState = _draftJs.SelectionState.createEmpty();
14
+
7
15
  var entireBlockSelectionState = selectionState.merge({
8
16
  anchorKey: key,
9
17
  anchorOffset: 0,
10
18
  focusKey: key,
11
19
  focusOffset: currentBlock.getText().length
12
20
  });
13
- return EditorState.forceSelection(editorState, entireBlockSelectionState);
21
+ return _draftJs.EditorState.forceSelection(editorState, entireBlockSelectionState);
14
22
  };
15
23
 
16
- export default selectBlockByKey;
24
+ var _default = selectBlockByKey;
25
+ exports["default"] = _default;
@@ -1,7 +1,13 @@
1
- import { RichUtils } from "draft-js";
2
- import { EditorState } from "draft-js";
3
- import { Modifier } from "draft-js";
4
- import { Map } from 'immutable';
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
9
+
10
+ var _immutable = require("immutable");
5
11
 
6
12
  var toggleBlockStyle = function toggleBlockStyle(editorState, _ref) {
7
13
  var blockStyle = _ref.type,
@@ -10,16 +16,20 @@ var toggleBlockStyle = function toggleBlockStyle(editorState, _ref) {
10
16
  /* istanbul ignore else */
11
17
  if (data) {
12
18
  var selection = editorState.getSelection();
13
- var newContentState = Modifier.mergeBlockData(editorState.getCurrentContent(), selection, Map(data));
14
- var newEditorState = EditorState.push(editorState, newContentState, 'change-block-data');
15
- return RichUtils.toggleBlockType(newEditorState, blockStyle);
19
+
20
+ var newContentState = _draftJs.Modifier.mergeBlockData(editorState.getCurrentContent(), selection, (0, _immutable.Map)(data));
21
+
22
+ var newEditorState = _draftJs.EditorState.push(editorState, newContentState, 'change-block-data');
23
+
24
+ return _draftJs.RichUtils.toggleBlockType(newEditorState, blockStyle);
16
25
  } // We currently always have data, but just in case we add new types in the
17
26
  // future, the default action is to just blindly toggle it.
18
27
 
19
28
  /* istanbul ignore next */
20
29
 
21
30
 
22
- return RichUtils.toggleBlockType(editorState, blockStyle);
31
+ return _draftJs.RichUtils.toggleBlockType(editorState, blockStyle);
23
32
  };
24
33
 
25
- export default toggleBlockStyle;
34
+ var _default = toggleBlockStyle;
35
+ exports["default"] = _default;
@@ -1,7 +1,15 @@
1
- import { RichUtils } from 'draft-js';
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
2
9
 
3
10
  var toggleBlockType = function toggleBlockType(editorState, blockType) {
4
- return RichUtils.toggleBlockType(editorState, blockType);
11
+ return _draftJs.RichUtils.toggleBlockType(editorState, blockType);
5
12
  };
6
13
 
7
- export default toggleBlockType;
14
+ var _default = toggleBlockType;
15
+ exports["default"] = _default;
@@ -1,7 +1,15 @@
1
- import { RichUtils } from 'draft-js';
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
2
9
 
3
10
  var toggleEntity = function toggleEntity(editorState, entityKey) {
4
- return RichUtils.toggleLink(editorState, editorState.getSelection(), entityKey);
11
+ return _draftJs.RichUtils.toggleLink(editorState, editorState.getSelection(), entityKey);
5
12
  };
6
13
 
7
- export default toggleEntity;
14
+ var _default = toggleEntity;
15
+ exports["default"] = _default;
@@ -1,7 +1,15 @@
1
- import { RichUtils } from 'draft-js';
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
2
9
 
3
10
  var toggleInlineStyle = function toggleInlineStyle(editorState, inlineStyle) {
4
- return RichUtils.toggleInlineStyle(editorState, inlineStyle);
11
+ return _draftJs.RichUtils.toggleInlineStyle(editorState, inlineStyle);
5
12
  };
6
13
 
7
- export default toggleInlineStyle;
14
+ var _default = toggleInlineStyle;
15
+ exports["default"] = _default;
@@ -1,6 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
1
8
  var getCurrentBlock = function getCurrentBlock(editorState) {
2
9
  var selection = editorState.getSelection();
3
10
  return editorState.getCurrentContent().getBlockForKey(selection.getStartKey());
4
11
  };
5
12
 
6
- export default getCurrentBlock;
13
+ var _default = getCurrentBlock;
14
+ exports["default"] = _default;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.rangesOverlap = exports.fallsWithin = void 0;
7
+
8
+ var fallsWithin = function fallsWithin(value, start, end) {
9
+ return start <= value && value <= end;
10
+ };
11
+
12
+ exports.fallsWithin = fallsWithin;
13
+
14
+ var rangesOverlap = function rangesOverlap(s1, e1, s2, e2) {
15
+ return fallsWithin(s2, s1, e1) || fallsWithin(s1, s2, e2);
16
+ };
17
+
18
+ exports.rangesOverlap = rangesOverlap;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.flatten = exports["default"] = void 0;
7
+
8
+ var _ = require(".");
9
+
10
+ var flatten = function flatten(arr) {
11
+ return arr.reduce(function (a, b) {
12
+ return a.concat(b);
13
+ }, []);
14
+ };
15
+
16
+ exports.flatten = flatten;
17
+
18
+ var getAllEntities = function getAllEntities(editorState) {
19
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
20
+ var content = editorState.getCurrentContent();
21
+ var entities = [];
22
+ content.getBlocksAsArray().forEach(function (contentBlock) {
23
+ entities.push((0, _.getEntitiesForBlock)(editorState, contentBlock, type));
24
+ });
25
+ return flatten(entities);
26
+ };
27
+
28
+ var _default = getAllEntities;
29
+ exports["default"] = _default;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
+
10
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
11
+
12
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+
14
+ var getEntitiesForBlock = function getEntitiesForBlock(editorState, contentBlock) {
15
+ var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
16
+ var content = editorState.getCurrentContent();
17
+ var entities = [];
18
+ var selectedEntity = null;
19
+ contentBlock.findEntityRanges(function (character) {
20
+ if (character.getEntity() !== null) {
21
+ var entity = content.getEntity(character.getEntity());
22
+
23
+ if (!type || type && entity.getType() === type) {
24
+ selectedEntity = {
25
+ entityKey: character.getEntity(),
26
+ blockKey: contentBlock.getKey(),
27
+ entity: content.getEntity(character.getEntity())
28
+ };
29
+ return true;
30
+ }
31
+ }
32
+
33
+ return false;
34
+ }, function (start, end) {
35
+ entities.push(_objectSpread(_objectSpread({}, selectedEntity), {}, {
36
+ start: start,
37
+ end: end
38
+ }));
39
+ });
40
+ return entities;
41
+ };
42
+
43
+ var _default = getEntitiesForBlock;
44
+ exports["default"] = _default;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _ = require(".");
9
+
10
+ var _numbers = require("./utils/numbers");
11
+
12
+ var getEntitiesForCurrentBlock = function getEntitiesForCurrentBlock(editorState) {
13
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
14
+ return (0, _.getEntitiesForBlock)(editorState, (0, _.getCurrentBlock)(editorState), type);
15
+ };
16
+
17
+ var getEntitiesForSelection = function getEntitiesForSelection(editorState) {
18
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
19
+ var entities = getEntitiesForCurrentBlock(editorState, type);
20
+ var selection = editorState.getSelection();
21
+ var selectionStart = selection.isCollapsed() ? selection.getStartOffset() - 1 : selection.getStartOffset();
22
+ var selectionEnd = selection.getEndOffset();
23
+ return entities.filter(function (_ref) {
24
+ var start = _ref.start,
25
+ end = _ref.end;
26
+ return (0, _numbers.rangesOverlap)(selectionStart, selectionEnd, start, end);
27
+ });
28
+ };
29
+
30
+ var _default = getEntitiesForSelection;
31
+ exports["default"] = _default;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var getSelectedText = function getSelectedText(editorState) {
9
+ var selectionState = editorState.getSelection();
10
+ var anchorKey = selectionState.getAnchorKey();
11
+ var currentContent = editorState.getCurrentContent();
12
+ var currentContentBlock = currentContent.getBlockForKey(anchorKey);
13
+ var start = selectionState.getStartOffset();
14
+ var end = selectionState.getEndOffset();
15
+ return currentContentBlock.getText().slice(start, end);
16
+ };
17
+
18
+ var _default = getSelectedText;
19
+ exports["default"] = _default;
package/index.js CHANGED
@@ -3,150 +3,224 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.DRAFTJS_BLOCK_KEY = void 0;
6
7
  Object.defineProperty(exports, "addBlock", {
7
8
  enumerable: true,
8
9
  get: function get() {
9
- return _addBlock.default;
10
+ return _addBlock["default"];
10
11
  }
11
12
  });
12
13
  Object.defineProperty(exports, "adjustBlockDepth", {
13
14
  enumerable: true,
14
15
  get: function get() {
15
- return _adjustBlockDepth.default;
16
+ return _adjustBlockDepth["default"];
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "getAllEntities", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _getAllEntities["default"];
16
23
  }
17
24
  });
18
25
  Object.defineProperty(exports, "getCurrentBlock", {
19
26
  enumerable: true,
20
27
  get: function get() {
21
- return _getCurrentBlock.default;
28
+ return _getCurrentBlock["default"];
29
+ }
30
+ });
31
+ Object.defineProperty(exports, "getEntitiesForBlock", {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _getEntitiesForBlock["default"];
35
+ }
36
+ });
37
+ Object.defineProperty(exports, "getEntitiesForSelection", {
38
+ enumerable: true,
39
+ get: function get() {
40
+ return _getEntitiesForSelection["default"];
41
+ }
42
+ });
43
+ Object.defineProperty(exports, "getSelectedText", {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _getSelectedText["default"];
22
47
  }
23
48
  });
24
49
  Object.defineProperty(exports, "insertAtomicBlock", {
25
50
  enumerable: true,
26
51
  get: function get() {
27
- return _insertAtomicBlock.default;
52
+ return _insertAtomicBlock["default"];
53
+ }
54
+ });
55
+ Object.defineProperty(exports, "insertBlockAfter", {
56
+ enumerable: true,
57
+ get: function get() {
58
+ return _insertBlockAfter["default"];
59
+ }
60
+ });
61
+ Object.defineProperty(exports, "insertBlockBefore", {
62
+ enumerable: true,
63
+ get: function get() {
64
+ return _insertBlockBefore["default"];
28
65
  }
29
66
  });
30
67
  Object.defineProperty(exports, "insertEmptyBlock", {
31
68
  enumerable: true,
32
69
  get: function get() {
33
- return _insertEmptyBlock.default;
70
+ return _insertEmptyBlock["default"];
71
+ }
72
+ });
73
+ Object.defineProperty(exports, "insertEntity", {
74
+ enumerable: true,
75
+ get: function get() {
76
+ return _insertEntity["default"];
34
77
  }
35
78
  });
36
79
  Object.defineProperty(exports, "insertNewBlock", {
37
80
  enumerable: true,
38
81
  get: function get() {
39
- return _insertNewBlock.default;
82
+ return _insertNewBlock["default"];
40
83
  }
41
84
  });
42
85
  Object.defineProperty(exports, "insertText", {
43
86
  enumerable: true,
44
87
  get: function get() {
45
- return _insertText.default;
88
+ return _insertText["default"];
46
89
  }
47
90
  });
48
91
  Object.defineProperty(exports, "mergeBlockData", {
49
92
  enumerable: true,
50
93
  get: function get() {
51
- return _mergeBlockData.default;
94
+ return _mergeBlockData["default"];
52
95
  }
53
96
  });
54
97
  Object.defineProperty(exports, "mergeBlockDataByKey", {
55
98
  enumerable: true,
56
99
  get: function get() {
57
- return _mergeBlockDataByKey.default;
100
+ return _mergeBlockDataByKey["default"];
58
101
  }
59
102
  });
60
103
  Object.defineProperty(exports, "mergeEntityData", {
61
104
  enumerable: true,
62
105
  get: function get() {
63
- return _mergeEntityData.default;
106
+ return _mergeEntityData["default"];
64
107
  }
65
108
  });
66
109
  Object.defineProperty(exports, "modifyBlock", {
67
110
  enumerable: true,
68
111
  get: function get() {
69
- return _modifyBlock.default;
112
+ return _modifyBlock["default"];
70
113
  }
71
114
  });
72
115
  Object.defineProperty(exports, "modifyBlockByKey", {
73
116
  enumerable: true,
74
117
  get: function get() {
75
- return _modifyBlockByKey.default;
118
+ return _modifyBlockByKey["default"];
76
119
  }
77
120
  });
78
121
  Object.defineProperty(exports, "moveCaretAfterBlock", {
79
122
  enumerable: true,
80
123
  get: function get() {
81
- return _moveCaretAfterBlock.default;
124
+ return _moveCaretAfterBlock["default"];
125
+ }
126
+ });
127
+ Object.defineProperty(exports, "moveCaretToEnd", {
128
+ enumerable: true,
129
+ get: function get() {
130
+ return _moveCaretToEnd["default"];
82
131
  }
83
132
  });
84
133
  Object.defineProperty(exports, "removeBlock", {
85
134
  enumerable: true,
86
135
  get: function get() {
87
- return _removeBlock.default;
136
+ return _removeBlock["default"];
88
137
  }
89
138
  });
90
139
  Object.defineProperty(exports, "removeBlockStyle", {
91
140
  enumerable: true,
92
141
  get: function get() {
93
- return _removeBlockStyle.default;
142
+ return _removeBlockStyle["default"];
143
+ }
144
+ });
145
+ Object.defineProperty(exports, "removeEntity", {
146
+ enumerable: true,
147
+ get: function get() {
148
+ return _removeEntity["default"];
94
149
  }
95
150
  });
96
151
  Object.defineProperty(exports, "removeInlineStyles", {
97
152
  enumerable: true,
98
153
  get: function get() {
99
- return _removeInlineStyles.default;
154
+ return _removeInlineStyles["default"];
100
155
  }
101
156
  });
102
157
  Object.defineProperty(exports, "resetBlock", {
103
158
  enumerable: true,
104
159
  get: function get() {
105
- return _resetBlock.default;
160
+ return _resetBlock["default"];
161
+ }
162
+ });
163
+ Object.defineProperty(exports, "selectAll", {
164
+ enumerable: true,
165
+ get: function get() {
166
+ return _selectAll["default"];
106
167
  }
107
168
  });
108
169
  Object.defineProperty(exports, "selectBlockByKey", {
109
170
  enumerable: true,
110
171
  get: function get() {
111
- return _selectBlockByKey.default;
172
+ return _selectBlockByKey["default"];
112
173
  }
113
174
  });
114
175
  Object.defineProperty(exports, "toggleBlockStyle", {
115
176
  enumerable: true,
116
177
  get: function get() {
117
- return _toggleBlockStyle.default;
178
+ return _toggleBlockStyle["default"];
118
179
  }
119
180
  });
120
181
  Object.defineProperty(exports, "toggleBlockType", {
121
182
  enumerable: true,
122
183
  get: function get() {
123
- return _toggleBlockType.default;
184
+ return _toggleBlockType["default"];
124
185
  }
125
186
  });
126
187
  Object.defineProperty(exports, "toggleEntity", {
127
188
  enumerable: true,
128
189
  get: function get() {
129
- return _toggleEntity.default;
190
+ return _toggleEntity["default"];
130
191
  }
131
192
  });
132
193
  Object.defineProperty(exports, "toggleInlineStyle", {
133
194
  enumerable: true,
134
195
  get: function get() {
135
- return _toggleInlineStyle.default;
196
+ return _toggleInlineStyle["default"];
136
197
  }
137
198
  });
138
- exports.DRAFTJS_BLOCK_KEY = void 0;
139
199
 
140
200
  var _addBlock = _interopRequireDefault(require("./addBlock"));
141
201
 
142
202
  var _adjustBlockDepth = _interopRequireDefault(require("./adjustBlockDepth"));
143
203
 
144
- var _getCurrentBlock = _interopRequireDefault(require("./getCurrentBlock"));
204
+ var _getAllEntities = _interopRequireDefault(require("./getAllEntities"));
205
+
206
+ var _getCurrentBlock = _interopRequireDefault(require("./utils/getCurrentBlock"));
207
+
208
+ var _getEntitiesForBlock = _interopRequireDefault(require("./getEntitiesForBlock"));
209
+
210
+ var _getEntitiesForSelection = _interopRequireDefault(require("./getEntitiesForSelection"));
211
+
212
+ var _getSelectedText = _interopRequireDefault(require("./getSelectedText"));
145
213
 
146
214
  var _insertAtomicBlock = _interopRequireDefault(require("./insertAtomicBlock"));
147
215
 
216
+ var _insertBlockAfter = _interopRequireDefault(require("./insertBlockAfter"));
217
+
218
+ var _insertBlockBefore = _interopRequireDefault(require("./insertBlockBefore"));
219
+
148
220
  var _insertEmptyBlock = _interopRequireDefault(require("./insertEmptyBlock"));
149
221
 
222
+ var _insertEntity = _interopRequireDefault(require("./insertEntity"));
223
+
150
224
  var _insertNewBlock = _interopRequireDefault(require("./insertNewBlock"));
151
225
 
152
226
  var _insertText = _interopRequireDefault(require("./insertText"));
@@ -163,14 +237,20 @@ var _modifyBlockByKey = _interopRequireDefault(require("./modifyBlockByKey"));
163
237
 
164
238
  var _moveCaretAfterBlock = _interopRequireDefault(require("./moveCaretAfterBlock"));
165
239
 
240
+ var _moveCaretToEnd = _interopRequireDefault(require("./moveCaretToEnd"));
241
+
166
242
  var _removeBlock = _interopRequireDefault(require("./removeBlock"));
167
243
 
168
244
  var _removeBlockStyle = _interopRequireDefault(require("./removeBlockStyle"));
169
245
 
246
+ var _removeEntity = _interopRequireDefault(require("./removeEntity"));
247
+
170
248
  var _removeInlineStyles = _interopRequireDefault(require("./removeInlineStyles"));
171
249
 
172
250
  var _resetBlock = _interopRequireDefault(require("./resetBlock"));
173
251
 
252
+ var _selectAll = _interopRequireDefault(require("./selectAll"));
253
+
174
254
  var _selectBlockByKey = _interopRequireDefault(require("./selectBlockByKey"));
175
255
 
176
256
  var _toggleBlockStyle = _interopRequireDefault(require("./toggleBlockStyle"));
@@ -181,7 +261,7 @@ var _toggleEntity = _interopRequireDefault(require("./toggleEntity"));
181
261
 
182
262
  var _toggleInlineStyle = _interopRequireDefault(require("./toggleInlineStyle"));
183
263
 
184
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
264
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
185
265
 
186
266
  var DRAFTJS_BLOCK_KEY = 'DRAFTJS_BLOCK_KEY';
187
267
  exports.DRAFTJS_BLOCK_KEY = DRAFTJS_BLOCK_KEY;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports["default"] = void 0;
7
7
 
8
8
  var _draftJs = require("draft-js");
9
9
 
@@ -14,4 +14,4 @@ var insertAtomicBlock = function insertAtomicBlock(editorState, entityType, muta
14
14
  };
15
15
 
16
16
  var _default = insertAtomicBlock;
17
- exports.default = _default;
17
+ exports["default"] = _default;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _draftJs = require("draft-js");
9
+
10
+ var _immutable = _interopRequireDefault(require("immutable"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+
14
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
15
+
16
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
+
18
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
19
+
20
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
+
22
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
23
+
24
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
25
+
26
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
27
+
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
+
32
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
+
34
+ var insertBlockAfter = function insertBlockAfter(editorState, keyBefore, blockParams) {
35
+ var newBlock = new _draftJs.ContentBlock(_objectSpread({
36
+ key: (0, _draftJs.genKey)(),
37
+ type: 'unstyled',
38
+ text: ''
39
+ }, blockParams));
40
+ var contentState = editorState.getCurrentContent();
41
+ var oldBlockMap = contentState.getBlockMap();
42
+
43
+ var newBlockMap = _immutable["default"].OrderedMap().withMutations(function (map) {
44
+ var _iterator = _createForOfIteratorHelper(oldBlockMap.entries()),
45
+ _step;
46
+
47
+ try {
48
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
49
+ var _step$value = _slicedToArray(_step.value, 2),
50
+ k = _step$value[0],
51
+ v = _step$value[1];
52
+
53
+ map.set(k, v);
54
+
55
+ if (keyBefore === k) {
56
+ map.set(newBlock.key, newBlock);
57
+ }
58
+ }
59
+ } catch (err) {
60
+ _iterator.e(err);
61
+ } finally {
62
+ _iterator.f();
63
+ }
64
+ });
65
+
66
+ return _draftJs.EditorState.push(editorState, _draftJs.ContentState.createFromBlockArray(Array.from(newBlockMap.values())).set('selectionBefore', contentState.getSelectionBefore()).set('selectionAfter', contentState.getSelectionAfter()));
67
+ };
68
+
69
+ var _default = insertBlockAfter;
70
+ exports["default"] = _default;