@atlaskit/adf-schema 29.2.0 → 30.0.1

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 (59) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/steps.js +0 -21
  3. package/dist/es2019/steps.js +0 -3
  4. package/dist/esm/steps.js +0 -3
  5. package/dist/types/schema/nodes/tableNodes.d.ts +6 -2
  6. package/dist/types/steps.d.ts +0 -4
  7. package/package.json +1 -3
  8. package/dist/cjs/steps/table/add-column.js +0 -381
  9. package/dist/cjs/steps/table/constants.js +0 -12
  10. package/dist/cjs/steps/table/sort-column.js +0 -68
  11. package/dist/cjs/steps/table/types.js +0 -5
  12. package/dist/cjs/steps/table/utils/cell-step.js +0 -202
  13. package/dist/cjs/steps/table/utils/cells-at-column.js +0 -73
  14. package/dist/cjs/steps/table/utils/find-column.js +0 -90
  15. package/dist/cjs/steps/table/utils/get-table-rect-from-doc.js +0 -36
  16. package/dist/cjs/steps/table/utils/side-effects/rows.js +0 -315
  17. package/dist/cjs/steps/table/utils/side-effects/side-effects.js +0 -83
  18. package/dist/cjs/steps/table/utils/side-effects/table.js +0 -110
  19. package/dist/cjs/steps/table/utils/side-effects/types.js +0 -5
  20. package/dist/cjs/steps/table/utils/table-map.js +0 -30
  21. package/dist/es2019/steps/table/add-column.js +0 -306
  22. package/dist/es2019/steps/table/constants.js +0 -5
  23. package/dist/es2019/steps/table/sort-column.js +0 -34
  24. package/dist/es2019/steps/table/types.js +0 -1
  25. package/dist/es2019/steps/table/utils/cell-step.js +0 -187
  26. package/dist/es2019/steps/table/utils/cells-at-column.js +0 -52
  27. package/dist/es2019/steps/table/utils/find-column.js +0 -83
  28. package/dist/es2019/steps/table/utils/get-table-rect-from-doc.js +0 -31
  29. package/dist/es2019/steps/table/utils/side-effects/rows.js +0 -257
  30. package/dist/es2019/steps/table/utils/side-effects/side-effects.js +0 -60
  31. package/dist/es2019/steps/table/utils/side-effects/table.js +0 -82
  32. package/dist/es2019/steps/table/utils/side-effects/types.js +0 -1
  33. package/dist/es2019/steps/table/utils/table-map.js +0 -19
  34. package/dist/esm/steps/table/add-column.js +0 -373
  35. package/dist/esm/steps/table/constants.js +0 -5
  36. package/dist/esm/steps/table/sort-column.js +0 -60
  37. package/dist/esm/steps/table/types.js +0 -1
  38. package/dist/esm/steps/table/utils/cell-step.js +0 -192
  39. package/dist/esm/steps/table/utils/cells-at-column.js +0 -66
  40. package/dist/esm/steps/table/utils/find-column.js +0 -84
  41. package/dist/esm/steps/table/utils/get-table-rect-from-doc.js +0 -31
  42. package/dist/esm/steps/table/utils/side-effects/rows.js +0 -307
  43. package/dist/esm/steps/table/utils/side-effects/side-effects.js +0 -75
  44. package/dist/esm/steps/table/utils/side-effects/table.js +0 -102
  45. package/dist/esm/steps/table/utils/side-effects/types.js +0 -1
  46. package/dist/esm/steps/table/utils/table-map.js +0 -19
  47. package/dist/types/steps/table/add-column.d.ts +0 -88
  48. package/dist/types/steps/table/constants.d.ts +0 -4
  49. package/dist/types/steps/table/sort-column.d.ts +0 -18
  50. package/dist/types/steps/table/types.d.ts +0 -39
  51. package/dist/types/steps/table/utils/cell-step.d.ts +0 -47
  52. package/dist/types/steps/table/utils/cells-at-column.d.ts +0 -20
  53. package/dist/types/steps/table/utils/find-column.d.ts +0 -8
  54. package/dist/types/steps/table/utils/get-table-rect-from-doc.d.ts +0 -8
  55. package/dist/types/steps/table/utils/side-effects/rows.d.ts +0 -25
  56. package/dist/types/steps/table/utils/side-effects/side-effects.d.ts +0 -15
  57. package/dist/types/steps/table/utils/side-effects/table.d.ts +0 -16
  58. package/dist/types/steps/table/utils/side-effects/types.d.ts +0 -33
  59. package/dist/types/steps/table/utils/table-map.d.ts +0 -6
@@ -1,315 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.RowsSideEffectHandler = void 0;
8
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
- var _tableMap = require("../table-map");
13
- 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(_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; } } }; }
14
- 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); }
15
- 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; }
16
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
- function mergedRanges(first, second) {
19
- var newRanges = [];
20
- var firstLength = first.length;
21
- var secondLength = second.length;
22
- var i = 0;
23
- var j = 0;
24
- while (i < firstLength && j < secondLength) {
25
- if (first[i] < second[j]) {
26
- newRanges.push(first[i], first[i + 1], first[i + 2]);
27
- i += 3;
28
- } else {
29
- newRanges.push(second[j], second[j + 1], second[j + 2]);
30
- j += 3;
31
- }
32
- }
33
- if (i < firstLength) {
34
- newRanges.push.apply(newRanges, (0, _toConsumableArray2.default)(first.slice(i)));
35
- }
36
- if (j < secondLength) {
37
- newRanges.push.apply(newRanges, (0, _toConsumableArray2.default)(second.slice(i)));
38
- }
39
- return newRanges;
40
- }
41
- function increaseRowSpan(tr, rect, row) {
42
- var map = rect.map,
43
- tableStart = rect.tableStart;
44
- for (var _col2 = 0; _col2 < map.width; _col2++) {
45
- var index = row * map.width + _col2;
46
- var pos = map.map[index];
47
- var mappedPos = tr.mapping.map(pos + tableStart);
48
- var attrs = tr.doc.nodeAt(mappedPos).attrs;
49
- tr.setNodeMarkup(mappedPos, undefined, _objectSpread(_objectSpread({}, attrs), {}, {
50
- rowspan: attrs.rowspan + 1
51
- }));
52
- _col2 += attrs.colspan - 1;
53
- }
54
- }
55
- function decreaseRowspan(tr, rect, row, colToRemove) {
56
- var skipRows = 0;
57
- var map = rect.map,
58
- table = rect.table,
59
- tableStart = rect.tableStart;
60
- for (var _col3 = 0; _col3 < map.width; _col3++) {
61
- var index = row * map.width + _col3;
62
- var pos = map.map[index];
63
- if (row > 0 && pos === map.map[index - map.width]) {
64
- // If this cell starts in the row above, simply reduce its rowspan
65
- var mappedPos = tr.mapping.map(pos + tableStart);
66
- var attrs = tr.doc.nodeAt(mappedPos).attrs;
67
- tr.setNodeMarkup(mappedPos, undefined, _objectSpread(_objectSpread({}, attrs), {}, {
68
- rowspan: attrs.rowspan - 1
69
- }));
70
- _col3 += attrs.colspan - 1;
71
- } else if (_col3 === colToRemove) {
72
- skipRows = table.nodeAt(pos).attrs.rowspan - 1;
73
- }
74
- }
75
- return skipRows;
76
- }
77
- function isLastCellInRow(rect, row, col) {
78
- var rowNode = rect.table.child(row);
79
- if (!rowNode) {
80
- return false;
81
- }
82
- return rowNode.childCount === 1 && !(0, _tableMap.hasMergedColumns)(rect.map, row, col);
83
- }
84
- function removeRowWithLastCell(tr, rect, row, _col) {
85
- // Get row pos
86
- var from = rect.tableStart;
87
- for (var i = 0; i < row; i++) {
88
- from += rect.table.child(i).nodeSize;
89
- }
90
- var rowNode = rect.table.child(row);
91
- var to = from + rowNode.nodeSize;
92
-
93
- // Create sideEffect and delete the row
94
- // We store original row position before modifications
95
- tr.delete(tr.mapping.map(from), tr.mapping.map(to));
96
-
97
- // Change rowspan of all cells except current col and get the rows to skip
98
- var skipRows = decreaseRowspan(tr, rect, row, _col);
99
- return {
100
- skipRows: skipRows,
101
- row: {
102
- from: from,
103
- to: to,
104
- rowNode: rowNode.copy(rowNode.content)
105
- }
106
- };
107
- }
108
- function addRow(tr, rect, prevRow, rowSideEffect) {
109
- var cellNode = rowSideEffect.rowNode.child(0);
110
- tr.insert(tr.mapping.map(rowSideEffect.from), rowSideEffect.rowNode);
111
- increaseRowSpan(tr, rect, prevRow);
112
- return cellNode.attrs.rowspan - 1;
113
- }
114
- var RowsSideEffectHandler = /*#__PURE__*/function () {
115
- function RowsSideEffectHandler(rowsSideEffect) {
116
- var _this = this;
117
- (0, _classCallCheck2.default)(this, RowsSideEffectHandler);
118
- (0, _defineProperty2.default)(this, "deleteHandler", function () {
119
- var newRows = [];
120
- return {
121
- handle: function handle(tr, rect, row, col, cell) {
122
- if (!isLastCellInRow(rect, row, col)) {
123
- return {
124
- handled: false
125
- };
126
- }
127
- var _removeRowWithLastCel = removeRowWithLastCell(tr, rect, row, col),
128
- rowSideEffect = _removeRowWithLastCel.row,
129
- skipRows = _removeRowWithLastCel.skipRows;
130
- newRows.push(rowSideEffect);
131
- return {
132
- handled: true,
133
- skipRows: skipRows
134
- };
135
- },
136
- end: function end() {
137
- if (newRows.length > 0) {
138
- _this.rows = newRows;
139
- } else {
140
- _this.rows = undefined;
141
- }
142
- }
143
- };
144
- });
145
- (0, _defineProperty2.default)(this, "addHandler", function () {
146
- var lastCellFrom = 0;
147
- var i = 0;
148
- return {
149
- handle: function handle(tr, rect, row, col, cell) {
150
- // // If not sideEffects stored return;
151
- if (!_this.rows || i >= _this.rows.length) {
152
- return {
153
- handled: false
154
- };
155
- }
156
-
157
- // Next row to add;
158
- var skipRows;
159
- var nextRow;
160
- while ((nextRow = _this.rows[i]) && nextRow.from > lastCellFrom && nextRow.from < cell.from) {
161
- // I am in between of the previous and next row in the table;
162
- skipRows = addRow(tr, rect, row - 1, nextRow);
163
- i++;
164
- }
165
- lastCellFrom = cell.from;
166
- if (!skipRows || skipRows === 0) {
167
- return {
168
- handled: false
169
- };
170
- }
171
- return {
172
- handled: true,
173
- skipRows: skipRows - 1
174
- };
175
- },
176
- end: function end(tr, rect, col) {
177
- if (!_this.rows || i >= _this.rows.length) {
178
- return;
179
- }
180
-
181
- // Add rows at the end of the table
182
- var nextRow;
183
- while (nextRow = _this.rows[i]) {
184
- addRow(tr, rect, rect.map.height - 1, nextRow);
185
- i++;
186
- }
187
- }
188
- };
189
- });
190
- this.rows = rowsSideEffect;
191
- }
192
- (0, _createClass2.default)(RowsSideEffectHandler, [{
193
- key: "start",
194
- value: function start(isDelete) {
195
- if (isDelete) {
196
- return this.deleteHandler();
197
- }
198
- return this.addHandler();
199
- }
200
- }, {
201
- key: "addRowRanges",
202
- value: function addRowRanges(ranges, isDelete) {
203
- if (!this.rows) {
204
- return ranges;
205
- }
206
- var rowRanges = [];
207
- var _iterator = _createForOfIteratorHelper(this.rows),
208
- _step;
209
- try {
210
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
211
- var _row = _step.value;
212
- var from = _row.from,
213
- to = _row.to;
214
- if (isDelete) {
215
- rowRanges.push(from, to - from, 0);
216
- } else {
217
- rowRanges.push(from, 0, to - from);
218
- }
219
- }
220
-
221
- // Merged ranges
222
- } catch (err) {
223
- _iterator.e(err);
224
- } finally {
225
- _iterator.f();
226
- }
227
- return mergedRanges(ranges, rowRanges);
228
- }
229
- }, {
230
- key: "map",
231
- value: function map(mapping) {
232
- return [];
233
- }
234
- }, {
235
- key: "invert",
236
- value: function invert(originalDoc, isDelete, map) {
237
- if (!this.rows) {
238
- return;
239
- }
240
- var invertedRows = [];
241
- var _iterator2 = _createForOfIteratorHelper(this.rows),
242
- _step2;
243
- try {
244
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
245
- var _row2 = _step2.value;
246
- if (isDelete) {
247
- // Moving from delete to add keep the inverted rows + offset
248
- var offset = map.map(_row2.from) - _row2.from;
249
- invertedRows.push(_objectSpread(_objectSpread({}, _row2), {}, {
250
- from: _row2.from + offset,
251
- to: _row2.from + offset
252
- }));
253
- } else {
254
- // Moving from add to delete keep
255
- // TODO: I think we need to add the respective cell into the cellSteps...... not sure....
256
- }
257
- }
258
- } catch (err) {
259
- _iterator2.e(err);
260
- } finally {
261
- _iterator2.f();
262
- }
263
- return invertedRows;
264
- }
265
- }, {
266
- key: "toJSON",
267
- value: function toJSON() {
268
- if (!this.rows) {
269
- return;
270
- }
271
- var rowsInJson = [];
272
- var _iterator3 = _createForOfIteratorHelper(this.rows),
273
- _step3;
274
- try {
275
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
276
- var _row3 = _step3.value;
277
- rowsInJson.push({
278
- from: _row3.from,
279
- to: _row3.to,
280
- rowNode: _row3.rowNode.toJSON()
281
- });
282
- }
283
- } catch (err) {
284
- _iterator3.e(err);
285
- } finally {
286
- _iterator3.f();
287
- }
288
- return rowsInJson;
289
- }
290
- }], [{
291
- key: "fromJSON",
292
- value: function fromJSON(schema, json) {
293
- var rowSideEffects = [];
294
- var _iterator4 = _createForOfIteratorHelper(json),
295
- _step4;
296
- try {
297
- for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
298
- var _row4 = _step4.value;
299
- rowSideEffects.push({
300
- from: _row4.from,
301
- to: _row4.to,
302
- rowNode: schema.nodeFromJSON(_row4.rowNode)
303
- });
304
- }
305
- } catch (err) {
306
- _iterator4.e(err);
307
- } finally {
308
- _iterator4.f();
309
- }
310
- return rowSideEffects;
311
- }
312
- }]);
313
- return RowsSideEffectHandler;
314
- }();
315
- exports.RowsSideEffectHandler = RowsSideEffectHandler;
@@ -1,83 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.SideEffectsHandler = void 0;
8
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
- var _table = require("./table");
11
- var _rows = require("./rows");
12
- var SideEffectsHandler = /*#__PURE__*/function () {
13
- function SideEffectsHandler(sideEffects) {
14
- (0, _classCallCheck2.default)(this, SideEffectsHandler);
15
- this.table = new _table.TableSideEffectHandler(sideEffects && sideEffects.table);
16
- this.rows = new _rows.RowsSideEffectHandler(sideEffects && sideEffects.rows);
17
- }
18
- (0, _createClass2.default)(SideEffectsHandler, [{
19
- key: "getTableMap",
20
- value: function getTableMap(isDelete) {
21
- return this.table.getTableMap(isDelete);
22
- }
23
- }, {
24
- key: "map",
25
- value: function map(mapping) {
26
- var sideEffects = {};
27
- var tableSideEffect = this.table.map(mapping);
28
- var rowsSideEffect = this.rows.map(mapping);
29
- if (tableSideEffect) {
30
- sideEffects.table = tableSideEffect;
31
- }
32
- if (rowsSideEffect) {
33
- sideEffects.rows = rowsSideEffect;
34
- }
35
- return sideEffects;
36
- }
37
- }, {
38
- key: "invert",
39
- value: function invert(originalDoc, isDelete, map) {
40
- var sideEffects = {};
41
- var tableSideEffect = this.table.invert(originalDoc);
42
- if (tableSideEffect) {
43
- sideEffects.table = tableSideEffect;
44
- }
45
- var rowsSideEffect = this.rows.invert(originalDoc, isDelete, map);
46
- if (rowsSideEffect) {
47
- sideEffects.rows = rowsSideEffect;
48
- }
49
- return sideEffects;
50
- }
51
- }, {
52
- key: "toJSON",
53
- value: function toJSON() {
54
- var tableSideEffectJson = this.table.toJSON();
55
- var rowsSideEffectJson = this.rows.toJSON();
56
- if (!tableSideEffectJson && !rowsSideEffectJson) {
57
- return;
58
- }
59
- var sideEffectsJSON = {};
60
- if (tableSideEffectJson) {
61
- sideEffectsJSON.table = tableSideEffectJson;
62
- }
63
- if (rowsSideEffectJson) {
64
- sideEffectsJSON.rows = rowsSideEffectJson;
65
- }
66
- return sideEffectsJSON;
67
- }
68
- }], [{
69
- key: "fromJSON",
70
- value: function fromJSON(schema, json) {
71
- var sideEffects = {};
72
- if (json.table) {
73
- sideEffects.table = _table.TableSideEffectHandler.fromJSON(schema, json.table);
74
- }
75
- if (json.rows) {
76
- sideEffects.rows = _rows.RowsSideEffectHandler.fromJSON(schema, json.rows);
77
- }
78
- return sideEffects;
79
- }
80
- }]);
81
- return SideEffectsHandler;
82
- }();
83
- exports.SideEffectsHandler = SideEffectsHandler;
@@ -1,110 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.TableSideEffectHandler = void 0;
8
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
- var _transform = require("@atlaskit/editor-prosemirror/transform");
11
- var TableSideEffectHandler = /*#__PURE__*/function () {
12
- function TableSideEffectHandler(tableSideEffect) {
13
- (0, _classCallCheck2.default)(this, TableSideEffectHandler);
14
- if (tableSideEffect) {
15
- this.table = tableSideEffect;
16
- }
17
- }
18
- (0, _createClass2.default)(TableSideEffectHandler, [{
19
- key: "addTableSideEffect",
20
- value: function addTableSideEffect(from, to, node) {
21
- this.table = {
22
- from: from,
23
- to: to,
24
- node: node
25
- };
26
- }
27
- }, {
28
- key: "handleAddTable",
29
- value: function handleAddTable(tr, isDelete) {
30
- if (isDelete || !this.table) {
31
- return false;
32
- }
33
- tr.insert(this.table.from, this.table.node);
34
- return true;
35
- }
36
- }, {
37
- key: "handleRemoveTable",
38
- value: function handleRemoveTable(tr, tablePos, tableRect, column, isDelete) {
39
- if (isDelete && tableRect.map.width === 1 && column === 0) {
40
- // Add side effect
41
- this.addTableSideEffect(tablePos, tablePos + tableRect.table.nodeSize, tableRect.table.copy(tableRect.table.content));
42
- tr.delete(tablePos, tablePos + tableRect.table.nodeSize);
43
- return true;
44
- }
45
- return false;
46
- }
47
- }, {
48
- key: "getTableMap",
49
- value: function getTableMap(isDelete) {
50
- if (!this.table) {
51
- return;
52
- }
53
- var _this$table = this.table,
54
- from = _this$table.from,
55
- to = _this$table.to;
56
- if (isDelete) {
57
- return new _transform.StepMap([from, to - from, 0]);
58
- }
59
- return new _transform.StepMap([from, 0, to - from]);
60
- }
61
- }, {
62
- key: "map",
63
- value: function map(mapping) {
64
- if (!this.table) {
65
- return;
66
- }
67
- return {
68
- from: mapping.map(this.table.from),
69
- to: mapping.map(this.table.to),
70
- node: this.table.node
71
- };
72
- }
73
- }, {
74
- key: "invert",
75
- value: function invert(doc) {
76
- if (!this.table) {
77
- return;
78
- }
79
- var tableNode = doc.nodeAt(this.table.from);
80
- return {
81
- from: this.table.from,
82
- to: this.table.from + tableNode.nodeSize,
83
- node: tableNode.copy(tableNode.content)
84
- };
85
- }
86
- }, {
87
- key: "toJSON",
88
- value: function toJSON() {
89
- if (!this.table) {
90
- return;
91
- }
92
- return {
93
- from: this.table.from,
94
- to: this.table.to,
95
- node: this.table.node.toJSON()
96
- };
97
- }
98
- }], [{
99
- key: "fromJSON",
100
- value: function fromJSON(schema, json) {
101
- return {
102
- from: json.from,
103
- to: json.to,
104
- node: schema.nodeFromJSON(json.node)
105
- };
106
- }
107
- }]);
108
- return TableSideEffectHandler;
109
- }();
110
- exports.TableSideEffectHandler = TableSideEffectHandler;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,30 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getCellIndex = void 0;
7
- exports.hasMergedColumns = hasMergedColumns;
8
- exports.hasMergedRows = hasMergedRows;
9
- exports.isRootCol = isRootCol;
10
- exports.isRootRow = isRootRow;
11
- var getCellIndex = function getCellIndex(map, row, col) {
12
- return row * map.width + col;
13
- };
14
- exports.getCellIndex = getCellIndex;
15
- function hasMergedColumns(map, row, col) {
16
- var index = getCellIndex(map, row, col);
17
- return col > 0 && map.map[index - 1] === map.map[index] || col < map.width - 1 && map.map[index + 1] === map.map[index];
18
- }
19
- function hasMergedRows(map, row, col) {
20
- var index = getCellIndex(map, row, col);
21
- return row > 0 && map.map[index - map.width] !== map.map[index] || row < map.height - 1 && map.map[index + map.width] === map.map[index];
22
- }
23
- function isRootRow(map, row, col) {
24
- var index = getCellIndex(map, row, col);
25
- return row > 0 ? map.map[index - map.width] !== map.map[index] : true;
26
- }
27
- function isRootCol(map, row, col) {
28
- var index = getCellIndex(map, row, col);
29
- return row > 0 ? map.map[index - 1] !== map.map[index] : true;
30
- }