@atlaskit/editor-plugin-table 24.0.2 → 24.0.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 +18 -0
- package/dist/cjs/nodeviews/TableComponent.js +1 -4
- package/dist/cjs/pm-plugins/main.js +3 -3
- package/dist/cjs/pm-plugins/utils/tableMode/apply-measured-width-to-all-tables.js +13 -2
- package/dist/cjs/tablePlugin.js +3 -2
- package/dist/es2019/nodeviews/TableComponent.js +1 -4
- package/dist/es2019/pm-plugins/main.js +3 -3
- package/dist/es2019/pm-plugins/utils/tableMode/apply-measured-width-to-all-tables.js +14 -3
- package/dist/es2019/tablePlugin.js +3 -2
- package/dist/esm/nodeviews/TableComponent.js +1 -4
- package/dist/esm/pm-plugins/main.js +3 -3
- package/dist/esm/pm-plugins/utils/tableMode/apply-measured-width-to-all-tables.js +14 -3
- package/dist/esm/tablePlugin.js +3 -2
- package/dist/types/pm-plugins/main.d.ts +1 -1
- package/dist/types/tablePluginType.d.ts +1 -0
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-table
|
|
2
2
|
|
|
3
|
+
## 24.0.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
|
|
9
|
+
## 24.0.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`bafa7b1c23370`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/bafa7b1c23370) -
|
|
14
|
+
Clean up experiment `platform_editor_fix_editor_unhandled_type_errors`
|
|
15
|
+
- [`1e2c964dbe54e`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/1e2c964dbe54e) -
|
|
16
|
+
Clean up feature gate `platform_editor_update_table_ref_fix`
|
|
17
|
+
- [`137ce6a6d525e`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/137ce6a6d525e) -
|
|
18
|
+
Prevent automatic table fit-to-content conversion from rewriting resized tables
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
|
|
3
21
|
## 24.0.2
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -103,9 +103,6 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
103
103
|
if (tableElement !== _this.table) {
|
|
104
104
|
_this.table = tableElement;
|
|
105
105
|
_this.observeTable(_this.table);
|
|
106
|
-
if (_this.table && (!(0, _expValEquals.expValEquals)('platform_editor_table_ref_optimisation', 'isEnabled', true) || _this.props.tableActive) && _this.props.view && !(0, _expValEquals.expValEquals)('platform_editor_fix_editor_unhandled_type_errors', 'isEnabled', true) && ((0, _expValEquals.expValEquals)('platform_editor_table_update_table_ref', 'isEnabled', true) || (0, _platformFeatureFlags.fg)('platform_editor_enable_table_update_ref_atlas'))) {
|
|
107
|
-
(0, _commands.setTableRef)(_this.table)(_this.props.view.state, _this.props.view.dispatch);
|
|
108
|
-
}
|
|
109
106
|
}
|
|
110
107
|
});
|
|
111
108
|
(0, _defineProperty2.default)(_this, "onStickyState", function (state) {
|
|
@@ -807,7 +804,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
807
804
|
}, {
|
|
808
805
|
key: "dispatchTableRefUpdate",
|
|
809
806
|
value: function dispatchTableRefUpdate() {
|
|
810
|
-
if (this.table && this.table !== this.lastSetTableRef && (!(0, _expValEquals.expValEquals)('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view && (
|
|
807
|
+
if (this.table && this.table !== this.lastSetTableRef && (!(0, _expValEquals.expValEquals)('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view && ((0, _expValEquals.expValEquals)('platform_editor_table_update_table_ref', 'isEnabled', true) || (0, _platformFeatureFlags.fg)('platform_editor_enable_table_update_ref_atlas'))) {
|
|
811
808
|
this.lastSetTableRef = this.table;
|
|
812
809
|
(0, _commands.setTableRef)(this.table)(this.props.view.state, this.props.view.dispatch);
|
|
813
810
|
}
|
|
@@ -37,7 +37,7 @@ var _applyMeasuredWidthToAllTables = require("./utils/tableMode/apply-measured-w
|
|
|
37
37
|
var _isContentModeSupported = require("./utils/tableMode/is-content-mode-supported");
|
|
38
38
|
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; }
|
|
39
39
|
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; }
|
|
40
|
-
var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption) {
|
|
40
|
+
var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption, __livePage) {
|
|
41
41
|
var _accessibilityUtils;
|
|
42
42
|
var state = (0, _pluginFactory.createPluginState)(dispatch, _objectSpread(_objectSpread(_objectSpread({
|
|
43
43
|
pluginConfig: pluginConfig,
|
|
@@ -143,7 +143,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
|
|
|
143
143
|
editorViewRef = editorView;
|
|
144
144
|
var contentModeSizeTableId = null;
|
|
145
145
|
var focusListenerBinding = null;
|
|
146
|
-
if ((pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) !== 'view' && (0, _isContentModeSupported.isContentModeSupported)({
|
|
146
|
+
if ((!(0, _platformFeatureFlags.fg)('platform_editor_table_auto_convert_fix') || !__livePage) && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) !== 'view' && (0, _isContentModeSupported.isContentModeSupported)({
|
|
147
147
|
allowColumnResizing: !!pluginConfig.allowColumnResizing,
|
|
148
148
|
allowTableResizing: !!pluginConfig.allowTableResizing,
|
|
149
149
|
isFullPageEditor: !isChromelessEditor && !isCommentEditor
|
|
@@ -176,7 +176,7 @@ var createPlugin = exports.createPlugin = function createPlugin(dispatchAnalytic
|
|
|
176
176
|
var tableRef;
|
|
177
177
|
var parent = (0, _utils2.findParentDomRefOfType)(state.schema.nodes.table, domAtPos)(selection);
|
|
178
178
|
var shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e2 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e2 === void 0 || (_pluginInjectionApi$e2 = _pluginInjectionApi$e2.sharedState.currentState()) === null || _pluginInjectionApi$e2 === void 0 ? void 0 : _pluginInjectionApi$e2.mode) !== 'view';
|
|
179
|
-
if ((0, _expValEquals.expValEquals)('platform_editor_table_update_table_ref', 'isEnabled', true)
|
|
179
|
+
if ((0, _expValEquals.expValEquals)('platform_editor_table_update_table_ref', 'isEnabled', true)) {
|
|
180
180
|
var _pluginInjectionApi$e3, _pluginInjectionApi$i;
|
|
181
181
|
shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e3 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e3 === void 0 || (_pluginInjectionApi$e3 = _pluginInjectionApi$e3.sharedState.currentState()) === null || _pluginInjectionApi$e3 === void 0 ? void 0 : _pluginInjectionApi$e3.mode) !== 'view' && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$i = pluginInjectionApi.interaction) === null || _pluginInjectionApi$i === void 0 || (_pluginInjectionApi$i = _pluginInjectionApi$i.sharedState.currentState()) === null || _pluginInjectionApi$i === void 0 ? void 0 : _pluginInjectionApi$i.interactionState) !== 'hasNotHadInteraction';
|
|
182
182
|
}
|
|
@@ -7,6 +7,7 @@ exports.applyMeasuredWidthToAllTables = void 0;
|
|
|
7
7
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
8
8
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
9
9
|
var _table = require("@atlaskit/editor-common/table");
|
|
10
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
11
|
var _contentMode = require("../../transforms/content-mode");
|
|
11
12
|
/**
|
|
12
13
|
* Iterates all top-level tables in the document, and for those in content mode,
|
|
@@ -24,8 +25,18 @@ var applyMeasuredWidthToAllTables = exports.applyMeasuredWidthToAllTables = func
|
|
|
24
25
|
|
|
25
26
|
// modify only top-level tables
|
|
26
27
|
doc.forEach(function (node, offset) {
|
|
27
|
-
if (
|
|
28
|
-
|
|
28
|
+
if ((0, _platformFeatureFlags.fg)('platform_editor_table_auto_convert_fix')) {
|
|
29
|
+
if (node.type !== table || !(0, _table.isTableInContentMode)({
|
|
30
|
+
tableNode: node,
|
|
31
|
+
isSupported: true,
|
|
32
|
+
isTableNested: false
|
|
33
|
+
})) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
if (node.type !== table || (0, _table.hasTableBeenResized)(node) && node.attrs.layout !== 'align-start') {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
29
40
|
}
|
|
30
41
|
var domNode = view.domAtPos(offset + 1).node;
|
|
31
42
|
var tableWrapper = domNode instanceof HTMLElement ? domNode.closest(".".concat(_styles.TableSharedCssClassName.TABLE_VIEW_CONTENT_WRAP)) : null;
|
package/dist/cjs/tablePlugin.js
CHANGED
|
@@ -306,8 +306,9 @@ var tablePlugin = function tablePlugin(_ref) {
|
|
|
306
306
|
getEditorFeatureFlags = _ref3.getEditorFeatureFlags,
|
|
307
307
|
isTableScalingEnabled = _ref3.isTableScalingEnabled,
|
|
308
308
|
isCommentEditor = _ref3.isCommentEditor,
|
|
309
|
-
isChromelessEditor = _ref3.isChromelessEditor
|
|
310
|
-
|
|
309
|
+
isChromelessEditor = _ref3.isChromelessEditor,
|
|
310
|
+
__livePage = _ref3.__livePage;
|
|
311
|
+
return (0, _main.createPlugin)(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, (0, _createPluginConfig.pluginConfig)(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, fullWidthEnabled, wasFullWidthEnabled, editorAnalyticsAPI, api, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, options === null || options === void 0 ? void 0 : options.allowFixedColumnWidthOption, __livePage);
|
|
311
312
|
}
|
|
312
313
|
}, {
|
|
313
314
|
name: 'tablePMColResizing',
|
|
@@ -82,9 +82,6 @@ class TableComponent extends React.Component {
|
|
|
82
82
|
if (tableElement !== this.table) {
|
|
83
83
|
this.table = tableElement;
|
|
84
84
|
this.observeTable(this.table);
|
|
85
|
-
if (this.table && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view && !expValEquals('platform_editor_fix_editor_unhandled_type_errors', 'isEnabled', true) && (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true) || fg('platform_editor_enable_table_update_ref_atlas'))) {
|
|
86
|
-
setTableRef(this.table)(this.props.view.state, this.props.view.dispatch);
|
|
87
|
-
}
|
|
88
85
|
}
|
|
89
86
|
});
|
|
90
87
|
_defineProperty(this, "onStickyState", state => {
|
|
@@ -768,7 +765,7 @@ class TableComponent extends React.Component {
|
|
|
768
765
|
this.dispatchTableRefUpdate();
|
|
769
766
|
}
|
|
770
767
|
dispatchTableRefUpdate() {
|
|
771
|
-
if (this.table && this.table !== this.lastSetTableRef && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view &&
|
|
768
|
+
if (this.table && this.table !== this.lastSetTableRef && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view && (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true) || fg('platform_editor_enable_table_update_ref_atlas'))) {
|
|
772
769
|
this.lastSetTableRef = this.table;
|
|
773
770
|
setTableRef(this.table)(this.props.view.state, this.props.view.dispatch);
|
|
774
771
|
}
|
|
@@ -27,7 +27,7 @@ import { findControlsHoverDecoration } from './utils/decoration';
|
|
|
27
27
|
import { transformSliceToCorrectEmptyTableCells, transformSliceToFixHardBreakProblemOnCopyFromCell, transformSliceToRemoveOpenTable, transformSliceToRemoveNestedTables, isHeaderRowRequired, transformSliceTableLayoutDefaultToCenter } from './utils/paste';
|
|
28
28
|
import { applyMeasuredWidthToAllTables } from './utils/tableMode/apply-measured-width-to-all-tables';
|
|
29
29
|
import { isContentModeSupported } from './utils/tableMode/is-content-mode-supported';
|
|
30
|
-
export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption) => {
|
|
30
|
+
export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption, __livePage) => {
|
|
31
31
|
var _accessibilityUtils;
|
|
32
32
|
const state = createPluginState(dispatch, {
|
|
33
33
|
pluginConfig,
|
|
@@ -128,7 +128,7 @@ export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI
|
|
|
128
128
|
editorViewRef = editorView;
|
|
129
129
|
let contentModeSizeTableId = null;
|
|
130
130
|
let focusListenerBinding = null;
|
|
131
|
-
if ((pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 ? void 0 : (_pluginInjectionApi$e2 = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e2 === void 0 ? void 0 : _pluginInjectionApi$e2.mode) !== 'view' && isContentModeSupported({
|
|
131
|
+
if ((!fg('platform_editor_table_auto_convert_fix') || !__livePage) && (pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 ? void 0 : (_pluginInjectionApi$e2 = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e2 === void 0 ? void 0 : _pluginInjectionApi$e2.mode) !== 'view' && isContentModeSupported({
|
|
132
132
|
allowColumnResizing: !!pluginConfig.allowColumnResizing,
|
|
133
133
|
allowTableResizing: !!pluginConfig.allowTableResizing,
|
|
134
134
|
isFullPageEditor: !isChromelessEditor && !isCommentEditor
|
|
@@ -165,7 +165,7 @@ export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI
|
|
|
165
165
|
let tableRef;
|
|
166
166
|
const parent = findParentDomRefOfType(state.schema.nodes.table, domAtPos)(selection);
|
|
167
167
|
let shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$e3 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e3 === void 0 ? void 0 : (_pluginInjectionApi$e4 = _pluginInjectionApi$e3.sharedState.currentState()) === null || _pluginInjectionApi$e4 === void 0 ? void 0 : _pluginInjectionApi$e4.mode) !== 'view';
|
|
168
|
-
if (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true)
|
|
168
|
+
if (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true)) {
|
|
169
169
|
var _pluginInjectionApi$e5, _pluginInjectionApi$e6, _pluginInjectionApi$i, _pluginInjectionApi$i2;
|
|
170
170
|
shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$e5 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e5 === void 0 ? void 0 : (_pluginInjectionApi$e6 = _pluginInjectionApi$e5.sharedState.currentState()) === null || _pluginInjectionApi$e6 === void 0 ? void 0 : _pluginInjectionApi$e6.mode) !== 'view' && (pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$i = pluginInjectionApi.interaction) === null || _pluginInjectionApi$i === void 0 ? void 0 : (_pluginInjectionApi$i2 = _pluginInjectionApi$i.sharedState.currentState()) === null || _pluginInjectionApi$i2 === void 0 ? void 0 : _pluginInjectionApi$i2.interactionState) !== 'hasNotHadInteraction';
|
|
171
171
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ACTION_SUBJECT, EVENT_TYPE, TABLE_ACTION } from '@atlaskit/editor-common/analytics';
|
|
2
2
|
import { TableSharedCssClassName } from '@atlaskit/editor-common/styles';
|
|
3
|
-
import { hasTableBeenResized } from '@atlaskit/editor-common/table';
|
|
3
|
+
import { hasTableBeenResized, isTableInContentMode } from '@atlaskit/editor-common/table';
|
|
4
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
4
5
|
import { applyTableMeasurement, getTableMeasurement } from '../../transforms/content-mode';
|
|
5
6
|
|
|
6
7
|
/**
|
|
@@ -24,8 +25,18 @@ export const applyMeasuredWidthToAllTables = (view, pluginInjectionApi) => {
|
|
|
24
25
|
|
|
25
26
|
// modify only top-level tables
|
|
26
27
|
doc.forEach((node, offset) => {
|
|
27
|
-
if (
|
|
28
|
-
|
|
28
|
+
if (fg('platform_editor_table_auto_convert_fix')) {
|
|
29
|
+
if (node.type !== table || !isTableInContentMode({
|
|
30
|
+
tableNode: node,
|
|
31
|
+
isSupported: true,
|
|
32
|
+
isTableNested: false
|
|
33
|
+
})) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
if (node.type !== table || hasTableBeenResized(node) && node.attrs.layout !== 'align-start') {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
29
40
|
}
|
|
30
41
|
const domNode = view.domAtPos(offset + 1).node;
|
|
31
42
|
const tableWrapper = domNode instanceof HTMLElement ? domNode.closest(`.${TableSharedCssClassName.TABLE_VIEW_CONTENT_WRAP}`) : null;
|
|
@@ -294,9 +294,10 @@ const tablePlugin = ({
|
|
|
294
294
|
getEditorFeatureFlags,
|
|
295
295
|
isTableScalingEnabled,
|
|
296
296
|
isCommentEditor,
|
|
297
|
-
isChromelessEditor
|
|
297
|
+
isChromelessEditor,
|
|
298
|
+
__livePage
|
|
298
299
|
} = options || {};
|
|
299
|
-
return createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, fullWidthEnabled, wasFullWidthEnabled, editorAnalyticsAPI, api, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, options === null || options === void 0 ? void 0 : options.allowFixedColumnWidthOption);
|
|
300
|
+
return createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, fullWidthEnabled, wasFullWidthEnabled, editorAnalyticsAPI, api, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, options === null || options === void 0 ? void 0 : options.allowFixedColumnWidthOption, __livePage);
|
|
300
301
|
}
|
|
301
302
|
}, {
|
|
302
303
|
name: 'tablePMColResizing',
|
|
@@ -97,9 +97,6 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
97
97
|
if (tableElement !== _this.table) {
|
|
98
98
|
_this.table = tableElement;
|
|
99
99
|
_this.observeTable(_this.table);
|
|
100
|
-
if (_this.table && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || _this.props.tableActive) && _this.props.view && !expValEquals('platform_editor_fix_editor_unhandled_type_errors', 'isEnabled', true) && (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true) || fg('platform_editor_enable_table_update_ref_atlas'))) {
|
|
101
|
-
setTableRef(_this.table)(_this.props.view.state, _this.props.view.dispatch);
|
|
102
|
-
}
|
|
103
100
|
}
|
|
104
101
|
});
|
|
105
102
|
_defineProperty(_this, "onStickyState", function (state) {
|
|
@@ -801,7 +798,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
801
798
|
}, {
|
|
802
799
|
key: "dispatchTableRefUpdate",
|
|
803
800
|
value: function dispatchTableRefUpdate() {
|
|
804
|
-
if (this.table && this.table !== this.lastSetTableRef && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view &&
|
|
801
|
+
if (this.table && this.table !== this.lastSetTableRef && (!expValEquals('platform_editor_table_ref_optimisation', 'isEnabled', true) || this.props.tableActive) && this.props.view && (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true) || fg('platform_editor_enable_table_update_ref_atlas'))) {
|
|
805
802
|
this.lastSetTableRef = this.table;
|
|
806
803
|
setTableRef(this.table)(this.props.view.state, this.props.view.dispatch);
|
|
807
804
|
}
|
|
@@ -30,7 +30,7 @@ import { findControlsHoverDecoration } from './utils/decoration';
|
|
|
30
30
|
import { transformSliceToCorrectEmptyTableCells, transformSliceToFixHardBreakProblemOnCopyFromCell, transformSliceToRemoveOpenTable, transformSliceToRemoveNestedTables, isHeaderRowRequired, transformSliceTableLayoutDefaultToCenter } from './utils/paste';
|
|
31
31
|
import { applyMeasuredWidthToAllTables } from './utils/tableMode/apply-measured-width-to-all-tables';
|
|
32
32
|
import { isContentModeSupported } from './utils/tableMode/is-content-mode-supported';
|
|
33
|
-
export var createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption) {
|
|
33
|
+
export var createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig, getEditorContainerWidth, getEditorFeatureFlags, getIntl, fullWidthModeEnabled, previousFullWidthModeEnabled, editorAnalyticsAPI, pluginInjectionApi, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, allowFixedColumnWidthOption, __livePage) {
|
|
34
34
|
var _accessibilityUtils;
|
|
35
35
|
var state = createPluginState(dispatch, _objectSpread(_objectSpread(_objectSpread({
|
|
36
36
|
pluginConfig: pluginConfig,
|
|
@@ -136,7 +136,7 @@ export var createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch
|
|
|
136
136
|
editorViewRef = editorView;
|
|
137
137
|
var contentModeSizeTableId = null;
|
|
138
138
|
var focusListenerBinding = null;
|
|
139
|
-
if ((pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) !== 'view' && isContentModeSupported({
|
|
139
|
+
if ((!fg('platform_editor_table_auto_convert_fix') || !__livePage) && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) !== 'view' && isContentModeSupported({
|
|
140
140
|
allowColumnResizing: !!pluginConfig.allowColumnResizing,
|
|
141
141
|
allowTableResizing: !!pluginConfig.allowTableResizing,
|
|
142
142
|
isFullPageEditor: !isChromelessEditor && !isCommentEditor
|
|
@@ -169,7 +169,7 @@ export var createPlugin = function createPlugin(dispatchAnalyticsEvent, dispatch
|
|
|
169
169
|
var tableRef;
|
|
170
170
|
var parent = findParentDomRefOfType(state.schema.nodes.table, domAtPos)(selection);
|
|
171
171
|
var shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e2 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e2 === void 0 || (_pluginInjectionApi$e2 = _pluginInjectionApi$e2.sharedState.currentState()) === null || _pluginInjectionApi$e2 === void 0 ? void 0 : _pluginInjectionApi$e2.mode) !== 'view';
|
|
172
|
-
if (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true)
|
|
172
|
+
if (expValEquals('platform_editor_table_update_table_ref', 'isEnabled', true)) {
|
|
173
173
|
var _pluginInjectionApi$e3, _pluginInjectionApi$i;
|
|
174
174
|
shouldSetTableRef = parent && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e3 = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e3 === void 0 || (_pluginInjectionApi$e3 = _pluginInjectionApi$e3.sharedState.currentState()) === null || _pluginInjectionApi$e3 === void 0 ? void 0 : _pluginInjectionApi$e3.mode) !== 'view' && (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$i = pluginInjectionApi.interaction) === null || _pluginInjectionApi$i === void 0 || (_pluginInjectionApi$i = _pluginInjectionApi$i.sharedState.currentState()) === null || _pluginInjectionApi$i === void 0 ? void 0 : _pluginInjectionApi$i.interactionState) !== 'hasNotHadInteraction';
|
|
175
175
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ACTION_SUBJECT, EVENT_TYPE, TABLE_ACTION } from '@atlaskit/editor-common/analytics';
|
|
2
2
|
import { TableSharedCssClassName } from '@atlaskit/editor-common/styles';
|
|
3
|
-
import { hasTableBeenResized } from '@atlaskit/editor-common/table';
|
|
3
|
+
import { hasTableBeenResized, isTableInContentMode } from '@atlaskit/editor-common/table';
|
|
4
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
4
5
|
import { applyTableMeasurement, getTableMeasurement } from '../../transforms/content-mode';
|
|
5
6
|
|
|
6
7
|
/**
|
|
@@ -19,8 +20,18 @@ export var applyMeasuredWidthToAllTables = function applyMeasuredWidthToAllTable
|
|
|
19
20
|
|
|
20
21
|
// modify only top-level tables
|
|
21
22
|
doc.forEach(function (node, offset) {
|
|
22
|
-
if (
|
|
23
|
-
|
|
23
|
+
if (fg('platform_editor_table_auto_convert_fix')) {
|
|
24
|
+
if (node.type !== table || !isTableInContentMode({
|
|
25
|
+
tableNode: node,
|
|
26
|
+
isSupported: true,
|
|
27
|
+
isTableNested: false
|
|
28
|
+
})) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
} else {
|
|
32
|
+
if (node.type !== table || hasTableBeenResized(node) && node.attrs.layout !== 'align-start') {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
24
35
|
}
|
|
25
36
|
var domNode = view.domAtPos(offset + 1).node;
|
|
26
37
|
var tableWrapper = domNode instanceof HTMLElement ? domNode.closest(".".concat(TableSharedCssClassName.TABLE_VIEW_CONTENT_WRAP)) : null;
|
package/dist/esm/tablePlugin.js
CHANGED
|
@@ -297,8 +297,9 @@ var tablePlugin = function tablePlugin(_ref) {
|
|
|
297
297
|
getEditorFeatureFlags = _ref3.getEditorFeatureFlags,
|
|
298
298
|
isTableScalingEnabled = _ref3.isTableScalingEnabled,
|
|
299
299
|
isCommentEditor = _ref3.isCommentEditor,
|
|
300
|
-
isChromelessEditor = _ref3.isChromelessEditor
|
|
301
|
-
|
|
300
|
+
isChromelessEditor = _ref3.isChromelessEditor,
|
|
301
|
+
__livePage = _ref3.__livePage;
|
|
302
|
+
return createPlugin(dispatchAnalyticsEvent, dispatch, portalProviderAPI, nodeViewPortalProviderAPI, eventDispatcher, pluginConfig(tableOptions), defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, getIntl, fullWidthEnabled, wasFullWidthEnabled, editorAnalyticsAPI, api, isTableScalingEnabled, shouldUseIncreasedScalingPercent, isCommentEditor, isChromelessEditor, options === null || options === void 0 ? void 0 : options.allowFixedColumnWidthOption, __livePage);
|
|
302
303
|
}
|
|
303
304
|
}, {
|
|
304
305
|
name: 'tablePMColResizing',
|
|
@@ -5,4 +5,4 @@ import type { PortalProviderAPI } from '@atlaskit/editor-common/portal';
|
|
|
5
5
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
6
6
|
import type { GetEditorContainerWidth, GetEditorFeatureFlags } from '@atlaskit/editor-common/types';
|
|
7
7
|
import type { PluginConfig, PluginInjectionAPI, TablePluginState } from '../types';
|
|
8
|
-
export declare const createPlugin: (dispatchAnalyticsEvent: DispatchAnalyticsEvent, dispatch: Dispatch, portalProviderAPI: PortalProviderAPI, nodeViewPortalProviderAPI: PortalProviderAPI, eventDispatcher: EventDispatcher, pluginConfig: PluginConfig, getEditorContainerWidth: GetEditorContainerWidth, getEditorFeatureFlags: GetEditorFeatureFlags, getIntl: () => IntlShape, fullWidthModeEnabled?: boolean, previousFullWidthModeEnabled?: boolean, editorAnalyticsAPI?: EditorAnalyticsAPI, pluginInjectionApi?: PluginInjectionAPI, isTableScalingEnabled?: boolean, shouldUseIncreasedScalingPercent?: boolean, isCommentEditor?: boolean, isChromelessEditor?: boolean, allowFixedColumnWidthOption?: boolean) => SafePlugin<TablePluginState>;
|
|
8
|
+
export declare const createPlugin: (dispatchAnalyticsEvent: DispatchAnalyticsEvent, dispatch: Dispatch, portalProviderAPI: PortalProviderAPI, nodeViewPortalProviderAPI: PortalProviderAPI, eventDispatcher: EventDispatcher, pluginConfig: PluginConfig, getEditorContainerWidth: GetEditorContainerWidth, getEditorFeatureFlags: GetEditorFeatureFlags, getIntl: () => IntlShape, fullWidthModeEnabled?: boolean, previousFullWidthModeEnabled?: boolean, editorAnalyticsAPI?: EditorAnalyticsAPI, pluginInjectionApi?: PluginInjectionAPI, isTableScalingEnabled?: boolean, shouldUseIncreasedScalingPercent?: boolean, isCommentEditor?: boolean, isChromelessEditor?: boolean, allowFixedColumnWidthOption?: boolean, __livePage?: boolean) => SafePlugin<TablePluginState>;
|
|
@@ -17,6 +17,7 @@ import type { UserIntentPlugin } from '@atlaskit/editor-plugin-user-intent';
|
|
|
17
17
|
import type { WidthPlugin } from '@atlaskit/editor-plugin-width';
|
|
18
18
|
import type { PluginConfig, TableSharedState } from './types';
|
|
19
19
|
export interface TablePluginOptions {
|
|
20
|
+
__livePage?: boolean;
|
|
20
21
|
allowContextualMenu?: boolean;
|
|
21
22
|
/**
|
|
22
23
|
* Enables the fixed column width option.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-table",
|
|
3
|
-
"version": "24.0.
|
|
3
|
+
"version": "24.0.4",
|
|
4
4
|
"description": "Table plugin for the @atlaskit/editor",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -20,16 +20,16 @@
|
|
|
20
20
|
"singleton": true
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@atlaskit/adf-schema": "^55.
|
|
23
|
+
"@atlaskit/adf-schema": "^55.2.0",
|
|
24
24
|
"@atlaskit/button": "^24.0.0",
|
|
25
25
|
"@atlaskit/custom-steps": "^1.0.0",
|
|
26
|
-
"@atlaskit/editor-palette": "^3.
|
|
26
|
+
"@atlaskit/editor-palette": "^3.1.0",
|
|
27
27
|
"@atlaskit/editor-plugin-accessibility-utils": "^12.0.0",
|
|
28
28
|
"@atlaskit/editor-plugin-analytics": "^12.0.0",
|
|
29
29
|
"@atlaskit/editor-plugin-batch-attribute-updates": "^12.0.0",
|
|
30
30
|
"@atlaskit/editor-plugin-content-insertion": "^12.0.0",
|
|
31
31
|
"@atlaskit/editor-plugin-editor-viewmode": "^14.0.0",
|
|
32
|
-
"@atlaskit/editor-plugin-extension": "15.0.
|
|
32
|
+
"@atlaskit/editor-plugin-extension": "15.0.4",
|
|
33
33
|
"@atlaskit/editor-plugin-guideline": "^12.0.0",
|
|
34
34
|
"@atlaskit/editor-plugin-interaction": "^21.0.0",
|
|
35
35
|
"@atlaskit/editor-plugin-limited-mode": "^9.0.0",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^3.0.0",
|
|
53
53
|
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^2.0.0",
|
|
54
54
|
"@atlaskit/primitives": "^20.0.0",
|
|
55
|
-
"@atlaskit/tmp-editor-statsig": "^
|
|
55
|
+
"@atlaskit/tmp-editor-statsig": "^108.0.0",
|
|
56
56
|
"@atlaskit/toggle": "^17.0.0",
|
|
57
57
|
"@atlaskit/tokens": "^14.0.0",
|
|
58
58
|
"@atlaskit/tooltip": "^23.0.0",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"uuid": "^3.1.0"
|
|
68
68
|
},
|
|
69
69
|
"peerDependencies": {
|
|
70
|
-
"@atlaskit/editor-common": "^116.
|
|
70
|
+
"@atlaskit/editor-common": "^116.3.0",
|
|
71
71
|
"react": "^18.2.0",
|
|
72
72
|
"react-dom": "^18.2.0",
|
|
73
73
|
"react-intl": "^5.25.1 || ^6.0.0 || ^7.0.0"
|
|
@@ -118,6 +118,9 @@
|
|
|
118
118
|
"platform_editor_table_fit_to_content_smart_adjust": {
|
|
119
119
|
"type": "boolean"
|
|
120
120
|
},
|
|
121
|
+
"platform_editor_table_auto_convert_fix": {
|
|
122
|
+
"type": "boolean"
|
|
123
|
+
},
|
|
121
124
|
"platform_editor_table_height_analytics": {
|
|
122
125
|
"type": "boolean"
|
|
123
126
|
},
|
|
@@ -154,9 +157,6 @@
|
|
|
154
157
|
"platform_editor_enable_table_update_ref_atlas": {
|
|
155
158
|
"type": "boolean"
|
|
156
159
|
},
|
|
157
|
-
"platform_editor_update_table_ref_fix": {
|
|
158
|
-
"type": "boolean"
|
|
159
|
-
},
|
|
160
160
|
"platform_editor_max_width_default_width": {
|
|
161
161
|
"type": "boolean"
|
|
162
162
|
},
|