@atlaskit/editor-core 187.8.10 → 187.8.13
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 +13 -0
- package/dist/cjs/plugins/text-formatting/index.js +23 -21
- package/dist/cjs/plugins/text-formatting/pm-plugins/input-rule.js +48 -54
- package/dist/cjs/plugins/text-formatting/pm-plugins/smart-input-rule.js +28 -33
- package/dist/cjs/ui/ElementBrowser/components/ElementSearch.js +5 -3
- package/dist/cjs/ui/ElementBrowser/components/StatelessElementBrowser.js +8 -6
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/plugins/text-formatting/index.js +15 -10
- package/dist/es2019/plugins/text-formatting/pm-plugins/input-rule.js +20 -18
- package/dist/es2019/plugins/text-formatting/pm-plugins/smart-input-rule.js +11 -12
- package/dist/es2019/ui/ElementBrowser/components/ElementSearch.js +5 -3
- package/dist/es2019/ui/ElementBrowser/components/StatelessElementBrowser.js +9 -6
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/plugins/text-formatting/index.js +23 -21
- package/dist/esm/plugins/text-formatting/pm-plugins/input-rule.js +48 -54
- package/dist/esm/plugins/text-formatting/pm-plugins/smart-input-rule.js +26 -31
- package/dist/esm/ui/ElementBrowser/components/ElementSearch.js +5 -3
- package/dist/esm/ui/ElementBrowser/components/StatelessElementBrowser.js +8 -6
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/plugins/text-formatting/pm-plugins/input-rule.d.ts +2 -1
- package/dist/types/plugins/text-formatting/pm-plugins/smart-input-rule.d.ts +2 -2
- package/dist/types/ui/ElementBrowser/components/ElementSearch.d.ts +2 -1
- package/dist/types/ui/ElementBrowser/components/StatelessElementBrowser.d.ts +4 -4
- package/dist/types-ts4.5/plugins/text-formatting/pm-plugins/input-rule.d.ts +2 -1
- package/dist/types-ts4.5/plugins/text-formatting/pm-plugins/smart-input-rule.d.ts +2 -2
- package/dist/types-ts4.5/ui/ElementBrowser/components/ElementSearch.d.ts +2 -1
- package/dist/types-ts4.5/ui/ElementBrowser/components/StatelessElementBrowser.d.ts +4 -4
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/editor-core
|
|
2
2
|
|
|
3
|
+
## 187.8.13
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`0756bf2b120`](https://bitbucket.org/atlassian/atlassian-frontend/commits/0756bf2b120) - [ux] ED-18780 Add first element to page when pressing enter on Insert Menu
|
|
8
|
+
|
|
9
|
+
## 187.8.11
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`2b54c3b0d24`](https://bitbucket.org/atlassian/atlassian-frontend/commits/2b54c3b0d24) - [ED-19203] Decouple text-formatting plugin and editor-core
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 187.8.10
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -57,52 +57,54 @@ var textFormatting = function textFormatting() {
|
|
|
57
57
|
}
|
|
58
58
|
}, {
|
|
59
59
|
name: 'textFormattingInputRule',
|
|
60
|
+
// Don't remove the unused featureFlags, this gets used to test if we're properly passing them to the PM plugin
|
|
60
61
|
plugin: function plugin(_ref2) {
|
|
62
|
+
var _api$dependencies$ana2;
|
|
61
63
|
var schema = _ref2.schema,
|
|
62
64
|
featureFlags = _ref2.featureFlags;
|
|
63
|
-
return (0, _inputRule.default)(schema, featureFlags);
|
|
65
|
+
return (0, _inputRule.default)(schema, featureFlags, 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);
|
|
64
66
|
}
|
|
65
67
|
}, {
|
|
66
68
|
name: 'textFormattingSmartRule',
|
|
67
|
-
plugin: function plugin(
|
|
68
|
-
var
|
|
69
|
-
return !options.disableSmartTextCompletion ? (0, _smartInputRule.default)(
|
|
69
|
+
plugin: function plugin() {
|
|
70
|
+
var _api$dependencies$ana3;
|
|
71
|
+
return !options.disableSmartTextCompletion ? (0, _smartInputRule.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) : undefined;
|
|
70
72
|
}
|
|
71
73
|
}, {
|
|
72
74
|
name: 'textFormattingClear',
|
|
73
|
-
plugin: function plugin(
|
|
74
|
-
var dispatch =
|
|
75
|
+
plugin: function plugin(_ref3) {
|
|
76
|
+
var dispatch = _ref3.dispatch;
|
|
75
77
|
return (0, _clearFormatting.plugin)(dispatch);
|
|
76
78
|
}
|
|
77
79
|
}, {
|
|
78
80
|
name: 'textFormattingClearKeymap',
|
|
79
81
|
plugin: function plugin() {
|
|
80
|
-
var _api$dependencies$
|
|
81
|
-
return (0, _clearFormattingKeymap.default)(api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
82
|
+
var _api$dependencies$ana4;
|
|
83
|
+
return (0, _clearFormattingKeymap.default)(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);
|
|
82
84
|
}
|
|
83
85
|
}, {
|
|
84
86
|
name: 'textFormattingKeymap',
|
|
85
|
-
plugin: function plugin(
|
|
86
|
-
var _api$dependencies$
|
|
87
|
-
var schema =
|
|
88
|
-
return (0, _keymap.default)(schema, api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
87
|
+
plugin: function plugin(_ref4) {
|
|
88
|
+
var _api$dependencies$ana5;
|
|
89
|
+
var schema = _ref4.schema;
|
|
90
|
+
return (0, _keymap.default)(schema, 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);
|
|
89
91
|
}
|
|
90
92
|
}];
|
|
91
93
|
},
|
|
92
|
-
primaryToolbarComponent: function primaryToolbarComponent(
|
|
93
|
-
var editorView =
|
|
94
|
-
popupsMountPoint =
|
|
95
|
-
popupsScrollableElement =
|
|
96
|
-
isToolbarReducedSpacing =
|
|
97
|
-
toolbarSize =
|
|
98
|
-
disabled =
|
|
94
|
+
primaryToolbarComponent: function primaryToolbarComponent(_ref5) {
|
|
95
|
+
var editorView = _ref5.editorView,
|
|
96
|
+
popupsMountPoint = _ref5.popupsMountPoint,
|
|
97
|
+
popupsScrollableElement = _ref5.popupsScrollableElement,
|
|
98
|
+
isToolbarReducedSpacing = _ref5.isToolbarReducedSpacing,
|
|
99
|
+
toolbarSize = _ref5.toolbarSize,
|
|
100
|
+
disabled = _ref5.disabled;
|
|
99
101
|
return /*#__PURE__*/_react.default.createElement(_withPluginState.WithPluginState, {
|
|
100
102
|
plugins: {
|
|
101
103
|
textFormattingState: _main.pluginKey,
|
|
102
104
|
clearFormattingPluginState: _clearFormatting.pluginKey
|
|
103
105
|
},
|
|
104
106
|
render: function render() {
|
|
105
|
-
var _api$dependencies$
|
|
107
|
+
var _api$dependencies$ana6;
|
|
106
108
|
return /*#__PURE__*/_react.default.createElement(_Toolbar.default, {
|
|
107
109
|
editorState: editorView.state,
|
|
108
110
|
popupsMountPoint: popupsMountPoint,
|
|
@@ -112,7 +114,7 @@ var textFormatting = function textFormatting() {
|
|
|
112
114
|
editorView: editorView,
|
|
113
115
|
isToolbarDisabled: disabled,
|
|
114
116
|
shouldUseResponsiveToolbar: Boolean(options.responsiveToolbarMenu),
|
|
115
|
-
editorAnalyticsAPI: api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
117
|
+
editorAnalyticsAPI: 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
|
|
116
118
|
});
|
|
117
119
|
}
|
|
118
120
|
});
|
|
@@ -16,10 +16,10 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
16
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
17
17
|
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
|
|
18
18
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
|
-
var _inputRules = require("../../../utils/input-rules");
|
|
20
19
|
var _prosemirrorInputRules = require("@atlaskit/prosemirror-input-rules");
|
|
21
20
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
22
21
|
var _mark = require("@atlaskit/editor-common/mark");
|
|
22
|
+
var _utils = require("@atlaskit/editor-common/utils");
|
|
23
23
|
var _ValidCombinations;
|
|
24
24
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
25
25
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
@@ -175,18 +175,16 @@ var codeRegex = buildRegex(ValidAutoformatChars.CODE);
|
|
|
175
175
|
* @returns {InputRuleWrapper[]}
|
|
176
176
|
*/
|
|
177
177
|
exports.codeRegex = codeRegex;
|
|
178
|
-
function getStrongInputRules(schema) {
|
|
179
|
-
var ruleWithStrongAnalytics = (0,
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
};
|
|
189
|
-
});
|
|
178
|
+
function getStrongInputRules(schema, editorAnalyticsAPI) {
|
|
179
|
+
var ruleWithStrongAnalytics = (0, _utils.inputRuleWithAnalytics)({
|
|
180
|
+
action: _analytics.ACTION.FORMATTED,
|
|
181
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
182
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_STRONG,
|
|
183
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
184
|
+
attributes: {
|
|
185
|
+
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
186
|
+
}
|
|
187
|
+
}, editorAnalyticsAPI);
|
|
190
188
|
// **string** or __strong__ should bold the text
|
|
191
189
|
var doubleUnderscoreRule = (0, _prosemirrorInputRules.createRule)(strongRegex1, addMark(schema.marks.strong, schema, ValidAutoformatChars.STRONG));
|
|
192
190
|
var doubleAsterixRule = (0, _prosemirrorInputRules.createRule)(strongRegex2, addMark(schema.marks.strong, schema, ValidAutoformatChars.STRONG_MARKDOWN));
|
|
@@ -199,18 +197,16 @@ function getStrongInputRules(schema) {
|
|
|
199
197
|
* @param {Schema} schema
|
|
200
198
|
* @returns {InputRuleWrapper[]}
|
|
201
199
|
*/
|
|
202
|
-
function getItalicInputRules(schema) {
|
|
203
|
-
var ruleWithItalicAnalytics = (0,
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
};
|
|
213
|
-
});
|
|
200
|
+
function getItalicInputRules(schema, editorAnalyticsAPI) {
|
|
201
|
+
var ruleWithItalicAnalytics = (0, _utils.inputRuleWithAnalytics)({
|
|
202
|
+
action: _analytics.ACTION.FORMATTED,
|
|
203
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
204
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_ITALIC,
|
|
205
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
206
|
+
attributes: {
|
|
207
|
+
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
208
|
+
}
|
|
209
|
+
}, editorAnalyticsAPI);
|
|
214
210
|
var underscoreRule = (0, _prosemirrorInputRules.createRule)(italicRegex1, addMark(schema.marks.em, schema, ValidAutoformatChars.ITALIC));
|
|
215
211
|
var asterixRule = (0, _prosemirrorInputRules.createRule)(italicRegex2, addMark(schema.marks.em, schema, ValidAutoformatChars.ITALIC_MARKDOWN));
|
|
216
212
|
return [ruleWithItalicAnalytics(underscoreRule), ruleWithItalicAnalytics(asterixRule)];
|
|
@@ -222,18 +218,16 @@ function getItalicInputRules(schema) {
|
|
|
222
218
|
* @param {Schema} schema
|
|
223
219
|
* @returns {InputRuleWrapper[]}
|
|
224
220
|
*/
|
|
225
|
-
function getStrikeInputRules(schema) {
|
|
226
|
-
var ruleWithStrikeAnalytics = (0,
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
};
|
|
236
|
-
});
|
|
221
|
+
function getStrikeInputRules(schema, editorAnalyticsAPI) {
|
|
222
|
+
var ruleWithStrikeAnalytics = (0, _utils.inputRuleWithAnalytics)({
|
|
223
|
+
action: _analytics.ACTION.FORMATTED,
|
|
224
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
225
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_STRIKE,
|
|
226
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
227
|
+
attributes: {
|
|
228
|
+
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
229
|
+
}
|
|
230
|
+
}, editorAnalyticsAPI);
|
|
237
231
|
var doubleTildeRule = (0, _prosemirrorInputRules.createRule)(strikeRegex, addMark(schema.marks.strike, schema, ValidAutoformatChars.STRIKE));
|
|
238
232
|
return [ruleWithStrikeAnalytics(doubleTildeRule)];
|
|
239
233
|
}
|
|
@@ -244,34 +238,34 @@ function getStrikeInputRules(schema) {
|
|
|
244
238
|
* @param {Schema} schema
|
|
245
239
|
* @returns {InputRuleWrapper[]}
|
|
246
240
|
*/
|
|
247
|
-
function getCodeInputRules(schema) {
|
|
248
|
-
var ruleWithCodeAnalytics = (0,
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
};
|
|
258
|
-
});
|
|
241
|
+
function getCodeInputRules(schema, editorAnalyticsAPI) {
|
|
242
|
+
var ruleWithCodeAnalytics = (0, _utils.inputRuleWithAnalytics)({
|
|
243
|
+
action: _analytics.ACTION.FORMATTED,
|
|
244
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
245
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.FORMAT_CODE,
|
|
246
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
247
|
+
attributes: {
|
|
248
|
+
inputMethod: _analytics.INPUT_METHOD.FORMATTING
|
|
249
|
+
}
|
|
250
|
+
}, editorAnalyticsAPI);
|
|
259
251
|
var backTickRule = (0, _prosemirrorInputRules.createRule)(codeRegex, addMark(schema.marks.code, schema, ValidAutoformatChars.CODE));
|
|
260
252
|
return [ruleWithCodeAnalytics(backTickRule)];
|
|
261
253
|
}
|
|
262
|
-
function inputRulePlugin(schema,
|
|
254
|
+
function inputRulePlugin(schema,
|
|
255
|
+
// Don't remove the unused featureFlags, this gets used to test if we're properly passing them to the PM plugin
|
|
256
|
+
_featureFlags, editorAnalyticsAPI) {
|
|
263
257
|
var rules = [];
|
|
264
258
|
if (schema.marks.strong) {
|
|
265
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getStrongInputRules(schema)));
|
|
259
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getStrongInputRules(schema, editorAnalyticsAPI)));
|
|
266
260
|
}
|
|
267
261
|
if (schema.marks.em) {
|
|
268
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getItalicInputRules(schema)));
|
|
262
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getItalicInputRules(schema, editorAnalyticsAPI)));
|
|
269
263
|
}
|
|
270
264
|
if (schema.marks.strike) {
|
|
271
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getStrikeInputRules(schema)));
|
|
265
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getStrikeInputRules(schema, editorAnalyticsAPI)));
|
|
272
266
|
}
|
|
273
267
|
if (schema.marks.code) {
|
|
274
|
-
rules.push.apply(rules, (0, _toConsumableArray2.default)(getCodeInputRules(schema)));
|
|
268
|
+
rules.push.apply(rules, (0, _toConsumableArray2.default)(getCodeInputRules(schema, editorAnalyticsAPI)));
|
|
275
269
|
}
|
|
276
270
|
if (rules.length !== 0) {
|
|
277
271
|
return (0, _prosemirrorInputRules.createPlugin)('text-formatting', rules);
|
|
@@ -8,10 +8,10 @@ exports.default = void 0;
|
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
-
var
|
|
12
|
-
var _inputRules = require("../../../utils/input-rules");
|
|
11
|
+
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
13
12
|
var _prosemirrorInputRules = require("@atlaskit/prosemirror-input-rules");
|
|
14
13
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
14
|
+
var _utils = require("@atlaskit/editor-common/utils");
|
|
15
15
|
/**
|
|
16
16
|
* Creates an InputRuleHandler that will match on a regular expression of the
|
|
17
17
|
* form `(prefix, content, suffix?)`, and replace it with some given text,
|
|
@@ -33,7 +33,7 @@ function replaceTextUsingCaptureGroup(text) {
|
|
|
33
33
|
// But, this is JS #trustnoone
|
|
34
34
|
Math.max(startPos, 0), end);
|
|
35
35
|
tr.replaceWith(safePos, end, state.schema.text(replacement, $to.marks()));
|
|
36
|
-
tr.setSelection(
|
|
36
|
+
tr.setSelection(_state.Selection.near(tr.doc.resolve(tr.selection.to)));
|
|
37
37
|
return tr;
|
|
38
38
|
};
|
|
39
39
|
}
|
|
@@ -86,9 +86,9 @@ function createSingleQuotesRules() {
|
|
|
86
86
|
/**
|
|
87
87
|
* Get replacement rules related to product
|
|
88
88
|
*/
|
|
89
|
-
function getProductRules() {
|
|
89
|
+
function getProductRules(editorAnalyticsAPI) {
|
|
90
90
|
var productRuleWithAnalytics = function productRuleWithAnalytics(product) {
|
|
91
|
-
return (0,
|
|
91
|
+
return (0, _utils.inputRuleWithAnalytics)(function (_, match) {
|
|
92
92
|
return {
|
|
93
93
|
action: _analytics.ACTION.SUBSTITUTED,
|
|
94
94
|
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
@@ -99,7 +99,7 @@ function getProductRules() {
|
|
|
99
99
|
originalSpelling: match[2]
|
|
100
100
|
}
|
|
101
101
|
};
|
|
102
|
-
});
|
|
102
|
+
}, editorAnalyticsAPI);
|
|
103
103
|
};
|
|
104
104
|
return createReplacementRules({
|
|
105
105
|
Atlassian: /(\s+|^)(atlassian)(\s)$/,
|
|
@@ -113,24 +113,22 @@ function getProductRules() {
|
|
|
113
113
|
/**
|
|
114
114
|
* Get replacement rules related to symbol
|
|
115
115
|
*/
|
|
116
|
-
function getSymbolRules() {
|
|
116
|
+
function getSymbolRules(editorAnalyticsAPI) {
|
|
117
117
|
var symbolToString = {
|
|
118
118
|
'→': _analytics.SYMBOL.ARROW_RIGHT,
|
|
119
119
|
'←': _analytics.SYMBOL.ARROW_LEFT,
|
|
120
120
|
'↔︎': _analytics.SYMBOL.ARROW_DOUBLE
|
|
121
121
|
};
|
|
122
122
|
var symbolRuleWithAnalytics = function symbolRuleWithAnalytics(symbol) {
|
|
123
|
-
return (0,
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
};
|
|
133
|
-
});
|
|
123
|
+
return (0, _utils.inputRuleWithAnalytics)({
|
|
124
|
+
action: _analytics.ACTION.SUBSTITUTED,
|
|
125
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
126
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.SYMBOL,
|
|
127
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
128
|
+
attributes: {
|
|
129
|
+
symbol: symbolToString[symbol]
|
|
130
|
+
}
|
|
131
|
+
}, editorAnalyticsAPI);
|
|
134
132
|
};
|
|
135
133
|
return createReplacementRules({
|
|
136
134
|
'→': /(\s+|^)(--?>)(\s)$/,
|
|
@@ -142,25 +140,22 @@ function getSymbolRules() {
|
|
|
142
140
|
/**
|
|
143
141
|
* Get replacement rules related to punctuation
|
|
144
142
|
*/
|
|
145
|
-
function getPunctuationRules() {
|
|
143
|
+
function getPunctuationRules(editorAnalyticsAPI) {
|
|
146
144
|
var punctuationToString = (0, _defineProperty2.default)({
|
|
147
145
|
'–': _analytics.PUNC.DASH,
|
|
148
146
|
'…': _analytics.PUNC.ELLIPSIS,
|
|
149
|
-
'“': _analytics.PUNC.QUOTE_DOUBLE,
|
|
150
147
|
'”': _analytics.PUNC.QUOTE_DOUBLE
|
|
151
148
|
}, _analytics.PUNC.QUOTE_SINGLE, _analytics.PUNC.QUOTE_SINGLE);
|
|
152
149
|
var punctuationRuleWithAnalytics = function punctuationRuleWithAnalytics(punctuation) {
|
|
153
|
-
return (0,
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
};
|
|
163
|
-
});
|
|
150
|
+
return (0, _utils.inputRuleWithAnalytics)({
|
|
151
|
+
action: _analytics.ACTION.SUBSTITUTED,
|
|
152
|
+
actionSubject: _analytics.ACTION_SUBJECT.TEXT,
|
|
153
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.PUNC,
|
|
154
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
155
|
+
attributes: {
|
|
156
|
+
punctuation: punctuationToString[punctuation]
|
|
157
|
+
}
|
|
158
|
+
}, editorAnalyticsAPI);
|
|
164
159
|
};
|
|
165
160
|
var dashEllipsisRules = createReplacementRules({
|
|
166
161
|
'–': /(\s+|^)(--)(\s)$/,
|
|
@@ -175,7 +170,7 @@ function getPunctuationRules() {
|
|
|
175
170
|
return punctuationRuleWithAnalytics(_analytics.PUNC.QUOTE_SINGLE)(rule);
|
|
176
171
|
})));
|
|
177
172
|
}
|
|
178
|
-
var _default = function _default(
|
|
179
|
-
return (0, _prosemirrorInputRules.createPlugin)('text-formatting:smart-input', [].concat((0, _toConsumableArray2.default)(getProductRules()), (0, _toConsumableArray2.default)(getSymbolRules()), (0, _toConsumableArray2.default)(getPunctuationRules())));
|
|
173
|
+
var _default = function _default(editorAnalyticsAPI) {
|
|
174
|
+
return (0, _prosemirrorInputRules.createPlugin)('text-formatting:smart-input', [].concat((0, _toConsumableArray2.default)(getProductRules(editorAnalyticsAPI)), (0, _toConsumableArray2.default)(getSymbolRules(editorAnalyticsAPI)), (0, _toConsumableArray2.default)(getPunctuationRules(editorAnalyticsAPI))));
|
|
180
175
|
};
|
|
181
176
|
exports.default = _default;
|
|
@@ -29,6 +29,7 @@ function ElementSearch(_ref) {
|
|
|
29
29
|
formatMessage = _ref.intl.formatMessage,
|
|
30
30
|
focus = _ref.focus,
|
|
31
31
|
onClick = _ref.onClick,
|
|
32
|
+
onKeyDown = _ref.onKeyDown,
|
|
32
33
|
searchTerm = _ref.searchTerm;
|
|
33
34
|
var ref = (0, _useFocus.default)(focus);
|
|
34
35
|
var onChange = function onChange(_ref2) {
|
|
@@ -44,6 +45,7 @@ function ElementSearch(_ref) {
|
|
|
44
45
|
onChange: onChange,
|
|
45
46
|
onClick: onClick,
|
|
46
47
|
onFocus: onFocus,
|
|
48
|
+
onKeyDown: onKeyDown,
|
|
47
49
|
onBlur: onBlur,
|
|
48
50
|
elemBeforeInput: (0, _react2.jsx)("div", {
|
|
49
51
|
css: elementBeforeInput,
|
|
@@ -75,10 +77,10 @@ var placeHolderMessage = {
|
|
|
75
77
|
description: 'Search field placeholder'
|
|
76
78
|
};
|
|
77
79
|
var styledShortcut = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n padding: ", "px ", "px;\n width: ", "px;\n"])), _styles.shortcutStyle, _constants.GRID_SIZE / 2, _constants.GRID_SIZE, _constants.GRID_SIZE * 6);
|
|
78
|
-
var wrapper = (0, _react2.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n & > [data-ds--text-field--container] {\n height: ", "px;\n border-radius: ", "px;\n flex: 1 1 100%;\n overflow: visible;\n & > [data-ds--text-field--input] {\n margin-bottom: 3px;\n font-size: ", ";\n padding: ", "px
|
|
80
|
+
var wrapper = (0, _react2.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n & > [data-ds--text-field--container] {\n height: ", "px;\n border-radius: ", "px;\n flex: 1 1 100%;\n overflow: visible;\n & > [data-ds--text-field--input] {\n margin-bottom: 3px;\n font-size: ", ";\n padding: ", "px ", " ", "px 0;\n }\n }\n"])), _constants.GRID_SIZE * 6, _constants.GRID_SIZE, (0, _editorSharedStyles.relativeFontSizeToBase16)(14), _constants.GRID_SIZE, "var(--ds-space-075, 6px)", _constants.GRID_SIZE);
|
|
79
81
|
var wrapperInline = (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n & > [data-ds--text-field--container] {\n height: ", "px;\n flex: none;\n overflow: revert;\n }\n"])), _constants.GRID_SIZE * 5);
|
|
80
|
-
var elementBeforeInput = (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n margin: 1px
|
|
81
|
-
var elementAfterInput = (0, _react2.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n margin: 0
|
|
82
|
+
var elementBeforeInput = (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n margin: 1px ", " 0 ", ";\n color: ", ";\n\n // Custom SearchIcon style\n span,\n svg {\n height: 20px;\n width: 20px;\n }\n"])), "var(--ds-space-075, 6px)", "var(--ds-space-100, 8px)", "var(--ds-icon, ".concat(_colors.N200, ")"));
|
|
83
|
+
var elementAfterInput = (0, _react2.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n margin: 0 ", ";\n height: ", ";\n text-align: center;\n"])), "var(--ds-space-100, 8px)", _constants.SEARCH_ITEM_HEIGHT_WIDTH);
|
|
82
84
|
var MemoizedElementSearchWithAnalytics = /*#__PURE__*/(0, _react.memo)((0, _analyticsNext.withAnalyticsContext)({
|
|
83
85
|
component: 'Searchbar'
|
|
84
86
|
})((0, _reactIntlNext.injectIntl)(ElementSearch)));
|
|
@@ -30,7 +30,7 @@ var baseBrowserContainerStyles = (0, _react2.css)(_templateObject2 || (_template
|
|
|
30
30
|
var mobileElementBrowserContainer = (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex-direction: column;\n"])), baseBrowserContainerStyles);
|
|
31
31
|
var elementBrowserContainer = (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex-direction: row;\n"])), baseBrowserContainerStyles);
|
|
32
32
|
var baseSidebarStyles = (0, _react2.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: column;\n\n overflow-x: auto;\n overflow-y: hidden;\n"])));
|
|
33
|
-
var mobileSideBar = (0, _react2.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex: 0 0 ", ";\n padding:
|
|
33
|
+
var mobileSideBar = (0, _react2.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex: 0 0 ", ";\n padding: ", " ", " 0\n ", ";\n"])), baseSidebarStyles, _constants.INLINE_SIDEBAR_HEIGHT, "var(--ds-space-150, 12px)", "var(--ds-space-150, 12px)", "var(--ds-space-150, 12px)");
|
|
34
34
|
var mobileSideBarShowCategories = (0, _react2.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n flex: 0 0 auto;\n"])));
|
|
35
35
|
var sideBar = (0, _react2.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex: 0 0 'auto';\n"])), baseSidebarStyles);
|
|
36
36
|
var sideBarShowCategories = (0, _react2.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n flex: 0 0 ", ";\n"])), baseSidebarStyles, _constants.SIDEBAR_WIDTH);
|
|
@@ -43,6 +43,7 @@ var categoryListWrapper = (0, _react2.css)(_templateObject15 || (_templateObject
|
|
|
43
43
|
function StatelessElementBrowser(props) {
|
|
44
44
|
var items = props.items,
|
|
45
45
|
onSelectItem = props.onSelectItem,
|
|
46
|
+
onInsertItem = props.onInsertItem,
|
|
46
47
|
viewMoreItem = props.viewMoreItem;
|
|
47
48
|
var _useContainerWidth = (0, _useContainerWidth2.default)(),
|
|
48
49
|
containerWidth = _useContainerWidth.containerWidth,
|
|
@@ -92,10 +93,11 @@ function StatelessElementBrowser(props) {
|
|
|
92
93
|
if (e.key !== 'Enter') {
|
|
93
94
|
return;
|
|
94
95
|
}
|
|
95
|
-
if (
|
|
96
|
-
|
|
96
|
+
if (onInsertItem && selectedItem != null) {
|
|
97
|
+
onInsertItem(selectedItem);
|
|
97
98
|
}
|
|
98
|
-
|
|
99
|
+
e.preventDefault();
|
|
100
|
+
}, [onInsertItem, selectedItem]);
|
|
99
101
|
|
|
100
102
|
/**
|
|
101
103
|
* On arrow key selection and clicks the selectedItemIndex will change.
|
|
@@ -156,13 +158,13 @@ function MobileBrowser(_ref) {
|
|
|
156
158
|
viewMoreItem = _ref.viewMoreItem;
|
|
157
159
|
return (0, _react2.jsx)("div", {
|
|
158
160
|
css: mobileElementBrowserContainer,
|
|
159
|
-
onKeyPress: onKeyPress,
|
|
160
161
|
onKeyDown: onKeyDown,
|
|
161
162
|
"data-testid": "mobile__element-browser"
|
|
162
163
|
}, (0, _react2.jsx)("div", {
|
|
163
164
|
css: showCategories ? [mobileSideBar, mobileSideBarShowCategories] : mobileSideBar
|
|
164
165
|
}, showSearch && (0, _react2.jsx)(_ElementSearch.default, {
|
|
165
166
|
onSearch: onSearch,
|
|
167
|
+
onKeyDown: onKeyPress,
|
|
166
168
|
mode: mode,
|
|
167
169
|
focus: focusOnSearch,
|
|
168
170
|
onClick: setFocusOnSearch,
|
|
@@ -235,13 +237,13 @@ function DesktopBrowser(_ref2) {
|
|
|
235
237
|
createAnalyticsEvent: createAnalyticsEvent
|
|
236
238
|
}))), (0, _react2.jsx)("div", {
|
|
237
239
|
css: mainContent,
|
|
238
|
-
onKeyPress: onKeyPress,
|
|
239
240
|
onKeyDown: onKeyDown,
|
|
240
241
|
"data-testid": "main-content"
|
|
241
242
|
}, showSearch && (0, _react2.jsx)("div", {
|
|
242
243
|
css: searchContainer
|
|
243
244
|
}, (0, _react2.jsx)(_ElementSearch.default, {
|
|
244
245
|
onSearch: onSearch,
|
|
246
|
+
onKeyDown: onKeyPress,
|
|
245
247
|
mode: mode,
|
|
246
248
|
focus: focusOnSearch,
|
|
247
249
|
onClick: setFocusOnSearch,
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.version = exports.nextMajorVersion = exports.name = void 0;
|
|
7
7
|
var name = "@atlaskit/editor-core";
|
|
8
8
|
exports.name = name;
|
|
9
|
-
var version = "187.8.
|
|
9
|
+
var version = "187.8.13";
|
|
10
10
|
exports.version = version;
|
|
11
11
|
var nextMajorVersion = function nextMajorVersion() {
|
|
12
12
|
return [Number(version.split('.')[0]) + 1, 0, 0].join('.');
|
package/dist/cjs/version.json
CHANGED
|
@@ -46,15 +46,20 @@ const textFormatting = (options = {}, api) => ({
|
|
|
46
46
|
plugin: () => textFormattingCursorPlugin
|
|
47
47
|
}, {
|
|
48
48
|
name: 'textFormattingInputRule',
|
|
49
|
+
// Don't remove the unused featureFlags, this gets used to test if we're properly passing them to the PM plugin
|
|
49
50
|
plugin: ({
|
|
50
51
|
schema,
|
|
51
52
|
featureFlags
|
|
52
|
-
}) =>
|
|
53
|
+
}) => {
|
|
54
|
+
var _api$dependencies$ana2;
|
|
55
|
+
return textFormattingInputRulePlugin(schema, featureFlags, 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);
|
|
56
|
+
}
|
|
53
57
|
}, {
|
|
54
58
|
name: 'textFormattingSmartRule',
|
|
55
|
-
plugin: ({
|
|
56
|
-
|
|
57
|
-
|
|
59
|
+
plugin: () => {
|
|
60
|
+
var _api$dependencies$ana3;
|
|
61
|
+
return !options.disableSmartTextCompletion ? textFormattingSmartInputRulePlugin(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) : undefined;
|
|
62
|
+
}
|
|
58
63
|
}, {
|
|
59
64
|
name: 'textFormattingClear',
|
|
60
65
|
plugin: ({
|
|
@@ -63,16 +68,16 @@ const textFormatting = (options = {}, api) => ({
|
|
|
63
68
|
}, {
|
|
64
69
|
name: 'textFormattingClearKeymap',
|
|
65
70
|
plugin: () => {
|
|
66
|
-
var _api$dependencies$
|
|
67
|
-
return clearFormattingKeymapPlugin(api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
71
|
+
var _api$dependencies$ana4;
|
|
72
|
+
return clearFormattingKeymapPlugin(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);
|
|
68
73
|
}
|
|
69
74
|
}, {
|
|
70
75
|
name: 'textFormattingKeymap',
|
|
71
76
|
plugin: ({
|
|
72
77
|
schema
|
|
73
78
|
}) => {
|
|
74
|
-
var _api$dependencies$
|
|
75
|
-
return keymapPlugin(schema, api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
79
|
+
var _api$dependencies$ana5;
|
|
80
|
+
return keymapPlugin(schema, 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);
|
|
76
81
|
}
|
|
77
82
|
}];
|
|
78
83
|
},
|
|
@@ -90,7 +95,7 @@ const textFormatting = (options = {}, api) => ({
|
|
|
90
95
|
clearFormattingPluginState: clearFormattingPluginKey
|
|
91
96
|
},
|
|
92
97
|
render: () => {
|
|
93
|
-
var _api$dependencies$
|
|
98
|
+
var _api$dependencies$ana6;
|
|
94
99
|
return /*#__PURE__*/React.createElement(Toolbar, {
|
|
95
100
|
editorState: editorView.state,
|
|
96
101
|
popupsMountPoint: popupsMountPoint,
|
|
@@ -100,7 +105,7 @@ const textFormatting = (options = {}, api) => ({
|
|
|
100
105
|
editorView: editorView,
|
|
101
106
|
isToolbarDisabled: disabled,
|
|
102
107
|
shouldUseResponsiveToolbar: Boolean(options.responsiveToolbarMenu),
|
|
103
|
-
editorAnalyticsAPI: api === null || api === void 0 ? void 0 : (_api$dependencies$
|
|
108
|
+
editorAnalyticsAPI: 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
|
|
104
109
|
});
|
|
105
110
|
}
|
|
106
111
|
});
|