@atlaskit/editor-core 187.9.2 → 187.10.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 +10 -0
- package/dist/cjs/commands/index.js +8 -134
- package/dist/cjs/plugins/base/index.js +2 -2
- package/dist/cjs/plugins/block-type/commands/block-type.js +34 -36
- package/dist/cjs/plugins/block-type/commands/transform-to-code-block.js +1 -2
- package/dist/cjs/plugins/block-type/index.js +16 -13
- package/dist/cjs/plugins/block-type/pm-plugins/input-rule.js +19 -18
- package/dist/cjs/plugins/block-type/pm-plugins/keymap.js +12 -14
- package/dist/cjs/plugins/block-type/pm-plugins/main.js +9 -9
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +7 -7
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/index.js +3 -4
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/styled.js +13 -5
- package/dist/cjs/plugins/block-type/utils.js +73 -2
- package/dist/cjs/plugins/caption/pm-plugins/keymap.js +2 -2
- package/dist/cjs/plugins/media/utils/media-common.js +5 -5
- package/dist/cjs/plugins/undo-redo/pm-plugins/keymaps.js +2 -2
- package/dist/cjs/ui/styles.js +4 -11
- package/dist/cjs/utils/index.js +4 -80
- package/dist/cjs/utils/input-rules.js +6 -66
- package/dist/cjs/utils/mark.js +2 -38
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/commands/index.js +1 -128
- package/dist/es2019/plugins/base/index.js +1 -1
- package/dist/es2019/plugins/block-type/commands/block-type.js +11 -13
- package/dist/es2019/plugins/block-type/commands/transform-to-code-block.js +1 -2
- package/dist/es2019/plugins/block-type/index.js +21 -12
- package/dist/es2019/plugins/block-type/pm-plugins/input-rule.js +18 -18
- package/dist/es2019/plugins/block-type/pm-plugins/keymap.js +8 -9
- package/dist/es2019/plugins/block-type/pm-plugins/main.js +9 -9
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +2 -2
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/index.js +2 -3
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/styled.js +21 -2
- package/dist/es2019/plugins/block-type/utils.js +70 -1
- package/dist/es2019/plugins/caption/pm-plugins/keymap.js +1 -1
- package/dist/es2019/plugins/media/utils/media-common.js +1 -1
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/keymaps.js +1 -1
- package/dist/es2019/plugins/undo-redo/pm-plugins/keymaps.js +1 -1
- package/dist/es2019/ui/styles.js +0 -16
- package/dist/es2019/utils/index.js +0 -80
- package/dist/es2019/utils/input-rules.js +4 -61
- package/dist/es2019/utils/mark.js +0 -33
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/commands/index.js +7 -125
- package/dist/esm/plugins/base/index.js +1 -1
- package/dist/esm/plugins/block-type/commands/block-type.js +11 -13
- package/dist/esm/plugins/block-type/commands/transform-to-code-block.js +1 -2
- package/dist/esm/plugins/block-type/index.js +15 -12
- package/dist/esm/plugins/block-type/pm-plugins/input-rule.js +18 -18
- package/dist/esm/plugins/block-type/pm-plugins/keymap.js +8 -9
- package/dist/esm/plugins/block-type/pm-plugins/main.js +9 -9
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +2 -2
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/index.js +2 -3
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/styled.js +8 -4
- package/dist/esm/plugins/block-type/utils.js +69 -1
- package/dist/esm/plugins/caption/pm-plugins/keymap.js +1 -1
- package/dist/esm/plugins/media/utils/media-common.js +1 -1
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/keymaps.js +1 -1
- package/dist/esm/plugins/undo-redo/pm-plugins/keymaps.js +1 -1
- package/dist/esm/ui/styles.js +3 -6
- package/dist/esm/utils/index.js +3 -77
- package/dist/esm/utils/input-rules.js +4 -61
- package/dist/esm/utils/mark.js +0 -35
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/commands/index.d.ts +0 -6
- package/dist/types/plugins/block-type/commands/block-type.d.ts +5 -6
- package/dist/types/plugins/block-type/commands/delete-and-move-cursor.d.ts +1 -1
- package/dist/types/plugins/block-type/commands/delete-block-content.d.ts +1 -1
- package/dist/types/plugins/block-type/index.d.ts +1 -1
- package/dist/types/plugins/block-type/pm-plugins/input-rule.d.ts +3 -2
- package/dist/types/plugins/block-type/pm-plugins/keymap.d.ts +2 -2
- package/dist/types/plugins/block-type/pm-plugins/main.d.ts +2 -1
- package/dist/types/plugins/block-type/styles.d.ts +1 -1
- package/dist/types/plugins/block-type/types.d.ts +2 -3
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/blocktype-button.d.ts +1 -2
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/index.d.ts +2 -2
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/styled.d.ts +5 -1
- package/dist/types/plugins/block-type/utils.d.ts +15 -1
- package/dist/types/plugins/undo-redo/pm-plugins/keymaps.d.ts +1 -1
- package/dist/types/types/index.d.ts +1 -1
- package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +1 -1
- package/dist/types/ui/ContentStyles/index.d.ts +2 -2
- package/dist/types/ui/styles.d.ts +0 -3
- package/dist/types/utils/index.d.ts +0 -6
- package/dist/types/utils/input-rules.d.ts +4 -16
- package/dist/types/utils/mark.d.ts +0 -1
- package/dist/types-ts4.5/commands/index.d.ts +0 -6
- package/dist/types-ts4.5/plugins/block-type/commands/block-type.d.ts +5 -6
- package/dist/types-ts4.5/plugins/block-type/commands/delete-and-move-cursor.d.ts +1 -1
- package/dist/types-ts4.5/plugins/block-type/commands/delete-block-content.d.ts +1 -1
- package/dist/types-ts4.5/plugins/block-type/index.d.ts +1 -1
- package/dist/types-ts4.5/plugins/block-type/pm-plugins/input-rule.d.ts +3 -2
- package/dist/types-ts4.5/plugins/block-type/pm-plugins/keymap.d.ts +2 -2
- package/dist/types-ts4.5/plugins/block-type/pm-plugins/main.d.ts +2 -1
- package/dist/types-ts4.5/plugins/block-type/styles.d.ts +1 -1
- package/dist/types-ts4.5/plugins/block-type/types.d.ts +2 -3
- package/dist/types-ts4.5/plugins/block-type/ui/ToolbarBlockType/blocktype-button.d.ts +1 -2
- package/dist/types-ts4.5/plugins/block-type/ui/ToolbarBlockType/index.d.ts +2 -2
- package/dist/types-ts4.5/plugins/block-type/ui/ToolbarBlockType/styled.d.ts +5 -1
- package/dist/types-ts4.5/plugins/block-type/utils.d.ts +15 -1
- package/dist/types-ts4.5/plugins/undo-redo/pm-plugins/keymaps.d.ts +1 -1
- package/dist/types-ts4.5/types/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/Appearance/FullPage/StyledComponents.d.ts +1 -1
- package/dist/types-ts4.5/ui/ContentStyles/index.d.ts +2 -2
- package/dist/types-ts4.5/ui/styles.d.ts +0 -3
- package/dist/types-ts4.5/utils/index.d.ts +0 -6
- package/dist/types-ts4.5/utils/input-rules.d.ts +4 -16
- package/dist/types-ts4.5/utils/mark.d.ts +0 -1
- package/package.json +4 -4
- package/report.api.md +6 -16
- package/tmp/api-report-tmp.d.ts +5 -16
- package/dist/cjs/types/allowed-block-types.js +0 -5
- package/dist/cjs/utils/keymap.js +0 -38
- package/dist/es2019/types/allowed-block-types.js +0 -1
- package/dist/es2019/utils/keymap.js +0 -33
- package/dist/esm/types/allowed-block-types.js +0 -1
- package/dist/esm/utils/keymap.js +0 -33
- package/dist/types/types/allowed-block-types.d.ts +0 -1
- package/dist/types/utils/keymap.d.ts +0 -11
- package/dist/types-ts4.5/types/allowed-block-types.d.ts +0 -1
- package/dist/types-ts4.5/utils/keymap.d.ts +0 -11
- /package/dist/cjs/{keymaps → plugins/block-type}/consts.js +0 -0
- /package/dist/es2019/{keymaps → plugins/block-type}/consts.js +0 -0
- /package/dist/esm/{keymaps → plugins/block-type}/consts.js +0 -0
- /package/dist/types/{keymaps → plugins/block-type}/consts.d.ts +0 -0
- /package/dist/types-ts4.5/{keymaps → plugins/block-type}/consts.d.ts +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @atlaskit/editor-core
|
|
2
2
|
|
|
3
|
+
## 187.10.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`1944b35b538`](https://bitbucket.org/atlassian/atlassian-frontend/commits/1944b35b538) - move common utilities to editor-common, to help with decoupling block-type plugin
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies
|
|
12
|
+
|
|
3
13
|
## 187.9.2
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
|
@@ -5,140 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.addParagraphAtEnd = addParagraphAtEnd;
|
|
8
|
-
exports.
|
|
8
|
+
exports.clearEditorContent = exports.changeImageAlignment = void 0;
|
|
9
9
|
exports.createParagraphAtEnd = createParagraphAtEnd;
|
|
10
|
-
exports.
|
|
11
|
-
exports.createToggleBlockMarkOnRange = void 0;
|
|
12
|
-
exports.insertNewLine = insertNewLine;
|
|
13
|
-
exports.insertNewLineWithAnalytics = void 0;
|
|
14
|
-
exports.preventDefault = preventDefault;
|
|
15
|
-
exports.toggleBlockMark = void 0;
|
|
10
|
+
exports.toggleBlockMark = exports.createToggleBlockMarkOnRange = void 0;
|
|
16
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
18
12
|
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
19
13
|
var _cellSelection = require("@atlaskit/editor-tables/cell-selection");
|
|
20
|
-
var _analytics = require("../plugins/analytics");
|
|
21
|
-
var _utils = require("../utils");
|
|
22
14
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
15
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
24
|
-
function preventDefault() {
|
|
25
|
-
return function () {
|
|
26
|
-
return true;
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
function insertNewLine() {
|
|
30
|
-
return function (state, dispatch) {
|
|
31
|
-
var $from = state.selection.$from;
|
|
32
|
-
var parent = $from.parent;
|
|
33
|
-
var hardBreak = state.schema.nodes.hardBreak;
|
|
34
|
-
if (hardBreak) {
|
|
35
|
-
var hardBreakNode = hardBreak.createChecked();
|
|
36
|
-
if (parent && parent.type.validContent(_model.Fragment.from(hardBreakNode))) {
|
|
37
|
-
if (dispatch) {
|
|
38
|
-
dispatch(state.tr.replaceSelectionWith(hardBreakNode, false));
|
|
39
|
-
}
|
|
40
|
-
return true;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
if (state.selection instanceof _state.TextSelection) {
|
|
44
|
-
if (dispatch) {
|
|
45
|
-
dispatch(state.tr.insertText('\n'));
|
|
46
|
-
}
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
return false;
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
var insertNewLineWithAnalytics = (0, _analytics.withAnalytics)({
|
|
53
|
-
action: _analytics.ACTION.INSERTED,
|
|
54
|
-
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
55
|
-
actionSubjectId: _analytics.ACTION_SUBJECT_ID.LINE_BREAK,
|
|
56
|
-
eventType: _analytics.EVENT_TYPE.TRACK
|
|
57
|
-
})(insertNewLine());
|
|
58
|
-
exports.insertNewLineWithAnalytics = insertNewLineWithAnalytics;
|
|
59
|
-
var createNewParagraphAbove = function createNewParagraphAbove(state, dispatch) {
|
|
60
|
-
var append = false;
|
|
61
|
-
if (!(0, _utils.canMoveUp)(state) && canCreateParagraphNear(state)) {
|
|
62
|
-
createParagraphNear(append)(state, dispatch);
|
|
63
|
-
return true;
|
|
64
|
-
}
|
|
65
|
-
return false;
|
|
66
|
-
};
|
|
67
|
-
exports.createNewParagraphAbove = createNewParagraphAbove;
|
|
68
|
-
var createNewParagraphBelow = function createNewParagraphBelow(state, dispatch) {
|
|
69
|
-
var append = true;
|
|
70
|
-
if (!(0, _utils.canMoveDown)(state) && canCreateParagraphNear(state)) {
|
|
71
|
-
createParagraphNear(append)(state, dispatch);
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
return false;
|
|
75
|
-
};
|
|
76
|
-
exports.createNewParagraphBelow = createNewParagraphBelow;
|
|
77
|
-
function canCreateParagraphNear(state) {
|
|
78
|
-
var $from = state.selection.$from;
|
|
79
|
-
var node = $from.node($from.depth);
|
|
80
|
-
var insideCodeBlock = !!node && node.type === state.schema.nodes.codeBlock;
|
|
81
|
-
var isNodeSelection = state.selection instanceof _state.NodeSelection;
|
|
82
|
-
return $from.depth > 1 || isNodeSelection || insideCodeBlock;
|
|
83
|
-
}
|
|
84
|
-
function createParagraphNear() {
|
|
85
|
-
var append = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
86
|
-
return function (state, dispatch) {
|
|
87
|
-
var paragraph = state.schema.nodes.paragraph;
|
|
88
|
-
if (!paragraph) {
|
|
89
|
-
return false;
|
|
90
|
-
}
|
|
91
|
-
var insertPos;
|
|
92
|
-
if (state.selection instanceof _state.TextSelection) {
|
|
93
|
-
if (topLevelNodeIsEmptyTextBlock(state)) {
|
|
94
|
-
return false;
|
|
95
|
-
}
|
|
96
|
-
insertPos = getInsertPosFromTextBlock(state, append);
|
|
97
|
-
} else {
|
|
98
|
-
insertPos = getInsertPosFromNonTextBlock(state, append);
|
|
99
|
-
}
|
|
100
|
-
var tr = state.tr.insert(insertPos, paragraph.createAndFill());
|
|
101
|
-
tr.setSelection(_state.TextSelection.create(tr.doc, insertPos + 1));
|
|
102
|
-
if (dispatch) {
|
|
103
|
-
dispatch(tr);
|
|
104
|
-
}
|
|
105
|
-
return true;
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
function getInsertPosFromTextBlock(state, append) {
|
|
109
|
-
var _state$selection = state.selection,
|
|
110
|
-
$from = _state$selection.$from,
|
|
111
|
-
$to = _state$selection.$to;
|
|
112
|
-
var pos;
|
|
113
|
-
if (!append) {
|
|
114
|
-
pos = $from.start(0);
|
|
115
|
-
} else {
|
|
116
|
-
pos = $to.end(0);
|
|
117
|
-
}
|
|
118
|
-
return pos;
|
|
119
|
-
}
|
|
120
|
-
function getInsertPosFromNonTextBlock(state, append) {
|
|
121
|
-
var _state$selection2 = state.selection,
|
|
122
|
-
$from = _state$selection2.$from,
|
|
123
|
-
$to = _state$selection2.$to;
|
|
124
|
-
var nodeAtSelection = state.selection instanceof _state.NodeSelection && state.doc.nodeAt(state.selection.$anchor.pos);
|
|
125
|
-
var isMediaSelection = nodeAtSelection && nodeAtSelection.type.name === 'mediaGroup';
|
|
126
|
-
var pos;
|
|
127
|
-
if (!append) {
|
|
128
|
-
// The start position is different with text block because it starts from 0
|
|
129
|
-
pos = $from.start($from.depth);
|
|
130
|
-
// The depth is different with text block because it starts from 0
|
|
131
|
-
pos = $from.depth > 0 && !isMediaSelection ? pos - 1 : pos;
|
|
132
|
-
} else {
|
|
133
|
-
pos = $to.end($to.depth);
|
|
134
|
-
pos = $to.depth > 0 && !isMediaSelection ? pos + 1 : pos;
|
|
135
|
-
}
|
|
136
|
-
return pos;
|
|
137
|
-
}
|
|
138
|
-
function topLevelNodeIsEmptyTextBlock(state) {
|
|
139
|
-
var topLevelNode = state.selection.$from.node(1);
|
|
140
|
-
return topLevelNode.isTextblock && topLevelNode.type !== state.schema.nodes.codeBlock && topLevelNode.nodeSize === 2;
|
|
141
|
-
}
|
|
142
16
|
function addParagraphAtEnd(tr) {
|
|
143
17
|
var paragraph = tr.doc.type.schema.nodes.paragraph,
|
|
144
18
|
doc = tr.doc;
|
|
@@ -162,9 +36,9 @@ function createParagraphAtEnd() {
|
|
|
162
36
|
}
|
|
163
37
|
var changeImageAlignment = function changeImageAlignment(align) {
|
|
164
38
|
return function (state, dispatch) {
|
|
165
|
-
var _state$
|
|
166
|
-
from = _state$
|
|
167
|
-
to = _state$
|
|
39
|
+
var _state$selection = state.selection,
|
|
40
|
+
from = _state$selection.from,
|
|
41
|
+
to = _state$selection.to;
|
|
168
42
|
var tr = state.tr;
|
|
169
43
|
state.doc.nodesBetween(from, to, function (node, pos) {
|
|
170
44
|
if (node.type === state.schema.nodes.mediaSingle) {
|
|
@@ -225,9 +99,9 @@ var toggleBlockMark = function toggleBlockMark(markType, getAttrs, allowedBlocks
|
|
|
225
99
|
markApplied = toggleBlockMarkOnRange(pos, pos + cell.nodeSize, tr, state);
|
|
226
100
|
});
|
|
227
101
|
} else {
|
|
228
|
-
var _state$
|
|
229
|
-
from = _state$
|
|
230
|
-
to = _state$
|
|
102
|
+
var _state$selection2 = state.selection,
|
|
103
|
+
from = _state$selection2.from,
|
|
104
|
+
to = _state$selection2.to;
|
|
231
105
|
markApplied = toggleBlockMarkOnRange(from, to, tr, state);
|
|
232
106
|
}
|
|
233
107
|
if (markApplied && tr.docChanged) {
|
|
@@ -19,7 +19,7 @@ var _newlinePreserveMarks = _interopRequireDefault(require("./pm-plugins/newline
|
|
|
19
19
|
var _inlineCursorTarget = _interopRequireDefault(require("./pm-plugins/inline-cursor-target"));
|
|
20
20
|
var _betterTypeHistory = _interopRequireDefault(require("./pm-plugins/better-type-history"));
|
|
21
21
|
var _scrollGutter = _interopRequireDefault(require("./pm-plugins/scroll-gutter"));
|
|
22
|
-
var
|
|
22
|
+
var _keymaps = require("@atlaskit/editor-common/keymaps");
|
|
23
23
|
var _frozenEditor = _interopRequireDefault(require("./pm-plugins/frozen-editor"));
|
|
24
24
|
var _composition = _interopRequireDefault(require("./pm-plugins/composition"));
|
|
25
25
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -81,7 +81,7 @@ var basePlugin = function basePlugin(options, api) {
|
|
|
81
81
|
{
|
|
82
82
|
name: 'codeBlockIndent',
|
|
83
83
|
plugin: function plugin() {
|
|
84
|
-
return (0,
|
|
84
|
+
return (0, _keymaps.keymap)(_objectSpread(_objectSpread({}, _commands.baseKeymap), {}, {
|
|
85
85
|
'Mod-[': function Mod() {
|
|
86
86
|
return true;
|
|
87
87
|
},
|
|
@@ -16,15 +16,13 @@ exports.setNormalText = setNormalText;
|
|
|
16
16
|
exports.setNormalTextWithAnalytics = setNormalTextWithAnalytics;
|
|
17
17
|
var _transform = require("@atlaskit/editor-prosemirror/transform");
|
|
18
18
|
var _utils = require("@atlaskit/editor-prosemirror/utils");
|
|
19
|
-
var _types = require("../types");
|
|
20
|
-
var _mark = require("../../../utils/mark");
|
|
21
|
-
var _insert = require("@atlaskit/editor-common/insert");
|
|
22
|
-
var _analytics = require("../../analytics");
|
|
23
|
-
var _analytics2 = require("@atlaskit/editor-common/analytics");
|
|
24
|
-
var _editorAnalytics = require("@atlaskit/editor-common/editor-analytics");
|
|
25
|
-
var _mark2 = require("@atlaskit/editor-common/mark");
|
|
26
19
|
var _adfSchema = require("@atlaskit/adf-schema");
|
|
27
20
|
var _editorTables = require("@atlaskit/editor-tables");
|
|
21
|
+
var _insert = require("@atlaskit/editor-common/insert");
|
|
22
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
23
|
+
var _editorAnalytics = require("@atlaskit/editor-common/editor-analytics");
|
|
24
|
+
var _utils2 = require("@atlaskit/editor-common/utils");
|
|
25
|
+
var _types = require("../types");
|
|
28
26
|
var _transformToCodeBlock = require("./transform-to-code-block");
|
|
29
27
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
30
28
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -42,15 +40,15 @@ function setBlockType(name) {
|
|
|
42
40
|
return false;
|
|
43
41
|
};
|
|
44
42
|
}
|
|
45
|
-
function setBlockTypeWithAnalytics(name, inputMethod) {
|
|
43
|
+
function setBlockTypeWithAnalytics(name, inputMethod, editorAnalyticsApi) {
|
|
46
44
|
return function (state, dispatch) {
|
|
47
45
|
var nodes = state.schema.nodes;
|
|
48
46
|
if (name === _types.NORMAL_TEXT.name && nodes.paragraph) {
|
|
49
|
-
return setNormalTextWithAnalytics(inputMethod)(state, dispatch);
|
|
47
|
+
return setNormalTextWithAnalytics(inputMethod, editorAnalyticsApi)(state, dispatch);
|
|
50
48
|
}
|
|
51
49
|
var headingBlockType = _types.HEADINGS_BY_NAME[name];
|
|
52
50
|
if (headingBlockType && nodes.heading && headingBlockType.level) {
|
|
53
|
-
return setHeadingWithAnalytics(headingBlockType.level, inputMethod)(state, dispatch);
|
|
51
|
+
return setHeadingWithAnalytics(headingBlockType.level, inputMethod, editorAnalyticsApi)(state, dispatch);
|
|
54
52
|
}
|
|
55
53
|
return false;
|
|
56
54
|
};
|
|
@@ -78,7 +76,7 @@ function withCurrentHeadingLevel(fn) {
|
|
|
78
76
|
var _state$schema$nodes = state.schema.nodes,
|
|
79
77
|
heading = _state$schema$nodes.heading,
|
|
80
78
|
paragraph = _state$schema$nodes.paragraph;
|
|
81
|
-
var nodes = (0,
|
|
79
|
+
var nodes = (0, _utils2.filterChildrenBetween)(state.doc, state.selection.from, state.selection.to, function (node) {
|
|
82
80
|
return node.type === heading || node.type === paragraph;
|
|
83
81
|
});
|
|
84
82
|
|
|
@@ -106,13 +104,13 @@ function withCurrentHeadingLevel(fn) {
|
|
|
106
104
|
return fn(level)(state, dispatch, view);
|
|
107
105
|
};
|
|
108
106
|
}
|
|
109
|
-
function setNormalTextWithAnalytics(inputMethod) {
|
|
107
|
+
function setNormalTextWithAnalytics(inputMethod, editorAnalyticsApi) {
|
|
110
108
|
return withCurrentHeadingLevel(function (previousHeadingLevel) {
|
|
111
|
-
return (0,
|
|
112
|
-
action:
|
|
113
|
-
actionSubject:
|
|
114
|
-
eventType:
|
|
115
|
-
actionSubjectId:
|
|
109
|
+
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsApi, {
|
|
110
|
+
action: _analytics.ACTION.FORMATTED,
|
|
111
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
112
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
113
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_HEADING,
|
|
116
114
|
attributes: {
|
|
117
115
|
inputMethod: inputMethod,
|
|
118
116
|
newHeadingLevel: 0,
|
|
@@ -140,13 +138,13 @@ function setHeading(level) {
|
|
|
140
138
|
return true;
|
|
141
139
|
};
|
|
142
140
|
}
|
|
143
|
-
var setHeadingWithAnalytics = function setHeadingWithAnalytics(newHeadingLevel, inputMethod) {
|
|
141
|
+
var setHeadingWithAnalytics = function setHeadingWithAnalytics(newHeadingLevel, inputMethod, editorAnalyticsApi) {
|
|
144
142
|
return withCurrentHeadingLevel(function (previousHeadingLevel) {
|
|
145
|
-
return (0,
|
|
146
|
-
action:
|
|
147
|
-
actionSubject:
|
|
148
|
-
eventType:
|
|
149
|
-
actionSubjectId:
|
|
143
|
+
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsApi, {
|
|
144
|
+
action: _analytics.ACTION.FORMATTED,
|
|
145
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
146
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
147
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_HEADING,
|
|
150
148
|
attributes: {
|
|
151
149
|
inputMethod: inputMethod,
|
|
152
150
|
newHeadingLevel: newHeadingLevel,
|
|
@@ -192,35 +190,35 @@ var insertBlockTypesWithAnalytics = function insertBlockTypesWithAnalytics(name,
|
|
|
192
190
|
switch (name) {
|
|
193
191
|
case _types.BLOCK_QUOTE.name:
|
|
194
192
|
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsApi, {
|
|
195
|
-
action:
|
|
196
|
-
actionSubject:
|
|
197
|
-
eventType:
|
|
198
|
-
actionSubjectId:
|
|
193
|
+
action: _analytics.ACTION.FORMATTED,
|
|
194
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
195
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
196
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_BLOCK_QUOTE,
|
|
199
197
|
attributes: {
|
|
200
198
|
inputMethod: inputMethod
|
|
201
199
|
}
|
|
202
200
|
})(insertBlockType(name));
|
|
203
201
|
case _types.CODE_BLOCK.name:
|
|
204
202
|
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsApi, {
|
|
205
|
-
action:
|
|
206
|
-
actionSubject:
|
|
207
|
-
actionSubjectId:
|
|
203
|
+
action: _analytics.ACTION.INSERTED,
|
|
204
|
+
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
205
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.CODE_BLOCK,
|
|
208
206
|
attributes: {
|
|
209
207
|
inputMethod: inputMethod
|
|
210
208
|
},
|
|
211
|
-
eventType:
|
|
209
|
+
eventType: _analytics.EVENT_TYPE.TRACK
|
|
212
210
|
})(insertBlockType(name));
|
|
213
211
|
case _types.PANEL.name:
|
|
214
212
|
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsApi, {
|
|
215
|
-
action:
|
|
216
|
-
actionSubject:
|
|
217
|
-
actionSubjectId:
|
|
213
|
+
action: _analytics.ACTION.INSERTED,
|
|
214
|
+
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
215
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.PANEL,
|
|
218
216
|
attributes: {
|
|
219
217
|
inputMethod: inputMethod,
|
|
220
218
|
panelType: _adfSchema.PanelType.INFO // only info panels can be inserted from toolbar
|
|
221
219
|
},
|
|
222
220
|
|
|
223
|
-
eventType:
|
|
221
|
+
eventType: _analytics.EVENT_TYPE.TRACK
|
|
224
222
|
})(insertBlockType(name));
|
|
225
223
|
default:
|
|
226
224
|
return insertBlockType(name);
|
|
@@ -249,7 +247,7 @@ function createWrapSelectionTransaction(_ref3) {
|
|
|
249
247
|
indentation = _state$schema$marks.indentation;
|
|
250
248
|
|
|
251
249
|
/** Alignment or Indentation is not valid inside block types */
|
|
252
|
-
var removeAlignTr = (0,
|
|
250
|
+
var removeAlignTr = (0, _utils2.removeBlockMarks)(state, [alignment, indentation]);
|
|
253
251
|
tr = removeAlignTr || tr;
|
|
254
252
|
var range = $from.blockRange($to);
|
|
255
253
|
var wrapping = range && (0, _transform.findWrapping)(range, type, nodeAttributes);
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.isConvertableToCodeBlock = isConvertableToCodeBlock;
|
|
7
7
|
exports.transformToCodeBlockAction = transformToCodeBlockAction;
|
|
8
8
|
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
9
|
-
var _slice = require("../../../utils/slice");
|
|
10
9
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
11
10
|
var _utils = require("@atlaskit/editor-common/utils");
|
|
12
11
|
function transformToCodeBlockAction(state, start, attrs) {
|
|
@@ -16,7 +15,7 @@ function transformToCodeBlockAction(state, start, attrs) {
|
|
|
16
15
|
//when cmd+A is used to select the content. start position should be 0.
|
|
17
16
|
var parentStartPosition = startOfCodeBlockText.depth === 0 ? 0 : startOfCodeBlockText.before();
|
|
18
17
|
var contentSlice = state.doc.slice(startOfCodeBlockText.pos, endPosition);
|
|
19
|
-
var codeBlockSlice = (0,
|
|
18
|
+
var codeBlockSlice = (0, _utils.mapSlice)(contentSlice, function (node, parent, index) {
|
|
20
19
|
if (node.type === state.schema.nodes.hardBreak) {
|
|
21
20
|
return state.schema.text('\n');
|
|
22
21
|
}
|
|
@@ -15,17 +15,17 @@ Object.defineProperty(exports, "pluginKey", {
|
|
|
15
15
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
16
16
|
var _react = _interopRequireDefault(require("react"));
|
|
17
17
|
var _adfSchema = require("@atlaskit/adf-schema");
|
|
18
|
+
var _types = require("@atlaskit/editor-common/types");
|
|
19
|
+
var _withPluginState = require("@atlaskit/editor-common/with-plugin-state");
|
|
20
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
21
|
+
var _quickInsert = require("@atlaskit/editor-common/quick-insert");
|
|
22
|
+
var keymaps = _interopRequireWildcard(require("@atlaskit/editor-common/keymaps"));
|
|
18
23
|
var _main = require("./pm-plugins/main");
|
|
19
24
|
var _keymap = _interopRequireDefault(require("./pm-plugins/keymap"));
|
|
20
25
|
var _inputRule = _interopRequireDefault(require("./pm-plugins/input-rule"));
|
|
21
26
|
var _ToolbarBlockType = _interopRequireDefault(require("./ui/ToolbarBlockType"));
|
|
22
|
-
var _WithPluginState = _interopRequireDefault(require("../../ui/WithPluginState"));
|
|
23
27
|
var _commands = require("./commands");
|
|
24
|
-
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
25
|
-
var keymaps = _interopRequireWildcard(require("../../keymaps"));
|
|
26
|
-
var _quickInsert = require("@atlaskit/editor-common/quick-insert");
|
|
27
28
|
var _messages = require("./messages");
|
|
28
|
-
var _types = require("../../ui/Toolbar/types");
|
|
29
29
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
30
30
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
31
|
var headingPluginOptions = function headingPluginOptions(_ref, isAllowed, editorAnalyticsApi) {
|
|
@@ -126,15 +126,17 @@ var blockTypePlugin = function blockTypePlugin(options, api) {
|
|
|
126
126
|
return [{
|
|
127
127
|
name: 'blockType',
|
|
128
128
|
plugin: function plugin(_ref3) {
|
|
129
|
+
var _api$dependencies$ana;
|
|
129
130
|
var dispatch = _ref3.dispatch;
|
|
130
|
-
return (0, _main.createPlugin)(dispatch, options && options.lastNodeMustBeParagraph);
|
|
131
|
+
return (0, _main.createPlugin)(api === null || api === void 0 ? void 0 : (_api$dependencies$ana = api.dependencies.analytics) === null || _api$dependencies$ana === void 0 ? void 0 : _api$dependencies$ana.actions, dispatch, options && options.lastNodeMustBeParagraph);
|
|
131
132
|
}
|
|
132
133
|
}, {
|
|
133
134
|
name: 'blockTypeInputRule',
|
|
134
135
|
plugin: function plugin(_ref4) {
|
|
136
|
+
var _api$dependencies$ana2;
|
|
135
137
|
var schema = _ref4.schema,
|
|
136
138
|
featureFlags = _ref4.featureFlags;
|
|
137
|
-
return (0, _inputRule.default)(schema, featureFlags);
|
|
139
|
+
return (0, _inputRule.default)(api === null || api === void 0 ? void 0 : (_api$dependencies$ana2 = api.dependencies.analytics) === null || _api$dependencies$ana2 === void 0 ? void 0 : _api$dependencies$ana2.actions, schema, featureFlags);
|
|
138
140
|
}
|
|
139
141
|
},
|
|
140
142
|
// Needs to be lower priority than editor-tables.tableEditing
|
|
@@ -142,10 +144,10 @@ var blockTypePlugin = function blockTypePlugin(options, api) {
|
|
|
142
144
|
{
|
|
143
145
|
name: 'blockTypeKeyMap',
|
|
144
146
|
plugin: function plugin(_ref5) {
|
|
145
|
-
var _api$dependencies$
|
|
147
|
+
var _api$dependencies$ana3;
|
|
146
148
|
var schema = _ref5.schema,
|
|
147
149
|
featureFlags = _ref5.featureFlags;
|
|
148
|
-
return (0, _keymap.default)(
|
|
150
|
+
return (0, _keymap.default)(api === null || api === void 0 ? void 0 : (_api$dependencies$ana3 = api.dependencies.analytics) === null || _api$dependencies$ana3 === void 0 ? void 0 : _api$dependencies$ana3.actions, schema, featureFlags);
|
|
149
151
|
}
|
|
150
152
|
}];
|
|
151
153
|
},
|
|
@@ -160,9 +162,10 @@ var blockTypePlugin = function blockTypePlugin(options, api) {
|
|
|
160
162
|
eventDispatcher = _ref6.eventDispatcher;
|
|
161
163
|
var isSmall = options && options.isUndoRedoButtonsEnabled ? toolbarSize < _types.ToolbarSize.XXL : toolbarSize < _types.ToolbarSize.XL;
|
|
162
164
|
var boundSetBlockType = function boundSetBlockType(name) {
|
|
163
|
-
|
|
165
|
+
var _api$dependencies$ana4;
|
|
166
|
+
return (0, _commands.setBlockTypeWithAnalytics)(name, _analytics.INPUT_METHOD.TOOLBAR, api === null || api === void 0 ? void 0 : (_api$dependencies$ana4 = api.dependencies.analytics) === null || _api$dependencies$ana4 === void 0 ? void 0 : _api$dependencies$ana4.actions)(editorView.state, editorView.dispatch);
|
|
164
167
|
};
|
|
165
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
168
|
+
return /*#__PURE__*/_react.default.createElement(_withPluginState.WithPluginState, {
|
|
166
169
|
editorView: editorView,
|
|
167
170
|
eventDispatcher: eventDispatcher,
|
|
168
171
|
plugins: {
|
|
@@ -185,9 +188,9 @@ var blockTypePlugin = function blockTypePlugin(options, api) {
|
|
|
185
188
|
},
|
|
186
189
|
pluginsOptions: {
|
|
187
190
|
quickInsert: function quickInsert(intl) {
|
|
188
|
-
var _api$dependencies$
|
|
191
|
+
var _api$dependencies$ana5, _api$dependencies$ana6;
|
|
189
192
|
var exclude = options && options.allowBlockType && options.allowBlockType.exclude ? options.allowBlockType.exclude : [];
|
|
190
|
-
return [].concat((0, _toConsumableArray2.default)(blockquotePluginOptions(intl, exclude.indexOf('blockquote') === -1, api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
193
|
+
return [].concat((0, _toConsumableArray2.default)(blockquotePluginOptions(intl, exclude.indexOf('blockquote') === -1, api === null || api === void 0 ? void 0 : (_api$dependencies$ana5 = api.dependencies.analytics) === null || _api$dependencies$ana5 === void 0 ? void 0 : _api$dependencies$ana5.actions)), (0, _toConsumableArray2.default)(headingPluginOptions(intl, exclude.indexOf('heading') === -1, api === null || api === void 0 ? void 0 : (_api$dependencies$ana6 = api.dependencies.analytics) === null || _api$dependencies$ana6 === void 0 ? void 0 : _api$dependencies$ana6.actions)));
|
|
191
194
|
}
|
|
192
195
|
}
|
|
193
196
|
};
|
|
@@ -6,12 +6,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
-
var
|
|
9
|
+
var _utils = require("@atlaskit/editor-prosemirror/utils");
|
|
10
10
|
var _prosemirrorInputRules = require("@atlaskit/prosemirror-input-rules");
|
|
11
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
12
|
+
var _utils2 = require("@atlaskit/editor-common/utils");
|
|
11
13
|
var _transformToCodeBlock = require("../commands/transform-to-code-block");
|
|
12
14
|
var _insertBlock = require("../commands/insert-block");
|
|
13
|
-
var
|
|
14
|
-
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
15
|
+
var _utils3 = require("../utils");
|
|
15
16
|
var MAX_HEADING_LEVEL = 6;
|
|
16
17
|
function getHeadingLevel(match) {
|
|
17
18
|
return {
|
|
@@ -19,14 +20,14 @@ function getHeadingLevel(match) {
|
|
|
19
20
|
};
|
|
20
21
|
}
|
|
21
22
|
function headingRule(nodeType, maxLevel) {
|
|
22
|
-
return (0,
|
|
23
|
+
return (0, _utils3.createWrappingTextBlockRule)({
|
|
23
24
|
match: new RegExp('^(#{1,' + maxLevel + '})\\s$'),
|
|
24
25
|
nodeType: nodeType,
|
|
25
26
|
getAttrs: getHeadingLevel
|
|
26
27
|
});
|
|
27
28
|
}
|
|
28
29
|
function blockQuoteRule(nodeType) {
|
|
29
|
-
return (0,
|
|
30
|
+
return (0, _utils3.createJoinNodesRule)(/^\s*>\s$/, nodeType);
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
/**
|
|
@@ -35,7 +36,7 @@ function blockQuoteRule(nodeType) {
|
|
|
35
36
|
* @param {Schema} schema
|
|
36
37
|
* @returns {InputRuleWithHandler[]}
|
|
37
38
|
*/
|
|
38
|
-
function getHeadingRules(schema) {
|
|
39
|
+
function getHeadingRules(editorAnalyticsAPI, schema) {
|
|
39
40
|
// '# ' for h1, '## ' for h2 and etc
|
|
40
41
|
var hashRule = headingRule(schema.nodes.heading, MAX_HEADING_LEVEL);
|
|
41
42
|
var leftNodeReplacementHashRule = (0, _prosemirrorInputRules.createRule)(new RegExp("".concat(_prosemirrorInputRules.leafNodeReplacementCharacter, "(#{1,6})\\s$")), function (state, match, start, end) {
|
|
@@ -46,7 +47,7 @@ function getHeadingRules(schema) {
|
|
|
46
47
|
});
|
|
47
48
|
|
|
48
49
|
// New analytics handler
|
|
49
|
-
var ruleWithHeadingAnalytics = (0,
|
|
50
|
+
var ruleWithHeadingAnalytics = (0, _utils2.inputRuleWithAnalytics)(function (_state, matchResult) {
|
|
50
51
|
return {
|
|
51
52
|
action: _analytics.ACTION.FORMATTED,
|
|
52
53
|
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
@@ -57,7 +58,7 @@ function getHeadingRules(schema) {
|
|
|
57
58
|
newHeadingLevel: getHeadingLevel(matchResult).level
|
|
58
59
|
}
|
|
59
60
|
};
|
|
60
|
-
});
|
|
61
|
+
}, editorAnalyticsAPI);
|
|
61
62
|
return [ruleWithHeadingAnalytics(hashRule), ruleWithHeadingAnalytics(leftNodeReplacementHashRule)];
|
|
62
63
|
}
|
|
63
64
|
|
|
@@ -67,7 +68,7 @@ function getHeadingRules(schema) {
|
|
|
67
68
|
* @param {Schema} schema
|
|
68
69
|
* @returns {InputRuleWithHandler[]}
|
|
69
70
|
*/
|
|
70
|
-
function getBlockQuoteRules(schema) {
|
|
71
|
+
function getBlockQuoteRules(editorAnalyticsAPI, schema) {
|
|
71
72
|
// '> ' for blockquote
|
|
72
73
|
var greatherThanRule = blockQuoteRule(schema.nodes.blockquote);
|
|
73
74
|
var leftNodeReplacementGreatherRule = (0, _prosemirrorInputRules.createRule)(new RegExp("".concat(_prosemirrorInputRules.leafNodeReplacementCharacter, "\\s*>\\s$")), function (state, _match, start, end) {
|
|
@@ -75,7 +76,7 @@ function getBlockQuoteRules(schema) {
|
|
|
75
76
|
});
|
|
76
77
|
|
|
77
78
|
// Analytics V3 handler
|
|
78
|
-
var ruleWithBlockQuoteAnalytics = (0,
|
|
79
|
+
var ruleWithBlockQuoteAnalytics = (0, _utils2.inputRuleWithAnalytics)({
|
|
79
80
|
action: _analytics.ACTION.FORMATTED,
|
|
80
81
|
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
81
82
|
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
@@ -83,7 +84,7 @@ function getBlockQuoteRules(schema) {
|
|
|
83
84
|
attributes: {
|
|
84
85
|
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
85
86
|
}
|
|
86
|
-
});
|
|
87
|
+
}, editorAnalyticsAPI);
|
|
87
88
|
return [ruleWithBlockQuoteAnalytics(greatherThanRule), ruleWithBlockQuoteAnalytics(leftNodeReplacementGreatherRule)];
|
|
88
89
|
}
|
|
89
90
|
|
|
@@ -93,8 +94,8 @@ function getBlockQuoteRules(schema) {
|
|
|
93
94
|
* @param {Schema} schema
|
|
94
95
|
* @returns {InputRuleWithHandler[]}
|
|
95
96
|
*/
|
|
96
|
-
function getCodeBlockRules(schema) {
|
|
97
|
-
var ruleAnalytics = (0,
|
|
97
|
+
function getCodeBlockRules(editorAnalyticsAPI, schema) {
|
|
98
|
+
var ruleAnalytics = (0, _utils2.inputRuleWithAnalytics)({
|
|
98
99
|
action: _analytics.ACTION.INSERTED,
|
|
99
100
|
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
100
101
|
actionSubjectId: _analytics.ACTION_SUBJECT_ID.CODE_BLOCK,
|
|
@@ -102,7 +103,7 @@ function getCodeBlockRules(schema) {
|
|
|
102
103
|
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
103
104
|
},
|
|
104
105
|
eventType: _analytics.EVENT_TYPE.TRACK
|
|
105
|
-
});
|
|
106
|
+
}, editorAnalyticsAPI);
|
|
106
107
|
var validMatchLength = function validMatchLength(match) {
|
|
107
108
|
return match.length > 0 && match[0].length === 3;
|
|
108
109
|
};
|
|
@@ -136,16 +137,16 @@ function getCodeBlockRules(schema) {
|
|
|
136
137
|
});
|
|
137
138
|
return [ruleAnalytics(threeTildeRule), ruleAnalytics(leftNodeReplacementThreeTildeRule)];
|
|
138
139
|
}
|
|
139
|
-
function inputRulePlugin(schema, featureFlags) {
|
|
140
|
+
function inputRulePlugin(editorAnalyticsAPI, schema, featureFlags) {
|
|
140
141
|
var rules = [];
|
|
141
142
|
if (schema.nodes.heading) {
|
|
142
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getHeadingRules(schema)));
|
|
143
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getHeadingRules(editorAnalyticsAPI, schema)));
|
|
143
144
|
}
|
|
144
145
|
if (schema.nodes.blockquote) {
|
|
145
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getBlockQuoteRules(schema)));
|
|
146
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getBlockQuoteRules(editorAnalyticsAPI, schema)));
|
|
146
147
|
}
|
|
147
148
|
if (schema.nodes.codeBlock) {
|
|
148
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getCodeBlockRules(schema)));
|
|
149
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getCodeBlockRules(editorAnalyticsAPI, schema)));
|
|
149
150
|
}
|
|
150
151
|
if (rules.length !== 0) {
|
|
151
152
|
return (0, _prosemirrorInputRules.createPlugin)('block-type', rules, {
|
|
@@ -7,30 +7,28 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = keymapPlugin;
|
|
8
8
|
var _history = require("@atlaskit/editor-prosemirror/history");
|
|
9
9
|
var _commands = require("@atlaskit/editor-prosemirror/commands");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var blockTypes = _interopRequireWildcard(require("../types"));
|
|
13
|
-
var _keymap = require("../../../utils/keymap");
|
|
14
|
-
var _commands3 = require("../commands");
|
|
10
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
11
|
+
var keymaps = _interopRequireWildcard(require("@atlaskit/editor-common/keymaps"));
|
|
15
12
|
var _utils = require("@atlaskit/editor-common/utils");
|
|
16
|
-
var
|
|
13
|
+
var blockTypes = _interopRequireWildcard(require("../types"));
|
|
14
|
+
var _commands2 = require("../commands");
|
|
17
15
|
var _utils2 = require("../utils");
|
|
18
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
17
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
-
var backspace = (0, _commands.chainCommands)(
|
|
21
|
-
var del = (0, _commands.chainCommands)((0, _utils.deleteEmptyParagraphAndMoveBlockUp)(_utils2.isNodeAWrappingBlockNode), (0,
|
|
22
|
-
function keymapPlugin(
|
|
18
|
+
var backspace = (0, _commands.chainCommands)(_commands2.cleanUpAtTheStartOfDocument, (0, _commands2.deleteBlockContent)(_utils2.isNodeAWrappingBlockNode), _commands2.deleteAndMoveCursor);
|
|
19
|
+
var del = (0, _commands.chainCommands)((0, _utils.deleteEmptyParagraphAndMoveBlockUp)(_utils2.isNodeAWrappingBlockNode), (0, _commands2.deleteBlockContent)(_utils2.isNodeAWrappingBlockNode), _commands2.deleteAndMoveCursor);
|
|
20
|
+
function keymapPlugin(editorAnalyticsApi, schema, _featureFlags) {
|
|
23
21
|
var list = {};
|
|
24
|
-
keymaps.bindKeymapWithCommand(keymaps.insertNewLine.common,
|
|
25
|
-
keymaps.bindKeymapWithCommand(keymaps.moveUp.common,
|
|
26
|
-
keymaps.bindKeymapWithCommand(keymaps.moveDown.common,
|
|
22
|
+
keymaps.bindKeymapWithCommand(keymaps.insertNewLine.common, (0, _utils.insertNewLineWithAnalytics)(editorAnalyticsApi), list);
|
|
23
|
+
keymaps.bindKeymapWithCommand(keymaps.moveUp.common, _utils.createNewParagraphAbove, list);
|
|
24
|
+
keymaps.bindKeymapWithCommand(keymaps.moveDown.common, _utils.createNewParagraphBelow, list);
|
|
27
25
|
keymaps.bindKeymapWithCommand(keymaps.findKeyMapForBrowser(keymaps.redo), _history.redo, list);
|
|
28
26
|
keymaps.bindKeymapWithCommand(keymaps.undo.common, _history.undo, list);
|
|
29
27
|
keymaps.bindKeymapWithCommand(keymaps.backspace.common, backspace, list);
|
|
30
28
|
keymaps.bindKeymapWithCommand(keymaps.deleteKey.common, del, list);
|
|
31
29
|
keymaps.bindKeymapWithCommand(keymaps.forwardDelete.mac, del, list);
|
|
32
30
|
if (schema.nodes[blockTypes.BLOCK_QUOTE.nodeName]) {
|
|
33
|
-
keymaps.bindKeymapWithCommand(keymaps.findShortcutByKeymap(keymaps.toggleBlockQuote), (0,
|
|
31
|
+
keymaps.bindKeymapWithCommand(keymaps.findShortcutByKeymap(keymaps.toggleBlockQuote), (0, _commands2.insertBlockTypesWithAnalytics)(blockTypes.BLOCK_QUOTE.name, _analytics.INPUT_METHOD.KEYBOARD, editorAnalyticsApi), list);
|
|
34
32
|
}
|
|
35
|
-
return (0,
|
|
33
|
+
return (0, keymaps.keymap)(list);
|
|
36
34
|
}
|