slate-react 0.79.0 → 0.80.0

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,83 +50,6 @@ 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
-
130
53
  var arrayWithHoles = createCommonjsModule(function (module) {
131
54
  function _arrayWithHoles(arr) {
132
55
  if (Array.isArray(arr)) return arr;
@@ -175,6 +98,39 @@ module.exports["default"] = module.exports, module.exports.__esModule = true;
175
98
 
176
99
  unwrapExports(iterableToArrayLimit);
177
100
 
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
+
178
134
  var nonIterableRest = createCommonjsModule(function (module) {
179
135
  function _nonIterableRest() {
180
136
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
@@ -798,6 +754,21 @@ var useSlateStatic = function useSlateStatic() {
798
754
  return editor;
799
755
  };
800
756
 
757
+ /**
758
+ * A React context for sharing the `decorate` prop of the editable.
759
+ */
760
+
761
+ var DecorateContext = /*#__PURE__*/React.createContext(function () {
762
+ return [];
763
+ });
764
+ /**
765
+ * Get the current `decorate` prop of the editable.
766
+ */
767
+
768
+ var useDecorate = function useDecorate() {
769
+ return React.useContext(DecorateContext);
770
+ };
771
+
801
772
  /**
802
773
  * A React context for sharing the `selected` state of an element.
803
774
  */
@@ -811,6 +782,11 @@ var useSelected = function useSelected() {
811
782
  return React.useContext(SelectedContext);
812
783
  };
813
784
 
785
+ 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; } } }; }
786
+
787
+ 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); }
788
+
789
+ 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; }
814
790
  /**
815
791
  * Children.
816
792
  */
@@ -822,22 +798,37 @@ var useChildren = function useChildren(props) {
822
798
  renderPlaceholder = props.renderPlaceholder,
823
799
  renderLeaf = props.renderLeaf,
824
800
  selection = props.selection;
801
+ var decorate = useDecorate();
825
802
  var editor = useSlateStatic();
826
803
  var path = ReactEditor.findPath(editor, node);
827
804
  var children = [];
828
805
  var isLeafBlock = slate.Element.isElement(node) && !editor.isInline(node) && slate.Editor.hasInlines(editor, node);
829
806
 
830
- var _loop = function _loop(i) {
807
+ for (var i = 0; i < node.children.length; i++) {
831
808
  var p = path.concat(i);
832
809
  var n = node.children[i];
833
810
  var key = ReactEditor.findKey(editor, n);
834
811
  var range = slate.Editor.range(editor, p);
835
812
  var sel = selection && slate.Range.intersection(range, selection);
836
- var ds = decorations.reduce(function (acc, dec) {
837
- var intersection = slate.Range.intersection(dec, range);
838
- if (intersection) acc.push(intersection);
839
- return acc;
840
- }, []);
813
+ var ds = decorate([n, p]);
814
+
815
+ var _iterator = _createForOfIteratorHelper$3(decorations),
816
+ _step;
817
+
818
+ try {
819
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
820
+ var dec = _step.value;
821
+ var d = slate.Range.intersection(dec, range);
822
+
823
+ if (d) {
824
+ ds.push(d);
825
+ }
826
+ }
827
+ } catch (err) {
828
+ _iterator.e(err);
829
+ } finally {
830
+ _iterator.f();
831
+ }
841
832
 
842
833
  if (slate.Element.isElement(n)) {
843
834
  children.push( /*#__PURE__*/React__default['default'].createElement(SelectedContext.Provider, {
@@ -866,10 +857,6 @@ var useChildren = function useChildren(props) {
866
857
 
867
858
  NODE_TO_INDEX.set(n, i);
868
859
  NODE_TO_PARENT.set(n, node);
869
- };
870
-
871
- for (var i = 0; i < node.children.length; i++) {
872
- _loop(i);
873
860
  }
874
861
 
875
862
  return children;
@@ -1002,14 +989,6 @@ var useSlate = function useSlate() {
1002
989
  return editor;
1003
990
  };
1004
991
 
1005
- /**
1006
- * A React context for sharing the `decorate` prop of the editable.
1007
- */
1008
-
1009
- var DecorateContext = /*#__PURE__*/React.createContext(function () {
1010
- return [];
1011
- });
1012
-
1013
992
  /**
1014
993
  * Returns the host window of a DOM node
1015
994
  */
@@ -1705,14 +1684,7 @@ var Editable$1 = function Editable(props) {
1705
1684
  window.document.removeEventListener('selectionchange', scheduleOnDOMSelectionChange);
1706
1685
  };
1707
1686
  }, [scheduleOnDOMSelectionChange]);
1708
-
1709
- var decorations = _toConsumableArray(slate.Node.nodes(editor)).flatMap(function (_ref) {
1710
- var _ref2 = _slicedToArray(_ref, 2),
1711
- n = _ref2[0],
1712
- p = _ref2[1];
1713
-
1714
- return decorate([n, p]);
1715
- });
1687
+ var decorations = decorate([editor, []]);
1716
1688
 
1717
1689
  if (placeholder && editor.children.length === 1 && Array.from(slate.Node.texts(editor)).length === 1 && slate.Node.string(editor) === '' && !isComposing) {
1718
1690
  var _decorations$push;
@@ -2405,9 +2377,9 @@ var Editable$1 = function Editable(props) {
2405
2377
  * The default placeholder element
2406
2378
  */
2407
2379
 
2408
- var DefaultPlaceholder = function DefaultPlaceholder(_ref3) {
2409
- var attributes = _ref3.attributes,
2410
- children = _ref3.children;
2380
+ var DefaultPlaceholder = function DefaultPlaceholder(_ref) {
2381
+ var attributes = _ref.attributes,
2382
+ children = _ref.children;
2411
2383
  return /*#__PURE__*/React__default['default'].createElement("span", Object.assign({}, attributes), children);
2412
2384
  };
2413
2385
  /**
@@ -2734,6 +2706,50 @@ module.exports["default"] = module.exports, module.exports.__esModule = true;
2734
2706
 
2735
2707
  var _classCallCheck = unwrapExports(classCallCheck);
2736
2708
 
2709
+ var arrayWithoutHoles = createCommonjsModule(function (module) {
2710
+ function _arrayWithoutHoles(arr) {
2711
+ if (Array.isArray(arr)) return arrayLikeToArray(arr);
2712
+ }
2713
+
2714
+ module.exports = _arrayWithoutHoles;
2715
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
2716
+ });
2717
+
2718
+ unwrapExports(arrayWithoutHoles);
2719
+
2720
+ var iterableToArray = createCommonjsModule(function (module) {
2721
+ function _iterableToArray(iter) {
2722
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
2723
+ }
2724
+
2725
+ module.exports = _iterableToArray;
2726
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
2727
+ });
2728
+
2729
+ unwrapExports(iterableToArray);
2730
+
2731
+ var nonIterableSpread = createCommonjsModule(function (module) {
2732
+ function _nonIterableSpread() {
2733
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2734
+ }
2735
+
2736
+ module.exports = _nonIterableSpread;
2737
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
2738
+ });
2739
+
2740
+ unwrapExports(nonIterableSpread);
2741
+
2742
+ var toConsumableArray = createCommonjsModule(function (module) {
2743
+ function _toConsumableArray(arr) {
2744
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
2745
+ }
2746
+
2747
+ module.exports = _toConsumableArray;
2748
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
2749
+ });
2750
+
2751
+ var _toConsumableArray = unwrapExports(toConsumableArray);
2752
+
2737
2753
  /**
2738
2754
  * An auto-incrementing identifier for keys.
2739
2755
  */