@blocknote/core 0.37.0 → 0.39.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 (271) hide show
  1. package/dist/BlockNoteSchema-DmZ6UQfY.cjs +11 -0
  2. package/dist/BlockNoteSchema-DmZ6UQfY.cjs.map +1 -0
  3. package/dist/BlockNoteSchema-oR047ACf.js +4275 -0
  4. package/dist/BlockNoteSchema-oR047ACf.js.map +1 -0
  5. package/dist/blocknote.cjs +4 -12
  6. package/dist/blocknote.cjs.map +1 -1
  7. package/dist/blocknote.js +3311 -7230
  8. package/dist/blocknote.js.map +1 -1
  9. package/dist/blocks.cjs +2 -0
  10. package/dist/blocks.cjs.map +1 -0
  11. package/dist/blocks.js +71 -0
  12. package/dist/blocks.js.map +1 -0
  13. package/dist/{en-CvDoFvhc.js → en-Bq3Es3Np.js} +6 -12
  14. package/dist/en-Bq3Es3Np.js.map +1 -0
  15. package/dist/en-D3B48eJ7.cjs +2 -0
  16. package/dist/en-D3B48eJ7.cjs.map +1 -0
  17. package/dist/locales.cjs +1 -1
  18. package/dist/locales.cjs.map +1 -1
  19. package/dist/locales.js +109 -229
  20. package/dist/locales.js.map +1 -1
  21. package/dist/style.css +1 -1
  22. package/dist/tsconfig.tsbuildinfo +1 -0
  23. package/dist/webpack-stats.json +1 -1
  24. package/package.json +25 -22
  25. package/src/api/blockManipulation/commands/insertBlocks/insertBlocks.ts +1 -1
  26. package/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.ts +2 -2
  27. package/src/api/blockManipulation/commands/splitBlock/splitBlock.ts +34 -25
  28. package/src/api/blockManipulation/setupTestEnv.ts +0 -1
  29. package/src/api/clipboard/fromClipboard/handleFileInsertion.ts +4 -8
  30. package/src/api/clipboard/toClipboard/copyExtension.ts +1 -3
  31. package/src/api/exporters/html/externalHTMLExporter.ts +0 -1
  32. package/src/api/exporters/html/util/serializeBlocksExternalHTML.ts +128 -28
  33. package/src/api/exporters/html/util/serializeBlocksInternalHTML.ts +101 -41
  34. package/src/api/exporters/markdown/markdownExporter.ts +13 -22
  35. package/src/api/exporters/markdown/util/addSpacesToCheckboxesRehypePlugin.ts +2 -12
  36. package/src/api/parsers/html/parseHTML.ts +3 -2
  37. package/src/api/parsers/html/util/nestedLists.test.ts +8 -8
  38. package/src/api/parsers/markdown/parseMarkdown.ts +17 -14
  39. package/src/api/pmUtil.ts +1 -1
  40. package/src/api/positionMapping.test.ts +197 -33
  41. package/src/api/positionMapping.ts +4 -6
  42. package/src/blocks/Audio/block.ts +174 -0
  43. package/src/blocks/BlockNoteSchema.ts +59 -0
  44. package/src/blocks/Code/block.ts +303 -0
  45. package/src/blocks/Code/shiki.ts +73 -0
  46. package/src/blocks/File/block.ts +98 -0
  47. package/src/blocks/{FileBlockContent → File}/helpers/render/createAddFileButton.ts +8 -4
  48. package/src/blocks/{FileBlockContent → File}/helpers/render/createFileBlockWrapper.ts +16 -13
  49. package/src/blocks/{FileBlockContent → File}/helpers/render/createFileNameWithIcon.ts +15 -2
  50. package/src/blocks/{FileBlockContent → File}/helpers/render/createResizableFileBlockWrapper.ts +63 -19
  51. package/src/blocks/Heading/block.ts +138 -0
  52. package/src/blocks/Image/block.ts +190 -0
  53. package/src/blocks/ListItem/BulletListItem/block.ts +116 -0
  54. package/src/blocks/ListItem/CheckListItem/block.ts +175 -0
  55. package/src/blocks/ListItem/NumberedListItem/IndexingPlugin.ts +173 -0
  56. package/src/blocks/ListItem/NumberedListItem/block.ts +133 -0
  57. package/src/blocks/ListItem/ToggleListItem/block.ts +78 -0
  58. package/src/blocks/PageBreak/block.ts +72 -0
  59. package/src/blocks/{PageBreakBlockContent → PageBreak}/getPageBreakSlashMenuItems.ts +9 -7
  60. package/src/blocks/Paragraph/block.ts +80 -0
  61. package/src/blocks/Quote/block.ts +90 -0
  62. package/src/blocks/{TableBlockContent/TableBlockContent.ts → Table/block.ts} +169 -51
  63. package/src/blocks/ToggleWrapper/createToggleWrapper.ts +1 -1
  64. package/src/blocks/Video/block.ts +143 -0
  65. package/src/blocks/defaultBlockHelpers.ts +2 -2
  66. package/src/blocks/defaultBlockTypeGuards.ts +143 -174
  67. package/src/blocks/defaultBlocks.ts +107 -35
  68. package/src/blocks/defaultProps.ts +145 -4
  69. package/src/blocks/index.ts +26 -0
  70. package/src/blocks/utils/listItemEnterHandler.ts +42 -0
  71. package/src/editor/Block.css +54 -18
  72. package/src/editor/BlockNoteEditor.ts +265 -230
  73. package/src/editor/BlockNoteExtension.ts +92 -0
  74. package/src/editor/BlockNoteExtensions.ts +20 -16
  75. package/src/editor/defaultColors.ts +2 -2
  76. package/src/exporter/Exporter.ts +1 -1
  77. package/src/exporter/mapping.ts +1 -1
  78. package/src/extensions/BackgroundColor/BackgroundColorExtension.ts +3 -20
  79. package/src/extensions/BackgroundColor/BackgroundColorMark.ts +6 -8
  80. package/src/extensions/BlockChange/BlockChangePlugin.ts +2 -1
  81. package/src/extensions/Collaboration/__snapshots__/fork-yjs-snap-editor-forked.json +2 -2
  82. package/src/extensions/Collaboration/__snapshots__/fork-yjs-snap-editor.json +2 -2
  83. package/src/extensions/Collaboration/__snapshots__/fork-yjs-snap-forked.html +1 -1
  84. package/src/extensions/Collaboration/__snapshots__/fork-yjs-snap.html +1 -1
  85. package/src/extensions/Collaboration/schemaMigration/SchemaMigrationPlugin.ts +52 -0
  86. package/src/extensions/Collaboration/schemaMigration/migrationRules/index.ts +4 -0
  87. package/src/extensions/Collaboration/schemaMigration/migrationRules/migrationRule.ts +4 -0
  88. package/src/extensions/Collaboration/schemaMigration/migrationRules/moveColorAttributes.ts +78 -0
  89. package/src/extensions/Comments/CommentsPlugin.ts +2 -0
  90. package/src/extensions/FilePanel/FilePanelPlugin.ts +5 -10
  91. package/src/extensions/FormattingToolbar/FormattingToolbarPlugin.ts +1 -1
  92. package/src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts +4 -3
  93. package/src/extensions/Placeholder/PlaceholderPlugin.ts +2 -2
  94. package/src/extensions/PreviousBlockType/PreviousBlockTypePlugin.ts +1 -23
  95. package/src/extensions/SideMenu/SideMenuPlugin.ts +0 -2
  96. package/src/extensions/SuggestionMenu/SuggestionPlugin.ts +0 -5
  97. package/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.ts +6 -2
  98. package/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts +24 -17
  99. package/src/extensions/TableHandles/TableHandlesPlugin.ts +2 -2
  100. package/src/extensions/TextAlignment/TextAlignmentExtension.ts +5 -11
  101. package/src/extensions/TextColor/TextColorExtension.ts +3 -17
  102. package/src/extensions/TextColor/TextColorMark.ts +4 -9
  103. package/src/extensions/UniqueID/UniqueID.ts +6 -13
  104. package/src/i18n/locales/ar.ts +6 -12
  105. package/src/i18n/locales/de.ts +6 -12
  106. package/src/i18n/locales/en.ts +6 -12
  107. package/src/i18n/locales/es.ts +6 -12
  108. package/src/i18n/locales/fr.ts +6 -12
  109. package/src/i18n/locales/he.ts +6 -12
  110. package/src/i18n/locales/hr.ts +6 -12
  111. package/src/i18n/locales/is.ts +6 -12
  112. package/src/i18n/locales/it.ts +6 -12
  113. package/src/i18n/locales/ja.ts +6 -12
  114. package/src/i18n/locales/ko.ts +6 -12
  115. package/src/i18n/locales/nl.ts +6 -12
  116. package/src/i18n/locales/no.ts +6 -12
  117. package/src/i18n/locales/pl.ts +6 -12
  118. package/src/i18n/locales/pt.ts +6 -12
  119. package/src/i18n/locales/ru.ts +6 -12
  120. package/src/i18n/locales/sk.ts +6 -12
  121. package/src/i18n/locales/uk.ts +6 -12
  122. package/src/i18n/locales/vi.ts +6 -12
  123. package/src/i18n/locales/zh-tw.ts +6 -12
  124. package/src/i18n/locales/zh.ts +6 -12
  125. package/src/index.ts +2 -29
  126. package/src/schema/blocks/createSpec.ts +342 -169
  127. package/src/schema/blocks/internal.ts +77 -138
  128. package/src/schema/blocks/types.ts +264 -94
  129. package/src/schema/index.ts +1 -0
  130. package/src/schema/inlineContent/createSpec.ts +99 -21
  131. package/src/schema/inlineContent/internal.ts +16 -7
  132. package/src/schema/inlineContent/types.ts +24 -2
  133. package/src/schema/propTypes.ts +15 -9
  134. package/src/schema/schema.ts +209 -0
  135. package/src/schema/styles/createSpec.ts +79 -31
  136. package/src/schema/styles/internal.ts +61 -2
  137. package/src/schema/styles/types.ts +17 -3
  138. package/src/util/topo-sort.test.ts +125 -0
  139. package/src/util/topo-sort.ts +160 -0
  140. package/types/src/api/blockManipulation/commands/splitBlock/splitBlock.d.ts +2 -1
  141. package/types/src/api/blockManipulation/selections/selection.d.ts +1 -1
  142. package/types/src/api/blockManipulation/setupTestEnv.d.ts +29 -543
  143. package/types/src/api/exporters/html/util/serializeBlocksExternalHTML.d.ts +1 -1
  144. package/types/src/api/exporters/html/util/serializeBlocksInternalHTML.d.ts +1 -1
  145. package/types/src/api/exporters/markdown/markdownExporter.d.ts +1 -1
  146. package/types/src/api/parsers/html/parseHTML.d.ts +1 -1
  147. package/types/src/api/parsers/markdown/parseMarkdown.d.ts +2 -2
  148. package/types/src/api/pmUtil.d.ts +1 -1
  149. package/types/src/blocks/Audio/block.d.ts +58 -0
  150. package/types/src/blocks/BlockNoteSchema.d.ts +18 -0
  151. package/types/src/blocks/{CodeBlockContent/CodeBlockContent.d.ts → Code/block.d.ts} +25 -26
  152. package/types/src/blocks/Code/shiki.d.ts +4 -0
  153. package/types/src/blocks/File/block.d.ts +37 -0
  154. package/types/src/blocks/File/helpers/render/createAddFileButton.d.ts +6 -0
  155. package/types/src/blocks/File/helpers/render/createFileBlockWrapper.d.ts +25 -0
  156. package/types/src/blocks/{FileBlockContent → File}/helpers/render/createFileNameWithIcon.d.ts +6 -2
  157. package/types/src/blocks/File/helpers/render/createResizableFileBlockWrapper.d.ts +31 -0
  158. package/types/src/blocks/Heading/block.d.ts +71 -0
  159. package/types/src/blocks/Image/block.d.ts +102 -0
  160. package/types/src/blocks/ListItem/BulletListItem/block.d.ts +25 -0
  161. package/types/src/blocks/ListItem/CheckListItem/block.d.ts +33 -0
  162. package/types/src/blocks/ListItem/NumberedListItem/IndexingPlugin.d.ts +8 -0
  163. package/types/src/blocks/ListItem/NumberedListItem/block.d.ts +33 -0
  164. package/types/src/blocks/ListItem/ToggleListItem/block.d.ts +25 -0
  165. package/types/src/blocks/PageBreak/block.d.ts +11 -0
  166. package/types/src/blocks/{PageBreakBlockContent → PageBreak}/getPageBreakSlashMenuItems.d.ts +4 -2
  167. package/types/src/blocks/Paragraph/block.d.ts +25 -0
  168. package/types/src/blocks/Quote/block.d.ts +17 -0
  169. package/types/src/blocks/Table/block.d.ts +21 -0
  170. package/types/src/blocks/Video/block.d.ts +67 -0
  171. package/types/src/blocks/defaultBlockHelpers.d.ts +1 -1
  172. package/types/src/blocks/defaultBlockTypeGuards.d.ts +15 -36
  173. package/types/src/blocks/defaultBlocks.d.ts +221 -1060
  174. package/types/src/blocks/defaultProps.d.ts +17 -1
  175. package/types/src/blocks/index.d.ts +24 -0
  176. package/types/src/blocks/utils/listItemEnterHandler.d.ts +2 -0
  177. package/types/src/editor/BlockNoteEditor.d.ts +39 -75
  178. package/types/src/editor/BlockNoteExtension.d.ts +67 -0
  179. package/types/src/editor/BlockNoteExtensions.d.ts +2 -0
  180. package/types/src/editor/defaultColors.d.ts +8 -76
  181. package/types/src/exporter/Exporter.d.ts +1 -1
  182. package/types/src/exporter/mapping.d.ts +1 -1
  183. package/types/src/extensions/BackgroundColor/BackgroundColorMark.d.ts +4 -1
  184. package/types/src/extensions/Collaboration/schemaMigration/SchemaMigrationPlugin.d.ts +7 -0
  185. package/types/src/extensions/Collaboration/schemaMigration/migrationRules/index.d.ts +3 -0
  186. package/types/src/extensions/Collaboration/schemaMigration/migrationRules/migrationRule.d.ts +3 -0
  187. package/types/src/extensions/Collaboration/schemaMigration/migrationRules/moveColorAttributes.d.ts +2 -0
  188. package/types/src/extensions/Comments/CommentsPlugin.d.ts +3 -1
  189. package/types/src/extensions/FilePanel/FilePanelPlugin.d.ts +4 -4
  190. package/types/src/extensions/TextColor/TextColorMark.d.ts +4 -1
  191. package/types/src/i18n/locales/en.d.ts +1 -12
  192. package/types/src/i18n/locales/sk.d.ts +1 -12
  193. package/types/src/index.d.ts +2 -26
  194. package/types/src/schema/blocks/createSpec.d.ts +16 -36
  195. package/types/src/schema/blocks/internal.d.ts +11 -33
  196. package/types/src/schema/blocks/types.d.ts +181 -57
  197. package/types/src/schema/index.d.ts +1 -0
  198. package/types/src/schema/inlineContent/createSpec.d.ts +36 -2
  199. package/types/src/schema/inlineContent/internal.d.ts +7 -15
  200. package/types/src/schema/inlineContent/types.d.ts +15 -1
  201. package/types/src/schema/propTypes.d.ts +4 -4
  202. package/types/src/schema/schema.d.ts +40 -0
  203. package/types/src/schema/styles/createSpec.d.ts +6 -4
  204. package/types/src/schema/styles/internal.d.ts +6 -3
  205. package/types/src/schema/styles/types.d.ts +11 -2
  206. package/types/src/util/topo-sort.d.ts +18 -0
  207. package/types/src/util/topo-sort.test.d.ts +1 -0
  208. package/dist/en-CvDoFvhc.js.map +0 -1
  209. package/dist/en-ub2yVBX0.cjs +0 -2
  210. package/dist/en-ub2yVBX0.cjs.map +0 -1
  211. package/src/blocks/AudioBlockContent/AudioBlockContent.ts +0 -145
  212. package/src/blocks/CodeBlockContent/CodeBlockContent.ts +0 -445
  213. package/src/blocks/FileBlockContent/FileBlockContent.ts +0 -100
  214. package/src/blocks/HeadingBlockContent/HeadingBlockContent.ts +0 -159
  215. package/src/blocks/ImageBlockContent/ImageBlockContent.ts +0 -160
  216. package/src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.ts +0 -134
  217. package/src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.ts +0 -299
  218. package/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.ts +0 -86
  219. package/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.ts +0 -172
  220. package/src/blocks/ListItemBlockContent/ToggleListItemBlockContent/ToggleListItemBlockContent.ts +0 -104
  221. package/src/blocks/PageBreakBlockContent/PageBreakBlockContent.ts +0 -49
  222. package/src/blocks/PageBreakBlockContent/schema.ts +0 -40
  223. package/src/blocks/ParagraphBlockContent/ParagraphBlockContent.ts +0 -78
  224. package/src/blocks/QuoteBlockContent/QuoteBlockContent.ts +0 -121
  225. package/src/blocks/VideoBlockContent/VideoBlockContent.ts +0 -159
  226. package/src/editor/BlockNoteSchema.ts +0 -107
  227. package/src/editor/BlockNoteTipTapEditor.ts +0 -335
  228. package/src/util/esmDependencies.ts +0 -51
  229. package/types/src/blocks/AudioBlockContent/AudioBlockContent.d.ts +0 -99
  230. package/types/src/blocks/FileBlockContent/FileBlockContent.d.ts +0 -90
  231. package/types/src/blocks/FileBlockContent/helpers/render/createAddFileButton.d.ts +0 -6
  232. package/types/src/blocks/FileBlockContent/helpers/render/createFileBlockWrapper.d.ts +0 -9
  233. package/types/src/blocks/FileBlockContent/helpers/render/createResizableFileBlockWrapper.d.ts +0 -9
  234. package/types/src/blocks/HeadingBlockContent/HeadingBlockContent.d.ts +0 -67
  235. package/types/src/blocks/ImageBlockContent/ImageBlockContent.d.ts +0 -131
  236. package/types/src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.d.ts +0 -46
  237. package/types/src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.d.ts +0 -55
  238. package/types/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.d.ts +0 -2
  239. package/types/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.d.ts +0 -58
  240. package/types/src/blocks/ListItemBlockContent/ToggleListItemBlockContent/ToggleListItemBlockContent.d.ts +0 -46
  241. package/types/src/blocks/PageBreakBlockContent/PageBreakBlockContent.d.ts +0 -31
  242. package/types/src/blocks/PageBreakBlockContent/schema.d.ts +0 -86
  243. package/types/src/blocks/ParagraphBlockContent/ParagraphBlockContent.d.ts +0 -52
  244. package/types/src/blocks/QuoteBlockContent/QuoteBlockContent.d.ts +0 -52
  245. package/types/src/blocks/TableBlockContent/TableBlockContent.d.ts +0 -39
  246. package/types/src/blocks/VideoBlockContent/VideoBlockContent.d.ts +0 -131
  247. package/types/src/editor/BlockNoteSchema.d.ts +0 -34
  248. package/types/src/editor/BlockNoteTipTapEditor.d.ts +0 -43
  249. package/types/src/util/esmDependencies.d.ts +0 -24
  250. /package/src/blocks/{AudioBlockContent → Audio}/parseAudioElement.ts +0 -0
  251. /package/src/blocks/{FileBlockContent → File}/helpers/parse/parseEmbedElement.ts +0 -0
  252. /package/src/blocks/{FileBlockContent → File}/helpers/parse/parseFigureElement.ts +0 -0
  253. /package/src/blocks/{FileBlockContent → File}/helpers/toExternalHTML/createFigureWithCaption.ts +0 -0
  254. /package/src/blocks/{FileBlockContent → File}/helpers/toExternalHTML/createLinkWithCaption.ts +0 -0
  255. /package/src/blocks/{FileBlockContent → File/helpers}/uploadToTmpFilesDotOrg_DEV_ONLY.ts +0 -0
  256. /package/src/blocks/{ImageBlockContent → Image}/parseImageElement.ts +0 -0
  257. /package/src/blocks/{ListItemBlockContent → ListItem}/ListItemKeyboardShortcuts.ts +0 -0
  258. /package/src/blocks/{ListItemBlockContent → ListItem}/getListItemContent.ts +0 -0
  259. /package/src/blocks/{TableBlockContent → Table}/TableExtension.ts +0 -0
  260. /package/src/blocks/{VideoBlockContent → Video}/parseVideoElement.ts +0 -0
  261. /package/types/src/blocks/{AudioBlockContent → Audio}/parseAudioElement.d.ts +0 -0
  262. /package/types/src/blocks/{FileBlockContent → File}/helpers/parse/parseEmbedElement.d.ts +0 -0
  263. /package/types/src/blocks/{FileBlockContent → File}/helpers/parse/parseFigureElement.d.ts +0 -0
  264. /package/types/src/blocks/{FileBlockContent → File}/helpers/toExternalHTML/createFigureWithCaption.d.ts +0 -0
  265. /package/types/src/blocks/{FileBlockContent → File}/helpers/toExternalHTML/createLinkWithCaption.d.ts +0 -0
  266. /package/types/src/blocks/{FileBlockContent → File/helpers}/uploadToTmpFilesDotOrg_DEV_ONLY.d.ts +0 -0
  267. /package/types/src/blocks/{ImageBlockContent → Image}/parseImageElement.d.ts +0 -0
  268. /package/types/src/blocks/{ListItemBlockContent → ListItem}/ListItemKeyboardShortcuts.d.ts +0 -0
  269. /package/types/src/blocks/{ListItemBlockContent → ListItem}/getListItemContent.d.ts +0 -0
  270. /package/types/src/blocks/{TableBlockContent → Table}/TableExtension.d.ts +0 -0
  271. /package/types/src/blocks/{VideoBlockContent → Video}/parseVideoElement.d.ts +0 -0
@@ -0,0 +1,40 @@
1
+ import { BlockNoteEditor } from "../editor/BlockNoteEditor.js";
2
+ import { BlockNoDefaults, BlockSchema, BlockSpecs, InlineContentConfig, InlineContentSchema, InlineContentSpec, InlineContentSpecs, LooseBlockSpec, PartialBlockNoDefaults, StyleSchema, StyleSpecs } from "./index.js";
3
+ export declare class CustomBlockNoteSchema<BSchema extends BlockSchema, ISchema extends InlineContentSchema, SSchema extends StyleSchema> {
4
+ private opts;
5
+ readonly BlockNoteEditor: BlockNoteEditor<BSchema, ISchema, SSchema>;
6
+ readonly Block: BlockNoDefaults<BSchema, ISchema, SSchema>;
7
+ readonly PartialBlock: PartialBlockNoDefaults<BSchema, ISchema, SSchema>;
8
+ inlineContentSpecs: InlineContentSpecs;
9
+ styleSpecs: StyleSpecs;
10
+ blockSpecs: {
11
+ [K in keyof BSchema]: K extends string ? LooseBlockSpec<K, BSchema[K]["propSchema"], BSchema[K]["content"]> : never;
12
+ };
13
+ blockSchema: BSchema;
14
+ inlineContentSchema: ISchema;
15
+ styleSchema: SSchema;
16
+ constructor(opts: {
17
+ blockSpecs: BlockSpecs;
18
+ inlineContentSpecs: InlineContentSpecs;
19
+ styleSpecs: StyleSpecs;
20
+ });
21
+ private init;
22
+ /**
23
+ * Adds additional block specs to the current schema in a builder pattern.
24
+ * This method allows extending the schema after it has been created.
25
+ *
26
+ * @param additionalBlockSpecs - Additional block specs to add to the schema
27
+ * @returns The current schema instance for chaining
28
+ */
29
+ extend<AdditionalBlockSpecs extends BlockSpecs = Record<string, never>, AdditionalInlineContentSpecs extends Record<string, InlineContentSpec<InlineContentConfig>> = Record<string, never>, AdditionalStyleSpecs extends StyleSpecs = Record<string, never>>(opts: {
30
+ blockSpecs?: AdditionalBlockSpecs;
31
+ inlineContentSpecs?: AdditionalInlineContentSpecs;
32
+ styleSpecs?: AdditionalStyleSpecs;
33
+ }): CustomBlockNoteSchema<AdditionalBlockSpecs extends undefined | Record<string, never> ? BSchema : BSchema & {
34
+ [K in keyof AdditionalBlockSpecs]: K extends string ? AdditionalBlockSpecs[K]["config"] : never;
35
+ }, AdditionalInlineContentSpecs extends undefined | Record<string, never> ? ISchema : ISchema & {
36
+ [K in keyof AdditionalInlineContentSpecs]: AdditionalInlineContentSpecs[K]["config"];
37
+ }, AdditionalStyleSpecs extends undefined | Record<string, never> ? SSchema : SSchema & {
38
+ [K in keyof AdditionalStyleSpecs]: AdditionalStyleSpecs[K]["config"];
39
+ }>;
40
+ }
@@ -1,13 +1,15 @@
1
1
  import { ParseRule } from "@tiptap/pm/model";
2
2
  import { StyleConfig, StyleSpec } from "./types.js";
3
3
  export type CustomStyleImplementation<T extends StyleConfig> = {
4
- render: T["propSchema"] extends "boolean" ? () => {
4
+ render: (value: T["propSchema"] extends "boolean" ? undefined : string) => {
5
5
  dom: HTMLElement;
6
6
  contentDOM?: HTMLElement;
7
- } : (value: string) => {
7
+ };
8
+ toExternalHTML?: (value: T["propSchema"] extends "boolean" ? undefined : string) => {
8
9
  dom: HTMLElement;
9
10
  contentDOM?: HTMLElement;
10
11
  };
12
+ parse?: (element: HTMLElement) => (T["propSchema"] extends "boolean" ? true : string) | undefined;
11
13
  };
12
- export declare function getStyleParseRules(config: StyleConfig): ParseRule[];
13
- export declare function createStyleSpec<T extends StyleConfig>(styleConfig: T, styleImplementation: CustomStyleImplementation<T>): StyleSpec<T>;
14
+ export declare function getStyleParseRules<T extends StyleConfig>(config: T, customParseFunction?: CustomStyleImplementation<T>["parse"]): ParseRule[];
15
+ export declare function createStyleSpec<const T extends StyleConfig>(styleConfig: T, styleImplementation: CustomStyleImplementation<T>): StyleSpec<T>;
@@ -8,15 +8,18 @@ export declare function addStyleAttributes<SType extends string, PSchema extends
8
8
  dom: HTMLElement;
9
9
  contentDOM?: HTMLElement;
10
10
  };
11
- export declare function createInternalStyleSpec<T extends StyleConfig>(config: T, implementation: StyleImplementation): {
11
+ export declare function createInternalStyleSpec<T extends StyleConfig>(config: T, implementation: StyleImplementation<T>): {
12
12
  config: T;
13
- implementation: StyleImplementation;
13
+ implementation: StyleImplementation<T>;
14
14
  };
15
15
  export declare function createStyleSpecFromTipTapMark<T extends Mark, P extends StylePropSchema>(mark: T, propSchema: P): {
16
16
  config: {
17
17
  type: T["name"];
18
18
  propSchema: P;
19
19
  };
20
- implementation: StyleImplementation;
20
+ implementation: StyleImplementation<{
21
+ type: T["name"];
22
+ propSchema: P;
23
+ }>;
21
24
  };
22
25
  export declare function getStyleSchemaFromSpecs<T extends StyleSpecs>(specs: T): StyleSchemaFromSpecs<T>;
@@ -1,15 +1,24 @@
1
1
  import { Mark } from "@tiptap/core";
2
+ import { BlockNoteEditor } from "../../editor/BlockNoteEditor.js";
2
3
  export type StylePropSchema = "boolean" | "string";
3
4
  export type StyleConfig = {
4
5
  type: string;
5
6
  readonly propSchema: StylePropSchema;
6
7
  };
7
- export type StyleImplementation = {
8
+ export type StyleImplementation<T extends StyleConfig> = {
8
9
  mark: Mark;
10
+ render: (value: T["propSchema"] extends "boolean" ? undefined : string, editor: BlockNoteEditor<any, any, any>) => {
11
+ dom: HTMLElement;
12
+ contentDOM?: HTMLElement;
13
+ };
14
+ toExternalHTML?: (value: T["propSchema"] extends "boolean" ? undefined : string, editor: BlockNoteEditor<any, any, any>) => {
15
+ dom: HTMLElement;
16
+ contentDOM?: HTMLElement;
17
+ };
9
18
  };
10
19
  export type StyleSpec<T extends StyleConfig> = {
11
20
  config: T;
12
- implementation: StyleImplementation;
21
+ implementation: StyleImplementation<T>;
13
22
  };
14
23
  export type StyleSchema = Record<string, StyleConfig>;
15
24
  export type StyleSpecs = Record<string, StyleSpec<StyleConfig>>;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Instead of depending on the NPM package, we vendor this file from https://github.com/n1ru4l/toposort/blob/main/src/toposort.ts (MIT)
3
+ *
4
+ * There was a recent publish, despite not having been updated in 2 years, which is suspicious.
5
+ *
6
+ * This file is also simple enough that we can maintain it ourselves.
7
+ */
8
+ export type DirectedAcyclicGraph = Map<string, Iterable<string>>;
9
+ export type DependencyGraph = DirectedAcyclicGraph;
10
+ export type TaskList = Array<Set<string>>;
11
+ export type NodeId = string;
12
+ export type DependencyMap = Map<NodeId, Set<NodeId>>;
13
+ export declare function toposort(dag: DirectedAcyclicGraph): TaskList;
14
+ export declare function toposortReverse(deps: DependencyGraph): TaskList;
15
+ export declare function createDependencyGraph(): DependencyMap;
16
+ export declare function addDependency(graph: DependencyMap, from: NodeId, to: NodeId): DependencyMap;
17
+ export declare function removeDependency(graph: DependencyMap, from: NodeId, to: NodeId): boolean;
18
+ export declare function hasDependency(graph: DependencyMap, from: NodeId, to: NodeId): boolean;
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-CvDoFvhc.js","sources":["../src/i18n/locales/en.ts"],"sourcesContent":["export const en = {\n slash_menu: {\n heading: {\n title: \"Heading 1\",\n subtext: \"Top-level heading\",\n aliases: [\"h\", \"heading1\", \"h1\"],\n group: \"Headings\",\n },\n heading_2: {\n title: \"Heading 2\",\n subtext: \"Key section heading\",\n aliases: [\"h2\", \"heading2\", \"subheading\"],\n group: \"Headings\",\n },\n heading_3: {\n title: \"Heading 3\",\n subtext: \"Subsection and group heading\",\n aliases: [\"h3\", \"heading3\", \"subheading\"],\n group: \"Headings\",\n },\n heading_4: {\n title: \"Heading 4\",\n subtext: \"Minor subsection heading\",\n aliases: [\"h4\", \"heading4\", \"subheading4\"],\n group: \"Subheadings\",\n },\n heading_5: {\n title: \"Heading 5\",\n subtext: \"Small subsection heading\",\n aliases: [\"h5\", \"heading5\", \"subheading5\"],\n group: \"Subheadings\",\n },\n heading_6: {\n title: \"Heading 6\",\n subtext: \"Lowest-level heading\",\n aliases: [\"h6\", \"heading6\", \"subheading6\"],\n group: \"Subheadings\",\n },\n toggle_heading: {\n title: \"Toggle Heading 1\",\n subtext: \"Toggleable top-level heading\",\n aliases: [\"h\", \"heading1\", \"h1\", \"collapsable\"],\n group: \"Subheadings\",\n },\n toggle_heading_2: {\n title: \"Toggle Heading 2\",\n subtext: \"Toggleable key section heading\",\n aliases: [\"h2\", \"heading2\", \"subheading\", \"collapsable\"],\n group: \"Subheadings\",\n },\n toggle_heading_3: {\n title: \"Toggle Heading 3\",\n subtext: \"Toggleable subsection and group heading\",\n aliases: [\"h3\", \"heading3\", \"subheading\", \"collapsable\"],\n group: \"Subheadings\",\n },\n quote: {\n title: \"Quote\",\n subtext: \"Quote or excerpt\",\n aliases: [\"quotation\", \"blockquote\", \"bq\"],\n group: \"Basic blocks\",\n },\n toggle_list: {\n title: \"Toggle List\",\n subtext: \"List with hideable sub-items\",\n aliases: [\"li\", \"list\", \"toggleList\", \"toggle list\", \"collapsable list\"],\n group: \"Basic blocks\",\n },\n numbered_list: {\n title: \"Numbered List\",\n subtext: \"List with ordered items\",\n aliases: [\"ol\", \"li\", \"list\", \"numberedlist\", \"numbered list\"],\n group: \"Basic blocks\",\n },\n bullet_list: {\n title: \"Bullet List\",\n subtext: \"List with unordered items\",\n aliases: [\"ul\", \"li\", \"list\", \"bulletlist\", \"bullet list\"],\n group: \"Basic blocks\",\n },\n check_list: {\n title: \"Check List\",\n subtext: \"List with checkboxes\",\n aliases: [\n \"ul\",\n \"li\",\n \"list\",\n \"checklist\",\n \"check list\",\n \"checked list\",\n \"checkbox\",\n ],\n group: \"Basic blocks\",\n },\n paragraph: {\n title: \"Paragraph\",\n subtext: \"The body of your document\",\n aliases: [\"p\", \"paragraph\"],\n group: \"Basic blocks\",\n },\n code_block: {\n title: \"Code Block\",\n subtext: \"Code block with syntax highlighting\",\n aliases: [\"code\", \"pre\"],\n group: \"Basic blocks\",\n },\n page_break: {\n title: \"Page Break\",\n subtext: \"Page separator\",\n aliases: [\"page\", \"break\", \"separator\"],\n group: \"Basic blocks\",\n },\n table: {\n title: \"Table\",\n subtext: \"Table with editable cells\",\n aliases: [\"table\"],\n group: \"Advanced\",\n },\n image: {\n title: \"Image\",\n subtext: \"Resizable image with caption\",\n aliases: [\n \"image\",\n \"imageUpload\",\n \"upload\",\n \"img\",\n \"picture\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n video: {\n title: \"Video\",\n subtext: \"Resizable video with caption\",\n aliases: [\n \"video\",\n \"videoUpload\",\n \"upload\",\n \"mp4\",\n \"film\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n audio: {\n title: \"Audio\",\n subtext: \"Embedded audio with caption\",\n aliases: [\n \"audio\",\n \"audioUpload\",\n \"upload\",\n \"mp3\",\n \"sound\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n file: {\n title: \"File\",\n subtext: \"Embedded file\",\n aliases: [\"file\", \"upload\", \"embed\", \"media\", \"url\"],\n group: \"Media\",\n },\n emoji: {\n title: \"Emoji\",\n subtext: \"Search for and insert an emoji\",\n aliases: [\"emoji\", \"emote\", \"emotion\", \"face\"],\n group: \"Others\",\n },\n },\n placeholders: {\n default: \"Enter text or type '/' for commands\",\n heading: \"Heading\",\n toggleListItem: \"Toggle\",\n bulletListItem: \"List\",\n numberedListItem: \"List\",\n checkListItem: \"List\",\n emptyDocument: undefined,\n new_comment: \"Write a comment...\",\n edit_comment: \"Edit comment...\",\n comment_reply: \"Add comment...\",\n } as Record<string | \"default\" | \"emptyDocument\", string | undefined>,\n file_blocks: {\n image: {\n add_button_text: \"Add image\",\n },\n video: {\n add_button_text: \"Add video\",\n },\n audio: {\n add_button_text: \"Add audio\",\n },\n file: {\n add_button_text: \"Add file\",\n },\n },\n toggle_blocks: {\n add_block_button: \"Empty toggle. Click to add a block.\",\n },\n // from react package:\n side_menu: {\n add_block_label: \"Add block\",\n drag_handle_label: \"Open block menu\",\n },\n drag_handle: {\n delete_menuitem: \"Delete\",\n colors_menuitem: \"Colors\",\n header_row_menuitem: \"Header row\",\n header_column_menuitem: \"Header column\",\n },\n table_handle: {\n delete_column_menuitem: \"Delete column\",\n delete_row_menuitem: \"Delete row\",\n add_left_menuitem: \"Add column left\",\n add_right_menuitem: \"Add column right\",\n add_above_menuitem: \"Add row above\",\n add_below_menuitem: \"Add row below\",\n split_cell_menuitem: \"Split cell\",\n merge_cells_menuitem: \"Merge cells\",\n background_color_menuitem: \"Background color\",\n },\n suggestion_menu: {\n no_items_title: \"No items found\",\n },\n color_picker: {\n text_title: \"Text\",\n background_title: \"Background\",\n colors: {\n default: \"Default\",\n gray: \"Gray\",\n brown: \"Brown\",\n red: \"Red\",\n orange: \"Orange\",\n yellow: \"Yellow\",\n green: \"Green\",\n blue: \"Blue\",\n purple: \"Purple\",\n pink: \"Pink\",\n },\n },\n\n formatting_toolbar: {\n bold: {\n tooltip: \"Bold\",\n secondary_tooltip: \"Mod+B\",\n },\n italic: {\n tooltip: \"Italic\",\n secondary_tooltip: \"Mod+I\",\n },\n underline: {\n tooltip: \"Underline\",\n secondary_tooltip: \"Mod+U\",\n },\n strike: {\n tooltip: \"Strike\",\n secondary_tooltip: \"Mod+Shift+S\",\n },\n code: {\n tooltip: \"Code\",\n secondary_tooltip: \"\",\n },\n colors: {\n tooltip: \"Colors\",\n },\n link: {\n tooltip: \"Create link\",\n secondary_tooltip: \"Mod+K\",\n },\n file_caption: {\n tooltip: \"Edit caption\",\n input_placeholder: \"Edit caption\",\n },\n file_replace: {\n tooltip: {\n image: \"Replace image\",\n video: \"Replace video\",\n audio: \"Replace audio\",\n file: \"Replace file\",\n } as Record<string, string>,\n },\n file_rename: {\n tooltip: {\n image: \"Rename image\",\n video: \"Rename video\",\n audio: \"Rename audio\",\n file: \"Rename file\",\n } as Record<string, string>,\n input_placeholder: {\n image: \"Rename image\",\n video: \"Rename video\",\n audio: \"Rename audio\",\n file: \"Rename file\",\n } as Record<string, string>,\n },\n file_download: {\n tooltip: {\n image: \"Download image\",\n video: \"Download video\",\n audio: \"Download audio\",\n file: \"Download file\",\n } as Record<string, string>,\n },\n file_delete: {\n tooltip: {\n image: \"Delete image\",\n video: \"Delete video\",\n audio: \"Delete audio\",\n file: \"Delete file\",\n } as Record<string, string>,\n },\n file_preview_toggle: {\n tooltip: \"Toggle preview\",\n },\n nest: {\n tooltip: \"Nest block\",\n secondary_tooltip: \"Tab\",\n },\n unnest: {\n tooltip: \"Unnest block\",\n secondary_tooltip: \"Shift+Tab\",\n },\n align_left: {\n tooltip: \"Align text left\",\n },\n align_center: {\n tooltip: \"Align text center\",\n },\n align_right: {\n tooltip: \"Align text right\",\n },\n align_justify: {\n tooltip: \"Justify text\",\n },\n table_cell_merge: {\n tooltip: \"Merge cells\",\n },\n comment: {\n tooltip: \"Add comment\",\n },\n },\n file_panel: {\n upload: {\n title: \"Upload\",\n file_placeholder: {\n image: \"Upload image\",\n video: \"Upload video\",\n audio: \"Upload audio\",\n file: \"Upload file\",\n } as Record<string, string>,\n upload_error: \"Error: Upload failed\",\n },\n embed: {\n title: \"Embed\",\n embed_button: {\n image: \"Embed image\",\n video: \"Embed video\",\n audio: \"Embed audio\",\n file: \"Embed file\",\n } as Record<string, string>,\n url_placeholder: \"Enter URL\",\n },\n },\n link_toolbar: {\n delete: {\n tooltip: \"Remove link\",\n },\n edit: {\n text: \"Edit link\",\n tooltip: \"Edit\",\n },\n open: {\n tooltip: \"Open in new tab\",\n },\n form: {\n title_placeholder: \"Edit title\",\n url_placeholder: \"Edit URL\",\n },\n },\n comments: {\n edited: \"edited\",\n save_button_text: \"Save\",\n cancel_button_text: \"Cancel\",\n actions: {\n add_reaction: \"Add reaction\",\n resolve: \"Resolve\",\n edit_comment: \"Edit comment\",\n delete_comment: \"Delete comment\",\n more_actions: \"More actions\",\n },\n reactions: {\n reacted_by: \"Reacted by\",\n },\n sidebar: {\n marked_as_resolved: \"Marked as resolved\",\n more_replies: (count: number) => `${count} more replies`,\n },\n },\n generic: {\n ctrl_shortcut: \"Ctrl\",\n },\n};\n"],"names":["en","count"],"mappings":"AAAO,MAAMA,IAAK;AAAA,EAChB,YAAY;AAAA,IACV,SAAS;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,KAAK,YAAY,IAAI;AAAA,MAC/B,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,YAAY;AAAA,MACxC,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,YAAY;AAAA,MACxC,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,aAAa;AAAA,MACzC,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,aAAa;AAAA,MACzC,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,aAAa;AAAA,MACzC,OAAO;AAAA,IACT;AAAA,IACA,gBAAgB;AAAA,MACd,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,KAAK,YAAY,MAAM,aAAa;AAAA,MAC9C,OAAO;AAAA,IACT;AAAA,IACA,kBAAkB;AAAA,MAChB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,cAAc,aAAa;AAAA,MACvD,OAAO;AAAA,IACT;AAAA,IACA,kBAAkB;AAAA,MAChB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,YAAY,cAAc,aAAa;AAAA,MACvD,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,aAAa,cAAc,IAAI;AAAA,MACzC,OAAO;AAAA,IACT;AAAA,IACA,aAAa;AAAA,MACX,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,QAAQ,cAAc,eAAe,kBAAkB;AAAA,MACvE,OAAO;AAAA,IACT;AAAA,IACA,eAAe;AAAA,MACb,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,MAAM,QAAQ,gBAAgB,eAAe;AAAA,MAC7D,OAAO;AAAA,IACT;AAAA,IACA,aAAa;AAAA,MACX,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,MAAM,MAAM,QAAQ,cAAc,aAAa;AAAA,MACzD,OAAO;AAAA,IACT;AAAA,IACA,YAAY;AAAA,MACV,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,KAAK,WAAW;AAAA,MAC1B,OAAO;AAAA,IACT;AAAA,IACA,YAAY;AAAA,MACV,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,QAAQ,KAAK;AAAA,MACvB,OAAO;AAAA,IACT;AAAA,IACA,YAAY;AAAA,MACV,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,QAAQ,SAAS,WAAW;AAAA,MACtC,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,OAAO;AAAA,MACjB,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS;AAAA,QACP;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,OAAO;AAAA,IACT;AAAA,IACA,MAAM;AAAA,MACJ,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,QAAQ,UAAU,SAAS,SAAS,KAAK;AAAA,MACnD,OAAO;AAAA,IACT;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,SAAS,CAAC,SAAS,SAAS,WAAW,MAAM;AAAA,MAC7C,OAAO;AAAA,IAAA;AAAA,EAEX;AAAA,EACA,cAAc;AAAA,IACZ,SAAS;AAAA,IACT,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,eAAe;AAAA,IACf,aAAa;AAAA,IACb,cAAc;AAAA,IACd,eAAe;AAAA,EACjB;AAAA,EACA,aAAa;AAAA,IACX,OAAO;AAAA,MACL,iBAAiB;AAAA,IACnB;AAAA,IACA,OAAO;AAAA,MACL,iBAAiB;AAAA,IACnB;AAAA,IACA,OAAO;AAAA,MACL,iBAAiB;AAAA,IACnB;AAAA,IACA,MAAM;AAAA,MACJ,iBAAiB;AAAA,IAAA;AAAA,EAErB;AAAA,EACA,eAAe;AAAA,IACb,kBAAkB;AAAA,EACpB;AAAA;AAAA,EAEA,WAAW;AAAA,IACT,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,EACrB;AAAA,EACA,aAAa;AAAA,IACX,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,qBAAqB;AAAA,IACrB,wBAAwB;AAAA,EAC1B;AAAA,EACA,cAAc;AAAA,IACZ,wBAAwB;AAAA,IACxB,qBAAqB;AAAA,IACrB,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,oBAAoB;AAAA,IACpB,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,IACtB,2BAA2B;AAAA,EAC7B;AAAA,EACA,iBAAiB;AAAA,IACf,gBAAgB;AAAA,EAClB;AAAA,EACA,cAAc;AAAA,IACZ,YAAY;AAAA,IACZ,kBAAkB;AAAA,IAClB,QAAQ;AAAA,MACN,SAAS;AAAA,MACT,MAAM;AAAA,MACN,OAAO;AAAA,MACP,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA,IAAA;AAAA,EAEV;AAAA,EAEA,oBAAoB;AAAA,IAClB,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,QAAQ;AAAA,MACN,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,WAAW;AAAA,MACT,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,QAAQ;AAAA,MACN,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,QAAQ;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,mBAAmB;AAAA,QACjB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,qBAAqB;AAAA,MACnB,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,QAAQ;AAAA,MACN,SAAS;AAAA,MACT,mBAAmB;AAAA,IACrB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,IACX;AAAA,IACA,kBAAkB;AAAA,MAChB,SAAS;AAAA,IACX;AAAA,IACA,SAAS;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,EAEb;AAAA,EACA,YAAY;AAAA,IACV,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,kBAAkB;AAAA,QAChB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,cAAc;AAAA,IAChB;AAAA,IACA,OAAO;AAAA,MACL,OAAO;AAAA,MACP,cAAc;AAAA,QACZ,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,iBAAiB;AAAA,IAAA;AAAA,EAErB;AAAA,EACA,cAAc;AAAA,IACZ,QAAQ;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,mBAAmB;AAAA,MACnB,iBAAiB;AAAA,IAAA;AAAA,EAErB;AAAA,EACA,UAAU;AAAA,IACR,QAAQ;AAAA,IACR,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,SAAS;AAAA,MACP,cAAc;AAAA,MACd,SAAS;AAAA,MACT,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,cAAc;AAAA,IAChB;AAAA,IACA,WAAW;AAAA,MACT,YAAY;AAAA,IACd;AAAA,IACA,SAAS;AAAA,MACP,oBAAoB;AAAA,MACpB,cAAc,CAACC,MAAkB,GAAGA,CAAK;AAAA,IAAA;AAAA,EAE7C;AAAA,EACA,SAAS;AAAA,IACP,eAAe;AAAA,EAAA;AAEnB;"}
@@ -1,2 +0,0 @@
1
- "use strict";const t={slash_menu:{heading:{title:"Heading 1",subtext:"Top-level heading",aliases:["h","heading1","h1"],group:"Headings"},heading_2:{title:"Heading 2",subtext:"Key section heading",aliases:["h2","heading2","subheading"],group:"Headings"},heading_3:{title:"Heading 3",subtext:"Subsection and group heading",aliases:["h3","heading3","subheading"],group:"Headings"},heading_4:{title:"Heading 4",subtext:"Minor subsection heading",aliases:["h4","heading4","subheading4"],group:"Subheadings"},heading_5:{title:"Heading 5",subtext:"Small subsection heading",aliases:["h5","heading5","subheading5"],group:"Subheadings"},heading_6:{title:"Heading 6",subtext:"Lowest-level heading",aliases:["h6","heading6","subheading6"],group:"Subheadings"},toggle_heading:{title:"Toggle Heading 1",subtext:"Toggleable top-level heading",aliases:["h","heading1","h1","collapsable"],group:"Subheadings"},toggle_heading_2:{title:"Toggle Heading 2",subtext:"Toggleable key section heading",aliases:["h2","heading2","subheading","collapsable"],group:"Subheadings"},toggle_heading_3:{title:"Toggle Heading 3",subtext:"Toggleable subsection and group heading",aliases:["h3","heading3","subheading","collapsable"],group:"Subheadings"},quote:{title:"Quote",subtext:"Quote or excerpt",aliases:["quotation","blockquote","bq"],group:"Basic blocks"},toggle_list:{title:"Toggle List",subtext:"List with hideable sub-items",aliases:["li","list","toggleList","toggle list","collapsable list"],group:"Basic blocks"},numbered_list:{title:"Numbered List",subtext:"List with ordered items",aliases:["ol","li","list","numberedlist","numbered list"],group:"Basic blocks"},bullet_list:{title:"Bullet List",subtext:"List with unordered items",aliases:["ul","li","list","bulletlist","bullet list"],group:"Basic blocks"},check_list:{title:"Check List",subtext:"List with checkboxes",aliases:["ul","li","list","checklist","check list","checked list","checkbox"],group:"Basic blocks"},paragraph:{title:"Paragraph",subtext:"The body of your document",aliases:["p","paragraph"],group:"Basic blocks"},code_block:{title:"Code Block",subtext:"Code block with syntax highlighting",aliases:["code","pre"],group:"Basic blocks"},page_break:{title:"Page Break",subtext:"Page separator",aliases:["page","break","separator"],group:"Basic blocks"},table:{title:"Table",subtext:"Table with editable cells",aliases:["table"],group:"Advanced"},image:{title:"Image",subtext:"Resizable image with caption",aliases:["image","imageUpload","upload","img","picture","media","url"],group:"Media"},video:{title:"Video",subtext:"Resizable video with caption",aliases:["video","videoUpload","upload","mp4","film","media","url"],group:"Media"},audio:{title:"Audio",subtext:"Embedded audio with caption",aliases:["audio","audioUpload","upload","mp3","sound","media","url"],group:"Media"},file:{title:"File",subtext:"Embedded file",aliases:["file","upload","embed","media","url"],group:"Media"},emoji:{title:"Emoji",subtext:"Search for and insert an emoji",aliases:["emoji","emote","emotion","face"],group:"Others"}},placeholders:{default:"Enter text or type '/' for commands",heading:"Heading",toggleListItem:"Toggle",bulletListItem:"List",numberedListItem:"List",checkListItem:"List",emptyDocument:void 0,new_comment:"Write a comment...",edit_comment:"Edit comment...",comment_reply:"Add comment..."},file_blocks:{image:{add_button_text:"Add image"},video:{add_button_text:"Add video"},audio:{add_button_text:"Add audio"},file:{add_button_text:"Add file"}},toggle_blocks:{add_block_button:"Empty toggle. Click to add a block."},side_menu:{add_block_label:"Add block",drag_handle_label:"Open block menu"},drag_handle:{delete_menuitem:"Delete",colors_menuitem:"Colors",header_row_menuitem:"Header row",header_column_menuitem:"Header column"},table_handle:{delete_column_menuitem:"Delete column",delete_row_menuitem:"Delete row",add_left_menuitem:"Add column left",add_right_menuitem:"Add column right",add_above_menuitem:"Add row above",add_below_menuitem:"Add row below",split_cell_menuitem:"Split cell",merge_cells_menuitem:"Merge cells",background_color_menuitem:"Background color"},suggestion_menu:{no_items_title:"No items found"},color_picker:{text_title:"Text",background_title:"Background",colors:{default:"Default",gray:"Gray",brown:"Brown",red:"Red",orange:"Orange",yellow:"Yellow",green:"Green",blue:"Blue",purple:"Purple",pink:"Pink"}},formatting_toolbar:{bold:{tooltip:"Bold",secondary_tooltip:"Mod+B"},italic:{tooltip:"Italic",secondary_tooltip:"Mod+I"},underline:{tooltip:"Underline",secondary_tooltip:"Mod+U"},strike:{tooltip:"Strike",secondary_tooltip:"Mod+Shift+S"},code:{tooltip:"Code",secondary_tooltip:""},colors:{tooltip:"Colors"},link:{tooltip:"Create link",secondary_tooltip:"Mod+K"},file_caption:{tooltip:"Edit caption",input_placeholder:"Edit caption"},file_replace:{tooltip:{image:"Replace image",video:"Replace video",audio:"Replace audio",file:"Replace file"}},file_rename:{tooltip:{image:"Rename image",video:"Rename video",audio:"Rename audio",file:"Rename file"},input_placeholder:{image:"Rename image",video:"Rename video",audio:"Rename audio",file:"Rename file"}},file_download:{tooltip:{image:"Download image",video:"Download video",audio:"Download audio",file:"Download file"}},file_delete:{tooltip:{image:"Delete image",video:"Delete video",audio:"Delete audio",file:"Delete file"}},file_preview_toggle:{tooltip:"Toggle preview"},nest:{tooltip:"Nest block",secondary_tooltip:"Tab"},unnest:{tooltip:"Unnest block",secondary_tooltip:"Shift+Tab"},align_left:{tooltip:"Align text left"},align_center:{tooltip:"Align text center"},align_right:{tooltip:"Align text right"},align_justify:{tooltip:"Justify text"},table_cell_merge:{tooltip:"Merge cells"},comment:{tooltip:"Add comment"}},file_panel:{upload:{title:"Upload",file_placeholder:{image:"Upload image",video:"Upload video",audio:"Upload audio",file:"Upload file"},upload_error:"Error: Upload failed"},embed:{title:"Embed",embed_button:{image:"Embed image",video:"Embed video",audio:"Embed audio",file:"Embed file"},url_placeholder:"Enter URL"}},link_toolbar:{delete:{tooltip:"Remove link"},edit:{text:"Edit link",tooltip:"Edit"},open:{tooltip:"Open in new tab"},form:{title_placeholder:"Edit title",url_placeholder:"Edit URL"}},comments:{edited:"edited",save_button_text:"Save",cancel_button_text:"Cancel",actions:{add_reaction:"Add reaction",resolve:"Resolve",edit_comment:"Edit comment",delete_comment:"Delete comment",more_actions:"More actions"},reactions:{reacted_by:"Reacted by"},sidebar:{marked_as_resolved:"Marked as resolved",more_replies:e=>`${e} more replies`}},generic:{ctrl_shortcut:"Ctrl"}};exports.en=t;
2
- //# sourceMappingURL=en-ub2yVBX0.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-ub2yVBX0.cjs","sources":["../src/i18n/locales/en.ts"],"sourcesContent":["export const en = {\n slash_menu: {\n heading: {\n title: \"Heading 1\",\n subtext: \"Top-level heading\",\n aliases: [\"h\", \"heading1\", \"h1\"],\n group: \"Headings\",\n },\n heading_2: {\n title: \"Heading 2\",\n subtext: \"Key section heading\",\n aliases: [\"h2\", \"heading2\", \"subheading\"],\n group: \"Headings\",\n },\n heading_3: {\n title: \"Heading 3\",\n subtext: \"Subsection and group heading\",\n aliases: [\"h3\", \"heading3\", \"subheading\"],\n group: \"Headings\",\n },\n heading_4: {\n title: \"Heading 4\",\n subtext: \"Minor subsection heading\",\n aliases: [\"h4\", \"heading4\", \"subheading4\"],\n group: \"Subheadings\",\n },\n heading_5: {\n title: \"Heading 5\",\n subtext: \"Small subsection heading\",\n aliases: [\"h5\", \"heading5\", \"subheading5\"],\n group: \"Subheadings\",\n },\n heading_6: {\n title: \"Heading 6\",\n subtext: \"Lowest-level heading\",\n aliases: [\"h6\", \"heading6\", \"subheading6\"],\n group: \"Subheadings\",\n },\n toggle_heading: {\n title: \"Toggle Heading 1\",\n subtext: \"Toggleable top-level heading\",\n aliases: [\"h\", \"heading1\", \"h1\", \"collapsable\"],\n group: \"Subheadings\",\n },\n toggle_heading_2: {\n title: \"Toggle Heading 2\",\n subtext: \"Toggleable key section heading\",\n aliases: [\"h2\", \"heading2\", \"subheading\", \"collapsable\"],\n group: \"Subheadings\",\n },\n toggle_heading_3: {\n title: \"Toggle Heading 3\",\n subtext: \"Toggleable subsection and group heading\",\n aliases: [\"h3\", \"heading3\", \"subheading\", \"collapsable\"],\n group: \"Subheadings\",\n },\n quote: {\n title: \"Quote\",\n subtext: \"Quote or excerpt\",\n aliases: [\"quotation\", \"blockquote\", \"bq\"],\n group: \"Basic blocks\",\n },\n toggle_list: {\n title: \"Toggle List\",\n subtext: \"List with hideable sub-items\",\n aliases: [\"li\", \"list\", \"toggleList\", \"toggle list\", \"collapsable list\"],\n group: \"Basic blocks\",\n },\n numbered_list: {\n title: \"Numbered List\",\n subtext: \"List with ordered items\",\n aliases: [\"ol\", \"li\", \"list\", \"numberedlist\", \"numbered list\"],\n group: \"Basic blocks\",\n },\n bullet_list: {\n title: \"Bullet List\",\n subtext: \"List with unordered items\",\n aliases: [\"ul\", \"li\", \"list\", \"bulletlist\", \"bullet list\"],\n group: \"Basic blocks\",\n },\n check_list: {\n title: \"Check List\",\n subtext: \"List with checkboxes\",\n aliases: [\n \"ul\",\n \"li\",\n \"list\",\n \"checklist\",\n \"check list\",\n \"checked list\",\n \"checkbox\",\n ],\n group: \"Basic blocks\",\n },\n paragraph: {\n title: \"Paragraph\",\n subtext: \"The body of your document\",\n aliases: [\"p\", \"paragraph\"],\n group: \"Basic blocks\",\n },\n code_block: {\n title: \"Code Block\",\n subtext: \"Code block with syntax highlighting\",\n aliases: [\"code\", \"pre\"],\n group: \"Basic blocks\",\n },\n page_break: {\n title: \"Page Break\",\n subtext: \"Page separator\",\n aliases: [\"page\", \"break\", \"separator\"],\n group: \"Basic blocks\",\n },\n table: {\n title: \"Table\",\n subtext: \"Table with editable cells\",\n aliases: [\"table\"],\n group: \"Advanced\",\n },\n image: {\n title: \"Image\",\n subtext: \"Resizable image with caption\",\n aliases: [\n \"image\",\n \"imageUpload\",\n \"upload\",\n \"img\",\n \"picture\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n video: {\n title: \"Video\",\n subtext: \"Resizable video with caption\",\n aliases: [\n \"video\",\n \"videoUpload\",\n \"upload\",\n \"mp4\",\n \"film\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n audio: {\n title: \"Audio\",\n subtext: \"Embedded audio with caption\",\n aliases: [\n \"audio\",\n \"audioUpload\",\n \"upload\",\n \"mp3\",\n \"sound\",\n \"media\",\n \"url\",\n ],\n group: \"Media\",\n },\n file: {\n title: \"File\",\n subtext: \"Embedded file\",\n aliases: [\"file\", \"upload\", \"embed\", \"media\", \"url\"],\n group: \"Media\",\n },\n emoji: {\n title: \"Emoji\",\n subtext: \"Search for and insert an emoji\",\n aliases: [\"emoji\", \"emote\", \"emotion\", \"face\"],\n group: \"Others\",\n },\n },\n placeholders: {\n default: \"Enter text or type '/' for commands\",\n heading: \"Heading\",\n toggleListItem: \"Toggle\",\n bulletListItem: \"List\",\n numberedListItem: \"List\",\n checkListItem: \"List\",\n emptyDocument: undefined,\n new_comment: \"Write a comment...\",\n edit_comment: \"Edit comment...\",\n comment_reply: \"Add comment...\",\n } as Record<string | \"default\" | \"emptyDocument\", string | undefined>,\n file_blocks: {\n image: {\n add_button_text: \"Add image\",\n },\n video: {\n add_button_text: \"Add video\",\n },\n audio: {\n add_button_text: \"Add audio\",\n },\n file: {\n add_button_text: \"Add file\",\n },\n },\n toggle_blocks: {\n add_block_button: \"Empty toggle. Click to add a block.\",\n },\n // from react package:\n side_menu: {\n add_block_label: \"Add block\",\n drag_handle_label: \"Open block menu\",\n },\n drag_handle: {\n delete_menuitem: \"Delete\",\n colors_menuitem: \"Colors\",\n header_row_menuitem: \"Header row\",\n header_column_menuitem: \"Header column\",\n },\n table_handle: {\n delete_column_menuitem: \"Delete column\",\n delete_row_menuitem: \"Delete row\",\n add_left_menuitem: \"Add column left\",\n add_right_menuitem: \"Add column right\",\n add_above_menuitem: \"Add row above\",\n add_below_menuitem: \"Add row below\",\n split_cell_menuitem: \"Split cell\",\n merge_cells_menuitem: \"Merge cells\",\n background_color_menuitem: \"Background color\",\n },\n suggestion_menu: {\n no_items_title: \"No items found\",\n },\n color_picker: {\n text_title: \"Text\",\n background_title: \"Background\",\n colors: {\n default: \"Default\",\n gray: \"Gray\",\n brown: \"Brown\",\n red: \"Red\",\n orange: \"Orange\",\n yellow: \"Yellow\",\n green: \"Green\",\n blue: \"Blue\",\n purple: \"Purple\",\n pink: \"Pink\",\n },\n },\n\n formatting_toolbar: {\n bold: {\n tooltip: \"Bold\",\n secondary_tooltip: \"Mod+B\",\n },\n italic: {\n tooltip: \"Italic\",\n secondary_tooltip: \"Mod+I\",\n },\n underline: {\n tooltip: \"Underline\",\n secondary_tooltip: \"Mod+U\",\n },\n strike: {\n tooltip: \"Strike\",\n secondary_tooltip: \"Mod+Shift+S\",\n },\n code: {\n tooltip: \"Code\",\n secondary_tooltip: \"\",\n },\n colors: {\n tooltip: \"Colors\",\n },\n link: {\n tooltip: \"Create link\",\n secondary_tooltip: \"Mod+K\",\n },\n file_caption: {\n tooltip: \"Edit caption\",\n input_placeholder: \"Edit caption\",\n },\n file_replace: {\n tooltip: {\n image: \"Replace image\",\n video: \"Replace video\",\n audio: \"Replace audio\",\n file: \"Replace file\",\n } as Record<string, string>,\n },\n file_rename: {\n tooltip: {\n image: \"Rename image\",\n video: \"Rename video\",\n audio: \"Rename audio\",\n file: \"Rename file\",\n } as Record<string, string>,\n input_placeholder: {\n image: \"Rename image\",\n video: \"Rename video\",\n audio: \"Rename audio\",\n file: \"Rename file\",\n } as Record<string, string>,\n },\n file_download: {\n tooltip: {\n image: \"Download image\",\n video: \"Download video\",\n audio: \"Download audio\",\n file: \"Download file\",\n } as Record<string, string>,\n },\n file_delete: {\n tooltip: {\n image: \"Delete image\",\n video: \"Delete video\",\n audio: \"Delete audio\",\n file: \"Delete file\",\n } as Record<string, string>,\n },\n file_preview_toggle: {\n tooltip: \"Toggle preview\",\n },\n nest: {\n tooltip: \"Nest block\",\n secondary_tooltip: \"Tab\",\n },\n unnest: {\n tooltip: \"Unnest block\",\n secondary_tooltip: \"Shift+Tab\",\n },\n align_left: {\n tooltip: \"Align text left\",\n },\n align_center: {\n tooltip: \"Align text center\",\n },\n align_right: {\n tooltip: \"Align text right\",\n },\n align_justify: {\n tooltip: \"Justify text\",\n },\n table_cell_merge: {\n tooltip: \"Merge cells\",\n },\n comment: {\n tooltip: \"Add comment\",\n },\n },\n file_panel: {\n upload: {\n title: \"Upload\",\n file_placeholder: {\n image: \"Upload image\",\n video: \"Upload video\",\n audio: \"Upload audio\",\n file: \"Upload file\",\n } as Record<string, string>,\n upload_error: \"Error: Upload failed\",\n },\n embed: {\n title: \"Embed\",\n embed_button: {\n image: \"Embed image\",\n video: \"Embed video\",\n audio: \"Embed audio\",\n file: \"Embed file\",\n } as Record<string, string>,\n url_placeholder: \"Enter URL\",\n },\n },\n link_toolbar: {\n delete: {\n tooltip: \"Remove link\",\n },\n edit: {\n text: \"Edit link\",\n tooltip: \"Edit\",\n },\n open: {\n tooltip: \"Open in new tab\",\n },\n form: {\n title_placeholder: \"Edit title\",\n url_placeholder: \"Edit URL\",\n },\n },\n comments: {\n edited: \"edited\",\n save_button_text: \"Save\",\n cancel_button_text: \"Cancel\",\n actions: {\n add_reaction: \"Add reaction\",\n resolve: \"Resolve\",\n edit_comment: \"Edit comment\",\n delete_comment: \"Delete comment\",\n more_actions: \"More actions\",\n },\n reactions: {\n reacted_by: \"Reacted by\",\n },\n sidebar: {\n marked_as_resolved: \"Marked as resolved\",\n more_replies: (count: number) => `${count} more replies`,\n },\n },\n generic: {\n ctrl_shortcut: \"Ctrl\",\n },\n};\n"],"names":["en","count"],"mappings":"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"}
@@ -1,145 +0,0 @@
1
- import type { BlockNoteEditor } from "../../editor/BlockNoteEditor.js";
2
- import {
3
- BlockFromConfig,
4
- createBlockSpec,
5
- FileBlockConfig,
6
- Props,
7
- PropSchema,
8
- } from "../../schema/index.js";
9
- import { defaultProps } from "../defaultProps.js";
10
-
11
- import { parseFigureElement } from "../FileBlockContent/helpers/parse/parseFigureElement.js";
12
- import { createFileBlockWrapper } from "../FileBlockContent/helpers/render/createFileBlockWrapper.js";
13
- import { createFigureWithCaption } from "../FileBlockContent/helpers/toExternalHTML/createFigureWithCaption.js";
14
- import { createLinkWithCaption } from "../FileBlockContent/helpers/toExternalHTML/createLinkWithCaption.js";
15
- import { parseAudioElement } from "./parseAudioElement.js";
16
-
17
- export const FILE_AUDIO_ICON_SVG =
18
- '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M2 16.0001H5.88889L11.1834 20.3319C11.2727 20.405 11.3846 20.4449 11.5 20.4449C11.7761 20.4449 12 20.2211 12 19.9449V4.05519C12 3.93977 11.9601 3.8279 11.887 3.73857C11.7121 3.52485 11.3971 3.49335 11.1834 3.66821L5.88889 8.00007H2C1.44772 8.00007 1 8.44778 1 9.00007V15.0001C1 15.5524 1.44772 16.0001 2 16.0001ZM23 12C23 15.292 21.5539 18.2463 19.2622 20.2622L17.8445 18.8444C19.7758 17.1937 21 14.7398 21 12C21 9.26016 19.7758 6.80629 17.8445 5.15557L19.2622 3.73779C21.5539 5.75368 23 8.70795 23 12ZM18 12C18 10.0883 17.106 8.38548 15.7133 7.28673L14.2842 8.71584C15.3213 9.43855 16 10.64 16 12C16 13.36 15.3213 14.5614 14.2842 15.2841L15.7133 16.7132C17.106 15.6145 18 13.9116 18 12Z"></path></svg>';
19
-
20
- export const audioPropSchema = {
21
- backgroundColor: defaultProps.backgroundColor,
22
- // File name.
23
- name: {
24
- default: "" as const,
25
- },
26
- // File url.
27
- url: {
28
- default: "" as const,
29
- },
30
- // File caption.
31
- caption: {
32
- default: "" as const,
33
- },
34
-
35
- showPreview: {
36
- default: true,
37
- },
38
- } satisfies PropSchema;
39
-
40
- export const audioBlockConfig = {
41
- type: "audio" as const,
42
- propSchema: audioPropSchema,
43
- content: "none",
44
- isFileBlock: true,
45
- fileBlockAccept: ["audio/*"],
46
- } satisfies FileBlockConfig;
47
-
48
- export const audioRender = (
49
- block: BlockFromConfig<typeof audioBlockConfig, any, any>,
50
- editor: BlockNoteEditor<any, any, any>,
51
- ) => {
52
- const icon = document.createElement("div");
53
- icon.innerHTML = FILE_AUDIO_ICON_SVG;
54
-
55
- const audio = document.createElement("audio");
56
- audio.className = "bn-audio";
57
- if (editor.resolveFileUrl) {
58
- editor.resolveFileUrl(block.props.url).then((downloadUrl) => {
59
- audio.src = downloadUrl;
60
- });
61
- } else {
62
- audio.src = block.props.url;
63
- }
64
- audio.controls = true;
65
- audio.contentEditable = "false";
66
- audio.draggable = false;
67
-
68
- return createFileBlockWrapper(
69
- block,
70
- editor,
71
- { dom: audio },
72
- editor.dictionary.file_blocks.audio.add_button_text,
73
- icon.firstElementChild as HTMLElement,
74
- );
75
- };
76
-
77
- export const audioParse = (
78
- element: HTMLElement,
79
- ): Partial<Props<typeof audioBlockConfig.propSchema>> | undefined => {
80
- if (element.tagName === "AUDIO") {
81
- // Ignore if parent figure has already been parsed.
82
- if (element.closest("figure")) {
83
- return undefined;
84
- }
85
-
86
- return parseAudioElement(element as HTMLAudioElement);
87
- }
88
-
89
- if (element.tagName === "FIGURE") {
90
- const parsedFigure = parseFigureElement(element, "audio");
91
- if (!parsedFigure) {
92
- return undefined;
93
- }
94
-
95
- const { targetElement, caption } = parsedFigure;
96
-
97
- return {
98
- ...parseAudioElement(targetElement as HTMLAudioElement),
99
- caption,
100
- };
101
- }
102
-
103
- return undefined;
104
- };
105
-
106
- export const audioToExternalHTML = (
107
- block: BlockFromConfig<typeof audioBlockConfig, any, any>,
108
- ) => {
109
- if (!block.props.url) {
110
- const div = document.createElement("p");
111
- div.textContent = "Add audio";
112
-
113
- return {
114
- dom: div,
115
- };
116
- }
117
-
118
- let audio;
119
- if (block.props.showPreview) {
120
- audio = document.createElement("audio");
121
- audio.src = block.props.url;
122
- } else {
123
- audio = document.createElement("a");
124
- audio.href = block.props.url;
125
- audio.textContent = block.props.name || block.props.url;
126
- }
127
-
128
- if (block.props.caption) {
129
- if (block.props.showPreview) {
130
- return createFigureWithCaption(audio, block.props.caption);
131
- } else {
132
- return createLinkWithCaption(audio, block.props.caption);
133
- }
134
- }
135
-
136
- return {
137
- dom: audio,
138
- };
139
- };
140
-
141
- export const AudioBlock = createBlockSpec(audioBlockConfig, {
142
- render: audioRender,
143
- parse: audioParse,
144
- toExternalHTML: audioToExternalHTML,
145
- });