@atlaskit/editor-plugin-table 7.6.2 → 7.6.4
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/CHANGELOG.md +13 -0
- package/dist/cjs/commands/misc.js +3 -2
- package/dist/cjs/nodeviews/TableComponent.js +25 -11
- package/dist/cjs/nodeviews/TableComponentWithSharedState.js +87 -0
- package/dist/cjs/nodeviews/TableContainer.js +37 -21
- package/dist/cjs/nodeviews/TableResizer.js +40 -29
- package/dist/cjs/nodeviews/table.js +21 -1
- package/dist/cjs/plugin.js +25 -2
- package/dist/cjs/toolbar.js +5 -4
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/cjs/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/cjs/ui/FloatingDragMenu/DropdownMenu.js +21 -28
- package/dist/cjs/ui/TableFloatingColumnControls/ColumnControls/index.js +6 -2
- package/dist/cjs/ui/TableFloatingColumnControls/index.js +5 -2
- package/dist/cjs/ui/TableFloatingControls/CornerControls/DragCornerControls.js +48 -1
- package/dist/cjs/ui/TableFloatingControls/CornerControls/index.js +6 -0
- package/dist/cjs/ui/TableFloatingControls/FloatingControlsWithSelection.js +47 -0
- package/dist/cjs/ui/TableFloatingControls/RowControls/ClassicControls.js +3 -2
- package/dist/cjs/ui/TableFloatingControls/index.js +25 -3
- package/dist/cjs/ui/common-styles.js +11 -6
- package/dist/cjs/utils/guidelines.js +1 -1
- package/dist/es2019/commands/misc.js +6 -2
- package/dist/es2019/nodeviews/TableComponent.js +27 -12
- package/dist/es2019/nodeviews/TableComponentWithSharedState.js +83 -0
- package/dist/es2019/nodeviews/TableContainer.js +24 -6
- package/dist/es2019/nodeviews/TableResizer.js +27 -19
- package/dist/es2019/nodeviews/table.js +21 -1
- package/dist/es2019/plugin.js +26 -3
- package/dist/es2019/toolbar.js +5 -4
- package/dist/es2019/types.js +3 -0
- package/dist/es2019/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/es2019/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/es2019/ui/FloatingDragMenu/DropdownMenu.js +20 -27
- package/dist/es2019/ui/TableFloatingColumnControls/ColumnControls/index.js +7 -2
- package/dist/es2019/ui/TableFloatingColumnControls/index.js +5 -2
- package/dist/es2019/ui/TableFloatingControls/CornerControls/DragCornerControls.js +55 -0
- package/dist/es2019/ui/TableFloatingControls/CornerControls/index.js +1 -1
- package/dist/es2019/ui/TableFloatingControls/FloatingControlsWithSelection.js +42 -0
- package/dist/es2019/ui/TableFloatingControls/RowControls/ClassicControls.js +3 -2
- package/dist/es2019/ui/TableFloatingControls/index.js +26 -4
- package/dist/es2019/ui/common-styles.js +589 -588
- package/dist/es2019/utils/guidelines.js +1 -1
- package/dist/esm/commands/misc.js +3 -2
- package/dist/esm/nodeviews/TableComponent.js +25 -11
- package/dist/esm/nodeviews/TableComponentWithSharedState.js +80 -0
- package/dist/esm/nodeviews/TableContainer.js +37 -21
- package/dist/esm/nodeviews/TableResizer.js +41 -30
- package/dist/esm/nodeviews/table.js +21 -1
- package/dist/esm/plugin.js +26 -3
- package/dist/esm/toolbar.js +5 -4
- package/dist/esm/types.js +3 -0
- package/dist/esm/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/esm/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/esm/ui/FloatingDragMenu/DropdownMenu.js +21 -28
- package/dist/esm/ui/TableFloatingColumnControls/ColumnControls/index.js +6 -2
- package/dist/esm/ui/TableFloatingColumnControls/index.js +5 -2
- package/dist/esm/ui/TableFloatingControls/CornerControls/DragCornerControls.js +47 -0
- package/dist/esm/ui/TableFloatingControls/CornerControls/index.js +1 -1
- package/dist/esm/ui/TableFloatingControls/FloatingControlsWithSelection.js +40 -0
- package/dist/esm/ui/TableFloatingControls/RowControls/ClassicControls.js +3 -2
- package/dist/esm/ui/TableFloatingControls/index.js +26 -4
- package/dist/esm/ui/common-styles.js +10 -5
- package/dist/esm/utils/guidelines.js +1 -1
- package/dist/types/commands/misc.d.ts +2 -1
- package/dist/types/nodeviews/TableComponent.d.ts +7 -2
- package/dist/types/nodeviews/TableComponentWithSharedState.d.ts +27 -0
- package/dist/types/nodeviews/TableContainer.d.ts +4 -2
- package/dist/types/nodeviews/TableResizer.d.ts +4 -1
- package/dist/types/nodeviews/types.d.ts +1 -0
- package/dist/types/plugin.d.ts +11 -7
- package/dist/types/types.d.ts +13 -4
- package/dist/types/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +113 -1
- package/dist/types/ui/TableFloatingColumnControls/index.d.ts +3 -2
- package/dist/types/ui/TableFloatingControls/CornerControls/DragCornerControls.d.ts +223 -0
- package/dist/types/ui/TableFloatingControls/CornerControls/index.d.ts +1 -1
- package/dist/types/ui/TableFloatingControls/FloatingControlsWithSelection.d.ts +20 -0
- package/dist/types/ui/TableFloatingControls/RowControls/ClassicControls.d.ts +2 -0
- package/dist/types/ui/TableFloatingControls/index.d.ts +113 -1
- package/dist/types/ui/common-styles.d.ts +3 -0
- package/dist/types-ts4.5/commands/misc.d.ts +2 -1
- package/dist/types-ts4.5/nodeviews/TableComponent.d.ts +7 -2
- package/dist/types-ts4.5/nodeviews/TableComponentWithSharedState.d.ts +27 -0
- package/dist/types-ts4.5/nodeviews/TableContainer.d.ts +4 -2
- package/dist/types-ts4.5/nodeviews/TableResizer.d.ts +4 -1
- package/dist/types-ts4.5/nodeviews/types.d.ts +1 -0
- package/dist/types-ts4.5/plugin.d.ts +11 -7
- package/dist/types-ts4.5/types.d.ts +13 -4
- package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +144 -1
- package/dist/types-ts4.5/ui/TableFloatingColumnControls/index.d.ts +3 -2
- package/dist/types-ts4.5/ui/TableFloatingControls/CornerControls/DragCornerControls.d.ts +285 -0
- package/dist/types-ts4.5/ui/TableFloatingControls/CornerControls/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableFloatingControls/FloatingControlsWithSelection.d.ts +20 -0
- package/dist/types-ts4.5/ui/TableFloatingControls/RowControls/ClassicControls.d.ts +2 -0
- package/dist/types-ts4.5/ui/TableFloatingControls/index.d.ts +144 -1
- package/dist/types-ts4.5/ui/common-styles.d.ts +3 -0
- package/package.json +6 -6
- package/src/commands/misc.ts +6 -3
- package/src/nodeviews/TableComponent.tsx +36 -7
- package/src/nodeviews/TableComponentWithSharedState.tsx +125 -0
- package/src/nodeviews/TableContainer.tsx +24 -3
- package/src/nodeviews/TableResizer.tsx +36 -21
- package/src/nodeviews/table.tsx +22 -1
- package/src/nodeviews/types.ts +1 -0
- package/src/plugin.tsx +47 -6
- package/src/toolbar.tsx +20 -19
- package/src/types.ts +33 -4
- package/src/ui/FloatingContextualMenu/ContextualMenu.tsx +66 -112
- package/src/ui/FloatingDragMenu/DragMenu.tsx +3 -12
- package/src/ui/FloatingDragMenu/DropdownMenu.tsx +19 -28
- package/src/ui/TableFloatingColumnControls/ColumnControls/index.tsx +10 -2
- package/src/ui/TableFloatingColumnControls/index.tsx +13 -1
- package/src/ui/TableFloatingControls/CornerControls/DragCornerControls.tsx +58 -0
- package/src/ui/TableFloatingControls/CornerControls/index.tsx +4 -1
- package/src/ui/TableFloatingControls/FloatingControlsWithSelection.tsx +68 -0
- package/src/ui/TableFloatingControls/RowControls/ClassicControls.tsx +4 -1
- package/src/ui/TableFloatingControls/index.tsx +42 -8
- package/src/ui/common-styles.ts +611 -610
- package/src/utils/guidelines.ts +5 -4
|
@@ -85,11 +85,11 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
85
85
|
var node = isOpen && targetCellPosition ? state.doc.nodeAt(targetCellPosition) : null;
|
|
86
86
|
var background = (0, _editorPalette.hexToEditorBackgroundPaletteColor)((node === null || node === void 0 || (_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.background) || '#ffffff');
|
|
87
87
|
return {
|
|
88
|
-
content: isDragAndDropEnabled
|
|
88
|
+
content: isDragAndDropEnabled ? formatMessage(_messages.tableMessages.backgroundColor) : formatMessage(_messages.tableMessages.cellBackground),
|
|
89
89
|
value: {
|
|
90
90
|
name: 'background'
|
|
91
91
|
},
|
|
92
|
-
elemBefore: isDragAndDropEnabled
|
|
92
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
93
93
|
css: _styles2.elementBeforeIconStyles
|
|
94
94
|
}, (0, _react2.jsx)(_backgroundColor.default, {
|
|
95
95
|
label: formatMessage(_messages.tableMessages.backgroundColor),
|
|
@@ -99,7 +99,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
99
99
|
className: _styles.DropdownMenuSharedCssClassName.SUBMENU
|
|
100
100
|
}, (0, _react2.jsx)("div", {
|
|
101
101
|
css: (0, _styles2.cellColourPreviewStyles)(background),
|
|
102
|
-
className: isDragAndDropEnabled
|
|
102
|
+
className: isDragAndDropEnabled ? _types.TableCssClassName.CONTEXTUAL_MENU_ICON_SMALL : _types.TableCssClassName.CONTEXTUAL_MENU_ICON
|
|
103
103
|
}), isSubmenuOpen && (0, _react2.jsx)("div", {
|
|
104
104
|
className: _types.TableCssClassName.CONTEXTUAL_SUBMENU,
|
|
105
105
|
ref: _this.handleSubMenuRef
|
|
@@ -131,7 +131,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
131
131
|
name: 'merge'
|
|
132
132
|
},
|
|
133
133
|
isDisabled: !(0, _transforms.canMergeCells)(state.tr),
|
|
134
|
-
elemBefore: isDragAndDropEnabled
|
|
134
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
135
135
|
css: _styles2.elementBeforeIconStyles
|
|
136
136
|
}, (0, _react2.jsx)(_icons.MergeCellsIcon, null)) : undefined
|
|
137
137
|
}, {
|
|
@@ -140,7 +140,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
140
140
|
name: 'split'
|
|
141
141
|
},
|
|
142
142
|
isDisabled: !(0, _utils2.splitCell)(state),
|
|
143
|
-
elemBefore: isDragAndDropEnabled
|
|
143
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
144
144
|
css: _styles2.elementBeforeIconStyles
|
|
145
145
|
}, (0, _react2.jsx)(_icons.SplitCellIcon, null)) : undefined
|
|
146
146
|
}];
|
|
@@ -154,14 +154,14 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
154
154
|
var _getPluginState3 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
155
155
|
isDragAndDropEnabled = _getPluginState3.isDragAndDropEnabled;
|
|
156
156
|
return {
|
|
157
|
-
content: formatMessage(isDragAndDropEnabled
|
|
157
|
+
content: formatMessage(isDragAndDropEnabled ? _messages.tableMessages.addColumnRight : _messages.tableMessages.insertColumn),
|
|
158
158
|
value: {
|
|
159
159
|
name: 'insert_column'
|
|
160
160
|
},
|
|
161
161
|
elemAfter: (0, _react2.jsx)("div", {
|
|
162
162
|
css: _shortcut.shortcutStyle
|
|
163
163
|
}, (0, _keymaps.tooltip)(_keymaps.addColumnAfter)),
|
|
164
|
-
elemBefore: isDragAndDropEnabled
|
|
164
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
165
165
|
css: _styles2.elementBeforeIconStyles
|
|
166
166
|
}, (0, _react2.jsx)(_icons.AddColRightIcon, null)) : undefined
|
|
167
167
|
};
|
|
@@ -173,14 +173,14 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
173
173
|
var _getPluginState4 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
174
174
|
isDragAndDropEnabled = _getPluginState4.isDragAndDropEnabled;
|
|
175
175
|
return {
|
|
176
|
-
content: formatMessage(isDragAndDropEnabled
|
|
176
|
+
content: formatMessage(isDragAndDropEnabled ? _messages.tableMessages.addRowBelow : _messages.tableMessages.insertRow),
|
|
177
177
|
value: {
|
|
178
178
|
name: 'insert_row'
|
|
179
179
|
},
|
|
180
180
|
elemAfter: (0, _react2.jsx)("div", {
|
|
181
181
|
css: _shortcut.shortcutStyle
|
|
182
182
|
}, (0, _keymaps.tooltip)(_keymaps.addRowAfter)),
|
|
183
|
-
elemBefore: isDragAndDropEnabled
|
|
183
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
184
184
|
css: _styles2.elementBeforeIconStyles
|
|
185
185
|
}, (0, _react2.jsx)(_icons.AddRowBelowIcon, null)) : undefined
|
|
186
186
|
};
|
|
@@ -208,7 +208,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
208
208
|
elemAfter: (0, _react2.jsx)("div", {
|
|
209
209
|
css: _shortcut.shortcutStyle
|
|
210
210
|
}, (0, _keymaps.tooltip)(_keymaps.backspace)),
|
|
211
|
-
elemBefore: isDragAndDropEnabled
|
|
211
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
212
212
|
css: _styles2.elementBeforeIconStyles
|
|
213
213
|
}, (0, _react2.jsx)(_crossCircle.default, {
|
|
214
214
|
label: formatMessage(_messages.tableMessages.clearCells, {
|
|
@@ -234,7 +234,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
234
234
|
value: {
|
|
235
235
|
name: 'delete_column'
|
|
236
236
|
},
|
|
237
|
-
elemBefore: isDragAndDropEnabled
|
|
237
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
238
238
|
css: _styles2.elementBeforeIconStyles
|
|
239
239
|
}, (0, _react2.jsx)(_remove.default, {
|
|
240
240
|
label: formatMessage(_messages.tableMessages.removeColumns, {
|
|
@@ -260,7 +260,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
260
260
|
value: {
|
|
261
261
|
name: 'delete_row'
|
|
262
262
|
},
|
|
263
|
-
elemBefore: isDragAndDropEnabled
|
|
263
|
+
elemBefore: isDragAndDropEnabled ? (0, _react2.jsx)("span", {
|
|
264
264
|
css: _styles2.elementBeforeIconStyles
|
|
265
265
|
}, (0, _react2.jsx)(_remove.default, {
|
|
266
266
|
label: formatMessage(_messages.tableMessages.removeRows, {
|
|
@@ -278,7 +278,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
278
278
|
var _getPluginState8 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
279
279
|
isDragAndDropEnabled = _getPluginState8.isDragAndDropEnabled,
|
|
280
280
|
allowDistributeColumns = _getPluginState8.pluginConfig.allowDistributeColumns;
|
|
281
|
-
if (allowDistributeColumns &&
|
|
281
|
+
if (allowDistributeColumns && !isDragAndDropEnabled) {
|
|
282
282
|
var _newResizeState$chang;
|
|
283
283
|
var _getPluginState9 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
284
284
|
_getPluginState9$isTa = _getPluginState9.isTableScalingEnabled,
|
|
@@ -302,7 +302,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
302
302
|
allowColumnSorting = _this$props9.allowColumnSorting;
|
|
303
303
|
var _getPluginState10 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
304
304
|
isDragAndDropEnabled = _getPluginState10.isDragAndDropEnabled;
|
|
305
|
-
if (allowColumnSorting &&
|
|
305
|
+
if (allowColumnSorting && !isDragAndDropEnabled) {
|
|
306
306
|
var hasMergedCellsInTable = (0, _utils3.getMergedCellsPositions)(editorView.state.tr).length > 0;
|
|
307
307
|
var warning = hasMergedCellsInTable ? {
|
|
308
308
|
tooltipDescription: formatMessage(_messages.tableMessages.canNotSortTable),
|
|
@@ -520,7 +520,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
520
520
|
editorView = _this$props14.editorView;
|
|
521
521
|
var _getPluginState14 = (0, _pluginFactory.getPluginState)(editorView.state),
|
|
522
522
|
isDragAndDropEnabled = _getPluginState14.isDragAndDropEnabled;
|
|
523
|
-
var items = isDragAndDropEnabled
|
|
523
|
+
var items = isDragAndDropEnabled ? this.createNewContextMenuItems() : this.createOriginalContextMenuItems();
|
|
524
524
|
return (0, _react2.jsx)("div", {
|
|
525
525
|
"data-testid": "table-cell-contextual-menu",
|
|
526
526
|
onMouseLeave: this.closeSubmenu
|
|
@@ -543,7 +543,7 @@ var ContextualMenu = exports.ContextualMenu = /*#__PURE__*/function (_Component)
|
|
|
543
543
|
fitWidth: isDragAndDropEnabled ? _consts.contextualMenuDropdownWidthDnD : _consts.contextualMenuDropdownWidth,
|
|
544
544
|
boundariesElement: boundariesElement,
|
|
545
545
|
offset: offset,
|
|
546
|
-
section: isDragAndDropEnabled && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.
|
|
546
|
+
section: isDragAndDropEnabled && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.menu.group-items') ? {
|
|
547
547
|
hasSeparator: true
|
|
548
548
|
} : undefined
|
|
549
549
|
}));
|
|
@@ -448,20 +448,20 @@ var DragMenu = exports.DragMenu = /*#__PURE__*/_react.default.memo(function (_re
|
|
|
448
448
|
if (!menuItems) {
|
|
449
449
|
return null;
|
|
450
450
|
}
|
|
451
|
-
if (allowBackgroundColor
|
|
451
|
+
if (allowBackgroundColor) {
|
|
452
452
|
menuItems[0].items.unshift(createBackgroundColorMenuItem());
|
|
453
453
|
}
|
|
454
454
|
|
|
455
455
|
// If first row, add toggle for Header row, default is true
|
|
456
456
|
// If first column, add toggle for Header column, default is false
|
|
457
|
-
if (
|
|
457
|
+
if (index === 0) {
|
|
458
458
|
menuItems.push({
|
|
459
459
|
items: [createHeaderRowColumnMenuItem(direction)]
|
|
460
460
|
});
|
|
461
461
|
}
|
|
462
462
|
|
|
463
463
|
// All rows, add toggle for numbered rows, default is false
|
|
464
|
-
if (
|
|
464
|
+
if (direction === 'row') {
|
|
465
465
|
index === 0 ? menuItems[menuItems.length - 1].items.push(createRowNumbersMenuItem()) : menuItems.push({
|
|
466
466
|
items: [createRowNumbersMenuItem()]
|
|
467
467
|
});
|
|
@@ -13,7 +13,6 @@ var _uiMenu = require("@atlaskit/editor-common/ui-menu");
|
|
|
13
13
|
var _uiReact = require("@atlaskit/editor-common/ui-react");
|
|
14
14
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
15
15
|
var _menu = require("@atlaskit/menu");
|
|
16
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
17
16
|
var _consts = require("../consts");
|
|
18
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -129,39 +128,33 @@ var DropdownMenu = exports.DropdownMenu = function DropdownMenu(_ref) {
|
|
|
129
128
|
// The logic below normalises the index value based on the number
|
|
130
129
|
// of menu items with 2 focusable elements, and adjusts the index to ensure
|
|
131
130
|
// the correct menu item is sent in onItemActivated callback
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
131
|
+
var keys = ['row_numbers', 'header_row', 'header_column'];
|
|
132
|
+
var doubleItemCount = 0;
|
|
133
|
+
var firstIndex = results.findIndex(function (value) {
|
|
134
|
+
return keys.includes(value.key);
|
|
135
|
+
});
|
|
136
|
+
if (firstIndex === -1 || index <= firstIndex) {
|
|
137
|
+
onItemActivated && onItemActivated({
|
|
138
|
+
item: results[index]
|
|
137
139
|
});
|
|
138
|
-
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
for (var i = firstIndex; i < results.length; i += 1) {
|
|
143
|
+
if (keys.includes(results[i].key)) {
|
|
144
|
+
doubleItemCount += 1;
|
|
145
|
+
}
|
|
146
|
+
if (firstIndex % 2 === 0 && index - doubleItemCount === i) {
|
|
139
147
|
onItemActivated && onItemActivated({
|
|
140
|
-
item: results[
|
|
148
|
+
item: results[i]
|
|
141
149
|
});
|
|
142
150
|
return;
|
|
143
151
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
onItemActivated && onItemActivated({
|
|
150
|
-
item: results[i]
|
|
151
|
-
});
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
if (firstIndex % 2 === 1 && index - doubleItemCount === i) {
|
|
155
|
-
onItemActivated && onItemActivated({
|
|
156
|
-
item: results[i]
|
|
157
|
-
});
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
152
|
+
if (firstIndex % 2 === 1 && index - doubleItemCount === i) {
|
|
153
|
+
onItemActivated && onItemActivated({
|
|
154
|
+
item: results[i]
|
|
155
|
+
});
|
|
156
|
+
return;
|
|
160
157
|
}
|
|
161
|
-
} else {
|
|
162
|
-
onItemActivated && onItemActivated({
|
|
163
|
-
item: results[index]
|
|
164
|
-
});
|
|
165
158
|
}
|
|
166
159
|
}
|
|
167
160
|
}, innerMenu())));
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.ColumnControls = void 0;
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
9
10
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
10
11
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
11
12
|
var _editorTables = require("@atlaskit/editor-tables");
|
|
@@ -45,8 +46,11 @@ var ColumnControls = exports.ColumnControls = function ColumnControls(_ref) {
|
|
|
45
46
|
tableContainerWidth = _ref.tableContainerWidth,
|
|
46
47
|
isNumberColumnEnabled = _ref.isNumberColumnEnabled,
|
|
47
48
|
isDragging = _ref.isDragging,
|
|
48
|
-
getScrollOffset = _ref.getScrollOffset
|
|
49
|
+
getScrollOffset = _ref.getScrollOffset,
|
|
50
|
+
api = _ref.api;
|
|
49
51
|
var columnControlsRef = (0, _react.useRef)(null);
|
|
52
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['selection']),
|
|
53
|
+
selectionState = _useSharedPluginState.selectionState;
|
|
50
54
|
var widths = (_colWidths$map$join = colWidths === null || colWidths === void 0 ? void 0 : colWidths.map(function (width) {
|
|
51
55
|
return (
|
|
52
56
|
// when there is sticky header, a `margin-right: -1px` applied to `tr.sticky th` so it causes colWidths to be 1px wider
|
|
@@ -57,7 +61,7 @@ var ColumnControls = exports.ColumnControls = function ColumnControls(_ref) {
|
|
|
57
61
|
// TODO: reusing getRowsParams here because it's generic enough to work for columns -> rename
|
|
58
62
|
var columnParams = (0, _utils2.getRowsParams)(colWidths !== null && colWidths !== void 0 ? colWidths : []);
|
|
59
63
|
var colIndex = hoveredCell === null || hoveredCell === void 0 ? void 0 : hoveredCell.colIndex;
|
|
60
|
-
var selectedColIndexes = getSelectedColumns(editorView.state.selection);
|
|
64
|
+
var selectedColIndexes = getSelectedColumns((selectionState === null || selectionState === void 0 ? void 0 : selectionState.selection) || editorView.state.selection);
|
|
61
65
|
var firstRow = tableRef.querySelector('tr');
|
|
62
66
|
var hasHeaderRow = firstRow ? firstRow.getAttribute('data-header-row') : false;
|
|
63
67
|
var marginTop = hasHeaderRow && stickyTop !== undefined ? (_rowHeights$ = rowHeights === null || rowHeights === void 0 ? void 0 : rowHeights[0]) !== null && _rowHeights$ !== void 0 ? _rowHeights$ : 0 : 0;
|
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.default = exports.TableFloatingColumnControls = void 0;
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
11
12
|
var _adapter = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
12
13
|
var _types = require("../../types");
|
|
13
14
|
var _utils = require("../../utils");
|
|
@@ -30,7 +31,8 @@ var TableFloatingColumnControls = exports.TableFloatingColumnControls = function
|
|
|
30
31
|
tableContainerWidth = _ref.tableContainerWidth,
|
|
31
32
|
isNumberColumnEnabled = _ref.isNumberColumnEnabled,
|
|
32
33
|
getScrollOffset = _ref.getScrollOffset,
|
|
33
|
-
tableWrapperHeight = _ref.tableWrapperHeight
|
|
34
|
+
tableWrapperHeight = _ref.tableWrapperHeight,
|
|
35
|
+
api = _ref.api;
|
|
34
36
|
var _useState = (0, _react.useState)(false),
|
|
35
37
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
36
38
|
isDragging = _useState2[0],
|
|
@@ -97,7 +99,8 @@ var TableFloatingColumnControls = exports.TableFloatingColumnControls = function
|
|
|
97
99
|
tableContainerWidth: tableContainerWidth,
|
|
98
100
|
isNumberColumnEnabled: isNumberColumnEnabled,
|
|
99
101
|
isDragging: isDragging,
|
|
100
|
-
getScrollOffset: getScrollOffset
|
|
102
|
+
getScrollOffset: getScrollOffset,
|
|
103
|
+
api: (0, _platformFeatureFlags.getBooleanFF)('platform.editor.table.use-shared-state-hook') ? api : undefined
|
|
101
104
|
}), isDragging && /*#__PURE__*/_react.default.createElement(_ColumnDropTargets.ColumnDropTargets, {
|
|
102
105
|
tableRef: tableRef,
|
|
103
106
|
isHeaderSticky: (stickyHeader === null || stickyHeader === void 0 ? void 0 : stickyHeader.sticky) && hasHeaderRow,
|
|
@@ -5,10 +5,11 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.DragCornerControls = void 0;
|
|
8
|
+
exports.DragCornerControlsWithSelection = exports.DragCornerControls = void 0;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
11
|
var _reactIntlNext = require("react-intl-next");
|
|
12
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
12
13
|
var _messages = require("@atlaskit/editor-common/messages");
|
|
13
14
|
var _utils = require("@atlaskit/editor-tables/utils");
|
|
14
15
|
var _commands = require("../../../commands");
|
|
@@ -55,4 +56,50 @@ var DragCornerControlsComponent = function DragCornerControlsComponent(_ref) {
|
|
|
55
56
|
className: _types.TableCssClassName.DRAG_CORNER_BUTTON_INNER
|
|
56
57
|
}));
|
|
57
58
|
};
|
|
59
|
+
var DragCornerControlsComponentWithSelection = function DragCornerControlsComponentWithSelection(_ref2) {
|
|
60
|
+
var editorView = _ref2.editorView,
|
|
61
|
+
isInDanger = _ref2.isInDanger,
|
|
62
|
+
isResizing = _ref2.isResizing,
|
|
63
|
+
formatMessage = _ref2.intl.formatMessage,
|
|
64
|
+
api = _ref2.api;
|
|
65
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['selection']),
|
|
66
|
+
selectionState = _useSharedPluginState.selectionState;
|
|
67
|
+
var handleOnClick = function handleOnClick() {
|
|
68
|
+
var state = editorView.state,
|
|
69
|
+
dispatch = editorView.dispatch;
|
|
70
|
+
dispatch((0, _utils.selectTable)(state.tr).setMeta('addToHistory', false));
|
|
71
|
+
};
|
|
72
|
+
var handleMouseOut = function handleMouseOut() {
|
|
73
|
+
var state = editorView.state,
|
|
74
|
+
dispatch = editorView.dispatch;
|
|
75
|
+
(0, _commands.clearHoverSelection)()(state, dispatch);
|
|
76
|
+
};
|
|
77
|
+
var isActive = (0, _react.useMemo)(function () {
|
|
78
|
+
if (!(selectionState !== null && selectionState !== void 0 && selectionState.selection)) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
var table = (0, _utils.findTable)(selectionState.selection);
|
|
82
|
+
if (!table) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
return (0, _utils.isTableSelected)(selectionState.selection);
|
|
86
|
+
}, [selectionState]);
|
|
87
|
+
if (isResizing) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
return /*#__PURE__*/_react.default.createElement("button", {
|
|
91
|
+
className: (0, _classnames.default)(_types.TableCssClassName.DRAG_CORNER_BUTTON, {
|
|
92
|
+
active: isActive,
|
|
93
|
+
danger: isActive && isInDanger
|
|
94
|
+
}),
|
|
95
|
+
"aria-label": formatMessage(_messages.tableMessages.cornerControl),
|
|
96
|
+
type: "button",
|
|
97
|
+
onClick: handleOnClick,
|
|
98
|
+
onMouseOut: handleMouseOut,
|
|
99
|
+
contentEditable: false
|
|
100
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
101
|
+
className: _types.TableCssClassName.DRAG_CORNER_BUTTON_INNER
|
|
102
|
+
}));
|
|
103
|
+
};
|
|
104
|
+
var DragCornerControlsWithSelection = exports.DragCornerControlsWithSelection = (0, _reactIntlNext.injectIntl)(DragCornerControlsComponentWithSelection);
|
|
58
105
|
var DragCornerControls = exports.DragCornerControls = (0, _reactIntlNext.injectIntl)(DragCornerControlsComponent);
|
|
@@ -15,5 +15,11 @@ Object.defineProperty(exports, "DragCornerControls", {
|
|
|
15
15
|
return _DragCornerControls.DragCornerControls;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
+
Object.defineProperty(exports, "DragCornerControlsWithSelection", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _DragCornerControls.DragCornerControlsWithSelection;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
18
24
|
var _ClassicCornerControls = require("./ClassicCornerControls");
|
|
19
25
|
var _DragCornerControls = require("./DragCornerControls");
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.FloatingControlsWithSelection = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
10
|
+
var _CornerControls = require("./CornerControls");
|
|
11
|
+
var _RowControls = require("./RowControls");
|
|
12
|
+
var FloatingControlsWithSelection = exports.FloatingControlsWithSelection = function FloatingControlsWithSelection(_ref) {
|
|
13
|
+
var editorView = _ref.editorView,
|
|
14
|
+
tableRef = _ref.tableRef,
|
|
15
|
+
isInDanger = _ref.isInDanger,
|
|
16
|
+
isResizing = _ref.isResizing,
|
|
17
|
+
isHeaderRowEnabled = _ref.isHeaderRowEnabled,
|
|
18
|
+
isHeaderColumnEnabled = _ref.isHeaderColumnEnabled,
|
|
19
|
+
hoveredRows = _ref.hoveredRows,
|
|
20
|
+
stickyTop = _ref.stickyTop,
|
|
21
|
+
hoverRows = _ref.hoverRows,
|
|
22
|
+
selectRow = _ref.selectRow,
|
|
23
|
+
tableActive = _ref.tableActive,
|
|
24
|
+
api = _ref.api;
|
|
25
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['selection']),
|
|
26
|
+
selectionState = _useSharedPluginState.selectionState;
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CornerControls.CornerControls, {
|
|
28
|
+
editorView: editorView,
|
|
29
|
+
tableRef: tableRef,
|
|
30
|
+
isInDanger: isInDanger,
|
|
31
|
+
isResizing: isResizing,
|
|
32
|
+
isHeaderRowEnabled: isHeaderRowEnabled,
|
|
33
|
+
isHeaderColumnEnabled: isHeaderColumnEnabled,
|
|
34
|
+
hoveredRows: hoveredRows,
|
|
35
|
+
stickyTop: tableActive ? stickyTop : undefined
|
|
36
|
+
}), /*#__PURE__*/_react.default.createElement(_RowControls.RowControls, {
|
|
37
|
+
selection: selectionState === null || selectionState === void 0 ? void 0 : selectionState.selection,
|
|
38
|
+
editorView: editorView,
|
|
39
|
+
tableRef: tableRef,
|
|
40
|
+
hoverRows: hoverRows,
|
|
41
|
+
hoveredRows: hoveredRows,
|
|
42
|
+
isInDanger: isInDanger,
|
|
43
|
+
isResizing: isResizing,
|
|
44
|
+
selectRow: selectRow,
|
|
45
|
+
stickyTop: tableActive ? stickyTop : undefined
|
|
46
|
+
}));
|
|
47
|
+
};
|
|
@@ -52,7 +52,8 @@ var RowControlsComponent = /*#__PURE__*/function (_Component) {
|
|
|
52
52
|
hoveredRows = _this$props.hoveredRows,
|
|
53
53
|
isInDanger = _this$props.isInDanger,
|
|
54
54
|
isResizing = _this$props.isResizing,
|
|
55
|
-
formatMessage = _this$props.intl.formatMessage
|
|
55
|
+
formatMessage = _this$props.intl.formatMessage,
|
|
56
|
+
selectionState = _this$props.selection;
|
|
56
57
|
if (!tableRef) {
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
@@ -76,7 +77,7 @@ var RowControlsComponent = /*#__PURE__*/function (_Component) {
|
|
|
76
77
|
}
|
|
77
78
|
var thisRowSticky = _this2.props.stickyTop !== undefined && index === 0 && hasHeaderRow;
|
|
78
79
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
79
|
-
className: "".concat(_types.TableCssClassName.ROW_CONTROLS_BUTTON_WRAP, " ").concat((0, _utils.getRowClassNames)(startIndex, selection, hoveredRows, isInDanger, isResizing), " ").concat(thisRowSticky ? 'sticky' : ''),
|
|
80
|
+
className: "".concat(_types.TableCssClassName.ROW_CONTROLS_BUTTON_WRAP, " ").concat((0, _utils.getRowClassNames)(startIndex, selectionState || selection, hoveredRows, isInDanger, isResizing), " ").concat(thisRowSticky ? 'sticky' : ''),
|
|
80
81
|
key: startIndex,
|
|
81
82
|
style: {
|
|
82
83
|
height: height,
|
|
@@ -8,9 +8,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.default = exports.TableFloatingControls = void 0;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _utils = require("@atlaskit/editor-common/utils");
|
|
11
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
11
12
|
var _commands = require("../../commands");
|
|
12
13
|
var _types = require("../../types");
|
|
13
14
|
var _CornerControls = require("./CornerControls");
|
|
15
|
+
var _FloatingControlsWithSelection = require("./FloatingControlsWithSelection");
|
|
14
16
|
var _NumberColumn = _interopRequireDefault(require("./NumberColumn"));
|
|
15
17
|
var _RowControls = require("./RowControls");
|
|
16
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
@@ -31,7 +33,8 @@ var TableFloatingControls = exports.TableFloatingControls = function TableFloati
|
|
|
31
33
|
isDragAndDropEnabled = _ref.isDragAndDropEnabled,
|
|
32
34
|
hoveredCell = _ref.hoveredCell,
|
|
33
35
|
isTableHovered = _ref.isTableHovered,
|
|
34
|
-
tableWrapperWidth = _ref.tableWrapperWidth
|
|
36
|
+
tableWrapperWidth = _ref.tableWrapperWidth,
|
|
37
|
+
api = _ref.api;
|
|
35
38
|
var _selectRow = (0, _react.useCallback)(function (row, expand) {
|
|
36
39
|
var state = editorView.state,
|
|
37
40
|
dispatch = editorView.dispatch;
|
|
@@ -92,7 +95,13 @@ var TableFloatingControls = exports.TableFloatingControls = function TableFloati
|
|
|
92
95
|
updateCellHoverLocation: updateCellHoverLocation,
|
|
93
96
|
stickyTop: stickyTop,
|
|
94
97
|
isDragAndDropEnabled: isDragAndDropEnabled
|
|
95
|
-
}) : null, tableActive && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isDragAndDropEnabled ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CornerControls.
|
|
98
|
+
}) : null, tableActive && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isDragAndDropEnabled ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _platformFeatureFlags.getBooleanFF)('platform.editor.table.use-shared-state-hook') ? /*#__PURE__*/_react.default.createElement(_CornerControls.DragCornerControlsWithSelection, {
|
|
99
|
+
editorView: editorView,
|
|
100
|
+
tableRef: tableRef,
|
|
101
|
+
isInDanger: isInDanger,
|
|
102
|
+
isResizing: isResizing,
|
|
103
|
+
api: api
|
|
104
|
+
}) : /*#__PURE__*/_react.default.createElement(_CornerControls.DragCornerControls, {
|
|
96
105
|
editorView: editorView,
|
|
97
106
|
tableRef: tableRef,
|
|
98
107
|
isInDanger: isInDanger,
|
|
@@ -111,7 +120,20 @@ var TableFloatingControls = exports.TableFloatingControls = function TableFloati
|
|
|
111
120
|
selectRow: _selectRow,
|
|
112
121
|
selectRows: _selectRows,
|
|
113
122
|
updateCellHoverLocation: updateCellHoverLocation
|
|
114
|
-
})) :
|
|
123
|
+
})) : (0, _platformFeatureFlags.getBooleanFF)('platform.editor.table.use-shared-state-hook') ? /*#__PURE__*/_react.default.createElement(_FloatingControlsWithSelection.FloatingControlsWithSelection, {
|
|
124
|
+
editorView: editorView,
|
|
125
|
+
tableRef: tableRef,
|
|
126
|
+
isInDanger: isInDanger,
|
|
127
|
+
isResizing: isResizing,
|
|
128
|
+
isHeaderRowEnabled: isHeaderRowEnabled,
|
|
129
|
+
isHeaderColumnEnabled: isHeaderColumnEnabled,
|
|
130
|
+
hoveredRows: hoveredRows,
|
|
131
|
+
stickyTop: tableActive ? stickyTop : undefined,
|
|
132
|
+
tableActive: tableActive,
|
|
133
|
+
hoverRows: _hoverRows,
|
|
134
|
+
selectRow: _selectRow,
|
|
135
|
+
api: api
|
|
136
|
+
}) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CornerControls.CornerControls, {
|
|
115
137
|
editorView: editorView,
|
|
116
138
|
tableRef: tableRef,
|
|
117
139
|
isInDanger: isInDanger,
|