slate-react 0.74.0 → 0.74.2-20222911156

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.
package/dist/index.js CHANGED
@@ -50,6 +50,83 @@ module.exports["default"] = module.exports, module.exports.__esModule = true;
50
50
 
51
51
  var _defineProperty = unwrapExports(defineProperty);
52
52
 
53
+ var arrayLikeToArray = createCommonjsModule(function (module) {
54
+ function _arrayLikeToArray(arr, len) {
55
+ if (len == null || len > arr.length) len = arr.length;
56
+
57
+ for (var i = 0, arr2 = new Array(len); i < len; i++) {
58
+ arr2[i] = arr[i];
59
+ }
60
+
61
+ return arr2;
62
+ }
63
+
64
+ module.exports = _arrayLikeToArray;
65
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
66
+ });
67
+
68
+ unwrapExports(arrayLikeToArray);
69
+
70
+ var arrayWithoutHoles = createCommonjsModule(function (module) {
71
+ function _arrayWithoutHoles(arr) {
72
+ if (Array.isArray(arr)) return arrayLikeToArray(arr);
73
+ }
74
+
75
+ module.exports = _arrayWithoutHoles;
76
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
77
+ });
78
+
79
+ unwrapExports(arrayWithoutHoles);
80
+
81
+ var iterableToArray = createCommonjsModule(function (module) {
82
+ function _iterableToArray(iter) {
83
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
84
+ }
85
+
86
+ module.exports = _iterableToArray;
87
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
88
+ });
89
+
90
+ unwrapExports(iterableToArray);
91
+
92
+ var unsupportedIterableToArray = createCommonjsModule(function (module) {
93
+ function _unsupportedIterableToArray(o, minLen) {
94
+ if (!o) return;
95
+ if (typeof o === "string") return arrayLikeToArray(o, minLen);
96
+ var n = Object.prototype.toString.call(o).slice(8, -1);
97
+ if (n === "Object" && o.constructor) n = o.constructor.name;
98
+ if (n === "Map" || n === "Set") return Array.from(o);
99
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
100
+ }
101
+
102
+ module.exports = _unsupportedIterableToArray;
103
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
104
+ });
105
+
106
+ unwrapExports(unsupportedIterableToArray);
107
+
108
+ var nonIterableSpread = createCommonjsModule(function (module) {
109
+ function _nonIterableSpread() {
110
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
111
+ }
112
+
113
+ module.exports = _nonIterableSpread;
114
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
115
+ });
116
+
117
+ unwrapExports(nonIterableSpread);
118
+
119
+ var toConsumableArray = createCommonjsModule(function (module) {
120
+ function _toConsumableArray(arr) {
121
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
122
+ }
123
+
124
+ module.exports = _toConsumableArray;
125
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
126
+ });
127
+
128
+ var _toConsumableArray = unwrapExports(toConsumableArray);
129
+
53
130
  var arrayWithHoles = createCommonjsModule(function (module) {
54
131
  function _arrayWithHoles(arr) {
55
132
  if (Array.isArray(arr)) return arr;
@@ -98,39 +175,6 @@ module.exports["default"] = module.exports, module.exports.__esModule = true;
98
175
 
99
176
  unwrapExports(iterableToArrayLimit);
100
177
 
101
- var arrayLikeToArray = createCommonjsModule(function (module) {
102
- function _arrayLikeToArray(arr, len) {
103
- if (len == null || len > arr.length) len = arr.length;
104
-
105
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
106
- arr2[i] = arr[i];
107
- }
108
-
109
- return arr2;
110
- }
111
-
112
- module.exports = _arrayLikeToArray;
113
- module.exports["default"] = module.exports, module.exports.__esModule = true;
114
- });
115
-
116
- unwrapExports(arrayLikeToArray);
117
-
118
- var unsupportedIterableToArray = createCommonjsModule(function (module) {
119
- function _unsupportedIterableToArray(o, minLen) {
120
- if (!o) return;
121
- if (typeof o === "string") return arrayLikeToArray(o, minLen);
122
- var n = Object.prototype.toString.call(o).slice(8, -1);
123
- if (n === "Object" && o.constructor) n = o.constructor.name;
124
- if (n === "Map" || n === "Set") return Array.from(o);
125
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
126
- }
127
-
128
- module.exports = _unsupportedIterableToArray;
129
- module.exports["default"] = module.exports, module.exports.__esModule = true;
130
- });
131
-
132
- unwrapExports(unsupportedIterableToArray);
133
-
134
178
  var nonIterableRest = createCommonjsModule(function (module) {
135
179
  function _nonIterableRest() {
136
180
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
@@ -780,11 +824,6 @@ var useSelected = function useSelected() {
780
824
  return React.useContext(SelectedContext);
781
825
  };
782
826
 
783
- function _createForOfIteratorHelper$3(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$3(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(_e) { throw _e; }, 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(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
784
-
785
- function _unsupportedIterableToArray$3(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$3(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$3(o, minLen); }
786
-
787
- function _arrayLikeToArray$3(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; }
788
827
  /**
789
828
  * Children.
790
829
  */
@@ -796,37 +835,21 @@ var useChildren = function useChildren(props) {
796
835
  renderPlaceholder = props.renderPlaceholder,
797
836
  renderLeaf = props.renderLeaf,
798
837
  selection = props.selection;
799
- var decorate = useDecorate();
838
+ useDecorate();
800
839
  var editor = useSlateStatic();
801
840
  var path = ReactEditor.findPath(editor, node);
802
841
  var children = [];
803
842
  var isLeafBlock = slate.Element.isElement(node) && !editor.isInline(node) && slate.Editor.hasInlines(editor, node);
804
843
 
805
- for (var i = 0; i < node.children.length; i++) {
844
+ var _loop = function _loop(i) {
806
845
  var p = path.concat(i);
807
846
  var n = node.children[i];
808
847
  var key = ReactEditor.findKey(editor, n);
809
848
  var range = slate.Editor.range(editor, p);
810
849
  var sel = selection && slate.Range.intersection(range, selection);
811
- var ds = decorate([n, p]);
812
-
813
- var _iterator = _createForOfIteratorHelper$3(decorations),
814
- _step;
815
-
816
- try {
817
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
818
- var dec = _step.value;
819
- var d = slate.Range.intersection(dec, range);
820
-
821
- if (d) {
822
- ds.push(d);
823
- }
824
- }
825
- } catch (err) {
826
- _iterator.e(err);
827
- } finally {
828
- _iterator.f();
829
- }
850
+ var ds = decorations.filter(function (dec) {
851
+ return slate.Range.intersection(dec, range);
852
+ });
830
853
 
831
854
  if (slate.Element.isElement(n)) {
832
855
  children.push( /*#__PURE__*/React__default['default'].createElement(SelectedContext.Provider, {
@@ -855,6 +878,10 @@ var useChildren = function useChildren(props) {
855
878
 
856
879
  NODE_TO_INDEX.set(n, i);
857
880
  NODE_TO_PARENT.set(n, node);
881
+ };
882
+
883
+ for (var i = 0; i < node.children.length; i++) {
884
+ _loop(i);
858
885
  }
859
886
 
860
887
  return children;
@@ -1582,6 +1609,14 @@ var Editable$1 = function Editable(props) {
1582
1609
  case 'insertReplacementText':
1583
1610
  case 'insertText':
1584
1611
  {
1612
+ var _selection = editor.selection;
1613
+
1614
+ if (_selection) {
1615
+ if (slate.Range.isExpanded(_selection)) {
1616
+ slate.Editor.deleteFragment(editor);
1617
+ }
1618
+ }
1619
+
1585
1620
  if (type === 'insertFromComposition') {
1586
1621
  // COMPAT: in Safari, `compositionend` is dispatched after the
1587
1622
  // `beforeinput` for "insertFromComposition". But if we wait for it
@@ -1643,7 +1678,14 @@ var Editable$1 = function Editable(props) {
1643
1678
  window.document.removeEventListener('selectionchange', scheduleOnDOMSelectionChange);
1644
1679
  };
1645
1680
  }, [scheduleOnDOMSelectionChange]);
1646
- var decorations = decorate([editor, []]);
1681
+
1682
+ var decorations = _toConsumableArray(slate.Node.nodes(editor)).flatMap(function (_ref) {
1683
+ var _ref2 = _slicedToArray(_ref, 2),
1684
+ n = _ref2[0],
1685
+ p = _ref2[1];
1686
+
1687
+ return decorate([n, p]);
1688
+ });
1647
1689
 
1648
1690
  if (placeholder && editor.children.length === 1 && Array.from(slate.Node.texts(editor)).length === 1 && slate.Node.string(editor) === '' && !isComposing) {
1649
1691
  var _decorations$push;
@@ -2290,9 +2332,9 @@ var Editable$1 = function Editable(props) {
2290
2332
  * The default placeholder element
2291
2333
  */
2292
2334
 
2293
- var DefaultPlaceholder = function DefaultPlaceholder(_ref) {
2294
- var attributes = _ref.attributes,
2295
- children = _ref.children;
2335
+ var DefaultPlaceholder = function DefaultPlaceholder(_ref3) {
2336
+ var attributes = _ref3.attributes,
2337
+ children = _ref3.children;
2296
2338
  return /*#__PURE__*/React__default['default'].createElement("span", Object.assign({}, attributes), children);
2297
2339
  };
2298
2340
  /**
@@ -2618,50 +2660,6 @@ module.exports["default"] = module.exports, module.exports.__esModule = true;
2618
2660
 
2619
2661
  var _classCallCheck = unwrapExports(classCallCheck);
2620
2662
 
2621
- var arrayWithoutHoles = createCommonjsModule(function (module) {
2622
- function _arrayWithoutHoles(arr) {
2623
- if (Array.isArray(arr)) return arrayLikeToArray(arr);
2624
- }
2625
-
2626
- module.exports = _arrayWithoutHoles;
2627
- module.exports["default"] = module.exports, module.exports.__esModule = true;
2628
- });
2629
-
2630
- unwrapExports(arrayWithoutHoles);
2631
-
2632
- var iterableToArray = createCommonjsModule(function (module) {
2633
- function _iterableToArray(iter) {
2634
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
2635
- }
2636
-
2637
- module.exports = _iterableToArray;
2638
- module.exports["default"] = module.exports, module.exports.__esModule = true;
2639
- });
2640
-
2641
- unwrapExports(iterableToArray);
2642
-
2643
- var nonIterableSpread = createCommonjsModule(function (module) {
2644
- function _nonIterableSpread() {
2645
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2646
- }
2647
-
2648
- module.exports = _nonIterableSpread;
2649
- module.exports["default"] = module.exports, module.exports.__esModule = true;
2650
- });
2651
-
2652
- unwrapExports(nonIterableSpread);
2653
-
2654
- var toConsumableArray = createCommonjsModule(function (module) {
2655
- function _toConsumableArray(arr) {
2656
- return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
2657
- }
2658
-
2659
- module.exports = _toConsumableArray;
2660
- module.exports["default"] = module.exports, module.exports.__esModule = true;
2661
- });
2662
-
2663
- var _toConsumableArray = unwrapExports(toConsumableArray);
2664
-
2665
2663
  /**
2666
2664
  * An auto-incrementing identifier for keys.
2667
2665
  */
@@ -4340,16 +4338,19 @@ var Slate = function Slate(props) {
4340
4338
  });
4341
4339
  useIsomorphicLayoutEffect(function () {
4342
4340
  var fn = function fn() {
4343
- setTimeout(function () {
4344
- if (unmountRef.current) {
4345
- return;
4346
- }
4347
-
4348
- setIsFocused(ReactEditor.isFocused(editor));
4349
- }, 0);
4341
+ return setIsFocused(ReactEditor.isFocused(editor));
4350
4342
  };
4351
4343
 
4352
4344
  document.addEventListener('focus', fn, true);
4345
+ return function () {
4346
+ return document.removeEventListener('focus', fn, true);
4347
+ };
4348
+ }, []);
4349
+ useIsomorphicLayoutEffect(function () {
4350
+ var fn = function fn() {
4351
+ return setIsFocused(ReactEditor.isFocused(editor));
4352
+ };
4353
+
4353
4354
  document.addEventListener('blur', fn, true);
4354
4355
  return function () {
4355
4356
  document.removeEventListener('focus', fn, true);