@atlaskit/editor-plugin-undo-redo 7.2.1 → 7.3.1

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,18 @@
1
1
  # @atlaskit/editor-plugin-undo-redo
2
2
 
3
+ ## 7.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 7.3.0
10
+
11
+ ### Minor Changes
12
+
13
+ - [`f50f2ef80042c`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f50f2ef80042c) -
14
+ Adds plugin configuration to disable undo redo toolbar items
15
+
3
16
  ## 7.2.1
4
17
 
5
18
  ### Patch Changes
@@ -8,6 +8,7 @@ exports.undoRedoPlugin = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _analytics = require("@atlaskit/editor-common/analytics");
10
10
  var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
11
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
11
12
  var _prosemirrorHistory = require("@atlaskit/prosemirror-history");
12
13
  var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
13
14
  var _attachInputMeta = require("./pm-plugins/attach-input-meta");
@@ -21,7 +22,10 @@ var _toolbarComponents = require("./ui/ToolbarUndoRedo/toolbar-components");
21
22
  // eslint-disable-next-line import/no-named-as-default
22
23
 
23
24
  var undoRedoPlugin = exports.undoRedoPlugin = function undoRedoPlugin(_ref) {
24
- var api = _ref.api;
25
+ var _config$showToolbarBu;
26
+ var api = _ref.api,
27
+ config = _ref.config;
28
+ var showToolbarButton = (_config$showToolbarBu = config === null || config === void 0 ? void 0 : config.showToolbarButton) !== null && _config$showToolbarBu !== void 0 ? _config$showToolbarBu : true;
25
29
  var editorViewRef = {
26
30
  current: null
27
31
  };
@@ -40,15 +44,30 @@ var undoRedoPlugin = exports.undoRedoPlugin = function undoRedoPlugin(_ref) {
40
44
  api: api
41
45
  });
42
46
  };
43
- if (isToolbarAIFCEnabled) {
44
- var _api$toolbar;
45
- api === null || api === void 0 || (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 || _api$toolbar.actions.registerComponents((0, _toolbarComponents.getToolbarComponents)(api));
47
+ if ((0, _platformFeatureFlags.fg)('platform_editor_ai_add_undoredo_jira')) {
48
+ if (showToolbarButton) {
49
+ if (isToolbarAIFCEnabled) {
50
+ var _api$toolbar;
51
+ api === null || api === void 0 || (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 || _api$toolbar.actions.registerComponents((0, _toolbarComponents.getToolbarComponents)(api));
52
+ } else {
53
+ var _api$primaryToolbar;
54
+ api === null || api === void 0 || (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 || _api$primaryToolbar.actions.registerComponent({
55
+ name: 'undoRedoPlugin',
56
+ component: primaryToolbarComponent
57
+ });
58
+ }
59
+ }
46
60
  } else {
47
- var _api$primaryToolbar;
48
- api === null || api === void 0 || (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 || _api$primaryToolbar.actions.registerComponent({
49
- name: 'undoRedoPlugin',
50
- component: primaryToolbarComponent
51
- });
61
+ if (isToolbarAIFCEnabled) {
62
+ var _api$toolbar2;
63
+ api === null || api === void 0 || (_api$toolbar2 = api.toolbar) === null || _api$toolbar2 === void 0 || _api$toolbar2.actions.registerComponents((0, _toolbarComponents.getToolbarComponents)(api));
64
+ } else {
65
+ var _api$primaryToolbar2;
66
+ api === null || api === void 0 || (_api$primaryToolbar2 = api.primaryToolbar) === null || _api$primaryToolbar2 === void 0 || _api$primaryToolbar2.actions.registerComponent({
67
+ name: 'undoRedoPlugin',
68
+ component: primaryToolbarComponent
69
+ });
70
+ }
52
71
  }
53
72
  var handleUndo = function handleUndo(inputSource) {
54
73
  var _api$analytics;
@@ -64,6 +83,7 @@ var undoRedoPlugin = exports.undoRedoPlugin = function undoRedoPlugin(_ref) {
64
83
  }
65
84
  return (0, _utils.forceFocus)(editorViewRef.current, api)((0, _attachInputMeta.attachInputMetaWithAnalytics)(api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions)(inputSource || _enums.InputSource.EXTERNAL, _analytics.ACTION.REDO_PERFORMED)(_prosemirrorHistory.redo));
66
85
  };
86
+ var showPrimaryToolbarComponent = (0, _platformFeatureFlags.fg)('platform_editor_ai_add_undoredo_jira') ? !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled && showToolbarButton : !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled;
67
87
  return {
68
88
  name: 'undoRedoPlugin',
69
89
  actions: {
@@ -103,6 +123,6 @@ var undoRedoPlugin = exports.undoRedoPlugin = function undoRedoPlugin(_ref) {
103
123
  }
104
124
  return plugins;
105
125
  },
106
- primaryToolbarComponent: !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled ? primaryToolbarComponent : undefined
126
+ primaryToolbarComponent: showPrimaryToolbarComponent ? primaryToolbarComponent : undefined
107
127
  };
108
128
  };
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { ACTION } from '@atlaskit/editor-common/analytics';
3
3
  import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
4
+ import { fg } from '@atlaskit/platform-feature-flags';
4
5
  import { redo, undo } from '@atlaskit/prosemirror-history';
5
6
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
6
7
  import { attachInputMetaWithAnalytics } from './pm-plugins/attach-input-meta';
@@ -13,8 +14,11 @@ import { forceFocus } from './pm-plugins/utils';
13
14
  import ToolbarUndoRedo from './ui/ToolbarUndoRedo';
14
15
  import { getToolbarComponents } from './ui/ToolbarUndoRedo/toolbar-components';
15
16
  export const undoRedoPlugin = ({
16
- api
17
+ api,
18
+ config
17
19
  }) => {
20
+ var _config$showToolbarBu;
21
+ const showToolbarButton = (_config$showToolbarBu = config === null || config === void 0 ? void 0 : config.showToolbarButton) !== null && _config$showToolbarBu !== void 0 ? _config$showToolbarBu : true;
18
22
  const editorViewRef = {
19
23
  current: null
20
24
  };
@@ -34,15 +38,30 @@ export const undoRedoPlugin = ({
34
38
  api: api
35
39
  });
36
40
  };
37
- if (isToolbarAIFCEnabled) {
38
- var _api$toolbar;
39
- api === null || api === void 0 ? void 0 : (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 ? void 0 : _api$toolbar.actions.registerComponents(getToolbarComponents(api));
41
+ if (fg('platform_editor_ai_add_undoredo_jira')) {
42
+ if (showToolbarButton) {
43
+ if (isToolbarAIFCEnabled) {
44
+ var _api$toolbar;
45
+ api === null || api === void 0 ? void 0 : (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 ? void 0 : _api$toolbar.actions.registerComponents(getToolbarComponents(api));
46
+ } else {
47
+ var _api$primaryToolbar;
48
+ api === null || api === void 0 ? void 0 : (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 ? void 0 : _api$primaryToolbar.actions.registerComponent({
49
+ name: 'undoRedoPlugin',
50
+ component: primaryToolbarComponent
51
+ });
52
+ }
53
+ }
40
54
  } else {
41
- var _api$primaryToolbar;
42
- api === null || api === void 0 ? void 0 : (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 ? void 0 : _api$primaryToolbar.actions.registerComponent({
43
- name: 'undoRedoPlugin',
44
- component: primaryToolbarComponent
45
- });
55
+ if (isToolbarAIFCEnabled) {
56
+ var _api$toolbar2;
57
+ api === null || api === void 0 ? void 0 : (_api$toolbar2 = api.toolbar) === null || _api$toolbar2 === void 0 ? void 0 : _api$toolbar2.actions.registerComponents(getToolbarComponents(api));
58
+ } else {
59
+ var _api$primaryToolbar2;
60
+ api === null || api === void 0 ? void 0 : (_api$primaryToolbar2 = api.primaryToolbar) === null || _api$primaryToolbar2 === void 0 ? void 0 : _api$primaryToolbar2.actions.registerComponent({
61
+ name: 'undoRedoPlugin',
62
+ component: primaryToolbarComponent
63
+ });
64
+ }
46
65
  }
47
66
  const handleUndo = inputSource => {
48
67
  var _api$analytics;
@@ -58,6 +77,7 @@ export const undoRedoPlugin = ({
58
77
  }
59
78
  return forceFocus(editorViewRef.current, api)(attachInputMetaWithAnalytics(api === null || api === void 0 ? void 0 : (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions)(inputSource || InputSource.EXTERNAL, ACTION.REDO_PERFORMED)(redo));
60
79
  };
80
+ const showPrimaryToolbarComponent = fg('platform_editor_ai_add_undoredo_jira') ? !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled && showToolbarButton : !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled;
61
81
  return {
62
82
  name: 'undoRedoPlugin',
63
83
  actions: {
@@ -93,6 +113,6 @@ export const undoRedoPlugin = ({
93
113
  }
94
114
  return plugins;
95
115
  },
96
- primaryToolbarComponent: !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled ? primaryToolbarComponent : undefined
116
+ primaryToolbarComponent: showPrimaryToolbarComponent ? primaryToolbarComponent : undefined
97
117
  };
98
118
  };
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { ACTION } from '@atlaskit/editor-common/analytics';
3
3
  import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
4
+ import { fg } from '@atlaskit/platform-feature-flags';
4
5
  import { redo, undo } from '@atlaskit/prosemirror-history';
5
6
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
6
7
  import { attachInputMetaWithAnalytics } from './pm-plugins/attach-input-meta';
@@ -13,7 +14,10 @@ import { forceFocus } from './pm-plugins/utils';
13
14
  import ToolbarUndoRedo from './ui/ToolbarUndoRedo';
14
15
  import { getToolbarComponents } from './ui/ToolbarUndoRedo/toolbar-components';
15
16
  export var undoRedoPlugin = function undoRedoPlugin(_ref) {
16
- var api = _ref.api;
17
+ var _config$showToolbarBu;
18
+ var api = _ref.api,
19
+ config = _ref.config;
20
+ var showToolbarButton = (_config$showToolbarBu = config === null || config === void 0 ? void 0 : config.showToolbarButton) !== null && _config$showToolbarBu !== void 0 ? _config$showToolbarBu : true;
17
21
  var editorViewRef = {
18
22
  current: null
19
23
  };
@@ -32,15 +36,30 @@ export var undoRedoPlugin = function undoRedoPlugin(_ref) {
32
36
  api: api
33
37
  });
34
38
  };
35
- if (isToolbarAIFCEnabled) {
36
- var _api$toolbar;
37
- api === null || api === void 0 || (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 || _api$toolbar.actions.registerComponents(getToolbarComponents(api));
39
+ if (fg('platform_editor_ai_add_undoredo_jira')) {
40
+ if (showToolbarButton) {
41
+ if (isToolbarAIFCEnabled) {
42
+ var _api$toolbar;
43
+ api === null || api === void 0 || (_api$toolbar = api.toolbar) === null || _api$toolbar === void 0 || _api$toolbar.actions.registerComponents(getToolbarComponents(api));
44
+ } else {
45
+ var _api$primaryToolbar;
46
+ api === null || api === void 0 || (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 || _api$primaryToolbar.actions.registerComponent({
47
+ name: 'undoRedoPlugin',
48
+ component: primaryToolbarComponent
49
+ });
50
+ }
51
+ }
38
52
  } else {
39
- var _api$primaryToolbar;
40
- api === null || api === void 0 || (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 || _api$primaryToolbar.actions.registerComponent({
41
- name: 'undoRedoPlugin',
42
- component: primaryToolbarComponent
43
- });
53
+ if (isToolbarAIFCEnabled) {
54
+ var _api$toolbar2;
55
+ api === null || api === void 0 || (_api$toolbar2 = api.toolbar) === null || _api$toolbar2 === void 0 || _api$toolbar2.actions.registerComponents(getToolbarComponents(api));
56
+ } else {
57
+ var _api$primaryToolbar2;
58
+ api === null || api === void 0 || (_api$primaryToolbar2 = api.primaryToolbar) === null || _api$primaryToolbar2 === void 0 || _api$primaryToolbar2.actions.registerComponent({
59
+ name: 'undoRedoPlugin',
60
+ component: primaryToolbarComponent
61
+ });
62
+ }
44
63
  }
45
64
  var handleUndo = function handleUndo(inputSource) {
46
65
  var _api$analytics;
@@ -56,6 +75,7 @@ export var undoRedoPlugin = function undoRedoPlugin(_ref) {
56
75
  }
57
76
  return forceFocus(editorViewRef.current, api)(attachInputMetaWithAnalytics(api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions)(inputSource || InputSource.EXTERNAL, ACTION.REDO_PERFORMED)(redo));
58
77
  };
78
+ var showPrimaryToolbarComponent = fg('platform_editor_ai_add_undoredo_jira') ? !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled && showToolbarButton : !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled;
59
79
  return {
60
80
  name: 'undoRedoPlugin',
61
81
  actions: {
@@ -95,6 +115,6 @@ export var undoRedoPlugin = function undoRedoPlugin(_ref) {
95
115
  }
96
116
  return plugins;
97
117
  },
98
- primaryToolbarComponent: !(api !== null && api !== void 0 && api.primaryToolbar) && !isToolbarAIFCEnabled ? primaryToolbarComponent : undefined
118
+ primaryToolbarComponent: showPrimaryToolbarComponent ? primaryToolbarComponent : undefined
99
119
  };
100
120
  };
@@ -18,4 +18,12 @@ export type UndoRedoPlugin = NextEditorPlugin<'undoRedoPlugin', {
18
18
  OptionalPlugin<AnalyticsPlugin>,
19
19
  OptionalPlugin<ToolbarPlugin>
20
20
  ];
21
+ pluginConfiguration: {
22
+ /**
23
+ * Determines whether or not to show the toolbar buttons
24
+ * If not it just allows use of the actions + keybindings + analytics etc.
25
+ * Defaults to true
26
+ */
27
+ showToolbarButton: boolean;
28
+ } | undefined;
21
29
  }>;
@@ -18,4 +18,12 @@ export type UndoRedoPlugin = NextEditorPlugin<'undoRedoPlugin', {
18
18
  OptionalPlugin<AnalyticsPlugin>,
19
19
  OptionalPlugin<ToolbarPlugin>
20
20
  ];
21
+ pluginConfiguration: {
22
+ /**
23
+ * Determines whether or not to show the toolbar buttons
24
+ * If not it just allows use of the actions + keybindings + analytics etc.
25
+ * Defaults to true
26
+ */
27
+ showToolbarButton: boolean;
28
+ } | undefined;
21
29
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-undo-redo",
3
- "version": "7.2.1",
3
+ "version": "7.3.1",
4
4
  "description": "Undo redo plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -31,15 +31,15 @@
31
31
  "dependencies": {
32
32
  "@atlaskit/editor-plugin-history": "^7.0.0",
33
33
  "@atlaskit/editor-plugin-primary-toolbar": "^8.0.0",
34
- "@atlaskit/editor-plugin-toolbar": "^4.0.0",
34
+ "@atlaskit/editor-plugin-toolbar": "^4.1.0",
35
35
  "@atlaskit/editor-plugin-type-ahead": "^7.0.0",
36
36
  "@atlaskit/editor-prosemirror": "^7.2.0",
37
37
  "@atlaskit/editor-toolbar": "^0.19.0",
38
38
  "@atlaskit/editor-toolbar-model": "^0.3.0",
39
- "@atlaskit/icon": "^29.4.0",
39
+ "@atlaskit/icon": "^30.0.0",
40
40
  "@atlaskit/platform-feature-flags": "^1.1.0",
41
41
  "@atlaskit/prosemirror-history": "^0.2.0",
42
- "@atlaskit/tmp-editor-statsig": "^16.23.0",
42
+ "@atlaskit/tmp-editor-statsig": "^16.30.0",
43
43
  "@babel/runtime": "^7.0.0",
44
44
  "@emotion/react": "^11.7.1"
45
45
  },
@@ -89,5 +89,9 @@
89
89
  "checkDevDependencies": true
90
90
  }
91
91
  },
92
- "platform-feature-flags": {}
92
+ "platform-feature-flags": {
93
+ "platform_editor_ai_add_undoredo_jira": {
94
+ "type": "boolean"
95
+ }
96
+ }
93
97
  }