@atlaskit/editor-plugin-paste-options-toolbar 0.2.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 +1 -0
- package/LICENSE.md +13 -0
- package/README.md +9 -0
- package/dist/cjs/actions.js +15 -0
- package/dist/cjs/commands.js +146 -0
- package/dist/cjs/index.js +12 -0
- package/dist/cjs/messages.js +29 -0
- package/dist/cjs/plugin.js +67 -0
- package/dist/cjs/pm-plugins/constants.js +13 -0
- package/dist/cjs/pm-plugins/main.js +66 -0
- package/dist/cjs/pm-plugins/plugin-factory.js +31 -0
- package/dist/cjs/reducer.js +50 -0
- package/dist/cjs/styles.js +12 -0
- package/dist/cjs/toolbar.js +95 -0
- package/dist/cjs/types.js +15 -0
- package/dist/cjs/ui/paste-icon.js +22 -0
- package/dist/cjs/ui/styles.js +12 -0
- package/dist/cjs/util/format-handlers.js +186 -0
- package/dist/cjs/util/index.js +45 -0
- package/dist/es2019/actions.js +9 -0
- package/dist/es2019/commands.js +134 -0
- package/dist/es2019/index.js +1 -0
- package/dist/es2019/messages.js +23 -0
- package/dist/es2019/plugin.js +64 -0
- package/dist/es2019/pm-plugins/constants.js +7 -0
- package/dist/es2019/pm-plugins/main.js +63 -0
- package/dist/es2019/pm-plugins/plugin-factory.js +23 -0
- package/dist/es2019/reducer.js +44 -0
- package/dist/es2019/styles.js +1 -0
- package/dist/es2019/toolbar.js +92 -0
- package/dist/es2019/types.js +9 -0
- package/dist/es2019/ui/paste-icon.js +14 -0
- package/dist/es2019/ui/styles.js +10 -0
- package/dist/es2019/util/format-handlers.js +196 -0
- package/dist/es2019/util/index.js +37 -0
- package/dist/esm/actions.js +9 -0
- package/dist/esm/commands.js +140 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/messages.js +23 -0
- package/dist/esm/plugin.js +61 -0
- package/dist/esm/pm-plugins/constants.js +7 -0
- package/dist/esm/pm-plugins/main.js +60 -0
- package/dist/esm/pm-plugins/plugin-factory.js +25 -0
- package/dist/esm/reducer.js +43 -0
- package/dist/esm/styles.js +1 -0
- package/dist/esm/toolbar.js +88 -0
- package/dist/esm/types.js +9 -0
- package/dist/esm/ui/paste-icon.js +16 -0
- package/dist/esm/ui/styles.js +5 -0
- package/dist/esm/util/format-handlers.js +178 -0
- package/dist/esm/util/index.js +37 -0
- package/dist/types/actions.d.ts +34 -0
- package/dist/types/commands.d.ts +16 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/messages.d.ts +22 -0
- package/dist/types/plugin.d.ts +6 -0
- package/dist/types/pm-plugins/constants.d.ts +7 -0
- package/dist/types/pm-plugins/main.d.ts +3 -0
- package/dist/types/pm-plugins/plugin-factory.d.ts +2 -0
- package/dist/types/reducer.d.ts +3 -0
- package/dist/types/styles.d.ts +1 -0
- package/dist/types/toolbar.d.ts +9 -0
- package/dist/types/types.d.ts +25 -0
- package/dist/types/ui/paste-icon.d.ts +5 -0
- package/dist/types/ui/styles.d.ts +1 -0
- package/dist/types/util/format-handlers.d.ts +9 -0
- package/dist/types/util/index.d.ts +7 -0
- package/dist/types-ts4.5/actions.d.ts +34 -0
- package/dist/types-ts4.5/commands.d.ts +16 -0
- package/dist/types-ts4.5/index.d.ts +1 -0
- package/dist/types-ts4.5/messages.d.ts +22 -0
- package/dist/types-ts4.5/plugin.d.ts +9 -0
- package/dist/types-ts4.5/pm-plugins/constants.d.ts +7 -0
- package/dist/types-ts4.5/pm-plugins/main.d.ts +3 -0
- package/dist/types-ts4.5/pm-plugins/plugin-factory.d.ts +2 -0
- package/dist/types-ts4.5/reducer.d.ts +3 -0
- package/dist/types-ts4.5/styles.d.ts +1 -0
- package/dist/types-ts4.5/toolbar.d.ts +9 -0
- package/dist/types-ts4.5/types.d.ts +25 -0
- package/dist/types-ts4.5/ui/paste-icon.d.ts +5 -0
- package/dist/types-ts4.5/ui/styles.d.ts +1 -0
- package/dist/types-ts4.5/util/format-handlers.d.ts +9 -0
- package/dist/types-ts4.5/util/index.d.ts +7 -0
- package/package.json +114 -0
- package/report.api.md +46 -0
- package/styles/package.json +15 -0
- package/tmp/api-report-tmp.d.ts +19 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# @atlaskit/editor-plugin-paste-options-toolbar
|
package/LICENSE.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Copyright 2023 Atlassian Pty Ltd
|
|
2
|
+
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
you may not use this file except in compliance with the License.
|
|
5
|
+
You may obtain a copy of the License at
|
|
6
|
+
|
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
|
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
See the License for the specific language governing permissions and
|
|
13
|
+
limitations under the License.
|
package/README.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# EditorPluginPasteOptionsToolbar
|
|
2
|
+
|
|
3
|
+
Paste options toolbar for @atlaskit/editor-core
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
`import EditorPluginPasteOptionsToolbar from '@atlaskit/editor-plugin-paste-options-toolbar';`
|
|
8
|
+
|
|
9
|
+
Detailed docs and example usage can be found [here](https://atlaskit.atlassian.com/packages/editor/editor-plugin-paste-options-toolbar).
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PastePluginActionTypes = void 0;
|
|
7
|
+
var PastePluginActionTypes = exports.PastePluginActionTypes = /*#__PURE__*/function (PastePluginActionTypes) {
|
|
8
|
+
PastePluginActionTypes["START_TRACKING_PASTED_MACRO_POSITIONS"] = "START_TRACKING_PASTED_MACRO_POSITIONS";
|
|
9
|
+
PastePluginActionTypes["STOP_TRACKING_PASTED_MACRO_POSITIONS"] = "STOP_TRACKING_PASTED_MACRO_POSITIONS";
|
|
10
|
+
PastePluginActionTypes["SHOW_PASTE_OPTIONS"] = "SHOW_PASTE_OPTIONS";
|
|
11
|
+
PastePluginActionTypes["HIDE_PASTE_OPTIONS"] = "HIDE_PASTE_OPTIONS";
|
|
12
|
+
PastePluginActionTypes["HIGHLIGHT_CONTENT"] = "HIGHLIGHT_CONTENT";
|
|
13
|
+
PastePluginActionTypes["CHANGE_FORMAT"] = "CHANGE_FORMAT";
|
|
14
|
+
return PastePluginActionTypes;
|
|
15
|
+
}({});
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.showToolbar = exports.highlightContent = exports.hideToolbar = exports.dropdownClickHandler = exports.checkAndHideToolbar = exports.changeToRichTextWithAnalytics = exports.changeToRichText = exports.changeToPlainTextWithAnalytics = exports.changeToPlainText = exports.changeToMarkdownWithAnalytics = exports.changeToMarkDown = void 0;
|
|
7
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
8
|
+
var _editorAnalytics = require("@atlaskit/editor-common/editor-analytics");
|
|
9
|
+
var _actions = require("./actions");
|
|
10
|
+
var _pluginFactory = require("./pm-plugins/plugin-factory");
|
|
11
|
+
var _types = require("./types");
|
|
12
|
+
var _formatHandlers = require("./util/format-handlers");
|
|
13
|
+
var showToolbar = exports.showToolbar = function showToolbar(lastContentPasted, selectedOption) {
|
|
14
|
+
var commandAction = function commandAction(editorState) {
|
|
15
|
+
return {
|
|
16
|
+
type: _actions.PastePluginActionTypes.SHOW_PASTE_OPTIONS,
|
|
17
|
+
data: {
|
|
18
|
+
selectedOption: selectedOption,
|
|
19
|
+
plaintext: lastContentPasted.text,
|
|
20
|
+
isPlainText: lastContentPasted.isPlainText,
|
|
21
|
+
richTextSlice: lastContentPasted.pastedSlice,
|
|
22
|
+
pasteStartPos: lastContentPasted.pasteStartPos,
|
|
23
|
+
pasteEndPos: lastContentPasted.pasteEndPos
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
return (0, _pluginFactory.createCommand)(commandAction);
|
|
28
|
+
};
|
|
29
|
+
var changeToPlainText = exports.changeToPlainText = function changeToPlainText(pasteStartPos, plaintext) {
|
|
30
|
+
var plaintextTransformer = function plaintextTransformer(tr, state) {
|
|
31
|
+
return (0, _formatHandlers.formatPlainText)(state, pasteStartPos, plaintext);
|
|
32
|
+
};
|
|
33
|
+
var commandAction = function commandAction(editorState) {
|
|
34
|
+
return {
|
|
35
|
+
type: _actions.PastePluginActionTypes.CHANGE_FORMAT,
|
|
36
|
+
data: {
|
|
37
|
+
selectedOption: _types.ToolbarDropdownOption.PlainText
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
return (0, _pluginFactory.createCommand)(commandAction, plaintextTransformer);
|
|
42
|
+
};
|
|
43
|
+
var changeToPlainTextWithAnalytics = exports.changeToPlainTextWithAnalytics = function changeToPlainTextWithAnalytics(editorAnalyticsAPI, sliceSize) {
|
|
44
|
+
return function (pasteStartPos, plaintext) {
|
|
45
|
+
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsAPI, {
|
|
46
|
+
action: _analytics.ACTION.PASTED,
|
|
47
|
+
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
48
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
49
|
+
attributes: {
|
|
50
|
+
inputMethod: _analytics.INPUT_METHOD.TOOLBAR,
|
|
51
|
+
type: _analytics.PasteTypes.plain,
|
|
52
|
+
content: _analytics.PasteContents.text,
|
|
53
|
+
pasteSize: sliceSize
|
|
54
|
+
}
|
|
55
|
+
})(changeToPlainText(pasteStartPos, plaintext));
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
var dropdownClickHandler = exports.dropdownClickHandler = function dropdownClickHandler() {
|
|
59
|
+
return highlightContent();
|
|
60
|
+
};
|
|
61
|
+
var changeToRichText = exports.changeToRichText = function changeToRichText(pasteStartPos) {
|
|
62
|
+
var transformer = function transformer(tr, state) {
|
|
63
|
+
var pastePluginState = _types.pasteOptionsPluginKey.getState(state);
|
|
64
|
+
return (0, _formatHandlers.formatRichText)(state, pasteStartPos, pastePluginState.richTextSlice);
|
|
65
|
+
};
|
|
66
|
+
var commandAction = function commandAction(editorState) {
|
|
67
|
+
return {
|
|
68
|
+
type: _actions.PastePluginActionTypes.CHANGE_FORMAT,
|
|
69
|
+
data: {
|
|
70
|
+
selectedOption: _types.ToolbarDropdownOption.RichText
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
return (0, _pluginFactory.createCommand)(commandAction, transformer);
|
|
75
|
+
};
|
|
76
|
+
var changeToRichTextWithAnalytics = exports.changeToRichTextWithAnalytics = function changeToRichTextWithAnalytics(editorAnalyticsAPI) {
|
|
77
|
+
return function (pasteStartPos) {
|
|
78
|
+
var payloadCallback = function payloadCallback(state) {
|
|
79
|
+
var _pastePluginState$ric;
|
|
80
|
+
var pastePluginState = _types.pasteOptionsPluginKey.getState(state);
|
|
81
|
+
return {
|
|
82
|
+
action: _analytics.ACTION.PASTED,
|
|
83
|
+
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
84
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
85
|
+
attributes: {
|
|
86
|
+
inputMethod: _analytics.INPUT_METHOD.TOOLBAR,
|
|
87
|
+
type: _analytics.PasteTypes.richText,
|
|
88
|
+
content: _analytics.PasteContents.text,
|
|
89
|
+
pasteSize: ((_pastePluginState$ric = pastePluginState.richTextSlice) === null || _pastePluginState$ric === void 0 ? void 0 : _pastePluginState$ric.size) || 0
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsAPI, payloadCallback)(changeToRichText(pasteStartPos));
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
var changeToMarkDown = exports.changeToMarkDown = function changeToMarkDown(pasteStartPos, plaintext) {
|
|
97
|
+
var markdownTransformer = function markdownTransformer(tr, state) {
|
|
98
|
+
return (0, _formatHandlers.formatMarkdown)(state, pasteStartPos, plaintext);
|
|
99
|
+
};
|
|
100
|
+
var commandAction = function commandAction(editorState) {
|
|
101
|
+
return {
|
|
102
|
+
type: _actions.PastePluginActionTypes.CHANGE_FORMAT,
|
|
103
|
+
data: {
|
|
104
|
+
selectedOption: _types.ToolbarDropdownOption.Markdown
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
return (0, _pluginFactory.createCommand)(commandAction, markdownTransformer);
|
|
109
|
+
};
|
|
110
|
+
var changeToMarkdownWithAnalytics = exports.changeToMarkdownWithAnalytics = function changeToMarkdownWithAnalytics(editorAnalyticsAPI, sliceSize) {
|
|
111
|
+
return function (pasteStartPos, plaintext) {
|
|
112
|
+
return (0, _editorAnalytics.withAnalytics)(editorAnalyticsAPI, {
|
|
113
|
+
action: _analytics.ACTION.PASTED,
|
|
114
|
+
actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
|
|
115
|
+
eventType: _analytics.EVENT_TYPE.TRACK,
|
|
116
|
+
attributes: {
|
|
117
|
+
inputMethod: _analytics.INPUT_METHOD.TOOLBAR,
|
|
118
|
+
type: _analytics.PasteTypes.markdown,
|
|
119
|
+
content: _analytics.PasteContents.text,
|
|
120
|
+
pasteSize: sliceSize
|
|
121
|
+
}
|
|
122
|
+
})(changeToMarkDown(pasteStartPos, plaintext));
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
var highlightContent = exports.highlightContent = function highlightContent() {
|
|
126
|
+
var commandAction = function commandAction(editorState) {
|
|
127
|
+
return {
|
|
128
|
+
type: _actions.PastePluginActionTypes.HIGHLIGHT_CONTENT
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
return (0, _pluginFactory.createCommand)(commandAction);
|
|
132
|
+
};
|
|
133
|
+
var hideToolbar = exports.hideToolbar = function hideToolbar() {
|
|
134
|
+
var commandAction = function commandAction(editorState) {
|
|
135
|
+
return {
|
|
136
|
+
type: _actions.PastePluginActionTypes.HIDE_PASTE_OPTIONS
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
return (0, _pluginFactory.createCommand)(commandAction);
|
|
140
|
+
};
|
|
141
|
+
var checkAndHideToolbar = exports.checkAndHideToolbar = function checkAndHideToolbar(view) {
|
|
142
|
+
var pluginState = _types.pasteOptionsPluginKey.getState(view.state);
|
|
143
|
+
if (pluginState.showToolbar) {
|
|
144
|
+
hideToolbar()(view.state, view.dispatch);
|
|
145
|
+
}
|
|
146
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "pasteOptionsToolbarPlugin", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _plugin.pasteOptionsToolbarPlugin;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _plugin = require("./plugin");
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.messages = void 0;
|
|
7
|
+
var _reactIntlNext = require("react-intl-next");
|
|
8
|
+
var messages = exports.messages = (0, _reactIntlNext.defineMessages)({
|
|
9
|
+
pasteOptions: {
|
|
10
|
+
id: 'fabric.editor.pasteOptions',
|
|
11
|
+
defaultMessage: 'Paste options floating controls',
|
|
12
|
+
description: 'Opens a menu with additional paste options'
|
|
13
|
+
},
|
|
14
|
+
plainText: {
|
|
15
|
+
id: 'fabric.editor.plainText',
|
|
16
|
+
defaultMessage: 'Use plain text',
|
|
17
|
+
description: 'Converts pasted text into plain text'
|
|
18
|
+
},
|
|
19
|
+
markdown: {
|
|
20
|
+
id: 'fabric.editor.useMarkdown',
|
|
21
|
+
defaultMessage: 'Use Markdown',
|
|
22
|
+
description: 'Converts pasted text into Markdown'
|
|
23
|
+
},
|
|
24
|
+
richText: {
|
|
25
|
+
id: 'fabric.editor.richText',
|
|
26
|
+
defaultMessage: 'Use rich text',
|
|
27
|
+
description: 'Converts pasted text into Rich text'
|
|
28
|
+
}
|
|
29
|
+
});
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.pasteOptionsToolbarPlugin = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
9
|
+
var _commands = require("./commands");
|
|
10
|
+
var _main = require("./pm-plugins/main");
|
|
11
|
+
var _toolbar = require("./toolbar");
|
|
12
|
+
var _types = require("./types");
|
|
13
|
+
var pasteOptionsToolbarPlugin = exports.pasteOptionsToolbarPlugin = function pasteOptionsToolbarPlugin(_ref) {
|
|
14
|
+
var _api$analytics;
|
|
15
|
+
var config = _ref.config,
|
|
16
|
+
api = _ref.api;
|
|
17
|
+
var editorAnalyticsAPI = api === null || api === void 0 || (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions;
|
|
18
|
+
return {
|
|
19
|
+
name: 'pasteOptionsToolbarPlugin',
|
|
20
|
+
pmPlugins: function pmPlugins() {
|
|
21
|
+
return [{
|
|
22
|
+
name: 'pasteOptionsToolbarPlugin',
|
|
23
|
+
plugin: function plugin(_ref2) {
|
|
24
|
+
var dispatch = _ref2.dispatch;
|
|
25
|
+
return (0, _main.createPlugin)(dispatch);
|
|
26
|
+
}
|
|
27
|
+
}];
|
|
28
|
+
},
|
|
29
|
+
pluginsOptions: {
|
|
30
|
+
floatingToolbar: function floatingToolbar(state, intl) {
|
|
31
|
+
var pastePluginState = _types.pasteOptionsPluginKey.getState(state);
|
|
32
|
+
var _ref3 = pastePluginState || {},
|
|
33
|
+
showToolbar = _ref3.showToolbar,
|
|
34
|
+
pasteStartPos = _ref3.pasteStartPos,
|
|
35
|
+
plaintext = _ref3.plaintext;
|
|
36
|
+
if (showToolbar) {
|
|
37
|
+
return (0, _toolbar.buildToolbar)(state, pasteStartPos, plaintext, intl, editorAnalyticsAPI);
|
|
38
|
+
}
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
usePluginHook: function usePluginHook(_ref4) {
|
|
43
|
+
var editorView = _ref4.editorView;
|
|
44
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['paste']),
|
|
45
|
+
pasteState = _useSharedPluginState.pasteState;
|
|
46
|
+
var lastContentPasted = pasteState === null || pasteState === void 0 ? void 0 : pasteState.lastContentPasted;
|
|
47
|
+
(0, _react.useEffect)(function () {
|
|
48
|
+
if (!lastContentPasted) {
|
|
49
|
+
(0, _commands.hideToolbar)()(editorView.state, editorView.dispatch);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
var selectedOption = _types.ToolbarDropdownOption.None;
|
|
53
|
+
if (!lastContentPasted.isPlainText) {
|
|
54
|
+
selectedOption = _types.ToolbarDropdownOption.RichText;
|
|
55
|
+
} else if (lastContentPasted.isShiftPressed) {
|
|
56
|
+
selectedOption = _types.ToolbarDropdownOption.PlainText;
|
|
57
|
+
} else {
|
|
58
|
+
selectedOption = _types.ToolbarDropdownOption.Markdown;
|
|
59
|
+
}
|
|
60
|
+
if (!(0, _toolbar.isToolbarVisible)(editorView.state, lastContentPasted)) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
(0, _commands.showToolbar)(lastContentPasted, selectedOption)(editorView.state, editorView.dispatch);
|
|
64
|
+
}, [lastContentPasted, editorView]);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TEXT_HIGHLIGHT_CLASS = exports.PASTE_TOOLBAR_MENU_ID = exports.PASTE_TOOLBAR_ITEM_CLASS = exports.PASTE_TOOLBAR_CLASS = exports.PASTE_OPTIONS_TEST_ID = exports.PASTE_HIGHLIGHT_DECORATION_KEY = exports.EDITOR_WRAPPER_CLASS = void 0;
|
|
7
|
+
var PASTE_TOOLBAR_CLASS = exports.PASTE_TOOLBAR_CLASS = 'ak-editor-paste-toolbar';
|
|
8
|
+
var PASTE_TOOLBAR_MENU_ID = exports.PASTE_TOOLBAR_MENU_ID = 'ak-editor-paste-toolbar-item-dropdownList';
|
|
9
|
+
var TEXT_HIGHLIGHT_CLASS = exports.TEXT_HIGHLIGHT_CLASS = 'text-highlight';
|
|
10
|
+
var PASTE_HIGHLIGHT_DECORATION_KEY = exports.PASTE_HIGHLIGHT_DECORATION_KEY = 'paste-highlight-decoration-key';
|
|
11
|
+
var PASTE_TOOLBAR_ITEM_CLASS = exports.PASTE_TOOLBAR_ITEM_CLASS = 'ak-editor-paste-toolbar-item';
|
|
12
|
+
var EDITOR_WRAPPER_CLASS = exports.EDITOR_WRAPPER_CLASS = 'akEditor';
|
|
13
|
+
var PASTE_OPTIONS_TEST_ID = exports.PASTE_OPTIONS_TEST_ID = 'paste-options-testid';
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createPlugin = createPlugin;
|
|
7
|
+
var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
|
|
8
|
+
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
9
|
+
var _view = require("@atlaskit/editor-prosemirror/view");
|
|
10
|
+
var _commands = require("../commands");
|
|
11
|
+
var _types = require("../types");
|
|
12
|
+
var _constants = require("./constants");
|
|
13
|
+
var _pluginFactory = require("./plugin-factory");
|
|
14
|
+
function createPlugin(dispatch) {
|
|
15
|
+
return new _safePlugin.SafePlugin({
|
|
16
|
+
key: _types.pasteOptionsPluginKey,
|
|
17
|
+
state: (0, _pluginFactory.createPluginState)(dispatch, {
|
|
18
|
+
showToolbar: false,
|
|
19
|
+
pasteStartPos: 0,
|
|
20
|
+
pasteEndPos: 0,
|
|
21
|
+
plaintext: '',
|
|
22
|
+
isPlainText: false,
|
|
23
|
+
highlightContent: false,
|
|
24
|
+
highlightDecorationSet: _view.DecorationSet.empty,
|
|
25
|
+
richTextSlice: _model.Slice.empty,
|
|
26
|
+
selectedOption: _types.ToolbarDropdownOption.None
|
|
27
|
+
}),
|
|
28
|
+
view: function view(editorView) {
|
|
29
|
+
return {
|
|
30
|
+
update: function update(view, prevState) {
|
|
31
|
+
return prevState;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
},
|
|
35
|
+
props: {
|
|
36
|
+
handleDOMEvents: {
|
|
37
|
+
// Hide toolbar when clicked outside the editor
|
|
38
|
+
blur: _commands.checkAndHideToolbar,
|
|
39
|
+
// Hide toolbar when clicked anywhere within the editor, tr.getMeta('pointer') does not work if clicked on the same line after pasting so relying on mousedown event
|
|
40
|
+
mousedown: _commands.checkAndHideToolbar
|
|
41
|
+
},
|
|
42
|
+
handleKeyDown: function handleKeyDown(view) {
|
|
43
|
+
(0, _commands.checkAndHideToolbar)(view);
|
|
44
|
+
return false;
|
|
45
|
+
},
|
|
46
|
+
decorations: function decorations(state) {
|
|
47
|
+
var _pasteOptionsPluginKe, _pasteOptionsPluginKe2;
|
|
48
|
+
var _ref = _types.pasteOptionsPluginKey.getState(state) || {},
|
|
49
|
+
highlightContent = _ref.highlightContent,
|
|
50
|
+
pasteStartPos = _ref.pasteStartPos;
|
|
51
|
+
var decorationSet = (_pasteOptionsPluginKe = (_pasteOptionsPluginKe2 = _types.pasteOptionsPluginKey.getState(state)) === null || _pasteOptionsPluginKe2 === void 0 ? void 0 : _pasteOptionsPluginKe2.highlightDecorationSet) !== null && _pasteOptionsPluginKe !== void 0 ? _pasteOptionsPluginKe : _view.DecorationSet.empty;
|
|
52
|
+
if (!highlightContent) {
|
|
53
|
+
return decorationSet;
|
|
54
|
+
}
|
|
55
|
+
var selection = state.tr.selection;
|
|
56
|
+
var pasteEndPos = selection.$anchor.pos;
|
|
57
|
+
var highlightDecoration = _view.Decoration.inline(pasteStartPos, pasteEndPos, {
|
|
58
|
+
class: _constants.TEXT_HIGHLIGHT_CLASS
|
|
59
|
+
}, {
|
|
60
|
+
key: _constants.PASTE_HIGHLIGHT_DECORATION_KEY
|
|
61
|
+
});
|
|
62
|
+
return decorationSet.add(state.doc, [highlightDecoration]);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getPluginState = exports.createPluginState = exports.createCommand = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _utils = require("@atlaskit/editor-common/utils");
|
|
10
|
+
var _reducer = require("../reducer");
|
|
11
|
+
var _types = require("../types");
|
|
12
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
|
+
var _pluginFactory = (0, _utils.pluginFactory)(_types.pasteOptionsPluginKey, _reducer.reducer, {
|
|
15
|
+
mapping: function mapping(tr, pluginState) {
|
|
16
|
+
return pluginState;
|
|
17
|
+
},
|
|
18
|
+
onSelectionChanged: function onSelectionChanged(tr, pluginState) {
|
|
19
|
+
// Detect click outside the editor
|
|
20
|
+
if (tr.getMeta('outsideProsemirrorEditorClicked')) {
|
|
21
|
+
return _objectSpread(_objectSpread({}, pluginState), {}, {
|
|
22
|
+
showToolbar: false,
|
|
23
|
+
highlightContent: false
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return pluginState;
|
|
27
|
+
}
|
|
28
|
+
}),
|
|
29
|
+
createPluginState = exports.createPluginState = _pluginFactory.createPluginState,
|
|
30
|
+
createCommand = exports.createCommand = _pluginFactory.createCommand,
|
|
31
|
+
getPluginState = exports.getPluginState = _pluginFactory.getPluginState;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.reducer = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _actions = require("./actions");
|
|
10
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
11
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12
|
+
var reducer = exports.reducer = function reducer(state, action) {
|
|
13
|
+
switch (action.type) {
|
|
14
|
+
case _actions.PastePluginActionTypes.SHOW_PASTE_OPTIONS:
|
|
15
|
+
{
|
|
16
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
17
|
+
showToolbar: true,
|
|
18
|
+
highlightContent: false,
|
|
19
|
+
isPlainText: action.data.isPlainText,
|
|
20
|
+
plaintext: action.data.plaintext,
|
|
21
|
+
selectedOption: action.data.selectedOption,
|
|
22
|
+
richTextSlice: action.data.richTextSlice,
|
|
23
|
+
pasteStartPos: action.data.pasteStartPos,
|
|
24
|
+
pasteEndPos: action.data.pasteEndPos
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
case _actions.PastePluginActionTypes.HIDE_PASTE_OPTIONS:
|
|
28
|
+
{
|
|
29
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
30
|
+
highlightContent: false,
|
|
31
|
+
showToolbar: false
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
case _actions.PastePluginActionTypes.HIGHLIGHT_CONTENT:
|
|
35
|
+
{
|
|
36
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
37
|
+
highlightContent: true
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
case _actions.PastePluginActionTypes.CHANGE_FORMAT:
|
|
41
|
+
{
|
|
42
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
43
|
+
highlightContent: true,
|
|
44
|
+
selectedOption: action.data.selectedOption
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
default:
|
|
48
|
+
return state;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "textHighlightStyle", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _styles.textHighlightStyle;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _styles = require("./ui/styles");
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.isToolbarVisible = exports.getToolbarMenuConfig = exports.buildToolbar = void 0;
|
|
8
|
+
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
9
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
|
+
var _commands = require("./commands");
|
|
11
|
+
var _messages = require("./messages");
|
|
12
|
+
var _constants = require("./pm-plugins/constants");
|
|
13
|
+
var _types = require("./types");
|
|
14
|
+
var _pasteIcon = _interopRequireDefault(require("./ui/paste-icon"));
|
|
15
|
+
var _util = require("./util");
|
|
16
|
+
var isToolbarVisible = exports.isToolbarVisible = function isToolbarVisible(state, lastContentPasted) {
|
|
17
|
+
var _$from$node;
|
|
18
|
+
/**
|
|
19
|
+
* Conditions for not showing the toolbar:
|
|
20
|
+
* 1. Feature flag is disabled
|
|
21
|
+
* 2. Content is pasted at gap cursor
|
|
22
|
+
* 3. Pasting horizontal rule
|
|
23
|
+
* 4. Pasting link, media or text containing media(note: markdown link and images are allowed)
|
|
24
|
+
* 5. Content is pasted in a nested node(i.e. inside a table, panel etc.).
|
|
25
|
+
* (grandParent node should be root doc for showing up the toolbar)
|
|
26
|
+
*/
|
|
27
|
+
if (!(0, _platformFeatureFlags.getBooleanFF)('platform.editor.paste-options-toolbar')) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
var $from = state.selection.$from;
|
|
31
|
+
if ((0, _util.hasRuleNode)(lastContentPasted.pastedSlice, state.schema)) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
var grandParentNodeType = (_$from$node = $from.node($from.depth - 1)) === null || _$from$node === void 0 ? void 0 : _$from$node.type;
|
|
35
|
+
if (grandParentNodeType && grandParentNodeType.name === state.schema.nodes.doc.name && !(0, _util.isPastedFromFabricEditor)(lastContentPasted.pasteSource) && !(0, _util.hasLinkMark)(state, lastContentPasted.pasteStartPos, lastContentPasted.pasteEndPos) && !(0, _util.hasMediaNode)(lastContentPasted.pastedSlice)) {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
return false;
|
|
39
|
+
};
|
|
40
|
+
var getToolbarMenuConfig = exports.getToolbarMenuConfig = function getToolbarMenuConfig(pluginState, pasteStartPos, plaintext, intl, editorAnalyticsAPI) {
|
|
41
|
+
var options = [{
|
|
42
|
+
id: 'editor.paste.richText',
|
|
43
|
+
title: intl.formatMessage(_messages.messages.richText),
|
|
44
|
+
selected: pluginState.selectedOption === _types.ToolbarDropdownOption.RichText,
|
|
45
|
+
hidden: pluginState.isPlainText,
|
|
46
|
+
onClick: (0, _commands.changeToRichTextWithAnalytics)(editorAnalyticsAPI)(pasteStartPos)
|
|
47
|
+
}, {
|
|
48
|
+
id: 'editor.paste.markdown',
|
|
49
|
+
title: intl.formatMessage(_messages.messages.markdown),
|
|
50
|
+
selected: pluginState.selectedOption === _types.ToolbarDropdownOption.Markdown,
|
|
51
|
+
onClick: (0, _commands.changeToMarkdownWithAnalytics)(editorAnalyticsAPI, plaintext.length)(pasteStartPos, plaintext)
|
|
52
|
+
}, {
|
|
53
|
+
id: 'editor.paste.plainText',
|
|
54
|
+
title: intl.formatMessage(_messages.messages.plainText),
|
|
55
|
+
selected: pluginState.selectedOption === _types.ToolbarDropdownOption.PlainText,
|
|
56
|
+
onClick: (0, _commands.changeToPlainTextWithAnalytics)(editorAnalyticsAPI, plaintext.length)(pasteStartPos, plaintext)
|
|
57
|
+
}];
|
|
58
|
+
return {
|
|
59
|
+
id: _constants.PASTE_TOOLBAR_ITEM_CLASS,
|
|
60
|
+
icon: _pasteIcon.default,
|
|
61
|
+
type: 'dropdown',
|
|
62
|
+
testId: _constants.PASTE_OPTIONS_TEST_ID,
|
|
63
|
+
title: intl.formatMessage(_messages.messages.pasteOptions),
|
|
64
|
+
options: options,
|
|
65
|
+
onToggle: onToggleHandler
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
var onToggleHandler = function onToggleHandler(state, dispatch) {
|
|
69
|
+
return (0, _commands.dropdownClickHandler)()(state, dispatch);
|
|
70
|
+
};
|
|
71
|
+
var buildToolbar = exports.buildToolbar = function buildToolbar(state, pasteStartPos, plaintext, intl, editorAnalyticsAPI) {
|
|
72
|
+
var schema = state.schema;
|
|
73
|
+
var validNodes = Object.values(schema.nodes);
|
|
74
|
+
var pluginState = _types.pasteOptionsPluginKey.getState(state);
|
|
75
|
+
var menu = getToolbarMenuConfig(pluginState, pasteStartPos, plaintext, intl, editorAnalyticsAPI);
|
|
76
|
+
return {
|
|
77
|
+
title: intl.formatMessage(_messages.messages.pasteOptions),
|
|
78
|
+
nodeType: validNodes,
|
|
79
|
+
zIndex: _editorSharedStyles.akEditorFloatingPanelZIndex,
|
|
80
|
+
className: _constants.PASTE_TOOLBAR_CLASS,
|
|
81
|
+
items: [menu],
|
|
82
|
+
align: 'right',
|
|
83
|
+
onPositionCalculated: onPositionCalculated
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
var onPositionCalculated = function onPositionCalculated(editorView, nextPos) {
|
|
87
|
+
var toolbar = document.querySelector("div[aria-label=\"".concat(_messages.messages.pasteOptions.defaultMessage, "\"]"));
|
|
88
|
+
var cursorHeight = parseFloat(window.getComputedStyle(toolbar, undefined).lineHeight || '');
|
|
89
|
+
var from = editorView.state.tr.selection.from;
|
|
90
|
+
var fromCoords = editorView.coordsAtPos(from);
|
|
91
|
+
return {
|
|
92
|
+
top: fromCoords.top + cursorHeight,
|
|
93
|
+
left: fromCoords.left
|
|
94
|
+
};
|
|
95
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.pasteOptionsPluginKey = exports.ToolbarDropdownOption = void 0;
|
|
7
|
+
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
8
|
+
var pasteOptionsPluginKey = exports.pasteOptionsPluginKey = new _state.PluginKey('paste-options');
|
|
9
|
+
var ToolbarDropdownOption = exports.ToolbarDropdownOption = /*#__PURE__*/function (ToolbarDropdownOption) {
|
|
10
|
+
ToolbarDropdownOption[ToolbarDropdownOption["Markdown"] = 0] = "Markdown";
|
|
11
|
+
ToolbarDropdownOption[ToolbarDropdownOption["RichText"] = 1] = "RichText";
|
|
12
|
+
ToolbarDropdownOption[ToolbarDropdownOption["PlainText"] = 2] = "PlainText";
|
|
13
|
+
ToolbarDropdownOption[ToolbarDropdownOption["None"] = 3] = "None";
|
|
14
|
+
return ToolbarDropdownOption;
|
|
15
|
+
}({});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
//Using a custom icon for now since Design System Team is in the process of updating the icon set for project griffin.
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireDefault(require('react'));
|
|
10
|
+
var _base = require('@atlaskit/icon/base');
|
|
11
|
+
function _interopRequireDefault(obj) {
|
|
12
|
+
return obj && obj.__esModule ? obj : {
|
|
13
|
+
default: obj
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
var EditorPasteIcon = function EditorPasteIcon(props) {
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement(_base.Icon, Object.assign({
|
|
18
|
+
dangerouslySetGlyph: "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M14.8293 4C14.4175 2.83481 13.3062 2 12 2C10.6938 2 9.58254 2.83481 9.17071 4H9H6C4.89543 4 4 4.89543 4 6V18C4 19.1046 4.89543 20 6 20H18C19.1046 20 20 19.1046 20 18V6C20 4.89543 19.1046 4 18 4H15H14.8293ZM6 6H8V7C8 7.55228 8.44772 8 9 8H15C15.5523 8 16 7.55228 16 7V6H18V18H6V6ZM12 6C12.5523 6 13 5.55228 13 5C13 4.44772 12.5523 4 12 4C11.4477 4 11 4.44772 11 5C11 5.55228 11.4477 6 12 6Z\" fill=\"currentColor\"/><rect x=\"8\" y=\"11\" width=\"8\" height=\"2\" rx=\"1\" fill=\"currentColor\"/><rect x=\"8\" y=\"14\" width=\"5\" height=\"2\" rx=\"1\" fill=\"currentColor\"/></svg>"
|
|
19
|
+
}, props));
|
|
20
|
+
};
|
|
21
|
+
EditorPasteIcon.displayName = 'EditorPasteIcon';
|
|
22
|
+
var _default = exports.default = EditorPasteIcon;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.textHighlightStyle = void 0;
|
|
8
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
|
+
var _react = require("@emotion/react");
|
|
10
|
+
var _constants = require("../pm-plugins/constants");
|
|
11
|
+
var _templateObject;
|
|
12
|
+
var textHighlightStyle = exports.textHighlightStyle = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n background-color: ", ";\n\n border-bottom: 2px solid\n ", ";\n }\n"])), _constants.TEXT_HIGHLIGHT_CLASS, "var(--ds-background-accent-blue-subtlest, #E9F2FF)", "var(--ds-background-accent-blue-subtler, #cce0ff)");
|