@atlaskit/editor-plugin-table 7.5.4 → 7.5.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 (236) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/commands/column-resize.js +3 -3
  3. package/dist/cjs/commands/delete.js +2 -2
  4. package/dist/cjs/commands/insert.js +15 -15
  5. package/dist/cjs/commands-with-analytics.js +7 -7
  6. package/dist/cjs/event-handlers.js +27 -11
  7. package/dist/cjs/nodeviews/OverflowShadowsObserver.js +24 -15
  8. package/dist/cjs/nodeviews/TableCell.js +5 -30
  9. package/dist/cjs/nodeviews/TableComponent.js +120 -83
  10. package/dist/cjs/nodeviews/TableContainer.js +23 -21
  11. package/dist/cjs/nodeviews/TableResizer.js +13 -13
  12. package/dist/cjs/nodeviews/table.js +9 -9
  13. package/dist/cjs/plugin.js +60 -59
  14. package/dist/cjs/pm-plugins/drag-and-drop/plugin.js +13 -13
  15. package/dist/cjs/pm-plugins/keymap.js +6 -8
  16. package/dist/cjs/pm-plugins/main.js +7 -24
  17. package/dist/cjs/pm-plugins/sticky-headers/plugin.js +2 -3
  18. package/dist/cjs/pm-plugins/table-resizing/event-handlers.js +12 -12
  19. package/dist/cjs/pm-plugins/table-resizing/utils/colgroup.js +2 -2
  20. package/dist/cjs/pm-plugins/table-resizing/utils/consts.js +4 -2
  21. package/dist/cjs/pm-plugins/table-resizing/utils/index.js +2 -2
  22. package/dist/cjs/pm-plugins/table-resizing/utils/misc.js +3 -3
  23. package/dist/cjs/pm-plugins/table-resizing/utils/resize-column.js +3 -3
  24. package/dist/cjs/pm-plugins/table-resizing/utils/resize-state.js +11 -12
  25. package/dist/cjs/pm-plugins/table-resizing/utils/scale-table.js +13 -13
  26. package/dist/cjs/pm-plugins/table-width.js +6 -2
  27. package/dist/cjs/toolbar.js +21 -21
  28. package/dist/cjs/transforms/column-width.js +4 -4
  29. package/dist/cjs/transforms/delete-columns.js +2 -2
  30. package/dist/cjs/ui/FloatingContextualMenu/ContextualMenu.js +53 -55
  31. package/dist/cjs/ui/FloatingContextualMenu/index.js +2 -4
  32. package/dist/cjs/ui/FloatingDragMenu/DragMenu.js +2 -2
  33. package/dist/cjs/ui/FloatingDragMenu/index.js +6 -6
  34. package/dist/cjs/ui/FloatingInsertButton/index.js +6 -7
  35. package/dist/cjs/ui/TableFloatingColumnControls/index.js +8 -48
  36. package/dist/cjs/ui/TableFloatingControls/index.js +113 -223
  37. package/dist/cjs/utils/column-controls.js +5 -5
  38. package/dist/cjs/utils/create.js +2 -5
  39. package/dist/cjs/utils/dom.js +13 -15
  40. package/dist/cjs/utils/drag-menu.js +4 -4
  41. package/dist/es2019/commands/column-resize.js +3 -3
  42. package/dist/es2019/commands/delete.js +2 -2
  43. package/dist/es2019/commands/insert.js +12 -12
  44. package/dist/es2019/commands-with-analytics.js +6 -6
  45. package/dist/es2019/event-handlers.js +27 -11
  46. package/dist/es2019/nodeviews/OverflowShadowsObserver.js +24 -15
  47. package/dist/es2019/nodeviews/TableCell.js +1 -24
  48. package/dist/es2019/nodeviews/TableComponent.js +88 -63
  49. package/dist/es2019/nodeviews/TableContainer.js +20 -22
  50. package/dist/es2019/nodeviews/TableResizer.js +13 -13
  51. package/dist/es2019/nodeviews/table.js +9 -9
  52. package/dist/es2019/plugin.js +19 -20
  53. package/dist/es2019/pm-plugins/drag-and-drop/plugin.js +6 -6
  54. package/dist/es2019/pm-plugins/keymap.js +5 -8
  55. package/dist/es2019/pm-plugins/main.js +6 -23
  56. package/dist/es2019/pm-plugins/sticky-headers/plugin.js +1 -1
  57. package/dist/es2019/pm-plugins/table-resizing/event-handlers.js +5 -5
  58. package/dist/es2019/pm-plugins/table-resizing/utils/colgroup.js +2 -2
  59. package/dist/es2019/pm-plugins/table-resizing/utils/consts.js +3 -1
  60. package/dist/es2019/pm-plugins/table-resizing/utils/index.js +1 -1
  61. package/dist/es2019/pm-plugins/table-resizing/utils/misc.js +2 -2
  62. package/dist/es2019/pm-plugins/table-resizing/utils/resize-column.js +3 -2
  63. package/dist/es2019/pm-plugins/table-resizing/utils/resize-state.js +12 -13
  64. package/dist/es2019/pm-plugins/table-resizing/utils/scale-table.js +13 -13
  65. package/dist/es2019/pm-plugins/table-width.js +6 -2
  66. package/dist/es2019/toolbar.js +15 -15
  67. package/dist/es2019/transforms/column-width.js +5 -5
  68. package/dist/es2019/transforms/delete-columns.js +2 -2
  69. package/dist/es2019/ui/FloatingContextualMenu/ContextualMenu.js +9 -12
  70. package/dist/es2019/ui/FloatingContextualMenu/index.js +2 -4
  71. package/dist/es2019/ui/FloatingDragMenu/DragMenu.js +2 -2
  72. package/dist/es2019/ui/FloatingDragMenu/index.js +5 -5
  73. package/dist/es2019/ui/FloatingInsertButton/index.js +5 -6
  74. package/dist/es2019/ui/TableFloatingColumnControls/index.js +5 -27
  75. package/dist/es2019/ui/TableFloatingControls/index.js +119 -193
  76. package/dist/es2019/utils/column-controls.js +6 -6
  77. package/dist/es2019/utils/create.js +2 -5
  78. package/dist/es2019/utils/dom.js +13 -15
  79. package/dist/es2019/utils/drag-menu.js +4 -4
  80. package/dist/esm/commands/column-resize.js +3 -3
  81. package/dist/esm/commands/delete.js +2 -2
  82. package/dist/esm/commands/insert.js +15 -15
  83. package/dist/esm/commands-with-analytics.js +7 -7
  84. package/dist/esm/event-handlers.js +27 -11
  85. package/dist/esm/nodeviews/OverflowShadowsObserver.js +24 -15
  86. package/dist/esm/nodeviews/TableCell.js +5 -30
  87. package/dist/esm/nodeviews/TableComponent.js +119 -82
  88. package/dist/esm/nodeviews/TableContainer.js +24 -22
  89. package/dist/esm/nodeviews/TableResizer.js +13 -13
  90. package/dist/esm/nodeviews/table.js +9 -9
  91. package/dist/esm/plugin.js +60 -59
  92. package/dist/esm/pm-plugins/drag-and-drop/plugin.js +13 -13
  93. package/dist/esm/pm-plugins/keymap.js +6 -8
  94. package/dist/esm/pm-plugins/main.js +7 -24
  95. package/dist/esm/pm-plugins/sticky-headers/plugin.js +2 -3
  96. package/dist/esm/pm-plugins/table-resizing/event-handlers.js +12 -12
  97. package/dist/esm/pm-plugins/table-resizing/utils/colgroup.js +2 -2
  98. package/dist/esm/pm-plugins/table-resizing/utils/consts.js +3 -1
  99. package/dist/esm/pm-plugins/table-resizing/utils/index.js +1 -1
  100. package/dist/esm/pm-plugins/table-resizing/utils/misc.js +2 -2
  101. package/dist/esm/pm-plugins/table-resizing/utils/resize-column.js +4 -3
  102. package/dist/esm/pm-plugins/table-resizing/utils/resize-state.js +13 -14
  103. package/dist/esm/pm-plugins/table-resizing/utils/scale-table.js +13 -13
  104. package/dist/esm/pm-plugins/table-width.js +6 -2
  105. package/dist/esm/toolbar.js +21 -21
  106. package/dist/esm/transforms/column-width.js +5 -5
  107. package/dist/esm/transforms/delete-columns.js +2 -2
  108. package/dist/esm/ui/FloatingContextualMenu/ContextualMenu.js +53 -55
  109. package/dist/esm/ui/FloatingContextualMenu/index.js +2 -4
  110. package/dist/esm/ui/FloatingDragMenu/DragMenu.js +2 -2
  111. package/dist/esm/ui/FloatingDragMenu/index.js +6 -6
  112. package/dist/esm/ui/FloatingInsertButton/index.js +6 -7
  113. package/dist/esm/ui/TableFloatingColumnControls/index.js +8 -48
  114. package/dist/esm/ui/TableFloatingControls/index.js +113 -224
  115. package/dist/esm/utils/column-controls.js +6 -6
  116. package/dist/esm/utils/create.js +2 -5
  117. package/dist/esm/utils/dom.js +13 -15
  118. package/dist/esm/utils/drag-menu.js +4 -4
  119. package/dist/types/commands/column-resize.d.ts +1 -1
  120. package/dist/types/commands/delete.d.ts +1 -1
  121. package/dist/types/commands/insert.d.ts +7 -7
  122. package/dist/types/commands-with-analytics.d.ts +3 -3
  123. package/dist/types/event-handlers.d.ts +4 -5
  124. package/dist/types/nodeviews/OverflowShadowsObserver.d.ts +3 -1
  125. package/dist/types/nodeviews/TableCell.d.ts +1 -5
  126. package/dist/types/nodeviews/TableComponent.d.ts +6 -3
  127. package/dist/types/nodeviews/TableContainer.d.ts +6 -4
  128. package/dist/types/nodeviews/TableResizer.d.ts +2 -2
  129. package/dist/types/nodeviews/table.d.ts +1 -1
  130. package/dist/types/nodeviews/types.d.ts +1 -0
  131. package/dist/types/plugin.d.ts +1 -0
  132. package/dist/types/pm-plugins/drag-and-drop/plugin.d.ts +1 -2
  133. package/dist/types/pm-plugins/keymap.d.ts +2 -2
  134. package/dist/types/pm-plugins/main.d.ts +1 -1
  135. package/dist/types/pm-plugins/sticky-headers/plugin.d.ts +2 -3
  136. package/dist/types/pm-plugins/table-resizing/utils/colgroup.d.ts +1 -1
  137. package/dist/types/pm-plugins/table-resizing/utils/consts.d.ts +1 -0
  138. package/dist/types/pm-plugins/table-resizing/utils/index.d.ts +1 -1
  139. package/dist/types/pm-plugins/table-resizing/utils/misc.d.ts +1 -1
  140. package/dist/types/pm-plugins/table-resizing/utils/resize-column.d.ts +2 -1
  141. package/dist/types/pm-plugins/table-resizing/utils/resize-state.d.ts +4 -4
  142. package/dist/types/pm-plugins/table-resizing/utils/scale-table.d.ts +4 -4
  143. package/dist/types/pm-plugins/table-width.d.ts +1 -2
  144. package/dist/types/toolbar.d.ts +2 -2
  145. package/dist/types/transforms/column-width.d.ts +1 -1
  146. package/dist/types/transforms/delete-columns.d.ts +1 -1
  147. package/dist/types/types.d.ts +1 -3
  148. package/dist/types/ui/FloatingContextualMenu/index.d.ts +1 -1
  149. package/dist/types/ui/FloatingDragMenu/DragMenu.d.ts +2 -2
  150. package/dist/types/ui/FloatingDragMenu/index.d.ts +2 -3
  151. package/dist/types/ui/FloatingInsertButton/index.d.ts +1 -2
  152. package/dist/types/ui/TableFloatingColumnControls/index.d.ts +2 -1
  153. package/dist/types/ui/TableFloatingControls/index.d.ts +5 -22
  154. package/dist/types/utils/create.d.ts +1 -2
  155. package/dist/types/utils/dom.d.ts +10 -2
  156. package/dist/types/utils/drag-menu.d.ts +1 -1
  157. package/dist/types-ts4.5/commands/column-resize.d.ts +1 -1
  158. package/dist/types-ts4.5/commands/delete.d.ts +1 -1
  159. package/dist/types-ts4.5/commands/insert.d.ts +7 -7
  160. package/dist/types-ts4.5/commands-with-analytics.d.ts +3 -3
  161. package/dist/types-ts4.5/event-handlers.d.ts +4 -5
  162. package/dist/types-ts4.5/nodeviews/OverflowShadowsObserver.d.ts +3 -1
  163. package/dist/types-ts4.5/nodeviews/TableCell.d.ts +1 -5
  164. package/dist/types-ts4.5/nodeviews/TableComponent.d.ts +6 -3
  165. package/dist/types-ts4.5/nodeviews/TableContainer.d.ts +6 -4
  166. package/dist/types-ts4.5/nodeviews/TableResizer.d.ts +2 -2
  167. package/dist/types-ts4.5/nodeviews/table.d.ts +1 -1
  168. package/dist/types-ts4.5/nodeviews/types.d.ts +1 -0
  169. package/dist/types-ts4.5/plugin.d.ts +1 -0
  170. package/dist/types-ts4.5/pm-plugins/drag-and-drop/plugin.d.ts +1 -2
  171. package/dist/types-ts4.5/pm-plugins/keymap.d.ts +2 -2
  172. package/dist/types-ts4.5/pm-plugins/main.d.ts +1 -1
  173. package/dist/types-ts4.5/pm-plugins/sticky-headers/plugin.d.ts +2 -3
  174. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/colgroup.d.ts +1 -1
  175. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/consts.d.ts +1 -0
  176. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/index.d.ts +1 -1
  177. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/misc.d.ts +1 -1
  178. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/resize-column.d.ts +2 -1
  179. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/resize-state.d.ts +4 -4
  180. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/scale-table.d.ts +4 -4
  181. package/dist/types-ts4.5/pm-plugins/table-width.d.ts +1 -2
  182. package/dist/types-ts4.5/toolbar.d.ts +2 -2
  183. package/dist/types-ts4.5/transforms/column-width.d.ts +1 -1
  184. package/dist/types-ts4.5/transforms/delete-columns.d.ts +1 -1
  185. package/dist/types-ts4.5/types.d.ts +1 -3
  186. package/dist/types-ts4.5/ui/FloatingContextualMenu/index.d.ts +1 -1
  187. package/dist/types-ts4.5/ui/FloatingDragMenu/DragMenu.d.ts +2 -2
  188. package/dist/types-ts4.5/ui/FloatingDragMenu/index.d.ts +2 -3
  189. package/dist/types-ts4.5/ui/FloatingInsertButton/index.d.ts +1 -2
  190. package/dist/types-ts4.5/ui/TableFloatingColumnControls/index.d.ts +2 -1
  191. package/dist/types-ts4.5/ui/TableFloatingControls/index.d.ts +5 -22
  192. package/dist/types-ts4.5/utils/create.d.ts +1 -2
  193. package/dist/types-ts4.5/utils/dom.d.ts +10 -2
  194. package/dist/types-ts4.5/utils/drag-menu.d.ts +1 -1
  195. package/package.json +3 -4
  196. package/src/commands/column-resize.ts +4 -3
  197. package/src/commands/delete.ts +2 -2
  198. package/src/commands/insert.ts +15 -27
  199. package/src/commands-with-analytics.ts +6 -9
  200. package/src/event-handlers.ts +107 -105
  201. package/src/nodeviews/OverflowShadowsObserver.ts +32 -21
  202. package/src/nodeviews/TableCell.ts +0 -26
  203. package/src/nodeviews/TableComponent.tsx +107 -78
  204. package/src/nodeviews/TableContainer.tsx +26 -32
  205. package/src/nodeviews/TableResizer.tsx +15 -18
  206. package/src/nodeviews/table.tsx +6 -5
  207. package/src/nodeviews/types.ts +1 -0
  208. package/src/plugin.tsx +17 -32
  209. package/src/pm-plugins/drag-and-drop/plugin.ts +10 -15
  210. package/src/pm-plugins/keymap.ts +6 -13
  211. package/src/pm-plugins/main.ts +6 -25
  212. package/src/pm-plugins/sticky-headers/plugin.ts +2 -11
  213. package/src/pm-plugins/table-resizing/event-handlers.ts +6 -4
  214. package/src/pm-plugins/table-resizing/utils/colgroup.ts +2 -2
  215. package/src/pm-plugins/table-resizing/utils/consts.ts +2 -0
  216. package/src/pm-plugins/table-resizing/utils/index.ts +1 -1
  217. package/src/pm-plugins/table-resizing/utils/misc.ts +2 -2
  218. package/src/pm-plugins/table-resizing/utils/resize-column.ts +5 -2
  219. package/src/pm-plugins/table-resizing/utils/resize-state.ts +18 -13
  220. package/src/pm-plugins/table-resizing/utils/scale-table.ts +14 -14
  221. package/src/pm-plugins/table-width.ts +4 -6
  222. package/src/toolbar.tsx +16 -19
  223. package/src/transforms/column-width.ts +7 -6
  224. package/src/transforms/delete-columns.ts +2 -2
  225. package/src/types.ts +1 -4
  226. package/src/ui/FloatingContextualMenu/ContextualMenu.tsx +11 -16
  227. package/src/ui/FloatingContextualMenu/index.tsx +0 -2
  228. package/src/ui/FloatingDragMenu/DragMenu.tsx +3 -3
  229. package/src/ui/FloatingDragMenu/index.tsx +4 -8
  230. package/src/ui/FloatingInsertButton/index.tsx +11 -22
  231. package/src/ui/TableFloatingColumnControls/index.tsx +5 -29
  232. package/src/ui/TableFloatingControls/index.tsx +155 -241
  233. package/src/utils/column-controls.ts +5 -6
  234. package/src/utils/create.ts +2 -5
  235. package/src/utils/dom.ts +12 -19
  236. package/src/utils/drag-menu.ts +7 -12
@@ -79,7 +79,7 @@ var TableView = exports.default = /*#__PURE__*/function (_ReactNodeView) {
79
79
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hasHoveredRows", false);
80
80
  _this.getPos = props.getPos;
81
81
  _this.eventDispatcher = props.eventDispatcher;
82
- _this.getEditorFeatureFlags = props.getEditorFeatureFlags;
82
+ _this.options = props.options;
83
83
  return _this;
84
84
  }
85
85
  (0, _createClass2.default)(TableView, [{
@@ -87,12 +87,10 @@ var TableView = exports.default = /*#__PURE__*/function (_ReactNodeView) {
87
87
  value: function getContentDOM() {
88
88
  var rendered = _model.DOMSerializer.renderSpec(document, toDOM(this.node, this.reactComponentProps));
89
89
  if (rendered.dom) {
90
+ var _this$options;
90
91
  this.table = rendered.dom;
91
- var _this$getEditorFeatur = this.getEditorFeatureFlags(),
92
- _this$getEditorFeatur2 = _this$getEditorFeatur.tablePreserveWidth,
93
- tablePreserveWidth = _this$getEditorFeatur2 === void 0 ? false : _this$getEditorFeatur2;
94
92
  // Preserve Table Width cannot have inline width set on the table
95
- if (!tablePreserveWidth) {
93
+ if (!((_this$options = this.options) !== null && _this$options !== void 0 && _this$options.isTableScalingEnabled)) {
96
94
  var tableInlineWidth = getInlineWidth(this.node, this.reactComponentProps.options, this.reactComponentProps.view.state, this.reactComponentProps.getPos());
97
95
  if (tableInlineWidth) {
98
96
  handleInlineTableWidth(this.table, tableInlineWidth);
@@ -186,6 +184,7 @@ var TableView = exports.default = /*#__PURE__*/function (_ReactNodeView) {
186
184
  isHeaderRowEnabled: pluginState.isHeaderRowEnabled,
187
185
  isHeaderColumnEnabled: pluginState.isHeaderColumnEnabled,
188
186
  isDragAndDropEnabled: pluginState.isDragAndDropEnabled,
187
+ isTableScalingEnabled: pluginState.isTableScalingEnabled,
189
188
  tableActive: tableActive,
190
189
  ordering: pluginState.ordering,
191
190
  isResizing: isResizing,
@@ -194,8 +193,7 @@ var TableView = exports.default = /*#__PURE__*/function (_ReactNodeView) {
194
193
  contentDOM: forwardRef,
195
194
  getEditorFeatureFlags: props.getEditorFeatureFlags,
196
195
  dispatchAnalyticsEvent: props.dispatchAnalyticsEvent,
197
- pluginInjectionApi: props.pluginInjectionApi,
198
- tableRef: _this3.table
196
+ pluginInjectionApi: props.pluginInjectionApi
199
197
  });
200
198
  }
201
199
  });
@@ -267,7 +265,8 @@ var createTableView = exports.createTableView = function createTableView(node, v
267
265
  isFullWidthModeEnabled = _getPluginState2.isFullWidthModeEnabled,
268
266
  wasFullWidthModeEnabled = _getPluginState2.wasFullWidthModeEnabled,
269
267
  isTableResizingEnabled = _getPluginState2.isTableResizingEnabled,
270
- isDragAndDropEnabled = _getPluginState2.isDragAndDropEnabled;
268
+ isDragAndDropEnabled = _getPluginState2.isDragAndDropEnabled,
269
+ isTableScalingEnabled = _getPluginState2.isTableScalingEnabled;
271
270
  var _getPluginConfig = (0, _createPluginConfig.pluginConfig)(pluginConfig),
272
271
  allowColumnResizing = _getPluginConfig.allowColumnResizing;
273
272
  var hasIntlContext = true;
@@ -283,7 +282,8 @@ var createTableView = exports.createTableView = function createTableView(node, v
283
282
  isFullWidthModeEnabled: isFullWidthModeEnabled,
284
283
  wasFullWidthModeEnabled: wasFullWidthModeEnabled,
285
284
  isTableResizingEnabled: isTableResizingEnabled,
286
- isDragAndDropEnabled: isDragAndDropEnabled
285
+ isDragAndDropEnabled: isDragAndDropEnabled,
286
+ isTableScalingEnabled: isTableScalingEnabled
287
287
  },
288
288
  getEditorContainerWidth: getEditorContainerWidth,
289
289
  getEditorFeatureFlags: getEditorFeatureFlags,
@@ -25,6 +25,7 @@ var _plugin2 = require("./pm-plugins/decorations/plugin");
25
25
  var _dragAndDrop = require("./pm-plugins/drag-and-drop");
26
26
  var _keymap = require("./pm-plugins/keymap");
27
27
  var _main = require("./pm-plugins/main");
28
+ var _pluginFactory = require("./pm-plugins/plugin-factory");
28
29
  var _pluginKey2 = require("./pm-plugins/plugin-key");
29
30
  var _safariDeleteCompositionTextIssueWorkaround = require("./pm-plugins/safari-delete-composition-text-issue-workaround");
30
31
  var _stickyHeaders = require("./pm-plugins/sticky-headers");
@@ -56,11 +57,10 @@ var tablesPlugin = function tablesPlugin(_ref) {
56
57
  current: null
57
58
  };
58
59
  var defaultGetEditorContainerWidth = function defaultGetEditorContainerWidth() {
59
- var _document$body$offset, _document, _api$width$sharedStat, _api$width;
60
- var defaultState = {
60
+ var _api$width$sharedStat, _api$width, _document$body$offset, _document;
61
+ return (_api$width$sharedStat = api === null || api === void 0 || (_api$width = api.width) === null || _api$width === void 0 ? void 0 : _api$width.sharedState.currentState()) !== null && _api$width$sharedStat !== void 0 ? _api$width$sharedStat : {
61
62
  width: (_document$body$offset = (_document = document) === null || _document === void 0 || (_document = _document.body) === null || _document === void 0 ? void 0 : _document.offsetWidth) !== null && _document$body$offset !== void 0 ? _document$body$offset : 500
62
63
  };
63
- return (_api$width$sharedStat = api === null || api === void 0 || (_api$width = api.width) === null || _api$width === void 0 ? void 0 : _api$width.sharedState.currentState()) !== null && _api$width$sharedStat !== void 0 ? _api$width$sharedStat : defaultState;
64
64
  };
65
65
  var editorAnalyticsAPI = api === null || api === void 0 || (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions;
66
66
  return {
@@ -77,7 +77,7 @@ var tablesPlugin = function tablesPlugin(_ref) {
77
77
  insertTable: function insertTable(analyticsPayload) {
78
78
  return function (state, dispatch) {
79
79
  var _api$contentInsertion, _api$contentInsertion2;
80
- var node = (0, _utils2.createTableWithWidth)(options === null || options === void 0 ? void 0 : options.fullWidthEnabled, options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags)(state.schema);
80
+ var node = (0, _utils2.createTableWithWidth)(options === null || options === void 0 ? void 0 : options.isTableScalingEnabled, options === null || options === void 0 ? void 0 : options.fullWidthEnabled)(state.schema);
81
81
  return (_api$contentInsertion = api === null || api === void 0 || (_api$contentInsertion2 = api.contentInsertion) === null || _api$contentInsertion2 === void 0 || (_api$contentInsertion2 = _api$contentInsertion2.actions) === null || _api$contentInsertion2 === void 0 ? void 0 : _api$contentInsertion2.insert({
82
82
  state: state,
83
83
  dispatch: dispatch,
@@ -91,7 +91,7 @@ var tablesPlugin = function tablesPlugin(_ref) {
91
91
  }
92
92
  },
93
93
  commands: {
94
- insertTableWithSize: (0, _insert.insertTableWithSize)(options === null || options === void 0 ? void 0 : options.fullWidthEnabled, options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags, api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions)
94
+ insertTableWithSize: (0, _insert.insertTableWithSize)(options === null || options === void 0 ? void 0 : options.fullWidthEnabled, options === null || options === void 0 ? void 0 : options.isTableScalingEnabled, api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions)
95
95
  },
96
96
  nodes: function nodes() {
97
97
  var tableNode = options !== null && options !== void 0 && options.tableResizingEnabled ? _adfSchema.tableWithCustomWidth : _adfSchema.table;
@@ -125,8 +125,9 @@ var tablesPlugin = function tablesPlugin(_ref) {
125
125
  breakoutEnabled = _ref3.breakoutEnabled,
126
126
  tableOptions = _ref3.tableOptions,
127
127
  getEditorFeatureFlags = _ref3.getEditorFeatureFlags,
128
- dragAndDropEnabled = _ref3.dragAndDropEnabled;
129
- return (0, _main.createPlugin)(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, (0, _createPluginConfig.pluginConfig)(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, breakoutEnabled, tableResizingEnabled, fullWidthEnabled, wasFullWidthEnabled, dragAndDropEnabled, editorAnalyticsAPI, api);
128
+ dragAndDropEnabled = _ref3.dragAndDropEnabled,
129
+ isTableScalingEnabled = _ref3.isTableScalingEnabled;
130
+ return (0, _main.createPlugin)(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, (0, _createPluginConfig.pluginConfig)(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, breakoutEnabled, tableResizingEnabled, fullWidthEnabled, wasFullWidthEnabled, dragAndDropEnabled, editorAnalyticsAPI, api, isTableScalingEnabled);
130
131
  }
131
132
  }, {
132
133
  name: 'tablePMColResizing',
@@ -155,8 +156,9 @@ var tablesPlugin = function tablesPlugin(_ref) {
155
156
  plugin: function plugin() {
156
157
  var _ref6 = options || {},
157
158
  dragAndDropEnabled = _ref6.dragAndDropEnabled,
158
- getEditorFeatureFlags = _ref6.getEditorFeatureFlags;
159
- return (0, _keymap.keymapPlugin)(defaultGetEditorContainerWidth, editorAnalyticsAPI, getEditorFeatureFlags, dragAndDropEnabled);
159
+ _ref6$isTableScalingE = _ref6.isTableScalingEnabled,
160
+ isTableScalingEnabled = _ref6$isTableScalingE === void 0 ? false : _ref6$isTableScalingE;
161
+ return (0, _keymap.keymapPlugin)(defaultGetEditorContainerWidth, editorAnalyticsAPI, dragAndDropEnabled, isTableScalingEnabled);
160
162
  }
161
163
  }, {
162
164
  name: 'tableSelectionKeymap',
@@ -190,47 +192,45 @@ var tablesPlugin = function tablesPlugin(_ref) {
190
192
  plugin: function plugin(_ref9) {
191
193
  var dispatch = _ref9.dispatch,
192
194
  eventDispatcher = _ref9.eventDispatcher;
193
- return options && options.tableOptions.stickyHeaders ? (0, _stickyHeaders.createPlugin)(dispatch, eventDispatcher, function () {
195
+ return options && options.tableOptions.stickyHeaders ? (0, _stickyHeaders.createPlugin)(dispatch, function () {
194
196
  return [];
195
- }, (options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags) || defaultGetEditorFeatureFlags) : undefined;
197
+ }) : undefined;
196
198
  }
197
199
  }, {
198
200
  name: 'tableDragAndDrop',
199
201
  plugin: function plugin(_ref10) {
200
202
  var dispatch = _ref10.dispatch;
201
- var _ref11 = options || {},
202
- getEditorFeatureFlags = _ref11.getEditorFeatureFlags;
203
- return options !== null && options !== void 0 && options.dragAndDropEnabled ? (0, _dragAndDrop.createPlugin)(dispatch, getEditorFeatureFlags, editorAnalyticsAPI) : undefined;
203
+ return options !== null && options !== void 0 && options.dragAndDropEnabled ? (0, _dragAndDrop.createPlugin)(dispatch, editorAnalyticsAPI) : undefined;
204
204
  }
205
205
  }, {
206
206
  name: 'tableLocalId',
207
- plugin: function plugin(_ref12) {
208
- var dispatch = _ref12.dispatch;
207
+ plugin: function plugin(_ref11) {
208
+ var dispatch = _ref11.dispatch;
209
209
  return (0, _tableLocalId.createPlugin)(dispatch);
210
210
  }
211
211
  }, {
212
212
  name: 'tableWidth',
213
- plugin: function plugin(_ref13) {
213
+ plugin: function plugin(_ref12) {
214
214
  var _options$fullWidthEna;
215
- var dispatchAnalyticsEvent = _ref13.dispatchAnalyticsEvent,
216
- dispatch = _ref13.dispatch;
217
- return options !== null && options !== void 0 && options.tableResizingEnabled ? (0, _tableWidth.createPlugin)(dispatch, dispatchAnalyticsEvent, (_options$fullWidthEna = options === null || options === void 0 ? void 0 : options.fullWidthEnabled) !== null && _options$fullWidthEna !== void 0 ? _options$fullWidthEna : false, options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags) : undefined;
215
+ var dispatchAnalyticsEvent = _ref12.dispatchAnalyticsEvent,
216
+ dispatch = _ref12.dispatch;
217
+ return options !== null && options !== void 0 && options.tableResizingEnabled ? (0, _tableWidth.createPlugin)(dispatch, dispatchAnalyticsEvent, (_options$fullWidthEna = options === null || options === void 0 ? void 0 : options.fullWidthEnabled) !== null && _options$fullWidthEna !== void 0 ? _options$fullWidthEna : false) : undefined;
218
218
  }
219
219
  },
220
220
  // TODO: should be deprecated and eventually replaced with 'tableAnalyticsPlugin'
221
221
  {
222
222
  name: 'tableOverflowAnalyticsPlugin',
223
- plugin: function plugin(_ref14) {
223
+ plugin: function plugin(_ref13) {
224
224
  var _options$tableResizin;
225
- var dispatch = _ref14.dispatch,
226
- dispatchAnalyticsEvent = _ref14.dispatchAnalyticsEvent;
225
+ var dispatch = _ref13.dispatch,
226
+ dispatchAnalyticsEvent = _ref13.dispatchAnalyticsEvent;
227
227
  return (0, _tableAnalytics.createPlugin)(dispatch, dispatchAnalyticsEvent, (_options$tableResizin = options === null || options === void 0 ? void 0 : options.tableResizingEnabled) !== null && _options$tableResizin !== void 0 ? _options$tableResizin : false);
228
228
  }
229
229
  }, {
230
230
  name: 'tableAnalyticsPlugin',
231
- plugin: function plugin(_ref15) {
232
- var dispatch = _ref15.dispatch,
233
- dispatchAnalyticsEvent = _ref15.dispatchAnalyticsEvent;
231
+ plugin: function plugin(_ref14) {
232
+ var dispatch = _ref14.dispatch,
233
+ dispatchAnalyticsEvent = _ref14.dispatchAnalyticsEvent;
234
234
  return (0, _platformFeatureFlags.getBooleanFF)('platform.editor.table.analytics-plugin-moved-event') ? (0, _plugin.createPlugin)(dispatch, dispatchAnalyticsEvent) : undefined;
235
235
  }
236
236
  }, {
@@ -261,12 +261,12 @@ var tablesPlugin = function tablesPlugin(_ref) {
261
261
  }
262
262
  return plugins;
263
263
  },
264
- contentComponent: function contentComponent(_ref16) {
265
- var editorView = _ref16.editorView,
266
- popupsMountPoint = _ref16.popupsMountPoint,
267
- popupsBoundariesElement = _ref16.popupsBoundariesElement,
268
- popupsScrollableElement = _ref16.popupsScrollableElement,
269
- dispatchAnalyticsEvent = _ref16.dispatchAnalyticsEvent;
264
+ contentComponent: function contentComponent(_ref15) {
265
+ var editorView = _ref15.editorView,
266
+ popupsMountPoint = _ref15.popupsMountPoint,
267
+ popupsBoundariesElement = _ref15.popupsBoundariesElement,
268
+ popupsScrollableElement = _ref15.popupsScrollableElement,
269
+ dispatchAnalyticsEvent = _ref15.dispatchAnalyticsEvent;
270
270
  return /*#__PURE__*/_react.default.createElement(_errorBoundary.ErrorBoundary, {
271
271
  component: _analytics.ACTION_SUBJECT.TABLES_PLUGIN,
272
272
  dispatchAnalyticsEvent: dispatchAnalyticsEvent,
@@ -280,30 +280,30 @@ var tablesPlugin = function tablesPlugin(_ref) {
280
280
  stickyHeadersState: _stickyHeaders.pluginKey,
281
281
  dragAndDropState: _dragAndDrop.pluginKey
282
282
  },
283
- render: function render(_ref17) {
284
- var resizingPluginState = _ref17.tableResizingPluginState,
285
- stickyHeadersState = _ref17.stickyHeadersState,
286
- tablePluginState = _ref17.tablePluginState,
287
- tableWidthPluginState = _ref17.tableWidthPluginState,
288
- dragAndDropState = _ref17.dragAndDropState;
283
+ render: function render(_ref16) {
284
+ var resizingPluginState = _ref16.tableResizingPluginState,
285
+ stickyHeadersState = _ref16.stickyHeadersState,
286
+ tablePluginState = _ref16.tablePluginState,
287
+ tableWidthPluginState = _ref16.tableWidthPluginState,
288
+ dragAndDropState = _ref16.dragAndDropState;
289
289
  var state = editorView.state;
290
290
  var isColumnResizing = resizingPluginState === null || resizingPluginState === void 0 ? void 0 : resizingPluginState.dragging;
291
291
  var isTableResizing = tableWidthPluginState === null || tableWidthPluginState === void 0 ? void 0 : tableWidthPluginState.resizing;
292
292
  var isResizing = isColumnResizing || isTableResizing;
293
- var _ref18 = tablePluginState,
294
- tableNode = _ref18.tableNode,
295
- tablePos = _ref18.tablePos,
296
- targetCellPosition = _ref18.targetCellPosition,
297
- isContextualMenuOpen = _ref18.isContextualMenuOpen,
298
- layout = _ref18.layout,
299
- tableRef = _ref18.tableRef,
300
- pluginConfig = _ref18.pluginConfig,
301
- insertColumnButtonIndex = _ref18.insertColumnButtonIndex,
302
- insertRowButtonIndex = _ref18.insertRowButtonIndex,
303
- isHeaderColumnEnabled = _ref18.isHeaderColumnEnabled,
304
- isHeaderRowEnabled = _ref18.isHeaderRowEnabled,
305
- isDragAndDropEnabled = _ref18.isDragAndDropEnabled,
306
- tableWrapperTarget = _ref18.tableWrapperTarget;
293
+ var _ref17 = tablePluginState,
294
+ tableNode = _ref17.tableNode,
295
+ tablePos = _ref17.tablePos,
296
+ targetCellPosition = _ref17.targetCellPosition,
297
+ isContextualMenuOpen = _ref17.isContextualMenuOpen,
298
+ layout = _ref17.layout,
299
+ tableRef = _ref17.tableRef,
300
+ pluginConfig = _ref17.pluginConfig,
301
+ insertColumnButtonIndex = _ref17.insertColumnButtonIndex,
302
+ insertRowButtonIndex = _ref17.insertRowButtonIndex,
303
+ isHeaderColumnEnabled = _ref17.isHeaderColumnEnabled,
304
+ isHeaderRowEnabled = _ref17.isHeaderRowEnabled,
305
+ isDragAndDropEnabled = _ref17.isDragAndDropEnabled,
306
+ tableWrapperTarget = _ref17.tableWrapperTarget;
307
307
  var allowControls = pluginConfig.allowControls;
308
308
  var stickyHeader = stickyHeadersState ? (0, _stickyHeaders.findStickyHeaderForTable)(stickyHeadersState, tablePos) : undefined;
309
309
  var LayoutContent = options && !options.tableResizingEnabled && (0, _utils2.isLayoutSupported)(state) && options.breakoutEnabled ? /*#__PURE__*/_react.default.createElement(_LayoutButton.default, {
@@ -344,8 +344,7 @@ var tablesPlugin = function tablesPlugin(_ref) {
344
344
  hasStickyHeaders: stickyHeader && stickyHeader.sticky,
345
345
  dispatchAnalyticsEvent: dispatchAnalyticsEvent,
346
346
  editorAnalyticsAPI: editorAnalyticsAPI,
347
- getEditorContainerWidth: defaultGetEditorContainerWidth,
348
- getEditorFeatureFlags: (options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags) || defaultGetEditorFeatureFlags
347
+ getEditorContainerWidth: defaultGetEditorContainerWidth
349
348
  }), (options === null || options === void 0 ? void 0 : options.allowContextualMenu) && /*#__PURE__*/_react.default.createElement(_FloatingContextualMenu.default, {
350
349
  editorView: editorView,
351
350
  mountPoint: popupsMountPoint,
@@ -369,8 +368,7 @@ var tablesPlugin = function tablesPlugin(_ref) {
369
368
  getEditorContainerWidth: defaultGetEditorContainerWidth,
370
369
  editorAnalyticsAPI: editorAnalyticsAPI,
371
370
  stickyHeaders: stickyHeader,
372
- pluginConfig: pluginConfig,
373
- getEditorFeatureFlags: (options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags) || defaultGetEditorFeatureFlags
371
+ pluginConfig: pluginConfig
374
372
  }), allowControls && !isDragAndDropEnabled && !isResizing && /*#__PURE__*/_react.default.createElement(_FloatingDeleteButton.default, {
375
373
  editorView: editorView,
376
374
  selection: editorView.state.selection,
@@ -386,8 +384,8 @@ var tablesPlugin = function tablesPlugin(_ref) {
386
384
  }));
387
385
  },
388
386
  pluginsOptions: {
389
- quickInsert: function quickInsert(_ref19) {
390
- var formatMessage = _ref19.formatMessage;
387
+ quickInsert: function quickInsert(_ref18) {
388
+ var formatMessage = _ref18.formatMessage;
391
389
  return [{
392
390
  id: 'table',
393
391
  title: formatMessage(_messages.toolbarInsertBlockMessages.table),
@@ -402,7 +400,10 @@ var tablesPlugin = function tablesPlugin(_ref) {
402
400
  var _api$table;
403
401
  // see comment on tablesPlugin.getSharedState on usage
404
402
  var tableState = api === null || api === void 0 || (_api$table = api.table) === null || _api$table === void 0 ? void 0 : _api$table.sharedState.currentState();
405
- var tr = insert((0, _utils2.createTableWithWidth)(tableState === null || tableState === void 0 ? void 0 : tableState.isFullWidthModeEnabled, options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags)(state.schema));
403
+ var _getPluginState = (0, _pluginFactory.getPluginState)(state),
404
+ _getPluginState$isTab = _getPluginState.isTableScalingEnabled,
405
+ isTableScalingEnabled = _getPluginState$isTab === void 0 ? false : _getPluginState$isTab;
406
+ var tr = insert((0, _utils2.createTableWithWidth)(isTableScalingEnabled, tableState === null || tableState === void 0 ? void 0 : tableState.isFullWidthModeEnabled)(state.schema));
406
407
  editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
407
408
  action: _analytics.ACTION.INSERTED,
408
409
  actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
@@ -23,7 +23,7 @@ var _consts = require("./consts");
23
23
  var _pluginFactory2 = require("./plugin-factory");
24
24
  var _pluginKey2 = require("./plugin-key");
25
25
  var _monitor = require("./utils/monitor");
26
- var destroyFn = function destroyFn(editorView, editorAnalyticsAPI, getEditorFeatureFlags) {
26
+ var destroyFn = function destroyFn(editorView, editorAnalyticsAPI) {
27
27
  var editorPageScrollContainer = document.querySelector('.fabric-editor-popup-scroll-parent');
28
28
  var rowAutoScrollers = editorPageScrollContainer ? [(0, _adapter.monitorForElements)({
29
29
  canMonitor: function canMonitor(_ref) {
@@ -153,10 +153,10 @@ var destroyFn = function destroyFn(editorView, editorAnalyticsAPI, getEditorFeat
153
153
  tableRef = _getTablePluginState3.tableRef,
154
154
  tableNode = _getTablePluginState3.tableNode;
155
155
  if (tableRef && tableNode) {
156
- var _ref8 = (getEditorFeatureFlags === null || getEditorFeatureFlags === void 0 ? void 0 : getEditorFeatureFlags()) || {},
157
- _ref8$tablePreserveWi = _ref8.tablePreserveWidth,
158
- tablePreserveWidth = _ref8$tablePreserveWi === void 0 ? false : _ref8$tablePreserveWi;
159
- (0, _utils3.insertColgroupFromNode)(tableRef, tableNode, tablePreserveWidth);
156
+ var _getTablePluginState4 = (0, _pluginFactory.getPluginState)(editorView.state),
157
+ _getTablePluginState5 = _getTablePluginState4.isTableScalingEnabled,
158
+ isTableScalingEnabled = _getTablePluginState5 === void 0 ? false : _getTablePluginState5;
159
+ (0, _utils3.insertColgroupFromNode)(tableRef, tableNode, isTableScalingEnabled);
160
160
  }
161
161
  }
162
162
  editorView.focus();
@@ -164,7 +164,7 @@ var destroyFn = function destroyFn(editorView, editorAnalyticsAPI, getEditorFeat
164
164
  }
165
165
  })]));
166
166
  };
167
- var createPlugin = exports.createPlugin = function createPlugin(dispatch, getEditorFeatureFlags, editorAnalyticsAPI) {
167
+ var createPlugin = exports.createPlugin = function createPlugin(dispatch, editorAnalyticsAPI) {
168
168
  return new _safePlugin.SafePlugin({
169
169
  state: (0, _pluginFactory2.createPluginState)(dispatch, function (state) {
170
170
  return {
@@ -179,10 +179,10 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatch, getEdi
179
179
  }),
180
180
  key: _pluginKey2.pluginKey,
181
181
  appendTransaction: function appendTransaction(transactions, oldState, newState) {
182
- var _getTablePluginState4 = (0, _pluginFactory.getPluginState)(oldState),
183
- oldTargetCellPosition = _getTablePluginState4.targetCellPosition;
184
- var _getTablePluginState5 = (0, _pluginFactory.getPluginState)(newState),
185
- newTargetCellPosition = _getTablePluginState5.targetCellPosition;
182
+ var _getTablePluginState6 = (0, _pluginFactory.getPluginState)(oldState),
183
+ oldTargetCellPosition = _getTablePluginState6.targetCellPosition;
184
+ var _getTablePluginState7 = (0, _pluginFactory.getPluginState)(newState),
185
+ newTargetCellPosition = _getTablePluginState7.targetCellPosition;
186
186
  var _getPluginState = (0, _pluginFactory2.getPluginState)(newState),
187
187
  isDragMenuOpen = _getPluginState.isDragMenuOpen,
188
188
  dragMenuIndex = _getPluginState.dragMenuIndex;
@@ -232,7 +232,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatch, getEdi
232
232
  },
233
233
  view: function view(editorView) {
234
234
  return {
235
- destroy: destroyFn(editorView, editorAnalyticsAPI, getEditorFeatureFlags)
235
+ destroy: destroyFn(editorView, editorAnalyticsAPI)
236
236
  };
237
237
  },
238
238
  props: {
@@ -242,7 +242,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatch, getEdi
242
242
  return decorationSet;
243
243
  },
244
244
  handleKeyDown: function handleKeyDown(view, event) {
245
- var _ref9;
245
+ var _ref8;
246
246
  var tr = view.state.tr;
247
247
  var keysToTrapWhen = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];
248
248
 
@@ -263,7 +263,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatch, getEdi
263
263
  return true;
264
264
  }
265
265
  }
266
- var isDragHandleFocused = ['drag-handle-button-row', 'drag-handle-button-column'].includes((_ref9 = event.target || null) === null || _ref9 === void 0 ? void 0 : _ref9.id);
266
+ var isDragHandleFocused = ['drag-handle-button-row', 'drag-handle-button-column'].includes((_ref8 = event.target || null) === null || _ref8 === void 0 ? void 0 : _ref8.id);
267
267
  var keysToTrap = ['Enter', ' '];
268
268
  var _getPluginState3 = (0, _pluginFactory2.getPluginState)(view.state),
269
269
  isDragMenuOpen = _getPluginState3.isDragMenuOpen;
@@ -27,7 +27,8 @@ var createTableWithAnalytics = function createTableWithAnalytics(editorAnalytics
27
27
  eventType: _analytics.EVENT_TYPE.TRACK
28
28
  })(editorAnalyticsAPI)((0, _commands2.createTable)());
29
29
  };
30
- function keymapPlugin(getEditorContainerWidth, editorAnalyticsAPI, getEditorFeatureFlags, dragAndDropEnabled) {
30
+ function keymapPlugin(getEditorContainerWidth, editorAnalyticsAPI, dragAndDropEnabled) {
31
+ var isTableScalingEnabled = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
31
32
  var list = {};
32
33
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.nextCell.common, (0, _commands2.goToNextCell)(editorAnalyticsAPI)(1), list);
33
34
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.previousCell.common, (0, _commands2.goToNextCell)(editorAnalyticsAPI)(-1), list);
@@ -38,8 +39,8 @@ function keymapPlugin(getEditorContainerWidth, editorAnalyticsAPI, getEditorFeat
38
39
  // Add row/column shortcuts
39
40
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.addRowBefore.common, (0, _commandsWithAnalytics.addRowAroundSelection)(editorAnalyticsAPI)('TOP'), list);
40
41
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.addRowAfter.common, (0, _commandsWithAnalytics.addRowAroundSelection)(editorAnalyticsAPI)('BOTTOM'), list);
41
- (0, _keymaps.bindKeymapWithCommand)(_keymaps.addColumnBefore.common, (0, _insert.addColumnBefore)(getEditorContainerWidth), list);
42
- (0, _keymaps.bindKeymapWithCommand)(_keymaps.addColumnAfter.common, (0, _insert.addColumnAfter)(getEditorContainerWidth), list);
42
+ (0, _keymaps.bindKeymapWithCommand)(_keymaps.addColumnBefore.common, (0, _insert.addColumnBefore)(isTableScalingEnabled), list);
43
+ (0, _keymaps.bindKeymapWithCommand)(_keymaps.addColumnAfter.common, (0, _insert.addColumnAfter)(isTableScalingEnabled), list);
43
44
  if (dragAndDropEnabled) {
44
45
  // Move row/column shortcuts
45
46
  /**
@@ -59,14 +60,11 @@ function keymapPlugin(getEditorContainerWidth, editorAnalyticsAPI, getEditorFeat
59
60
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.deleteRow.common, (0, _commandsWithAnalytics.deleteSelectedRowsOrColumnsWithAnalyticsViaShortcut)(editorAnalyticsAPI), list);
60
61
  }
61
62
  if ((0, _platformFeatureFlags.getBooleanFF)('platform.editor.a11y-column-resizing_emcvz')) {
62
- var _ref = getEditorFeatureFlags ? getEditorFeatureFlags() : {},
63
- _ref$tablePreserveWid = _ref.tablePreserveWidth,
64
- tablePreserveWidth = _ref$tablePreserveWid === void 0 ? false : _ref$tablePreserveWid;
65
63
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.startColumnResizing.common, _columnResize.initiateKeyboardColumnResizing, list);
66
64
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.moveRight.common, (0, _columnResize.activateNextResizeArea)(1), list);
67
65
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.moveLeft.common, (0, _columnResize.activateNextResizeArea)(-1), list);
68
- (0, _keymaps.bindKeymapWithCommand)(_keymaps.decreaseMediaSize.common, (0, _commandsWithAnalytics.changeColumnWidthByStepWithAnalytics)(editorAnalyticsAPI)(-10, getEditorContainerWidth, tablePreserveWidth, _analytics.INPUT_METHOD.SHORTCUT), list);
69
- (0, _keymaps.bindKeymapWithCommand)(_keymaps.increaseMediaSize.common, (0, _commandsWithAnalytics.changeColumnWidthByStepWithAnalytics)(editorAnalyticsAPI)(10, getEditorContainerWidth, tablePreserveWidth, _analytics.INPUT_METHOD.SHORTCUT), list);
66
+ (0, _keymaps.bindKeymapWithCommand)(_keymaps.decreaseMediaSize.common, (0, _commandsWithAnalytics.changeColumnWidthByStepWithAnalytics)(editorAnalyticsAPI)(-10, getEditorContainerWidth, isTableScalingEnabled, _analytics.INPUT_METHOD.SHORTCUT), list);
67
+ (0, _keymaps.bindKeymapWithCommand)(_keymaps.increaseMediaSize.common, (0, _commandsWithAnalytics.changeColumnWidthByStepWithAnalytics)(editorAnalyticsAPI)(10, getEditorContainerWidth, isTableScalingEnabled, _analytics.INPUT_METHOD.SHORTCUT), list);
70
68
  (0, _keymaps.bindKeymapWithCommand)(_keymaps.escape.common, (0, _columnResize.stopKeyboardColumnResizing)(), list);
71
69
  }
72
70
  return (0, _keymap.keymap)(list);
@@ -32,8 +32,7 @@ var _pluginFactory = require("./plugin-factory");
32
32
  var _pluginKey = require("./plugin-key");
33
33
  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; }
34
34
  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; }
35
- var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, breakoutEnabled, tableResizingEnabled, fullWidthModeEnabled, previousFullWidthModeEnabled, dragAndDropEnabled, editorAnalyticsAPI, pluginInjectionApi) {
36
- var _window;
35
+ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, breakoutEnabled, tableResizingEnabled, fullWidthModeEnabled, previousFullWidthModeEnabled, dragAndDropEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled) {
37
36
  var state = (0, _pluginFactory.createPluginState)(dispatch, _objectSpread(_objectSpread(_objectSpread({
38
37
  pluginConfig: pluginConfig,
39
38
  isTableHovered: false,
@@ -45,19 +44,11 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
45
44
  isTableResizingEnabled: tableResizingEnabled,
46
45
  isHeaderRowEnabled: !!pluginConfig.allowHeaderRow,
47
46
  isHeaderColumnEnabled: false,
48
- isDragAndDropEnabled: dragAndDropEnabled
47
+ isDragAndDropEnabled: dragAndDropEnabled,
48
+ isTableScalingEnabled: isTableScalingEnabled
49
49
  }, _defaultTableSelection.defaultHoveredCell), _defaultTableSelection.defaultTableSelection), {}, {
50
50
  getIntl: getIntl
51
51
  }));
52
- var elementContentRects = {};
53
- var observer = (_window = window) !== null && _window !== void 0 && _window.ResizeObserver ? new ResizeObserver(function (entries) {
54
- entries.forEach(function (entry) {
55
- if (!entry.target.id) {
56
- return;
57
- }
58
- elementContentRects[entry.target.id] = entry.contentRect;
59
- });
60
- }) : undefined;
61
52
 
62
53
  // Used to prevent invalid table cell spans being reported more than once per editor/document
63
54
  var invalidTableIds = [];
@@ -95,12 +86,9 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
95
86
  }
96
87
  });
97
88
  }
98
- var _getEditorFeatureFlag = getEditorFeatureFlags(),
99
- _getEditorFeatureFlag2 = _getEditorFeatureFlag.tablePreserveWidth,
100
- tablePreserveWidth = _getEditorFeatureFlag2 === void 0 ? false : _getEditorFeatureFlag2;
101
89
  if (tr) {
102
90
  // "fixTables" removes empty rows as we don't allow that in schema
103
- var updatedTr = (0, _eventHandlers.handleCut)(tr, oldState, newState, editorAnalyticsAPI, editorViewRef || undefined, tablePreserveWidth);
91
+ var updatedTr = (0, _eventHandlers.handleCut)(tr, oldState, newState, editorAnalyticsAPI, editorViewRef || undefined, isTableScalingEnabled);
104
92
  return (0, _transforms2.fixTables)(updatedTr) || updatedTr;
105
93
  }
106
94
  if (transactions.find(function (tr) {
@@ -163,11 +151,6 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
163
151
  } else if (pluginState.isResizeHandleWidgetAdded) {
164
152
  (0, _misc.removeResizeHandleDecorations)()(state, dispatch);
165
153
  }
166
- },
167
- destroy: function destroy() {
168
- if (observer) {
169
- observer.disconnect();
170
- }
171
154
  }
172
155
  };
173
156
  },
@@ -273,10 +256,10 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
273
256
  return new _TableRow.default(node, view, getPos, eventDispatcher);
274
257
  },
275
258
  tableCell: function tableCell(node, view, getPos) {
276
- return new _TableCell.default(node, view, getPos, eventDispatcher, observer);
259
+ return new _TableCell.default(node, view, getPos, eventDispatcher);
277
260
  },
278
261
  tableHeader: function tableHeader(node, view, getPos) {
279
- return new _TableCell.default(node, view, getPos, eventDispatcher, observer);
262
+ return new _TableCell.default(node, view, getPos, eventDispatcher);
280
263
  }
281
264
  },
282
265
  handleDOMEvents: {
@@ -286,7 +269,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
286
269
  mouseover: (0, _eventHandlers.withCellTracking)((0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleMouseOver)),
287
270
  mouseleave: _eventHandlers.handleMouseLeave,
288
271
  mouseout: (0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleMouseOut),
289
- mousemove: (0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleMouseMove, elementContentRects),
272
+ mousemove: (0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleMouseMove),
290
273
  mouseenter: _eventHandlers.handleMouseEnter,
291
274
  mouseup: (0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleMouseUp),
292
275
  click: (0, _eventHandlers.withCellTracking)((0, _eventHandlers.whenTableInFocus)(_eventHandlers.handleClick))
@@ -7,11 +7,10 @@ exports.createPlugin = void 0;
7
7
  var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
8
8
  var _pluginKey = require("./plugin-key");
9
9
  var _pluginState = require("./plugin-state");
10
- var createPlugin = exports.createPlugin = function createPlugin(dispatch, eventDispatcher) {
11
- var initialState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {
10
+ var createPlugin = exports.createPlugin = function createPlugin(dispatch) {
11
+ var initialState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {
12
12
  return [];
13
13
  };
14
- var getEditorFeatureFlags = arguments.length > 3 ? arguments[3] : undefined;
15
14
  return new _safePlugin.SafePlugin({
16
15
  state: (0, _pluginState.createPluginState)(dispatch, initialState),
17
16
  key: _pluginKey.pluginKey
@@ -25,14 +25,14 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
25
25
  dispatch = view.dispatch;
26
26
  var editorDisabled = !view.editable;
27
27
  var domAtPos = view.domAtPos.bind(view);
28
- var _getEditorFeatureFlag = getEditorFeatureFlags(),
29
- _getEditorFeatureFlag2 = _getEditorFeatureFlag.tablePreserveWidth,
30
- tablePreserveWidth = _getEditorFeatureFlag2 === void 0 ? false : _getEditorFeatureFlag2;
28
+ var _getTablePluginState = (0, _pluginFactory.getPluginState)(state),
29
+ _getTablePluginState$ = _getTablePluginState.isTableScalingEnabled,
30
+ isTableScalingEnabled = _getTablePluginState$ === void 0 ? false : _getTablePluginState$;
31
31
  if (editorDisabled || localResizeHandlePos === null || !(0, _utils3.pointsAtCell)(state.doc.resolve(localResizeHandlePos))) {
32
32
  return false;
33
33
  }
34
- var _getTablePluginState = (0, _pluginFactory.getPluginState)(state),
35
- isKeyboardResize = _getTablePluginState.isKeyboardResize;
34
+ var _getTablePluginState2 = (0, _pluginFactory.getPluginState)(state),
35
+ isKeyboardResize = _getTablePluginState2.isKeyboardResize;
36
36
  event.preventDefault();
37
37
  var tr = view.state.tr;
38
38
  tr.setMeta(_tableAnalytics.META_KEYS.OVERFLOW_TRIGGER, {
@@ -74,7 +74,7 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
74
74
  tableRef: dom,
75
75
  start: start,
76
76
  domAtPos: domAtPos,
77
- tablePreserveWidth: tablePreserveWidth
77
+ isTableScalingEnabled: isTableScalingEnabled
78
78
  });
79
79
  if ((0, _commands.evenColumns)({
80
80
  resizeState: resizeState,
@@ -103,8 +103,8 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
103
103
  var _getPluginState = (0, _pluginFactory2.getPluginState)(state),
104
104
  dragging = _getPluginState.dragging,
105
105
  resizeHandlePos = _getPluginState.resizeHandlePos;
106
- var _getTablePluginState2 = (0, _pluginFactory.getPluginState)(state),
107
- isTableHovered = _getTablePluginState2.isTableHovered;
106
+ var _getTablePluginState3 = (0, _pluginFactory.getPluginState)(state),
107
+ isTableHovered = _getTablePluginState3.isTableHovered;
108
108
  if (resizeHandlePos === null) {
109
109
  return (0, _commands.stopResizing)()(state, dispatch);
110
110
  }
@@ -146,7 +146,7 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
146
146
  var selectedColumns = selectionRect ? (0, _utils2.getSelectedColumnIndexes)(selectionRect) : [];
147
147
  // only selected (or selected - 1) columns should be distributed
148
148
  var resizingSelectedColumns = selectedColumns.indexOf(colIndex) > -1 || selectedColumns.indexOf(colIndex + 1) > -1;
149
- var newResizeState = (0, _utils3.resizeColumn)(resizeState, colIndex, clientX - startX, dom, resizingSelectedColumns ? selectedColumns : undefined, tablePreserveWidth);
149
+ var newResizeState = (0, _utils3.resizeColumn)(resizeState, colIndex, clientX - startX, dom, originalTable, resizingSelectedColumns ? selectedColumns : undefined, isTableScalingEnabled);
150
150
  var resizedDelta = clientX - startX;
151
151
  tr = (0, _transforms.updateColumnWidths)(newResizeState, table, start)(tr);
152
152
  if (colIndex === map.width - 1) {
@@ -200,8 +200,8 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
200
200
  var _getPluginState2 = (0, _pluginFactory2.getPluginState)(state),
201
201
  dragging = _getPluginState2.dragging,
202
202
  resizeHandlePos = _getPluginState2.resizeHandlePos;
203
- var _getTablePluginState3 = (0, _pluginFactory.getPluginState)(state),
204
- isTableHovered = _getTablePluginState3.isTableHovered;
203
+ var _getTablePluginState4 = (0, _pluginFactory.getPluginState)(state),
204
+ isTableHovered = _getTablePluginState4.isTableHovered;
205
205
  if (!which || !dragging || resizeHandlePos === null || !(0, _utils3.pointsAtCell)(state.doc.resolve(resizeHandlePos)) || !isTableHovered && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.a11y-column-resizing_emcvz')) {
206
206
  return finish(event);
207
207
  }
@@ -209,7 +209,7 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(view, e
209
209
  var table = $cell.node(-1);
210
210
  var map = _tableMap.TableMap.get(table);
211
211
  var colIndex = map.colCount($cell.pos - $cell.start(-1)) + $cell.nodeAfter.attrs.colspan - 1;
212
- (0, _utils3.resizeColumn)(resizeState, colIndex, clientX - dragging.startX, dom, undefined, tablePreserveWidth);
212
+ (0, _utils3.resizeColumn)(resizeState, colIndex, clientX - dragging.startX, dom, table, undefined, isTableScalingEnabled);
213
213
  (0, _utils3.updateControls)()(state);
214
214
  }
215
215
  window.addEventListener('mouseup', finish);
@@ -90,13 +90,13 @@ var generateColgroup = exports.generateColgroup = function generateColgroup(tabl
90
90
  return cols;
91
91
  };
92
92
  var insertColgroupFromNode = exports.insertColgroupFromNode = function insertColgroupFromNode(tableRef, table) {
93
- var tablePreserveWidth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
93
+ var isTableScalingEnabled = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
94
94
  var shouldRemove = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
95
95
  var colgroup = tableRef.querySelector('colgroup');
96
96
  if (colgroup && shouldRemove) {
97
97
  tableRef.removeChild(colgroup);
98
98
  }
99
- colgroup = renderColgroupFromNode(table, tablePreserveWidth ? tableRef : undefined);
99
+ colgroup = renderColgroupFromNode(table, isTableScalingEnabled ? tableRef : undefined);
100
100
  if (shouldRemove) {
101
101
  tableRef.insertBefore(colgroup, tableRef.firstChild);
102
102
  }
@@ -3,8 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TABLE_MAX_WIDTH = exports.TABLE_DEFAULT_WIDTH = exports.MAX_SCALING_PERCENT = exports.COLUMN_MIN_WIDTH = void 0;
6
+ exports.TABLE_MAX_WIDTH = exports.TABLE_EDITOR_MARGIN = exports.TABLE_DEFAULT_WIDTH = exports.MAX_SCALING_PERCENT = exports.COLUMN_MIN_WIDTH = void 0;
7
7
  var COLUMN_MIN_WIDTH = exports.COLUMN_MIN_WIDTH = 48;
8
8
  var TABLE_DEFAULT_WIDTH = exports.TABLE_DEFAULT_WIDTH = 760;
9
9
  var TABLE_MAX_WIDTH = exports.TABLE_MAX_WIDTH = 1800;
10
- var MAX_SCALING_PERCENT = exports.MAX_SCALING_PERCENT = 0.3;
10
+ var MAX_SCALING_PERCENT = exports.MAX_SCALING_PERCENT = 0.3;
11
+ // Used to calculate the width of a table using the Editor width
12
+ var TABLE_EDITOR_MARGIN = exports.TABLE_EDITOR_MARGIN = 76;
@@ -135,10 +135,10 @@ Object.defineProperty(exports, "getResizeState", {
135
135
  return _resizeState.getResizeState;
136
136
  }
137
137
  });
138
- Object.defineProperty(exports, "getTableContainerElement", {
138
+ Object.defineProperty(exports, "getTableContainerElementWidth", {
139
139
  enumerable: true,
140
140
  get: function get() {
141
- return _misc.getTableContainerElement;
141
+ return _misc.getTableContainerElementWidth;
142
142
  }
143
143
  });
144
144
  Object.defineProperty(exports, "getTableElementWidth", {