@atlaskit/editor-plugin-type-ahead 1.8.4 → 1.8.5
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,15 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-type-ahead
|
|
2
2
|
|
|
3
|
+
## 1.8.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#138136](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/138136)
|
|
8
|
+
[`35938ecf46ba7`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/35938ecf46ba7) -
|
|
9
|
+
[ED-24755] Implement insert functionality of element templates and fire document inserted event
|
|
10
|
+
with template IDs
|
|
11
|
+
- Updated dependencies
|
|
12
|
+
|
|
3
13
|
## 1.8.4
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
|
@@ -10,12 +10,13 @@ var _steps = require("@atlaskit/adf-schema/steps");
|
|
|
10
10
|
var _typeAhead = require("@atlaskit/editor-common/type-ahead");
|
|
11
11
|
var _history = require("@atlaskit/editor-prosemirror/history");
|
|
12
12
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
13
|
+
var _utils = require("@atlaskit/editor-prosemirror/utils");
|
|
13
14
|
var _insertUtils = require("../insert-utils");
|
|
14
15
|
var _actions = require("../pm-plugins/actions");
|
|
15
16
|
var _key = require("../pm-plugins/key");
|
|
16
17
|
var _statsModifier = require("../stats-modifier");
|
|
17
18
|
var _closeTypeAhead = require("../transforms/close-type-ahead");
|
|
18
|
-
var
|
|
19
|
+
var _utils2 = require("../utils");
|
|
19
20
|
var validateNode = function validateNode(_ref) {
|
|
20
21
|
var schema = _ref.schema,
|
|
21
22
|
maybeNode = _ref.maybeNode;
|
|
@@ -36,14 +37,25 @@ var validateNode = function validateNode(_ref) {
|
|
|
36
37
|
return null;
|
|
37
38
|
}
|
|
38
39
|
};
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
40
|
+
// For platform_editor_element_level_templates experiment only
|
|
41
|
+
// clean up ticket ED-24873
|
|
42
|
+
var insertTemplateFragment = function insertTemplateFragment(_ref2) {
|
|
43
|
+
var fragment = _ref2.fragment,
|
|
44
|
+
tr = _ref2.tr,
|
|
45
|
+
position = _ref2.position;
|
|
46
|
+
var start = position.start;
|
|
47
|
+
var trWithInsert = (0, _utils.safeInsert)(fragment, start)(tr);
|
|
48
|
+
tr.setSelection(trWithInsert.selection);
|
|
49
|
+
return tr;
|
|
50
|
+
};
|
|
51
|
+
var createInsertCallback = function createInsertCallback(_ref3) {
|
|
52
|
+
var state = _ref3.editorState,
|
|
53
|
+
handler = _ref3.handler,
|
|
54
|
+
query = _ref3.query,
|
|
55
|
+
wasInsertedBySpace = _ref3.wasInsertedBySpace,
|
|
56
|
+
selectedIndex = _ref3.selectedIndex,
|
|
57
|
+
textStartPosition = _ref3.textStartPosition,
|
|
58
|
+
textInserted = _ref3.textInserted;
|
|
47
59
|
return function (maybeNode) {
|
|
48
60
|
var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
49
61
|
var tr = state.tr;
|
|
@@ -62,16 +74,28 @@ var createInsertCallback = function createInsertCallback(_ref2) {
|
|
|
62
74
|
tr.delete(position.start, position.end);
|
|
63
75
|
return tr;
|
|
64
76
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
77
|
+
|
|
78
|
+
// For platform_editor_element_level_templates experiment only
|
|
79
|
+
// clean up ticket ED-24873
|
|
80
|
+
// @ts-ignore
|
|
81
|
+
if (opts.isTemplate) {
|
|
82
|
+
insertTemplateFragment({
|
|
83
|
+
fragment: node,
|
|
84
|
+
tr: tr,
|
|
85
|
+
position: position
|
|
86
|
+
});
|
|
87
|
+
} else {
|
|
88
|
+
node instanceof _model.Node && node.isBlock ? (0, _insertUtils.insertBlockNode)({
|
|
89
|
+
node: node,
|
|
90
|
+
tr: tr,
|
|
91
|
+
position: position
|
|
92
|
+
}) : (0, _insertUtils.insertInlineNodeOrFragment)({
|
|
93
|
+
maybeFragment: node,
|
|
94
|
+
tr: tr,
|
|
95
|
+
position: position,
|
|
96
|
+
selectInlineNode: Boolean(opts.selectInlineNode)
|
|
97
|
+
});
|
|
98
|
+
}
|
|
75
99
|
(0, _history.closeHistory)(tr);
|
|
76
100
|
if (wasInsertedBySpace) {
|
|
77
101
|
return tr;
|
|
@@ -86,13 +110,13 @@ var createInsertCallback = function createInsertCallback(_ref2) {
|
|
|
86
110
|
return tr;
|
|
87
111
|
};
|
|
88
112
|
};
|
|
89
|
-
var createDeleteRawTextCallback = function createDeleteRawTextCallback(
|
|
90
|
-
var trigger =
|
|
91
|
-
selectedIndex =
|
|
92
|
-
position =
|
|
93
|
-
query =
|
|
94
|
-
wasInsertedBySpace =
|
|
95
|
-
insertItem =
|
|
113
|
+
var createDeleteRawTextCallback = function createDeleteRawTextCallback(_ref4) {
|
|
114
|
+
var trigger = _ref4.trigger,
|
|
115
|
+
selectedIndex = _ref4.selectedIndex,
|
|
116
|
+
position = _ref4.position,
|
|
117
|
+
query = _ref4.query,
|
|
118
|
+
wasInsertedBySpace = _ref4.wasInsertedBySpace,
|
|
119
|
+
insertItem = _ref4.insertItem;
|
|
96
120
|
return function (newState) {
|
|
97
121
|
var tr = newState.tr;
|
|
98
122
|
(0, _history.closeHistory)(tr);
|
|
@@ -114,13 +138,13 @@ var createDeleteRawTextCallback = function createDeleteRawTextCallback(_ref3) {
|
|
|
114
138
|
};
|
|
115
139
|
};
|
|
116
140
|
var insertTypeAheadItem = exports.insertTypeAheadItem = function insertTypeAheadItem(view) {
|
|
117
|
-
return function (
|
|
118
|
-
var item =
|
|
119
|
-
handler =
|
|
120
|
-
mode =
|
|
121
|
-
query =
|
|
122
|
-
sourceListItem =
|
|
123
|
-
var pluginState = (0,
|
|
141
|
+
return function (_ref5) {
|
|
142
|
+
var item = _ref5.item,
|
|
143
|
+
handler = _ref5.handler,
|
|
144
|
+
mode = _ref5.mode,
|
|
145
|
+
query = _ref5.query,
|
|
146
|
+
sourceListItem = _ref5.sourceListItem;
|
|
147
|
+
var pluginState = (0, _utils2.getPluginState)(view.state);
|
|
124
148
|
if (!pluginState) {
|
|
125
149
|
return;
|
|
126
150
|
}
|
|
@@ -2,6 +2,7 @@ import { InsertTypeAheadStages, InsertTypeAheadStep } from '@atlaskit/adf-schema
|
|
|
2
2
|
import { SelectItemMode } from '@atlaskit/editor-common/type-ahead';
|
|
3
3
|
import { closeHistory } from '@atlaskit/editor-prosemirror/history';
|
|
4
4
|
import { Fragment, Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
5
|
+
import { safeInsert } from '@atlaskit/editor-prosemirror/utils';
|
|
5
6
|
import { insertBlockNode, insertInlineNodeOrFragment } from '../insert-utils';
|
|
6
7
|
import { ACTIONS } from '../pm-plugins/actions';
|
|
7
8
|
import { pluginKey } from '../pm-plugins/key';
|
|
@@ -29,6 +30,20 @@ const validateNode = ({
|
|
|
29
30
|
return null;
|
|
30
31
|
}
|
|
31
32
|
};
|
|
33
|
+
// For platform_editor_element_level_templates experiment only
|
|
34
|
+
// clean up ticket ED-24873
|
|
35
|
+
const insertTemplateFragment = ({
|
|
36
|
+
fragment,
|
|
37
|
+
tr,
|
|
38
|
+
position
|
|
39
|
+
}) => {
|
|
40
|
+
const {
|
|
41
|
+
start
|
|
42
|
+
} = position;
|
|
43
|
+
const trWithInsert = safeInsert(fragment, start)(tr);
|
|
44
|
+
tr.setSelection(trWithInsert.selection);
|
|
45
|
+
return tr;
|
|
46
|
+
};
|
|
32
47
|
const createInsertCallback = ({
|
|
33
48
|
editorState: state,
|
|
34
49
|
handler,
|
|
@@ -56,16 +71,28 @@ const createInsertCallback = ({
|
|
|
56
71
|
tr.delete(position.start, position.end);
|
|
57
72
|
return tr;
|
|
58
73
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
74
|
+
|
|
75
|
+
// For platform_editor_element_level_templates experiment only
|
|
76
|
+
// clean up ticket ED-24873
|
|
77
|
+
// @ts-ignore
|
|
78
|
+
if (opts.isTemplate) {
|
|
79
|
+
insertTemplateFragment({
|
|
80
|
+
fragment: node,
|
|
81
|
+
tr,
|
|
82
|
+
position
|
|
83
|
+
});
|
|
84
|
+
} else {
|
|
85
|
+
node instanceof PMNode && node.isBlock ? insertBlockNode({
|
|
86
|
+
node,
|
|
87
|
+
tr,
|
|
88
|
+
position
|
|
89
|
+
}) : insertInlineNodeOrFragment({
|
|
90
|
+
maybeFragment: node,
|
|
91
|
+
tr,
|
|
92
|
+
position,
|
|
93
|
+
selectInlineNode: Boolean(opts.selectInlineNode)
|
|
94
|
+
});
|
|
95
|
+
}
|
|
69
96
|
closeHistory(tr);
|
|
70
97
|
if (wasInsertedBySpace) {
|
|
71
98
|
return tr;
|
|
@@ -3,6 +3,7 @@ import { InsertTypeAheadStages, InsertTypeAheadStep } from '@atlaskit/adf-schema
|
|
|
3
3
|
import { SelectItemMode } from '@atlaskit/editor-common/type-ahead';
|
|
4
4
|
import { closeHistory } from '@atlaskit/editor-prosemirror/history';
|
|
5
5
|
import { Fragment, Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
6
|
+
import { safeInsert } from '@atlaskit/editor-prosemirror/utils';
|
|
6
7
|
import { insertBlockNode, insertInlineNodeOrFragment } from '../insert-utils';
|
|
7
8
|
import { ACTIONS } from '../pm-plugins/actions';
|
|
8
9
|
import { pluginKey } from '../pm-plugins/key';
|
|
@@ -29,14 +30,25 @@ var validateNode = function validateNode(_ref) {
|
|
|
29
30
|
return null;
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
// For platform_editor_element_level_templates experiment only
|
|
34
|
+
// clean up ticket ED-24873
|
|
35
|
+
var insertTemplateFragment = function insertTemplateFragment(_ref2) {
|
|
36
|
+
var fragment = _ref2.fragment,
|
|
37
|
+
tr = _ref2.tr,
|
|
38
|
+
position = _ref2.position;
|
|
39
|
+
var start = position.start;
|
|
40
|
+
var trWithInsert = safeInsert(fragment, start)(tr);
|
|
41
|
+
tr.setSelection(trWithInsert.selection);
|
|
42
|
+
return tr;
|
|
43
|
+
};
|
|
44
|
+
var createInsertCallback = function createInsertCallback(_ref3) {
|
|
45
|
+
var state = _ref3.editorState,
|
|
46
|
+
handler = _ref3.handler,
|
|
47
|
+
query = _ref3.query,
|
|
48
|
+
wasInsertedBySpace = _ref3.wasInsertedBySpace,
|
|
49
|
+
selectedIndex = _ref3.selectedIndex,
|
|
50
|
+
textStartPosition = _ref3.textStartPosition,
|
|
51
|
+
textInserted = _ref3.textInserted;
|
|
40
52
|
return function (maybeNode) {
|
|
41
53
|
var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
42
54
|
var tr = state.tr;
|
|
@@ -55,16 +67,28 @@ var createInsertCallback = function createInsertCallback(_ref2) {
|
|
|
55
67
|
tr.delete(position.start, position.end);
|
|
56
68
|
return tr;
|
|
57
69
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
70
|
+
|
|
71
|
+
// For platform_editor_element_level_templates experiment only
|
|
72
|
+
// clean up ticket ED-24873
|
|
73
|
+
// @ts-ignore
|
|
74
|
+
if (opts.isTemplate) {
|
|
75
|
+
insertTemplateFragment({
|
|
76
|
+
fragment: node,
|
|
77
|
+
tr: tr,
|
|
78
|
+
position: position
|
|
79
|
+
});
|
|
80
|
+
} else {
|
|
81
|
+
node instanceof PMNode && node.isBlock ? insertBlockNode({
|
|
82
|
+
node: node,
|
|
83
|
+
tr: tr,
|
|
84
|
+
position: position
|
|
85
|
+
}) : insertInlineNodeOrFragment({
|
|
86
|
+
maybeFragment: node,
|
|
87
|
+
tr: tr,
|
|
88
|
+
position: position,
|
|
89
|
+
selectInlineNode: Boolean(opts.selectInlineNode)
|
|
90
|
+
});
|
|
91
|
+
}
|
|
68
92
|
closeHistory(tr);
|
|
69
93
|
if (wasInsertedBySpace) {
|
|
70
94
|
return tr;
|
|
@@ -79,13 +103,13 @@ var createInsertCallback = function createInsertCallback(_ref2) {
|
|
|
79
103
|
return tr;
|
|
80
104
|
};
|
|
81
105
|
};
|
|
82
|
-
var createDeleteRawTextCallback = function createDeleteRawTextCallback(
|
|
83
|
-
var trigger =
|
|
84
|
-
selectedIndex =
|
|
85
|
-
position =
|
|
86
|
-
query =
|
|
87
|
-
wasInsertedBySpace =
|
|
88
|
-
insertItem =
|
|
106
|
+
var createDeleteRawTextCallback = function createDeleteRawTextCallback(_ref4) {
|
|
107
|
+
var trigger = _ref4.trigger,
|
|
108
|
+
selectedIndex = _ref4.selectedIndex,
|
|
109
|
+
position = _ref4.position,
|
|
110
|
+
query = _ref4.query,
|
|
111
|
+
wasInsertedBySpace = _ref4.wasInsertedBySpace,
|
|
112
|
+
insertItem = _ref4.insertItem;
|
|
89
113
|
return function (newState) {
|
|
90
114
|
var tr = newState.tr;
|
|
91
115
|
closeHistory(tr);
|
|
@@ -107,12 +131,12 @@ var createDeleteRawTextCallback = function createDeleteRawTextCallback(_ref3) {
|
|
|
107
131
|
};
|
|
108
132
|
};
|
|
109
133
|
export var insertTypeAheadItem = function insertTypeAheadItem(view) {
|
|
110
|
-
return function (
|
|
111
|
-
var item =
|
|
112
|
-
handler =
|
|
113
|
-
mode =
|
|
114
|
-
query =
|
|
115
|
-
sourceListItem =
|
|
134
|
+
return function (_ref5) {
|
|
135
|
+
var item = _ref5.item,
|
|
136
|
+
handler = _ref5.handler,
|
|
137
|
+
mode = _ref5.mode,
|
|
138
|
+
query = _ref5.query,
|
|
139
|
+
sourceListItem = _ref5.sourceListItem;
|
|
116
140
|
var pluginState = getPluginState(view.state);
|
|
117
141
|
if (!pluginState) {
|
|
118
142
|
return;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-type-ahead",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.5",
|
|
4
4
|
"description": "Type-ahead plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@atlaskit/adf-schema": "^40.9.0",
|
|
35
|
-
"@atlaskit/editor-common": "^88.
|
|
35
|
+
"@atlaskit/editor-common": "^88.12.0",
|
|
36
36
|
"@atlaskit/editor-plugin-analytics": "^1.8.0",
|
|
37
37
|
"@atlaskit/editor-prosemirror": "5.0.1",
|
|
38
38
|
"@atlaskit/editor-shared-styles": "^2.13.0",
|