@atlaskit/editor-plugin-breakout 2.1.6 → 2.1.8
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 +19 -0
- package/dist/cjs/breakoutPlugin.js +79 -17
- package/dist/cjs/ui/LayoutButton.js +7 -3
- package/dist/es2019/breakoutPlugin.js +62 -9
- package/dist/es2019/ui/LayoutButton.js +7 -3
- package/dist/esm/breakoutPlugin.js +76 -17
- package/dist/esm/ui/LayoutButton.js +7 -3
- package/dist/types/ui/LayoutButton.d.ts +3 -0
- package/dist/types-ts4.5/ui/LayoutButton.d.ts +3 -0
- package/package.json +8 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-breakout
|
|
2
2
|
|
|
3
|
+
## 2.1.8
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#144898](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/144898)
|
|
8
|
+
[`b9a10d6716ef4`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b9a10d6716ef4) -
|
|
9
|
+
Enable useSharedPluginStateSelector in block-controls, block-type and breakout plugins
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
12
|
+
## 2.1.7
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- [#137211](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/137211)
|
|
17
|
+
[`d00cb55d6fa4b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/d00cb55d6fa4b) -
|
|
18
|
+
[ux] ED27118 Increase pull page editor gutter to allow more space for new floating insert button -
|
|
19
|
+
https://hello.atlassian.net/wiki/spaces/EDITOR/pages/5120694962/Editor+DACI+New+insert+button+and+full-width+screens+2.0
|
|
20
|
+
- Updated dependencies
|
|
21
|
+
|
|
3
22
|
## 2.1.6
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
|
@@ -1,23 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.breakoutPlugin = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
8
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
12
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _react =
|
|
13
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
14
|
var _adfSchema = require("@atlaskit/adf-schema");
|
|
13
15
|
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
14
16
|
var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
|
|
15
17
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
18
|
+
var _usePluginStateEffect = require("@atlaskit/editor-common/use-plugin-state-effect");
|
|
19
|
+
var _useSharedPluginStateSelector = require("@atlaskit/editor-common/use-shared-plugin-state-selector");
|
|
16
20
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
17
21
|
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
18
22
|
var _pluginKey = require("./pm-plugins/plugin-key");
|
|
19
23
|
var _findBreakoutNode = require("./pm-plugins/utils/find-breakout-node");
|
|
24
|
+
var _getBreakoutMode = require("./pm-plugins/utils/get-breakout-mode");
|
|
20
25
|
var _LayoutButton = _interopRequireDefault(require("./ui/LayoutButton"));
|
|
26
|
+
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); }
|
|
27
|
+
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; }
|
|
21
28
|
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; }
|
|
22
29
|
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; }
|
|
23
30
|
var BreakoutView = /*#__PURE__*/(0, _createClass2.default)(function BreakoutView(
|
|
@@ -108,37 +115,92 @@ function createPlugin(pluginInjectionApi, _ref) {
|
|
|
108
115
|
});
|
|
109
116
|
}
|
|
110
117
|
var LayoutButtonWrapper = function LayoutButtonWrapper(_ref2) {
|
|
111
|
-
var _breakoutState$
|
|
118
|
+
var _breakoutState$breako2, _breakoutState$breako3;
|
|
112
119
|
var api = _ref2.api,
|
|
113
120
|
editorView = _ref2.editorView,
|
|
114
121
|
boundariesElement = _ref2.boundariesElement,
|
|
115
122
|
scrollableElement = _ref2.scrollableElement,
|
|
116
123
|
mountPoint = _ref2.mountPoint;
|
|
117
124
|
// Re-render with `width` (but don't use state) due to https://bitbucket.org/atlassian/%7Bc8e2f021-38d2-46d0-9b7a-b3f7b428f724%7D/pull-requests/24272
|
|
118
|
-
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls']
|
|
125
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls'], {
|
|
126
|
+
disabled: (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true)
|
|
127
|
+
}),
|
|
119
128
|
breakoutState = _useSharedPluginState.breakoutState,
|
|
120
129
|
editorViewModeState = _useSharedPluginState.editorViewModeState,
|
|
121
130
|
editorDisabledState = _useSharedPluginState.editorDisabledState,
|
|
122
131
|
blockControlsState = _useSharedPluginState.blockControlsState;
|
|
123
|
-
|
|
132
|
+
|
|
133
|
+
// isDragging
|
|
134
|
+
var isDraggingSelector = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'blockControls.isDragging', {
|
|
135
|
+
disabled: (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', false)
|
|
136
|
+
});
|
|
137
|
+
var isDragging = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? isDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isDragging;
|
|
138
|
+
|
|
139
|
+
// isPMDragging
|
|
140
|
+
var isPMDraggingSelector = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'blockControls.isPMDragging', {
|
|
141
|
+
disabled: (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', false)
|
|
142
|
+
});
|
|
143
|
+
var isPMDragging = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? isPMDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isPMDragging;
|
|
144
|
+
|
|
145
|
+
// mode
|
|
146
|
+
var modeSelector = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'editorViewMode.mode', {
|
|
147
|
+
disabled: (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', false)
|
|
148
|
+
});
|
|
149
|
+
var mode = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? modeSelector : editorViewModeState === null || editorViewModeState === void 0 ? void 0 : editorViewModeState.mode;
|
|
150
|
+
|
|
151
|
+
// editorDisabled
|
|
152
|
+
var editorDisabledSelector = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'editorDisabled.editorDisabled', {
|
|
153
|
+
disabled: (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', false)
|
|
154
|
+
});
|
|
155
|
+
var editorDisabled = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? editorDisabledSelector : editorDisabledState === null || editorDisabledState === void 0 ? void 0 : editorDisabledState.editorDisabled;
|
|
156
|
+
var _useState = (0, _react.useState)(function () {
|
|
157
|
+
var breakoutNode = (0, _findBreakoutNode.findSupportedNodeForBreakout)(editorView.state.selection);
|
|
158
|
+
return breakoutNode !== undefined;
|
|
159
|
+
}),
|
|
160
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
161
|
+
isBreakoutNodePresent = _useState2[0],
|
|
162
|
+
setIsBreakoutNodePresent = _useState2[1];
|
|
163
|
+
var _useState3 = (0, _react.useState)((0, _getBreakoutMode.getBreakoutMode)(editorView.state)),
|
|
164
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
165
|
+
breakoutMode = _useState4[0],
|
|
166
|
+
setBreakoutMode = _useState4[1];
|
|
167
|
+
(0, _usePluginStateEffect.usePluginStateEffect)(api, ['breakout'], function (_ref3) {
|
|
168
|
+
var _breakoutState$breako;
|
|
169
|
+
var breakoutState = _ref3.breakoutState;
|
|
170
|
+
if ((0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', false)) {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
var breakoutNode = (_breakoutState$breako = breakoutState === null || breakoutState === void 0 ? void 0 : breakoutState.breakoutNode) !== null && _breakoutState$breako !== void 0 ? _breakoutState$breako : null;
|
|
174
|
+
var isBreakoutNodeNull = breakoutNode !== null;
|
|
175
|
+
if (isBreakoutNodePresent !== isBreakoutNodeNull) {
|
|
176
|
+
setIsBreakoutNodePresent(isBreakoutNodeNull);
|
|
177
|
+
}
|
|
178
|
+
var nextBreakoutMode = (0, _getBreakoutMode.getBreakoutMode)(editorView.state);
|
|
179
|
+
if (nextBreakoutMode !== breakoutMode) {
|
|
180
|
+
setBreakoutMode(nextBreakoutMode);
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
if (isDragging || isPMDragging) {
|
|
124
184
|
if ((0, _experiments.editorExperiment)('advanced_layouts', true)) {
|
|
125
185
|
return null;
|
|
126
186
|
}
|
|
127
187
|
}
|
|
128
|
-
var isViewMode =
|
|
129
|
-
var isEditMode =
|
|
130
|
-
return !isViewMode &&
|
|
188
|
+
var isViewMode = mode === 'view';
|
|
189
|
+
var isEditMode = mode === 'edit';
|
|
190
|
+
return !isViewMode && editorDisabled === false ? /*#__PURE__*/_react.default.createElement(_LayoutButton.default, {
|
|
131
191
|
editorView: editorView,
|
|
132
192
|
mountPoint: mountPoint,
|
|
133
193
|
boundariesElement: boundariesElement,
|
|
134
194
|
scrollableElement: scrollableElement,
|
|
135
|
-
node: (_breakoutState$
|
|
136
|
-
isLivePage: isEditMode
|
|
195
|
+
node: (_breakoutState$breako2 = breakoutState === null || breakoutState === void 0 || (_breakoutState$breako3 = breakoutState.breakoutNode) === null || _breakoutState$breako3 === void 0 ? void 0 : _breakoutState$breako3.node) !== null && _breakoutState$breako2 !== void 0 ? _breakoutState$breako2 : null,
|
|
196
|
+
isLivePage: isEditMode,
|
|
197
|
+
breakoutMode: breakoutMode,
|
|
198
|
+
isBreakoutNodePresent: isBreakoutNodePresent
|
|
137
199
|
}) : null;
|
|
138
200
|
};
|
|
139
|
-
var breakoutPlugin = exports.breakoutPlugin = function breakoutPlugin(
|
|
140
|
-
var options =
|
|
141
|
-
api =
|
|
201
|
+
var breakoutPlugin = exports.breakoutPlugin = function breakoutPlugin(_ref4) {
|
|
202
|
+
var options = _ref4.config,
|
|
203
|
+
api = _ref4.api;
|
|
142
204
|
return {
|
|
143
205
|
name: 'breakout',
|
|
144
206
|
pmPlugins: function pmPlugins() {
|
|
@@ -169,11 +231,11 @@ var breakoutPlugin = exports.breakoutPlugin = function breakoutPlugin(_ref3) {
|
|
|
169
231
|
}
|
|
170
232
|
return pluginState;
|
|
171
233
|
},
|
|
172
|
-
contentComponent: function contentComponent(
|
|
173
|
-
var editorView =
|
|
174
|
-
popupsMountPoint =
|
|
175
|
-
popupsBoundariesElement =
|
|
176
|
-
popupsScrollableElement =
|
|
234
|
+
contentComponent: function contentComponent(_ref5) {
|
|
235
|
+
var editorView = _ref5.editorView,
|
|
236
|
+
popupsMountPoint = _ref5.popupsMountPoint,
|
|
237
|
+
popupsBoundariesElement = _ref5.popupsBoundariesElement,
|
|
238
|
+
popupsScrollableElement = _ref5.popupsScrollableElement;
|
|
177
239
|
// This is a bit crappy, but should be resolved once we move to a static schema.
|
|
178
240
|
if (options && !options.allowBreakoutButton) {
|
|
179
241
|
return null;
|
|
@@ -20,6 +20,7 @@ var _collapse = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/coll
|
|
|
20
20
|
var _expand = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/expand"));
|
|
21
21
|
var _colors = require("@atlaskit/theme/colors");
|
|
22
22
|
var _constants = require("@atlaskit/theme/constants");
|
|
23
|
+
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
23
24
|
var _removeBreakout = require("../editor-commands/remove-breakout");
|
|
24
25
|
var _setBreakoutMode = require("../editor-commands/set-breakout-mode");
|
|
25
26
|
var _pluginKey = require("../pm-plugins/plugin-key");
|
|
@@ -66,7 +67,9 @@ var LayoutButton = function LayoutButton(_ref) {
|
|
|
66
67
|
scrollableElement = _ref.scrollableElement,
|
|
67
68
|
editorView = _ref.editorView,
|
|
68
69
|
node = _ref.node,
|
|
69
|
-
isLivePage = _ref.isLivePage
|
|
70
|
+
isLivePage = _ref.isLivePage,
|
|
71
|
+
breakoutModeProp = _ref.breakoutMode,
|
|
72
|
+
isBreakoutNodePresent = _ref.isBreakoutNodePresent;
|
|
70
73
|
var handleClick = (0, _react.useCallback)(function (breakoutMode) {
|
|
71
74
|
var state = editorView.state,
|
|
72
75
|
dispatch = editorView.dispatch;
|
|
@@ -77,10 +80,11 @@ var LayoutButton = function LayoutButton(_ref) {
|
|
|
77
80
|
}
|
|
78
81
|
}, [editorView, isLivePage]);
|
|
79
82
|
var state = editorView.state;
|
|
80
|
-
|
|
83
|
+
var exitEarly = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? !isBreakoutNodePresent : !node;
|
|
84
|
+
if (exitEarly || !(0, _isBreakoutMarkAllowed.isBreakoutMarkAllowed)(state)) {
|
|
81
85
|
return null;
|
|
82
86
|
}
|
|
83
|
-
var breakoutMode = (0, _getBreakoutMode.getBreakoutMode)(editorView.state);
|
|
87
|
+
var breakoutMode = (0, _experiments.editorExperiment)('platform_editor_usesharedpluginstateselector', true) ? breakoutModeProp : (0, _getBreakoutMode.getBreakoutMode)(editorView.state);
|
|
84
88
|
var titleMessage = (0, _utils.getTitle)(breakoutMode);
|
|
85
89
|
var title = formatMessage(titleMessage);
|
|
86
90
|
var nextBreakoutMode = (0, _utils.getNextBreakoutMode)(breakoutMode);
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
2
|
import { breakout } from '@atlaskit/adf-schema';
|
|
3
3
|
import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
|
|
4
4
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
5
5
|
import { BreakoutCssClassName } from '@atlaskit/editor-common/styles';
|
|
6
|
+
import { usePluginStateEffect } from '@atlaskit/editor-common/use-plugin-state-effect';
|
|
7
|
+
import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
|
|
6
8
|
import { akEditorSwoopCubicBezier } from '@atlaskit/editor-shared-styles';
|
|
7
9
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
8
10
|
import { pluginKey } from './pm-plugins/plugin-key';
|
|
9
11
|
import { findSupportedNodeForBreakout } from './pm-plugins/utils/find-breakout-node';
|
|
12
|
+
import { getBreakoutMode } from './pm-plugins/utils/get-breakout-mode';
|
|
10
13
|
import LayoutButton from './ui/LayoutButton';
|
|
11
14
|
class BreakoutView {
|
|
12
15
|
constructor(
|
|
@@ -105,28 +108,78 @@ const LayoutButtonWrapper = ({
|
|
|
105
108
|
scrollableElement,
|
|
106
109
|
mountPoint
|
|
107
110
|
}) => {
|
|
108
|
-
var _breakoutState$
|
|
111
|
+
var _breakoutState$breako2, _breakoutState$breako3;
|
|
109
112
|
// Re-render with `width` (but don't use state) due to https://bitbucket.org/atlassian/%7Bc8e2f021-38d2-46d0-9b7a-b3f7b428f724%7D/pull-requests/24272
|
|
110
113
|
const {
|
|
111
114
|
breakoutState,
|
|
112
115
|
editorViewModeState,
|
|
113
116
|
editorDisabledState,
|
|
114
117
|
blockControlsState
|
|
115
|
-
} = useSharedPluginState(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls']
|
|
116
|
-
|
|
118
|
+
} = useSharedPluginState(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls'], {
|
|
119
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', true)
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
// isDragging
|
|
123
|
+
const isDraggingSelector = useSharedPluginStateSelector(api, 'blockControls.isDragging', {
|
|
124
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
125
|
+
});
|
|
126
|
+
const isDragging = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? isDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isDragging;
|
|
127
|
+
|
|
128
|
+
// isPMDragging
|
|
129
|
+
const isPMDraggingSelector = useSharedPluginStateSelector(api, 'blockControls.isPMDragging', {
|
|
130
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
131
|
+
});
|
|
132
|
+
const isPMDragging = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? isPMDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isPMDragging;
|
|
133
|
+
|
|
134
|
+
// mode
|
|
135
|
+
const modeSelector = useSharedPluginStateSelector(api, 'editorViewMode.mode', {
|
|
136
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
137
|
+
});
|
|
138
|
+
const mode = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? modeSelector : editorViewModeState === null || editorViewModeState === void 0 ? void 0 : editorViewModeState.mode;
|
|
139
|
+
|
|
140
|
+
// editorDisabled
|
|
141
|
+
const editorDisabledSelector = useSharedPluginStateSelector(api, 'editorDisabled.editorDisabled', {
|
|
142
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
143
|
+
});
|
|
144
|
+
const editorDisabled = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? editorDisabledSelector : editorDisabledState === null || editorDisabledState === void 0 ? void 0 : editorDisabledState.editorDisabled;
|
|
145
|
+
const [isBreakoutNodePresent, setIsBreakoutNodePresent] = useState(() => {
|
|
146
|
+
const breakoutNode = findSupportedNodeForBreakout(editorView.state.selection);
|
|
147
|
+
return breakoutNode !== undefined;
|
|
148
|
+
});
|
|
149
|
+
const [breakoutMode, setBreakoutMode] = useState(getBreakoutMode(editorView.state));
|
|
150
|
+
usePluginStateEffect(api, ['breakout'], ({
|
|
151
|
+
breakoutState
|
|
152
|
+
}) => {
|
|
153
|
+
var _breakoutState$breako;
|
|
154
|
+
if (editorExperiment('platform_editor_usesharedpluginstateselector', false)) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const breakoutNode = (_breakoutState$breako = breakoutState === null || breakoutState === void 0 ? void 0 : breakoutState.breakoutNode) !== null && _breakoutState$breako !== void 0 ? _breakoutState$breako : null;
|
|
158
|
+
const isBreakoutNodeNull = breakoutNode !== null;
|
|
159
|
+
if (isBreakoutNodePresent !== isBreakoutNodeNull) {
|
|
160
|
+
setIsBreakoutNodePresent(isBreakoutNodeNull);
|
|
161
|
+
}
|
|
162
|
+
const nextBreakoutMode = getBreakoutMode(editorView.state);
|
|
163
|
+
if (nextBreakoutMode !== breakoutMode) {
|
|
164
|
+
setBreakoutMode(nextBreakoutMode);
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
if (isDragging || isPMDragging) {
|
|
117
168
|
if (editorExperiment('advanced_layouts', true)) {
|
|
118
169
|
return null;
|
|
119
170
|
}
|
|
120
171
|
}
|
|
121
|
-
const isViewMode =
|
|
122
|
-
const isEditMode =
|
|
123
|
-
return !isViewMode &&
|
|
172
|
+
const isViewMode = mode === 'view';
|
|
173
|
+
const isEditMode = mode === 'edit';
|
|
174
|
+
return !isViewMode && editorDisabled === false ? /*#__PURE__*/React.createElement(LayoutButton, {
|
|
124
175
|
editorView: editorView,
|
|
125
176
|
mountPoint: mountPoint,
|
|
126
177
|
boundariesElement: boundariesElement,
|
|
127
178
|
scrollableElement: scrollableElement,
|
|
128
|
-
node: (_breakoutState$
|
|
129
|
-
isLivePage: isEditMode
|
|
179
|
+
node: (_breakoutState$breako2 = breakoutState === null || breakoutState === void 0 ? void 0 : (_breakoutState$breako3 = breakoutState.breakoutNode) === null || _breakoutState$breako3 === void 0 ? void 0 : _breakoutState$breako3.node) !== null && _breakoutState$breako2 !== void 0 ? _breakoutState$breako2 : null,
|
|
180
|
+
isLivePage: isEditMode,
|
|
181
|
+
breakoutMode: breakoutMode,
|
|
182
|
+
isBreakoutNodePresent: isBreakoutNodePresent
|
|
130
183
|
}) : null;
|
|
131
184
|
};
|
|
132
185
|
export const breakoutPlugin = ({
|
|
@@ -19,6 +19,7 @@ import CollapseIcon from '@atlaskit/icon/glyph/editor/collapse';
|
|
|
19
19
|
import ExpandIcon from '@atlaskit/icon/glyph/editor/expand';
|
|
20
20
|
import { B300, N20A, N300 } from '@atlaskit/theme/colors';
|
|
21
21
|
import { layers } from '@atlaskit/theme/constants';
|
|
22
|
+
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
22
23
|
import { removeBreakout } from '../editor-commands/remove-breakout';
|
|
23
24
|
import { setBreakoutMode } from '../editor-commands/set-breakout-mode';
|
|
24
25
|
import { getPluginState } from '../pm-plugins/plugin-key';
|
|
@@ -60,7 +61,9 @@ const LayoutButton = ({
|
|
|
60
61
|
scrollableElement,
|
|
61
62
|
editorView,
|
|
62
63
|
node,
|
|
63
|
-
isLivePage
|
|
64
|
+
isLivePage,
|
|
65
|
+
breakoutMode: breakoutModeProp,
|
|
66
|
+
isBreakoutNodePresent
|
|
64
67
|
}) => {
|
|
65
68
|
const handleClick = useCallback(breakoutMode => {
|
|
66
69
|
const {
|
|
@@ -76,10 +79,11 @@ const LayoutButton = ({
|
|
|
76
79
|
const {
|
|
77
80
|
state
|
|
78
81
|
} = editorView;
|
|
79
|
-
|
|
82
|
+
const exitEarly = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? !isBreakoutNodePresent : !node;
|
|
83
|
+
if (exitEarly || !isBreakoutMarkAllowed(state)) {
|
|
80
84
|
return null;
|
|
81
85
|
}
|
|
82
|
-
const breakoutMode = getBreakoutMode(editorView.state);
|
|
86
|
+
const breakoutMode = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? breakoutModeProp : getBreakoutMode(editorView.state);
|
|
83
87
|
const titleMessage = getTitle(breakoutMode);
|
|
84
88
|
const title = formatMessage(titleMessage);
|
|
85
89
|
const nextBreakoutMode = getNextBreakoutMode(breakoutMode);
|
|
@@ -1,17 +1,21 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
1
2
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
3
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
4
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
4
5
|
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; }
|
|
5
6
|
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) { _defineProperty(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; }
|
|
6
|
-
import React from 'react';
|
|
7
|
+
import React, { useState } from 'react';
|
|
7
8
|
import { breakout } from '@atlaskit/adf-schema';
|
|
8
9
|
import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
|
|
9
10
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
10
11
|
import { BreakoutCssClassName } from '@atlaskit/editor-common/styles';
|
|
12
|
+
import { usePluginStateEffect } from '@atlaskit/editor-common/use-plugin-state-effect';
|
|
13
|
+
import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
|
|
11
14
|
import { akEditorSwoopCubicBezier } from '@atlaskit/editor-shared-styles';
|
|
12
15
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
13
16
|
import { pluginKey } from './pm-plugins/plugin-key';
|
|
14
17
|
import { findSupportedNodeForBreakout } from './pm-plugins/utils/find-breakout-node';
|
|
18
|
+
import { getBreakoutMode } from './pm-plugins/utils/get-breakout-mode';
|
|
15
19
|
import LayoutButton from './ui/LayoutButton';
|
|
16
20
|
var BreakoutView = /*#__PURE__*/_createClass(function BreakoutView(
|
|
17
21
|
/**
|
|
@@ -101,37 +105,92 @@ function createPlugin(pluginInjectionApi, _ref) {
|
|
|
101
105
|
});
|
|
102
106
|
}
|
|
103
107
|
var LayoutButtonWrapper = function LayoutButtonWrapper(_ref2) {
|
|
104
|
-
var _breakoutState$
|
|
108
|
+
var _breakoutState$breako2, _breakoutState$breako3;
|
|
105
109
|
var api = _ref2.api,
|
|
106
110
|
editorView = _ref2.editorView,
|
|
107
111
|
boundariesElement = _ref2.boundariesElement,
|
|
108
112
|
scrollableElement = _ref2.scrollableElement,
|
|
109
113
|
mountPoint = _ref2.mountPoint;
|
|
110
114
|
// Re-render with `width` (but don't use state) due to https://bitbucket.org/atlassian/%7Bc8e2f021-38d2-46d0-9b7a-b3f7b428f724%7D/pull-requests/24272
|
|
111
|
-
var _useSharedPluginState = useSharedPluginState(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls']
|
|
115
|
+
var _useSharedPluginState = useSharedPluginState(api, ['width', 'breakout', 'editorViewMode', 'editorDisabled', 'blockControls'], {
|
|
116
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', true)
|
|
117
|
+
}),
|
|
112
118
|
breakoutState = _useSharedPluginState.breakoutState,
|
|
113
119
|
editorViewModeState = _useSharedPluginState.editorViewModeState,
|
|
114
120
|
editorDisabledState = _useSharedPluginState.editorDisabledState,
|
|
115
121
|
blockControlsState = _useSharedPluginState.blockControlsState;
|
|
116
|
-
|
|
122
|
+
|
|
123
|
+
// isDragging
|
|
124
|
+
var isDraggingSelector = useSharedPluginStateSelector(api, 'blockControls.isDragging', {
|
|
125
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
126
|
+
});
|
|
127
|
+
var isDragging = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? isDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isDragging;
|
|
128
|
+
|
|
129
|
+
// isPMDragging
|
|
130
|
+
var isPMDraggingSelector = useSharedPluginStateSelector(api, 'blockControls.isPMDragging', {
|
|
131
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
132
|
+
});
|
|
133
|
+
var isPMDragging = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? isPMDraggingSelector : blockControlsState === null || blockControlsState === void 0 ? void 0 : blockControlsState.isPMDragging;
|
|
134
|
+
|
|
135
|
+
// mode
|
|
136
|
+
var modeSelector = useSharedPluginStateSelector(api, 'editorViewMode.mode', {
|
|
137
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
138
|
+
});
|
|
139
|
+
var mode = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? modeSelector : editorViewModeState === null || editorViewModeState === void 0 ? void 0 : editorViewModeState.mode;
|
|
140
|
+
|
|
141
|
+
// editorDisabled
|
|
142
|
+
var editorDisabledSelector = useSharedPluginStateSelector(api, 'editorDisabled.editorDisabled', {
|
|
143
|
+
disabled: editorExperiment('platform_editor_usesharedpluginstateselector', false)
|
|
144
|
+
});
|
|
145
|
+
var editorDisabled = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? editorDisabledSelector : editorDisabledState === null || editorDisabledState === void 0 ? void 0 : editorDisabledState.editorDisabled;
|
|
146
|
+
var _useState = useState(function () {
|
|
147
|
+
var breakoutNode = findSupportedNodeForBreakout(editorView.state.selection);
|
|
148
|
+
return breakoutNode !== undefined;
|
|
149
|
+
}),
|
|
150
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
151
|
+
isBreakoutNodePresent = _useState2[0],
|
|
152
|
+
setIsBreakoutNodePresent = _useState2[1];
|
|
153
|
+
var _useState3 = useState(getBreakoutMode(editorView.state)),
|
|
154
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
155
|
+
breakoutMode = _useState4[0],
|
|
156
|
+
setBreakoutMode = _useState4[1];
|
|
157
|
+
usePluginStateEffect(api, ['breakout'], function (_ref3) {
|
|
158
|
+
var _breakoutState$breako;
|
|
159
|
+
var breakoutState = _ref3.breakoutState;
|
|
160
|
+
if (editorExperiment('platform_editor_usesharedpluginstateselector', false)) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
var breakoutNode = (_breakoutState$breako = breakoutState === null || breakoutState === void 0 ? void 0 : breakoutState.breakoutNode) !== null && _breakoutState$breako !== void 0 ? _breakoutState$breako : null;
|
|
164
|
+
var isBreakoutNodeNull = breakoutNode !== null;
|
|
165
|
+
if (isBreakoutNodePresent !== isBreakoutNodeNull) {
|
|
166
|
+
setIsBreakoutNodePresent(isBreakoutNodeNull);
|
|
167
|
+
}
|
|
168
|
+
var nextBreakoutMode = getBreakoutMode(editorView.state);
|
|
169
|
+
if (nextBreakoutMode !== breakoutMode) {
|
|
170
|
+
setBreakoutMode(nextBreakoutMode);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
if (isDragging || isPMDragging) {
|
|
117
174
|
if (editorExperiment('advanced_layouts', true)) {
|
|
118
175
|
return null;
|
|
119
176
|
}
|
|
120
177
|
}
|
|
121
|
-
var isViewMode =
|
|
122
|
-
var isEditMode =
|
|
123
|
-
return !isViewMode &&
|
|
178
|
+
var isViewMode = mode === 'view';
|
|
179
|
+
var isEditMode = mode === 'edit';
|
|
180
|
+
return !isViewMode && editorDisabled === false ? /*#__PURE__*/React.createElement(LayoutButton, {
|
|
124
181
|
editorView: editorView,
|
|
125
182
|
mountPoint: mountPoint,
|
|
126
183
|
boundariesElement: boundariesElement,
|
|
127
184
|
scrollableElement: scrollableElement,
|
|
128
|
-
node: (_breakoutState$
|
|
129
|
-
isLivePage: isEditMode
|
|
185
|
+
node: (_breakoutState$breako2 = breakoutState === null || breakoutState === void 0 || (_breakoutState$breako3 = breakoutState.breakoutNode) === null || _breakoutState$breako3 === void 0 ? void 0 : _breakoutState$breako3.node) !== null && _breakoutState$breako2 !== void 0 ? _breakoutState$breako2 : null,
|
|
186
|
+
isLivePage: isEditMode,
|
|
187
|
+
breakoutMode: breakoutMode,
|
|
188
|
+
isBreakoutNodePresent: isBreakoutNodePresent
|
|
130
189
|
}) : null;
|
|
131
190
|
};
|
|
132
|
-
export var breakoutPlugin = function breakoutPlugin(
|
|
133
|
-
var options =
|
|
134
|
-
api =
|
|
191
|
+
export var breakoutPlugin = function breakoutPlugin(_ref4) {
|
|
192
|
+
var options = _ref4.config,
|
|
193
|
+
api = _ref4.api;
|
|
135
194
|
return {
|
|
136
195
|
name: 'breakout',
|
|
137
196
|
pmPlugins: function pmPlugins() {
|
|
@@ -162,11 +221,11 @@ export var breakoutPlugin = function breakoutPlugin(_ref3) {
|
|
|
162
221
|
}
|
|
163
222
|
return pluginState;
|
|
164
223
|
},
|
|
165
|
-
contentComponent: function contentComponent(
|
|
166
|
-
var editorView =
|
|
167
|
-
popupsMountPoint =
|
|
168
|
-
popupsBoundariesElement =
|
|
169
|
-
popupsScrollableElement =
|
|
224
|
+
contentComponent: function contentComponent(_ref5) {
|
|
225
|
+
var editorView = _ref5.editorView,
|
|
226
|
+
popupsMountPoint = _ref5.popupsMountPoint,
|
|
227
|
+
popupsBoundariesElement = _ref5.popupsBoundariesElement,
|
|
228
|
+
popupsScrollableElement = _ref5.popupsScrollableElement;
|
|
170
229
|
// This is a bit crappy, but should be resolved once we move to a static schema.
|
|
171
230
|
if (options && !options.allowBreakoutButton) {
|
|
172
231
|
return null;
|
|
@@ -19,6 +19,7 @@ import CollapseIcon from '@atlaskit/icon/glyph/editor/collapse';
|
|
|
19
19
|
import ExpandIcon from '@atlaskit/icon/glyph/editor/expand';
|
|
20
20
|
import { B300, N20A, N300 } from '@atlaskit/theme/colors';
|
|
21
21
|
import { layers } from '@atlaskit/theme/constants';
|
|
22
|
+
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
22
23
|
import { removeBreakout } from '../editor-commands/remove-breakout';
|
|
23
24
|
import { setBreakoutMode } from '../editor-commands/set-breakout-mode';
|
|
24
25
|
import { getPluginState } from '../pm-plugins/plugin-key';
|
|
@@ -58,7 +59,9 @@ var LayoutButton = function LayoutButton(_ref) {
|
|
|
58
59
|
scrollableElement = _ref.scrollableElement,
|
|
59
60
|
editorView = _ref.editorView,
|
|
60
61
|
node = _ref.node,
|
|
61
|
-
isLivePage = _ref.isLivePage
|
|
62
|
+
isLivePage = _ref.isLivePage,
|
|
63
|
+
breakoutModeProp = _ref.breakoutMode,
|
|
64
|
+
isBreakoutNodePresent = _ref.isBreakoutNodePresent;
|
|
62
65
|
var handleClick = useCallback(function (breakoutMode) {
|
|
63
66
|
var state = editorView.state,
|
|
64
67
|
dispatch = editorView.dispatch;
|
|
@@ -69,10 +72,11 @@ var LayoutButton = function LayoutButton(_ref) {
|
|
|
69
72
|
}
|
|
70
73
|
}, [editorView, isLivePage]);
|
|
71
74
|
var state = editorView.state;
|
|
72
|
-
|
|
75
|
+
var exitEarly = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? !isBreakoutNodePresent : !node;
|
|
76
|
+
if (exitEarly || !isBreakoutMarkAllowed(state)) {
|
|
73
77
|
return null;
|
|
74
78
|
}
|
|
75
|
-
var breakoutMode = getBreakoutMode(editorView.state);
|
|
79
|
+
var breakoutMode = editorExperiment('platform_editor_usesharedpluginstateselector', true) ? breakoutModeProp : getBreakoutMode(editorView.state);
|
|
76
80
|
var titleMessage = getTitle(breakoutMode);
|
|
77
81
|
var title = formatMessage(titleMessage);
|
|
78
82
|
var nextBreakoutMode = getNextBreakoutMode(breakoutMode);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { WrappedComponentProps } from 'react-intl-next';
|
|
3
|
+
import type { BreakoutMode } from '@atlaskit/editor-common/types';
|
|
3
4
|
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
4
5
|
import type { EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
5
6
|
export interface Props {
|
|
@@ -10,6 +11,8 @@ export interface Props {
|
|
|
10
11
|
scrollableElement?: HTMLElement;
|
|
11
12
|
handleClick?: Function;
|
|
12
13
|
isLivePage?: boolean;
|
|
14
|
+
breakoutMode: BreakoutMode | undefined;
|
|
15
|
+
isBreakoutNodePresent: boolean;
|
|
13
16
|
}
|
|
14
17
|
declare const _default: import("react").FC<import("react-intl-next").WithIntlProps<Props & WrappedComponentProps>> & {
|
|
15
18
|
WrappedComponent: import("react").ComponentType<Props & WrappedComponentProps>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { WrappedComponentProps } from 'react-intl-next';
|
|
3
|
+
import type { BreakoutMode } from '@atlaskit/editor-common/types';
|
|
3
4
|
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
4
5
|
import type { EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
5
6
|
export interface Props {
|
|
@@ -10,6 +11,8 @@ export interface Props {
|
|
|
10
11
|
scrollableElement?: HTMLElement;
|
|
11
12
|
handleClick?: Function;
|
|
12
13
|
isLivePage?: boolean;
|
|
14
|
+
breakoutMode: BreakoutMode | undefined;
|
|
15
|
+
isBreakoutNodePresent: boolean;
|
|
13
16
|
}
|
|
14
17
|
declare const _default: import("react").FC<import("react-intl-next").WithIntlProps<Props & WrappedComponentProps>> & {
|
|
15
18
|
WrappedComponent: import("react").ComponentType<Props & WrappedComponentProps>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-breakout",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.8",
|
|
4
4
|
"description": "Breakout plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -34,18 +34,18 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@atlaskit/adf-schema": "^47.6.0",
|
|
37
|
-
"@atlaskit/editor-common": "^103.
|
|
38
|
-
"@atlaskit/editor-plugin-block-controls": "^3.
|
|
37
|
+
"@atlaskit/editor-common": "^103.16.0",
|
|
38
|
+
"@atlaskit/editor-plugin-block-controls": "^3.11.0",
|
|
39
39
|
"@atlaskit/editor-plugin-editor-disabled": "^2.0.0",
|
|
40
|
-
"@atlaskit/editor-plugin-editor-viewmode": "^3.
|
|
40
|
+
"@atlaskit/editor-plugin-editor-viewmode": "^3.1.0",
|
|
41
41
|
"@atlaskit/editor-plugin-width": "^3.0.0",
|
|
42
42
|
"@atlaskit/editor-prosemirror": "7.0.0",
|
|
43
43
|
"@atlaskit/editor-shared-styles": "^3.4.0",
|
|
44
|
-
"@atlaskit/icon": "^25.
|
|
44
|
+
"@atlaskit/icon": "^25.6.0",
|
|
45
45
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
46
46
|
"@atlaskit/theme": "^18.0.0",
|
|
47
|
-
"@atlaskit/tmp-editor-statsig": "^4.
|
|
48
|
-
"@atlaskit/tokens": "^4.
|
|
47
|
+
"@atlaskit/tmp-editor-statsig": "^4.14.0",
|
|
48
|
+
"@atlaskit/tokens": "^4.8.0",
|
|
49
49
|
"@babel/runtime": "^7.0.0",
|
|
50
50
|
"@emotion/react": "^11.7.1"
|
|
51
51
|
},
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@af/integration-testing": "^0.5.0",
|
|
59
59
|
"@af/visual-regression": "^1.3.0",
|
|
60
|
-
"@atlaskit/editor-plugin-code-block": "^4.
|
|
60
|
+
"@atlaskit/editor-plugin-code-block": "^4.4.0",
|
|
61
61
|
"@atlaskit/editor-plugin-composition": "^1.3.0",
|
|
62
62
|
"@atlaskit/editor-plugin-decorations": "^2.0.0",
|
|
63
63
|
"@atlaskit/ssr": "^0.4.0",
|
|
@@ -105,9 +105,6 @@
|
|
|
105
105
|
"platform-feature-flags": {
|
|
106
106
|
"platform-editor-single-player-expand": {
|
|
107
107
|
"type": "boolean"
|
|
108
|
-
},
|
|
109
|
-
"platform_editor_core_increase_full_page_guttering": {
|
|
110
|
-
"type": "boolean"
|
|
111
108
|
}
|
|
112
109
|
}
|
|
113
110
|
}
|