@atlaskit/editor-plugin-table 9.1.2 → 9.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/afm-post-office/tsconfig.json +99 -0
- package/dist/cjs/nodeviews/TableComponent.js +5 -5
- package/dist/cjs/nodeviews/TableComponentWithSharedState.js +6 -4
- package/dist/cjs/nodeviews/table.js +1 -2
- package/dist/cjs/tablePlugin.js +1 -0
- package/dist/cjs/ui/DragHandle/index.js +55 -6
- package/dist/cjs/ui/TableFloatingColumnControls/ColumnControls/index.js +17 -2
- package/dist/cjs/ui/TableFloatingColumnControls/index.js +1 -2
- package/dist/cjs/ui/TableFloatingControls/RowControls/DragControls.js +60 -7
- package/dist/cjs/ui/TableFloatingControls/index.js +24 -4
- package/dist/cjs/ui/common-styles.js +1 -2
- package/dist/es2019/nodeviews/TableComponent.js +5 -5
- package/dist/es2019/nodeviews/TableComponentWithSharedState.js +6 -4
- package/dist/es2019/nodeviews/table.js +1 -2
- package/dist/es2019/tablePlugin.js +1 -0
- package/dist/es2019/ui/DragHandle/index.js +57 -6
- package/dist/es2019/ui/TableFloatingColumnControls/ColumnControls/index.js +18 -3
- package/dist/es2019/ui/TableFloatingColumnControls/index.js +1 -2
- package/dist/es2019/ui/TableFloatingControls/RowControls/DragControls.js +62 -7
- package/dist/es2019/ui/TableFloatingControls/index.js +25 -5
- package/dist/es2019/ui/common-styles.js +1 -2
- package/dist/esm/nodeviews/TableComponent.js +5 -5
- package/dist/esm/nodeviews/TableComponentWithSharedState.js +6 -4
- package/dist/esm/nodeviews/table.js +1 -2
- package/dist/esm/tablePlugin.js +1 -0
- package/dist/esm/ui/DragHandle/index.js +54 -5
- package/dist/esm/ui/TableFloatingColumnControls/ColumnControls/index.js +18 -3
- package/dist/esm/ui/TableFloatingColumnControls/index.js +1 -2
- package/dist/esm/ui/TableFloatingControls/RowControls/DragControls.js +60 -7
- package/dist/esm/ui/TableFloatingControls/index.js +25 -5
- package/dist/esm/ui/common-styles.js +1 -2
- package/dist/types/nodeviews/TableComponent.d.ts +3 -1
- package/dist/types/tablePluginType.d.ts +21 -18
- package/dist/types/types/index.d.ts +1 -1
- package/dist/types/ui/DragHandle/index.d.ts +21 -0
- package/dist/types/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +4 -81
- package/dist/types/ui/TableFloatingControls/CornerControls/DragCornerControls.d.ts +6 -160
- package/dist/types/ui/TableFloatingControls/RowControls/DragControls.d.ts +8 -5
- package/dist/types/ui/TableFloatingControls/index.d.ts +3 -80
- package/dist/types-ts4.5/nodeviews/TableComponent.d.ts +3 -1
- package/dist/types-ts4.5/tablePluginType.d.ts +21 -18
- package/dist/types-ts4.5/types/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/DragHandle/index.d.ts +21 -0
- package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +4 -102
- package/dist/types-ts4.5/ui/TableFloatingControls/CornerControls/DragCornerControls.d.ts +6 -202
- package/dist/types-ts4.5/ui/TableFloatingControls/RowControls/DragControls.d.ts +8 -5
- package/dist/types-ts4.5/ui/TableFloatingControls/index.d.ts +3 -101
- package/package.json +8 -5
- package/src/nodeviews/TableComponent.tsx +9 -7
- package/src/nodeviews/TableComponentWithSharedState.tsx +4 -2
- package/src/nodeviews/table.tsx +1 -2
- package/src/tablePlugin.tsx +1 -0
- package/src/tablePluginType.ts +28 -22
- package/src/types/index.ts +1 -0
- package/src/ui/DragHandle/index.tsx +67 -2
- package/src/ui/TableFloatingColumnControls/ColumnControls/index.tsx +38 -19
- package/src/ui/TableFloatingColumnControls/index.tsx +2 -5
- package/src/ui/TableFloatingControls/RowControls/DragControls.tsx +86 -25
- package/src/ui/TableFloatingControls/index.tsx +54 -27
- package/src/ui/common-styles.ts +1 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-table
|
|
2
2
|
|
|
3
|
+
## 9.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#103042](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/103042)
|
|
8
|
+
[`a3bcf71666e0d`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/a3bcf71666e0d) -
|
|
9
|
+
Replace platform_editor_table_use_shared_state_hook with FG and fix remaining selection bugs
|
|
10
|
+
caused by lack of re-renders
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
16
|
+
## 9.1.3
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- [#102547](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/102547)
|
|
21
|
+
[`b76cc60ba170b`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/b76cc60ba170b) -
|
|
22
|
+
Internal changes to remove deprecated typography imports.
|
|
23
|
+
|
|
3
24
|
## 9.1.2
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "../../../../tsconfig.entry-points.post-office.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"declaration": true,
|
|
5
|
+
"target": "es5",
|
|
6
|
+
"outDir": "../../../../../post-office/tsDist/@atlaskit__editor-plugin-table/app",
|
|
7
|
+
"rootDir": "../",
|
|
8
|
+
"composite": true
|
|
9
|
+
},
|
|
10
|
+
"include": [
|
|
11
|
+
"../src/**/*.ts",
|
|
12
|
+
"../src/**/*.tsx"
|
|
13
|
+
],
|
|
14
|
+
"exclude": [
|
|
15
|
+
"../src/**/__tests__/*",
|
|
16
|
+
"../src/**/*.test.*",
|
|
17
|
+
"../src/**/test.*"
|
|
18
|
+
],
|
|
19
|
+
"references": [
|
|
20
|
+
{
|
|
21
|
+
"path": "../../../design-system/button/afm-post-office/tsconfig.json"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "../../custom-steps/afm-post-office/tsconfig.json"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"path": "../../editor-common/afm-post-office/tsconfig.json"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"path": "../../editor-palette/afm-post-office/tsconfig.json"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"path": "../../editor-plugin-accessibility-utils/afm-post-office/tsconfig.json"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"path": "../../editor-plugin-analytics/afm-post-office/tsconfig.json"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"path": "../../editor-plugin-batch-attribute-updates/afm-post-office/tsconfig.json"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"path": "../../editor-plugin-content-insertion/afm-post-office/tsconfig.json"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"path": "../../editor-plugin-editor-viewmode/afm-post-office/tsconfig.json"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"path": "../../editor-plugin-guideline/afm-post-office/tsconfig.json"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"path": "../../editor-plugin-selection/afm-post-office/tsconfig.json"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"path": "../../editor-plugin-width/afm-post-office/tsconfig.json"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"path": "../../editor-shared-styles/afm-post-office/tsconfig.json"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"path": "../../editor-tables/afm-post-office/tsconfig.json"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"path": "../../../design-system/icon/afm-post-office/tsconfig.json"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"path": "../../../design-system/menu/afm-post-office/tsconfig.json"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"path": "../../../platform/feature-flags/afm-post-office/tsconfig.json"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"path": "../../../pragmatic-drag-and-drop/core/afm-post-office/tsconfig.json"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"path": "../../../pragmatic-drag-and-drop/auto-scroll/afm-post-office/tsconfig.json"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"path": "../../../pragmatic-drag-and-drop/hitbox/afm-post-office/tsconfig.json"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"path": "../../../design-system/primitives/afm-post-office/tsconfig.json"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"path": "../../../design-system/theme/afm-post-office/tsconfig.json"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"path": "../../tmp-editor-statsig/afm-post-office/tsconfig.json"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"path": "../../../design-system/toggle/afm-post-office/tsconfig.json"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"path": "../../../design-system/tokens/afm-post-office/tsconfig.json"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"path": "../../../design-system/tooltip/afm-post-office/tsconfig.json"
|
|
97
|
+
}
|
|
98
|
+
]
|
|
99
|
+
}
|
|
@@ -26,7 +26,6 @@ var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
|
26
26
|
var _utils2 = require("@atlaskit/editor-tables/utils");
|
|
27
27
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
28
28
|
var _combine = require("@atlaskit/pragmatic-drag-and-drop/combine");
|
|
29
|
-
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
30
29
|
var _commands = require("../pm-plugins/commands");
|
|
31
30
|
var _autoscrollers = require("../pm-plugins/drag-and-drop/utils/autoscrollers");
|
|
32
31
|
var _pluginFactory = require("../pm-plugins/plugin-factory");
|
|
@@ -699,7 +698,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
699
698
|
getEditorFeatureFlags = _this$props11.getEditorFeatureFlags;
|
|
700
699
|
var isInDanger = this.props.isInDanger;
|
|
701
700
|
var table = (0, _utils2.findTable)(view.state.selection);
|
|
702
|
-
if ((0,
|
|
701
|
+
if (!(0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg')) {
|
|
703
702
|
var pluginState = (0, _pluginFactory.getPluginState)(view.state);
|
|
704
703
|
isInDanger = pluginState.isInDanger;
|
|
705
704
|
}
|
|
@@ -835,7 +834,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
835
834
|
getEditorFeatureFlags = _this$props12.getEditorFeatureFlags,
|
|
836
835
|
isTableScalingEnabled = _this$props12.isTableScalingEnabled,
|
|
837
836
|
allowTableResizing = _this$props12.allowTableResizing,
|
|
838
|
-
allowTableAlignment = _this$props12.allowTableAlignment
|
|
837
|
+
allowTableAlignment = _this$props12.allowTableAlignment,
|
|
838
|
+
selection = _this$props12.selection;
|
|
839
839
|
var _this$props13 = this.props,
|
|
840
840
|
isInDanger = _this$props13.isInDanger,
|
|
841
841
|
hoveredRows = _this$props13.hoveredRows,
|
|
@@ -846,7 +846,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
846
846
|
showBeforeShadow = _this$state3.showBeforeShadow,
|
|
847
847
|
showAfterShadow = _this$state3.showAfterShadow;
|
|
848
848
|
var node = getNode();
|
|
849
|
-
if ((0,
|
|
849
|
+
if (!(0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg')) {
|
|
850
850
|
var pluginState = (0, _pluginFactory.getPluginState)(view.state);
|
|
851
851
|
isInDanger = pluginState.isInDanger;
|
|
852
852
|
hoveredRows = pluginState.hoveredRows;
|
|
@@ -940,7 +940,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
940
940
|
return /*#__PURE__*/_react.default.createElement(_TableContainer.TableContainer
|
|
941
941
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
942
942
|
, {
|
|
943
|
-
className: (0, _classnames2.default)(_types.TableCssClassName.TABLE_CONTAINER, (0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)({}, _types.TableCssClassName.WITH_CONTROLS, allowControls && tableActive), _types.TableCssClassName.TABLE_STICKY, this.state.stickyHeader && hasHeaderRow), _types.TableCssClassName.HOVERED_DELETE_BUTTON, isInDanger), _types.TableCssClassName.TABLE_SELECTED, (0, _utils2.isTableSelected)(view.state.selection))),
|
|
943
|
+
className: (0, _classnames2.default)(_types.TableCssClassName.TABLE_CONTAINER, (0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)({}, _types.TableCssClassName.WITH_CONTROLS, allowControls && tableActive), _types.TableCssClassName.TABLE_STICKY, this.state.stickyHeader && hasHeaderRow), _types.TableCssClassName.HOVERED_DELETE_BUTTON, isInDanger), _types.TableCssClassName.TABLE_SELECTED, (0, _utils2.isTableSelected)(selection !== null && selection !== void 0 ? selection : view.state.selection))),
|
|
944
944
|
editorView: view,
|
|
945
945
|
getPos: getPos,
|
|
946
946
|
node: node
|
|
@@ -29,10 +29,11 @@ var TableComponentWithSharedState = exports.TableComponentWithSharedState = func
|
|
|
29
29
|
forwardRef = _ref.forwardRef,
|
|
30
30
|
allowTableAlignment = _ref.allowTableAlignment,
|
|
31
31
|
allowTableResizing = _ref.allowTableResizing;
|
|
32
|
-
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['width', 'table', 'media']),
|
|
32
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['width', 'table', 'media', 'selection']),
|
|
33
33
|
widthState = _useSharedPluginState.widthState,
|
|
34
34
|
tableState = _useSharedPluginState.tableState,
|
|
35
|
-
mediaState = _useSharedPluginState.mediaState
|
|
35
|
+
mediaState = _useSharedPluginState.mediaState,
|
|
36
|
+
selectionState = _useSharedPluginState.selectionState;
|
|
36
37
|
if (!tableState) {
|
|
37
38
|
return null;
|
|
38
39
|
}
|
|
@@ -69,7 +70,7 @@ var TableComponentWithSharedState = exports.TableComponentWithSharedState = func
|
|
|
69
70
|
getPos: getPos,
|
|
70
71
|
isMediaFullscreen: mediaState === null || mediaState === void 0 ? void 0 : mediaState.isFullscreen,
|
|
71
72
|
options: options,
|
|
72
|
-
allowControls:
|
|
73
|
+
allowControls: allowControls,
|
|
73
74
|
isHeaderRowEnabled: isHeaderRowEnabled,
|
|
74
75
|
isHeaderColumnEnabled: isHeaderColumnEnabled,
|
|
75
76
|
isDragAndDropEnabled: options === null || options === void 0 ? void 0 : options.isDragAndDropEnabled,
|
|
@@ -92,6 +93,7 @@ var TableComponentWithSharedState = exports.TableComponentWithSharedState = func
|
|
|
92
93
|
hoveredRows: hoveredRows,
|
|
93
94
|
hoveredCell: hoveredCell,
|
|
94
95
|
isTableHovered: isTableHovered,
|
|
95
|
-
isWholeTableInDanger: isWholeTableInDanger
|
|
96
|
+
isWholeTableInDanger: isWholeTableInDanger,
|
|
97
|
+
selection: selectionState === null || selectionState === void 0 ? void 0 : selectionState.selection
|
|
96
98
|
});
|
|
97
99
|
};
|
|
@@ -22,7 +22,6 @@ var _model = require("@atlaskit/editor-prosemirror/model");
|
|
|
22
22
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
23
23
|
var _tableMap = require("@atlaskit/editor-tables/table-map");
|
|
24
24
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
25
|
-
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
26
25
|
var _createPluginConfig = require("../pm-plugins/create-plugin-config");
|
|
27
26
|
var _pluginKey = require("../pm-plugins/drag-and-drop/plugin-key");
|
|
28
27
|
var _pluginFactory = require("../pm-plugins/plugin-factory");
|
|
@@ -141,7 +140,7 @@ var TableView = exports.default = /*#__PURE__*/function (_ReactNodeView) {
|
|
|
141
140
|
key: "render",
|
|
142
141
|
value: function render(props, forwardRef) {
|
|
143
142
|
var _this3 = this;
|
|
144
|
-
if ((0,
|
|
143
|
+
if ((0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg')) {
|
|
145
144
|
return /*#__PURE__*/_react.default.createElement(_TableComponentWithSharedState.TableComponentWithSharedState, {
|
|
146
145
|
forwardRef: forwardRef,
|
|
147
146
|
getNode: this.getNode,
|
package/dist/cjs/tablePlugin.js
CHANGED
|
@@ -108,6 +108,7 @@ var tablesPlugin = function tablesPlugin(_ref) {
|
|
|
108
108
|
isTableResizing: tableWidthResizingPluginState === null || tableWidthResizingPluginState === void 0 ? void 0 : tableWidthResizingPluginState.resizing,
|
|
109
109
|
isInDanger: tablePluginState.isInDanger,
|
|
110
110
|
hoveredRows: tablePluginState.hoveredRows,
|
|
111
|
+
hoveredColumns: tablePluginState.hoveredColumns,
|
|
111
112
|
hoveredCell: tablePluginState.hoveredCell,
|
|
112
113
|
isTableHovered: tablePluginState.isTableHovered,
|
|
113
114
|
isWholeTableInDanger: tablePluginState.isWholeTableInDanger,
|
|
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.DragHandle = void 0;
|
|
8
|
+
exports.DragHandleWithSharedState = exports.DragHandle = void 0;
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
@@ -13,6 +13,7 @@ var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
|
13
13
|
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
14
14
|
var _reactIntlNext = require("react-intl-next");
|
|
15
15
|
var _browser = require("@atlaskit/editor-common/browser");
|
|
16
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
16
17
|
var _messages = require("@atlaskit/editor-common/messages");
|
|
17
18
|
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
18
19
|
var _editorTables = require("@atlaskit/editor-tables");
|
|
@@ -27,6 +28,8 @@ var _DragPreview = require("../DragPreview");
|
|
|
27
28
|
var _HandleIconComponent = require("./HandleIconComponent");
|
|
28
29
|
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); }
|
|
29
30
|
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 && {}.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; }
|
|
31
|
+
/* eslint-disable @atlaskit/design-system/no-html-button */
|
|
32
|
+
|
|
30
33
|
var DragHandleComponent = function DragHandleComponent(_ref) {
|
|
31
34
|
var isDragMenuTarget = _ref.isDragMenuTarget,
|
|
32
35
|
tableLocalId = _ref.tableLocalId,
|
|
@@ -45,7 +48,9 @@ var DragHandleComponent = function DragHandleComponent(_ref) {
|
|
|
45
48
|
hoveredCell = _ref.hoveredCell,
|
|
46
49
|
onClick = _ref.onClick,
|
|
47
50
|
editorView = _ref.editorView,
|
|
48
|
-
formatMessage = _ref.intl.formatMessage
|
|
51
|
+
formatMessage = _ref.intl.formatMessage,
|
|
52
|
+
hoveredColumns = _ref.hoveredColumns,
|
|
53
|
+
hoveredRows = _ref.hoveredRows;
|
|
49
54
|
var dragHandleDivRef = (0, _react.useRef)(null);
|
|
50
55
|
var _useState = (0, _react.useState)(null),
|
|
51
56
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
@@ -53,9 +58,13 @@ var DragHandleComponent = function DragHandleComponent(_ref) {
|
|
|
53
58
|
setPreviewContainer = _useState2[1];
|
|
54
59
|
var state = editorView.state,
|
|
55
60
|
selection = editorView.state.selection;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
61
|
+
if (hoveredColumns === undefined || hoveredRows === undefined) {
|
|
62
|
+
var _getPluginState = (0, _pluginFactory2.getPluginState)(state),
|
|
63
|
+
hoveredColumnsState = _getPluginState.hoveredColumns,
|
|
64
|
+
hoveredRowsState = _getPluginState.hoveredRows;
|
|
65
|
+
hoveredColumns = hoveredColumnsState;
|
|
66
|
+
hoveredRows = hoveredRowsState;
|
|
67
|
+
}
|
|
59
68
|
var _getDnDPluginState = (0, _pluginFactory.getPluginState)(state),
|
|
60
69
|
_getDnDPluginState$is = _getDnDPluginState.isDragMenuOpen,
|
|
61
70
|
isDragMenuOpen = _getDnDPluginState$is === void 0 ? false : _getDnDPluginState$is;
|
|
@@ -244,4 +253,44 @@ var DragHandleComponent = function DragHandleComponent(_ref) {
|
|
|
244
253
|
height: previewHeight
|
|
245
254
|
}), previewContainer));
|
|
246
255
|
};
|
|
247
|
-
var
|
|
256
|
+
var DragHandleComponentWithSharedState = function DragHandleComponentWithSharedState(_ref5) {
|
|
257
|
+
var isDragMenuTarget = _ref5.isDragMenuTarget,
|
|
258
|
+
tableLocalId = _ref5.tableLocalId,
|
|
259
|
+
direction = _ref5.direction,
|
|
260
|
+
appearance = _ref5.appearance,
|
|
261
|
+
indexes = _ref5.indexes,
|
|
262
|
+
forceDefaultHandle = _ref5.forceDefaultHandle,
|
|
263
|
+
previewHeight = _ref5.previewHeight,
|
|
264
|
+
previewWidth = _ref5.previewWidth,
|
|
265
|
+
onMouseOver = _ref5.onMouseOver,
|
|
266
|
+
onMouseOut = _ref5.onMouseOut,
|
|
267
|
+
toggleDragMenu = _ref5.toggleDragMenu,
|
|
268
|
+
hoveredCell = _ref5.hoveredCell,
|
|
269
|
+
onClick = _ref5.onClick,
|
|
270
|
+
editorView = _ref5.editorView,
|
|
271
|
+
intl = _ref5.intl,
|
|
272
|
+
api = _ref5.api;
|
|
273
|
+
var _ref6 = (0, _hooks.useSharedPluginState)(api, ['table']),
|
|
274
|
+
tableState = _ref6.tableState;
|
|
275
|
+
return /*#__PURE__*/_react.default.createElement(DragHandleComponent, {
|
|
276
|
+
isDragMenuTarget: isDragMenuTarget,
|
|
277
|
+
tableLocalId: tableLocalId,
|
|
278
|
+
direction: direction,
|
|
279
|
+
appearance: appearance,
|
|
280
|
+
indexes: indexes,
|
|
281
|
+
forceDefaultHandle: forceDefaultHandle,
|
|
282
|
+
previewWidth: previewWidth,
|
|
283
|
+
previewHeight: previewHeight,
|
|
284
|
+
onMouseOver: onMouseOver,
|
|
285
|
+
onMouseOut: onMouseOut,
|
|
286
|
+
toggleDragMenu: toggleDragMenu,
|
|
287
|
+
hoveredCell: hoveredCell,
|
|
288
|
+
onClick: onClick,
|
|
289
|
+
editorView: editorView,
|
|
290
|
+
intl: intl,
|
|
291
|
+
hoveredColumns: tableState === null || tableState === void 0 ? void 0 : tableState.hoveredColumns,
|
|
292
|
+
hoveredRows: tableState === null || tableState === void 0 ? void 0 : tableState.hoveredRows
|
|
293
|
+
});
|
|
294
|
+
};
|
|
295
|
+
var DragHandle = exports.DragHandle = (0, _reactIntlNext.injectIntl)(DragHandleComponent);
|
|
296
|
+
var DragHandleWithSharedState = exports.DragHandleWithSharedState = (0, _reactIntlNext.injectIntl)(DragHandleComponentWithSharedState);
|
|
@@ -43,7 +43,6 @@ var ColumnControls = exports.ColumnControls = function ColumnControls(_ref) {
|
|
|
43
43
|
isInDanger = _ref.isInDanger,
|
|
44
44
|
rowHeights = _ref.rowHeights,
|
|
45
45
|
colWidths = _ref.colWidths,
|
|
46
|
-
hasHeaderColumn = _ref.hasHeaderColumn,
|
|
47
46
|
isTableHovered = _ref.isTableHovered,
|
|
48
47
|
tableContainerWidth = _ref.tableContainerWidth,
|
|
49
48
|
isNumberColumnEnabled = _ref.isNumberColumnEnabled,
|
|
@@ -176,7 +175,23 @@ var ColumnControls = exports.ColumnControls = function ColumnControls(_ref) {
|
|
|
176
175
|
position: 'relative'
|
|
177
176
|
},
|
|
178
177
|
"data-testid": "table-floating-column-".concat(isHover ? colIndex : isPlaceholder ? appearance : selectedColIndexes[0], "-drag-handle")
|
|
179
|
-
}, /*#__PURE__*/_react.default.createElement(_DragHandle.
|
|
178
|
+
}, (0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg') ? /*#__PURE__*/_react.default.createElement(_DragHandle.DragHandleWithSharedState, {
|
|
179
|
+
isDragMenuTarget: !isHover,
|
|
180
|
+
direction: "column",
|
|
181
|
+
tableLocalId: localId || '',
|
|
182
|
+
indexes: indexes,
|
|
183
|
+
hoveredCell: hoveredCell,
|
|
184
|
+
previewWidth: previewWidth,
|
|
185
|
+
forceDefaultHandle: !isHover,
|
|
186
|
+
previewHeight: previewHeight,
|
|
187
|
+
appearance: appearance,
|
|
188
|
+
onClick: handleClick,
|
|
189
|
+
onMouseOver: handleMouseOver,
|
|
190
|
+
onMouseOut: handleMouseOut,
|
|
191
|
+
toggleDragMenu: toggleDragMenuHandler,
|
|
192
|
+
editorView: editorView,
|
|
193
|
+
api: api
|
|
194
|
+
}) : /*#__PURE__*/_react.default.createElement(_DragHandle.DragHandle, {
|
|
180
195
|
isDragMenuTarget: !isHover,
|
|
181
196
|
direction: "column",
|
|
182
197
|
tableLocalId: localId || '',
|
|
@@ -10,7 +10,6 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
12
|
var _adapter = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
13
|
-
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
14
13
|
var _columnControls = require("../../pm-plugins/utils/column-controls");
|
|
15
14
|
var _nodes = require("../../pm-plugins/utils/nodes");
|
|
16
15
|
var _rowControls = require("../../pm-plugins/utils/row-controls");
|
|
@@ -109,7 +108,7 @@ var TableFloatingColumnControls = function TableFloatingColumnControls(_ref) {
|
|
|
109
108
|
isNumberColumnEnabled: isNumberColumnEnabled,
|
|
110
109
|
isDragging: isDragging,
|
|
111
110
|
getScrollOffset: getScrollOffset,
|
|
112
|
-
api: (0,
|
|
111
|
+
api: (0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg') ? api : undefined
|
|
113
112
|
}), isDragging && /*#__PURE__*/_react.default.createElement(_ColumnDropTargets.ColumnDropTargets, {
|
|
114
113
|
tableRef: tableRef,
|
|
115
114
|
isHeaderSticky: (stickyHeader === null || stickyHeader === void 0 ? void 0 : stickyHeader.sticky) && hasHeaderRow,
|
|
@@ -5,12 +5,13 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.DragControls = void 0;
|
|
8
|
+
exports.DragControlsWithSelection = exports.DragControls = void 0;
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var
|
|
11
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
12
12
|
var _editorTables = require("@atlaskit/editor-tables");
|
|
13
13
|
var _utils = require("@atlaskit/editor-tables/utils");
|
|
14
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
14
15
|
var _adapter = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
15
16
|
var _commands = require("../../../pm-plugins/commands");
|
|
16
17
|
var _commands2 = require("../../../pm-plugins/drag-and-drop/commands");
|
|
@@ -35,7 +36,7 @@ var getSelectedRows = function getSelectedRows(selection) {
|
|
|
35
36
|
}
|
|
36
37
|
return [];
|
|
37
38
|
};
|
|
38
|
-
var
|
|
39
|
+
var DragControls = exports.DragControls = function DragControls(_ref) {
|
|
39
40
|
var _tableNode$attrs$loca, _tableNode$attrs;
|
|
40
41
|
var tableRef = _ref.tableRef,
|
|
41
42
|
tableNode = _ref.tableNode,
|
|
@@ -49,7 +50,9 @@ var DragControlsComponent = function DragControlsComponent(_ref) {
|
|
|
49
50
|
hoverRows = _ref.hoverRows,
|
|
50
51
|
selectRow = _ref.selectRow,
|
|
51
52
|
selectRows = _ref.selectRows,
|
|
52
|
-
updateCellHoverLocation = _ref.updateCellHoverLocation
|
|
53
|
+
updateCellHoverLocation = _ref.updateCellHoverLocation,
|
|
54
|
+
api = _ref.api,
|
|
55
|
+
selection = _ref.selection;
|
|
53
56
|
var _useState = (0, _react.useState)(false),
|
|
54
57
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
55
58
|
isDragging = _useState2[0],
|
|
@@ -59,7 +62,7 @@ var DragControlsComponent = function DragControlsComponent(_ref) {
|
|
|
59
62
|
var heights = rowHeights.map(function (height) {
|
|
60
63
|
return "".concat(height - 1, "px");
|
|
61
64
|
}).join(' ');
|
|
62
|
-
var selectedRowIndexes = getSelectedRows(editorView.state.selection);
|
|
65
|
+
var selectedRowIndexes = getSelectedRows(selection !== null && selection !== void 0 ? selection : editorView.state.selection);
|
|
63
66
|
var currentNodeLocalId = (_tableNode$attrs$loca = tableNode === null || tableNode === void 0 || (_tableNode$attrs = tableNode.attrs) === null || _tableNode$attrs === void 0 ? void 0 : _tableNode$attrs.localId) !== null && _tableNode$attrs$loca !== void 0 ? _tableNode$attrs$loca : '';
|
|
64
67
|
(0, _react.useEffect)(function () {
|
|
65
68
|
return (0, _adapter.monitorForElements)({
|
|
@@ -167,7 +170,23 @@ var DragControlsComponent = function DragControlsComponent(_ref) {
|
|
|
167
170
|
pointerEvents: 'none'
|
|
168
171
|
},
|
|
169
172
|
"data-testid": "table-floating-row-".concat(isHover ? rowIndex : selectedRowIndexes[0], "-drag-handle")
|
|
170
|
-
}, /*#__PURE__*/_react.default.createElement(_DragHandle.
|
|
173
|
+
}, (0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg') ? /*#__PURE__*/_react.default.createElement(_DragHandle.DragHandleWithSharedState, {
|
|
174
|
+
isDragMenuTarget: !isHover,
|
|
175
|
+
direction: "row",
|
|
176
|
+
tableLocalId: currentNodeLocalId,
|
|
177
|
+
indexes: indexes,
|
|
178
|
+
forceDefaultHandle: !isHover,
|
|
179
|
+
previewWidth: tableWidth,
|
|
180
|
+
previewHeight: previewHeight,
|
|
181
|
+
appearance: appearance,
|
|
182
|
+
hoveredCell: hoveredCell,
|
|
183
|
+
onClick: handleClick,
|
|
184
|
+
onMouseOver: handleMouseOver,
|
|
185
|
+
onMouseOut: handleMouseOut,
|
|
186
|
+
toggleDragMenu: toggleDragMenuHandler,
|
|
187
|
+
editorView: editorView,
|
|
188
|
+
api: api
|
|
189
|
+
}) : /*#__PURE__*/_react.default.createElement(_DragHandle.DragHandle, {
|
|
171
190
|
isDragMenuTarget: !isHover,
|
|
172
191
|
direction: "row",
|
|
173
192
|
tableLocalId: currentNodeLocalId,
|
|
@@ -271,4 +290,38 @@ var DragControlsComponent = function DragControlsComponent(_ref) {
|
|
|
271
290
|
}), rowHandles())
|
|
272
291
|
);
|
|
273
292
|
};
|
|
274
|
-
var
|
|
293
|
+
var DragControlsWithSelection = exports.DragControlsWithSelection = function DragControlsWithSelection(_ref5) {
|
|
294
|
+
var editorView = _ref5.editorView,
|
|
295
|
+
tableRef = _ref5.tableRef,
|
|
296
|
+
tableNode = _ref5.tableNode,
|
|
297
|
+
tableWidth = _ref5.tableWidth,
|
|
298
|
+
tableActive = _ref5.tableActive,
|
|
299
|
+
hoveredCell = _ref5.hoveredCell,
|
|
300
|
+
isInDanger = _ref5.isInDanger,
|
|
301
|
+
isTableHovered = _ref5.isTableHovered,
|
|
302
|
+
isResizing = _ref5.isResizing,
|
|
303
|
+
hoverRows = _ref5.hoverRows,
|
|
304
|
+
selectRow = _ref5.selectRow,
|
|
305
|
+
selectRows = _ref5.selectRows,
|
|
306
|
+
updateCellHoverLocation = _ref5.updateCellHoverLocation,
|
|
307
|
+
api = _ref5.api;
|
|
308
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['selection']),
|
|
309
|
+
selectionState = _useSharedPluginState.selectionState;
|
|
310
|
+
return /*#__PURE__*/_react.default.createElement(DragControls, {
|
|
311
|
+
editorView: editorView,
|
|
312
|
+
tableRef: tableRef,
|
|
313
|
+
tableNode: tableNode,
|
|
314
|
+
tableWidth: tableWidth,
|
|
315
|
+
tableActive: tableActive,
|
|
316
|
+
hoveredCell: hoveredCell,
|
|
317
|
+
isInDanger: isInDanger,
|
|
318
|
+
isTableHovered: isTableHovered,
|
|
319
|
+
isResizing: isResizing,
|
|
320
|
+
hoverRows: hoverRows,
|
|
321
|
+
selectRow: selectRow,
|
|
322
|
+
selectRows: selectRows,
|
|
323
|
+
updateCellHoverLocation: updateCellHoverLocation,
|
|
324
|
+
api: api,
|
|
325
|
+
selection: selectionState === null || selectionState === void 0 ? void 0 : selectionState.selection
|
|
326
|
+
});
|
|
327
|
+
};
|
|
@@ -10,6 +10,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _browser = require("@atlaskit/editor-common/browser");
|
|
11
11
|
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
12
12
|
var _utils = require("@atlaskit/editor-tables/utils");
|
|
13
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
13
14
|
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
14
15
|
var _commands = require("../../pm-plugins/commands");
|
|
15
16
|
var _nodes = require("../../pm-plugins/utils/nodes");
|
|
@@ -22,6 +23,7 @@ var _ClassicControls = require("./RowControls/ClassicControls");
|
|
|
22
23
|
var _DragControls = require("./RowControls/DragControls");
|
|
23
24
|
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); }
|
|
24
25
|
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 && {}.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; }
|
|
26
|
+
// Row controls
|
|
25
27
|
var TableFloatingControls = exports.TableFloatingControls = function TableFloatingControls(_ref) {
|
|
26
28
|
var _findTable;
|
|
27
29
|
var editorView = _ref.editorView,
|
|
@@ -116,18 +118,36 @@ var TableFloatingControls = exports.TableFloatingControls = function TableFloati
|
|
|
116
118
|
updateCellHoverLocation: updateCellHoverLocation,
|
|
117
119
|
stickyTop: stickyTop,
|
|
118
120
|
isDragAndDropEnabled: isDragAndDropEnabled
|
|
119
|
-
}) : null, tableActive && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isDragAndDropEnabled ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null,
|
|
121
|
+
}) : null, tableActive && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isDragAndDropEnabled ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg') ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, shouldShowCornerControls && /*#__PURE__*/_react.default.createElement(_DragCornerControls.DragCornerControlsWithSelection, {
|
|
120
122
|
editorView: editorView,
|
|
121
123
|
tableRef: tableRef,
|
|
122
124
|
isInDanger: isInDanger,
|
|
123
125
|
isResizing: isResizing,
|
|
124
126
|
api: api
|
|
125
|
-
})
|
|
127
|
+
}), /*#__PURE__*/_react.default.createElement(_DragControls.DragControlsWithSelection, {
|
|
128
|
+
tableRef: tableRef,
|
|
129
|
+
tableNode: tableNode,
|
|
130
|
+
hoveredCell: hoveredCell,
|
|
131
|
+
isTableHovered: isTableHovered,
|
|
132
|
+
editorView: editorView,
|
|
133
|
+
tableActive: tableActive,
|
|
134
|
+
isInDanger: isInDanger,
|
|
135
|
+
isResizing: isResizing
|
|
136
|
+
// Ignored via go/ees005
|
|
137
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
138
|
+
,
|
|
139
|
+
tableWidth: tableWrapperWidth,
|
|
140
|
+
hoverRows: _hoverRows,
|
|
141
|
+
selectRow: _selectRow,
|
|
142
|
+
selectRows: _selectRows,
|
|
143
|
+
updateCellHoverLocation: updateCellHoverLocation,
|
|
144
|
+
api: api
|
|
145
|
+
})) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, shouldShowCornerControls && /*#__PURE__*/_react.default.createElement(_DragCornerControls.DragCornerControls, {
|
|
126
146
|
editorView: editorView,
|
|
127
147
|
tableRef: tableRef,
|
|
128
148
|
isInDanger: isInDanger,
|
|
129
149
|
isResizing: isResizing
|
|
130
|
-
})
|
|
150
|
+
}), /*#__PURE__*/_react.default.createElement(_DragControls.DragControls, {
|
|
131
151
|
tableRef: tableRef,
|
|
132
152
|
tableNode: tableNode,
|
|
133
153
|
hoveredCell: hoveredCell,
|
|
@@ -144,7 +164,7 @@ var TableFloatingControls = exports.TableFloatingControls = function TableFloati
|
|
|
144
164
|
selectRow: _selectRow,
|
|
145
165
|
selectRows: _selectRows,
|
|
146
166
|
updateCellHoverLocation: updateCellHoverLocation
|
|
147
|
-
})) : (0,
|
|
167
|
+
}))) : (0, _platformFeatureFlags.fg)('platform_editor_table_use_shared_state_hook_fg') ? /*#__PURE__*/_react.default.createElement(_FloatingControlsWithSelection.FloatingControlsWithSelection, {
|
|
148
168
|
editorView: editorView,
|
|
149
169
|
tableRef: tableRef,
|
|
150
170
|
isInDanger: isInDanger,
|