@opentiny/fluent-editor 4.0.0-alpha.2 → 4.0.0-alpha.3
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/es/fluent-editor.es.js +2 -0
- package/es/fluent-editor.es.js.map +1 -1
- package/es/modules/ai/index.es.js +238 -0
- package/es/modules/ai/index.es.js.map +1 -0
- package/es/themes/snow.es.js +2 -0
- package/es/themes/snow.es.js.map +1 -1
- package/es/ui/icons.config.es.js +15 -0
- package/es/ui/icons.config.es.js.map +1 -1
- package/es/ui/icons.es.js +2 -1
- package/es/ui/icons.es.js.map +1 -1
- package/lib/fluent-editor.cjs.js +4 -2
- package/lib/fluent-editor.cjs.js.map +1 -1
- package/lib/modules/ai/index.cjs.js +238 -0
- package/lib/modules/ai/index.cjs.js.map +1 -0
- package/lib/themes/snow.cjs.js +2 -0
- package/lib/themes/snow.cjs.js.map +1 -1
- package/lib/ui/icons.cjs.js +1 -0
- package/lib/ui/icons.cjs.js.map +1 -1
- package/lib/ui/icons.config.cjs.js +15 -0
- package/lib/ui/icons.config.cjs.js.map +1 -1
- package/package.json +1 -1
- package/style.css +90 -0
- package/types/modules/ai/index.d.ts +39 -0
- package/types/ui/icons.config.d.ts +1 -0
package/es/fluent-editor.es.js
CHANGED
|
@@ -3,6 +3,7 @@ import { EN_US } from "./config/i18n/en-us.es.js";
|
|
|
3
3
|
import { ZH_CN } from "./config/i18n/zh-cn.es.js";
|
|
4
4
|
import FluentEditor from "./core/fluent-editor.es.js";
|
|
5
5
|
import "./formats/index.es.js";
|
|
6
|
+
import { AI } from "./modules/ai/index.es.js";
|
|
6
7
|
import Counter from "./modules/counter.es.js";
|
|
7
8
|
import { CustomClipboard } from "./modules/custom-clipboard.es.js";
|
|
8
9
|
import "./modules/custom-image/index.es.js";
|
|
@@ -63,6 +64,7 @@ FluentEditor.register(
|
|
|
63
64
|
"modules/i18n": I18N,
|
|
64
65
|
"modules/image": BlotFormatter,
|
|
65
66
|
"modules/mathlive": MathliveModule,
|
|
67
|
+
"modules/ai": AI,
|
|
66
68
|
"modules/mention": Mention,
|
|
67
69
|
"modules/syntax": CustomSyntax,
|
|
68
70
|
"modules/toolbar": BetterToolbar,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fluent-editor.es.js","sources":["../../src/fluent-editor.ts"],"sourcesContent":["import { FontStyle, LineHeightStyle, SizeStyle, TextIndentStyle } from './attributors'\r\nimport { EN_US } from './config/i18n/en-us'\r\nimport { ZH_CN } from './config/i18n/zh-cn'\r\nimport FluentEditor from './core/fluent-editor'\r\nimport { EmojiBlot, SoftBreak, StrikeBlot, Video } from './formats'\r\nimport Counter from './modules/counter' // 字符统计\r\nimport { CustomClipboard } from './modules/custom-clipboard' // 粘贴板\r\nimport { BlotFormatter } from './modules/custom-image' // 图片\r\nimport { FileUploader } from './modules/custom-uploader' // 上传\r\nimport { DividerBlot } from './modules/divider' // 分割线\r\nimport { EmojiModule } from './modules/emoji'\r\nimport { FileModule } from './modules/file' // 文件\r\nimport I18N from './modules/i18n'\r\nimport { LinkBlot } from './modules/link' // 超链接\r\nimport { MathliveModule } from './modules/mathlive' // latex公式\r\nimport { Mention } from './modules/mention' // @提醒\r\nimport { ShortCutKey } from './modules/shortcut-key'\r\nimport Syntax from './modules/syntax' // 代码块高亮\r\nimport { BetterToolbar } from './modules/toolbar' // 工具栏\r\nimport { ColorPicker, Picker } from './modules/toolbar/better-picker'\r\nimport SnowTheme from './themes/snow'\r\nimport Icons from './ui/icons'\r\n\r\nI18N.register(\r\n {\r\n 'en-US': EN_US,\r\n 'zh-CN': ZH_CN,\r\n },\r\n true,\r\n)\r\nFluentEditor.register(\r\n {\r\n 'attributors/style/font': FontStyle,\r\n 'attributors/style/size': SizeStyle,\r\n 'attributors/style/line-height': LineHeightStyle,\r\n\r\n 'formats/font': FontStyle,\r\n 'formats/line-height': LineHeightStyle,\r\n 'formats/size': SizeStyle,\r\n 'formats/emoji': EmojiBlot,\r\n 'formats/softBreak': SoftBreak,\r\n 'formats/strike': StrikeBlot,\r\n 'formats/text-indent': TextIndentStyle,\r\n 'formats/video': Video,\r\n 'formats/divider': DividerBlot,\r\n 'formats/link': LinkBlot,\r\n\r\n 'modules/clipboard': CustomClipboard,\r\n 'modules/counter': Counter,\r\n 'modules/emoji': EmojiModule,\r\n 'modules/file': FileModule,\r\n 'modules/i18n': I18N,\r\n 'modules/image': BlotFormatter,\r\n 'modules/mathlive': MathliveModule,\r\n 'modules/mention': Mention,\r\n 'modules/syntax': Syntax,\r\n 'modules/toolbar': BetterToolbar,\r\n 'modules/uploader': FileUploader,\r\n 'modules/shortcut-key': ShortCutKey,\r\n\r\n 'themes/snow': SnowTheme,\r\n\r\n 'ui/icons': Icons,\r\n 'ui/picker': Picker,\r\n 'ui/color-picker': ColorPicker,\r\n },\r\n true, // 覆盖内部模块\r\n)\r\n\r\nexport default FluentEditor\r\n"],"names":["Syntax"],"mappings":"
|
|
1
|
+
{"version":3,"file":"fluent-editor.es.js","sources":["../../src/fluent-editor.ts"],"sourcesContent":["import { FontStyle, LineHeightStyle, SizeStyle, TextIndentStyle } from './attributors'\r\nimport { EN_US } from './config/i18n/en-us'\r\nimport { ZH_CN } from './config/i18n/zh-cn'\r\nimport FluentEditor from './core/fluent-editor'\r\nimport { EmojiBlot, SoftBreak, StrikeBlot, Video } from './formats'\r\nimport { AI } from './modules/ai' // AI\r\nimport Counter from './modules/counter' // 字符统计\r\nimport { CustomClipboard } from './modules/custom-clipboard' // 粘贴板\r\nimport { BlotFormatter } from './modules/custom-image' // 图片\r\nimport { FileUploader } from './modules/custom-uploader' // 上传\r\nimport { DividerBlot } from './modules/divider' // 分割线\r\nimport { EmojiModule } from './modules/emoji'\r\nimport { FileModule } from './modules/file' // 文件\r\nimport I18N from './modules/i18n'\r\nimport { LinkBlot } from './modules/link' // 超链接\r\nimport { MathliveModule } from './modules/mathlive' // latex公式\r\nimport { Mention } from './modules/mention' // @提醒\r\nimport { ShortCutKey } from './modules/shortcut-key'\r\nimport Syntax from './modules/syntax' // 代码块高亮\r\nimport { BetterToolbar } from './modules/toolbar' // 工具栏\r\nimport { ColorPicker, Picker } from './modules/toolbar/better-picker'\r\nimport SnowTheme from './themes/snow'\r\nimport Icons from './ui/icons'\r\n\r\nI18N.register(\r\n {\r\n 'en-US': EN_US,\r\n 'zh-CN': ZH_CN,\r\n },\r\n true,\r\n)\r\nFluentEditor.register(\r\n {\r\n 'attributors/style/font': FontStyle,\r\n 'attributors/style/size': SizeStyle,\r\n 'attributors/style/line-height': LineHeightStyle,\r\n\r\n 'formats/font': FontStyle,\r\n 'formats/line-height': LineHeightStyle,\r\n 'formats/size': SizeStyle,\r\n 'formats/emoji': EmojiBlot,\r\n 'formats/softBreak': SoftBreak,\r\n 'formats/strike': StrikeBlot,\r\n 'formats/text-indent': TextIndentStyle,\r\n 'formats/video': Video,\r\n 'formats/divider': DividerBlot,\r\n 'formats/link': LinkBlot,\r\n\r\n 'modules/clipboard': CustomClipboard,\r\n 'modules/counter': Counter,\r\n 'modules/emoji': EmojiModule,\r\n 'modules/file': FileModule,\r\n 'modules/i18n': I18N,\r\n 'modules/image': BlotFormatter,\r\n 'modules/mathlive': MathliveModule,\r\n 'modules/ai': AI,\r\n 'modules/mention': Mention,\r\n 'modules/syntax': Syntax,\r\n 'modules/toolbar': BetterToolbar,\r\n 'modules/uploader': FileUploader,\r\n 'modules/shortcut-key': ShortCutKey,\r\n\r\n 'themes/snow': SnowTheme,\r\n\r\n 'ui/icons': Icons,\r\n 'ui/picker': Picker,\r\n 'ui/color-picker': ColorPicker,\r\n },\r\n true, // 覆盖内部模块\r\n)\r\n\r\nexport default FluentEditor\r\n"],"names":["Syntax"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,KAAK;AAAA,EACH;AAAA,IACE,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AAAA,EACA;AACF;AACA,aAAa;AAAA,EACX;AAAA,IACE,0BAA0B;AAAA,IAC1B,0BAA0B;AAAA,IAC1B,iCAAiC;AAAA,IAEjC,gBAAgB;AAAA,IAChB,uBAAuB;AAAA,IACvB,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,qBAAqB;AAAA,IACrB,kBAAkB;AAAA,IAClB,uBAAuB;AAAA,IACvB,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,gBAAgB;AAAA,IAEhB,qBAAqB;AAAA,IACrB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,oBAAoB;AAAA,IACpB,cAAc;AAAA,IACd,mBAAmB;AAAA,IACnB,kBAAkBA;AAAAA,IAClB,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,wBAAwB;AAAA,IAExB,eAAe;AAAA,IAEf,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,mBAAmB;AAAA,EACrB;AAAA,EACA;AAAA;AACF;"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
+
import { AI_ICON } from "../../ui/icons.config.es.js";
|
|
5
|
+
class AI {
|
|
6
|
+
constructor(quill, options) {
|
|
7
|
+
__publicField(this, "toolbar");
|
|
8
|
+
__publicField(this, "host");
|
|
9
|
+
__publicField(this, "apiKey");
|
|
10
|
+
__publicField(this, "model");
|
|
11
|
+
__publicField(this, "message");
|
|
12
|
+
__publicField(this, "isBreak", false);
|
|
13
|
+
// 打断标记
|
|
14
|
+
__publicField(this, "inputValue", "");
|
|
15
|
+
// 存储输入框的值
|
|
16
|
+
__publicField(this, "SEND", "发送");
|
|
17
|
+
// 发送按钮文字
|
|
18
|
+
__publicField(this, "BREAK", "停止");
|
|
19
|
+
// 取消按钮文字
|
|
20
|
+
__publicField(this, "DONE", "完成");
|
|
21
|
+
__publicField(this, "REGENERATE", "重新生成");
|
|
22
|
+
__publicField(this, "CLOSE", "关闭");
|
|
23
|
+
__publicField(this, "dialogContainerEl", null);
|
|
24
|
+
__publicField(this, "wrapContainerEl", null);
|
|
25
|
+
__publicField(this, "aiPreTextEl", null);
|
|
26
|
+
__publicField(this, "inputContainerEl", null);
|
|
27
|
+
__publicField(this, "inputEl", null);
|
|
28
|
+
__publicField(this, "sendButtonEl", null);
|
|
29
|
+
__publicField(this, "resultPopupEl", null);
|
|
30
|
+
__publicField(this, "actionMenuEl", null);
|
|
31
|
+
this.quill = quill;
|
|
32
|
+
this.options = options;
|
|
33
|
+
this.quill = quill;
|
|
34
|
+
this.toolbar = quill.getModule("toolbar");
|
|
35
|
+
if (typeof this.toolbar !== "undefined") {
|
|
36
|
+
this.toolbar.addHandler("ai", this.showAIInput.bind(this));
|
|
37
|
+
}
|
|
38
|
+
this.host = options.host;
|
|
39
|
+
this.apiKey = options.apiKey;
|
|
40
|
+
this.model = options.model;
|
|
41
|
+
}
|
|
42
|
+
positionElements() {
|
|
43
|
+
if (!this.dialogContainerEl) return;
|
|
44
|
+
const range = this.quill.getSelection();
|
|
45
|
+
if (range) {
|
|
46
|
+
const bounds = this.quill.getBounds(range.index);
|
|
47
|
+
this.dialogContainerEl.style.position = "absolute";
|
|
48
|
+
this.dialogContainerEl.style.top = `${bounds.top + bounds.height}px`;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// 创建AI提示语元素
|
|
52
|
+
createAiPreTextEl() {
|
|
53
|
+
if (!this.aiPreTextEl) {
|
|
54
|
+
this.aiPreTextEl = document.createElement("span");
|
|
55
|
+
this.aiPreTextEl.className = "ql-ai-tip";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
// 创建弹出框
|
|
59
|
+
createElements() {
|
|
60
|
+
if (!this.dialogContainerEl) {
|
|
61
|
+
this.dialogContainerEl = document.createElement("div");
|
|
62
|
+
this.dialogContainerEl.className = "ql-ai-dialog";
|
|
63
|
+
this.wrapContainerEl = document.createElement("div");
|
|
64
|
+
this.wrapContainerEl.className = "ql-ai-wrapper";
|
|
65
|
+
this.wrapContainerEl.style.width = `${this.quill.container.clientWidth * 0.9}px`;
|
|
66
|
+
this.inputContainerEl = document.createElement("div");
|
|
67
|
+
this.inputContainerEl.className = "ql-ai-input";
|
|
68
|
+
const aiIcon = document.createElement("div");
|
|
69
|
+
aiIcon.className = "ql-ai-icon";
|
|
70
|
+
aiIcon.innerHTML = AI_ICON;
|
|
71
|
+
this.createAiPreTextEl();
|
|
72
|
+
this.inputEl = document.createElement("input");
|
|
73
|
+
this.inputEl.type = "text";
|
|
74
|
+
this.inputEl.placeholder = "请输入内容";
|
|
75
|
+
this.sendButtonEl = document.createElement("div");
|
|
76
|
+
this.sendButtonEl.className = "ql-ai-send";
|
|
77
|
+
this.resultPopupEl = document.createElement("div");
|
|
78
|
+
this.resultPopupEl.className = "ql-ai-result";
|
|
79
|
+
this.wrapContainerEl.appendChild(this.resultPopupEl);
|
|
80
|
+
this.inputContainerEl.appendChild(aiIcon);
|
|
81
|
+
this.inputContainerEl.appendChild(this.aiPreTextEl);
|
|
82
|
+
this.inputContainerEl.appendChild(this.inputEl);
|
|
83
|
+
this.inputContainerEl.appendChild(this.sendButtonEl);
|
|
84
|
+
this.wrapContainerEl.appendChild(this.inputContainerEl);
|
|
85
|
+
this.dialogContainerEl.appendChild(this.wrapContainerEl);
|
|
86
|
+
}
|
|
87
|
+
this.aiPreTextEl.textContent = `${this.model}帮你写:`;
|
|
88
|
+
this.sendButtonEl.textContent = this.SEND;
|
|
89
|
+
this.sendButtonEl.style.display = "block";
|
|
90
|
+
this.resultPopupEl.style.display = "none";
|
|
91
|
+
this.quill.container.appendChild(this.dialogContainerEl);
|
|
92
|
+
}
|
|
93
|
+
showAIInput() {
|
|
94
|
+
this.createElements();
|
|
95
|
+
this.positionElements();
|
|
96
|
+
this.inputEl.addEventListener("keydown", async (e) => {
|
|
97
|
+
if (e.key === "Enter") {
|
|
98
|
+
await this.queryAI();
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
this.sendButtonEl.addEventListener("click", async (e) => {
|
|
102
|
+
if (e.target.textContent === this.BREAK) {
|
|
103
|
+
this.isBreak = true;
|
|
104
|
+
} else {
|
|
105
|
+
await this.queryAI();
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
const handleKeyDown = (e) => {
|
|
109
|
+
if (e.key === "Escape") {
|
|
110
|
+
this.closeAIPanel();
|
|
111
|
+
this.quill.container.removeEventListener("keydown", handleKeyDown);
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
this.quill.container.addEventListener("keydown", handleKeyDown);
|
|
115
|
+
}
|
|
116
|
+
// AI查询
|
|
117
|
+
async queryAI(question) {
|
|
118
|
+
this.inputValue = question || this.inputEl.value;
|
|
119
|
+
this.inputEl.value = "";
|
|
120
|
+
if (this.inputValue.trim() === "") {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.isBreak = false;
|
|
124
|
+
this.sendButtonEl.textContent = this.BREAK;
|
|
125
|
+
this.sendButtonEl.style.display = "block";
|
|
126
|
+
this.aiPreTextEl.textContent = "按ESC退出 | 正在编写...";
|
|
127
|
+
try {
|
|
128
|
+
const response = await fetch(`${this.host}/api/generate`, {
|
|
129
|
+
method: "POST",
|
|
130
|
+
headers: {
|
|
131
|
+
"Content-Type": "application/json",
|
|
132
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
133
|
+
},
|
|
134
|
+
body: JSON.stringify({
|
|
135
|
+
model: this.model,
|
|
136
|
+
prompt: this.inputValue,
|
|
137
|
+
stream: true
|
|
138
|
+
})
|
|
139
|
+
});
|
|
140
|
+
if (!response.ok) {
|
|
141
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
142
|
+
}
|
|
143
|
+
const reader = response.body.getReader();
|
|
144
|
+
const decoder = new TextDecoder();
|
|
145
|
+
let content = "";
|
|
146
|
+
while (true) {
|
|
147
|
+
if (this.isBreak) {
|
|
148
|
+
this.isBreak = false;
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
const { done, value } = await reader.read();
|
|
152
|
+
if (done) break;
|
|
153
|
+
const chunk = decoder.decode(value);
|
|
154
|
+
const lines = chunk.split("\n").filter((line) => line.trim() !== "");
|
|
155
|
+
for (const line of lines) {
|
|
156
|
+
try {
|
|
157
|
+
const data = JSON.parse(line);
|
|
158
|
+
content += data.response || "";
|
|
159
|
+
this.showAIResponse(content);
|
|
160
|
+
} catch (e) {
|
|
161
|
+
console.error("解析错误:", e);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
this.createActionMenu();
|
|
166
|
+
if (content) {
|
|
167
|
+
this.aiPreTextEl.textContent = "";
|
|
168
|
+
this.sendButtonEl.textContent = this.SEND;
|
|
169
|
+
this.sendButtonEl.style.display = "none";
|
|
170
|
+
}
|
|
171
|
+
return content;
|
|
172
|
+
} catch (error) {
|
|
173
|
+
console.error("AI查询失败:", error);
|
|
174
|
+
return "AI查询失败,请重试";
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
showAIResponse(response) {
|
|
178
|
+
if (!this.resultPopupEl) return;
|
|
179
|
+
this.resultPopupEl.innerHTML = response;
|
|
180
|
+
this.resultPopupEl.style.display = "block";
|
|
181
|
+
}
|
|
182
|
+
createActionMenu() {
|
|
183
|
+
if (!this.actionMenuEl) {
|
|
184
|
+
this.actionMenuEl = document.createElement("div");
|
|
185
|
+
this.actionMenuEl.className = "ql-ai-actions";
|
|
186
|
+
const actions = [this.DONE, this.REGENERATE, this.CLOSE];
|
|
187
|
+
actions.forEach((action) => {
|
|
188
|
+
const menuItem = document.createElement("div");
|
|
189
|
+
menuItem.className = "ql-ai-action-item";
|
|
190
|
+
menuItem.textContent = action;
|
|
191
|
+
menuItem.addEventListener("click", () => this.handleAction(action));
|
|
192
|
+
this.actionMenuEl.appendChild(menuItem);
|
|
193
|
+
});
|
|
194
|
+
this.wrapContainerEl.appendChild(this.actionMenuEl);
|
|
195
|
+
}
|
|
196
|
+
this.actionMenuEl.style.display = "block";
|
|
197
|
+
}
|
|
198
|
+
handleAction(action) {
|
|
199
|
+
switch (action) {
|
|
200
|
+
case this.DONE:
|
|
201
|
+
this.insertAIResponse();
|
|
202
|
+
break;
|
|
203
|
+
case this.REGENERATE:
|
|
204
|
+
this.regenerateResponse();
|
|
205
|
+
break;
|
|
206
|
+
case this.CLOSE:
|
|
207
|
+
this.closeAIPanel();
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
insertAIResponse() {
|
|
212
|
+
if (!this.resultPopupEl) return;
|
|
213
|
+
const range = this.quill.getSelection(true);
|
|
214
|
+
if (range) {
|
|
215
|
+
this.quill.clipboard.dangerouslyPasteHTML(
|
|
216
|
+
range.index,
|
|
217
|
+
this.resultPopupEl.innerHTML
|
|
218
|
+
);
|
|
219
|
+
}
|
|
220
|
+
this.closeAIPanel();
|
|
221
|
+
}
|
|
222
|
+
async regenerateResponse() {
|
|
223
|
+
this.actionMenuEl.style.display = "none";
|
|
224
|
+
await this.queryAI(this.inputValue);
|
|
225
|
+
}
|
|
226
|
+
closeAIPanel() {
|
|
227
|
+
this.isBreak = true;
|
|
228
|
+
if (this.dialogContainerEl) {
|
|
229
|
+
this.quill.container.removeChild(this.dialogContainerEl);
|
|
230
|
+
}
|
|
231
|
+
this.dialogContainerEl = null;
|
|
232
|
+
this.actionMenuEl = null;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
export {
|
|
236
|
+
AI
|
|
237
|
+
};
|
|
238
|
+
//# sourceMappingURL=index.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../../../../src/modules/ai/index.ts"],"sourcesContent":["import type TypeToolbar from 'quill/modules/toolbar'\r\nimport type FluentEditor from '../../core/fluent-editor'\r\nimport { AI_ICON } from '../../ui/icons.config'\r\n\r\nexport class AI {\r\n toolbar: TypeToolbar\r\n host: string\r\n apiKey: string\r\n model: string\r\n message: string\r\n isBreak: boolean = false // 打断标记\r\n inputValue: string = '' // 存储输入框的值\r\n SEND: string = '发送' // 发送按钮文字\r\n BREAK: string = '停止' // 取消按钮文字\r\n DONE: string = '完成'\r\n REGENERATE: string = '重新生成'\r\n CLOSE: string = '关闭'\r\n private dialogContainerEl: HTMLDivElement | null = null\r\n private wrapContainerEl: HTMLDivElement | null = null\r\n private aiPreTextEl: HTMLSpanElement | null = null\r\n private inputContainerEl: HTMLDivElement | null = null\r\n private inputEl: HTMLInputElement | null = null\r\n private sendButtonEl: HTMLDivElement | null = null\r\n private resultPopupEl: HTMLDivElement | null = null\r\n private actionMenuEl: HTMLDivElement | null = null\r\n\r\n constructor(public quill: FluentEditor, public options: any) {\r\n this.quill = quill\r\n this.toolbar = quill.getModule('toolbar') as TypeToolbar\r\n // 添加AI按钮到工具栏\r\n if (typeof this.toolbar !== 'undefined') {\r\n this.toolbar.addHandler('ai', this.showAIInput.bind(this))\r\n }\r\n\r\n this.host = options.host\r\n this.apiKey = options.apiKey\r\n this.model = options.model\r\n }\r\n\r\n positionElements() {\r\n if (!this.dialogContainerEl) return\r\n const range = this.quill.getSelection()\r\n if (range) {\r\n const bounds = this.quill.getBounds(range.index)\r\n this.dialogContainerEl.style.position = 'absolute'\r\n this.dialogContainerEl.style.top = `${bounds.top + bounds.height}px`\r\n }\r\n }\r\n\r\n // 创建AI提示语元素\r\n private createAiPreTextEl() {\r\n if (!this.aiPreTextEl) {\r\n this.aiPreTextEl = document.createElement('span')\r\n this.aiPreTextEl.className = 'ql-ai-tip'\r\n }\r\n }\r\n\r\n // 创建弹出框\r\n private createElements() {\r\n if(!this.dialogContainerEl) {\r\n this.dialogContainerEl = document.createElement('div')\r\n this.dialogContainerEl.className = 'ql-ai-dialog'\r\n this.wrapContainerEl = document.createElement('div')\r\n this.wrapContainerEl.className = 'ql-ai-wrapper'\r\n this.wrapContainerEl.style.width = `${this.quill.container.clientWidth * 0.9}px`\r\n\r\n // 创建输入框\r\n this.inputContainerEl = document.createElement('div')\r\n this.inputContainerEl.className = 'ql-ai-input'\r\n\r\n // 添加AI图标\r\n const aiIcon = document.createElement('div')\r\n aiIcon.className = 'ql-ai-icon'\r\n aiIcon.innerHTML = AI_ICON\r\n // 添加AI提示语\r\n this.createAiPreTextEl()\r\n\r\n // 增加输入框\r\n this.inputEl = document.createElement('input')\r\n this.inputEl.type = 'text'\r\n this.inputEl.placeholder = '请输入内容'\r\n // 添加发送按钮\r\n this.sendButtonEl = document.createElement('div')\r\n this.sendButtonEl.className = 'ql-ai-send'\r\n\r\n\r\n // 创建结果弹窗\r\n this.resultPopupEl = document.createElement('div')\r\n this.resultPopupEl.className = 'ql-ai-result'\r\n\r\n // 添加到编辑器\r\n this.wrapContainerEl.appendChild(this.resultPopupEl)\r\n this.inputContainerEl.appendChild(aiIcon)\r\n this.inputContainerEl.appendChild(this.aiPreTextEl)\r\n this.inputContainerEl.appendChild(this.inputEl)\r\n this.inputContainerEl.appendChild(this.sendButtonEl) // 添加发送按钮\r\n this.wrapContainerEl.appendChild(this.inputContainerEl)\r\n this.dialogContainerEl.appendChild(this.wrapContainerEl)\r\n }\r\n \r\n this.aiPreTextEl.textContent = `${this.model}帮你写:`\r\n this.sendButtonEl.textContent = this.SEND\r\n this.sendButtonEl.style.display = 'block' // 显示发送按钮\r\n this.resultPopupEl.style.display = 'none'\r\n this.quill.container.appendChild(this.dialogContainerEl)\r\n }\r\n\r\n showAIInput() {\r\n // 创建输入框和结果弹窗\r\n this.createElements()\r\n\r\n // 定位到编辑器焦点位置\r\n this.positionElements()\r\n \r\n // 监听发送事件\r\n this.inputEl.addEventListener('keydown', async (e) => {\r\n if (e.key === 'Enter') {\r\n await this.queryAI()\r\n }\r\n })\r\n this.sendButtonEl.addEventListener('click', async (e) => {\r\n if (e.target.textContent === this.BREAK) {\r\n this.isBreak = true\r\n }\r\n else {\r\n await this.queryAI()\r\n }\r\n })\r\n\r\n // 添加ESC键监听\r\n const handleKeyDown = (e: KeyboardEvent) => {\r\n if (e.key === 'Escape') {\r\n this.closeAIPanel()\r\n this.quill.container.removeEventListener('keydown', handleKeyDown)\r\n }\r\n }\r\n this.quill.container.addEventListener('keydown', handleKeyDown)\r\n\r\n }\r\n\r\n // AI查询\r\n private async queryAI(question?: string): Promise<string> {\r\n this.inputValue = question || this.inputEl.value\r\n this.inputEl.value = '' // 清空输入框\r\n if(this.inputValue.trim() === '') {\r\n return\r\n }\r\n\r\n // 有信息\r\n this.isBreak = false // 重置打断标记,防止重复打断ai\r\n this.sendButtonEl.textContent = this.BREAK\r\n this.sendButtonEl.style.display = 'block'\r\n this.aiPreTextEl.textContent = '按ESC退出 | 正在编写...' // 显示提示语\r\n // 这里实现实际的AI查询逻辑\r\n try {\r\n const response = await fetch(`${this.host}/api/generate`, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'Authorization': `Bearer ${this.apiKey}`,\r\n },\r\n body: JSON.stringify({\r\n model: this.model,\r\n prompt: this.inputValue,\r\n stream: true,\r\n }),\r\n })\r\n\r\n if (!response.ok) {\r\n throw new Error(`HTTP error! status: ${response.status}`)\r\n }\r\n\r\n const reader = response.body.getReader()\r\n const decoder = new TextDecoder()\r\n let content = ''\r\n\r\n while (true) {\r\n if (this.isBreak) {\r\n this.isBreak = false\r\n break\r\n }\r\n\r\n const { done, value } = await reader.read()\r\n if (done) break\r\n\r\n const chunk = decoder.decode(value)\r\n const lines = chunk.split('\\n').filter(line => line.trim() !== '')\r\n\r\n for (const line of lines) {\r\n try {\r\n const data = JSON.parse(line)\r\n content += data.response || ''\r\n this.showAIResponse(content)\r\n }\r\n catch (e) {\r\n console.error('解析错误:', e)\r\n }\r\n }\r\n }\r\n\r\n // 创建操作菜单\r\n this.createActionMenu()\r\n if (content) {\r\n this.aiPreTextEl.textContent = '' // 清空提示语\r\n // 隐藏发送按钮\r\n this.sendButtonEl.textContent = this.SEND\r\n this.sendButtonEl.style.display = 'none'\r\n }\r\n return content\r\n }\r\n catch (error) {\r\n console.error('AI查询失败:', error)\r\n return 'AI查询失败,请重试'\r\n }\r\n }\r\n\r\n private showAIResponse(response: string) {\r\n if (!this.resultPopupEl) return\r\n\r\n // 显示结果\r\n this.resultPopupEl.innerHTML = response\r\n this.resultPopupEl.style.display = 'block'\r\n }\r\n\r\n private createActionMenu() {\r\n if (!this.actionMenuEl) {\r\n this.actionMenuEl = document.createElement('div')\r\n this.actionMenuEl.className = 'ql-ai-actions'\r\n\r\n const actions = [this.DONE, this.REGENERATE, this.CLOSE]\r\n actions.forEach((action) => {\r\n const menuItem = document.createElement('div')\r\n menuItem.className = 'ql-ai-action-item'\r\n menuItem.textContent = action\r\n menuItem.addEventListener('click', () => this.handleAction(action))\r\n this.actionMenuEl.appendChild(menuItem)\r\n })\r\n\r\n this.wrapContainerEl.appendChild(this.actionMenuEl)\r\n }\r\n // 展示下拉菜单\r\n this.actionMenuEl.style.display = 'block'\r\n }\r\n\r\n private handleAction(action: string) {\r\n switch (action) {\r\n case this.DONE:\r\n this.insertAIResponse()\r\n break\r\n case this.REGENERATE:\r\n this.regenerateResponse()\r\n break\r\n case this.CLOSE:\r\n this.closeAIPanel()\r\n break\r\n }\r\n }\r\n\r\n private insertAIResponse() {\r\n if (!this.resultPopupEl) return\r\n const range = this.quill.getSelection(true)\r\n if (range) {\r\n // 使用HTML方式插入可以保留格式\r\n this.quill.clipboard.dangerouslyPasteHTML(\r\n range.index,\r\n this.resultPopupEl.innerHTML,\r\n )\r\n }\r\n this.closeAIPanel()\r\n }\r\n\r\n private async regenerateResponse() {\r\n this.actionMenuEl.style.display = 'none'\r\n await this.queryAI(this.inputValue)\r\n }\r\n\r\n private closeAIPanel() {\r\n this.isBreak = true // 停止查询\r\n if(this.dialogContainerEl) {\r\n this.quill.container.removeChild(this.dialogContainerEl)\r\n }\r\n this.dialogContainerEl = null\r\n this.actionMenuEl = null\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
|
package/es/themes/snow.es.js
CHANGED
package/es/themes/snow.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snow.es.js","sources":["../../../src/themes/snow.ts"],"sourcesContent":["import type { ThemeOptions } from 'quill/core/theme'\r\nimport type TypeToolbar from 'quill/modules/toolbar'\r\nimport type TypeIconPicker from 'quill/ui/icon-picker'\r\nimport { CHANGE_LANGUAGE_EVENT, inputFile, isNullOrUndefined } from '../config'\r\nimport FluentEditor from '../core/fluent-editor'\r\nimport { CustomImageSpec } from '../modules/custom-image/specs/custom-image-spec'\r\nimport { LinkTooltip } from '../modules/link'\r\nimport { shortKey } from '../modules/shortcut-key'\r\nimport { ColorPicker, Picker } from '../modules/toolbar/better-picker'\r\nimport { FormatPainter } from '../tools/format-painter'\r\nimport { fullscreenHandler } from '../tools/fullscreen'\r\nimport { Screenshot } from '../tools/screenshot'\r\n\r\nconst OriginSnowTheme = FluentEditor.import('themes/snow') as any\r\nconst IconPicker = FluentEditor.import('ui/icon-picker') as typeof TypeIconPicker\r\n\r\nOriginSnowTheme.DEFAULTS = {\r\n modules: {\r\n 'i18n': true,\r\n 'keyboard': {\r\n bindings: {\r\n ...shortKey,\r\n },\r\n },\r\n 'toolbar': {\r\n handlers: {\r\n ...(OriginSnowTheme.DEFAULTS as Record<string, any>).modules.toolbar.handlers,\r\n 'formula': function () {\r\n if (!this.quill.isEnabled()) return\r\n const mathlive = this.quill.getModule('mathlive')\r\n if (!mathlive) {\r\n this.quill.theme.tooltip.edit('formula')\r\n }\r\n else {\r\n mathlive.createDialog()\r\n }\r\n },\r\n 'undo': function () {\r\n this.quill.history.undo()\r\n },\r\n 'redo': function () {\r\n this.quill.history.redo()\r\n },\r\n 'file': function () {\r\n const accept = this.quill.uploader.options.mimetypes\r\n inputFile.call(this, 'file', accept)\r\n },\r\n 'image': function () {\r\n const accept = (this.quill as FluentEditor).uploader.options.mimetypes.filter((type) => {\r\n if (type === '*') return 'image/*'\r\n return type.startsWith('image/')\r\n })\r\n inputFile.call(this, 'image', accept)\r\n },\r\n 'video': function () {\r\n const accept = (this.quill as FluentEditor).uploader.options.mimetypes.filter((type) => {\r\n if (type === '*') return 'video/*'\r\n return type.startsWith('video/')\r\n })\r\n inputFile.call(this, 'video', accept)\r\n },\r\n 'emoji': function () {},\r\n 'fullscreen': fullscreenHandler,\r\n [FormatPainter.toolName]: FormatPainter,\r\n [Screenshot.toolName]: Screenshot,\r\n 'line-height': function (value) {\r\n this.quill.format('line-height', value)\r\n },\r\n 'divider': function () {\r\n const range = this.quill.getSelection(true)\r\n this.quill.insertText(range.index, '\\n', FluentEditor.sources.USER)\r\n this.quill.insertEmbed(range.index + 1, 'divider', true, FluentEditor.sources.USER)\r\n this.quill.setSelection(range.index + 2, FluentEditor.sources.SILENT)\r\n },\r\n },\r\n },\r\n 'image': {\r\n specs: [CustomImageSpec],\r\n overlay: {\r\n style: {\r\n border: '1px dashed rgb(68, 68, 68)',\r\n },\r\n },\r\n },\r\n 'shortcut-key': true,\r\n 'file': true,\r\n },\r\n}\r\n\r\nconst ALIGNS = [false, 'center', 'right']\r\nconst COLORS = [\r\n '',\r\n 'rgb(255, 255, 255)',\r\n 'rgb(0, 0, 0)',\r\n 'rgb(72, 83, 104)',\r\n 'rgb(41, 114, 244)',\r\n 'rgb(0, 163, 245)',\r\n 'rgb(49, 155, 98)',\r\n 'rgb(222, 60, 54)',\r\n 'rgb(248, 136, 37)',\r\n 'rgb(245, 196, 0)',\r\n 'rgb(153, 56, 215)',\r\n\r\n 'rgb(242, 242, 242)',\r\n 'rgb(127, 127, 127)',\r\n 'rgb(243, 245, 247)',\r\n 'rgb(229, 239, 255)',\r\n 'rgb(229, 246, 255)',\r\n 'rgb(234, 250, 241)',\r\n 'rgb(254, 233, 232)',\r\n 'rgb(254, 243, 235)',\r\n 'rgb(254, 249, 227)',\r\n 'rgb(253, 235, 255)',\r\n\r\n 'rgb(216, 216, 216)',\r\n 'rgb(89, 89, 89)',\r\n 'rgb(197, 202, 211)',\r\n 'rgb(199, 220, 255)',\r\n 'rgb(199, 236, 255)',\r\n 'rgb(195, 234, 213)',\r\n 'rgb(255, 201, 199)',\r\n 'rgb(255, 220, 196)',\r\n 'rgb(255, 238, 173)',\r\n 'rgb(242, 199, 255)',\r\n\r\n 'rgb(191, 191, 191)',\r\n 'rgb(63, 63, 63)',\r\n 'rgb(128, 139, 158)',\r\n 'rgb(153, 190, 255)',\r\n 'rgb(153, 221, 255)',\r\n 'rgb(152, 215, 182)',\r\n 'rgb(255, 156, 153)',\r\n 'rgb(255, 186, 132)',\r\n 'rgb(255, 226, 112)',\r\n 'rgb(213, 142, 255)',\r\n\r\n 'rgb(165, 165, 165)',\r\n 'rgb(38, 38, 38)',\r\n 'rgb(53, 59, 69)',\r\n 'rgb(20, 80, 184)',\r\n 'rgb(18, 116, 165)',\r\n 'rgb(39, 124, 79)',\r\n 'rgb(158, 30, 26)',\r\n 'rgb(184, 96, 20)',\r\n 'rgb(163, 130, 0)',\r\n 'rgb(94, 34, 129)',\r\n\r\n 'rgb(147, 147, 147)',\r\n 'rgb(13, 13, 13)',\r\n 'rgb(36, 39, 46)',\r\n 'rgb(12, 48, 110)',\r\n 'rgb(10, 65, 92)',\r\n 'rgb(24, 78, 50)',\r\n 'rgb(88, 17, 14)',\r\n 'rgb(92, 48, 10)',\r\n 'rgb(102, 82, 0)',\r\n 'rgb(59, 21, 81)',\r\n\r\n 'custom',\r\n]\r\nconst FONTS = [false, 'serif', 'monospace']\r\nconst HEADERS = ['1', '2', '3', false]\r\nconst SIZES = ['small', false, 'large', 'huge']\r\nconst LINEHEIGHT = [false, '1.2', '1.5', '2']\r\n\r\nclass SnowTheme extends OriginSnowTheme {\r\n constructor(public quill: FluentEditor, options: ThemeOptions) {\r\n super(quill, options)\r\n\r\n this.quill.emitter.on(CHANGE_LANGUAGE_EVENT, () => {\r\n this.i18nTextToolbar()\r\n })\r\n }\r\n\r\n i18nTextToolbar() {\r\n const toolbar = this.quill.getModule('toolbar') as TypeToolbar\r\n ColorPicker.clearText = this.quill.getLangText('clear-color')\r\n ColorPicker.customText = this.quill.getLangText('custom-color')\r\n if (!toolbar || !this.pickers) return\r\n this.pickers.forEach((picker) => {\r\n if (picker instanceof ColorPicker) {\r\n // EasyColorPicker have not dts. abd origin quill ColorPicker dts not complete. use any to resovle ts type error\r\n const colorPicker = picker as any\r\n colorPicker.options.remove()\r\n Array.from(colorPicker.select.options).forEach((option: any) => {\r\n if (option.hasAttribute('custom')) {\r\n option.remove()\r\n }\r\n })\r\n colorPicker.buildOptions()\r\n colorPicker.createUsedColor()\r\n }\r\n })\r\n }\r\n\r\n buildPickers(selects: NodeListOf<HTMLSelectElement>, icons: Record<string, string | Record<string, string>>) {\r\n this.pickers = Array.from(selects).map((select) => {\r\n if (select.classList.contains('ql-align')) {\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n fillSelect(select, ALIGNS)\r\n }\r\n return new IconPicker(select, icons.align as Record<string, string>)\r\n }\r\n if (select.classList.contains('ql-background') || select.classList.contains('ql-color')) {\r\n const format = select.classList.contains('ql-background') ? 'background' : 'color'\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n fillColorSelect(select, COLORS, format, format === 'background' ? '#ffffff' : '#000000')\r\n }\r\n return new ColorPicker(select, icons[format] as string, {\r\n expandIcon: '<i class=\"icon\" />',\r\n closeAfterChange: false,\r\n })\r\n }\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n if (select.classList.contains('ql-font')) {\r\n fillSelect(select, FONTS)\r\n }\r\n else if (select.classList.contains('ql-header')) {\r\n fillSelect(select, HEADERS)\r\n }\r\n else if (select.classList.contains('ql-size')) {\r\n fillSelect(select, SIZES)\r\n }\r\n else if (select.classList.contains('ql-line-height')) {\r\n fillSelect(select, LINEHEIGHT)\r\n }\r\n }\r\n return new Picker(select)\r\n })\r\n const update = () => {\r\n this.pickers.forEach((picker) => {\r\n if (picker instanceof ColorPicker) return\r\n picker.update()\r\n })\r\n }\r\n this.quill.on(FluentEditor.events.EDITOR_CHANGE, update)\r\n }\r\n\r\n extendToolbar(toolbar) {\r\n const icons = FluentEditor.import('ui/icons') as Record<string, any>\r\n toolbar.container.classList.add('ql-snow')\r\n this.buildButtons(toolbar.container.querySelectorAll('button'), icons)\r\n this.buildPickers(toolbar.container.querySelectorAll('select'), icons)\r\n this.tooltip = new LinkTooltip(this.quill, this.options.bounds)\r\n }\r\n}\r\n\r\nfunction fillSelect(select, values, defaultValue = false) {\r\n values.forEach((value) => {\r\n const option = document.createElement('option')\r\n if (value === defaultValue) {\r\n option.setAttribute('selected', 'selected')\r\n }\r\n else {\r\n option.setAttribute('value', value)\r\n }\r\n select.appendChild(option)\r\n })\r\n}\r\nfunction fillColorSelect(\r\n select: HTMLSelectElement,\r\n values: Array<string | boolean>,\r\n format: string,\r\n defaultValue: unknown = false,\r\n) {\r\n const colorGetter = document.createElement('span') as HTMLElement\r\n for (const value of values) {\r\n const option = document.createElement('option')\r\n if (value === defaultValue) {\r\n option.setAttribute('selected', 'selected')\r\n }\r\n else {\r\n if (value !== 'custom') {\r\n colorGetter.style[format] = String(value)\r\n option.setAttribute('value', colorGetter.style[format])\r\n }\r\n else {\r\n option.setAttribute('value', value)\r\n }\r\n }\r\n select.appendChild(option)\r\n }\r\n}\r\n\r\nexport default SnowTheme\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snow.es.js","sources":["../../../src/themes/snow.ts"],"sourcesContent":["import type { ThemeOptions } from 'quill/core/theme'\r\nimport type TypeToolbar from 'quill/modules/toolbar'\r\nimport type TypeIconPicker from 'quill/ui/icon-picker'\r\nimport { CHANGE_LANGUAGE_EVENT, inputFile, isNullOrUndefined } from '../config'\r\nimport FluentEditor from '../core/fluent-editor'\r\nimport { CustomImageSpec } from '../modules/custom-image/specs/custom-image-spec'\r\nimport { LinkTooltip } from '../modules/link'\r\nimport { shortKey } from '../modules/shortcut-key'\r\nimport { ColorPicker, Picker } from '../modules/toolbar/better-picker'\r\nimport { FormatPainter } from '../tools/format-painter'\r\nimport { fullscreenHandler } from '../tools/fullscreen'\r\nimport { Screenshot } from '../tools/screenshot'\r\n\r\nconst OriginSnowTheme = FluentEditor.import('themes/snow') as any\r\nconst IconPicker = FluentEditor.import('ui/icon-picker') as typeof TypeIconPicker\r\n\r\nOriginSnowTheme.DEFAULTS = {\r\n modules: {\r\n 'i18n': true,\r\n 'keyboard': {\r\n bindings: {\r\n ...shortKey,\r\n },\r\n },\r\n 'toolbar': {\r\n handlers: {\r\n ...(OriginSnowTheme.DEFAULTS as Record<string, any>).modules.toolbar.handlers,\r\n 'formula': function () {\r\n if (!this.quill.isEnabled()) return\r\n const mathlive = this.quill.getModule('mathlive')\r\n if (!mathlive) {\r\n this.quill.theme.tooltip.edit('formula')\r\n }\r\n else {\r\n mathlive.createDialog()\r\n }\r\n },\r\n 'undo': function () {\r\n this.quill.history.undo()\r\n },\r\n 'redo': function () {\r\n this.quill.history.redo()\r\n },\r\n 'file': function () {\r\n const accept = this.quill.uploader.options.mimetypes\r\n inputFile.call(this, 'file', accept)\r\n },\r\n 'image': function () {\r\n const accept = (this.quill as FluentEditor).uploader.options.mimetypes.filter((type) => {\r\n if (type === '*') return 'image/*'\r\n return type.startsWith('image/')\r\n })\r\n inputFile.call(this, 'image', accept)\r\n },\r\n 'video': function () {\r\n const accept = (this.quill as FluentEditor).uploader.options.mimetypes.filter((type) => {\r\n if (type === '*') return 'video/*'\r\n return type.startsWith('video/')\r\n })\r\n inputFile.call(this, 'video', accept)\r\n },\r\n 'ai': function () {},\r\n 'emoji': function () {},\r\n 'fullscreen': fullscreenHandler,\r\n [FormatPainter.toolName]: FormatPainter,\r\n [Screenshot.toolName]: Screenshot,\r\n 'line-height': function (value) {\r\n this.quill.format('line-height', value)\r\n },\r\n 'divider': function () {\r\n const range = this.quill.getSelection(true)\r\n this.quill.insertText(range.index, '\\n', FluentEditor.sources.USER)\r\n this.quill.insertEmbed(range.index + 1, 'divider', true, FluentEditor.sources.USER)\r\n this.quill.setSelection(range.index + 2, FluentEditor.sources.SILENT)\r\n },\r\n },\r\n },\r\n 'image': {\r\n specs: [CustomImageSpec],\r\n overlay: {\r\n style: {\r\n border: '1px dashed rgb(68, 68, 68)',\r\n },\r\n },\r\n },\r\n 'shortcut-key': true,\r\n 'file': true,\r\n },\r\n}\r\n\r\nconst ALIGNS = [false, 'center', 'right']\r\nconst COLORS = [\r\n '',\r\n 'rgb(255, 255, 255)',\r\n 'rgb(0, 0, 0)',\r\n 'rgb(72, 83, 104)',\r\n 'rgb(41, 114, 244)',\r\n 'rgb(0, 163, 245)',\r\n 'rgb(49, 155, 98)',\r\n 'rgb(222, 60, 54)',\r\n 'rgb(248, 136, 37)',\r\n 'rgb(245, 196, 0)',\r\n 'rgb(153, 56, 215)',\r\n\r\n 'rgb(242, 242, 242)',\r\n 'rgb(127, 127, 127)',\r\n 'rgb(243, 245, 247)',\r\n 'rgb(229, 239, 255)',\r\n 'rgb(229, 246, 255)',\r\n 'rgb(234, 250, 241)',\r\n 'rgb(254, 233, 232)',\r\n 'rgb(254, 243, 235)',\r\n 'rgb(254, 249, 227)',\r\n 'rgb(253, 235, 255)',\r\n\r\n 'rgb(216, 216, 216)',\r\n 'rgb(89, 89, 89)',\r\n 'rgb(197, 202, 211)',\r\n 'rgb(199, 220, 255)',\r\n 'rgb(199, 236, 255)',\r\n 'rgb(195, 234, 213)',\r\n 'rgb(255, 201, 199)',\r\n 'rgb(255, 220, 196)',\r\n 'rgb(255, 238, 173)',\r\n 'rgb(242, 199, 255)',\r\n\r\n 'rgb(191, 191, 191)',\r\n 'rgb(63, 63, 63)',\r\n 'rgb(128, 139, 158)',\r\n 'rgb(153, 190, 255)',\r\n 'rgb(153, 221, 255)',\r\n 'rgb(152, 215, 182)',\r\n 'rgb(255, 156, 153)',\r\n 'rgb(255, 186, 132)',\r\n 'rgb(255, 226, 112)',\r\n 'rgb(213, 142, 255)',\r\n\r\n 'rgb(165, 165, 165)',\r\n 'rgb(38, 38, 38)',\r\n 'rgb(53, 59, 69)',\r\n 'rgb(20, 80, 184)',\r\n 'rgb(18, 116, 165)',\r\n 'rgb(39, 124, 79)',\r\n 'rgb(158, 30, 26)',\r\n 'rgb(184, 96, 20)',\r\n 'rgb(163, 130, 0)',\r\n 'rgb(94, 34, 129)',\r\n\r\n 'rgb(147, 147, 147)',\r\n 'rgb(13, 13, 13)',\r\n 'rgb(36, 39, 46)',\r\n 'rgb(12, 48, 110)',\r\n 'rgb(10, 65, 92)',\r\n 'rgb(24, 78, 50)',\r\n 'rgb(88, 17, 14)',\r\n 'rgb(92, 48, 10)',\r\n 'rgb(102, 82, 0)',\r\n 'rgb(59, 21, 81)',\r\n\r\n 'custom',\r\n]\r\nconst FONTS = [false, 'serif', 'monospace']\r\nconst HEADERS = ['1', '2', '3', false]\r\nconst SIZES = ['small', false, 'large', 'huge']\r\nconst LINEHEIGHT = [false, '1.2', '1.5', '2']\r\n\r\nclass SnowTheme extends OriginSnowTheme {\r\n constructor(public quill: FluentEditor, options: ThemeOptions) {\r\n super(quill, options)\r\n\r\n this.quill.emitter.on(CHANGE_LANGUAGE_EVENT, () => {\r\n this.i18nTextToolbar()\r\n })\r\n }\r\n\r\n i18nTextToolbar() {\r\n const toolbar = this.quill.getModule('toolbar') as TypeToolbar\r\n ColorPicker.clearText = this.quill.getLangText('clear-color')\r\n ColorPicker.customText = this.quill.getLangText('custom-color')\r\n if (!toolbar || !this.pickers) return\r\n this.pickers.forEach((picker) => {\r\n if (picker instanceof ColorPicker) {\r\n // EasyColorPicker have not dts. abd origin quill ColorPicker dts not complete. use any to resovle ts type error\r\n const colorPicker = picker as any\r\n colorPicker.options.remove()\r\n Array.from(colorPicker.select.options).forEach((option: any) => {\r\n if (option.hasAttribute('custom')) {\r\n option.remove()\r\n }\r\n })\r\n colorPicker.buildOptions()\r\n colorPicker.createUsedColor()\r\n }\r\n })\r\n }\r\n\r\n buildPickers(selects: NodeListOf<HTMLSelectElement>, icons: Record<string, string | Record<string, string>>) {\r\n this.pickers = Array.from(selects).map((select) => {\r\n if (select.classList.contains('ql-align')) {\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n fillSelect(select, ALIGNS)\r\n }\r\n return new IconPicker(select, icons.align as Record<string, string>)\r\n }\r\n if (select.classList.contains('ql-background') || select.classList.contains('ql-color')) {\r\n const format = select.classList.contains('ql-background') ? 'background' : 'color'\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n fillColorSelect(select, COLORS, format, format === 'background' ? '#ffffff' : '#000000')\r\n }\r\n return new ColorPicker(select, icons[format] as string, {\r\n expandIcon: '<i class=\"icon\" />',\r\n closeAfterChange: false,\r\n })\r\n }\r\n if (isNullOrUndefined(select.querySelector('option'))) {\r\n if (select.classList.contains('ql-font')) {\r\n fillSelect(select, FONTS)\r\n }\r\n else if (select.classList.contains('ql-header')) {\r\n fillSelect(select, HEADERS)\r\n }\r\n else if (select.classList.contains('ql-size')) {\r\n fillSelect(select, SIZES)\r\n }\r\n else if (select.classList.contains('ql-line-height')) {\r\n fillSelect(select, LINEHEIGHT)\r\n }\r\n }\r\n return new Picker(select)\r\n })\r\n const update = () => {\r\n this.pickers.forEach((picker) => {\r\n if (picker instanceof ColorPicker) return\r\n picker.update()\r\n })\r\n }\r\n this.quill.on(FluentEditor.events.EDITOR_CHANGE, update)\r\n }\r\n\r\n extendToolbar(toolbar) {\r\n const icons = FluentEditor.import('ui/icons') as Record<string, any>\r\n toolbar.container.classList.add('ql-snow')\r\n this.buildButtons(toolbar.container.querySelectorAll('button'), icons)\r\n this.buildPickers(toolbar.container.querySelectorAll('select'), icons)\r\n this.tooltip = new LinkTooltip(this.quill, this.options.bounds)\r\n }\r\n}\r\n\r\nfunction fillSelect(select, values, defaultValue = false) {\r\n values.forEach((value) => {\r\n const option = document.createElement('option')\r\n if (value === defaultValue) {\r\n option.setAttribute('selected', 'selected')\r\n }\r\n else {\r\n option.setAttribute('value', value)\r\n }\r\n select.appendChild(option)\r\n })\r\n}\r\nfunction fillColorSelect(\r\n select: HTMLSelectElement,\r\n values: Array<string | boolean>,\r\n format: string,\r\n defaultValue: unknown = false,\r\n) {\r\n const colorGetter = document.createElement('span') as HTMLElement\r\n for (const value of values) {\r\n const option = document.createElement('option')\r\n if (value === defaultValue) {\r\n option.setAttribute('selected', 'selected')\r\n }\r\n else {\r\n if (value !== 'custom') {\r\n colorGetter.style[format] = String(value)\r\n option.setAttribute('value', colorGetter.style[format])\r\n }\r\n else {\r\n option.setAttribute('value', value)\r\n }\r\n }\r\n select.appendChild(option)\r\n }\r\n}\r\n\r\nexport default SnowTheme\r\n"],"names":[],"mappings":"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"}
|
package/es/ui/icons.config.es.js
CHANGED
|
@@ -278,7 +278,22 @@ const FULLSCREEN_EXIT_ICON = `
|
|
|
278
278
|
const TRIANGLE_DOWN_ICON = `<i class="icon-triangle-down"></i>`;
|
|
279
279
|
const FORMAT_PAINTER_ICON = `<svg viewBox="0 0 32 32"><path fill="currentColor" d="M28.83 23.17L23 17.33V13a1 1 0 0 0-.29-.71l-10-10a1 1 0 0 0-1.42 0l-9 9a1 1 0 0 0 0 1.42l10 10A1 1 0 0 0 13 23h4.34l5.83 5.84a4 4 0 0 0 5.66-5.66ZM6 10.41l2.29 2.3l1.42-1.42L7.41 9L9 7.41l4.29 4.3l1.42-1.42L10.41 6L12 4.41L18.59 11L11 18.59L4.41 12Zm21.41 17a2 2 0 0 1-2.82 0l-6.13-6.12a1.8 1.8 0 0 0-.71-.29h-4.34l-1-1L20 12.41l1 1v4.34a1 1 0 0 0 .29.7l6.12 6.14a2 2 0 0 1 0 2.82"/></svg>`;
|
|
280
280
|
const DIVIDER_ICON = `<svg viewBox="0 0 18 18"><line x1="0" y1="9" x2="18" y2="9" stroke="currentColor" stroke-width="2"/></svg>`;
|
|
281
|
+
const AI_ICON = `<svg viewBox="0 0 24 24.0023" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24.0022736" fill="none" customFrame="#000000">
|
|
282
|
+
<defs>
|
|
283
|
+
<linearGradient id="paint_linear_1" x1="2.50000095" x2="12.0000048" y1="0" y2="23.9999962" gradientUnits="userSpaceOnUse">
|
|
284
|
+
<stop stop-color="rgb(250,100,1)" offset="0.263296664" stop-opacity="1" />
|
|
285
|
+
<stop stop-color="rgb(249.9,102.687,1)" offset="0.349490285" stop-opacity="1" />
|
|
286
|
+
<stop stop-color="rgb(247,181,1)" offset="0.494946986" stop-opacity="1" />
|
|
287
|
+
<stop stop-color="rgb(11,184,178)" offset="0.690560162" stop-opacity="1" />
|
|
288
|
+
<stop stop-color="rgb(1,145,255)" offset="0.858591199" stop-opacity="1" />
|
|
289
|
+
<stop stop-color="rgb(182,32,224)" offset="1" stop-opacity="1" />
|
|
290
|
+
</linearGradient>
|
|
291
|
+
</defs>
|
|
292
|
+
<path id="矢量 54" d="M12.9196 5.92509L6.52253 12.3221C6.30963 12.5349 6.14215 12.7787 6.01959 13.0536C5.89703 13.3284 5.8277 13.6161 5.81207 13.9166L5.71637 15.7208C5.63971 17.1667 6.83308 18.3601 8.27938 18.2835L10.0831 18.188C10.3839 18.1721 10.6715 18.1029 10.9464 17.9804C11.2213 17.8579 11.465 17.6903 11.6779 17.4775L18.9079 10.2475C19.3942 10.9692 19.7898 11.7495 20.0944 12.5884C20.2961 13.1437 20.448 13.7009 20.5495 14.2597C20.6428 14.7731 20.6897 15.2605 20.6897 15.7225C20.6897 16.4805 20.4992 17.1292 20.1179 17.6686C19.7619 18.1717 19.2678 18.5486 18.6359 18.7997C17.9894 19.0561 17.2853 19.1496 16.5231 19.0801C15.7233 19.0073 14.9669 18.763 14.2545 18.3471C14.1144 18.2653 13.9557 18.2223 13.7941 18.2223C13.2819 18.2223 12.8663 18.6465 12.8663 19.1698C12.8663 19.2533 12.8771 19.3354 12.8981 19.416C12.9196 19.4967 12.9508 19.5731 12.9918 19.6453C13.0328 19.7176 13.0822 19.7831 13.1403 19.842C13.1793 19.8813 13.2208 19.9168 13.2653 19.9483L13.3336 19.9924C13.8068 20.2686 14.3029 20.4897 14.8229 20.6555C15.3239 20.8158 15.8356 20.9198 16.3586 20.9676C16.8722 21.0144 17.3776 21.0043 17.8747 20.9373C18.3771 20.8694 18.8552 20.7456 19.3078 20.5658C19.7761 20.3802 20.2024 20.1407 20.5871 19.8474C20.9904 19.5403 21.3352 19.1839 21.6223 18.7779C21.9216 18.3542 22.1496 17.8888 22.3054 17.3818C22.4656 16.8605 22.5456 16.3074 22.5456 15.7225C22.5456 15.1442 22.4885 14.5412 22.3743 13.9136C22.2532 13.2479 22.073 12.5866 21.8347 11.9295C21.5764 11.218 21.2575 10.5358 20.8786 9.88306C20.6838 9.54703 20.4743 9.22121 20.2502 8.90559L23.2864 5.86926C24.238 4.91748 24.238 3.37431 23.2864 2.42253L21.5779 0.713837C20.6257 -0.237946 19.0827 -0.237946 18.1306 0.713837L14.4083 4.43634C12.5861 3.74113 10.5411 3.39346 8.27499 3.39346C7.76229 3.39346 7.34724 3.81766 7.34724 4.34097C7.34724 4.86429 7.76229 5.28848 8.27499 5.28848C9.97178 5.28865 11.5196 5.50081 12.9196 5.92509ZM7.91903 14.0282C7.92244 13.9442 7.95418 13.8728 8.01473 13.8142L17.3937 4.43512L19.6228 6.54848L19.5256 6.64574L10.1856 15.9854C10.1271 16.0456 10.0558 16.0774 9.97178 16.0808L8.16756 16.1763C8.07039 16.1815 7.98739 16.1496 7.91903 16.0809C7.85018 16.0122 7.81844 15.9294 7.82381 15.8324L7.91903 14.0282ZM21.7942 4.37717L20.8239 5.34731L18.653 3.1759L19.6228 2.20593C19.6867 2.14209 19.7639 2.11012 19.8542 2.11012C19.8991 2.10941 19.9406 2.1169 19.9792 2.1326L20.0857 2.20593L21.7942 3.91463C21.8581 3.97856 21.8899 4.05559 21.8899 4.14589C21.8913 4.2368 21.8596 4.31389 21.7942 4.37717ZM0.381352 6.34212C-0.126954 6.2448 -0.126954 5.50148 0.381352 5.40408L0.451665 5.39062C0.521978 5.37715 0.591315 5.36131 0.660651 5.34309C0.744636 5.32089 0.827645 5.29515 0.910165 5.26588C1.06007 5.21257 1.20509 5.14813 1.34523 5.07259C1.48537 4.99702 1.61916 4.91119 1.74709 4.81508C1.87453 4.71898 1.99465 4.61366 2.10647 4.49916C2.21877 4.38464 2.3218 4.26222 2.41604 4.1319C2.4468 4.08905 2.47659 4.0455 2.50588 4.00127L2.54495 3.93964L2.57473 3.89056C2.60745 3.83527 2.6387 3.77893 2.668 3.72156C2.74222 3.57832 2.8052 3.43025 2.85745 3.27734C2.9097 3.12442 2.95023 2.96838 2.97952 2.80922L2.98733 2.76753C3.07913 2.26801 3.78226 2.27577 3.86381 2.7771C3.88969 2.93764 3.92729 3.09518 3.97709 3.24979C4.0269 3.40439 4.08793 3.5542 4.1602 3.69925C4.23198 3.84428 4.31499 3.98286 4.40776 4.11496C4.50102 4.24706 4.60307 4.37114 4.71489 4.4872C4.82671 4.60326 4.94634 4.70993 5.07378 4.80724C5.20171 4.90453 5.33599 4.99132 5.47662 5.06758C5.61724 5.14384 5.76324 5.20869 5.91363 5.26215C6.06403 5.31558 6.21784 5.35699 6.37458 5.38635L6.47516 5.4053C6.98396 5.50072 6.98396 6.24556 6.47516 6.34097L6.37458 6.35992C6.21784 6.3893 6.06403 6.43069 5.91363 6.48413C5.76324 6.53758 5.61724 6.60243 5.47662 6.6787C5.33599 6.75494 5.20171 6.84174 5.07378 6.93903C4.94634 7.03632 4.82671 7.14301 4.71489 7.25905C4.60307 7.37511 4.50102 7.49918 4.40776 7.63127C4.37749 7.67439 4.34819 7.71822 4.32036 7.76273C4.26225 7.85454 4.20903 7.94928 4.1602 8.04697C4.08793 8.19202 4.0269 8.34183 3.97709 8.49641C3.92729 8.651 3.88969 8.80856 3.86381 8.96909C3.78226 9.4706 3.07913 9.47827 2.98733 8.97874L2.97952 8.93706C2.95023 8.77789 2.9097 8.62186 2.85745 8.46895C2.8052 8.31604 2.74222 8.16797 2.668 8.02473C2.62893 7.94897 2.58694 7.87502 2.54251 7.80286C2.50247 7.7386 2.46047 7.67578 2.41604 7.6144C2.3218 7.48405 2.21877 7.36163 2.10647 7.24713C1.99465 7.13263 1.87453 7.02731 1.74709 6.9312C1.61916 6.8351 1.48537 6.74925 1.34523 6.67371C1.20509 6.59814 1.06007 6.53371 0.910165 6.48041C0.760262 6.42711 0.607428 6.38551 0.451665 6.35567L0.381352 6.34212ZM2.26418 14.218C2.62259 15.5594 3.22367 16.7893 4.06694 17.9076C4.9063 19.0207 5.92242 19.9394 7.11531 20.6639C8.34188 21.409 9.66807 21.8938 11.0953 22.1182C11.1495 22.1268 11.2028 22.1401 11.2545 22.1583C11.3068 22.1765 11.3566 22.1992 11.4049 22.2265C11.4528 22.2537 11.4982 22.2851 11.5406 22.3206C11.5836 22.3561 11.6227 22.3951 11.6583 22.4377C11.6945 22.4803 11.7262 22.5258 11.754 22.5742C11.7819 22.6226 11.8053 22.6731 11.8243 22.7258C11.8434 22.7784 11.858 22.8324 11.8678 22.8876C11.8771 22.9429 11.882 22.9986 11.882 23.0547C11.882 23.5781 11.4669 24.0023 10.9542 24.0023C10.9068 24.0023 10.86 23.9986 10.8107 23.9909C9.14804 23.7294 7.59969 23.1631 6.16608 22.2925C4.77056 21.4447 3.5806 20.3685 2.59671 19.0638C1.60402 17.7478 0.896493 16.2987 0.474126 14.7167C0.03418 13.0693 -0.0654303 11.39 0.176271 9.67772L0.192873 9.58968L0.214358 9.51338L0.254885 9.41016L0.280276 9.35857C0.306644 9.30896 0.337406 9.26216 0.372074 9.21817C0.406742 9.17416 0.445317 9.13367 0.486821 9.09666C0.528814 9.05966 0.573736 9.02673 0.6211 8.99791L0.734871 8.93944L0.770516 8.92503C0.822274 8.90529 0.875497 8.89041 0.929697 8.88037C0.984385 8.87035 1.03907 8.86533 1.09474 8.86533C1.60695 8.86533 2.02248 9.28952 2.02248 9.81284C2.02248 9.85803 2.01955 9.90323 2.0132 9.94795C1.80812 11.4 1.89211 12.8234 2.26418 14.218Z" fill="url(#paint_linear_1)" fill-rule="evenodd" />
|
|
293
|
+
</svg>
|
|
294
|
+
`;
|
|
281
295
|
export {
|
|
296
|
+
AI_ICON,
|
|
282
297
|
ALIGN_CENTER_ICON,
|
|
283
298
|
ALIGN_JUSTIFY_ICON,
|
|
284
299
|
ALIGN_LEFT_ICON,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.config.es.js","sources":["../../../src/ui/icons.config.ts"],"sourcesContent":["export const UNDO_ICON = `<svg width=\"16px\" height=\"14px\" viewBox=\"0 0 16 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, -1.000000)\" fill=\"#293040\">\r\n <path d=\"M11,5 C13.7614237,5 16,7.23857625 16,10 C16,12.7614237 13.7614237,15 11,15 L7,15 L7,14 L11,14\r\n C13.209139,14 15,12.209139 15,10 C15,7.790861 13.209139,6 11,6 L5,6 L5,10 L0,5.5 L5,1 L5,5 L11,5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const REDO_ICON = `<svg width=\"16px\" height=\"14px\" viewBox=\"0 0 16 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, -1.000000)\" fill=\"#293040\">\r\n <path d=\"M5,5 L11,5 L11,1 L16,5.5 L11,10 L11,6 L5,6 C2.790861,6 1,7.790861 1,10 C1,12.209139 2.790861,14 5,14 L9,14\r\n L9,15 L5,15 C2.23857625,15 0,12.7614237 0,10 C0,7.23857625 2.23857625,5 5,5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CLEAN_ICON = `<svg width=\"16px\" height=\"15px\" viewBox=\"0 0 16 15\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M4.32708124,14 L8.37150583,14 L10.5729409,11.5550586 L4.6297198,6.20375828 L1.25465311,9.95542661\r\n C1.09078634,10.1375782 1.0006437,10.3742369 1.00180556,10.6192474 C1.00295568,10.8617824 1.10621221,11.092615\r\n 1.28624979,11.2551297 L4.32708124,14 Z M16,14 L16,15 L3.93760008,15 L0.597250175,11.9923354 C0.217072683,11.6500221\r\n 1.59049582e-13,11.1091757 1.59428026e-13,10.6149383 C1.59806471e-13,10.1207008 0.183000942,9.64396706 0.513710349,9.27667705\r\n L8.56855175,0.330869394 L16,7.02217546 L9.71713856,14 L16,14 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const BOLD_ICON = `<svg width=\"12px\" height=\"16px\" viewBox=\"0 0 12 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-2.000000, 0.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <path d=\"M11.540636,7.0842147 C13.0068647,7.89340318 14,9.45459285 14,11.2477417 C14,13.8723415 11.8723415,16\r\n 9.2477417,16 L2,16 L2,7.99258423 L2,-5.06261699e-14 L9.00370789,-4.75175455e-14 C11.2107991,-4.79229815e-14 13,1.78920092\r\n 13,3.99629211 C13,5.24014846 12.4317244,6.35127692 11.540636,7.0842147 Z M3.5,1.5 L3.5,6.49258423 L9.00370789,6.49258423\r\n C10.382372,6.49258423 11.5,5.37495618 11.5,3.99629211 C11.5,2.61762805 10.382372,1.5 9.00370789,1.5 L3.5,1.5 Z M3.5,14.5\r\n L9.2477417,14.5 C11.0439144,14.5 12.5,13.0439144 12.5,11.2477417 C12.5,9.45156904 11.0439144,7.9954834 9.2477417,7.9954834\r\n L3.5,7.9954834 L3.5,14.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const ITALIC_ICON = `<svg width=\"9px\" height=\"16px\" viewBox=\"0 0 9 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-4.000000, 0.000000)\" fill=\"#293040\">\r\n <path d=\"M10.2565501,1.5 L8.41332415,14.5 L12,14.5 L12,16 L4,16 L4,14.5 L6.90083611,14.5 L8.74406208,1.5 L5,1.5\r\n L5,0 L13,0 L13,1.5 L10.2565501,1.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const UNDERLINE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon fill=\"#293040\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path d=\"M4.5,3 L4.5,7 C4.5,8.93299662 6.06700338,10.5 8,10.5 C9.93299662,10.5 11.5,8.93299662 11.5,7 L11.5,1.5\r\n L11.4998322,0 L13,0 L13,7 C13,9.76142375 10.7614237,12 8,12 C5.23857625,12 3,9.76142375 3,7 L3,0 L4.49893188,0\r\n L4.49893188,3 L4.5,3 Z\" fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const STRIKE_ICON = `<svg width=\"14px\" height=\"16px\" viewBox=\"0 0 14 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1.000000, 0.000000)\" fill=\"#293040\">\r\n <path d=\"M9.93321102,9 L1,9 L1,7 L3.84197169,7 C3.31015092,6.28495098 3,5.42507332 3,4.5 C3,2.01471863\r\n 5.23857625,0 8,0 C10.5736409,0 12.6931261,1.75002477 12.969484,4 L11.4507289,4 C11.1737591,2.60626201 9.76011738,1.5 8,1.5\r\n C6.03382604,1.5 4.5,2.88044344 4.5,4.5 C4.5,5.52604325 5.11562351,6.45611494 6.06678898,7 L15,7 L15,9 L12.1580283,9\r\n C12.6898491,9.71504902 13,10.5749267 13,11.5 C13,13.9852814 10.7614237,16 8,16 C5.42635908,16 3.30687393,14.2499752\r\n 3.03051599,12 L4.54927112,12 C4.82624092,13.393738 6.23988262,14.5 8,14.5 C9.96617396,14.5 11.5,13.1195566 11.5,11.5\r\n C11.5,10.4739568 10.8843765,9.54388506 9.93321102,9 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const COLOR_ICON = `<svg viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon class=\"ql-color-label\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path d=\"M10.9166667,8.5 L5.08333333,8.5 L4.26618123,10.461165 L3.62338765,12 L2,12 L7,0 L9,0 L14,12 L12.3824972,12\r\n L11.5753038,10.0807292 L10.9166667,8.5 Z M10.2916667,7 L8,1.5 L5.70833333,7 L10.2916667,7 Z\"\r\n fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const BACKGROUND_COLOR_ICON = `<svg viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon class=\"ql-color-label\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path class=\"ql-color-label\" d=\"M4.64447006,9.66583547 L3.17597929,8.33216965 L6.15933183,5.11039074 L5.42508645,4.44355783\r\n L9.39179153,1.0658141e-13 L16,6.00149616 L12.0332949,10.445054 L11.2990495,9.77822108 L8.31569698,13 L6.84720621,11.6663342\r\n L5.69344476,12.9587937 L2.36400649,12.9587937 L2,12.6282074 L4.64447006,9.66583547 Z M4.57134219,8.25840959\r\n L8.24256911,11.5925741 L10.5648041,9.11138818 L6.89357722,5.77722364 L4.57134219,8.25840959 Z M14.6046371,6.07525623\r\n L9.4649194,1.40742588 L6.82044935,4.36979777 L11.960167,9.03762811 L14.6046371,6.07525623 Z\"\r\n fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_LEFT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M0,0 L1.5,0 L1.5,16 L0,16 L0,0 Z M4,3 L13,3 L13,7 L4,7 L4,3 Z M5,4 L5,6 L12,6 L12,4 L5,4 Z M4,9 L16,9\r\n L16,13 L4,13 L4,9 Z M5,10 L5,12 L15,12 L15,10 L5,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_CENTER_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M8.75,7 L8.75,9 L16,9 L16,13 L8.75,13 L8.75,16 L7.25,16 L7.25,13 L0,13 L0,9 L7.25,9 L7.25,7 L2,7\r\n L2,3 L7.25,3 L7.25,0 L8.75,0 L8.75,3 L14,3 L14,7 L8.75,7 Z M1,10 L1,12 L15,12 L15,10 L1,10 Z M3,4 L3,6 L13,6\r\n L13,4 L3,4 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_JUSTIFY_ICON = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 15 15\"><path fill=\"none\" stroke=\"currentColor\" d=\"M0 3.5h15m-15 8h15m-15-4h15\"/></svg>`\r\n\r\nexport const ALIGN_RIGHT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M14.5,0 L16,0 L16,16 L14.5,16 L14.5,0 Z M3,3 L12,3 L12,7 L3,7 L3,3 Z M4,4 L4,6 L11,6 L11,4 L4,4 Z\r\n M0,9 L12,9 L12,13 L0,13 L0,9 Z M1,10 L1,12 L11,12 L11,10 L1,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_UNORDERED_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M5,1 L16,1 L16,2.5 L5,2.5 L5,1 Z M2,4 C0.8954305,4 0,3.1045695 0,2 C0,0.8954305 0.8954305,0 2,0\r\n C3.1045695,0 4,0.8954305 4,2 C4,3.1045695 3.1045695,4 2,4 Z M2,3 C2.55228475,3 3,2.55228475 3,2 C3,1.44771525\r\n 2.55228475,1 2,1 C1.44771525,1 1,1.44771525 1,2 C1,2.55228475 1.44771525,3 2,3 Z M2,10 C0.8954305,10 0,9.1045695\r\n 0,8 C0,6.8954305 0.8954305,6 2,6 C3.1045695,6 4,6.8954305 4,8 C4,9.1045695 3.1045695,10 2,10 Z M2,9 C2.55228475,9\r\n 3,8.55228475 3,8 C3,7.44771525 2.55228475,7 2,7 C1.44771525,7 1,7.44771525 1,8 C1,8.55228475 1.44771525,9 2,9 Z\r\n M2,16 C0.8954305,16 0,15.1045695 0,14 C0,12.8954305 0.8954305,12 2,12 C3.1045695,12 4,12.8954305 4,14 C4,15.1045695\r\n 3.1045695,16 2,16 Z M2,15 C2.55228475,15 3,14.5522847 3,14 C3,13.4477153 2.55228475,13 2,13 C1.44771525,13 1,13.4477153\r\n 1,14 C1,14.5522847 1.44771525,15 2,15 Z M5,7 L16,7 L16,8.5 L5,8.5 L5,7 Z M5,13 L16,13 L16,14.5 L5,14.5 L5,13 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_ORDERED_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M5,1 L16,1 L16,2.5 L5,2.5 L5,1 Z M0,0 L2,0 L2,3 L3,3 L3,4 L0,4 L0,3 L1,3 L1,1 L0,1 L0,0 Z M5,7 L16,7\r\n L16,8.5 L5,8.5 L5,7 Z M5,13 L16,13 L16,14.5 L5,14.5 L5,13 Z M0,15 L1.75,15 C1.88807119,15 2,14.8880712 2,14.75\r\n C2,14.6119288 1.88807119,14.5 1.75,14.5 L0,14.5 L0,13.5 L1.75,13.5 C1.88807119,13.5 2,13.3880712 2,13.25 C2,13.1119288\r\n 1.88807119,13 1.75,13 L0,13 L0,12 L1.5,12 C2.32842712,12 3,12.6715729 3,13.5 C3,13.6753177 2.96992289,13.8436105\r\n 2.91464715,14 C2.96992289,14.1563895 3,14.3246823 3,14.5 C3,15.3284271 2.32842712,16 1.5,16 L0,16 L0,15 Z M2,7.5\r\n C2,7.35127258 1.9375,7.22627258 1.84375,7.13845444 C1.76307119,7.05596441 1.63807119,7 1.5,7 C1.22385763,7 1,7.22385763\r\n 1,7.5 L1.62630326e-19,7.5 C0.147399902,6.5 0.647399902,6 1.5,6 C2.32842712,6 3,6.67157288 3,7.5 C3,8.07312512\r\n 2.50016007,8.55650475 2.22821045,8.74661255 C1.95626083,8.93672035 1.77325955,8.99789088 1.76769962,9 L3,9 L3,10\r\n L0,10 L1.62630326e-19,9 C0.619515577,8.77257137 1.06188822,8.55939591 1.32711792,8.36047363 C1.6371448,8.12795347\r\n 1.87259637,7.91592701 1.96143498,7.69289356 C1.98627694,7.633537 2,7.5683711 2,7.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_CHECK_ICON = `<svg width=\"15px\" height=\"14px\" viewBox=\"0 0 15 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1058.000000, -97.000000)\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <g transform=\"translate(650.000000, 2.000000)\">\r\n <rect x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\r\n <polygon fill=\"#293040\" fill-rule=\"nonzero\" points=\"14 15 14 9.37100497 15 9.37100497 15\r\n 16 1 16 1 2 10.1946467 2 10.1946467 3 2 3 2 15\"></polygon>\r\n <path d=\"M14.4525049,2.48740937 C14.7356009,2.1850362 15.8305911,3.21021745 15.5474951,3.51259063\r\n L8.45990379,11.0828057 L4.46558382,7.02621226 C4.17496481,6.73106236 4.17863783,6.25620283 4.47378774,5.96558382\r\n C4.76893764,5.67496481 5.24379717,5.67863783 5.53441618,5.97378774 L8.43263799,8.91719429 L14.4525049,2.48740937 Z\"\r\n fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CODE_BLOCK_ICON = `<svg t=\"1565073788159\" class=\"icon\" viewBox=\"0 0 1024 1024\" width=\"16\" height=\"16\">\r\n<path d=\"M110.78 469.52l70.44-39.24A60 60 0 0 0 212 377.9L212 212a120 120 0 0 1 120-120l60 0a30\r\n30 0 0 1 0 60L332 152a60 60 0 0 0-59.99999999 60l0 175.38a120 120 0 0\r\n1-63.48000001 105.9L173.42 512l35.1 18.72A120 120 0 0 1 272 636.56L272.00000001 812a60 60 0 0 0 59.99999999 60l60 0a30 30\r\n0 1 1 0 60L332 932a120 120 0 0 1-120-120l0-165.9a60\r\n60 0 0 0-30.78-52.38l-70.44-39.24a45 45 0 0 1 0-84.96z m742.44 1e-8a45 45 0 0 1 0 84.95999998l-70.44 39.24000001a60\r\n60 0 0 0-30.78000001 52.38L751.99999999 812a120 120 0 0 1-119.99999999 120L572 932a30 30\r\n0 1 1 0-60l60 0a60 60 0 0 0 60-60l0-175.38a120 120\r\n0 0 1 63.48-105.9L790.58 512l-35.1-18.72A120 120 0 0 1 692 387.44L692 212a60 60 0 0 0-60-60L572 152a30\r\n30 0 0 1 0-60l60 0a120 120 0 0 1 119.99999999 120l0 165.9a60 60 0 0 0 30.78000001 52.38l70.44 39.24000001z\"></path></svg>`\r\n\r\nexport const BLOCKQUOTE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, 1.000000)\" fill=\"#000000\" fill-rule=\"nonzero\">\r\n <path d=\"M6.86733556,12.5574136 L6.86733556,7.99108138 L2.52931996,7.99108138 C2.41516165,5.02296544\r\n 3.10011148,3.42474916 5.72575251,2.0548495 L5.72575251,0 C1.84437012,1.36989967 -0.0963210702,3.88138239 0.0178372352,7.76276477\r\n L0.0178372352,12.5574136 L6.86733556,12.5574136 Z M16,12.5574136 L16,7.99108138 L11.6619844,7.99108138 C11.5478261,5.02296544\r\n 12.2327759,3.42474916 14.8584169,2.0548495 L14.8584169,0 C10.9770346,1.36989967 9.03634337,3.88138239 9.15050167,7.76276477\r\n L9.15050167,12.5574136 L16,12.5574136 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const IMAGE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1196.000000, -96.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M804,4 L790,4 L790,11.940983 L794.058237,9.91186456 L798.536534,13.3949845 L801.014076,11.908459\r\n L804,13.8990748 L804,4 Z M803.72265,14.9160251 L800.985924,13.091541 L798.463466,14.6050155 L793.941763,11.0881354\r\n L790.223607,12.9472136 C790.151699,12.9831673 790.07527,13.000168 790,13.0001094 L790,18 L804,18 L804,15.0000529\r\n C803.90455,15.0001406 803.80803,14.9729453 803.72265,14.9160251 Z M789,19 L789,3 L805,3 L805,19 L789,19 Z M801,9\r\n C800.447715,9 800,8.55228475 800,8 C800,7.44771525 800.447715,7 801,7 C801.552285,7 802,7.44771525 802,8 C802,8.55228475\r\n 801.552285,9 801,9 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const FILE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" >\r\n<g id=\"icon/01\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M16,16 L1,16 L1,0 L12,0 L16,4 L16,16 Z M11,1 L2,1 L2,15 L15,15 L15,\r\n 5 L11,5 L11,1 Z M12,1.533 L12,4 L14.52,4 L12,1.533 Z\"\r\n id=\"Combined-Shape\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n </path>\r\n <polygon id=\"path\" fill=\"#293040\" points=\"8 8 6 8 8.5 5 11 8 9 8 9 12 8 12\"></polygon>\r\n</g>\r\n</svg>`\r\n\r\nexport const TABLE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1227.000000, -96.000000)\" fill=\"#293040\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M820,3 L836,3 L836,19 L820,19 L820,3 Z M821,4 L821,8 L835,8 L835,4 L821,4 Z M821,9 L821,13 L825,\r\n 13 L825,9 L821,9 Z M821,14 L821,18 L825,18 L825,14 L821,14 Z M826,9 L826,13 L830,13 L830,9 L826,9 Z M826,\r\n 14 L826,18 L830,18 L830,14 L826,14 Z M831,9 L831,13 L835,13 L835,9 L831,9 Z M831,14 L831,18 L835,18 L835,\r\n 14 L831,14 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LINK_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1258.000000, -96.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M855.499,13.863 L861.863,7.499 L862.573,8.209 L856.209,14.573 L855.499,13.863 Z M854.646498,9.99452063\r\n C854.661947,10.0108615 854.677673,10.0270363 854.693676,10.0430391 L855.388521,10.7378841 L852.802248,13.3241571\r\n C851.732584,14.3938208 851.732584,16.1280884 852.802248,17.1977522 C853.871912,18.2674159 855.606179,18.2674159\r\n 856.675843,17.1977522 L859.262116,14.6114792 L859.956961,15.3063242 C859.972964,15.3223269 859.989138,15.3380528\r\n 860.005479,15.3535018 L857.468863,17.8901187 C855.989021,19.3699604 853.589723,19.3699604 852.109881,17.8901187\r\n C850.63004,16.4102769 850.63004,14.0109793 852.109881,12.5311375 L854.646498,9.99452063 Z M857.994521,6.64649819\r\n L860.531137,4.10988134 C862.010979,2.63003955 864.410277,2.63003955 865.890119,4.10988134 C867.36996,5.58972313\r\n 867.36996,7.98902073 865.890119,9.46886252 L863.353502,12.0054794 C863.338053,11.9891385 863.322327,11.9729637\r\n 863.306324,11.9569609 L862.611479,11.2621159 L865.197752,8.67584293 C866.267416,7.60617918 866.267416,5.87191157\r\n 865.197752,4.80224782 C864.128088,3.73258406 862.393821,3.73258406 861.324157,4.80224782 L858.737884,7.38852082\r\n L858.043039,6.69367584 C858.027036,6.67767307 858.010862,6.66194719 857.994521,6.64649819 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const EMOJI_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M8,16 C3.581722,16 0,12.418278 0,8 C0,3.581722 3.581722,0 8,0 C12.418278,0 16,3.581722 16,8 C16,12.418278\r\n 12.418278,16 8,16 Z M8,15 C11.8659932,15 15,11.8659932 15,8 C15,4.13400675 11.8659932,1 8,1 C4.13400675,1 1,4.13400675\r\n 1,8 C1,11.8659932 4.13400675,15 8,15 Z M5,7 C4.44771525,7 4,6.55228475 4,6 C4,5.44771525 4.44771525,5 5,5 C5.55228475,5\r\n 6,5.44771525 6,6 C6,6.55228475 5.55228475,7 5,7 Z M11,7 C10.4477153,7 10,6.55228475 10,6 C10,5.44771525 10.4477153,5 11,5\r\n C11.5522847,5 12,5.44771525 12,6 C12,6.55228475 11.5522847,7 11,7 Z M4,10 L12,10 C11.5415129,11.7252272 9.9244686,13 8,13\r\n C6.0755314,13 4.45848714,11.7252272 4,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const EMOJI_PLUS_ICON = `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">\r\n <rect width=\"24\" height=\"24\" fill=\"none\" />\r\n <g fill=\"none\">\r\n <path d=\"m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z\" />\r\n <path fill=\"currentColor\" d=\"M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2m0 2a8 8 0 1 0 0 16a8 8 0 0 0 0-16m2.8 9.857a1 1 0 1 1 1.4 1.428A5.98 5.98 0 0 1 12 17a5.98 5.98 0 0 1-4.2-1.715a1 1 0 0 1 1.4-1.428A3.98 3.98 0 0 0 12 15c1.09 0 2.077-.435 2.8-1.143M8.5 8a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3m7 0a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3\" />\r\n </g>\r\n</svg>`\r\n\r\nexport const SCREENSHOT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1529.000000, -96.000000)\">\r\n <g transform=\"translate(1529.000000, 96.000000)\">\r\n <rect fill=\"#000000\" fill-rule=\"nonzero\" opacity=\"0\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\r\n <polyline stroke=\"currentColor\" points=\"16 14 2 14 2 0 2 0\"></polyline>\r\n <polyline stroke=\"currentColor\" points=\"4 2 14 2 14 12\"></polyline>\r\n <rect fill=\"currentColor\" x=\"0\" y=\"1.5\" width=\"2\" height=\"1\"></rect>\r\n <rect fill=\"currentColor\"\r\n transform=\"translate(14.000000, 15.000000)\r\n rotate(-90.000000)\r\n translate(-14.000000, -15.000000) \" x=\"13\" y=\"14.5\" width=\"2\" height=\"1\">\r\n </rect>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CODE_ICON = `<svg t=\"1721956397010\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"4254\" width=\"20\" height=\"20\"><path d=\"M438.4 849.1l222.7-646.7c0.2-0.5 0.3-1.1 0.4-1.6L438.4 849.1z\" opacity=\".224\" p-id=\"4255\"></path><path d=\"M661.2 168.7h-67.5c-3.4 0-6.5 2.2-7.6 5.4L354.7 846c-0.3 0.8-0.4 1.7-0.4 2.6 0 4.4 3.6 8 8 8h67.8c3.4 0 6.5-2.2 7.6-5.4l0.7-2.1 223.1-648.3 7.4-21.4c0.3-0.8 0.4-1.7 0.4-2.6-0.1-4.5-3.6-8.1-8.1-8.1zM954.6 502.1c-0.8-1-1.7-1.9-2.7-2.7l-219-171.3c-3.5-2.7-8.5-2.1-11.2 1.4-1.1 1.4-1.7 3.1-1.7 4.9v81.3c0 2.5 1.1 4.8 3.1 6.3l115 90-115 90c-1.9 1.5-3.1 3.8-3.1 6.3v81.3c0 4.4 3.6 8 8 8 1.8 0 3.5-0.6 4.9-1.7l219-171.3c6.9-5.4 8.2-15.5 2.7-22.5zM291.1 328.1l-219 171.3c-1 0.8-1.9 1.7-2.7 2.7-5.4 7-4.2 17 2.7 22.5l219 171.3c1.4 1.1 3.1 1.7 4.9 1.7 4.4 0 8-3.6 8-8v-81.3c0-2.5-1.1-4.8-3.1-6.3l-115-90 115-90c1.9-1.5 3.1-3.8 3.1-6.3v-81.3c0-1.8-0.6-3.5-1.7-4.9-2.7-3.5-7.7-4.1-11.2-1.4z\" p-id=\"4256\"></path></svg>`\r\n\r\nexport const MENTION_ICON = `<i class=\"icon-set-keyword\"></i>`\r\n\r\nexport const QUICK_MENU_ICON = `<i class=\"icon-publish\"></i>`\r\n\r\nexport const SAVE_ICON = `<i class=\"icon-save\"></i>`\r\n\r\nexport const HELP_ICON = `<svg t=\"1721963829631\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"9764\" width=\"20\" height=\"20\"><path d=\"M512 74.666667C270.933333 74.666667 74.666667 270.933333 74.666667 512S270.933333 949.333333 512 949.333333 949.333333 753.066667 949.333333 512 753.066667 74.666667 512 74.666667z m0 810.666666c-204.8 0-373.333333-168.533333-373.333333-373.333333S307.2 138.666667 512 138.666667 885.333333 307.2 885.333333 512 716.8 885.333333 512 885.333333z\" fill=\"#000000\" p-id=\"9765\"></path><path d=\"M512 746.666667m-42.666667 0a42.666667 42.666667 0 1 0 85.333334 0 42.666667 42.666667 0 1 0-85.333334 0Z\" fill=\"#000000\" p-id=\"9766\"></path><path d=\"M512 245.333333c-76.8 0-138.666667 61.866667-138.666667 138.666667 0 17.066667 14.933333 32 32 32s32-14.933333 32-32c0-40.533333 34.133333-74.666667 74.666667-74.666667s74.666667 34.133333 74.666667 74.666667c0 27.733333-53.333333 76.8-91.733334 100.266667-8.533333 6.4-14.933333 17.066667-14.933333 27.733333v106.666667c0 17.066667 14.933333 32 32 32s32-14.933333 32-32v-89.6c34.133333-25.6 106.666667-83.2 106.666667-145.066667 0-76.8-61.866667-138.666667-138.666667-138.666667z\" fill=\"#000000\" p-id=\"9767\"></path></svg>`\r\n\r\nexport const SCROLL_TABLE_ICON = `<i class=\"icon-switch\"></i>`\r\n\r\nexport const GLOBAL_LINK_ICON = `<svg t=\"1721963743677\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"8628\" width=\"20\" height=\"20\"><path d=\"M713.130667 283.221333V228.352a9.159111 9.159111 0 0 0-9.130667-9.130667H265.102222a9.159111 9.159111 0 0 0-9.102222 9.130667v54.869333c0 5.034667 4.096 9.130667 9.130667 9.130667H704a9.159111 9.159111 0 0 0 9.130667-9.130667z m-448 100.579556a9.130667 9.130667 0 0 0-9.130667 9.130667v54.869333c0 5.006222 4.096 9.130667 9.130667 9.130667h210.289777a9.159111 9.159111 0 0 0 9.159112-9.130667v-54.869333a9.159111 9.159111 0 0 0-9.159112-9.130667H265.130667z m164.579555 516.551111H164.579556V95.800889h640v279.352889c0 5.034667 4.096 9.159111 9.130666 9.159111h64a9.159111 9.159111 0 0 0 9.130667-9.159111V50.090667c0-20.252444-16.327111-36.579556-36.551111-36.579556H118.840889c-20.195556 0-36.551111 16.327111-36.551111 36.579556v896c0 20.195556 16.327111 36.551111 36.551111 36.551111h310.869333a9.159111 9.159111 0 0 0 9.130667-9.130667v-64a9.159111 9.159111 0 0 0-9.130667-9.159111z\" fill=\"#000000\" fill-opacity=\".85\" p-id=\"8629\"></path><path d=\"M837.859556 656.298667l-107.861334 186.794666-68.977778-39.822222 107.861334-186.794667 68.977778 39.822223z\" fill=\"#000000\" p-id=\"8630\"></path><path d=\"M691.114667 514.844444a159.146667 159.146667 0 0 1 217.315555-58.225777 159.061333 159.061333 0 0 1 58.197334 217.315555l-55.637334 96.369778-68.977778-39.822222 55.637334-96.369778a79.416889 79.416889 0 1 0-137.557334-79.416889l-55.637333 96.369778-68.977778-39.822222 55.637334-96.369778V514.844444z m-28.558223 208.782223l-56.462222 97.792a79.416889 79.416889 0 0 0 137.557334 79.388444l56.462222-97.763555 68.977778 39.822222-56.462223 97.763555a159.061333 159.061333 0 1 1-275.484444-159.061333l56.433778-97.763556 68.977777 39.822223z\" fill=\"#000000\" p-id=\"8631\"></path></svg>`\r\n\r\nexport const FULLSCREEN_ICON = `<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" width=\"100%\" height=\"100%\" viewBox=\"0 0 1024 1024\" version=\"1.1\">\r\n <path fill=\"#333333\" d=\"M64 384h96V160h224.2V64H64zM639.8 64v96H864v224h96V64zM864 864H639.8v96H960V639.61h-96zM160 639.61H64V960h320.2v-96H160z\"/>\r\n</svg>`\r\n\r\nexport const FULLSCREEN_EXIT_ICON = `\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\">\r\n <path fill=\"currentColor\" d=\"M6 21v-3H3v-2h5v5zm10 0v-5h5v2h-3v3zM3 8V6h3V3h2v5zm13 0V3h2v3h3v2z\"/>\r\n </svg>\r\n`\r\n\r\nexport const TRIANGLE_DOWN_ICON = `<i class=\"icon-triangle-down\"></i>`\r\n\r\nexport const FORMAT_PAINTER_ICON = `<svg viewBox=\"0 0 32 32\"><path fill=\"currentColor\" d=\"M28.83 23.17L23 17.33V13a1 1 0 0 0-.29-.71l-10-10a1 1 0 0 0-1.42 0l-9 9a1 1 0 0 0 0 1.42l10 10A1 1 0 0 0 13 23h4.34l5.83 5.84a4 4 0 0 0 5.66-5.66ZM6 10.41l2.29 2.3l1.42-1.42L7.41 9L9 7.41l4.29 4.3l1.42-1.42L10.41 6L12 4.41L18.59 11L11 18.59L4.41 12Zm21.41 17a2 2 0 0 1-2.82 0l-6.13-6.12a1.8 1.8 0 0 0-.71-.29h-4.34l-1-1L20 12.41l1 1v4.34a1 1 0 0 0 .29.7l6.12 6.14a2 2 0 0 1 0 2.82\"/></svg>`\r\n\r\nexport const DIVIDER_ICON = `<svg viewBox=\"0 0 18 18\"><line x1=\"0\" y1=\"9\" x2=\"18\" y2=\"9\" stroke=\"currentColor\" stroke-width=\"2\"/></svg>`\r\n"],"names":[],"mappings":"AAAO,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYnB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAalB,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASpB,MAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASvB,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAapB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASnB,MAAM,wBAAwB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAY9B,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOxB,MAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ1B,MAAM,qBAAqB;AAE3B,MAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOzB,MAAM,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe5B,MAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB1B,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYxB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAenB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAanB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWnB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBxB,MAAM,YAAY;AAElB,MAAM,eAAe;AAErB,MAAM,kBAAkB;AAExB,MAAM,YAAY;AAElB,MAAM,YAAY;AAElB,MAAM,oBAAoB;AAE1B,MAAM,mBAAmB;AAEzB,MAAM,kBAAkB;AAAA;AAAA;AAIxB,MAAM,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAM7B,MAAM,qBAAqB;AAE3B,MAAM,sBAAsB;AAE5B,MAAM,eAAe;"}
|
|
1
|
+
{"version":3,"file":"icons.config.es.js","sources":["../../../src/ui/icons.config.ts"],"sourcesContent":["export const UNDO_ICON = `<svg width=\"16px\" height=\"14px\" viewBox=\"0 0 16 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, -1.000000)\" fill=\"#293040\">\r\n <path d=\"M11,5 C13.7614237,5 16,7.23857625 16,10 C16,12.7614237 13.7614237,15 11,15 L7,15 L7,14 L11,14\r\n C13.209139,14 15,12.209139 15,10 C15,7.790861 13.209139,6 11,6 L5,6 L5,10 L0,5.5 L5,1 L5,5 L11,5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const REDO_ICON = `<svg width=\"16px\" height=\"14px\" viewBox=\"0 0 16 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, -1.000000)\" fill=\"#293040\">\r\n <path d=\"M5,5 L11,5 L11,1 L16,5.5 L11,10 L11,6 L5,6 C2.790861,6 1,7.790861 1,10 C1,12.209139 2.790861,14 5,14 L9,14\r\n L9,15 L5,15 C2.23857625,15 0,12.7614237 0,10 C0,7.23857625 2.23857625,5 5,5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CLEAN_ICON = `<svg width=\"16px\" height=\"15px\" viewBox=\"0 0 16 15\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M4.32708124,14 L8.37150583,14 L10.5729409,11.5550586 L4.6297198,6.20375828 L1.25465311,9.95542661\r\n C1.09078634,10.1375782 1.0006437,10.3742369 1.00180556,10.6192474 C1.00295568,10.8617824 1.10621221,11.092615\r\n 1.28624979,11.2551297 L4.32708124,14 Z M16,14 L16,15 L3.93760008,15 L0.597250175,11.9923354 C0.217072683,11.6500221\r\n 1.59049582e-13,11.1091757 1.59428026e-13,10.6149383 C1.59806471e-13,10.1207008 0.183000942,9.64396706 0.513710349,9.27667705\r\n L8.56855175,0.330869394 L16,7.02217546 L9.71713856,14 L16,14 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const BOLD_ICON = `<svg width=\"12px\" height=\"16px\" viewBox=\"0 0 12 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-2.000000, 0.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <path d=\"M11.540636,7.0842147 C13.0068647,7.89340318 14,9.45459285 14,11.2477417 C14,13.8723415 11.8723415,16\r\n 9.2477417,16 L2,16 L2,7.99258423 L2,-5.06261699e-14 L9.00370789,-4.75175455e-14 C11.2107991,-4.79229815e-14 13,1.78920092\r\n 13,3.99629211 C13,5.24014846 12.4317244,6.35127692 11.540636,7.0842147 Z M3.5,1.5 L3.5,6.49258423 L9.00370789,6.49258423\r\n C10.382372,6.49258423 11.5,5.37495618 11.5,3.99629211 C11.5,2.61762805 10.382372,1.5 9.00370789,1.5 L3.5,1.5 Z M3.5,14.5\r\n L9.2477417,14.5 C11.0439144,14.5 12.5,13.0439144 12.5,11.2477417 C12.5,9.45156904 11.0439144,7.9954834 9.2477417,7.9954834\r\n L3.5,7.9954834 L3.5,14.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const ITALIC_ICON = `<svg width=\"9px\" height=\"16px\" viewBox=\"0 0 9 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-4.000000, 0.000000)\" fill=\"#293040\">\r\n <path d=\"M10.2565501,1.5 L8.41332415,14.5 L12,14.5 L12,16 L4,16 L4,14.5 L6.90083611,14.5 L8.74406208,1.5 L5,1.5\r\n L5,0 L13,0 L13,1.5 L10.2565501,1.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const UNDERLINE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon fill=\"#293040\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path d=\"M4.5,3 L4.5,7 C4.5,8.93299662 6.06700338,10.5 8,10.5 C9.93299662,10.5 11.5,8.93299662 11.5,7 L11.5,1.5\r\n L11.4998322,0 L13,0 L13,7 C13,9.76142375 10.7614237,12 8,12 C5.23857625,12 3,9.76142375 3,7 L3,0 L4.49893188,0\r\n L4.49893188,3 L4.5,3 Z\" fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const STRIKE_ICON = `<svg width=\"14px\" height=\"16px\" viewBox=\"0 0 14 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1.000000, 0.000000)\" fill=\"#293040\">\r\n <path d=\"M9.93321102,9 L1,9 L1,7 L3.84197169,7 C3.31015092,6.28495098 3,5.42507332 3,4.5 C3,2.01471863\r\n 5.23857625,0 8,0 C10.5736409,0 12.6931261,1.75002477 12.969484,4 L11.4507289,4 C11.1737591,2.60626201 9.76011738,1.5 8,1.5\r\n C6.03382604,1.5 4.5,2.88044344 4.5,4.5 C4.5,5.52604325 5.11562351,6.45611494 6.06678898,7 L15,7 L15,9 L12.1580283,9\r\n C12.6898491,9.71504902 13,10.5749267 13,11.5 C13,13.9852814 10.7614237,16 8,16 C5.42635908,16 3.30687393,14.2499752\r\n 3.03051599,12 L4.54927112,12 C4.82624092,13.393738 6.23988262,14.5 8,14.5 C9.96617396,14.5 11.5,13.1195566 11.5,11.5\r\n C11.5,10.4739568 10.8843765,9.54388506 9.93321102,9 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const COLOR_ICON = `<svg viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon class=\"ql-color-label\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path d=\"M10.9166667,8.5 L5.08333333,8.5 L4.26618123,10.461165 L3.62338765,12 L2,12 L7,0 L9,0 L14,12 L12.3824972,12\r\n L11.5753038,10.0807292 L10.9166667,8.5 Z M10.2916667,7 L8,1.5 L5.70833333,7 L10.2916667,7 Z\"\r\n fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const BACKGROUND_COLOR_ICON = `<svg viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <polygon class=\"ql-color-label\" points=\"2 14 14 14 14 16 2 16\"></polygon>\r\n <path class=\"ql-color-label\" d=\"M4.64447006,9.66583547 L3.17597929,8.33216965 L6.15933183,5.11039074 L5.42508645,4.44355783\r\n L9.39179153,1.0658141e-13 L16,6.00149616 L12.0332949,10.445054 L11.2990495,9.77822108 L8.31569698,13 L6.84720621,11.6663342\r\n L5.69344476,12.9587937 L2.36400649,12.9587937 L2,12.6282074 L4.64447006,9.66583547 Z M4.57134219,8.25840959\r\n L8.24256911,11.5925741 L10.5648041,9.11138818 L6.89357722,5.77722364 L4.57134219,8.25840959 Z M14.6046371,6.07525623\r\n L9.4649194,1.40742588 L6.82044935,4.36979777 L11.960167,9.03762811 L14.6046371,6.07525623 Z\"\r\n fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_LEFT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M0,0 L1.5,0 L1.5,16 L0,16 L0,0 Z M4,3 L13,3 L13,7 L4,7 L4,3 Z M5,4 L5,6 L12,6 L12,4 L5,4 Z M4,9 L16,9\r\n L16,13 L4,13 L4,9 Z M5,10 L5,12 L15,12 L15,10 L5,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_CENTER_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M8.75,7 L8.75,9 L16,9 L16,13 L8.75,13 L8.75,16 L7.25,16 L7.25,13 L0,13 L0,9 L7.25,9 L7.25,7 L2,7\r\n L2,3 L7.25,3 L7.25,0 L8.75,0 L8.75,3 L14,3 L14,7 L8.75,7 Z M1,10 L1,12 L15,12 L15,10 L1,10 Z M3,4 L3,6 L13,6\r\n L13,4 L3,4 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const ALIGN_JUSTIFY_ICON = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 15 15\"><path fill=\"none\" stroke=\"currentColor\" d=\"M0 3.5h15m-15 8h15m-15-4h15\"/></svg>`\r\n\r\nexport const ALIGN_RIGHT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M14.5,0 L16,0 L16,16 L14.5,16 L14.5,0 Z M3,3 L12,3 L12,7 L3,7 L3,3 Z M4,4 L4,6 L11,6 L11,4 L4,4 Z\r\n M0,9 L12,9 L12,13 L0,13 L0,9 Z M1,10 L1,12 L11,12 L11,10 L1,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_UNORDERED_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M5,1 L16,1 L16,2.5 L5,2.5 L5,1 Z M2,4 C0.8954305,4 0,3.1045695 0,2 C0,0.8954305 0.8954305,0 2,0\r\n C3.1045695,0 4,0.8954305 4,2 C4,3.1045695 3.1045695,4 2,4 Z M2,3 C2.55228475,3 3,2.55228475 3,2 C3,1.44771525\r\n 2.55228475,1 2,1 C1.44771525,1 1,1.44771525 1,2 C1,2.55228475 1.44771525,3 2,3 Z M2,10 C0.8954305,10 0,9.1045695\r\n 0,8 C0,6.8954305 0.8954305,6 2,6 C3.1045695,6 4,6.8954305 4,8 C4,9.1045695 3.1045695,10 2,10 Z M2,9 C2.55228475,9\r\n 3,8.55228475 3,8 C3,7.44771525 2.55228475,7 2,7 C1.44771525,7 1,7.44771525 1,8 C1,8.55228475 1.44771525,9 2,9 Z\r\n M2,16 C0.8954305,16 0,15.1045695 0,14 C0,12.8954305 0.8954305,12 2,12 C3.1045695,12 4,12.8954305 4,14 C4,15.1045695\r\n 3.1045695,16 2,16 Z M2,15 C2.55228475,15 3,14.5522847 3,14 C3,13.4477153 2.55228475,13 2,13 C1.44771525,13 1,13.4477153\r\n 1,14 C1,14.5522847 1.44771525,15 2,15 Z M5,7 L16,7 L16,8.5 L5,8.5 L5,7 Z M5,13 L16,13 L16,14.5 L5,14.5 L5,13 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_ORDERED_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g fill=\"#293040\">\r\n <path d=\"M5,1 L16,1 L16,2.5 L5,2.5 L5,1 Z M0,0 L2,0 L2,3 L3,3 L3,4 L0,4 L0,3 L1,3 L1,1 L0,1 L0,0 Z M5,7 L16,7\r\n L16,8.5 L5,8.5 L5,7 Z M5,13 L16,13 L16,14.5 L5,14.5 L5,13 Z M0,15 L1.75,15 C1.88807119,15 2,14.8880712 2,14.75\r\n C2,14.6119288 1.88807119,14.5 1.75,14.5 L0,14.5 L0,13.5 L1.75,13.5 C1.88807119,13.5 2,13.3880712 2,13.25 C2,13.1119288\r\n 1.88807119,13 1.75,13 L0,13 L0,12 L1.5,12 C2.32842712,12 3,12.6715729 3,13.5 C3,13.6753177 2.96992289,13.8436105\r\n 2.91464715,14 C2.96992289,14.1563895 3,14.3246823 3,14.5 C3,15.3284271 2.32842712,16 1.5,16 L0,16 L0,15 Z M2,7.5\r\n C2,7.35127258 1.9375,7.22627258 1.84375,7.13845444 C1.76307119,7.05596441 1.63807119,7 1.5,7 C1.22385763,7 1,7.22385763\r\n 1,7.5 L1.62630326e-19,7.5 C0.147399902,6.5 0.647399902,6 1.5,6 C2.32842712,6 3,6.67157288 3,7.5 C3,8.07312512\r\n 2.50016007,8.55650475 2.22821045,8.74661255 C1.95626083,8.93672035 1.77325955,8.99789088 1.76769962,9 L3,9 L3,10\r\n L0,10 L1.62630326e-19,9 C0.619515577,8.77257137 1.06188822,8.55939591 1.32711792,8.36047363 C1.6371448,8.12795347\r\n 1.87259637,7.91592701 1.96143498,7.69289356 C1.98627694,7.633537 2,7.5683711 2,7.5 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LIST_CHECK_ICON = `<svg width=\"15px\" height=\"14px\" viewBox=\"0 0 15 14\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1058.000000, -97.000000)\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <g transform=\"translate(650.000000, 2.000000)\">\r\n <rect x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\r\n <polygon fill=\"#293040\" fill-rule=\"nonzero\" points=\"14 15 14 9.37100497 15 9.37100497 15\r\n 16 1 16 1 2 10.1946467 2 10.1946467 3 2 3 2 15\"></polygon>\r\n <path d=\"M14.4525049,2.48740937 C14.7356009,2.1850362 15.8305911,3.21021745 15.5474951,3.51259063\r\n L8.45990379,11.0828057 L4.46558382,7.02621226 C4.17496481,6.73106236 4.17863783,6.25620283 4.47378774,5.96558382\r\n C4.76893764,5.67496481 5.24379717,5.67863783 5.53441618,5.97378774 L8.43263799,8.91719429 L14.4525049,2.48740937 Z\"\r\n fill=\"#293040\" fill-rule=\"nonzero\"></path>\r\n </g>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CODE_BLOCK_ICON = `<svg t=\"1565073788159\" class=\"icon\" viewBox=\"0 0 1024 1024\" width=\"16\" height=\"16\">\r\n<path d=\"M110.78 469.52l70.44-39.24A60 60 0 0 0 212 377.9L212 212a120 120 0 0 1 120-120l60 0a30\r\n30 0 0 1 0 60L332 152a60 60 0 0 0-59.99999999 60l0 175.38a120 120 0 0\r\n1-63.48000001 105.9L173.42 512l35.1 18.72A120 120 0 0 1 272 636.56L272.00000001 812a60 60 0 0 0 59.99999999 60l60 0a30 30\r\n0 1 1 0 60L332 932a120 120 0 0 1-120-120l0-165.9a60\r\n60 0 0 0-30.78-52.38l-70.44-39.24a45 45 0 0 1 0-84.96z m742.44 1e-8a45 45 0 0 1 0 84.95999998l-70.44 39.24000001a60\r\n60 0 0 0-30.78000001 52.38L751.99999999 812a120 120 0 0 1-119.99999999 120L572 932a30 30\r\n0 1 1 0-60l60 0a60 60 0 0 0 60-60l0-175.38a120 120\r\n0 0 1 63.48-105.9L790.58 512l-35.1-18.72A120 120 0 0 1 692 387.44L692 212a60 60 0 0 0-60-60L572 152a30\r\n30 0 0 1 0-60l60 0a120 120 0 0 1 119.99999999 120l0 165.9a60 60 0 0 0 30.78000001 52.38l70.44 39.24000001z\"></path></svg>`\r\n\r\nexport const BLOCKQUOTE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(0.000000, 1.000000)\" fill=\"#000000\" fill-rule=\"nonzero\">\r\n <path d=\"M6.86733556,12.5574136 L6.86733556,7.99108138 L2.52931996,7.99108138 C2.41516165,5.02296544\r\n 3.10011148,3.42474916 5.72575251,2.0548495 L5.72575251,0 C1.84437012,1.36989967 -0.0963210702,3.88138239 0.0178372352,7.76276477\r\n L0.0178372352,12.5574136 L6.86733556,12.5574136 Z M16,12.5574136 L16,7.99108138 L11.6619844,7.99108138 C11.5478261,5.02296544\r\n 12.2327759,3.42474916 14.8584169,2.0548495 L14.8584169,0 C10.9770346,1.36989967 9.03634337,3.88138239 9.15050167,7.76276477\r\n L9.15050167,12.5574136 L16,12.5574136 Z\"></path>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const IMAGE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1196.000000, -96.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M804,4 L790,4 L790,11.940983 L794.058237,9.91186456 L798.536534,13.3949845 L801.014076,11.908459\r\n L804,13.8990748 L804,4 Z M803.72265,14.9160251 L800.985924,13.091541 L798.463466,14.6050155 L793.941763,11.0881354\r\n L790.223607,12.9472136 C790.151699,12.9831673 790.07527,13.000168 790,13.0001094 L790,18 L804,18 L804,15.0000529\r\n C803.90455,15.0001406 803.80803,14.9729453 803.72265,14.9160251 Z M789,19 L789,3 L805,3 L805,19 L789,19 Z M801,9\r\n C800.447715,9 800,8.55228475 800,8 C800,7.44771525 800.447715,7 801,7 C801.552285,7 802,7.44771525 802,8 C802,8.55228475\r\n 801.552285,9 801,9 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const FILE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" >\r\n<g id=\"icon/01\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M16,16 L1,16 L1,0 L12,0 L16,4 L16,16 Z M11,1 L2,1 L2,15 L15,15 L15,\r\n 5 L11,5 L11,1 Z M12,1.533 L12,4 L14.52,4 L12,1.533 Z\"\r\n id=\"Combined-Shape\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n </path>\r\n <polygon id=\"path\" fill=\"#293040\" points=\"8 8 6 8 8.5 5 11 8 9 8 9 12 8 12\"></polygon>\r\n</g>\r\n</svg>`\r\n\r\nexport const TABLE_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1227.000000, -96.000000)\" fill=\"#293040\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M820,3 L836,3 L836,19 L820,19 L820,3 Z M821,4 L821,8 L835,8 L835,4 L821,4 Z M821,9 L821,13 L825,\r\n 13 L825,9 L821,9 Z M821,14 L821,18 L825,18 L825,14 L821,14 Z M826,9 L826,13 L830,13 L830,9 L826,9 Z M826,\r\n 14 L826,18 L830,18 L830,14 L826,14 Z M831,9 L831,13 L835,13 L835,9 L831,9 Z M831,14 L831,18 L835,18 L835,\r\n 14 L831,14 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const LINK_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1258.000000, -96.000000)\" fill=\"#293040\" fill-rule=\"nonzero\">\r\n <g transform=\"translate(407.000000, 93.000000)\">\r\n <path d=\"M855.499,13.863 L861.863,7.499 L862.573,8.209 L856.209,14.573 L855.499,13.863 Z M854.646498,9.99452063\r\n C854.661947,10.0108615 854.677673,10.0270363 854.693676,10.0430391 L855.388521,10.7378841 L852.802248,13.3241571\r\n C851.732584,14.3938208 851.732584,16.1280884 852.802248,17.1977522 C853.871912,18.2674159 855.606179,18.2674159\r\n 856.675843,17.1977522 L859.262116,14.6114792 L859.956961,15.3063242 C859.972964,15.3223269 859.989138,15.3380528\r\n 860.005479,15.3535018 L857.468863,17.8901187 C855.989021,19.3699604 853.589723,19.3699604 852.109881,17.8901187\r\n C850.63004,16.4102769 850.63004,14.0109793 852.109881,12.5311375 L854.646498,9.99452063 Z M857.994521,6.64649819\r\n L860.531137,4.10988134 C862.010979,2.63003955 864.410277,2.63003955 865.890119,4.10988134 C867.36996,5.58972313\r\n 867.36996,7.98902073 865.890119,9.46886252 L863.353502,12.0054794 C863.338053,11.9891385 863.322327,11.9729637\r\n 863.306324,11.9569609 L862.611479,11.2621159 L865.197752,8.67584293 C866.267416,7.60617918 866.267416,5.87191157\r\n 865.197752,4.80224782 C864.128088,3.73258406 862.393821,3.73258406 861.324157,4.80224782 L858.737884,7.38852082\r\n L858.043039,6.69367584 C858.027036,6.67767307 858.010862,6.66194719 857.994521,6.64649819 Z\"></path>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const EMOJI_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path d=\"M8,16 C3.581722,16 0,12.418278 0,8 C0,3.581722 3.581722,0 8,0 C12.418278,0 16,3.581722 16,8 C16,12.418278\r\n 12.418278,16 8,16 Z M8,15 C11.8659932,15 15,11.8659932 15,8 C15,4.13400675 11.8659932,1 8,1 C4.13400675,1 1,4.13400675\r\n 1,8 C1,11.8659932 4.13400675,15 8,15 Z M5,7 C4.44771525,7 4,6.55228475 4,6 C4,5.44771525 4.44771525,5 5,5 C5.55228475,5\r\n 6,5.44771525 6,6 C6,6.55228475 5.55228475,7 5,7 Z M11,7 C10.4477153,7 10,6.55228475 10,6 C10,5.44771525 10.4477153,5 11,5\r\n C11.5522847,5 12,5.44771525 12,6 C12,6.55228475 11.5522847,7 11,7 Z M4,10 L12,10 C11.5415129,11.7252272 9.9244686,13 8,13\r\n C6.0755314,13 4.45848714,11.7252272 4,10 Z\" fill=\"#293040\"></path>\r\n</g>\r\n</svg>`\r\n\r\nexport const EMOJI_PLUS_ICON = `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">\r\n <rect width=\"24\" height=\"24\" fill=\"none\" />\r\n <g fill=\"none\">\r\n <path d=\"m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z\" />\r\n <path fill=\"currentColor\" d=\"M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2m0 2a8 8 0 1 0 0 16a8 8 0 0 0 0-16m2.8 9.857a1 1 0 1 1 1.4 1.428A5.98 5.98 0 0 1 12 17a5.98 5.98 0 0 1-4.2-1.715a1 1 0 0 1 1.4-1.428A3.98 3.98 0 0 0 12 15c1.09 0 2.077-.435 2.8-1.143M8.5 8a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3m7 0a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3\" />\r\n </g>\r\n</svg>`\r\n\r\nexport const SCREENSHOT_ICON = `<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\">\r\n<g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(-1529.000000, -96.000000)\">\r\n <g transform=\"translate(1529.000000, 96.000000)\">\r\n <rect fill=\"#000000\" fill-rule=\"nonzero\" opacity=\"0\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\r\n <polyline stroke=\"currentColor\" points=\"16 14 2 14 2 0 2 0\"></polyline>\r\n <polyline stroke=\"currentColor\" points=\"4 2 14 2 14 12\"></polyline>\r\n <rect fill=\"currentColor\" x=\"0\" y=\"1.5\" width=\"2\" height=\"1\"></rect>\r\n <rect fill=\"currentColor\"\r\n transform=\"translate(14.000000, 15.000000)\r\n rotate(-90.000000)\r\n translate(-14.000000, -15.000000) \" x=\"13\" y=\"14.5\" width=\"2\" height=\"1\">\r\n </rect>\r\n </g>\r\n </g>\r\n</g>\r\n</svg>`\r\n\r\nexport const CODE_ICON = `<svg t=\"1721956397010\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"4254\" width=\"20\" height=\"20\"><path d=\"M438.4 849.1l222.7-646.7c0.2-0.5 0.3-1.1 0.4-1.6L438.4 849.1z\" opacity=\".224\" p-id=\"4255\"></path><path d=\"M661.2 168.7h-67.5c-3.4 0-6.5 2.2-7.6 5.4L354.7 846c-0.3 0.8-0.4 1.7-0.4 2.6 0 4.4 3.6 8 8 8h67.8c3.4 0 6.5-2.2 7.6-5.4l0.7-2.1 223.1-648.3 7.4-21.4c0.3-0.8 0.4-1.7 0.4-2.6-0.1-4.5-3.6-8.1-8.1-8.1zM954.6 502.1c-0.8-1-1.7-1.9-2.7-2.7l-219-171.3c-3.5-2.7-8.5-2.1-11.2 1.4-1.1 1.4-1.7 3.1-1.7 4.9v81.3c0 2.5 1.1 4.8 3.1 6.3l115 90-115 90c-1.9 1.5-3.1 3.8-3.1 6.3v81.3c0 4.4 3.6 8 8 8 1.8 0 3.5-0.6 4.9-1.7l219-171.3c6.9-5.4 8.2-15.5 2.7-22.5zM291.1 328.1l-219 171.3c-1 0.8-1.9 1.7-2.7 2.7-5.4 7-4.2 17 2.7 22.5l219 171.3c1.4 1.1 3.1 1.7 4.9 1.7 4.4 0 8-3.6 8-8v-81.3c0-2.5-1.1-4.8-3.1-6.3l-115-90 115-90c1.9-1.5 3.1-3.8 3.1-6.3v-81.3c0-1.8-0.6-3.5-1.7-4.9-2.7-3.5-7.7-4.1-11.2-1.4z\" p-id=\"4256\"></path></svg>`\r\n\r\nexport const MENTION_ICON = `<i class=\"icon-set-keyword\"></i>`\r\n\r\nexport const QUICK_MENU_ICON = `<i class=\"icon-publish\"></i>`\r\n\r\nexport const SAVE_ICON = `<i class=\"icon-save\"></i>`\r\n\r\nexport const HELP_ICON = `<svg t=\"1721963829631\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"9764\" width=\"20\" height=\"20\"><path d=\"M512 74.666667C270.933333 74.666667 74.666667 270.933333 74.666667 512S270.933333 949.333333 512 949.333333 949.333333 753.066667 949.333333 512 753.066667 74.666667 512 74.666667z m0 810.666666c-204.8 0-373.333333-168.533333-373.333333-373.333333S307.2 138.666667 512 138.666667 885.333333 307.2 885.333333 512 716.8 885.333333 512 885.333333z\" fill=\"#000000\" p-id=\"9765\"></path><path d=\"M512 746.666667m-42.666667 0a42.666667 42.666667 0 1 0 85.333334 0 42.666667 42.666667 0 1 0-85.333334 0Z\" fill=\"#000000\" p-id=\"9766\"></path><path d=\"M512 245.333333c-76.8 0-138.666667 61.866667-138.666667 138.666667 0 17.066667 14.933333 32 32 32s32-14.933333 32-32c0-40.533333 34.133333-74.666667 74.666667-74.666667s74.666667 34.133333 74.666667 74.666667c0 27.733333-53.333333 76.8-91.733334 100.266667-8.533333 6.4-14.933333 17.066667-14.933333 27.733333v106.666667c0 17.066667 14.933333 32 32 32s32-14.933333 32-32v-89.6c34.133333-25.6 106.666667-83.2 106.666667-145.066667 0-76.8-61.866667-138.666667-138.666667-138.666667z\" fill=\"#000000\" p-id=\"9767\"></path></svg>`\r\n\r\nexport const SCROLL_TABLE_ICON = `<i class=\"icon-switch\"></i>`\r\n\r\nexport const GLOBAL_LINK_ICON = `<svg t=\"1721963743677\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"8628\" width=\"20\" height=\"20\"><path d=\"M713.130667 283.221333V228.352a9.159111 9.159111 0 0 0-9.130667-9.130667H265.102222a9.159111 9.159111 0 0 0-9.102222 9.130667v54.869333c0 5.034667 4.096 9.130667 9.130667 9.130667H704a9.159111 9.159111 0 0 0 9.130667-9.130667z m-448 100.579556a9.130667 9.130667 0 0 0-9.130667 9.130667v54.869333c0 5.006222 4.096 9.130667 9.130667 9.130667h210.289777a9.159111 9.159111 0 0 0 9.159112-9.130667v-54.869333a9.159111 9.159111 0 0 0-9.159112-9.130667H265.130667z m164.579555 516.551111H164.579556V95.800889h640v279.352889c0 5.034667 4.096 9.159111 9.130666 9.159111h64a9.159111 9.159111 0 0 0 9.130667-9.159111V50.090667c0-20.252444-16.327111-36.579556-36.551111-36.579556H118.840889c-20.195556 0-36.551111 16.327111-36.551111 36.579556v896c0 20.195556 16.327111 36.551111 36.551111 36.551111h310.869333a9.159111 9.159111 0 0 0 9.130667-9.130667v-64a9.159111 9.159111 0 0 0-9.130667-9.159111z\" fill=\"#000000\" fill-opacity=\".85\" p-id=\"8629\"></path><path d=\"M837.859556 656.298667l-107.861334 186.794666-68.977778-39.822222 107.861334-186.794667 68.977778 39.822223z\" fill=\"#000000\" p-id=\"8630\"></path><path d=\"M691.114667 514.844444a159.146667 159.146667 0 0 1 217.315555-58.225777 159.061333 159.061333 0 0 1 58.197334 217.315555l-55.637334 96.369778-68.977778-39.822222 55.637334-96.369778a79.416889 79.416889 0 1 0-137.557334-79.416889l-55.637333 96.369778-68.977778-39.822222 55.637334-96.369778V514.844444z m-28.558223 208.782223l-56.462222 97.792a79.416889 79.416889 0 0 0 137.557334 79.388444l56.462222-97.763555 68.977778 39.822222-56.462223 97.763555a159.061333 159.061333 0 1 1-275.484444-159.061333l56.433778-97.763556 68.977777 39.822223z\" fill=\"#000000\" p-id=\"8631\"></path></svg>`\r\n\r\nexport const FULLSCREEN_ICON = `<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" width=\"100%\" height=\"100%\" viewBox=\"0 0 1024 1024\" version=\"1.1\">\r\n <path fill=\"#333333\" d=\"M64 384h96V160h224.2V64H64zM639.8 64v96H864v224h96V64zM864 864H639.8v96H960V639.61h-96zM160 639.61H64V960h320.2v-96H160z\"/>\r\n</svg>`\r\n\r\nexport const FULLSCREEN_EXIT_ICON = `\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\">\r\n <path fill=\"currentColor\" d=\"M6 21v-3H3v-2h5v5zm10 0v-5h5v2h-3v3zM3 8V6h3V3h2v5zm13 0V3h2v3h3v2z\"/>\r\n </svg>\r\n`\r\n\r\nexport const TRIANGLE_DOWN_ICON = `<i class=\"icon-triangle-down\"></i>`\r\n\r\nexport const FORMAT_PAINTER_ICON = `<svg viewBox=\"0 0 32 32\"><path fill=\"currentColor\" d=\"M28.83 23.17L23 17.33V13a1 1 0 0 0-.29-.71l-10-10a1 1 0 0 0-1.42 0l-9 9a1 1 0 0 0 0 1.42l10 10A1 1 0 0 0 13 23h4.34l5.83 5.84a4 4 0 0 0 5.66-5.66ZM6 10.41l2.29 2.3l1.42-1.42L7.41 9L9 7.41l4.29 4.3l1.42-1.42L10.41 6L12 4.41L18.59 11L11 18.59L4.41 12Zm21.41 17a2 2 0 0 1-2.82 0l-6.13-6.12a1.8 1.8 0 0 0-.71-.29h-4.34l-1-1L20 12.41l1 1v4.34a1 1 0 0 0 .29.7l6.12 6.14a2 2 0 0 1 0 2.82\"/></svg>`\r\n\r\nexport const DIVIDER_ICON = `<svg viewBox=\"0 0 18 18\"><line x1=\"0\" y1=\"9\" x2=\"18\" y2=\"9\" stroke=\"currentColor\" stroke-width=\"2\"/></svg>`\r\n\r\nexport const AI_ICON = `<svg viewBox=\"0 0 24 24.0023\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24.0022736\" fill=\"none\" customFrame=\"#000000\">\r\n\t<defs>\r\n\t\t<linearGradient id=\"paint_linear_1\" x1=\"2.50000095\" x2=\"12.0000048\" y1=\"0\" y2=\"23.9999962\" gradientUnits=\"userSpaceOnUse\">\r\n\t\t\t<stop stop-color=\"rgb(250,100,1)\" offset=\"0.263296664\" stop-opacity=\"1\" />\r\n\t\t\t<stop stop-color=\"rgb(249.9,102.687,1)\" offset=\"0.349490285\" stop-opacity=\"1\" />\r\n\t\t\t<stop stop-color=\"rgb(247,181,1)\" offset=\"0.494946986\" stop-opacity=\"1\" />\r\n\t\t\t<stop stop-color=\"rgb(11,184,178)\" offset=\"0.690560162\" stop-opacity=\"1\" />\r\n\t\t\t<stop stop-color=\"rgb(1,145,255)\" offset=\"0.858591199\" stop-opacity=\"1\" />\r\n\t\t\t<stop stop-color=\"rgb(182,32,224)\" offset=\"1\" stop-opacity=\"1\" />\r\n\t\t</linearGradient>\r\n\t</defs>\r\n\t<path id=\"矢量 54\" d=\"M12.9196 5.92509L6.52253 12.3221C6.30963 12.5349 6.14215 12.7787 6.01959 13.0536C5.89703 13.3284 5.8277 13.6161 5.81207 13.9166L5.71637 15.7208C5.63971 17.1667 6.83308 18.3601 8.27938 18.2835L10.0831 18.188C10.3839 18.1721 10.6715 18.1029 10.9464 17.9804C11.2213 17.8579 11.465 17.6903 11.6779 17.4775L18.9079 10.2475C19.3942 10.9692 19.7898 11.7495 20.0944 12.5884C20.2961 13.1437 20.448 13.7009 20.5495 14.2597C20.6428 14.7731 20.6897 15.2605 20.6897 15.7225C20.6897 16.4805 20.4992 17.1292 20.1179 17.6686C19.7619 18.1717 19.2678 18.5486 18.6359 18.7997C17.9894 19.0561 17.2853 19.1496 16.5231 19.0801C15.7233 19.0073 14.9669 18.763 14.2545 18.3471C14.1144 18.2653 13.9557 18.2223 13.7941 18.2223C13.2819 18.2223 12.8663 18.6465 12.8663 19.1698C12.8663 19.2533 12.8771 19.3354 12.8981 19.416C12.9196 19.4967 12.9508 19.5731 12.9918 19.6453C13.0328 19.7176 13.0822 19.7831 13.1403 19.842C13.1793 19.8813 13.2208 19.9168 13.2653 19.9483L13.3336 19.9924C13.8068 20.2686 14.3029 20.4897 14.8229 20.6555C15.3239 20.8158 15.8356 20.9198 16.3586 20.9676C16.8722 21.0144 17.3776 21.0043 17.8747 20.9373C18.3771 20.8694 18.8552 20.7456 19.3078 20.5658C19.7761 20.3802 20.2024 20.1407 20.5871 19.8474C20.9904 19.5403 21.3352 19.1839 21.6223 18.7779C21.9216 18.3542 22.1496 17.8888 22.3054 17.3818C22.4656 16.8605 22.5456 16.3074 22.5456 15.7225C22.5456 15.1442 22.4885 14.5412 22.3743 13.9136C22.2532 13.2479 22.073 12.5866 21.8347 11.9295C21.5764 11.218 21.2575 10.5358 20.8786 9.88306C20.6838 9.54703 20.4743 9.22121 20.2502 8.90559L23.2864 5.86926C24.238 4.91748 24.238 3.37431 23.2864 2.42253L21.5779 0.713837C20.6257 -0.237946 19.0827 -0.237946 18.1306 0.713837L14.4083 4.43634C12.5861 3.74113 10.5411 3.39346 8.27499 3.39346C7.76229 3.39346 7.34724 3.81766 7.34724 4.34097C7.34724 4.86429 7.76229 5.28848 8.27499 5.28848C9.97178 5.28865 11.5196 5.50081 12.9196 5.92509ZM7.91903 14.0282C7.92244 13.9442 7.95418 13.8728 8.01473 13.8142L17.3937 4.43512L19.6228 6.54848L19.5256 6.64574L10.1856 15.9854C10.1271 16.0456 10.0558 16.0774 9.97178 16.0808L8.16756 16.1763C8.07039 16.1815 7.98739 16.1496 7.91903 16.0809C7.85018 16.0122 7.81844 15.9294 7.82381 15.8324L7.91903 14.0282ZM21.7942 4.37717L20.8239 5.34731L18.653 3.1759L19.6228 2.20593C19.6867 2.14209 19.7639 2.11012 19.8542 2.11012C19.8991 2.10941 19.9406 2.1169 19.9792 2.1326L20.0857 2.20593L21.7942 3.91463C21.8581 3.97856 21.8899 4.05559 21.8899 4.14589C21.8913 4.2368 21.8596 4.31389 21.7942 4.37717ZM0.381352 6.34212C-0.126954 6.2448 -0.126954 5.50148 0.381352 5.40408L0.451665 5.39062C0.521978 5.37715 0.591315 5.36131 0.660651 5.34309C0.744636 5.32089 0.827645 5.29515 0.910165 5.26588C1.06007 5.21257 1.20509 5.14813 1.34523 5.07259C1.48537 4.99702 1.61916 4.91119 1.74709 4.81508C1.87453 4.71898 1.99465 4.61366 2.10647 4.49916C2.21877 4.38464 2.3218 4.26222 2.41604 4.1319C2.4468 4.08905 2.47659 4.0455 2.50588 4.00127L2.54495 3.93964L2.57473 3.89056C2.60745 3.83527 2.6387 3.77893 2.668 3.72156C2.74222 3.57832 2.8052 3.43025 2.85745 3.27734C2.9097 3.12442 2.95023 2.96838 2.97952 2.80922L2.98733 2.76753C3.07913 2.26801 3.78226 2.27577 3.86381 2.7771C3.88969 2.93764 3.92729 3.09518 3.97709 3.24979C4.0269 3.40439 4.08793 3.5542 4.1602 3.69925C4.23198 3.84428 4.31499 3.98286 4.40776 4.11496C4.50102 4.24706 4.60307 4.37114 4.71489 4.4872C4.82671 4.60326 4.94634 4.70993 5.07378 4.80724C5.20171 4.90453 5.33599 4.99132 5.47662 5.06758C5.61724 5.14384 5.76324 5.20869 5.91363 5.26215C6.06403 5.31558 6.21784 5.35699 6.37458 5.38635L6.47516 5.4053C6.98396 5.50072 6.98396 6.24556 6.47516 6.34097L6.37458 6.35992C6.21784 6.3893 6.06403 6.43069 5.91363 6.48413C5.76324 6.53758 5.61724 6.60243 5.47662 6.6787C5.33599 6.75494 5.20171 6.84174 5.07378 6.93903C4.94634 7.03632 4.82671 7.14301 4.71489 7.25905C4.60307 7.37511 4.50102 7.49918 4.40776 7.63127C4.37749 7.67439 4.34819 7.71822 4.32036 7.76273C4.26225 7.85454 4.20903 7.94928 4.1602 8.04697C4.08793 8.19202 4.0269 8.34183 3.97709 8.49641C3.92729 8.651 3.88969 8.80856 3.86381 8.96909C3.78226 9.4706 3.07913 9.47827 2.98733 8.97874L2.97952 8.93706C2.95023 8.77789 2.9097 8.62186 2.85745 8.46895C2.8052 8.31604 2.74222 8.16797 2.668 8.02473C2.62893 7.94897 2.58694 7.87502 2.54251 7.80286C2.50247 7.7386 2.46047 7.67578 2.41604 7.6144C2.3218 7.48405 2.21877 7.36163 2.10647 7.24713C1.99465 7.13263 1.87453 7.02731 1.74709 6.9312C1.61916 6.8351 1.48537 6.74925 1.34523 6.67371C1.20509 6.59814 1.06007 6.53371 0.910165 6.48041C0.760262 6.42711 0.607428 6.38551 0.451665 6.35567L0.381352 6.34212ZM2.26418 14.218C2.62259 15.5594 3.22367 16.7893 4.06694 17.9076C4.9063 19.0207 5.92242 19.9394 7.11531 20.6639C8.34188 21.409 9.66807 21.8938 11.0953 22.1182C11.1495 22.1268 11.2028 22.1401 11.2545 22.1583C11.3068 22.1765 11.3566 22.1992 11.4049 22.2265C11.4528 22.2537 11.4982 22.2851 11.5406 22.3206C11.5836 22.3561 11.6227 22.3951 11.6583 22.4377C11.6945 22.4803 11.7262 22.5258 11.754 22.5742C11.7819 22.6226 11.8053 22.6731 11.8243 22.7258C11.8434 22.7784 11.858 22.8324 11.8678 22.8876C11.8771 22.9429 11.882 22.9986 11.882 23.0547C11.882 23.5781 11.4669 24.0023 10.9542 24.0023C10.9068 24.0023 10.86 23.9986 10.8107 23.9909C9.14804 23.7294 7.59969 23.1631 6.16608 22.2925C4.77056 21.4447 3.5806 20.3685 2.59671 19.0638C1.60402 17.7478 0.896493 16.2987 0.474126 14.7167C0.03418 13.0693 -0.0654303 11.39 0.176271 9.67772L0.192873 9.58968L0.214358 9.51338L0.254885 9.41016L0.280276 9.35857C0.306644 9.30896 0.337406 9.26216 0.372074 9.21817C0.406742 9.17416 0.445317 9.13367 0.486821 9.09666C0.528814 9.05966 0.573736 9.02673 0.6211 8.99791L0.734871 8.93944L0.770516 8.92503C0.822274 8.90529 0.875497 8.89041 0.929697 8.88037C0.984385 8.87035 1.03907 8.86533 1.09474 8.86533C1.60695 8.86533 2.02248 9.28952 2.02248 9.81284C2.02248 9.85803 2.01955 9.90323 2.0132 9.94795C1.80812 11.4 1.89211 12.8234 2.26418 14.218Z\" fill=\"url(#paint_linear_1)\" fill-rule=\"evenodd\" />\r\n</svg>\r\n`\r\n"],"names":[],"mappings":"AAAO,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYnB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAalB,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASpB,MAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASvB,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAapB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASnB,MAAM,wBAAwB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAY9B,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOxB,MAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ1B,MAAM,qBAAqB;AAE3B,MAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOzB,MAAM,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe5B,MAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB1B,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYxB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAenB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAanB,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBlB,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWnB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQxB,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBxB,MAAM,YAAY;AAElB,MAAM,eAAe;AAErB,MAAM,kBAAkB;AAExB,MAAM,YAAY;AAElB,MAAM,YAAY;AAElB,MAAM,oBAAoB;AAE1B,MAAM,mBAAmB;AAEzB,MAAM,kBAAkB;AAAA;AAAA;AAIxB,MAAM,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAM7B,MAAM,qBAAqB;AAE3B,MAAM,sBAAsB;AAE5B,MAAM,eAAe;AAErB,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|