@blocknote/core 0.14.5 → 0.15.2

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.
Files changed (72) hide show
  1. package/dist/blocknote.js +1311 -1074
  2. package/dist/blocknote.js.map +1 -1
  3. package/dist/blocknote.umd.cjs +6 -6
  4. package/dist/blocknote.umd.cjs.map +1 -1
  5. package/dist/style.css +1 -1
  6. package/dist/webpack-stats.json +1 -1
  7. package/package.json +28 -25
  8. package/src/api/blockManipulation/blockManipulation.ts +21 -21
  9. package/src/api/exporters/copyExtension.ts +14 -10
  10. package/src/api/exporters/html/externalHTMLExporter.ts +26 -8
  11. package/src/api/exporters/html/htmlConversion.test.ts +27 -25
  12. package/src/api/exporters/html/internalHTMLSerializer.ts +22 -7
  13. package/src/api/exporters/html/util/sharedHTMLConversion.ts +3 -2
  14. package/src/api/exporters/markdown/markdownExporter.ts +5 -4
  15. package/src/api/nodeConversions/nodeConversions.test.ts +9 -6
  16. package/src/api/parsers/html/parseHTML.test.ts +3 -4
  17. package/src/api/parsers/html/util/__snapshots__/nestedLists.test.ts.snap +7 -7
  18. package/src/blocks/FileBlockContent/fileBlockHelpers.ts +1 -1
  19. package/src/blocks/defaultBlockHelpers.ts +3 -6
  20. package/src/blocks/defaultBlockTypeGuards.ts +26 -1
  21. package/src/editor/BlockNoteEditor.test.ts +48 -1
  22. package/src/editor/BlockNoteEditor.ts +153 -36
  23. package/src/editor/BlockNoteExtensions.ts +0 -1
  24. package/src/editor/BlockNoteTipTapEditor.ts +14 -5
  25. package/src/extensions/BackgroundColor/BackgroundColorExtension.ts +10 -4
  26. package/src/extensions/FormattingToolbar/FormattingToolbarPlugin.ts +37 -0
  27. package/src/extensions/LinkToolbar/LinkToolbarPlugin.ts +2 -2
  28. package/src/extensions/SideMenu/SideMenuPlugin.ts +20 -14
  29. package/src/extensions/SuggestionMenu/DefaultGridSuggestionItem.ts +4 -0
  30. package/src/extensions/SuggestionMenu/SuggestionPlugin.ts +2 -2
  31. package/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.ts +45 -0
  32. package/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts +13 -6
  33. package/src/extensions/TableHandles/TableHandlesPlugin.ts +5 -5
  34. package/src/extensions/TextAlignment/TextAlignmentExtension.ts +7 -3
  35. package/src/extensions/TextColor/TextColorExtension.ts +7 -3
  36. package/src/i18n/locales/ar.ts +6 -0
  37. package/src/i18n/locales/en.ts +19 -13
  38. package/src/i18n/locales/fr.ts +6 -0
  39. package/src/i18n/locales/is.ts +6 -0
  40. package/src/i18n/locales/ja.ts +6 -0
  41. package/src/i18n/locales/ko.ts +15 -0
  42. package/src/i18n/locales/nl.ts +11 -0
  43. package/src/i18n/locales/pl.ts +6 -0
  44. package/src/i18n/locales/pt.ts +6 -0
  45. package/src/i18n/locales/ru.ts +322 -309
  46. package/src/i18n/locales/vi.ts +13 -0
  47. package/src/i18n/locales/zh.ts +14 -0
  48. package/src/index.ts +14 -5
  49. package/src/style.css +2 -7
  50. package/types/src/api/blockManipulation/blockManipulation.d.ts +1 -1
  51. package/types/src/api/exporters/copyExtension.d.ts +2 -2
  52. package/types/src/api/exporters/html/externalHTMLExporter.d.ts +7 -3
  53. package/types/src/api/exporters/html/internalHTMLSerializer.d.ts +7 -3
  54. package/types/src/api/exporters/html/util/sharedHTMLConversion.d.ts +5 -3
  55. package/types/src/api/exporters/markdown/markdownExporter.d.ts +4 -2
  56. package/types/src/api/parsers/fileDropExtension.d.ts +2 -2
  57. package/types/src/api/parsers/pasteExtension.d.ts +2 -2
  58. package/types/src/blocks/defaultBlockHelpers.d.ts +2 -2
  59. package/types/src/blocks/defaultBlockTypeGuards.d.ts +4 -1
  60. package/types/src/editor/BlockNoteEditor.d.ts +71 -11
  61. package/types/src/editor/BlockNoteExtensions.d.ts +2 -3
  62. package/types/src/editor/BlockNoteTipTapEditor.d.ts +2 -2
  63. package/types/src/extensions/FormattingToolbar/FormattingToolbarPlugin.d.ts +1 -0
  64. package/types/src/extensions/SuggestionMenu/DefaultGridSuggestionItem.d.ts +4 -0
  65. package/types/src/extensions/SuggestionMenu/SuggestionPlugin.d.ts +1 -2
  66. package/types/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.d.ts +4 -0
  67. package/types/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.d.ts +1 -1
  68. package/types/src/i18n/locales/en.d.ts +6 -0
  69. package/types/src/index.d.ts +11 -5
  70. package/types/src/pm-nodes/BlockContainer.d.ts +2 -8
  71. package/types/src/pm-nodes/BlockGroup.d.ts +2 -7
  72. package/types/src/schema/inlineContent/internal.d.ts +1 -1
@@ -1,323 +1,336 @@
1
1
  import { Dictionary } from "../dictionary";
2
2
 
3
- export const ru: Dictionary = {
4
- slash_menu: {
5
- heading: {
6
- title: "Заголовок 1 уровня",
7
- subtext: "Используется для заголовка верхнего уровня",
8
- aliases: ["h", "heading1", "h1", "заголовок1"],
9
- group: "Заголовки",
10
- },
11
- heading_2: {
12
- title: "Заголовок 2 уровня",
13
- subtext: "Используется для ключевых разделов",
14
- aliases: ["h2", "heading2", "subheading", "заголовок2", "подзаголовок"],
15
- group: "Заголовки",
16
- },
17
- heading_3: {
18
- title: "Заголовок 3 уровня",
19
- subtext: "Используется для подразделов и групп",
20
- aliases: ["h3", "heading3", "subheading", "заголовок3", "подзаголовок"],
21
- group: "Заголовки",
22
- },
23
- numbered_list: {
24
- title: "Нумерованный список",
25
- subtext: "Используется для отображения нумерованного списка",
26
- aliases: [
27
- "ol",
28
- "li",
29
- "list",
30
- "numberedlist",
31
- "numbered list",
32
- "список",
33
- "нумерованный список",
34
- ],
35
- group: "Базовые блоки",
36
- },
37
- bullet_list: {
38
- title: "Маркированный список",
39
- subtext: "Для отображения неупорядоченного списка.",
40
- aliases: ["ul", "li", "list", "bulletlist", "bullet list", "список", "маркированный список"],
41
- group: "Базовые блоки",
42
- },
43
- check_list: {
44
- title: "Контрольный список",
45
- subtext: "Для отображения списка с флажками",
46
- aliases: [
47
- "ul",
48
- "li",
49
- "list",
50
- "checklist",
51
- "check list",
52
- "checked list",
53
- "checkbox",
54
- "список",
55
- ],
56
- group: "Базовые блоки",
57
- },
58
- paragraph: {
59
- title: "Параграф",
60
- subtext: "Основной текст",
61
- aliases: ["p", "paragraph", "параграф"],
62
- group: "Базовые блоки",
63
- },
64
- table: {
65
- title: "Таблица",
66
- subtext: "Используется для таблиц",
67
- aliases: ["table", "таблица"],
68
- group: "Продвинутый",
69
- },
70
- image: {
71
- title: "Картинка",
72
- subtext: "Вставить изображение",
73
- aliases: [
74
- "image",
75
- "imageUpload",
76
- "upload",
77
- "img",
78
- "picture",
79
- "media",
80
- "url",
81
- "загрузка",
82
- "картинка",
83
- "рисунок",
84
- ],
85
- group: "Медиа",
86
- },
87
- video: {
88
- title: "Видео",
89
- subtext: "Вставить видео",
90
- aliases: [
91
- "video",
92
- "videoUpload",
93
- "upload",
94
- "mp4",
95
- "film",
96
- "media",
97
- "url",
98
- "загрузка",
99
- "видео",
100
- ],
101
- group: "Медиа",
102
- },
103
- audio: {
104
- title: "Аудио",
105
- subtext: "Вставить аудио",
106
- aliases: [
107
- "audio",
108
- "audioUpload",
109
- "upload",
110
- "mp3",
111
- "sound",
112
- "media",
113
- "url",
114
- "загрузка",
115
- "аудио",
116
- "звук",
117
- "музыка",
118
- ],
119
- group: "Медиа",
120
- },
121
- file: {
122
- title: "Файл",
123
- subtext: "Вставить файл",
124
- aliases: ["file", "upload", "embed", "media", "url", "загрузка", "файл"],
125
- group: "Медиа",
126
- },
3
+ export const ru: Dictionary = {
4
+ slash_menu: {
5
+ heading: {
6
+ title: "Заголовок 1 уровня",
7
+ subtext: "Используется для заголовка верхнего уровня",
8
+ aliases: ["h", "heading1", "h1", "заголовок1"],
9
+ group: "Заголовки",
127
10
  },
128
- placeholders: {
129
- default: "Ведите текст или введите «/» для команд",
130
- heading: "Заголовок",
131
- bulletListItem: "Список",
132
- numberedListItem: "Список",
133
- checkListItem: "Список",
11
+ heading_2: {
12
+ title: "Заголовок 2 уровня",
13
+ subtext: "Используется для ключевых разделов",
14
+ aliases: ["h2", "heading2", "subheading", "заголовок2", "подзаголовок"],
15
+ group: "Заголовки",
134
16
  },
135
- file_blocks: {
136
- image: {
137
- add_button_text: "Добавить изображение",
138
- },
139
- video: {
140
- add_button_text: "Добавить видео",
141
- },
142
- audio: {
143
- add_button_text: "Добавить аудио",
144
- },
145
- file: {
146
- add_button_text: "Добавить файл",
147
- },
17
+ heading_3: {
18
+ title: "Заголовок 3 уровня",
19
+ subtext: "Используется для подразделов и групп",
20
+ aliases: ["h3", "heading3", "subheading", "заголовок3", "подзаголовок"],
21
+ group: "Заголовки",
148
22
  },
149
- // from react package:
150
- side_menu: {
151
- add_block_label: "Добавить блок",
152
- drag_handle_label: "Открыть меню блока",
153
- },
154
- drag_handle: {
155
- delete_menuitem: "Удалить",
156
- colors_menuitem: "Цвета",
157
- },
158
- table_handle: {
159
- delete_column_menuitem: "Удалить столбец",
160
- delete_row_menuitem: "Удалить строку",
161
- add_left_menuitem: "Добавить столбец слева",
162
- add_right_menuitem: "Добавить столбец справа",
163
- add_above_menuitem: "Добавить строку выше",
164
- add_below_menuitem: "Добавить строку ниже",
165
- },
166
- suggestion_menu: {
167
- no_items_title: "ничего не найдено",
168
- loading: "Загрузка…",
169
- },
170
- color_picker: {
171
- text_title: "Текст",
172
- background_title: "Задний фон",
173
- colors: {
174
- default: "По умолчинию",
175
- gray: "Серый",
176
- brown: "Коричневый",
177
- red: "Красный",
178
- orange: "Оранжевый",
179
- yellow: "Жёлтый",
180
- green: "Зелёный",
181
- blue: "Голубой",
182
- purple: "Фиолетовый",
183
- pink: "Розовый",
184
- },
23
+ numbered_list: {
24
+ title: "Нумерованный список",
25
+ subtext: "Используется для отображения нумерованного списка",
26
+ aliases: [
27
+ "ol",
28
+ "li",
29
+ "list",
30
+ "numberedlist",
31
+ "numbered list",
32
+ "список",
33
+ "нумерованный список",
34
+ ],
35
+ group: "Базовые блоки",
185
36
  },
186
-
187
- formatting_toolbar: {
188
- bold: {
189
- tooltip: "Жирный",
190
- secondary_tooltip: "Mod+B",
191
- },
192
- italic: {
193
- tooltip: "Курсив",
194
- secondary_tooltip: "Mod+I",
195
- },
196
- underline: {
197
- tooltip: "Подчёркнутый",
198
- secondary_tooltip: "Mod+U",
199
- },
200
- strike: {
201
- tooltip: "Зачёркнутый",
202
- secondary_tooltip: "Mod+Shift+X",
203
- },
204
- code: {
205
- tooltip: "Код",
206
- secondary_tooltip: "",
207
- },
208
- colors: {
209
- tooltip: "Цвета",
210
- },
211
- link: {
212
- tooltip: "Создать ссылку",
213
- secondary_tooltip: "Mod+K",
214
- },
215
- file_caption: {
216
- tooltip: "Изменить подпись",
217
- input_placeholder: "Изменить подпись",
218
- },
219
- file_replace: {
220
- tooltip: {
221
- image: "Заменить изображение",
222
- video: "Заменить видео",
223
- audio: "Заменить аудио",
224
- file: "Заменить файл",
225
- },
226
- },
227
- file_rename: {
228
- tooltip: {
229
- image: "Переименовать изображение",
230
- video: "Переименовать видео",
231
- audio: "Переименовать аудио",
232
- file: "Переименовать файл",
233
- },
234
- input_placeholder: {
235
- image: "Переименовать изображение",
236
- video: "Переименовать видео",
237
- audio: "Переименовать аудио",
238
- file: "Переименовать файл",
239
- },
240
- },
241
- file_download: {
242
- tooltip: {
243
- image: "Скачать картинку",
244
- video: "Скачать видео",
245
- audio: "Скачать аудио",
246
- file: "Скачать файл",
247
- },
248
- },
249
- file_delete: {
250
- tooltip: {
251
- image: "Удалить картинку",
252
- video: "Удалить видео",
253
- audio: "Удалить аудио",
254
- file: "Скачать файл",
255
- },
256
- },
257
- file_preview_toggle: {
258
- tooltip: "Переключить предварительный просмотр",
259
- },
260
- nest: {
261
- tooltip: "Сдвинуть вправо",
262
- secondary_tooltip: "Tab",
263
- },
264
- unnest: {
265
- tooltip: "Сдвинуть влево",
266
- secondary_tooltip: "Shift+Tab",
267
- },
268
- align_left: {
269
- tooltip: "Текст по левому краю",
270
- },
271
- align_center: {
272
- tooltip: "Текст по середине",
273
- },
274
- align_right: {
275
- tooltip: "Текст по правому краю",
276
- },
277
- align_justify: {
278
- tooltip: "По середине текст",
279
- },
37
+ bullet_list: {
38
+ title: "Маркированный список",
39
+ subtext: "Для отображения неупорядоченного списка.",
40
+ aliases: [
41
+ "ul",
42
+ "li",
43
+ "list",
44
+ "bulletlist",
45
+ "bullet list",
46
+ "список",
47
+ "маркированный список",
48
+ ],
49
+ group: "Базовые блоки",
280
50
  },
281
- file_panel: {
282
- upload: {
283
- title: "Загрузить",
284
- file_placeholder: {
285
- image: "Загрузить картинки",
286
- video: "Загрузить видео",
287
- audio: "Загрузить аудио",
288
- file: "Загрузить файл",
289
- },
290
- upload_error: "Ошибка: не удалось загрузить",
291
- },
292
- embed: {
293
- title: "Вставить",
294
- embed_button: {
295
- image: "Вставить картинку",
296
- video: "Вставить видео",
297
- audio: "Вставить аудио",
298
- file: "Вставить файл",
299
- },
300
- url_placeholder: "Введите URL",
301
- },
51
+ check_list: {
52
+ title: "Контрольный список",
53
+ subtext: "Для отображения списка с флажками",
54
+ aliases: [
55
+ "ul",
56
+ "li",
57
+ "list",
58
+ "checklist",
59
+ "check list",
60
+ "checked list",
61
+ "checkbox",
62
+ "список",
63
+ ],
64
+ group: "Базовые блоки",
65
+ },
66
+ paragraph: {
67
+ title: "Параграф",
68
+ subtext: "Основной текст",
69
+ aliases: ["p", "paragraph", "параграф"],
70
+ group: "Базовые блоки",
71
+ },
72
+ table: {
73
+ title: "Таблица",
74
+ subtext: "Используется для таблиц",
75
+ aliases: ["table", "таблица"],
76
+ group: "Продвинутый",
77
+ },
78
+ image: {
79
+ title: "Картинка",
80
+ subtext: "Вставить изображение",
81
+ aliases: [
82
+ "image",
83
+ "imageUpload",
84
+ "upload",
85
+ "img",
86
+ "picture",
87
+ "media",
88
+ "url",
89
+ "загрузка",
90
+ "картинка",
91
+ "рисунок",
92
+ ],
93
+ group: "Медиа",
94
+ },
95
+ video: {
96
+ title: "Видео",
97
+ subtext: "Вставить видео",
98
+ aliases: [
99
+ "video",
100
+ "videoUpload",
101
+ "upload",
102
+ "mp4",
103
+ "film",
104
+ "media",
105
+ "url",
106
+ "загрузка",
107
+ "видео",
108
+ ],
109
+ group: "Медиа",
110
+ },
111
+ audio: {
112
+ title: "Аудио",
113
+ subtext: "Вставить аудио",
114
+ aliases: [
115
+ "audio",
116
+ "audioUpload",
117
+ "upload",
118
+ "mp3",
119
+ "sound",
120
+ "media",
121
+ "url",
122
+ "загрузка",
123
+ "аудио",
124
+ "звук",
125
+ "музыка",
126
+ ],
127
+ group: "Медиа",
128
+ },
129
+ file: {
130
+ title: "Файл",
131
+ subtext: "Вставить файл",
132
+ aliases: ["file", "upload", "embed", "media", "url", "загрузка", "файл"],
133
+ group: "Медиа",
134
+ },
135
+ emoji: {
136
+ title: "Эмодзи",
137
+ subtext: "Используется для вставки эмодзи",
138
+ aliases: ["эмодзи", "смайлик", "выражение эмоций", "лицо"],
139
+ group: "Прочее",
140
+ },
141
+ },
142
+ placeholders: {
143
+ default: "Ведите текст или введите «/» для команд",
144
+ heading: "Заголовок",
145
+ bulletListItem: "Список",
146
+ numberedListItem: "Список",
147
+ checkListItem: "Список",
148
+ },
149
+ file_blocks: {
150
+ image: {
151
+ add_button_text: "Добавить изображение",
152
+ },
153
+ video: {
154
+ add_button_text: "Добавить видео",
155
+ },
156
+ audio: {
157
+ add_button_text: "Добавить аудио",
158
+ },
159
+ file: {
160
+ add_button_text: "Добавить файл",
161
+ },
162
+ },
163
+ // from react package:
164
+ side_menu: {
165
+ add_block_label: "Добавить блок",
166
+ drag_handle_label: "Открыть меню блока",
167
+ },
168
+ drag_handle: {
169
+ delete_menuitem: "Удалить",
170
+ colors_menuitem: "Цвета",
171
+ },
172
+ table_handle: {
173
+ delete_column_menuitem: "Удалить столбец",
174
+ delete_row_menuitem: "Удалить строку",
175
+ add_left_menuitem: "Добавить столбец слева",
176
+ add_right_menuitem: "Добавить столбец справа",
177
+ add_above_menuitem: "Добавить строку выше",
178
+ add_below_menuitem: "Добавить строку ниже",
179
+ },
180
+ suggestion_menu: {
181
+ no_items_title: "ничего не найдено",
182
+ loading: "Загрузка…",
183
+ },
184
+ color_picker: {
185
+ text_title: "Текст",
186
+ background_title: "Задний фон",
187
+ colors: {
188
+ default: "По умолчинию",
189
+ gray: "Серый",
190
+ brown: "Коричневый",
191
+ red: "Красный",
192
+ orange: "Оранжевый",
193
+ yellow: "Жёлтый",
194
+ green: "Зелёный",
195
+ blue: "Голубой",
196
+ purple: "Фиолетовый",
197
+ pink: "Розовый",
198
+ },
199
+ },
200
+
201
+ formatting_toolbar: {
202
+ bold: {
203
+ tooltip: "Жирный",
204
+ secondary_tooltip: "Mod+B",
205
+ },
206
+ italic: {
207
+ tooltip: "Курсив",
208
+ secondary_tooltip: "Mod+I",
209
+ },
210
+ underline: {
211
+ tooltip: "Подчёркнутый",
212
+ secondary_tooltip: "Mod+U",
213
+ },
214
+ strike: {
215
+ tooltip: "Зачёркнутый",
216
+ secondary_tooltip: "Mod+Shift+X",
217
+ },
218
+ code: {
219
+ tooltip: "Код",
220
+ secondary_tooltip: "",
302
221
  },
303
- link_toolbar: {
304
- delete: {
305
- tooltip: "Удалить ссылку",
222
+ colors: {
223
+ tooltip: "Цвета",
224
+ },
225
+ link: {
226
+ tooltip: "Создать ссылку",
227
+ secondary_tooltip: "Mod+K",
228
+ },
229
+ file_caption: {
230
+ tooltip: "Изменить подпись",
231
+ input_placeholder: "Изменить подпись",
232
+ },
233
+ file_replace: {
234
+ tooltip: {
235
+ image: "Заменить изображение",
236
+ video: "Заменить видео",
237
+ audio: "Заменить аудио",
238
+ file: "Заменить файл",
306
239
  },
307
- edit: {
308
- text: "Изменить ссылку",
309
- tooltip: "Редактировать",
240
+ },
241
+ file_rename: {
242
+ tooltip: {
243
+ image: "Переименовать изображение",
244
+ video: "Переименовать видео",
245
+ audio: "Переименовать аудио",
246
+ file: "Переименовать файл",
247
+ },
248
+ input_placeholder: {
249
+ image: "Переименовать изображение",
250
+ video: "Переименовать видео",
251
+ audio: "Переименовать аудио",
252
+ file: "Переименовать файл",
310
253
  },
311
- open: {
312
- tooltip: "Открыть в новой вкладке",
254
+ },
255
+ file_download: {
256
+ tooltip: {
257
+ image: "Скачать картинку",
258
+ video: "Скачать видео",
259
+ audio: "Скачать аудио",
260
+ file: "Скачать файл",
313
261
  },
314
- form: {
315
- title_placeholder: "Изменить заголовок",
316
- url_placeholder: "Изменить URL",
262
+ },
263
+ file_delete: {
264
+ tooltip: {
265
+ image: "Удалить картинку",
266
+ video: "Удалить видео",
267
+ audio: "Удалить аудио",
268
+ file: "Скачать файл",
317
269
  },
318
270
  },
319
- generic: {
320
- ctrl_shortcut: "Ctrl",
271
+ file_preview_toggle: {
272
+ tooltip: "Переключить предварительный просмотр",
273
+ },
274
+ nest: {
275
+ tooltip: "Сдвинуть вправо",
276
+ secondary_tooltip: "Tab",
277
+ },
278
+ unnest: {
279
+ tooltip: "Сдвинуть влево",
280
+ secondary_tooltip: "Shift+Tab",
281
+ },
282
+ align_left: {
283
+ tooltip: "Текст по левому краю",
284
+ },
285
+ align_center: {
286
+ tooltip: "Текст по середине",
287
+ },
288
+ align_right: {
289
+ tooltip: "Текст по правому краю",
290
+ },
291
+ align_justify: {
292
+ tooltip: "По середине текст",
293
+ },
294
+ },
295
+ file_panel: {
296
+ upload: {
297
+ title: "Загрузить",
298
+ file_placeholder: {
299
+ image: "Загрузить картинки",
300
+ video: "Загрузить видео",
301
+ audio: "Загрузить аудио",
302
+ file: "Загрузить файл",
303
+ },
304
+ upload_error: "Ошибка: не удалось загрузить",
305
+ },
306
+ embed: {
307
+ title: "Вставить",
308
+ embed_button: {
309
+ image: "Вставить картинку",
310
+ video: "Вставить видео",
311
+ audio: "Вставить аудио",
312
+ file: "Вставить файл",
313
+ },
314
+ url_placeholder: "Введите URL",
315
+ },
316
+ },
317
+ link_toolbar: {
318
+ delete: {
319
+ tooltip: "Удалить ссылку",
320
+ },
321
+ edit: {
322
+ text: "Изменить ссылку",
323
+ tooltip: "Редактировать",
324
+ },
325
+ open: {
326
+ tooltip: "Открыть в новой вкладке",
327
+ },
328
+ form: {
329
+ title_placeholder: "Изменить заголовок",
330
+ url_placeholder: "Изменить URL",
321
331
  },
322
- };
323
-
332
+ },
333
+ generic: {
334
+ ctrl_shortcut: "Ctrl",
335
+ },
336
+ };
@@ -97,6 +97,19 @@ export const vi: Dictionary = {
97
97
  aliases: ["tep", "tai-len", "nhung", "media", "url"],
98
98
  group: "Phương tiện",
99
99
  },
100
+ emoji: {
101
+ title: "Biểu tượng cảm xúc",
102
+ subtext: "Dùng để chèn biểu tượng cảm xúc",
103
+ aliases: [
104
+ "biểu tượng cảm xúc",
105
+ "emoji",
106
+ "emoticon",
107
+ "cảm xúc expression",
108
+ "khuôn mặt",
109
+ "face",
110
+ ],
111
+ group: "Khác",
112
+ },
100
113
  },
101
114
  placeholders: {
102
115
  default: "Nhập văn bản hoặc gõ '/' để thêm định dạng",
@@ -130,6 +130,20 @@ export const zh: Dictionary = {
130
130
  aliases: ["文件", "上传", "file", "嵌入", "媒体", "url"],
131
131
  group: "媒体",
132
132
  },
133
+ emoji: {
134
+ title: "表情符号",
135
+ subtext: "用于插入表情符号",
136
+ aliases: [
137
+ "表情符号",
138
+ "emoji",
139
+ "face",
140
+ "emote",
141
+ "表情",
142
+ "表情表达",
143
+ "表情",
144
+ ],
145
+ group: "其他",
146
+ },
133
147
  },
134
148
  placeholders: {
135
149
  default: "输入 '/' 以使用命令",