@atlaskit/editor-plugin-track-changes 3.0.0 → 3.0.2
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/pm-plugins/main.js +6 -2
- package/dist/cjs/ui/toolbar-components.js +31 -1
- package/dist/es2019/pm-plugins/main.js +5 -3
- package/dist/es2019/ui/toolbar-components.js +30 -2
- package/dist/esm/pm-plugins/main.js +7 -3
- package/dist/esm/ui/toolbar-components.js +32 -2
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-track-changes
|
|
2
2
|
|
|
3
|
+
## 3.0.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`4a31ea74ba10f`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/4a31ea74ba10f) -
|
|
8
|
+
[ux] [ED-29057] create new ranks and groups for track changes section and render undo, redo and
|
|
9
|
+
diff in separate button groups behind platform_editor_toolbar_aifc_patch_2 gate
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
12
|
+
## 3.0.1
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- [`2d7e230a59028`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/2d7e230a59028) -
|
|
17
|
+
[NO-ISSUE] Hot fix for when attributes gets updated, it is recognised as a docchange and hence
|
|
18
|
+
decorations should be applied
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
|
|
3
21
|
## 3.0.0
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -22,7 +22,11 @@ var trackChangesPluginKey = exports.trackChangesPluginKey = new _state.PluginKey
|
|
|
22
22
|
// Exported for test purposes
|
|
23
23
|
var getBaselineFromSteps = exports.getBaselineFromSteps = function getBaselineFromSteps(doc, steps) {
|
|
24
24
|
try {
|
|
25
|
-
|
|
25
|
+
// Filter out AttrStep's since attribute changes shouldn't affect baseline content comparison
|
|
26
|
+
var contentSteps = steps.filter(function (step) {
|
|
27
|
+
return !(step.step instanceof _transform.AttrStep);
|
|
28
|
+
});
|
|
29
|
+
var _iterator = _createForOfIteratorHelper(contentSteps.slice().reverse()),
|
|
26
30
|
_step;
|
|
27
31
|
try {
|
|
28
32
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -73,7 +77,7 @@ var createTrackChangesPlugin = exports.createTrackChangesPlugin = function creat
|
|
|
73
77
|
});
|
|
74
78
|
}
|
|
75
79
|
var isDocChanged = tr.docChanged && tr.steps.some(function (step) {
|
|
76
|
-
return step instanceof _transform.ReplaceStep || step instanceof _transform.ReplaceAroundStep || step instanceof _transform.AddMarkStep || step instanceof _transform.RemoveMarkStep;
|
|
80
|
+
return step instanceof _transform.ReplaceStep || step instanceof _transform.ReplaceAroundStep || step instanceof _transform.AddMarkStep || step instanceof _transform.RemoveMarkStep || step instanceof _transform.AttrStep;
|
|
77
81
|
});
|
|
78
82
|
if (!isDocChanged || tr.getMeta('isRemote') || tr.getMeta('replaceDocument')) {
|
|
79
83
|
// If the transaction is remote, we need to map the steps to the current document
|
|
@@ -7,9 +7,39 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.getToolbarComponents = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _toolbar = require("@atlaskit/editor-common/toolbar");
|
|
10
|
+
var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
|
|
10
11
|
var _TrackChangesToolbarButton = require("./TrackChangesToolbarButton");
|
|
11
12
|
var getToolbarComponents = exports.getToolbarComponents = function getToolbarComponents(api) {
|
|
12
|
-
return [{
|
|
13
|
+
return (0, _expValEquals.expValEquals)('platform_editor_toolbar_aifc_patch_2', 'isEnabled', true) ? [{
|
|
14
|
+
type: _toolbar.TRACK_CHANGES_SECTION.type,
|
|
15
|
+
key: _toolbar.TRACK_CHANGES_SECTION.key,
|
|
16
|
+
parents: [{
|
|
17
|
+
type: 'toolbar',
|
|
18
|
+
key: _toolbar.TOOLBARS.PRIMARY_TOOLBAR,
|
|
19
|
+
rank: _toolbar.TOOLBAR_RANK[_toolbar.TRACK_CHANGES_SECTION.key]
|
|
20
|
+
}]
|
|
21
|
+
}, {
|
|
22
|
+
type: _toolbar.TRACK_CHANGES_GROUP.type,
|
|
23
|
+
key: _toolbar.TRACK_CHANGES_GROUP.key,
|
|
24
|
+
parents: [{
|
|
25
|
+
type: _toolbar.TRACK_CHANGES_SECTION.type,
|
|
26
|
+
key: _toolbar.TRACK_CHANGES_SECTION.key,
|
|
27
|
+
rank: _toolbar.TRACK_CHANGES_SECTION_RANK_NEW[_toolbar.TRACK_CHANGES_GROUP.key]
|
|
28
|
+
}]
|
|
29
|
+
}, {
|
|
30
|
+
type: _toolbar.TRACK_CHANGES_BUTTON.type,
|
|
31
|
+
key: _toolbar.TRACK_CHANGES_BUTTON.key,
|
|
32
|
+
parents: [{
|
|
33
|
+
type: _toolbar.TRACK_CHANGES_GROUP.type,
|
|
34
|
+
key: _toolbar.TRACK_CHANGES_GROUP.key,
|
|
35
|
+
rank: _toolbar.TRACK_CHANGES_GROUP_RANK_NEW[_toolbar.TRACK_CHANGES_BUTTON.key]
|
|
36
|
+
}],
|
|
37
|
+
component: function component() {
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(_TrackChangesToolbarButton.TrackChangesToolbarButton, {
|
|
39
|
+
api: api
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}] : [{
|
|
13
43
|
type: _toolbar.TRACK_CHANGES_SECTION.type,
|
|
14
44
|
key: _toolbar.TRACK_CHANGES_SECTION.key,
|
|
15
45
|
parents: [{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
2
2
|
import { PluginKey } from '@atlaskit/editor-prosemirror/state';
|
|
3
|
-
import { ReplaceAroundStep, ReplaceStep, AddMarkStep, RemoveMarkStep } from '@atlaskit/editor-prosemirror/transform';
|
|
3
|
+
import { ReplaceAroundStep, ReplaceStep, AddMarkStep, RemoveMarkStep, AttrStep } from '@atlaskit/editor-prosemirror/transform';
|
|
4
4
|
import { filterSteps } from './filterSteps';
|
|
5
5
|
import { InvertableStep } from './invertableStep';
|
|
6
6
|
import { TOGGLE_TRACK_CHANGES_ACTION as ACTION } from './types';
|
|
@@ -8,7 +8,9 @@ export const trackChangesPluginKey = new PluginKey('trackChangesPlugin');
|
|
|
8
8
|
// Exported for test purposes
|
|
9
9
|
export const getBaselineFromSteps = (doc, steps) => {
|
|
10
10
|
try {
|
|
11
|
-
|
|
11
|
+
// Filter out AttrStep's since attribute changes shouldn't affect baseline content comparison
|
|
12
|
+
const contentSteps = steps.filter(step => !(step.step instanceof AttrStep));
|
|
13
|
+
for (const step of contentSteps.slice().reverse()) {
|
|
12
14
|
const result = step.inverted.apply(doc);
|
|
13
15
|
if (result.failed === null && result.doc) {
|
|
14
16
|
doc = result.doc;
|
|
@@ -51,7 +53,7 @@ export const createTrackChangesPlugin = api => {
|
|
|
51
53
|
shouldChangesBeDisplayed: !state.shouldChangesBeDisplayed
|
|
52
54
|
};
|
|
53
55
|
}
|
|
54
|
-
const isDocChanged = tr.docChanged && tr.steps.some(step => step instanceof ReplaceStep || step instanceof ReplaceAroundStep || step instanceof AddMarkStep || step instanceof RemoveMarkStep);
|
|
56
|
+
const isDocChanged = tr.docChanged && tr.steps.some(step => step instanceof ReplaceStep || step instanceof ReplaceAroundStep || step instanceof AddMarkStep || step instanceof RemoveMarkStep || step instanceof AttrStep);
|
|
55
57
|
if (!isDocChanged || tr.getMeta('isRemote') || tr.getMeta('replaceDocument')) {
|
|
56
58
|
// If the transaction is remote, we need to map the steps to the current document
|
|
57
59
|
return {
|
|
@@ -1,8 +1,36 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { TOOLBAR_RANK, TOOLBARS, TRACK_CHANGES_BUTTON, TRACK_CHANGES_GROUP, TRACK_CHANGES_GROUP_RANK, TRACK_CHANGES_SECTION, TRACK_CHANGES_SECTION_RANK } from '@atlaskit/editor-common/toolbar';
|
|
2
|
+
import { TOOLBAR_RANK, TOOLBARS, TRACK_CHANGES_BUTTON, TRACK_CHANGES_GROUP, TRACK_CHANGES_GROUP_RANK, TRACK_CHANGES_SECTION_RANK_NEW, TRACK_CHANGES_SECTION, TRACK_CHANGES_SECTION_RANK, TRACK_CHANGES_GROUP_RANK_NEW } from '@atlaskit/editor-common/toolbar';
|
|
3
|
+
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
3
4
|
import { TrackChangesToolbarButton } from './TrackChangesToolbarButton';
|
|
4
5
|
export const getToolbarComponents = api => {
|
|
5
|
-
return [{
|
|
6
|
+
return expValEquals('platform_editor_toolbar_aifc_patch_2', 'isEnabled', true) ? [{
|
|
7
|
+
type: TRACK_CHANGES_SECTION.type,
|
|
8
|
+
key: TRACK_CHANGES_SECTION.key,
|
|
9
|
+
parents: [{
|
|
10
|
+
type: 'toolbar',
|
|
11
|
+
key: TOOLBARS.PRIMARY_TOOLBAR,
|
|
12
|
+
rank: TOOLBAR_RANK[TRACK_CHANGES_SECTION.key]
|
|
13
|
+
}]
|
|
14
|
+
}, {
|
|
15
|
+
type: TRACK_CHANGES_GROUP.type,
|
|
16
|
+
key: TRACK_CHANGES_GROUP.key,
|
|
17
|
+
parents: [{
|
|
18
|
+
type: TRACK_CHANGES_SECTION.type,
|
|
19
|
+
key: TRACK_CHANGES_SECTION.key,
|
|
20
|
+
rank: TRACK_CHANGES_SECTION_RANK_NEW[TRACK_CHANGES_GROUP.key]
|
|
21
|
+
}]
|
|
22
|
+
}, {
|
|
23
|
+
type: TRACK_CHANGES_BUTTON.type,
|
|
24
|
+
key: TRACK_CHANGES_BUTTON.key,
|
|
25
|
+
parents: [{
|
|
26
|
+
type: TRACK_CHANGES_GROUP.type,
|
|
27
|
+
key: TRACK_CHANGES_GROUP.key,
|
|
28
|
+
rank: TRACK_CHANGES_GROUP_RANK_NEW[TRACK_CHANGES_BUTTON.key]
|
|
29
|
+
}],
|
|
30
|
+
component: () => /*#__PURE__*/React.createElement(TrackChangesToolbarButton, {
|
|
31
|
+
api: api
|
|
32
|
+
})
|
|
33
|
+
}] : [{
|
|
6
34
|
type: TRACK_CHANGES_SECTION.type,
|
|
7
35
|
key: TRACK_CHANGES_SECTION.key,
|
|
8
36
|
parents: [{
|
|
@@ -7,7 +7,7 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
|
|
|
7
7
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
8
8
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
9
9
|
import { PluginKey } from '@atlaskit/editor-prosemirror/state';
|
|
10
|
-
import { ReplaceAroundStep, ReplaceStep, AddMarkStep, RemoveMarkStep } from '@atlaskit/editor-prosemirror/transform';
|
|
10
|
+
import { ReplaceAroundStep, ReplaceStep, AddMarkStep, RemoveMarkStep, AttrStep } from '@atlaskit/editor-prosemirror/transform';
|
|
11
11
|
import { filterSteps } from './filterSteps';
|
|
12
12
|
import { InvertableStep } from './invertableStep';
|
|
13
13
|
import { TOGGLE_TRACK_CHANGES_ACTION as ACTION } from './types';
|
|
@@ -15,7 +15,11 @@ export var trackChangesPluginKey = new PluginKey('trackChangesPlugin');
|
|
|
15
15
|
// Exported for test purposes
|
|
16
16
|
export var getBaselineFromSteps = function getBaselineFromSteps(doc, steps) {
|
|
17
17
|
try {
|
|
18
|
-
|
|
18
|
+
// Filter out AttrStep's since attribute changes shouldn't affect baseline content comparison
|
|
19
|
+
var contentSteps = steps.filter(function (step) {
|
|
20
|
+
return !(step.step instanceof AttrStep);
|
|
21
|
+
});
|
|
22
|
+
var _iterator = _createForOfIteratorHelper(contentSteps.slice().reverse()),
|
|
19
23
|
_step;
|
|
20
24
|
try {
|
|
21
25
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -66,7 +70,7 @@ export var createTrackChangesPlugin = function createTrackChangesPlugin(api) {
|
|
|
66
70
|
});
|
|
67
71
|
}
|
|
68
72
|
var isDocChanged = tr.docChanged && tr.steps.some(function (step) {
|
|
69
|
-
return step instanceof ReplaceStep || step instanceof ReplaceAroundStep || step instanceof AddMarkStep || step instanceof RemoveMarkStep;
|
|
73
|
+
return step instanceof ReplaceStep || step instanceof ReplaceAroundStep || step instanceof AddMarkStep || step instanceof RemoveMarkStep || step instanceof AttrStep;
|
|
70
74
|
});
|
|
71
75
|
if (!isDocChanged || tr.getMeta('isRemote') || tr.getMeta('replaceDocument')) {
|
|
72
76
|
// If the transaction is remote, we need to map the steps to the current document
|
|
@@ -1,8 +1,38 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { TOOLBAR_RANK, TOOLBARS, TRACK_CHANGES_BUTTON, TRACK_CHANGES_GROUP, TRACK_CHANGES_GROUP_RANK, TRACK_CHANGES_SECTION, TRACK_CHANGES_SECTION_RANK } from '@atlaskit/editor-common/toolbar';
|
|
2
|
+
import { TOOLBAR_RANK, TOOLBARS, TRACK_CHANGES_BUTTON, TRACK_CHANGES_GROUP, TRACK_CHANGES_GROUP_RANK, TRACK_CHANGES_SECTION_RANK_NEW, TRACK_CHANGES_SECTION, TRACK_CHANGES_SECTION_RANK, TRACK_CHANGES_GROUP_RANK_NEW } from '@atlaskit/editor-common/toolbar';
|
|
3
|
+
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
3
4
|
import { TrackChangesToolbarButton } from './TrackChangesToolbarButton';
|
|
4
5
|
export var getToolbarComponents = function getToolbarComponents(api) {
|
|
5
|
-
return [{
|
|
6
|
+
return expValEquals('platform_editor_toolbar_aifc_patch_2', 'isEnabled', true) ? [{
|
|
7
|
+
type: TRACK_CHANGES_SECTION.type,
|
|
8
|
+
key: TRACK_CHANGES_SECTION.key,
|
|
9
|
+
parents: [{
|
|
10
|
+
type: 'toolbar',
|
|
11
|
+
key: TOOLBARS.PRIMARY_TOOLBAR,
|
|
12
|
+
rank: TOOLBAR_RANK[TRACK_CHANGES_SECTION.key]
|
|
13
|
+
}]
|
|
14
|
+
}, {
|
|
15
|
+
type: TRACK_CHANGES_GROUP.type,
|
|
16
|
+
key: TRACK_CHANGES_GROUP.key,
|
|
17
|
+
parents: [{
|
|
18
|
+
type: TRACK_CHANGES_SECTION.type,
|
|
19
|
+
key: TRACK_CHANGES_SECTION.key,
|
|
20
|
+
rank: TRACK_CHANGES_SECTION_RANK_NEW[TRACK_CHANGES_GROUP.key]
|
|
21
|
+
}]
|
|
22
|
+
}, {
|
|
23
|
+
type: TRACK_CHANGES_BUTTON.type,
|
|
24
|
+
key: TRACK_CHANGES_BUTTON.key,
|
|
25
|
+
parents: [{
|
|
26
|
+
type: TRACK_CHANGES_GROUP.type,
|
|
27
|
+
key: TRACK_CHANGES_GROUP.key,
|
|
28
|
+
rank: TRACK_CHANGES_GROUP_RANK_NEW[TRACK_CHANGES_BUTTON.key]
|
|
29
|
+
}],
|
|
30
|
+
component: function component() {
|
|
31
|
+
return /*#__PURE__*/React.createElement(TrackChangesToolbarButton, {
|
|
32
|
+
api: api
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}] : [{
|
|
6
36
|
type: TRACK_CHANGES_SECTION.type,
|
|
7
37
|
key: TRACK_CHANGES_SECTION.key,
|
|
8
38
|
parents: [{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-track-changes",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2",
|
|
4
4
|
"description": "ShowDiff plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
"@atlaskit/button": "^23.4.0",
|
|
32
32
|
"@atlaskit/editor-plugin-history": "4.0.0",
|
|
33
33
|
"@atlaskit/editor-plugin-primary-toolbar": "^5.0.0",
|
|
34
|
-
"@atlaskit/editor-plugin-show-diff": "1.0.
|
|
34
|
+
"@atlaskit/editor-plugin-show-diff": "1.0.1",
|
|
35
35
|
"@atlaskit/editor-plugin-toolbar": "^1.0.0",
|
|
36
36
|
"@atlaskit/editor-prosemirror": "7.0.0",
|
|
37
37
|
"@atlaskit/editor-toolbar": "^0.6.0",
|
|
38
38
|
"@atlaskit/editor-toolbar-model": "^0.2.0",
|
|
39
39
|
"@atlaskit/icon-lab": "^5.7.0",
|
|
40
|
-
"@atlaskit/tmp-editor-statsig": "^12.
|
|
40
|
+
"@atlaskit/tmp-editor-statsig": "^12.1.0",
|
|
41
41
|
"@babel/runtime": "^7.0.0",
|
|
42
42
|
"react-intl-next": "npm:react-intl@^5.18.1"
|
|
43
43
|
},
|