@atlaskit/editor-core 150.0.0 → 151.0.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 +65 -0
- package/dist/cjs/actions/index.js +5 -23
- package/dist/cjs/create-editor/ErrorBoundary.js +113 -79
- package/dist/cjs/create-editor/ReactEditorView.js +145 -31
- package/dist/cjs/create-editor/create-plugins-list.js +4 -2
- package/dist/cjs/editor.js +101 -40
- package/dist/cjs/labs/next/presets/cxhtml.js +2 -1
- package/dist/cjs/plugins/analytics/types/enums.js +3 -1
- package/dist/cjs/plugins/base/index.js +4 -3
- package/dist/cjs/plugins/base/pm-plugins/frozen-editor.js +66 -36
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/styled.js +3 -1
- package/dist/cjs/plugins/card/index.js +13 -2
- package/dist/cjs/plugins/card/nodeviews/embedCard.js +1 -0
- package/dist/cjs/plugins/card/pm-plugins/main.js +7 -2
- package/dist/cjs/plugins/card/pm-plugins/util/resolve.js +10 -3
- package/dist/cjs/plugins/code-block/toolbar.js +1 -1
- package/dist/cjs/plugins/collab-edit/ui/to-avatar.js +4 -8
- package/dist/cjs/plugins/emoji/styles.js +1 -1
- package/dist/cjs/plugins/extension/pm-plugins/main.js +1 -4
- package/dist/cjs/plugins/extension/toolbar.js +28 -23
- package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +8 -3
- package/dist/cjs/plugins/find-replace/ui/Find.js +27 -7
- package/dist/cjs/plugins/hyperlink/pm-plugins/keymap.js +3 -3
- package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +7 -4
- package/dist/cjs/plugins/hyperlink/utils.js +6 -69
- package/dist/cjs/plugins/media/index.js +14 -3
- package/dist/cjs/plugins/media/nodeviews/mediaGroup.js +24 -10
- package/dist/cjs/plugins/media/nodeviews/mediaInline.js +179 -0
- package/dist/cjs/plugins/media/pm-plugins/main.js +18 -9
- package/dist/cjs/plugins/media/toolbar/index.js +49 -17
- package/dist/cjs/plugins/media/toolbar/utils.js +20 -2
- package/dist/cjs/plugins/media/utils/media-files.js +67 -1
- package/dist/cjs/plugins/mentions/type-ahead/index.js +39 -3
- package/dist/cjs/plugins/panel/index.js +2 -3
- package/dist/cjs/plugins/panel/message.js +47 -0
- package/dist/cjs/plugins/panel/toolbar.js +64 -84
- package/dist/cjs/plugins/panel/utils.js +2 -2
- package/dist/cjs/plugins/paste/linkify-md-plugin.js +3 -3
- package/dist/cjs/plugins/status/styles.js +1 -1
- package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +18 -2
- package/dist/cjs/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +20 -3
- package/dist/cjs/profiler/render-count.js +82 -0
- package/dist/cjs/ui/Appearance/Comment/Comment.js +6 -5
- package/dist/cjs/utils/react-hooks/use-component-renderer-tracking/index.js +55 -19
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/actions/index.js +6 -28
- package/dist/es2019/create-editor/ErrorBoundary.js +73 -60
- package/dist/es2019/create-editor/ReactEditorView.js +130 -23
- package/dist/es2019/create-editor/create-plugins-list.js +4 -2
- package/dist/es2019/editor.js +74 -35
- package/dist/es2019/labs/next/presets/cxhtml.js +2 -1
- package/dist/es2019/plugins/analytics/types/enums.js +3 -1
- package/dist/es2019/plugins/base/index.js +4 -3
- package/dist/es2019/plugins/base/pm-plugins/frozen-editor.js +63 -35
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/styled.js +2 -1
- package/dist/es2019/plugins/card/index.js +7 -2
- package/dist/es2019/plugins/card/nodeviews/embedCard.js +1 -0
- package/dist/es2019/plugins/card/pm-plugins/main.js +9 -2
- package/dist/es2019/plugins/card/pm-plugins/util/resolve.js +12 -5
- package/dist/es2019/plugins/code-block/toolbar.js +1 -1
- package/dist/es2019/plugins/collab-edit/ui/to-avatar.js +2 -6
- package/dist/es2019/plugins/emoji/styles.js +2 -0
- package/dist/es2019/plugins/extension/pm-plugins/main.js +1 -4
- package/dist/es2019/plugins/extension/toolbar.js +30 -25
- package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +8 -4
- package/dist/es2019/plugins/find-replace/ui/Find.js +27 -6
- package/dist/es2019/plugins/hyperlink/pm-plugins/keymap.js +1 -1
- package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +7 -4
- package/dist/es2019/plugins/hyperlink/utils.js +3 -59
- package/dist/es2019/plugins/media/index.js +13 -4
- package/dist/es2019/plugins/media/nodeviews/mediaGroup.js +16 -7
- package/dist/es2019/plugins/media/nodeviews/mediaInline.js +88 -0
- package/dist/es2019/plugins/media/pm-plugins/main.js +20 -11
- package/dist/es2019/plugins/media/toolbar/index.js +44 -15
- package/dist/es2019/plugins/media/toolbar/utils.js +16 -0
- package/dist/es2019/plugins/media/utils/media-files.js +68 -2
- package/dist/es2019/plugins/mentions/type-ahead/index.js +21 -2
- package/dist/es2019/plugins/panel/index.js +3 -4
- package/dist/es2019/plugins/panel/message.js +38 -0
- package/dist/es2019/plugins/panel/toolbar.js +52 -71
- package/dist/es2019/plugins/panel/utils.js +2 -2
- package/dist/es2019/plugins/paste/linkify-md-plugin.js +2 -2
- package/dist/es2019/plugins/status/styles.js +2 -0
- package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +18 -2
- package/dist/es2019/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +20 -3
- package/dist/es2019/profiler/render-count.js +60 -0
- package/dist/es2019/ui/Appearance/Comment/Comment.js +4 -2
- package/dist/es2019/utils/react-hooks/use-component-renderer-tracking/index.js +51 -18
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/actions/index.js +6 -24
- package/dist/esm/create-editor/ErrorBoundary.js +113 -78
- package/dist/esm/create-editor/ReactEditorView.js +146 -31
- package/dist/esm/create-editor/create-plugins-list.js +4 -2
- package/dist/esm/editor.js +100 -40
- package/dist/esm/labs/next/presets/cxhtml.js +2 -1
- package/dist/esm/plugins/analytics/types/enums.js +3 -1
- package/dist/esm/plugins/base/index.js +4 -3
- package/dist/esm/plugins/base/pm-plugins/frozen-editor.js +64 -36
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/styled.js +3 -1
- package/dist/esm/plugins/card/index.js +13 -2
- package/dist/esm/plugins/card/nodeviews/embedCard.js +1 -0
- package/dist/esm/plugins/card/pm-plugins/main.js +7 -2
- package/dist/esm/plugins/card/pm-plugins/util/resolve.js +12 -5
- package/dist/esm/plugins/code-block/toolbar.js +1 -1
- package/dist/esm/plugins/collab-edit/ui/to-avatar.js +4 -8
- package/dist/esm/plugins/emoji/styles.js +1 -1
- package/dist/esm/plugins/extension/pm-plugins/main.js +1 -4
- package/dist/esm/plugins/extension/toolbar.js +28 -23
- package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +8 -4
- package/dist/esm/plugins/find-replace/ui/Find.js +27 -7
- package/dist/esm/plugins/hyperlink/pm-plugins/keymap.js +1 -1
- package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +7 -4
- package/dist/esm/plugins/hyperlink/utils.js +3 -59
- package/dist/esm/plugins/media/index.js +14 -4
- package/dist/esm/plugins/media/nodeviews/mediaGroup.js +24 -10
- package/dist/esm/plugins/media/nodeviews/mediaInline.js +147 -0
- package/dist/esm/plugins/media/pm-plugins/main.js +19 -11
- package/dist/esm/plugins/media/toolbar/index.js +47 -19
- package/dist/esm/plugins/media/toolbar/utils.js +15 -1
- package/dist/esm/plugins/media/utils/media-files.js +60 -2
- package/dist/esm/plugins/mentions/type-ahead/index.js +39 -3
- package/dist/esm/plugins/panel/index.js +3 -4
- package/dist/esm/plugins/panel/message.js +38 -0
- package/dist/esm/plugins/panel/toolbar.js +57 -77
- package/dist/esm/plugins/panel/utils.js +2 -2
- package/dist/esm/plugins/paste/linkify-md-plugin.js +2 -2
- package/dist/esm/plugins/status/styles.js +1 -1
- package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +18 -2
- package/dist/esm/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +20 -3
- package/dist/esm/profiler/render-count.js +57 -0
- package/dist/esm/ui/Appearance/Comment/Comment.js +6 -5
- package/dist/esm/utils/react-hooks/use-component-renderer-tracking/index.js +53 -20
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/create-editor/ErrorBoundary.d.ts +6 -6
- package/dist/types/create-editor/ReactEditorView.d.ts +15 -3
- package/dist/types/editor.d.ts +3 -1
- package/dist/types/plugins/analytics/analytics-queue.d.ts +1 -1
- package/dist/types/plugins/analytics/index.d.ts +1 -1
- package/dist/types/plugins/analytics/types/enums.d.ts +4 -2
- package/dist/types/plugins/analytics/types/events.d.ts +7 -2
- package/dist/types/plugins/analytics/types/general-events.d.ts +4 -1
- package/dist/types/plugins/analytics/types/index.d.ts +1 -1
- package/dist/types/plugins/analytics/types/insert-events.d.ts +6 -1
- package/dist/types/plugins/analytics/types/link-tool-bar-events.d.ts +1 -0
- package/dist/types/plugins/base/index.d.ts +1 -0
- package/dist/types/plugins/base/pm-plugins/frozen-editor.d.ts +3 -2
- package/dist/types/plugins/card/pm-plugins/main.d.ts +2 -3
- package/dist/types/plugins/card/pm-plugins/util/resolve.d.ts +2 -1
- package/dist/types/plugins/card/types.d.ts +6 -0
- package/dist/types/plugins/collab-edit/ui/to-avatar.d.ts +1 -1
- package/dist/types/plugins/extension/types.d.ts +0 -2
- package/dist/types/plugins/extension/ui/Extension/ExtensionComponent.d.ts +2 -2
- package/dist/types/plugins/feature-flags-context/get-enabled-feature-flag-keys.d.ts +1 -1
- package/dist/types/plugins/floating-toolbar/types.d.ts +1 -1
- package/dist/types/plugins/floating-toolbar/ui/Select.d.ts +1 -1
- package/dist/types/plugins/hyperlink/utils.d.ts +0 -21
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/create-items.d.ts +1 -1
- package/dist/types/plugins/media/nodeviews/mediaInline.d.ts +27 -0
- package/dist/types/plugins/media/pm-plugins/main.d.ts +2 -2
- package/dist/types/plugins/media/toolbar/utils.d.ts +2 -0
- package/dist/types/plugins/media/utils/media-files.d.ts +8 -0
- package/dist/types/plugins/panel/message.d.ts +37 -0
- package/dist/types/plugins/panel/toolbar.d.ts +4 -37
- package/dist/types/plugins/panel/types.d.ts +1 -0
- package/dist/types/plugins/quick-insert/index.d.ts +1 -1
- package/dist/types/profiler/render-count.d.ts +14 -0
- package/dist/types/types/feature-flags.d.ts +8 -0
- package/dist/types/ui/LinkSearch/types.d.ts +1 -0
- package/dist/types/utils/react-hooks/use-component-renderer-tracking/index.d.ts +17 -1
- package/package.json +20 -17
- package/dist/cjs/plugins/caption/nodeviews/index.test.js +0 -135
- package/dist/cjs/plugins/caption/pm-plugins/keymap.test.js +0 -203
- package/dist/cjs/plugins/caption/pm-plugins/main.test.js +0 -141
- package/dist/cjs/plugins/code-block/language-list.test.js +0 -74
- package/dist/cjs/plugins/extension/ui/SaveIndicator/SaveIndicator.test.js +0 -101
- package/dist/cjs/plugins/floating-toolbar/ui/EmojiPickerButton.test.js +0 -98
- package/dist/cjs/plugins/media/commands/captions.test.js +0 -149
- package/dist/cjs/plugins/media/commands/linking.test.js +0 -296
- package/dist/cjs/plugins/media/ui/CaptionPlaceholder/index.test.js +0 -50
- package/dist/cjs/plugins/panel/toolbar.test.js +0 -250
- package/dist/cjs/ui/ColorPickerButton/index.test.js +0 -123
- package/dist/cjs/ui/PortalProvider/index.test.js +0 -139
- package/dist/es2019/plugins/caption/nodeviews/index.test.js +0 -122
- package/dist/es2019/plugins/caption/pm-plugins/keymap.test.js +0 -193
- package/dist/es2019/plugins/caption/pm-plugins/main.test.js +0 -132
- package/dist/es2019/plugins/code-block/language-list.test.js +0 -69
- package/dist/es2019/plugins/extension/ui/SaveIndicator/SaveIndicator.test.js +0 -83
- package/dist/es2019/plugins/floating-toolbar/ui/EmojiPickerButton.test.js +0 -85
- package/dist/es2019/plugins/media/commands/captions.test.js +0 -126
- package/dist/es2019/plugins/media/commands/linking.test.js +0 -208
- package/dist/es2019/plugins/media/ui/CaptionPlaceholder/index.test.js +0 -41
- package/dist/es2019/plugins/panel/toolbar.test.js +0 -200
- package/dist/es2019/ui/ColorPickerButton/index.test.js +0 -88
- package/dist/es2019/ui/PortalProvider/index.test.js +0 -115
- package/dist/esm/plugins/caption/nodeviews/index.test.js +0 -125
- package/dist/esm/plugins/caption/pm-plugins/keymap.test.js +0 -195
- package/dist/esm/plugins/caption/pm-plugins/main.test.js +0 -124
- package/dist/esm/plugins/code-block/language-list.test.js +0 -71
- package/dist/esm/plugins/extension/ui/SaveIndicator/SaveIndicator.test.js +0 -92
- package/dist/esm/plugins/floating-toolbar/ui/EmojiPickerButton.test.js +0 -85
- package/dist/esm/plugins/media/commands/captions.test.js +0 -135
- package/dist/esm/plugins/media/commands/linking.test.js +0 -268
- package/dist/esm/plugins/media/ui/CaptionPlaceholder/index.test.js +0 -41
- package/dist/esm/plugins/panel/toolbar.test.js +0 -230
- package/dist/esm/ui/ColorPickerButton/index.test.js +0 -107
- package/dist/esm/ui/PortalProvider/index.test.js +0 -129
|
@@ -102,6 +102,7 @@ exports.ACTION = ACTION;
|
|
|
102
102
|
ACTION["ON_EDITOR_READY_CALLBACK"] = "onEditorReadyCallback";
|
|
103
103
|
ACTION["ON_CHANGE_CALLBACK"] = "onChangeCalled";
|
|
104
104
|
ACTION["REMOVE_ICON"] = "removedIcon";
|
|
105
|
+
ACTION["UFO_SESSION_COMPLETE"] = "ufoSessionComplete";
|
|
105
106
|
})(ACTION || (exports.ACTION = ACTION = {}));
|
|
106
107
|
|
|
107
108
|
var INPUT_METHOD;
|
|
@@ -246,8 +247,9 @@ exports.ACTION_SUBJECT_ID = ACTION_SUBJECT_ID;
|
|
|
246
247
|
ACTION_SUBJECT_ID["LINK"] = "link";
|
|
247
248
|
ACTION_SUBJECT_ID["LINK_PREVIEW"] = "linkPreview";
|
|
248
249
|
ACTION_SUBJECT_ID["MEDIA"] = "media";
|
|
249
|
-
ACTION_SUBJECT_ID["MEDIA_SINGLE"] = "mediaSingle";
|
|
250
250
|
ACTION_SUBJECT_ID["MEDIA_GROUP"] = "mediaGroup";
|
|
251
|
+
ACTION_SUBJECT_ID["MEDIA_INLINE"] = "mediaInline";
|
|
252
|
+
ACTION_SUBJECT_ID["MEDIA_SINGLE"] = "mediaSingle";
|
|
251
253
|
ACTION_SUBJECT_ID["MEDIA_LINK"] = "mediaLink";
|
|
252
254
|
ACTION_SUBJECT_ID["MENTION"] = "mention";
|
|
253
255
|
ACTION_SUBJECT_ID["NESTED_EXPAND"] = "nestedExpand";
|
|
@@ -81,9 +81,10 @@ var basePlugin = function basePlugin(options) {
|
|
|
81
81
|
}, {
|
|
82
82
|
name: 'frozenEditor',
|
|
83
83
|
plugin: function plugin(_ref3) {
|
|
84
|
-
var
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
var _options$inputTrackin;
|
|
85
|
+
|
|
86
|
+
var dispatchAnalyticsEvent = _ref3.dispatchAnalyticsEvent;
|
|
87
|
+
return options !== null && options !== void 0 && (_options$inputTrackin = options.inputTracking) !== null && _options$inputTrackin !== void 0 && _options$inputTrackin.enabled || options !== null && options !== void 0 && options.ufo ? (0, _frozenEditor.default)(dispatchAnalyticsEvent, options.inputTracking, options.browserFreezeTracking, options.ufo) : undefined;
|
|
87
88
|
}
|
|
88
89
|
}, {
|
|
89
90
|
name: 'decorationPlugin',
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.default = exports.DEFAULT_TRACK_SEVERITY_THRESHOLD_DEGRADED = exports.DEFAULT_TRACK_SEVERITY_THRESHOLD_NORMAL = exports.DEGRADED_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = exports.DEFAULT_FREEZE_THRESHOLD = void 0;
|
|
8
|
+
exports.default = exports.DEFAULT_TRACK_SEVERITY_THRESHOLD_DEGRADED = exports.DEFAULT_TRACK_SEVERITY_THRESHOLD_NORMAL = exports.DEGRADED_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = exports.DEFAULT_FREEZE_THRESHOLD = exports.frozenEditorPluginKey = void 0;
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
@@ -13,6 +13,8 @@ var _prosemirrorState = require("prosemirror-state");
|
|
|
13
13
|
|
|
14
14
|
var _editorCommon = require("@atlaskit/editor-common");
|
|
15
15
|
|
|
16
|
+
var _ufo = require("@atlaskit/editor-common/ufo");
|
|
17
|
+
|
|
16
18
|
var _analytics = require("../../analytics");
|
|
17
19
|
|
|
18
20
|
var _getParticipantsCount = require("../../collab-edit/get-participants-count");
|
|
@@ -29,6 +31,8 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
29
31
|
|
|
30
32
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
31
33
|
|
|
34
|
+
var frozenEditorPluginKey = new _prosemirrorState.PluginKey('frozenEditor');
|
|
35
|
+
exports.frozenEditorPluginKey = frozenEditorPluginKey;
|
|
32
36
|
var DEFAULT_KEYSTROKE_SAMPLING_LIMIT = 100;
|
|
33
37
|
var DEFAULT_SLOW_THRESHOLD = 300;
|
|
34
38
|
var DEFAULT_FREEZE_THRESHOLD = 600;
|
|
@@ -64,7 +68,7 @@ var dispatchLongTaskEvent = function dispatchLongTaskEvent(dispatchAnalyticsEven
|
|
|
64
68
|
});
|
|
65
69
|
};
|
|
66
70
|
|
|
67
|
-
var _default = function _default(dispatchAnalyticsEvent, inputTracking, browserFreezeTracking) {
|
|
71
|
+
var _default = function _default(dispatchAnalyticsEvent, inputTracking, browserFreezeTracking, ufo) {
|
|
68
72
|
var keystrokeCount = 0;
|
|
69
73
|
var interactionType;
|
|
70
74
|
|
|
@@ -80,6 +84,7 @@ var _default = function _default(dispatchAnalyticsEvent, inputTracking, browserF
|
|
|
80
84
|
var severityThresholdNormal = (inputTracking === null || inputTracking === void 0 ? void 0 : inputTracking.severityNormalThreshold) || DEFAULT_TRACK_SEVERITY_THRESHOLD_NORMAL;
|
|
81
85
|
var severityThresholdDegraded = (inputTracking === null || inputTracking === void 0 ? void 0 : inputTracking.severityDegradedThreshold) || DEFAULT_TRACK_SEVERITY_THRESHOLD_DEGRADED;
|
|
82
86
|
return new _prosemirrorState.Plugin({
|
|
87
|
+
key: frozenEditorPluginKey,
|
|
83
88
|
props: (0, _editorCommon.isPerformanceAPIAvailable)() ? {
|
|
84
89
|
handleTextInput: function handleTextInput(view) {
|
|
85
90
|
var state = view.state;
|
|
@@ -89,51 +94,76 @@ var _default = function _default(dispatchAnalyticsEvent, inputTracking, browserF
|
|
|
89
94
|
interactionType = _analytics.BROWSER_FREEZE_INTERACTION_TYPE.TYPING;
|
|
90
95
|
}
|
|
91
96
|
|
|
97
|
+
var experienceStore = ufo ? _ufo.ExperienceStore.getInstance(view) : undefined;
|
|
98
|
+
var trackTyping = samplingRate && ++keystrokeCount === samplingRate;
|
|
99
|
+
|
|
100
|
+
if (trackTyping) {
|
|
101
|
+
experienceStore === null || experienceStore === void 0 ? void 0 : experienceStore.start(_ufo.EditorExperience.typing);
|
|
102
|
+
}
|
|
103
|
+
|
|
92
104
|
requestAnimationFrame(function () {
|
|
93
105
|
var diff = (0, _getPerformanceTiming.getTimeSince)(now);
|
|
94
106
|
|
|
95
|
-
if (
|
|
96
|
-
var _getContextIdentifier2;
|
|
97
|
-
|
|
107
|
+
if (diff > slowThreshold) {
|
|
98
108
|
var nodesCount = allowCountNodes ? (0, _countNodes.countNodes)(view.state) : {};
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
109
|
+
|
|
110
|
+
if (inputTracking !== null && inputTracking !== void 0 && inputTracking.enabled) {
|
|
111
|
+
var _getContextIdentifier2;
|
|
112
|
+
|
|
113
|
+
dispatchAnalyticsEvent({
|
|
114
|
+
action: _analytics.ACTION.SLOW_INPUT,
|
|
115
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
116
|
+
attributes: _objectSpread(_objectSpread({
|
|
117
|
+
time: diff,
|
|
118
|
+
nodeSize: state.doc.nodeSize
|
|
119
|
+
}, nodesCount), {}, {
|
|
120
|
+
participants: (0, _getParticipantsCount.getParticipantsCount)(state),
|
|
121
|
+
objectId: (_getContextIdentifier2 = (0, _contextIdentifier.getContextIdentifier)(state)) === null || _getContextIdentifier2 === void 0 ? void 0 : _getContextIdentifier2.objectId
|
|
122
|
+
}),
|
|
123
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
124
|
+
});
|
|
115
125
|
}
|
|
116
126
|
|
|
117
|
-
|
|
127
|
+
experienceStore === null || experienceStore === void 0 ? void 0 : experienceStore.addMetadata(_ufo.EditorExperience.typing, {
|
|
128
|
+
slowInput: true
|
|
129
|
+
});
|
|
118
130
|
}
|
|
119
131
|
|
|
120
|
-
if (
|
|
121
|
-
var
|
|
132
|
+
if (trackTyping) {
|
|
133
|
+
var _getContextIdentifier4;
|
|
122
134
|
|
|
123
135
|
var _nodesCount = allowCountNodes ? (0, _countNodes.countNodes)(view.state) : {};
|
|
124
136
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
+
keystrokeCount = 0;
|
|
138
|
+
var severity = shouldTrackSeverity ? (0, _editorCommon.getAnalyticsEventSeverity)(diff, severityThresholdNormal, severityThresholdDegraded) : undefined;
|
|
139
|
+
|
|
140
|
+
if (inputTracking !== null && inputTracking !== void 0 && inputTracking.enabled) {
|
|
141
|
+
var _getContextIdentifier3;
|
|
142
|
+
|
|
143
|
+
var payload = {
|
|
144
|
+
action: _analytics.ACTION.INPUT_PERF_SAMPLING,
|
|
145
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
146
|
+
attributes: _objectSpread(_objectSpread({
|
|
147
|
+
time: diff,
|
|
148
|
+
nodeSize: state.doc.nodeSize
|
|
149
|
+
}, _nodesCount), {}, {
|
|
150
|
+
participants: (0, _getParticipantsCount.getParticipantsCount)(state),
|
|
151
|
+
objectId: (_getContextIdentifier3 = (0, _contextIdentifier.getContextIdentifier)(state)) === null || _getContextIdentifier3 === void 0 ? void 0 : _getContextIdentifier3.objectId,
|
|
152
|
+
severity: severity
|
|
153
|
+
}),
|
|
154
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
155
|
+
};
|
|
156
|
+
dispatchAnalyticsEvent(payload);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
experienceStore === null || experienceStore === void 0 ? void 0 : experienceStore.success(_ufo.EditorExperience.typing, _objectSpread(_objectSpread({
|
|
160
|
+
nodeSize: state.doc.nodeSize
|
|
161
|
+
}, _nodesCount), {}, {
|
|
162
|
+
participants: (0, _getParticipantsCount.getParticipantsCount)(state),
|
|
163
|
+
objectId: (_getContextIdentifier4 = (0, _contextIdentifier.getContextIdentifier)(state)) === null || _getContextIdentifier4 === void 0 ? void 0 : _getContextIdentifier4.objectId,
|
|
164
|
+
time: diff,
|
|
165
|
+
severity: severity
|
|
166
|
+
}));
|
|
137
167
|
}
|
|
138
168
|
});
|
|
139
169
|
return false;
|
|
@@ -20,7 +20,9 @@ var _styles = require("../../../../ui/styles");
|
|
|
20
20
|
var _templateObject, _templateObject2;
|
|
21
21
|
|
|
22
22
|
var BlockTypeMenuItem = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n > {\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0;\n }\n }\n ", ";\n"])), _editorCommon.headingsSharedStyles, function (props) {
|
|
23
|
-
return
|
|
23
|
+
return (// TEMP FIX: See https://product-fabric.atlassian.net/browse/ED-13878
|
|
24
|
+
props.selected ? "".concat(props.tagName, " { color: white !important; }") : ''
|
|
25
|
+
);
|
|
24
26
|
});
|
|
25
27
|
|
|
26
28
|
exports.BlockTypeMenuItem = BlockTypeMenuItem;
|
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
10
12
|
var _react = _interopRequireDefault(require("react"));
|
|
11
13
|
|
|
12
14
|
var _adfSchema = require("@atlaskit/adf-schema");
|
|
@@ -17,6 +19,10 @@ var _toolbar = require("./toolbar");
|
|
|
17
19
|
|
|
18
20
|
var _EditorSmartCardEvents = require("./ui/EditorSmartCardEvents");
|
|
19
21
|
|
|
22
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
+
|
|
24
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
25
|
+
|
|
20
26
|
var cardPlugin = function cardPlugin(options) {
|
|
21
27
|
return {
|
|
22
28
|
name: 'card',
|
|
@@ -39,13 +45,18 @@ var cardPlugin = function cardPlugin(options) {
|
|
|
39
45
|
return nodes;
|
|
40
46
|
},
|
|
41
47
|
pmPlugins: function pmPlugins() {
|
|
42
|
-
var _options$allowResizin, _options$useAlternati;
|
|
48
|
+
var _options$allowBlockCa, _options$allowResizin, _options$useAlternati;
|
|
43
49
|
|
|
50
|
+
var allowBlockCards = (_options$allowBlockCa = options.allowBlockCards) !== null && _options$allowBlockCa !== void 0 ? _options$allowBlockCa : true;
|
|
44
51
|
var allowResizing = (_options$allowResizin = options.allowResizing) !== null && _options$allowResizin !== void 0 ? _options$allowResizin : true;
|
|
45
52
|
var useAlternativePreloader = (_options$useAlternati = options.useAlternativePreloader) !== null && _options$useAlternati !== void 0 ? _options$useAlternati : true;
|
|
46
53
|
return [{
|
|
47
54
|
name: 'card',
|
|
48
|
-
plugin: (0, _main.createPlugin)(
|
|
55
|
+
plugin: (0, _main.createPlugin)(_objectSpread(_objectSpread({}, options), {}, {
|
|
56
|
+
allowBlockCards: allowBlockCards,
|
|
57
|
+
allowResizing: allowResizing,
|
|
58
|
+
useAlternativePreloader: useAlternativePreloader
|
|
59
|
+
}))
|
|
49
60
|
}];
|
|
50
61
|
},
|
|
51
62
|
contentComponent: function contentComponent(_ref) {
|
|
@@ -284,6 +284,7 @@ var EmbedCardComponent = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
284
284
|
var containerWidth = (0, _richMediaUtils.isRichMediaInsideOfBlockNode)(view, pos) ? lineLength : widthStateWidth;
|
|
285
285
|
|
|
286
286
|
var smartCard = /*#__PURE__*/_react.default.createElement(_smartCard.Card, {
|
|
287
|
+
key: url,
|
|
287
288
|
url: url,
|
|
288
289
|
appearance: "embed",
|
|
289
290
|
onClick: _this2.onClick,
|
|
@@ -31,12 +31,17 @@ var _blockCard = require("../nodeviews/blockCard");
|
|
|
31
31
|
|
|
32
32
|
var _inlineCard = require("../nodeviews/inlineCard");
|
|
33
33
|
|
|
34
|
-
var createPlugin = function createPlugin(
|
|
34
|
+
var createPlugin = function createPlugin(options) {
|
|
35
35
|
return function (_ref) {
|
|
36
36
|
var portalProviderAPI = _ref.portalProviderAPI,
|
|
37
37
|
eventDispatcher = _ref.eventDispatcher,
|
|
38
38
|
providerFactory = _ref.providerFactory,
|
|
39
39
|
dispatchAnalyticsEvent = _ref.dispatchAnalyticsEvent;
|
|
40
|
+
var platform = options.platform,
|
|
41
|
+
allowResizing = options.allowResizing,
|
|
42
|
+
useAlternativePreloader = options.useAlternativePreloader,
|
|
43
|
+
fullWidthMode = options.fullWidthMode,
|
|
44
|
+
createAnalyticsEvent = options.createAnalyticsEvent;
|
|
40
45
|
return new _prosemirrorState.Plugin({
|
|
41
46
|
state: {
|
|
42
47
|
init: function init() {
|
|
@@ -94,7 +99,7 @@ var createPlugin = function createPlugin(platform, allowResizing, useAlternative
|
|
|
94
99
|
* other tasks as per common implementations of the JavaScript event loop in browsers.
|
|
95
100
|
*/
|
|
96
101
|
var invoke = (0, _rafSchd.default)(function () {
|
|
97
|
-
return (0, _resolve.resolveWithProvider)(view, outstandingRequests, provider, request);
|
|
102
|
+
return (0, _resolve.resolveWithProvider)(view, outstandingRequests, provider, request, options);
|
|
98
103
|
});
|
|
99
104
|
rafCancellationCallbacks.push(invoke.cancel);
|
|
100
105
|
invoke();
|
|
@@ -14,19 +14,26 @@ var _doc = require("../doc");
|
|
|
14
14
|
// ============================================================================ //
|
|
15
15
|
// Used for all interactions with the EditorCardProvider.
|
|
16
16
|
// ============================================================================ //
|
|
17
|
-
var resolveWithProvider = function resolveWithProvider(view, outstandingRequests, provider, request) {
|
|
17
|
+
var resolveWithProvider = function resolveWithProvider(view, outstandingRequests, provider, request, options) {
|
|
18
18
|
var handleResolve = provider.resolve(request.url, request.appearance).then(function (resolvedCard) {
|
|
19
19
|
delete outstandingRequests[request.url];
|
|
20
20
|
return resolvedCard;
|
|
21
|
-
}).then(handleResolved(view, request), handleRejected(view, request));
|
|
21
|
+
}).then(handleResolved(view, request, options), handleRejected(view, request));
|
|
22
22
|
outstandingRequests[request.url] = handleResolve;
|
|
23
23
|
return handleResolve;
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
exports.resolveWithProvider = resolveWithProvider;
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var updateCardType = function updateCardType(resolvedCard, options) {
|
|
29
|
+
if ((resolvedCard === null || resolvedCard === void 0 ? void 0 : resolvedCard.type) === 'blockCard' && !options.allowBlockCards || (resolvedCard === null || resolvedCard === void 0 ? void 0 : resolvedCard.type) === 'embedCard' && !options.allowEmbeds) {
|
|
30
|
+
resolvedCard.type = 'inlineCard';
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
var handleResolved = function handleResolved(view, request, options) {
|
|
29
35
|
return function (resolvedCard) {
|
|
36
|
+
updateCardType(resolvedCard, options);
|
|
30
37
|
(0, _doc.replaceQueuedUrlWithCard)(request.url, resolvedCard, request.analyticsAction)(view.state, view.dispatch);
|
|
31
38
|
return resolvedCard;
|
|
32
39
|
};
|
|
@@ -70,7 +70,7 @@ var getToolbarConfig = function getToolbarConfig() {
|
|
|
70
70
|
return option.value === language;
|
|
71
71
|
}) || options.find(function (option) {
|
|
72
72
|
return option.alias.includes(language);
|
|
73
|
-
}) :
|
|
73
|
+
}) : null;
|
|
74
74
|
var languageSelect = {
|
|
75
75
|
id: 'editor.codeBlock.languageOptions',
|
|
76
76
|
type: 'select',
|
|
@@ -27,18 +27,14 @@ var toAvatar = function toAvatar(participant) {
|
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _default = (0, _memoizeOne.default)(toAvatar, function participantEquals(_ref, _ref2) {
|
|
31
31
|
var _ref3 = (0, _slicedToArray2.default)(_ref, 1),
|
|
32
|
-
|
|
32
|
+
a = _ref3[0];
|
|
33
33
|
|
|
34
34
|
var _ref4 = (0, _slicedToArray2.default)(_ref2, 1),
|
|
35
|
-
|
|
35
|
+
b = _ref4[0];
|
|
36
36
|
|
|
37
|
-
var a = aRaw;
|
|
38
|
-
var b = bRaw;
|
|
39
37
|
return a.name === b.name && a.avatar === b.avatar && a.sessionId === b.sessionId;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
var _default = (0, _memoizeOne.default)(toAvatar, participantEquals);
|
|
38
|
+
});
|
|
43
39
|
|
|
44
40
|
exports.default = _default;
|
|
@@ -21,7 +21,7 @@ var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
|
21
21
|
|
|
22
22
|
var _templateObject, _templateObject2;
|
|
23
23
|
|
|
24
|
-
var emojiStyles = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n .", " {\n cursor: pointer;\n\n &.", " > span {\n /** needed for selection style to cover custom emoji image properly */\n display: flex;\n }\n }\n\n &.", " {\n .", ",\n .", "\n > span {\n border-radius: 2px;\n ", "\n }\n }\n }\n"])), _editorCommon.EmojiSharedCssClassName.EMOJI_CONTAINER, _editorCommon.EmojiSharedCssClassName.EMOJI_NODE, _editorCommon.EmojiSharedCssClassName.EMOJI_IMAGE, _editorSharedStyles.akEditorSelectedNodeClassName, _editorCommon.EmojiSharedCssClassName.EMOJI_SPRITE, _editorCommon.EmojiSharedCssClassName.EMOJI_IMAGE, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.Blanket, _editorSharedStyles.SelectionStyle.BoxShadow]));
|
|
24
|
+
var emojiStyles = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n display: inline-block;\n\n .", " {\n cursor: pointer;\n\n &.", " > span {\n /** needed for selection style to cover custom emoji image properly */\n display: flex;\n }\n }\n\n &.", " {\n .", ",\n .", "\n > span {\n border-radius: 2px;\n ", "\n }\n }\n }\n"])), _editorCommon.EmojiSharedCssClassName.EMOJI_CONTAINER, _editorCommon.EmojiSharedCssClassName.EMOJI_NODE, _editorCommon.EmojiSharedCssClassName.EMOJI_IMAGE, _editorSharedStyles.akEditorSelectedNodeClassName, _editorCommon.EmojiSharedCssClassName.EMOJI_SPRITE, _editorCommon.EmojiSharedCssClassName.EMOJI_IMAGE, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.Blanket, _editorSharedStyles.SelectionStyle.BoxShadow]));
|
|
25
25
|
exports.emojiStyles = emojiStyles;
|
|
26
26
|
var grid = (0, _constants.gridSize)() / 2;
|
|
27
27
|
var fontSize = (0, _constants.fontSizeSmall)();
|
|
@@ -295,7 +295,6 @@ var createPlugin = function createPlugin(dispatch, providerFactory, extensionHan
|
|
|
295
295
|
var useLongPressSelection = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
|
|
296
296
|
var options = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : {};
|
|
297
297
|
var state = (0, _pluginFactory.createPluginState)(dispatch, {
|
|
298
|
-
layout: 'default',
|
|
299
298
|
showEditButton: false,
|
|
300
299
|
showContextPanel: false
|
|
301
300
|
});
|
|
@@ -348,14 +347,12 @@ var createPlugin = function createPlugin(dispatch, providerFactory, extensionHan
|
|
|
348
347
|
var showEditButton = shouldShowEditButton(extensionHandler, extensionProvider);
|
|
349
348
|
var updateExtension = getUpdateExtensionPromise(view, extensionHandler, extensionProvider).catch(function () {// do nothing;
|
|
350
349
|
});
|
|
351
|
-
var layout = selectedExtension ? node.attrs.layout : 'default';
|
|
352
350
|
(0, _commands.updateState)({
|
|
353
351
|
localId: node.attrs.localId,
|
|
354
352
|
showContextPanel: false,
|
|
355
353
|
element: newElement,
|
|
356
354
|
showEditButton: showEditButton,
|
|
357
|
-
updateExtension: updateExtension
|
|
358
|
-
layout: layout
|
|
355
|
+
updateExtension: updateExtension
|
|
359
356
|
})(state, dispatch);
|
|
360
357
|
} // New DOM element doesn't necessarily mean it's a new Node
|
|
361
358
|
else if (element !== newElement) {
|
|
@@ -62,28 +62,33 @@ var isLayoutSupported = function isLayoutSupported(state, selectedExtNode) {
|
|
|
62
62
|
return !!((selectedExtNode.node.type === bodiedExtension || selectedExtNode.node.type === extension && !(0, _prosemirrorUtils.hasParentNodeOfType)([bodiedExtension, table, expand].filter(Boolean))(selection)) && !(0, _prosemirrorUtils.hasParentNodeOfType)([layoutSection])(selection));
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
-
var breakoutOptions = function breakoutOptions(state, formatMessage,
|
|
66
|
-
var nodeWithPos = (0, _utils.getSelectedExtension)(state, true);
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
65
|
+
var breakoutOptions = function breakoutOptions(state, formatMessage, breakoutEnabled) {
|
|
66
|
+
var nodeWithPos = (0, _utils.getSelectedExtension)(state, true); // we should only return breakout options when breakouts are enabled and the node supports them
|
|
67
|
+
|
|
68
|
+
if (nodeWithPos && breakoutEnabled && isLayoutSupported(state, nodeWithPos)) {
|
|
69
|
+
var layout = nodeWithPos.node.attrs.layout;
|
|
70
|
+
return [{
|
|
71
|
+
type: 'button',
|
|
72
|
+
icon: _mediaCenter.default,
|
|
73
|
+
onClick: (0, _commands.updateExtensionLayout)('default'),
|
|
74
|
+
selected: layout === 'default',
|
|
75
|
+
title: formatMessage(_messages.default.layoutFixedWidth)
|
|
76
|
+
}, {
|
|
77
|
+
type: 'button',
|
|
78
|
+
icon: _mediaWide.default,
|
|
79
|
+
onClick: (0, _commands.updateExtensionLayout)('wide'),
|
|
80
|
+
selected: layout === 'wide',
|
|
81
|
+
title: formatMessage(_messages.default.layoutWide)
|
|
82
|
+
}, {
|
|
83
|
+
type: 'button',
|
|
84
|
+
icon: _mediaFullWidth.default,
|
|
85
|
+
onClick: (0, _commands.updateExtensionLayout)('full-width'),
|
|
86
|
+
selected: layout === 'full-width',
|
|
87
|
+
title: formatMessage(_messages.default.layoutFullWidth)
|
|
88
|
+
}];
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return [];
|
|
87
92
|
};
|
|
88
93
|
|
|
89
94
|
var editButton = function editButton(formatMessage, extensionState) {
|
|
@@ -119,7 +124,7 @@ var getToolbarConfig = function getToolbarConfig() {
|
|
|
119
124
|
if (extensionState && !extensionState.showContextPanel && extensionState.element) {
|
|
120
125
|
var nodeType = [state.schema.nodes.extension, state.schema.nodes.inlineExtension, state.schema.nodes.bodiedExtension];
|
|
121
126
|
var editButtonArray = editButton(formatMessage, extensionState);
|
|
122
|
-
var breakoutButtonArray = breakoutOptions(state, formatMessage,
|
|
127
|
+
var breakoutButtonArray = breakoutOptions(state, formatMessage, breakoutEnabled);
|
|
123
128
|
return {
|
|
124
129
|
title: 'Extension floating controls',
|
|
125
130
|
getDomRef: function getDomRef() {
|
|
@@ -13,6 +13,8 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
13
13
|
|
|
14
14
|
var _normalizeFeatureFlags = require("@atlaskit/editor-common/normalize-feature-flags");
|
|
15
15
|
|
|
16
|
+
var _editorCommon = require("@atlaskit/editor-common");
|
|
17
|
+
|
|
16
18
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
17
19
|
|
|
18
20
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
@@ -22,9 +24,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
22
24
|
* which is used by both current and archv3 editors.
|
|
23
25
|
*/
|
|
24
26
|
function createFeatureFlagsFromProps(props) {
|
|
25
|
-
var _props$allowTextColor, _props$performanceTra, _props$performanceTra2, _props$featureFlags, _props$featureFlags2, _props$featureFlags3, _props$allowTables, _props$featureFlags4, _props$featureFlags5, _props$allowTables2, _props$featureFlags6, _props$featureFlags7, _props$allowTables3, _props$featureFlags8, _props$featureFlags9, _props$allowTables4, _props$featureFlags10, _props$featureFlags11, _props$allowTables5, _props$allowExtension, _props$featureFlags12, _props$featureFlags13, _props$featureFlags14, _props$featureFlags15, _props$featureFlags16, _props$featureFlags17, _props$featureFlags18, _props$featureFlags19, _props$featureFlags20, _props$featureFlags21, _props$featureFlags22, _props$featureFlags23, _props$featureFlags24, _props$featureFlags25;
|
|
27
|
+
var _props$allowTextColor, _props$performanceTra, _props$performanceTra2, _props$featureFlags, _props$featureFlags2, _props$featureFlags3, _props$allowTables, _props$featureFlags4, _props$featureFlags5, _props$allowTables2, _props$featureFlags6, _props$featureFlags7, _props$allowTables3, _props$featureFlags8, _props$featureFlags9, _props$allowTables4, _props$featureFlags10, _props$featureFlags11, _props$allowTables5, _props$allowExtension, _props$featureFlags12, _props$featureFlags13, _props$featureFlags14, _props$featureFlags15, _props$featureFlags16, _props$featureFlags17, _props$featureFlags18, _props$featureFlags19, _props$featureFlags20, _props$featureFlags21, _props$featureFlags22, _props$featureFlags23, _props$featureFlags24, _props$featureFlags25, _props$featureFlags26, _props$featureFlags27;
|
|
26
28
|
|
|
27
|
-
|
|
29
|
+
var normalizedFeatureFlags = (0, _normalizeFeatureFlags.normalizeFeatureFlags)(props.featureFlags);
|
|
30
|
+
return _objectSpread(_objectSpread({}, normalizedFeatureFlags), {}, {
|
|
28
31
|
newInsertionBehaviour: props.allowNewInsertionBehaviour,
|
|
29
32
|
interactiveExpand: typeof props.allowExpand === 'boolean' ? props.allowExpand : Boolean(props.allowExpand && props.allowExpand.allowInteractiveExpand !== false),
|
|
30
33
|
placeholderBracketHint: !!props.placeholderBracketHint,
|
|
@@ -49,6 +52,8 @@ function createFeatureFlagsFromProps(props) {
|
|
|
49
52
|
errorBoundaryDocStructure: Boolean(typeof ((_props$featureFlags18 = props.featureFlags) === null || _props$featureFlags18 === void 0 ? void 0 : _props$featureFlags18.useErrorBoundaryDocStructure) === 'boolean' ? !!((_props$featureFlags19 = props.featureFlags) !== null && _props$featureFlags19 !== void 0 && _props$featureFlags19.useErrorBoundaryDocStructure) : false),
|
|
50
53
|
synchronyErrorDocStructure: Boolean(typeof ((_props$featureFlags20 = props.featureFlags) === null || _props$featureFlags20 === void 0 ? void 0 : _props$featureFlags20.synchronyErrorDocStructure) === 'boolean' ? !!((_props$featureFlags21 = props.featureFlags) !== null && _props$featureFlags21 !== void 0 && _props$featureFlags21.synchronyErrorDocStructure) : false),
|
|
51
54
|
enableViewUpdateSubscription: Boolean(typeof ((_props$featureFlags22 = props.featureFlags) === null || _props$featureFlags22 === void 0 ? void 0 : _props$featureFlags22.enableViewUpdateSubscription) === 'boolean' ? !!((_props$featureFlags23 = props.featureFlags) !== null && _props$featureFlags23 !== void 0 && _props$featureFlags23.enableViewUpdateSubscription) : false),
|
|
52
|
-
collabAvatarScroll: Boolean(typeof ((_props$featureFlags24 = props.featureFlags) === null || _props$featureFlags24 === void 0 ? void 0 : _props$featureFlags24.collabAvatarScroll) === 'boolean' ? !!((_props$featureFlags25 = props.featureFlags) !== null && _props$featureFlags25 !== void 0 && _props$featureFlags25.collabAvatarScroll) : false)
|
|
55
|
+
collabAvatarScroll: Boolean(typeof ((_props$featureFlags24 = props.featureFlags) === null || _props$featureFlags24 === void 0 ? void 0 : _props$featureFlags24.collabAvatarScroll) === 'boolean' ? !!((_props$featureFlags25 = props.featureFlags) !== null && _props$featureFlags25 !== void 0 && _props$featureFlags25.collabAvatarScroll) : false),
|
|
56
|
+
ufo: Boolean(typeof ((_props$featureFlags26 = props.featureFlags) === null || _props$featureFlags26 === void 0 ? void 0 : _props$featureFlags26.ufo) === 'boolean' ? !!((_props$featureFlags27 = props.featureFlags) !== null && _props$featureFlags27 !== void 0 && _props$featureFlags27.ufo) : false),
|
|
57
|
+
codeBlockSyntaxHighlighting: Boolean(typeof normalizedFeatureFlags.codeBlockSyntaxHighlighting === 'boolean' ? !!normalizedFeatureFlags.codeBlockSyntaxHighlighting && !_editorCommon.browser.safari : false)
|
|
53
58
|
});
|
|
54
59
|
}
|
|
@@ -110,12 +110,16 @@ var Find = /*#__PURE__*/function (_React$Component) {
|
|
|
110
110
|
}
|
|
111
111
|
});
|
|
112
112
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleFindChange", function (event) {
|
|
113
|
-
|
|
114
|
-
_this.updateFindValue(event.target.value);
|
|
115
|
-
});
|
|
113
|
+
_this.updateFindValue(event.target.value);
|
|
116
114
|
});
|
|
117
115
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateFindValue", function (value) {
|
|
118
|
-
_this.
|
|
116
|
+
_this.setState({
|
|
117
|
+
localFindText: value
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
_this.skipWhileComposing(function () {
|
|
121
|
+
_this.props.onFind(value);
|
|
122
|
+
});
|
|
119
123
|
});
|
|
120
124
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleFindKeyDown", function (event) {
|
|
121
125
|
return _this.skipWhileComposing(function () {
|
|
@@ -187,7 +191,13 @@ var Find = /*#__PURE__*/function (_React$Component) {
|
|
|
187
191
|
});
|
|
188
192
|
_this.closeIcon = /*#__PURE__*/_react.default.createElement(_close.default, {
|
|
189
193
|
label: _this.closeFindReplaceDialog
|
|
190
|
-
});
|
|
194
|
+
}); // We locally manage the value of the input inside this component in order to support compositions.
|
|
195
|
+
// This requires some additional work inside componentDidUpdate to ensure we support changes that
|
|
196
|
+
// occur to this value which do not originate from this component.
|
|
197
|
+
|
|
198
|
+
_this.state = {
|
|
199
|
+
localFindText: _this.props.findText || ''
|
|
200
|
+
};
|
|
191
201
|
return _this;
|
|
192
202
|
}
|
|
193
203
|
|
|
@@ -200,7 +210,17 @@ var Find = /*#__PURE__*/function (_React$Component) {
|
|
|
200
210
|
}, {
|
|
201
211
|
key: "componentDidUpdate",
|
|
202
212
|
value: function componentDidUpdate() {
|
|
203
|
-
this.focusFindTextfield();
|
|
213
|
+
this.focusFindTextfield(); // If the external prop findText changes and we aren't in a composition we should update to the
|
|
214
|
+
// use the external prop value.
|
|
215
|
+
//
|
|
216
|
+
// An example of where this may happen is when a find occurs through the user selecting some text
|
|
217
|
+
// and pressing Mod-f.
|
|
218
|
+
|
|
219
|
+
if (!this.isComposing && this.props.findText !== this.state.localFindText) {
|
|
220
|
+
this.setState({
|
|
221
|
+
localFindText: this.props.findText || ''
|
|
222
|
+
});
|
|
223
|
+
}
|
|
204
224
|
}
|
|
205
225
|
}, {
|
|
206
226
|
key: "render",
|
|
@@ -219,7 +239,7 @@ var Find = /*#__PURE__*/function (_React$Component) {
|
|
|
219
239
|
name: "find",
|
|
220
240
|
appearance: "none",
|
|
221
241
|
placeholder: this.find,
|
|
222
|
-
value:
|
|
242
|
+
value: this.state.localFindText,
|
|
223
243
|
ref: this.findTextfieldRef,
|
|
224
244
|
autoComplete: "off",
|
|
225
245
|
onChange: this.handleFindChange,
|
|
@@ -10,9 +10,9 @@ exports.default = void 0;
|
|
|
10
10
|
|
|
11
11
|
var _prosemirrorKeymap = require("prosemirror-keymap");
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _adfSchema = require("@atlaskit/adf-schema");
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var keymaps = _interopRequireWildcard(require("../../../keymaps"));
|
|
16
16
|
|
|
17
17
|
var _main = require("../pm-plugins/main");
|
|
18
18
|
|
|
@@ -62,7 +62,7 @@ var mayConvertLastWordToHyperlink = function mayConvertLastWordToHyperlink(skipA
|
|
|
62
62
|
|
|
63
63
|
var words = nodeBefore.text.split(' ');
|
|
64
64
|
var lastWord = words[words.length - 1];
|
|
65
|
-
var match = (0,
|
|
65
|
+
var match = (0, _adfSchema.getLinkMatch)(lastWord);
|
|
66
66
|
|
|
67
67
|
if (match) {
|
|
68
68
|
var hyperlinkedText = match.raw;
|
|
@@ -144,7 +144,8 @@ var mapActivityProviderResultToLinkSearchItemData = function mapActivityProvider
|
|
|
144
144
|
container: container,
|
|
145
145
|
iconUrl: iconUrl,
|
|
146
146
|
url: url,
|
|
147
|
-
lastViewedDate: viewedTimestamp ? new Date(viewedTimestamp) : undefined
|
|
147
|
+
lastViewedDate: viewedTimestamp ? new Date(viewedTimestamp) : undefined,
|
|
148
|
+
prefetch: true
|
|
148
149
|
};
|
|
149
150
|
};
|
|
150
151
|
|
|
@@ -161,7 +162,8 @@ var mapSearchProviderResultToLinkSearchItemData = function mapSearchProviderResu
|
|
|
161
162
|
name: title,
|
|
162
163
|
url: url,
|
|
163
164
|
lastUpdatedDate: updatedTimestamp ? new Date(updatedTimestamp) : undefined,
|
|
164
|
-
icon: contentType && _utils2.mapContentTypeToIcon[contentType] || defaultIcon
|
|
165
|
+
icon: contentType && _utils2.mapContentTypeToIcon[contentType] || defaultIcon,
|
|
166
|
+
prefetch: false
|
|
165
167
|
};
|
|
166
168
|
};
|
|
167
169
|
|
|
@@ -502,7 +504,7 @@ var HyperlinkLinkAddToolbar = /*#__PURE__*/function (_PureComponent) {
|
|
|
502
504
|
}
|
|
503
505
|
|
|
504
506
|
if (interaction === 'click' || _this.isUrlPopulatedWithSelectedItem()) {
|
|
505
|
-
var _pluginState$searchSe3;
|
|
507
|
+
var _pluginState$searchSe3, _selectedItem$prefetc;
|
|
506
508
|
|
|
507
509
|
/**
|
|
508
510
|
* When it's a mouse click even or the selectedItem.url matches displayUrl, we think
|
|
@@ -520,7 +522,8 @@ var HyperlinkLinkAddToolbar = /*#__PURE__*/function (_PureComponent) {
|
|
|
520
522
|
trigger: interaction,
|
|
521
523
|
resultCount: items.length,
|
|
522
524
|
selectedResultId: selectedItem.objectId,
|
|
523
|
-
selectedRelativePosition: selectedIndex
|
|
525
|
+
selectedRelativePosition: selectedIndex,
|
|
526
|
+
prefetch: (_selectedItem$prefetc = selectedItem.prefetch) !== null && _selectedItem$prefetc !== void 0 ? _selectedItem$prefetc : false
|
|
524
527
|
},
|
|
525
528
|
eventType: _analytics.EVENT_TYPE.UI
|
|
526
529
|
});
|