@atlaskit/editor-plugin-floating-toolbar 3.6.0 → 4.0.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 CHANGED
@@ -1,5 +1,29 @@
1
1
  # @atlaskit/editor-plugin-floating-toolbar
2
2
 
3
+ ## 4.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#141095](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/141095)
8
+ [`c12941b65dc2a`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/c12941b65dc2a) -
9
+ **WHAT**: Remove `@atlaskit/editor-plugin-block-controls` as a dependency from
10
+ `@atlaskit/editor-plugin-floating-toolbar`. Add `@atlaskit/editor-plugin-user-intent` as a
11
+ dependency and replace isDragging check from block controls with this user intention current
12
+ intention check.
13
+
14
+ ### Patch Changes
15
+
16
+ - Updated dependencies
17
+
18
+ ## 3.6.1
19
+
20
+ ### Patch Changes
21
+
22
+ - [#139216](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/139216)
23
+ [`e8f596d2b1910`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/e8f596d2b1910) -
24
+ [ux] Cleaned up platform_editor_controls_patch_1 FG
25
+ - Updated dependencies
26
+
3
27
  ## 3.6.0
4
28
 
5
29
  ### Minor Changes
@@ -212,10 +212,13 @@ function ContentComponent(_ref5) {
212
212
  popupsScrollableElement = _ref5.popupsScrollableElement,
213
213
  providerFactory = _ref5.providerFactory,
214
214
  dispatchAnalyticsEvent = _ref5.dispatchAnalyticsEvent;
215
- var _useSharedPluginState = (0, _hooks.useSharedPluginState)(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'blockControls']),
215
+ var _useSharedPluginState = (0, _hooks.useSharedPluginState)(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'userIntent',
216
+ // @ts-expect-error - excluded from FloatingToolbarPlugin dependencies to avoid circular dependency
217
+ 'blockControls']),
216
218
  floatingToolbarState = _useSharedPluginState.floatingToolbarState,
217
219
  editorDisabledState = _useSharedPluginState.editorDisabledState,
218
220
  editorViewModeState = _useSharedPluginState.editorViewModeState,
221
+ userIntentState = _useSharedPluginState.userIntentState,
219
222
  blockControlsState = _useSharedPluginState.blockControlsState;
220
223
  var _ref6 = floatingToolbarState !== null && floatingToolbarState !== void 0 ? floatingToolbarState : {},
221
224
  configWithNodeInfo = _ref6.configWithNodeInfo,
@@ -223,11 +226,22 @@ function ContentComponent(_ref5) {
223
226
  if (!configWithNodeInfo || !configWithNodeInfo.config || typeof ((_configWithNodeInfo$c = configWithNodeInfo.config) === null || _configWithNodeInfo$c === void 0 ? void 0 : _configWithNodeInfo$c.visible) !== 'undefined' && !((_configWithNodeInfo$c2 = configWithNodeInfo.config) !== null && _configWithNodeInfo$c2 !== void 0 && _configWithNodeInfo$c2.visible)) {
224
227
  return null;
225
228
  }
226
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
227
- return null;
228
- }
229
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
230
- return null;
229
+ if ((0, _platformFeatureFlags.fg)('platform_editor_user_intent_plugin')) {
230
+ if ((userIntentState === null || userIntentState === void 0 ? void 0 : userIntentState.currentUserIntent) === 'dragging') {
231
+ return null;
232
+ }
233
+
234
+ // TODO: ED-27539 - This feature is unreleased and rendering logic needs to be move userIntentState which is not ready yet
235
+ // if (blockControlsState?.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
236
+ // return null;
237
+ // }
238
+ } else {
239
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
240
+ return null;
241
+ }
242
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
243
+ return null;
244
+ }
231
245
  }
232
246
  var config = configWithNodeInfo.config,
233
247
  node = configWithNodeInfo.node;
@@ -278,7 +292,7 @@ function ContentComponent(_ref5) {
278
292
  return toolbarItemViewModeProp in item && !!item[toolbarItemViewModeProp];
279
293
  });
280
294
  }
281
- if ((0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') && (0, _platformFeatureFlags.fg)('platform_editor_controls_patch_1')) {
295
+ if ((0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
282
296
  var _items2;
283
297
  // Consolidate floating toolbar items
284
298
  var toolbarItemsArray = Array.isArray(items) ? items : (_items2 = items) === null || _items2 === void 0 ? void 0 : _items2(node);
@@ -198,8 +198,12 @@ export function ContentComponent({
198
198
  floatingToolbarState,
199
199
  editorDisabledState,
200
200
  editorViewModeState,
201
+ userIntentState,
202
+ // @ts-expect-error - excluded from FloatingToolbarPlugin dependencies to avoid circular dependency
201
203
  blockControlsState
202
- } = useSharedPluginState(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'blockControls']);
204
+ } = useSharedPluginState(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'userIntent',
205
+ // @ts-expect-error - excluded from FloatingToolbarPlugin dependencies to avoid circular dependency
206
+ 'blockControls']);
203
207
  const {
204
208
  configWithNodeInfo,
205
209
  floatingToolbarData
@@ -207,11 +211,22 @@ export function ContentComponent({
207
211
  if (!configWithNodeInfo || !configWithNodeInfo.config || typeof ((_configWithNodeInfo$c = configWithNodeInfo.config) === null || _configWithNodeInfo$c === void 0 ? void 0 : _configWithNodeInfo$c.visible) !== 'undefined' && !((_configWithNodeInfo$c2 = configWithNodeInfo.config) !== null && _configWithNodeInfo$c2 !== void 0 && _configWithNodeInfo$c2.visible)) {
208
212
  return null;
209
213
  }
210
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
211
- return null;
212
- }
213
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
214
- return null;
214
+ if (fg('platform_editor_user_intent_plugin')) {
215
+ if ((userIntentState === null || userIntentState === void 0 ? void 0 : userIntentState.currentUserIntent) === 'dragging') {
216
+ return null;
217
+ }
218
+
219
+ // TODO: ED-27539 - This feature is unreleased and rendering logic needs to be move userIntentState which is not ready yet
220
+ // if (blockControlsState?.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
221
+ // return null;
222
+ // }
223
+ } else {
224
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
225
+ return null;
226
+ }
227
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
228
+ return null;
229
+ }
215
230
  }
216
231
  const {
217
232
  config,
@@ -261,7 +276,7 @@ export function ContentComponent({
261
276
  const toolbarItemViewModeProp = 'supportsViewMode';
262
277
  items = iterableItems.filter(item => toolbarItemViewModeProp in item && !!item[toolbarItemViewModeProp]);
263
278
  }
264
- if (editorExperiment('platform_editor_controls', 'variant1') && fg('platform_editor_controls_patch_1')) {
279
+ if (editorExperiment('platform_editor_controls', 'variant1')) {
265
280
  var _items2;
266
281
  // Consolidate floating toolbar items
267
282
  const toolbarItemsArray = Array.isArray(items) ? items : (_items2 = items) === null || _items2 === void 0 ? void 0 : _items2(node);
@@ -200,10 +200,13 @@ export function ContentComponent(_ref5) {
200
200
  popupsScrollableElement = _ref5.popupsScrollableElement,
201
201
  providerFactory = _ref5.providerFactory,
202
202
  dispatchAnalyticsEvent = _ref5.dispatchAnalyticsEvent;
203
- var _useSharedPluginState = useSharedPluginState(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'blockControls']),
203
+ var _useSharedPluginState = useSharedPluginState(pluginInjectionApi, ['floatingToolbar', 'editorDisabled', 'editorViewMode', 'userIntent',
204
+ // @ts-expect-error - excluded from FloatingToolbarPlugin dependencies to avoid circular dependency
205
+ 'blockControls']),
204
206
  floatingToolbarState = _useSharedPluginState.floatingToolbarState,
205
207
  editorDisabledState = _useSharedPluginState.editorDisabledState,
206
208
  editorViewModeState = _useSharedPluginState.editorViewModeState,
209
+ userIntentState = _useSharedPluginState.userIntentState,
207
210
  blockControlsState = _useSharedPluginState.blockControlsState;
208
211
  var _ref6 = floatingToolbarState !== null && floatingToolbarState !== void 0 ? floatingToolbarState : {},
209
212
  configWithNodeInfo = _ref6.configWithNodeInfo,
@@ -211,11 +214,22 @@ export function ContentComponent(_ref5) {
211
214
  if (!configWithNodeInfo || !configWithNodeInfo.config || typeof ((_configWithNodeInfo$c = configWithNodeInfo.config) === null || _configWithNodeInfo$c === void 0 ? void 0 : _configWithNodeInfo$c.visible) !== 'undefined' && !((_configWithNodeInfo$c2 = configWithNodeInfo.config) !== null && _configWithNodeInfo$c2 !== void 0 && _configWithNodeInfo$c2.visible)) {
212
215
  return null;
213
216
  }
214
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
215
- return null;
216
- }
217
- if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
218
- return null;
217
+ if (fg('platform_editor_user_intent_plugin')) {
218
+ if ((userIntentState === null || userIntentState === void 0 ? void 0 : userIntentState.currentUserIntent) === 'dragging') {
219
+ return null;
220
+ }
221
+
222
+ // TODO: ED-27539 - This feature is unreleased and rendering logic needs to be move userIntentState which is not ready yet
223
+ // if (blockControlsState?.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
224
+ // return null;
225
+ // }
226
+ } else {
227
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isDragging) {
228
+ return null;
229
+ }
230
+ if (blockControlsState !== null && blockControlsState !== void 0 && blockControlsState.isMenuOpen && editorExperiment('platform_editor_controls', 'variant1')) {
231
+ return null;
232
+ }
219
233
  }
220
234
  var config = configWithNodeInfo.config,
221
235
  node = configWithNodeInfo.node;
@@ -266,7 +280,7 @@ export function ContentComponent(_ref5) {
266
280
  return toolbarItemViewModeProp in item && !!item[toolbarItemViewModeProp];
267
281
  });
268
282
  }
269
- if (editorExperiment('platform_editor_controls', 'variant1') && fg('platform_editor_controls_patch_1')) {
283
+ if (editorExperiment('platform_editor_controls', 'variant1')) {
270
284
  var _items2;
271
285
  // Consolidate floating toolbar items
272
286
  var toolbarItemsArray = Array.isArray(items) ? items : (_items2 = items) === null || _items2 === void 0 ? void 0 : _items2(node);
@@ -1,5 +1,4 @@
1
1
  import type { FloatingToolbarConfig, NextEditorPlugin, OptionalPlugin } from '@atlaskit/editor-common/types';
2
- import type { BlockControlsPlugin } from '@atlaskit/editor-plugin-block-controls';
3
2
  import type { ContextPanelPlugin } from '@atlaskit/editor-plugin-context-panel';
4
3
  import type { CopyButtonPlugin } from '@atlaskit/editor-plugin-copy-button';
5
4
  import type { DecorationsPlugin } from '@atlaskit/editor-plugin-decorations';
@@ -8,6 +7,7 @@ import type { EditorViewModePlugin } from '@atlaskit/editor-plugin-editor-viewmo
8
7
  import type { EmojiPlugin } from '@atlaskit/editor-plugin-emoji';
9
8
  import type { ExtensionPlugin } from '@atlaskit/editor-plugin-extension';
10
9
  import type { FeatureFlagsPlugin } from '@atlaskit/editor-plugin-feature-flags';
10
+ import type { UserIntentPlugin } from '@atlaskit/editor-plugin-user-intent';
11
11
  import type { Node } from '@atlaskit/editor-prosemirror/model';
12
12
  import type { EditorState, Transaction } from '@atlaskit/editor-prosemirror/state';
13
13
  export type ConfigWithNodeInfo = {
@@ -33,9 +33,9 @@ export type FloatingToolbarPluginDependencies = [
33
33
  CopyButtonPlugin,
34
34
  EditorDisabledPlugin,
35
35
  OptionalPlugin<EditorViewModePlugin>,
36
- OptionalPlugin<BlockControlsPlugin>,
37
36
  OptionalPlugin<FeatureFlagsPlugin>,
38
- OptionalPlugin<EmojiPlugin>
37
+ OptionalPlugin<EmojiPlugin>,
38
+ OptionalPlugin<UserIntentPlugin>
39
39
  ];
40
40
  export type FloatingToolbarPlugin = NextEditorPlugin<'floatingToolbar', {
41
41
  dependencies: FloatingToolbarPluginDependencies;
@@ -1,5 +1,4 @@
1
1
  import type { FloatingToolbarConfig, NextEditorPlugin, OptionalPlugin } from '@atlaskit/editor-common/types';
2
- import type { BlockControlsPlugin } from '@atlaskit/editor-plugin-block-controls';
3
2
  import type { ContextPanelPlugin } from '@atlaskit/editor-plugin-context-panel';
4
3
  import type { CopyButtonPlugin } from '@atlaskit/editor-plugin-copy-button';
5
4
  import type { DecorationsPlugin } from '@atlaskit/editor-plugin-decorations';
@@ -8,6 +7,7 @@ import type { EditorViewModePlugin } from '@atlaskit/editor-plugin-editor-viewmo
8
7
  import type { EmojiPlugin } from '@atlaskit/editor-plugin-emoji';
9
8
  import type { ExtensionPlugin } from '@atlaskit/editor-plugin-extension';
10
9
  import type { FeatureFlagsPlugin } from '@atlaskit/editor-plugin-feature-flags';
10
+ import type { UserIntentPlugin } from '@atlaskit/editor-plugin-user-intent';
11
11
  import type { Node } from '@atlaskit/editor-prosemirror/model';
12
12
  import type { EditorState, Transaction } from '@atlaskit/editor-prosemirror/state';
13
13
  export type ConfigWithNodeInfo = {
@@ -33,9 +33,9 @@ export type FloatingToolbarPluginDependencies = [
33
33
  CopyButtonPlugin,
34
34
  EditorDisabledPlugin,
35
35
  OptionalPlugin<EditorViewModePlugin>,
36
- OptionalPlugin<BlockControlsPlugin>,
37
36
  OptionalPlugin<FeatureFlagsPlugin>,
38
- OptionalPlugin<EmojiPlugin>
37
+ OptionalPlugin<EmojiPlugin>,
38
+ OptionalPlugin<UserIntentPlugin>
39
39
  ];
40
40
  export type FloatingToolbarPlugin = NextEditorPlugin<'floatingToolbar', {
41
41
  dependencies: FloatingToolbarPluginDependencies;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-floating-toolbar",
3
- "version": "3.6.0",
3
+ "version": "4.0.0",
4
4
  "description": "Floating toolbar plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -28,28 +28,28 @@
28
28
  "@atlaskit/adf-utils": "^19.19.0",
29
29
  "@atlaskit/button": "^23.0.0",
30
30
  "@atlaskit/checkbox": "^17.0.0",
31
- "@atlaskit/editor-common": "^103.2.0",
31
+ "@atlaskit/editor-common": "^103.11.0",
32
32
  "@atlaskit/editor-palette": "^2.1.0",
33
- "@atlaskit/editor-plugin-block-controls": "^3.8.0",
34
33
  "@atlaskit/editor-plugin-context-panel": "^4.0.0",
35
34
  "@atlaskit/editor-plugin-copy-button": "^2.0.0",
36
35
  "@atlaskit/editor-plugin-decorations": "^2.0.0",
37
36
  "@atlaskit/editor-plugin-editor-disabled": "^2.0.0",
38
- "@atlaskit/editor-plugin-editor-viewmode": "^3.0.0",
39
- "@atlaskit/editor-plugin-emoji": "^3.5.0",
37
+ "@atlaskit/editor-plugin-editor-viewmode": "^3.1.0",
38
+ "@atlaskit/editor-plugin-emoji": "^3.6.0",
40
39
  "@atlaskit/editor-plugin-extension": "^5.2.0",
41
- "@atlaskit/editor-plugin-table": "^10.6.0",
40
+ "@atlaskit/editor-plugin-table": "^10.8.0",
41
+ "@atlaskit/editor-plugin-user-intent": "^0.1.0",
42
42
  "@atlaskit/editor-prosemirror": "7.0.0",
43
43
  "@atlaskit/emoji": "^69.0.0",
44
- "@atlaskit/icon": "^25.5.0",
44
+ "@atlaskit/icon": "^25.6.0",
45
45
  "@atlaskit/menu": "^3.2.0",
46
46
  "@atlaskit/modal-dialog": "^14.1.0",
47
47
  "@atlaskit/platform-feature-flags": "^1.1.0",
48
48
  "@atlaskit/primitives": "^14.4.0",
49
- "@atlaskit/select": "^20.2.0",
49
+ "@atlaskit/select": "^20.3.0",
50
50
  "@atlaskit/theme": "^18.0.0",
51
- "@atlaskit/tmp-editor-statsig": "^4.6.0",
52
- "@atlaskit/tokens": "^4.7.0",
51
+ "@atlaskit/tmp-editor-statsig": "^4.12.0",
52
+ "@atlaskit/tokens": "^4.8.0",
53
53
  "@atlaskit/tooltip": "^20.0.0",
54
54
  "@babel/runtime": "^7.0.0",
55
55
  "@emotion/react": "^11.7.1",
@@ -132,14 +132,14 @@
132
132
  "platform_editor_fix_floating_toolbar_scrollbar": {
133
133
  "type": "boolean"
134
134
  },
135
- "platform_editor_controls_patch_1": {
136
- "type": "boolean"
137
- },
138
135
  "platform_editor_controls_patch_2": {
139
136
  "type": "boolean"
140
137
  },
141
138
  "platform_editor_controls_patch_4": {
142
139
  "type": "boolean"
140
+ },
141
+ "platform_editor_user_intent_plugin": {
142
+ "type": "boolean"
143
143
  }
144
144
  }
145
145
  }