@blocknote/core 0.46.1 → 0.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/{BlockNoteSchema-DsMVJZv4.js → BlockNoteSchema-1r-ln0Q0.js} +2 -2
  2. package/dist/{BlockNoteSchema-DsMVJZv4.js.map → BlockNoteSchema-1r-ln0Q0.js.map} +1 -1
  3. package/dist/{BlockNoteSchema-qt4Czo0-.cjs → BlockNoteSchema-DT4bdXj5.cjs} +2 -2
  4. package/dist/{BlockNoteSchema-qt4Czo0-.cjs.map → BlockNoteSchema-DT4bdXj5.cjs.map} +1 -1
  5. package/dist/{TrailingNode-C-Kyrtf1.js → TrailingNode-DZag-Nvu.js} +476 -464
  6. package/dist/TrailingNode-DZag-Nvu.js.map +1 -0
  7. package/dist/TrailingNode-tesI8f7N.cjs +2 -0
  8. package/dist/TrailingNode-tesI8f7N.cjs.map +1 -0
  9. package/dist/blocknote.cjs +4 -4
  10. package/dist/blocknote.cjs.map +1 -1
  11. package/dist/blocknote.js +1264 -1165
  12. package/dist/blocknote.js.map +1 -1
  13. package/dist/blocks.cjs +1 -1
  14. package/dist/blocks.js +2 -2
  15. package/dist/{defaultBlocks-CXOCngjC.js → defaultBlocks-BSOEW3GR.js} +33 -29
  16. package/dist/defaultBlocks-BSOEW3GR.js.map +1 -0
  17. package/dist/defaultBlocks-D049Pbme.cjs +6 -0
  18. package/dist/defaultBlocks-D049Pbme.cjs.map +1 -0
  19. package/dist/extensions.cjs +1 -1
  20. package/dist/extensions.js +3 -3
  21. package/dist/locales.cjs +1 -1
  22. package/dist/locales.cjs.map +1 -1
  23. package/dist/locales.js +813 -28
  24. package/dist/locales.js.map +1 -1
  25. package/dist/style.css +1 -1
  26. package/dist/tsconfig.tsbuildinfo +1 -1
  27. package/dist/webpack-stats.json +1 -1
  28. package/package.json +1 -1
  29. package/src/api/exporters/html/internalHTMLSerializer.ts +146 -2
  30. package/src/api/exporters/html/util/serializeBlocksExternalHTML.ts +3 -0
  31. package/src/blocks/Code/block.ts +12 -8
  32. package/src/blocks/ListItem/CheckListItem/block.test.ts +61 -0
  33. package/src/blocks/ListItem/CheckListItem/block.ts +4 -0
  34. package/src/editor/Block.css +7 -3
  35. package/src/editor/editor.css +1 -0
  36. package/src/editor/transformPasted.ts +69 -0
  37. package/src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboard.ts +1 -0
  38. package/src/extensions/SideMenu/SideMenu.ts +44 -0
  39. package/src/extensions/TableHandles/TableHandles.ts +6 -2
  40. package/src/extensions/tiptap-extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts +37 -11
  41. package/src/i18n/locales/fa.ts +390 -0
  42. package/src/i18n/locales/index.ts +2 -0
  43. package/src/i18n/locales/uz.ts +421 -0
  44. package/src/schema/blocks/createSpec.ts +4 -2
  45. package/src/schema/blocks/types.ts +9 -0
  46. package/types/src/blocks/ListItem/CheckListItem/block.test.d.ts +1 -0
  47. package/types/src/i18n/locales/fa.d.ts +320 -0
  48. package/types/src/i18n/locales/index.d.ts +2 -0
  49. package/types/src/i18n/locales/uz.d.ts +2 -0
  50. package/types/src/schema/blocks/types.d.ts +9 -3
  51. package/dist/TrailingNode-C-Kyrtf1.js.map +0 -1
  52. package/dist/TrailingNode-W7GJVng5.cjs +0 -2
  53. package/dist/TrailingNode-W7GJVng5.cjs.map +0 -1
  54. package/dist/defaultBlocks-CXOCngjC.js.map +0 -1
  55. package/dist/defaultBlocks-IsUGVZIq.cjs +0 -6
  56. package/dist/defaultBlocks-IsUGVZIq.cjs.map +0 -1
@@ -0,0 +1,421 @@
1
+ import { Dictionary } from "../dictionary.js";
2
+
3
+ export const uz: Dictionary = {
4
+ slash_menu: {
5
+ heading: {
6
+ title: "1-darajali sarlavha",
7
+ subtext: "Eng yuqori darajadagi sarlavha uchun ishlatiladi",
8
+ aliases: ["h", "heading1", "h1", "sarlavha1"],
9
+ group: "Sarlavhalar",
10
+ },
11
+ heading_2: {
12
+ title: "2-darajali sarlavha",
13
+ subtext: "Asosiy bo‘limlar uchun ishlatiladi",
14
+ aliases: ["h2", "heading2", "subheading", "sarlavha2", "kichik_sarlavha"],
15
+ group: "Sarlavhalar",
16
+ },
17
+ heading_3: {
18
+ title: "3-darajali sarlavha",
19
+ subtext: "Bo‘limlar va guruhlar uchun ishlatiladi",
20
+ aliases: ["h3", "heading3", "subheading", "sarlavha3", "kichik_sarlavha"],
21
+ group: "Sarlavhalar",
22
+ },
23
+ heading_4: {
24
+ title: "4-darajali sarlavha",
25
+ subtext: "Yana kichik bo‘limlar uchun ishlatiladi",
26
+ aliases: ["h4", "heading4", "subheading4", "sarlavha4", "kichik_sarlavha4"],
27
+ group: "Kichik sarlavhalar",
28
+ },
29
+ heading_5: {
30
+ title: "5-darajali sarlavha",
31
+ subtext: "Kichik bo‘lim sarlavhalari uchun",
32
+ aliases: ["h5", "heading5", "subheading5", "sarlavha5", "kichik_sarlavha5"],
33
+ group: "Kichik sarlavhalar",
34
+ },
35
+ heading_6: {
36
+ title: "6-darajali sarlavha",
37
+ subtext: "Eng past darajadagi sarlavha",
38
+ aliases: ["h6", "heading6", "subheading6", "sarlavha6", "kichik_sarlavha6"],
39
+ group: "Kichik sarlavhalar",
40
+ },
41
+ toggle_heading: {
42
+ title: "Yig‘iladigan 1-darajali sarlavha",
43
+ subtext: "Yig‘ish/ochish mumkin bo‘lgan yuqori darajadagi sarlavha",
44
+ aliases: ["h", "heading1", "h1", "sarlavha1", "yig‘iladigan"],
45
+ group: "Kichik sarlavhalar",
46
+ },
47
+ toggle_heading_2: {
48
+ title: "Yig‘iladigan 2-darajali sarlavha",
49
+ subtext: "Yig‘ish/ochish mumkin bo‘lgan asosiy bo‘lim sarlavhasi",
50
+ aliases: [
51
+ "h2",
52
+ "heading2",
53
+ "subheading",
54
+ "sarlavha2",
55
+ "kichik_sarlavha",
56
+ "yig‘iladigan",
57
+ ],
58
+ group: "Kichik sarlavhalar",
59
+ },
60
+ toggle_heading_3: {
61
+ title: "Yig‘iladigan 3-darajali sarlavha",
62
+ subtext: "Yig‘ish/ochish mumkin bo‘lgan bo‘lim sarlavhasi",
63
+ aliases: [
64
+ "h3",
65
+ "heading3",
66
+ "subheading",
67
+ "sarlavha3",
68
+ "kichik_sarlavha",
69
+ "yig‘iladigan",
70
+ ],
71
+ group: "Kichik sarlavhalar",
72
+ },
73
+ quote: {
74
+ title: "Iqtibos",
75
+ subtext: "Iqtibos yoki parcha",
76
+ aliases: ["quotation", "blockquote", "bq"],
77
+ group: "Asosiy bloklar",
78
+ },
79
+ numbered_list: {
80
+ title: "Raqamlangan ro‘yxat",
81
+ subtext: "Raqamlangan ro‘yxatni ko‘rsatish uchun",
82
+ aliases: [
83
+ "ol",
84
+ "li",
85
+ "list",
86
+ "numberedlist",
87
+ "numbered list",
88
+ "ro‘yxat",
89
+ "raqamlangan ro‘yxat",
90
+ ],
91
+ group: "Asosiy bloklar",
92
+ },
93
+ bullet_list: {
94
+ title: "Belgili ro‘yxat",
95
+ subtext: "Tartibsiz ro‘yxat uchun",
96
+ aliases: [
97
+ "ul",
98
+ "li",
99
+ "list",
100
+ "bulletlist",
101
+ "bullet list",
102
+ "ro‘yxat",
103
+ "belgili ro‘yxat",
104
+ ],
105
+ group: "Asosiy bloklar",
106
+ },
107
+ check_list: {
108
+ title: "Belgilash ro‘yxati",
109
+ subtext: "Belgilar bilan ro‘yxat",
110
+ aliases: [
111
+ "ul",
112
+ "li",
113
+ "list",
114
+ "checklist",
115
+ "check list",
116
+ "checked list",
117
+ "checkbox",
118
+ "ro‘yxat",
119
+ ],
120
+ group: "Asosiy bloklar",
121
+ },
122
+ toggle_list: {
123
+ title: "Yig‘iladigan ro‘yxat",
124
+ subtext: "Yashiriladigan elementli ro‘yxat",
125
+ aliases: ["li", "ro‘yxat", "yig‘iladigan ro‘yxat"],
126
+ group: "Asosiy bloklar",
127
+ },
128
+ paragraph: {
129
+ title: "Paragraf",
130
+ subtext: "Asosiy matn",
131
+ aliases: ["p", "paragraph", "paragraf"],
132
+ group: "Asosiy bloklar",
133
+ },
134
+ code_block: {
135
+ title: "Kod bloki",
136
+ subtext: "Sintaksis yoritilishi bilan kod bloki",
137
+ aliases: ["code", "pre", "kod bloki"],
138
+ group: "Asosiy bloklar",
139
+ },
140
+ page_break: {
141
+ title: "Sahifa bo‘linishi",
142
+ subtext: "Sahifa ajratuvchisi",
143
+ aliases: ["page", "break", "separator", "bo‘linish", "ajratuvchi"],
144
+ group: "Asosiy bloklar",
145
+ },
146
+ table: {
147
+ title: "Jadval",
148
+ subtext: "Jadvallar uchun ishlatiladi",
149
+ aliases: ["table", "jadval"],
150
+ group: "Kengaytirilgan",
151
+ },
152
+ image: {
153
+ title: "Rasm",
154
+ subtext: "Rasm joylash",
155
+ aliases: [
156
+ "image",
157
+ "imageUpload",
158
+ "upload",
159
+ "img",
160
+ "picture",
161
+ "media",
162
+ "url",
163
+ "yuklash",
164
+ "rasm",
165
+ ],
166
+ group: "Media",
167
+ },
168
+ video: {
169
+ title: "Video",
170
+ subtext: "Video joylash",
171
+ aliases: [
172
+ "video",
173
+ "videoUpload",
174
+ "upload",
175
+ "mp4",
176
+ "film",
177
+ "media",
178
+ "url",
179
+ "yuklash",
180
+ "video",
181
+ ],
182
+ group: "Media",
183
+ },
184
+ audio: {
185
+ title: "Audio",
186
+ subtext: "Audio joylash",
187
+ aliases: [
188
+ "audio",
189
+ "audioUpload",
190
+ "upload",
191
+ "mp3",
192
+ "sound",
193
+ "media",
194
+ "url",
195
+ "yuklash",
196
+ "audio",
197
+ "ovoz",
198
+ "musiqa",
199
+ ],
200
+ group: "Media",
201
+ },
202
+ file: {
203
+ title: "Fayl",
204
+ subtext: "Fayl joylash",
205
+ aliases: ["file", "upload", "embed", "media", "url", "yuklash", "fayl"],
206
+ group: "Media",
207
+ },
208
+ emoji: {
209
+ title: "Emodzi",
210
+ subtext: "Emodzi qo‘shish",
211
+ aliases: ["emodzi", "smaylik", "ifoda", "yuz"],
212
+ group: "Boshqa",
213
+ },
214
+ divider: {
215
+ title: "Ajratuvchi",
216
+ subtext: "Bloklar ajratuvchisi",
217
+ aliases: ["divider", "hr", "horizontal rule"],
218
+ group: "Asosiy bloklar",
219
+ },
220
+ },
221
+
222
+ placeholders: {
223
+ default: "Matn kiriting yoki buyruqlar uchun «/» yozing",
224
+ heading: "Sarlavha",
225
+ toggleListItem: "Yig‘ish",
226
+ bulletListItem: "Ro‘yxat",
227
+ numberedListItem: "Ro‘yxat",
228
+ checkListItem: "Ro‘yxat",
229
+ new_comment: "Izoh yozing...",
230
+ edit_comment: "Izohni tahrirlash...",
231
+ comment_reply: "Izoh qo‘shish...",
232
+ },
233
+
234
+ file_blocks: {
235
+ add_button_text: {
236
+ image: "Rasm qo‘shish",
237
+ video: "Video qo‘shish",
238
+ audio: "Audio qo‘shish",
239
+ file: "Fayl qo‘shish",
240
+ } as Record<string, string>,
241
+ },
242
+
243
+ toggle_blocks: {
244
+ add_block_button: "Bo‘sh toggle. Blok qo‘shish uchun bosing.",
245
+ },
246
+
247
+ side_menu: {
248
+ add_block_label: "Blok qo‘shish",
249
+ drag_handle_label: "Blok menyusini ochish",
250
+ },
251
+
252
+ drag_handle: {
253
+ delete_menuitem: "O‘chirish",
254
+ colors_menuitem: "Ranglar",
255
+ header_row_menuitem: "Qator sarlavhasi",
256
+ header_column_menuitem: "Ustun sarlavhasi",
257
+ },
258
+
259
+ table_handle: {
260
+ delete_column_menuitem: "Ustunni o‘chirish",
261
+ delete_row_menuitem: "Qatorni o‘chirish",
262
+ add_left_menuitem: "Chapga ustun qo‘shish",
263
+ add_right_menuitem: "O‘ngga ustun qo‘shish",
264
+ add_above_menuitem: "Yuqoriga qator qo‘shish",
265
+ add_below_menuitem: "Pastga qator qo‘shish",
266
+ split_cell_menuitem: "Katakni bo‘lish",
267
+ merge_cells_menuitem: "Kataklarni birlashtirish",
268
+ background_color_menuitem: "Fon rangi",
269
+ },
270
+
271
+ suggestion_menu: {
272
+ no_items_title: "hech narsa topilmadi",
273
+ },
274
+
275
+ color_picker: {
276
+ text_title: "Matn",
277
+ background_title: "Fon",
278
+ colors: {
279
+ default: "Standart",
280
+ gray: "Kulrang",
281
+ brown: "Jigarrang",
282
+ red: "Qizil",
283
+ orange: "To‘q sariq",
284
+ yellow: "Sariq",
285
+ green: "Yashil",
286
+ blue: "Ko‘k",
287
+ purple: "Binafsha",
288
+ pink: "Pushti",
289
+ },
290
+ },
291
+
292
+ formatting_toolbar: {
293
+ bold: { tooltip: "Qalin", secondary_tooltip: "Mod+B" },
294
+ italic: { tooltip: "Kursiv", secondary_tooltip: "Mod+I" },
295
+ underline: { tooltip: "Tagi chizilgan", secondary_tooltip: "Mod+U" },
296
+ strike: { tooltip: "Usti chizilgan", secondary_tooltip: "Mod+Shift+X" },
297
+ code: { tooltip: "Kod", secondary_tooltip: "" },
298
+ colors: { tooltip: "Ranglar" },
299
+ link: { tooltip: "Havola yaratish", secondary_tooltip: "Mod+K" },
300
+
301
+ file_caption: {
302
+ tooltip: "Izohni o‘zgartirish",
303
+ input_placeholder: "Izohni o‘zgartirish",
304
+ },
305
+
306
+ file_replace: {
307
+ tooltip: {
308
+ image: "Rasmni almashtirish",
309
+ video: "Videoni almashtirish",
310
+ audio: "Audioni almashtirish",
311
+ file: "Faylni almashtirish",
312
+ },
313
+ },
314
+
315
+ file_rename: {
316
+ tooltip: {
317
+ image: "Rasm nomini o‘zgartirish",
318
+ video: "Video nomini o‘zgartirish",
319
+ audio: "Audio nomini o‘zgartirish",
320
+ file: "Fayl nomini o‘zgartirish",
321
+ },
322
+ input_placeholder: {
323
+ image: "Rasm nomini o‘zgartirish",
324
+ video: "Video nomini o‘zgartirish",
325
+ audio: "Audio nomini o‘zgartirish",
326
+ file: "Fayl nomini o‘zgartirish",
327
+ },
328
+ },
329
+
330
+ file_download: {
331
+ tooltip: {
332
+ image: "Rasmni yuklab olish",
333
+ video: "Videoni yuklab olish",
334
+ audio: "Audioni yuklab olish",
335
+ file: "Faylni yuklab olish",
336
+ },
337
+ },
338
+
339
+ file_delete: {
340
+ tooltip: {
341
+ image: "Rasmni o‘chirish",
342
+ video: "Videoni o‘chirish",
343
+ audio: "Audioni o‘chirish",
344
+ file: "Faylni o‘chirish",
345
+ },
346
+ },
347
+
348
+ file_preview_toggle: {
349
+ tooltip: "Oldindan ko‘rishni almashtirish",
350
+ },
351
+
352
+ nest: { tooltip: "O‘ngga surish", secondary_tooltip: "Tab" },
353
+ unnest: { tooltip: "Chapga surish", secondary_tooltip: "Shift+Tab" },
354
+
355
+ align_left: { tooltip: "Chapga tekislash" },
356
+ align_center: { tooltip: "Markazga tekislash" },
357
+ align_right: { tooltip: "O‘ngga tekislash" },
358
+ align_justify: { tooltip: "Eniga tekislash" },
359
+
360
+ table_cell_merge: { tooltip: "Kataklarni birlashtirish" },
361
+ comment: { tooltip: "Izoh qo‘shish" },
362
+ },
363
+
364
+ file_panel: {
365
+ upload: {
366
+ title: "Yuklash",
367
+ file_placeholder: {
368
+ image: "Rasmlarni yuklash",
369
+ video: "Videolarni yuklash",
370
+ audio: "Audiolarni yuklash",
371
+ file: "Faylni yuklash",
372
+ },
373
+ upload_error: "Xatolik: yuklab bo‘lmadi",
374
+ },
375
+
376
+ embed: {
377
+ title: "Joylash",
378
+ embed_button: {
379
+ image: "Rasmni joylash",
380
+ video: "Videoni joylash",
381
+ audio: "Audioni joylash",
382
+ file: "Faylni joylash",
383
+ },
384
+ url_placeholder: "URL kiriting",
385
+ },
386
+ },
387
+
388
+ link_toolbar: {
389
+ delete: { tooltip: "Havolani o‘chirish" },
390
+ edit: { text: "Havolani o‘zgartirish", tooltip: "Tahrirlash" },
391
+ open: { tooltip: "Yangi oynada ochish" },
392
+ form: {
393
+ title_placeholder: "Sarlavhani o‘zgartirish",
394
+ url_placeholder: "URLni o‘zgartirish",
395
+ },
396
+ },
397
+
398
+ comments: {
399
+ edited: "tahrirlangan",
400
+ save_button_text: "Saqlash",
401
+ cancel_button_text: "Bekor qilish",
402
+ actions: {
403
+ add_reaction: "Reaksiya qo‘shish",
404
+ resolve: "Hal qilish",
405
+ edit_comment: "Izohni tahrirlash",
406
+ delete_comment: "Izohni o‘chirish",
407
+ more_actions: "Boshqa amallar",
408
+ },
409
+ reactions: {
410
+ reacted_by: "Reaksiya bildirgan",
411
+ },
412
+ sidebar: {
413
+ marked_as_resolved: "Hal qilingan deb belgilandi",
414
+ more_replies: (count) => `${count} ta qo‘shimcha javob`,
415
+ },
416
+ },
417
+
418
+ generic: {
419
+ ctrl_shortcut: "Ctrl",
420
+ },
421
+ };
@@ -242,7 +242,7 @@ export function addNodeAndExtensionsToSpec<
242
242
  },
243
243
  // TODO: this should not have wrapInBlockStructure and generally be a lot simpler
244
244
  // post-processing in externalHTMLExporter should not be necessary
245
- toExternalHTML: (block, editor) => {
245
+ toExternalHTML: (block, editor, context) => {
246
246
  const blockContentDOMAttributes =
247
247
  node.options.domAttributes?.blockContent || {};
248
248
 
@@ -251,6 +251,7 @@ export function addNodeAndExtensionsToSpec<
251
251
  { blockContentDOMAttributes },
252
252
  block as any,
253
253
  editor as any,
254
+ context,
254
255
  ) ??
255
256
  blockImplementation.render.call(
256
257
  { blockContentDOMAttributes, renderType: "dom", props: undefined },
@@ -393,11 +394,12 @@ export function createBlockSpec<
393
394
  ...blockImplementation,
394
395
  // TODO: this should not have wrapInBlockStructure and generally be a lot simpler
395
396
  // post-processing in externalHTMLExporter should not be necessary
396
- toExternalHTML(block, editor) {
397
+ toExternalHTML(block, editor, context) {
397
398
  const output = blockImplementation.toExternalHTML?.call(
398
399
  { blockContentDOMAttributes: this.blockContentDOMAttributes },
399
400
  block as any,
400
401
  editor as any,
402
+ context,
401
403
  );
402
404
 
403
405
  if (output === undefined) {
@@ -139,6 +139,9 @@ export type LooseBlockSpec<
139
139
  toExternalHTML?: (
140
140
  block: any,
141
141
  editor: BlockNoteEditor<any>,
142
+ context: {
143
+ nestingLevel: number;
144
+ },
142
145
  ) =>
143
146
  | {
144
147
  dom: HTMLElement | DocumentFragment;
@@ -193,6 +196,9 @@ export type BlockSpecs = {
193
196
  toExternalHTML?: (
194
197
  block: any,
195
198
  editor: BlockNoteEditor<any>,
199
+ context: {
200
+ nestingLevel: number;
201
+ },
196
202
  ) =>
197
203
  | {
198
204
  dom: HTMLElement | DocumentFragment;
@@ -463,6 +469,9 @@ export type BlockImplementation<
463
469
  editor: BlockNoteEditor<
464
470
  Record<TName, BlockConfig<TName, TProps, TContent>>
465
471
  >,
472
+ context: {
473
+ nestingLevel: number;
474
+ },
466
475
  ) =>
467
476
  | {
468
477
  dom: HTMLElement | DocumentFragment;