@blocknote/core 0.18.0 → 0.19.1

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 (537) hide show
  1. package/README.md +2 -0
  2. package/dist/blocknote.js +3145 -2970
  3. package/dist/blocknote.js.map +1 -1
  4. package/dist/blocknote.umd.cjs +9 -9
  5. package/dist/blocknote.umd.cjs.map +1 -1
  6. package/dist/src/api/blockManipulation/commands/insertBlocks/insertBlocks.js +27 -0
  7. package/dist/src/api/blockManipulation/commands/insertBlocks/insertBlocks.js.map +1 -0
  8. package/dist/src/api/blockManipulation/commands/insertBlocks/insertBlocks.test.js +99 -0
  9. package/dist/src/api/blockManipulation/commands/insertBlocks/insertBlocks.test.js.map +1 -0
  10. package/dist/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.js +97 -0
  11. package/dist/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.js.map +1 -0
  12. package/dist/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.test.js +88 -0
  13. package/dist/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.test.js.map +1 -0
  14. package/dist/src/api/blockManipulation/commands/moveBlock/moveBlock.js +116 -0
  15. package/dist/src/api/blockManipulation/commands/moveBlock/moveBlock.js.map +1 -0
  16. package/dist/src/api/blockManipulation/commands/moveBlock/moveBlock.test.js +110 -0
  17. package/dist/src/api/blockManipulation/commands/moveBlock/moveBlock.test.js.map +1 -0
  18. package/dist/src/api/blockManipulation/commands/nestBlock/nestBlock.js +57 -0
  19. package/dist/src/api/blockManipulation/commands/nestBlock/nestBlock.js.map +1 -0
  20. package/dist/src/api/blockManipulation/commands/removeBlocks/removeBlocks.js +5 -0
  21. package/dist/src/api/blockManipulation/commands/removeBlocks/removeBlocks.js.map +1 -0
  22. package/dist/src/api/blockManipulation/commands/removeBlocks/removeBlocks.test.js +31 -0
  23. package/dist/src/api/blockManipulation/commands/removeBlocks/removeBlocks.test.js.map +1 -0
  24. package/dist/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.js +71 -0
  25. package/dist/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.js.map +1 -0
  26. package/dist/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.test.js +157 -0
  27. package/dist/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.test.js.map +1 -0
  28. package/dist/src/api/blockManipulation/commands/splitBlock/splitBlock.js +27 -0
  29. package/dist/src/api/blockManipulation/commands/splitBlock/splitBlock.js.map +1 -0
  30. package/dist/src/api/blockManipulation/commands/splitBlock/splitBlock.test.js +64 -0
  31. package/dist/src/api/blockManipulation/commands/splitBlock/splitBlock.test.js.map +1 -0
  32. package/dist/src/api/blockManipulation/commands/updateBlock/updateBlock.js +145 -0
  33. package/dist/src/api/blockManipulation/commands/updateBlock/updateBlock.js.map +1 -0
  34. package/dist/src/api/blockManipulation/commands/updateBlock/updateBlock.test.js +252 -0
  35. package/dist/src/api/blockManipulation/commands/updateBlock/updateBlock.test.js.map +1 -0
  36. package/dist/src/api/blockManipulation/insertContentAt.js +64 -0
  37. package/dist/src/api/blockManipulation/insertContentAt.js.map +1 -0
  38. package/dist/src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.js +76 -0
  39. package/dist/src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.js.map +1 -0
  40. package/dist/src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.test.js +33 -0
  41. package/dist/src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.test.js.map +1 -0
  42. package/dist/src/api/blockManipulation/setupTestEnv.js +172 -0
  43. package/dist/src/api/blockManipulation/setupTestEnv.js.map +1 -0
  44. package/dist/src/api/clipboard/clipboard.test.js +246 -0
  45. package/dist/src/api/clipboard/clipboard.test.js.map +1 -0
  46. package/dist/src/api/clipboard/fromClipboard/acceptedMIMETypes.js +8 -0
  47. package/dist/src/api/clipboard/fromClipboard/acceptedMIMETypes.js.map +1 -0
  48. package/dist/src/api/clipboard/fromClipboard/fileDropExtension.js +38 -0
  49. package/dist/src/api/clipboard/fromClipboard/fileDropExtension.js.map +1 -0
  50. package/dist/src/api/clipboard/fromClipboard/handleFileInsertion.js +111 -0
  51. package/dist/src/api/clipboard/fromClipboard/handleFileInsertion.js.map +1 -0
  52. package/dist/src/api/clipboard/fromClipboard/handleVSCodePaste.js +26 -0
  53. package/dist/src/api/clipboard/fromClipboard/handleVSCodePaste.js.map +1 -0
  54. package/dist/src/api/clipboard/fromClipboard/pasteExtension.js +57 -0
  55. package/dist/src/api/clipboard/fromClipboard/pasteExtension.js.map +1 -0
  56. package/dist/src/api/clipboard/toClipboard/copyExtension.js +132 -0
  57. package/dist/src/api/clipboard/toClipboard/copyExtension.js.map +1 -0
  58. package/dist/src/api/exporters/html/externalHTMLExporter.js +35 -0
  59. package/dist/src/api/exporters/html/externalHTMLExporter.js.map +1 -0
  60. package/dist/src/api/exporters/html/htmlConversion.test.js +72 -0
  61. package/dist/src/api/exporters/html/htmlConversion.test.js.map +1 -0
  62. package/dist/src/api/exporters/html/internalHTMLSerializer.js +21 -0
  63. package/dist/src/api/exporters/html/internalHTMLSerializer.js.map +1 -0
  64. package/dist/src/api/exporters/html/util/serializeBlocksExternalHTML.js +141 -0
  65. package/dist/src/api/exporters/html/util/serializeBlocksExternalHTML.js.map +1 -0
  66. package/dist/src/api/exporters/html/util/serializeBlocksInternalHTML.js +96 -0
  67. package/dist/src/api/exporters/html/util/serializeBlocksInternalHTML.js.map +1 -0
  68. package/dist/src/api/exporters/markdown/markdownExporter.js +31 -0
  69. package/dist/src/api/exporters/markdown/markdownExporter.js.map +1 -0
  70. package/dist/src/api/exporters/markdown/markdownExporter.test.js +57 -0
  71. package/dist/src/api/exporters/markdown/markdownExporter.test.js.map +1 -0
  72. package/dist/src/api/exporters/markdown/removeUnderlinesRehypePlugin.js +33 -0
  73. package/dist/src/api/exporters/markdown/removeUnderlinesRehypePlugin.js.map +1 -0
  74. package/dist/src/api/exporters/markdown/util/addSpacesToCheckboxesRehypePlugin.js +37 -0
  75. package/dist/src/api/exporters/markdown/util/addSpacesToCheckboxesRehypePlugin.js.map +1 -0
  76. package/dist/src/api/getBlockInfoFromPos.js +165 -0
  77. package/dist/src/api/getBlockInfoFromPos.js.map +1 -0
  78. package/dist/src/api/nodeConversions/blockToNode.js +197 -0
  79. package/dist/src/api/nodeConversions/blockToNode.js.map +1 -0
  80. package/dist/src/api/nodeConversions/fragmentToBlocks.js +50 -0
  81. package/dist/src/api/nodeConversions/fragmentToBlocks.js.map +1 -0
  82. package/dist/src/api/nodeConversions/nodeConversions.test.js +54 -0
  83. package/dist/src/api/nodeConversions/nodeConversions.test.js.map +1 -0
  84. package/dist/src/api/nodeConversions/nodeToBlock.js +316 -0
  85. package/dist/src/api/nodeConversions/nodeToBlock.js.map +1 -0
  86. package/dist/src/api/nodeUtil.js +28 -0
  87. package/dist/src/api/nodeUtil.js.map +1 -0
  88. package/dist/src/api/parsers/html/parseHTML.js +19 -0
  89. package/dist/src/api/parsers/html/parseHTML.js.map +1 -0
  90. package/dist/src/api/parsers/html/parseHTML.test.js +470 -0
  91. package/dist/src/api/parsers/html/parseHTML.test.js.map +1 -0
  92. package/dist/src/api/parsers/html/util/nestedLists.js +106 -0
  93. package/dist/src/api/parsers/html/util/nestedLists.js.map +1 -0
  94. package/dist/src/api/parsers/html/util/nestedLists.test.js +166 -0
  95. package/dist/src/api/parsers/html/util/nestedLists.test.js.map +1 -0
  96. package/dist/src/api/parsers/markdown/parseMarkdown.js +52 -0
  97. package/dist/src/api/parsers/markdown/parseMarkdown.js.map +1 -0
  98. package/dist/src/api/parsers/markdown/parseMarkdown.test.js +109 -0
  99. package/dist/src/api/parsers/markdown/parseMarkdown.test.js.map +1 -0
  100. package/dist/src/api/testUtil/cases/customBlocks.js +313 -0
  101. package/dist/src/api/testUtil/cases/customBlocks.js.map +1 -0
  102. package/dist/src/api/testUtil/cases/customInlineContent.js +91 -0
  103. package/dist/src/api/testUtil/cases/customInlineContent.js.map +1 -0
  104. package/dist/src/api/testUtil/cases/customStyles.js +83 -0
  105. package/dist/src/api/testUtil/cases/customStyles.js.map +1 -0
  106. package/dist/src/api/testUtil/cases/defaultSchema.js +673 -0
  107. package/dist/src/api/testUtil/cases/defaultSchema.js.map +1 -0
  108. package/dist/src/api/testUtil/index.js +2 -0
  109. package/dist/src/api/testUtil/index.js.map +1 -0
  110. package/dist/src/api/testUtil/partialBlockTestUtil.js +114 -0
  111. package/dist/src/api/testUtil/partialBlockTestUtil.js.map +1 -0
  112. package/dist/src/api/testUtil/paste.js +29 -0
  113. package/dist/src/api/testUtil/paste.js.map +1 -0
  114. package/dist/src/blocks/AudioBlockContent/AudioBlockContent.js +97 -0
  115. package/dist/src/blocks/AudioBlockContent/AudioBlockContent.js.map +1 -0
  116. package/dist/src/blocks/AudioBlockContent/audioBlockHelpers.js +5 -0
  117. package/dist/src/blocks/AudioBlockContent/audioBlockHelpers.js.map +1 -0
  118. package/dist/src/blocks/CodeBlockContent/CodeBlockContent.js +273 -0
  119. package/dist/src/blocks/CodeBlockContent/CodeBlockContent.js.map +1 -0
  120. package/dist/src/blocks/CodeBlockContent/defaultSupportedLanguages.js +90 -0
  121. package/dist/src/blocks/CodeBlockContent/defaultSupportedLanguages.js.map +1 -0
  122. package/dist/src/blocks/FileBlockContent/FileBlockContent.js +70 -0
  123. package/dist/src/blocks/FileBlockContent/FileBlockContent.js.map +1 -0
  124. package/dist/src/blocks/FileBlockContent/fileBlockHelpers.js +317 -0
  125. package/dist/src/blocks/FileBlockContent/fileBlockHelpers.js.map +1 -0
  126. package/dist/src/blocks/FileBlockContent/uploadToTmpFilesDotOrg_DEV_ONLY.js +15 -0
  127. package/dist/src/blocks/FileBlockContent/uploadToTmpFilesDotOrg_DEV_ONLY.js.map +1 -0
  128. package/dist/src/blocks/HeadingBlockContent/HeadingBlockContent.js +145 -0
  129. package/dist/src/blocks/HeadingBlockContent/HeadingBlockContent.js.map +1 -0
  130. package/dist/src/blocks/ImageBlockContent/ImageBlockContent.js +106 -0
  131. package/dist/src/blocks/ImageBlockContent/ImageBlockContent.js.map +1 -0
  132. package/dist/src/blocks/ImageBlockContent/imageBlockHelpers.js +6 -0
  133. package/dist/src/blocks/ImageBlockContent/imageBlockHelpers.js.map +1 -0
  134. package/dist/src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.js +113 -0
  135. package/dist/src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.js.map +1 -0
  136. package/dist/src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.js +224 -0
  137. package/dist/src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.js.map +1 -0
  138. package/dist/src/blocks/ListItemBlockContent/ListItemKeyboardShortcuts.js +45 -0
  139. package/dist/src/blocks/ListItemBlockContent/ListItemKeyboardShortcuts.js.map +1 -0
  140. package/dist/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.js +58 -0
  141. package/dist/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.js.map +1 -0
  142. package/dist/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.js +130 -0
  143. package/dist/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.js.map +1 -0
  144. package/dist/src/blocks/ParagraphBlockContent/ParagraphBlockContent.js +52 -0
  145. package/dist/src/blocks/ParagraphBlockContent/ParagraphBlockContent.js.map +1 -0
  146. package/dist/src/blocks/TableBlockContent/TableBlockContent.js +129 -0
  147. package/dist/src/blocks/TableBlockContent/TableBlockContent.js.map +1 -0
  148. package/dist/src/blocks/TableBlockContent/TableExtension.js +57 -0
  149. package/dist/src/blocks/TableBlockContent/TableExtension.js.map +1 -0
  150. package/dist/src/blocks/VideoBlockContent/VideoBlockContent.js +103 -0
  151. package/dist/src/blocks/VideoBlockContent/VideoBlockContent.js.map +1 -0
  152. package/dist/src/blocks/VideoBlockContent/videoBlockHelpers.js +6 -0
  153. package/dist/src/blocks/VideoBlockContent/videoBlockHelpers.js.map +1 -0
  154. package/dist/src/blocks/defaultBlockHelpers.js +50 -0
  155. package/dist/src/blocks/defaultBlockHelpers.js.map +1 -0
  156. package/dist/src/blocks/defaultBlockTypeGuards.js +40 -0
  157. package/dist/src/blocks/defaultBlockTypeGuards.js.map +1 -0
  158. package/dist/src/blocks/defaultBlocks.js +50 -0
  159. package/dist/src/blocks/defaultBlocks.js.map +1 -0
  160. package/dist/src/blocks/defaultProps.js +19 -0
  161. package/dist/src/blocks/defaultProps.js.map +1 -0
  162. package/dist/src/editor/BlockNoteEditor.js +746 -0
  163. package/dist/src/editor/BlockNoteEditor.js.map +1 -0
  164. package/dist/src/editor/BlockNoteEditor.test.js +65 -0
  165. package/dist/src/editor/BlockNoteEditor.test.js.map +1 -0
  166. package/dist/src/editor/BlockNoteExtensions.js +195 -0
  167. package/dist/src/editor/BlockNoteExtensions.js.map +1 -0
  168. package/dist/src/editor/BlockNoteSchema.js +38 -0
  169. package/dist/src/editor/BlockNoteSchema.js.map +1 -0
  170. package/dist/src/editor/BlockNoteTipTapEditor.js +169 -0
  171. package/dist/src/editor/BlockNoteTipTapEditor.js.map +1 -0
  172. package/dist/src/editor/cursorPositionTypes.js +2 -0
  173. package/dist/src/editor/cursorPositionTypes.js.map +1 -0
  174. package/dist/src/editor/defaultColors.js +77 -0
  175. package/dist/src/editor/defaultColors.js.map +1 -0
  176. package/dist/src/editor/selectionTypes.js +2 -0
  177. package/dist/src/editor/selectionTypes.js.map +1 -0
  178. package/dist/src/editor/transformPasted.js +79 -0
  179. package/dist/src/editor/transformPasted.js.map +1 -0
  180. package/dist/src/exporter/Exporter.js +36 -0
  181. package/dist/src/exporter/Exporter.js.map +1 -0
  182. package/dist/src/exporter/index.js +3 -0
  183. package/dist/src/exporter/index.js.map +1 -0
  184. package/dist/src/exporter/mapping.js +12 -0
  185. package/dist/src/exporter/mapping.js.map +1 -0
  186. package/dist/src/extensions/BackgroundColor/BackgroundColorExtension.js +30 -0
  187. package/dist/src/extensions/BackgroundColor/BackgroundColorExtension.js.map +1 -0
  188. package/dist/src/extensions/BackgroundColor/BackgroundColorMark.js +39 -0
  189. package/dist/src/extensions/BackgroundColor/BackgroundColorMark.js.map +1 -0
  190. package/dist/src/extensions/FilePanel/FilePanelPlugin.js +131 -0
  191. package/dist/src/extensions/FilePanel/FilePanelPlugin.js.map +1 -0
  192. package/dist/src/extensions/FormattingToolbar/FormattingToolbarPlugin.js +195 -0
  193. package/dist/src/extensions/FormattingToolbar/FormattingToolbarPlugin.js.map +1 -0
  194. package/dist/src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.js +339 -0
  195. package/dist/src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.js.map +1 -0
  196. package/dist/src/extensions/LinkToolbar/LinkToolbarPlugin.js +247 -0
  197. package/dist/src/extensions/LinkToolbar/LinkToolbarPlugin.js.map +1 -0
  198. package/dist/src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.js +54 -0
  199. package/dist/src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.js.map +1 -0
  200. package/dist/src/extensions/Placeholder/PlaceholderPlugin.js +84 -0
  201. package/dist/src/extensions/Placeholder/PlaceholderPlugin.js.map +1 -0
  202. package/dist/src/extensions/PreviousBlockType/PreviousBlockTypePlugin.js +187 -0
  203. package/dist/src/extensions/PreviousBlockType/PreviousBlockTypePlugin.js.map +1 -0
  204. package/dist/src/extensions/SideMenu/MultipleNodeSelection.js +68 -0
  205. package/dist/src/extensions/SideMenu/MultipleNodeSelection.js.map +1 -0
  206. package/dist/src/extensions/SideMenu/SideMenuPlugin.js +339 -0
  207. package/dist/src/extensions/SideMenu/SideMenuPlugin.js.map +1 -0
  208. package/dist/src/extensions/SideMenu/dragging.js +128 -0
  209. package/dist/src/extensions/SideMenu/dragging.js.map +1 -0
  210. package/dist/src/extensions/SuggestionMenu/DefaultGridSuggestionItem.js +2 -0
  211. package/dist/src/extensions/SuggestionMenu/DefaultGridSuggestionItem.js.map +1 -0
  212. package/dist/src/extensions/SuggestionMenu/DefaultSuggestionItem.js +2 -0
  213. package/dist/src/extensions/SuggestionMenu/DefaultSuggestionItem.js.map +1 -0
  214. package/dist/src/extensions/SuggestionMenu/SuggestionPlugin.js +245 -0
  215. package/dist/src/extensions/SuggestionMenu/SuggestionPlugin.js.map +1 -0
  216. package/dist/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.js +26 -0
  217. package/dist/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.js.map +1 -0
  218. package/dist/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.js +244 -0
  219. package/dist/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.js.map +1 -0
  220. package/dist/src/extensions/TableHandles/TableHandlesPlugin.js +553 -0
  221. package/dist/src/extensions/TableHandles/TableHandlesPlugin.js.map +1 -0
  222. package/dist/src/extensions/TextAlignment/TextAlignmentExtension.js +36 -0
  223. package/dist/src/extensions/TextAlignment/TextAlignmentExtension.js.map +1 -0
  224. package/dist/src/extensions/TextColor/TextColorExtension.js +29 -0
  225. package/dist/src/extensions/TextColor/TextColorExtension.js.map +1 -0
  226. package/dist/src/extensions/TextColor/TextColorMark.js +37 -0
  227. package/dist/src/extensions/TextColor/TextColorMark.js.map +1 -0
  228. package/dist/src/extensions/TrailingNode/TrailingNodeExtension.js +58 -0
  229. package/dist/src/extensions/TrailingNode/TrailingNodeExtension.js.map +1 -0
  230. package/dist/src/extensions/UniqueID/UniqueID.js +283 -0
  231. package/dist/src/extensions/UniqueID/UniqueID.js.map +1 -0
  232. package/dist/src/extensions/getDraggableBlockFromElement.js +13 -0
  233. package/dist/src/extensions/getDraggableBlockFromElement.js.map +1 -0
  234. package/dist/src/extensions-shared/UiElementPosition.js +2 -0
  235. package/dist/src/extensions-shared/UiElementPosition.js.map +1 -0
  236. package/dist/src/i18n/dictionary.js +4 -0
  237. package/dist/src/i18n/dictionary.js.map +1 -0
  238. package/dist/src/i18n/locales/ar.js +298 -0
  239. package/dist/src/i18n/locales/ar.js.map +1 -0
  240. package/dist/src/i18n/locales/de.js +313 -0
  241. package/dist/src/i18n/locales/de.js.map +1 -0
  242. package/dist/src/i18n/locales/en.js +314 -0
  243. package/dist/src/i18n/locales/en.js.map +1 -0
  244. package/dist/src/i18n/locales/es.js +312 -0
  245. package/dist/src/i18n/locales/es.js.map +1 -0
  246. package/dist/src/i18n/locales/fr.js +313 -0
  247. package/dist/src/i18n/locales/fr.js.map +1 -0
  248. package/dist/src/i18n/locales/hr.js +308 -0
  249. package/dist/src/i18n/locales/hr.js.map +1 -0
  250. package/dist/src/i18n/locales/index.js +16 -0
  251. package/dist/src/i18n/locales/index.js.map +1 -0
  252. package/dist/src/i18n/locales/is.js +305 -0
  253. package/dist/src/i18n/locales/is.js.map +1 -0
  254. package/dist/src/i18n/locales/ja.js +333 -0
  255. package/dist/src/i18n/locales/ja.js.map +1 -0
  256. package/dist/src/i18n/locales/ko.js +326 -0
  257. package/dist/src/i18n/locales/ko.js.map +1 -0
  258. package/dist/src/i18n/locales/nl.js +313 -0
  259. package/dist/src/i18n/locales/nl.js.map +1 -0
  260. package/dist/src/i18n/locales/pl.js +297 -0
  261. package/dist/src/i18n/locales/pl.js.map +1 -0
  262. package/dist/src/i18n/locales/pt.js +305 -0
  263. package/dist/src/i18n/locales/pt.js.map +1 -0
  264. package/dist/src/i18n/locales/ru.js +340 -0
  265. package/dist/src/i18n/locales/ru.js.map +1 -0
  266. package/dist/src/i18n/locales/vi.js +312 -0
  267. package/dist/src/i18n/locales/vi.js.map +1 -0
  268. package/dist/src/i18n/locales/zh.js +346 -0
  269. package/dist/src/i18n/locales/zh.js.map +1 -0
  270. package/dist/src/index.js +55 -0
  271. package/dist/src/index.js.map +1 -0
  272. package/dist/src/pm-nodes/BlockContainer.js +72 -0
  273. package/dist/src/pm-nodes/BlockContainer.js.map +1 -0
  274. package/dist/src/pm-nodes/BlockGroup.js +43 -0
  275. package/dist/src/pm-nodes/BlockGroup.js.map +1 -0
  276. package/dist/src/pm-nodes/Doc.js +7 -0
  277. package/dist/src/pm-nodes/Doc.js.map +1 -0
  278. package/dist/src/pm-nodes/index.js +4 -0
  279. package/dist/src/pm-nodes/index.js.map +1 -0
  280. package/dist/src/schema/blocks/createSpec.js +126 -0
  281. package/dist/src/schema/blocks/createSpec.js.map +1 -0
  282. package/dist/src/schema/blocks/internal.js +147 -0
  283. package/dist/src/schema/blocks/internal.js.map +1 -0
  284. package/dist/src/schema/blocks/types.js +2 -0
  285. package/dist/src/schema/blocks/types.js.map +1 -0
  286. package/dist/src/schema/index.js +11 -0
  287. package/dist/src/schema/index.js.map +1 -0
  288. package/dist/src/schema/inlineContent/createSpec.js +64 -0
  289. package/dist/src/schema/inlineContent/createSpec.js.map +1 -0
  290. package/dist/src/schema/inlineContent/internal.js +52 -0
  291. package/dist/src/schema/inlineContent/internal.js.map +1 -0
  292. package/dist/src/schema/inlineContent/types.js +10 -0
  293. package/dist/src/schema/inlineContent/types.js.map +1 -0
  294. package/dist/src/schema/propTypes.js +2 -0
  295. package/dist/src/schema/propTypes.js.map +1 -0
  296. package/dist/src/schema/styles/createSpec.js +48 -0
  297. package/dist/src/schema/styles/createSpec.js.map +1 -0
  298. package/dist/src/schema/styles/internal.js +53 -0
  299. package/dist/src/schema/styles/internal.js.map +1 -0
  300. package/dist/src/schema/styles/types.js +2 -0
  301. package/dist/src/schema/styles/types.js.map +1 -0
  302. package/dist/src/util/EventEmitter.js +33 -0
  303. package/dist/src/util/EventEmitter.js.map +1 -0
  304. package/dist/src/util/browser.js +17 -0
  305. package/dist/src/util/browser.js.map +1 -0
  306. package/dist/src/util/combineByGroup.js +20 -0
  307. package/dist/src/util/combineByGroup.js.map +1 -0
  308. package/dist/src/util/esmDependencies.js +35 -0
  309. package/dist/src/util/esmDependencies.js.map +1 -0
  310. package/dist/src/util/string.js +14 -0
  311. package/dist/src/util/string.js.map +1 -0
  312. package/dist/src/util/typescript.js +12 -0
  313. package/dist/src/util/typescript.js.map +1 -0
  314. package/dist/style.css +1 -1
  315. package/dist/tsconfig.tsbuildinfo +1 -0
  316. package/dist/webpack-stats.json +1 -1
  317. package/package.json +5 -5
  318. package/src/api/blockManipulation/commands/insertBlocks/__snapshots__/insertBlocks.test.ts.snap +0 -6
  319. package/src/api/blockManipulation/commands/insertBlocks/insertBlocks.ts +2 -0
  320. package/src/api/blockManipulation/commands/mergeBlocks/__snapshots__/mergeBlocks.test.ts.snap +0 -5
  321. package/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.test.ts +2 -2
  322. package/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.ts +104 -39
  323. package/src/api/blockManipulation/commands/moveBlock/__snapshots__/moveBlock.test.ts.snap +0 -8
  324. package/src/api/blockManipulation/commands/moveBlock/moveBlock.test.ts +7 -3
  325. package/src/api/blockManipulation/commands/moveBlock/moveBlock.ts +3 -5
  326. package/src/api/blockManipulation/commands/nestBlock/nestBlock.ts +100 -0
  327. package/src/api/blockManipulation/commands/removeBlocks/__snapshots__/removeBlocks.test.ts.snap +439 -2
  328. package/src/api/blockManipulation/commands/removeBlocks/removeBlocks.test.ts +6 -0
  329. package/src/api/blockManipulation/commands/removeBlocks/removeBlocks.ts +2 -82
  330. package/src/api/blockManipulation/commands/replaceBlocks/__snapshots__/replaceBlocks.test.ts.snap +0 -8
  331. package/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.ts +96 -20
  332. package/src/api/blockManipulation/commands/splitBlock/__snapshots__/splitBlock.test.ts.snap +0 -6
  333. package/src/api/blockManipulation/commands/splitBlock/splitBlock.test.ts +8 -4
  334. package/src/api/blockManipulation/commands/splitBlock/splitBlock.ts +13 -12
  335. package/src/api/blockManipulation/commands/updateBlock/__snapshots__/updateBlock.test.ts.snap +0 -490
  336. package/src/api/blockManipulation/commands/updateBlock/updateBlock.test.ts +5 -5
  337. package/src/api/blockManipulation/commands/updateBlock/updateBlock.ts +192 -107
  338. package/src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.ts +48 -33
  339. package/src/api/clipboard/fromClipboard/acceptedMIMETypes.ts +1 -1
  340. package/src/api/clipboard/fromClipboard/handleFileInsertion.ts +7 -6
  341. package/src/api/clipboard/toClipboard/copyExtension.ts +1 -1
  342. package/src/api/exporters/html/htmlConversion.test.ts +1 -4
  343. package/src/api/exporters/html/util/serializeBlocksExternalHTML.ts +7 -1
  344. package/src/api/exporters/html/util/serializeBlocksInternalHTML.ts +56 -19
  345. package/src/api/exporters/markdown/markdownExporter.test.ts +1 -4
  346. package/src/api/getBlockInfoFromPos.ts +125 -80
  347. package/src/api/nodeConversions/blockToNode.ts +50 -25
  348. package/src/api/nodeConversions/fragmentToBlocks.ts +18 -0
  349. package/src/api/nodeConversions/nodeToBlock.ts +24 -21
  350. package/src/api/nodeUtil.ts +1 -1
  351. package/src/api/parsers/html/__snapshots__/parse-notion-html.json +1 -2
  352. package/src/api/testUtil/partialBlockTestUtil.ts +15 -3
  353. package/src/blocks/AudioBlockContent/AudioBlockContent.ts +4 -2
  354. package/src/blocks/FileBlockContent/fileBlockHelpers.ts +5 -4
  355. package/src/blocks/HeadingBlockContent/HeadingBlockContent.ts +35 -35
  356. package/src/blocks/ImageBlockContent/ImageBlockContent.ts +4 -2
  357. package/src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.ts +14 -12
  358. package/src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.ts +28 -16
  359. package/src/blocks/ListItemBlockContent/ListItemKeyboardShortcuts.ts +5 -3
  360. package/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.ts +11 -4
  361. package/src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.ts +13 -11
  362. package/src/blocks/ParagraphBlockContent/ParagraphBlockContent.ts +8 -9
  363. package/src/blocks/TableBlockContent/TableBlockContent.ts +0 -1
  364. package/src/blocks/VideoBlockContent/VideoBlockContent.ts +4 -2
  365. package/src/blocks/defaultBlockHelpers.ts +7 -2
  366. package/src/editor/Block.css +22 -1
  367. package/src/editor/BlockNoteEditor.test.ts +4 -7
  368. package/src/editor/BlockNoteEditor.ts +87 -61
  369. package/src/editor/BlockNoteExtensions.ts +92 -17
  370. package/src/editor/BlockNoteTipTapEditor.ts +8 -1
  371. package/src/editor/defaultColors.ts +77 -0
  372. package/src/editor/editor.css +10 -0
  373. package/src/editor/transformPasted.ts +6 -3
  374. package/src/exporter/Exporter.ts +101 -0
  375. package/src/exporter/index.ts +2 -0
  376. package/src/exporter/mapping.ts +75 -0
  377. package/src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts +233 -53
  378. package/src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.ts +45 -42
  379. package/src/extensions/Placeholder/PlaceholderPlugin.ts +94 -90
  380. package/src/extensions/PreviousBlockType/PreviousBlockTypePlugin.ts +173 -169
  381. package/src/extensions/SideMenu/SideMenuPlugin.ts +141 -52
  382. package/src/extensions/SideMenu/dragging.ts +3 -54
  383. package/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts +4 -6
  384. package/src/extensions/TableHandles/TableHandlesPlugin.ts +1 -1
  385. package/src/extensions/TrailingNode/TrailingNodeExtension.ts +1 -1
  386. package/src/extensions/getDraggableBlockFromElement.ts +19 -0
  387. package/src/i18n/locales/de.ts +5 -5
  388. package/src/i18n/locales/pt.ts +5 -5
  389. package/src/index.ts +9 -5
  390. package/src/pm-nodes/BlockContainer.ts +1 -1
  391. package/src/pm-nodes/BlockGroup.ts +2 -2
  392. package/src/pm-nodes/README.md +127 -28
  393. package/src/schema/blocks/createSpec.ts +4 -1
  394. package/src/schema/blocks/internal.ts +12 -2
  395. package/src/schema/blocks/types.ts +1 -1
  396. package/src/util/combineByGroup.ts +25 -0
  397. package/types/src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.d.ts +22 -2
  398. package/types/src/api/blockManipulation/commands/nestBlock/nestBlock.d.ts +5 -0
  399. package/types/src/api/blockManipulation/commands/removeBlocks/removeBlocks.d.ts +0 -3
  400. package/types/src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.d.ts +4 -0
  401. package/types/src/api/blockManipulation/setupTestEnv.d.ts +0 -6
  402. package/types/src/api/clipboard/fromClipboard/acceptedMIMETypes.d.ts +1 -1
  403. package/types/src/api/getBlockInfoFromPos.d.ts +38 -13
  404. package/types/src/api/nodeConversions/blockToNode.d.ts +1 -1
  405. package/types/src/api/nodeConversions/nodeToBlock.d.ts +3 -1
  406. package/types/src/api/testUtil/cases/customBlocks.d.ts +0 -6
  407. package/types/src/api/testUtil/cases/customInlineContent.d.ts +0 -6
  408. package/types/src/api/testUtil/cases/customStyles.d.ts +0 -6
  409. package/types/src/api/testUtil/partialBlockTestUtil.d.ts +2 -1
  410. package/types/src/blocks/AudioBlockContent/AudioBlockContent.d.ts +1 -0
  411. package/types/src/blocks/FileBlockContent/fileBlockHelpers.d.ts +1 -0
  412. package/types/src/blocks/ImageBlockContent/ImageBlockContent.d.ts +1 -0
  413. package/types/src/blocks/TableBlockContent/TableBlockContent.d.ts +0 -9
  414. package/types/src/blocks/VideoBlockContent/VideoBlockContent.d.ts +1 -0
  415. package/types/src/blocks/defaultBlocks.d.ts +0 -12
  416. package/types/src/editor/BlockNoteEditor.d.ts +23 -5
  417. package/types/src/editor/BlockNoteExtensions.d.ts +14 -7
  418. package/types/src/editor/BlockNoteTipTapEditor.d.ts +1 -0
  419. package/types/src/editor/defaultColors.d.ts +76 -0
  420. package/types/src/exporter/Exporter.d.ts +43 -0
  421. package/types/src/exporter/index.d.ts +2 -0
  422. package/types/src/exporter/mapping.d.ts +30 -0
  423. package/types/src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.d.ts +4 -1
  424. package/types/src/extensions/Placeholder/PlaceholderPlugin.d.ts +4 -1
  425. package/types/src/extensions/PreviousBlockType/PreviousBlockTypePlugin.d.ts +4 -5
  426. package/types/src/extensions/SideMenu/SideMenuPlugin.d.ts +2 -1
  427. package/types/src/extensions/SideMenu/dragging.d.ts +1 -6
  428. package/types/src/extensions/getDraggableBlockFromElement.d.ts +5 -0
  429. package/types/src/index.d.ts +9 -5
  430. package/types/src/schema/blocks/createSpec.d.ts +1 -1
  431. package/types/src/schema/blocks/internal.d.ts +2 -2
  432. package/types/src/schema/blocks/types.d.ts +1 -1
  433. package/types/src/util/combineByGroup.d.ts +9 -0
  434. package/dist/angular-html-HQGguTAE.js +0 -33
  435. package/dist/angular-html-HQGguTAE.js.map +0 -1
  436. package/dist/angular-ts-q9PqJiJb.js +0 -22
  437. package/dist/angular-ts-q9PqJiJb.js.map +0 -1
  438. package/dist/astro-0iWgpDaK.js +0 -17
  439. package/dist/astro-0iWgpDaK.js.map +0 -1
  440. package/dist/blade-C3Z8AhvY.js +0 -19
  441. package/dist/blade-C3Z8AhvY.js.map +0 -1
  442. package/dist/c-TKJGJdXV.js +0 -7
  443. package/dist/c-TKJGJdXV.js.map +0 -1
  444. package/dist/coffee-CN_y6cG3.js +0 -9
  445. package/dist/coffee-CN_y6cG3.js.map +0 -1
  446. package/dist/cpp-Be_e67JE.js +0 -19
  447. package/dist/cpp-Be_e67JE.js.map +0 -1
  448. package/dist/css-DHLSoXzW.js +0 -7
  449. package/dist/css-DHLSoXzW.js.map +0 -1
  450. package/dist/glsl-8qSUIm5B.js +0 -9
  451. package/dist/glsl-8qSUIm5B.js.map +0 -1
  452. package/dist/graphql-D7_Dk2ma.js +0 -15
  453. package/dist/graphql-D7_Dk2ma.js.map +0 -1
  454. package/dist/haml-S3dmcfEW.js +0 -11
  455. package/dist/haml-S3dmcfEW.js.map +0 -1
  456. package/dist/handlebars-DaIrqVg3.js +0 -15
  457. package/dist/handlebars-DaIrqVg3.js.map +0 -1
  458. package/dist/html-Bx3A18fV.js +0 -11
  459. package/dist/html-Bx3A18fV.js.map +0 -1
  460. package/dist/html-derivative-Cf3KTZBS.js +0 -9
  461. package/dist/html-derivative-Cf3KTZBS.js.map +0 -1
  462. package/dist/http-BphR83YX.js +0 -15
  463. package/dist/http-BphR83YX.js.map +0 -1
  464. package/dist/imba-CmP25v0O.js +0 -9
  465. package/dist/imba-CmP25v0O.js.map +0 -1
  466. package/dist/java-Dg4kxH6C.js +0 -7
  467. package/dist/java-Dg4kxH6C.js.map +0 -1
  468. package/dist/javascript-CipAzIn1.js +0 -7
  469. package/dist/javascript-CipAzIn1.js.map +0 -1
  470. package/dist/jinja-tioldiz6.js +0 -12
  471. package/dist/jinja-tioldiz6.js.map +0 -1
  472. package/dist/jison-DWJFEE_I.js +0 -9
  473. package/dist/jison-DWJFEE_I.js.map +0 -1
  474. package/dist/json-_04EL6MS.js +0 -7
  475. package/dist/json-_04EL6MS.js.map +0 -1
  476. package/dist/json5-Dwmp5XFI.js +0 -7
  477. package/dist/json5-Dwmp5XFI.js.map +0 -1
  478. package/dist/jsonc-LqD5auy0.js +0 -7
  479. package/dist/jsonc-LqD5auy0.js.map +0 -1
  480. package/dist/jsonl-B4yVuYQH.js +0 -7
  481. package/dist/jsonl-B4yVuYQH.js.map +0 -1
  482. package/dist/jsx-Mg4WaD5k.js +0 -7
  483. package/dist/jsx-Mg4WaD5k.js.map +0 -1
  484. package/dist/julia-CWi-ZdpN.js +0 -17
  485. package/dist/julia-CWi-ZdpN.js.map +0 -1
  486. package/dist/less-BBvTHIGe.js +0 -7
  487. package/dist/less-BBvTHIGe.js.map +0 -1
  488. package/dist/markdown-DAXqtk9a.js +0 -7
  489. package/dist/markdown-DAXqtk9a.js.map +0 -1
  490. package/dist/marko-0aaNgUGV.js +0 -15
  491. package/dist/marko-0aaNgUGV.js.map +0 -1
  492. package/dist/mdc-hXJ2B4O0.js +0 -13
  493. package/dist/mdc-hXJ2B4O0.js.map +0 -1
  494. package/dist/mdx-CSCKbb_f.js +0 -7
  495. package/dist/mdx-CSCKbb_f.js.map +0 -1
  496. package/dist/php-B_-4RJ09.js +0 -19
  497. package/dist/php-B_-4RJ09.js.map +0 -1
  498. package/dist/postcss-SJfTvo_B.js +0 -7
  499. package/dist/postcss-SJfTvo_B.js.map +0 -1
  500. package/dist/pug-3q2tx0nf.js +0 -13
  501. package/dist/pug-3q2tx0nf.js.map +0 -1
  502. package/dist/python-Dpup1-fE.js +0 -7
  503. package/dist/python-Dpup1-fE.js.map +0 -1
  504. package/dist/r-Chyv38Fv.js +0 -7
  505. package/dist/r-Chyv38Fv.js.map +0 -1
  506. package/dist/regexp-BF0hfxNW.js +0 -7
  507. package/dist/regexp-BF0hfxNW.js.map +0 -1
  508. package/dist/sass-p2RMoqDT.js +0 -7
  509. package/dist/sass-p2RMoqDT.js.map +0 -1
  510. package/dist/scss-DmlHSoOY.js +0 -9
  511. package/dist/scss-DmlHSoOY.js.map +0 -1
  512. package/dist/shellscript-CZpPN8_x.js +0 -7
  513. package/dist/shellscript-CZpPN8_x.js.map +0 -1
  514. package/dist/sql-DtlkUz2m.js +0 -7
  515. package/dist/sql-DtlkUz2m.js.map +0 -1
  516. package/dist/stylus-DEr8eSLm.js +0 -7
  517. package/dist/stylus-DEr8eSLm.js.map +0 -1
  518. package/dist/svelte-BRIJF62h.js +0 -15
  519. package/dist/svelte-BRIJF62h.js.map +0 -1
  520. package/dist/ts-tags-qkUtuI0N.js +0 -42
  521. package/dist/ts-tags-qkUtuI0N.js.map +0 -1
  522. package/dist/tsx-DTfbgJxi.js +0 -7
  523. package/dist/tsx-DTfbgJxi.js.map +0 -1
  524. package/dist/typescript-CCd4aQHh.js +0 -7
  525. package/dist/typescript-CCd4aQHh.js.map +0 -1
  526. package/dist/vue-B3TdbERm.js +0 -32
  527. package/dist/vue-B3TdbERm.js.map +0 -1
  528. package/dist/vue-html-BGmTBZk0.js +0 -11
  529. package/dist/vue-html-BGmTBZk0.js.map +0 -1
  530. package/dist/wasm-VDIDph3E.js +0 -7
  531. package/dist/wasm-VDIDph3E.js.map +0 -1
  532. package/dist/wgsl-2np_U3Z8.js +0 -7
  533. package/dist/wgsl-2np_U3Z8.js.map +0 -1
  534. package/dist/xml-CNyphW9R.js +0 -9
  535. package/dist/xml-CNyphW9R.js.map +0 -1
  536. package/dist/yaml-DxFiVFcM.js +0 -7
  537. package/dist/yaml-DxFiVFcM.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { EditorOptions } from "@tiptap/core";
1
+ import { AnyExtension, EditorOptions } from "@tiptap/core";
2
2
  import { Node, Schema } from "prosemirror-model";
3
3
  import * as Y from "yjs";
4
4
  import { Block, DefaultBlockSchema, DefaultInlineContentSchema, DefaultStyleSchema, PartialBlock } from "../blocks/defaultBlocks.js";
@@ -8,15 +8,18 @@ import { LinkToolbarProsemirrorPlugin } from "../extensions/LinkToolbar/LinkTool
8
8
  import { SideMenuProsemirrorPlugin } from "../extensions/SideMenu/SideMenuPlugin.js";
9
9
  import { SuggestionMenuProseMirrorPlugin } from "../extensions/SuggestionMenu/SuggestionPlugin.js";
10
10
  import { TableHandlesProsemirrorPlugin } from "../extensions/TableHandles/TableHandlesPlugin.js";
11
- import { BlockIdentifier, BlockNoteDOMAttributes, BlockSchema, BlockSpecs, InlineContentSchema, InlineContentSpecs, PartialInlineContent, StyleSchema, StyleSpecs, Styles } from "../schema/index.js";
11
+ import { BlockIdentifier, BlockNoteDOMAttributes, BlockSchema, BlockSpecs, InlineContentSchema, InlineContentSpecs, PartialInlineContent, Styles, StyleSchema, StyleSpecs } from "../schema/index.js";
12
12
  import { NoInfer } from "../util/typescript.js";
13
13
  import { TextCursorPosition } from "./cursorPositionTypes.js";
14
14
  import { Selection } from "./selectionTypes.js";
15
15
  import { BlockNoteSchema } from "./BlockNoteSchema.js";
16
16
  import { BlockNoteTipTapEditor } from "./BlockNoteTipTapEditor.js";
17
17
  import { Dictionary } from "../i18n/dictionary.js";
18
- import { Transaction } from "@tiptap/pm/state";
18
+ import { Plugin, Transaction } from "@tiptap/pm/state";
19
19
  import "../style.css";
20
+ export type BlockNoteExtension = AnyExtension | {
21
+ plugin: Plugin;
22
+ };
20
23
  export type BlockNoteEditorOptions<BSchema extends BlockSchema, ISchema extends InlineContentSchema, SSchema extends StyleSchema> = {
21
24
  /**
22
25
  * Whether changes to blocks (like indentation, creating lists, changing headings) should be animated or not. Defaults to `true`.
@@ -24,11 +27,14 @@ export type BlockNoteEditorOptions<BSchema extends BlockSchema, ISchema extends
24
27
  * @default true
25
28
  */
26
29
  animations?: boolean;
30
+ /**
31
+ * Disable internal extensions (based on keys / extension name)
32
+ */
27
33
  disableExtensions: string[];
28
34
  /**
29
35
  * A dictionary object containing translations for the editor.
30
36
  */
31
- dictionary?: Dictionary;
37
+ dictionary?: Dictionary & Record<string, any>;
32
38
  /**
33
39
  * @deprecated, provide placeholders via dictionary instead
34
40
  */
@@ -90,7 +96,14 @@ export type BlockNoteEditorOptions<BSchema extends BlockSchema, ISchema extends
90
96
  */
91
97
  renderCursor?: (user: any) => HTMLElement;
92
98
  };
99
+ /**
100
+ * additional tiptap options, undocumented
101
+ */
93
102
  _tiptapOptions: Partial<EditorOptions>;
103
+ /**
104
+ * (experimental) add extra prosemirror plugins or tiptap extensions to the editor
105
+ */
106
+ _extensions: Record<string, BlockNoteExtension>;
94
107
  trailingBlock?: boolean;
95
108
  /**
96
109
  * Boolean indicating whether the editor is in headless mode.
@@ -109,10 +122,15 @@ export type BlockNoteEditorOptions<BSchema extends BlockSchema, ISchema extends
109
122
  * (note that the id is always set on the `data-id` attribute)
110
123
  */
111
124
  setIdAttribute?: boolean;
125
+ dropCursor?: (opts: any) => Plugin;
112
126
  };
113
127
  export declare class BlockNoteEditor<BSchema extends BlockSchema = DefaultBlockSchema, ISchema extends InlineContentSchema = DefaultInlineContentSchema, SSchema extends StyleSchema = DefaultStyleSchema> {
114
128
  protected readonly options: Partial<BlockNoteEditorOptions<any, any, any>>;
115
129
  private readonly _pmSchema;
130
+ /**
131
+ * extensions that are added to the editor, can be tiptap extensions or prosemirror plugins
132
+ */
133
+ readonly extensions: Record<string, BlockNoteExtension>;
116
134
  /**
117
135
  * Boolean indicating whether the editor is in headless mode.
118
136
  * Headless mode means we can use features like importing / exporting blocks,
@@ -138,7 +156,7 @@ export declare class BlockNoteEditor<BSchema extends BlockSchema = DefaultBlockS
138
156
  /**
139
157
  * The dictionary contains translations for the editor.
140
158
  */
141
- readonly dictionary: Dictionary;
159
+ readonly dictionary: Dictionary & Record<string, any>;
142
160
  /**
143
161
  * The schema of the editor. The schema defines which Blocks, InlineContent, and Styles are available in the editor.
144
162
  */
@@ -1,10 +1,8 @@
1
- import type { BlockNoteEditor } from "./BlockNoteEditor.js";
1
+ import type { BlockNoteEditor, BlockNoteExtension } from "./BlockNoteEditor.js";
2
+ import { Plugin } from "prosemirror-state";
2
3
  import * as Y from "yjs";
3
- import { BlockNoteDOMAttributes, BlockSpecs, InlineContentSchema, InlineContentSpecs, StyleSchema, StyleSpecs } from "../schema/index.js";
4
- /**
5
- * Get all the Tiptap extensions BlockNote is configured with by default
6
- */
7
- export declare const getBlockNoteExtensions: <BSchema extends Record<string, import("../schema/index.js").BlockConfig>, I extends InlineContentSchema, S extends StyleSchema>(opts: {
4
+ import { BlockNoteDOMAttributes, BlockSchema, BlockSpecs, InlineContentSchema, InlineContentSpecs, StyleSchema, StyleSpecs } from "../schema/index.js";
5
+ type ExtensionOptions<BSchema extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema> = {
8
6
  editor: BlockNoteEditor<BSchema, I, S>;
9
7
  domAttributes: Partial<BlockNoteDOMAttributes>;
10
8
  blockSpecs: BlockSpecs;
@@ -23,4 +21,13 @@ export declare const getBlockNoteExtensions: <BSchema extends Record<string, imp
23
21
  };
24
22
  disableExtensions: string[] | undefined;
25
23
  setIdAttribute?: boolean;
26
- }) => import("@tiptap/core").AnyExtension[];
24
+ animations: boolean;
25
+ tableHandles: boolean;
26
+ dropCursor: (opts: any) => Plugin;
27
+ placeholders: Record<string | "default", string>;
28
+ };
29
+ /**
30
+ * Get all the Tiptap extensions BlockNote is configured with by default
31
+ */
32
+ export declare const getBlockNoteExtensions: <BSchema extends Record<string, import("../schema/index.js").BlockConfig>, I extends InlineContentSchema, S extends StyleSchema>(opts: ExtensionOptions<BSchema, I, S>) => Record<string, BlockNoteExtension>;
33
+ export {};
@@ -12,6 +12,7 @@ export type BlockNoteTipTapEditorOptions = Partial<Omit<EditorOptions, "content"
12
12
  */
13
13
  export declare class BlockNoteTipTapEditor extends TiptapEditor {
14
14
  private _state;
15
+ private _creating;
15
16
  static create: (options: BlockNoteTipTapEditorOptions, styleSchema: StyleSchema) => BlockNoteTipTapEditor;
16
17
  protected constructor(options: BlockNoteTipTapEditorOptions, styleSchema: StyleSchema);
17
18
  get state(): EditorState;
@@ -0,0 +1,76 @@
1
+ export declare const COLORS_DEFAULT: {
2
+ gray: {
3
+ text: string;
4
+ background: string;
5
+ };
6
+ brown: {
7
+ text: string;
8
+ background: string;
9
+ };
10
+ red: {
11
+ text: string;
12
+ background: string;
13
+ };
14
+ orange: {
15
+ text: string;
16
+ background: string;
17
+ };
18
+ yellow: {
19
+ text: string;
20
+ background: string;
21
+ };
22
+ green: {
23
+ text: string;
24
+ background: string;
25
+ };
26
+ blue: {
27
+ text: string;
28
+ background: string;
29
+ };
30
+ purple: {
31
+ text: string;
32
+ background: string;
33
+ };
34
+ pink: {
35
+ text: string;
36
+ background: string;
37
+ };
38
+ };
39
+ export declare const COLORS_DARK_MODE_DEFAULT: {
40
+ gray: {
41
+ text: string;
42
+ background: string;
43
+ };
44
+ brown: {
45
+ text: string;
46
+ background: string;
47
+ };
48
+ red: {
49
+ text: string;
50
+ background: string;
51
+ };
52
+ orange: {
53
+ text: string;
54
+ background: string;
55
+ };
56
+ yellow: {
57
+ text: string;
58
+ background: string;
59
+ };
60
+ green: {
61
+ text: string;
62
+ background: string;
63
+ };
64
+ blue: {
65
+ text: string;
66
+ background: string;
67
+ };
68
+ purple: {
69
+ text: string;
70
+ background: string;
71
+ };
72
+ pink: {
73
+ text: string;
74
+ background: string;
75
+ };
76
+ };
@@ -0,0 +1,43 @@
1
+ import { BlockNoteSchema } from "../editor/BlockNoteSchema.js";
2
+ import { COLORS_DEFAULT } from "../editor/defaultColors.js";
3
+ import { BlockFromConfig, BlockSchema, InlineContent, InlineContentSchema, StyleSchema, StyledText, Styles } from "../schema/index.js";
4
+ import type { BlockMapping, InlineContentMapping, StyleMapping } from "./mapping.js";
5
+ export type ExporterOptions = {
6
+ /**
7
+ * A function that can be used to resolve files, images, etc.
8
+ * Exporters might need the binary contents of files like images,
9
+ * which might not always be available from the same origin as the main page.
10
+ * You can use this option to proxy requests through a server you control
11
+ * to avoid cross-origin (CORS) issues.
12
+ *
13
+ * @default uses a BlockNote hosted proxy (https://corsproxy.api.blocknotejs.org/)
14
+ * @param url - The URL of the file to resolve
15
+ * @returns A Promise that resolves to a string (the URL to use instead of the original)
16
+ * or a Blob (you can return the Blob directly if you have already fetched it)
17
+ */
18
+ resolveFileUrl?: (url: string) => Promise<string | Blob>;
19
+ /**
20
+ * Colors to use for background of blocks, font colors, and highlight colors
21
+ */
22
+ colors: typeof COLORS_DEFAULT;
23
+ };
24
+ export declare abstract class Exporter<B extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema, RB, RI, RS, TS> {
25
+ protected readonly mappings: {
26
+ blockMapping: BlockMapping<B, I, S, RB, RI>;
27
+ inlineContentMapping: InlineContentMapping<I, S, RI, TS>;
28
+ styleMapping: StyleMapping<S, RS>;
29
+ };
30
+ readonly options: ExporterOptions;
31
+ constructor(_schema: BlockNoteSchema<B, I, S>, // only used for type inference
32
+ mappings: {
33
+ blockMapping: BlockMapping<B, I, S, RB, RI>;
34
+ inlineContentMapping: InlineContentMapping<I, S, RI, TS>;
35
+ styleMapping: StyleMapping<S, RS>;
36
+ }, options: ExporterOptions);
37
+ resolveFile(url: string): Promise<Blob>;
38
+ mapStyles(styles: Styles<S>): RS[];
39
+ mapInlineContent(inlineContent: InlineContent<I, S>): RI;
40
+ transformInlineContent(inlineContentArray: InlineContent<I, S>[]): RI[];
41
+ abstract transformStyledText(styledText: StyledText<S>): TS;
42
+ mapBlock(block: BlockFromConfig<B[keyof B], I, S>, nestingLevel: number, numberedListIndex: number): Promise<RB>;
43
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./Exporter.js";
2
+ export * from "./mapping.js";
@@ -0,0 +1,30 @@
1
+ import { BlockNoteSchema } from "../editor/BlockNoteSchema.js";
2
+ import { BlockFromConfigNoChildren, BlockSchema, InlineContentFromConfig, InlineContentSchema, StyleSchema, Styles } from "../schema/index.js";
3
+ import type { Exporter } from "./Exporter.js";
4
+ /**
5
+ * Defines a mapping from all block types with a schema to a result type `R`.
6
+ */
7
+ export type BlockMapping<B extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema, RB, RI> = {
8
+ [K in keyof B]: (block: BlockFromConfigNoChildren<B[K], I, S>, exporter: Exporter<any, any, any, RB, RI, any, any>, nestingLevel: number, numberedListIndex?: number) => RB | Promise<RB>;
9
+ };
10
+ /**
11
+ * Defines a mapping from all inline content types with a schema to a result type R.
12
+ */
13
+ export type InlineContentMapping<I extends InlineContentSchema, S extends StyleSchema, RI, TS> = {
14
+ [K in keyof I]: (inlineContent: InlineContentFromConfig<I[K], S>, exporter: Exporter<any, I, S, any, RI, any, TS>) => RI;
15
+ };
16
+ /**
17
+ * Defines a mapping from all style types with a schema to a result type R.
18
+ */
19
+ export type StyleMapping<S extends StyleSchema, RS> = {
20
+ [K in keyof S]: (style: Styles<S>[K], exporter: Exporter<any, any, any, any, any, RS, any>) => RS;
21
+ };
22
+ /**
23
+ * The mapping factory is a utility function to easily create mappings for
24
+ * a BlockNoteSchema. Using the factory makes it easier to get typescript code completion etc.
25
+ */
26
+ export declare function mappingFactory<B extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema>(_schema: BlockNoteSchema<B, I, S>): {
27
+ createBlockMapping: <R, RI>(mapping: BlockMapping<B, I, S, R, RI>) => BlockMapping<B, I, S, R, RI>;
28
+ createInlineContentMapping: <R_1, RS>(mapping: InlineContentMapping<I, S, R_1, RS>) => InlineContentMapping<I, S, R_1, RS>;
29
+ createStyleMapping: <R_2>(mapping: StyleMapping<S, R_2>) => StyleMapping<S, R_2>;
30
+ };
@@ -1,2 +1,5 @@
1
1
  import { Plugin } from "prosemirror-state";
2
- export declare const NodeSelectionKeyboardPlugin: () => Plugin<any>;
2
+ export declare class NodeSelectionKeyboardPlugin {
3
+ readonly plugin: Plugin;
4
+ constructor();
5
+ }
@@ -1,3 +1,6 @@
1
1
  import { Plugin } from "prosemirror-state";
2
2
  import type { BlockNoteEditor } from "../../editor/BlockNoteEditor.js";
3
- export declare const PlaceholderPlugin: (editor: BlockNoteEditor<any, any, any>, placeholders: Record<string | "default", string>) => Plugin<any>;
3
+ export declare class PlaceholderPlugin {
4
+ readonly plugin: Plugin;
5
+ constructor(editor: BlockNoteEditor<any, any, any>, placeholders: Record<string | "default", string>);
6
+ }
@@ -7,8 +7,7 @@ import { Plugin } from "prosemirror-state";
7
7
  *
8
8
  * Solution: When attributes change on a node, this plugin sets a data-* attribute with the "previous" value. This way we can still use CSS transitions. (See block.module.css)
9
9
  */
10
- export declare const PreviousBlockTypePlugin: () => Plugin<{
11
- prevTransactionOldBlockAttrs: any;
12
- currentTransactionOldBlockAttrs: any;
13
- updatedBlocks: Set<string>;
14
- }>;
10
+ export declare class PreviousBlockTypePlugin {
11
+ readonly plugin: Plugin;
12
+ constructor();
13
+ }
@@ -37,6 +37,7 @@ export declare class SideMenuView<BSchema extends BlockSchema, I extends InlineC
37
37
  onDragOver: (event: DragEvent) => void;
38
38
  onKeyDown: (_event: KeyboardEvent) => void;
39
39
  onMouseMove: (event: MouseEvent) => void;
40
+ private createSyntheticEvent;
40
41
  update(_view: EditorView, prevState: EditorState): void;
41
42
  destroy(): void;
42
43
  }
@@ -53,7 +54,7 @@ export declare class SideMenuProsemirrorPlugin<BSchema extends BlockSchema, I ex
53
54
  blockDragStart: (event: {
54
55
  dataTransfer: DataTransfer | null;
55
56
  clientY: number;
56
- }) => void;
57
+ }, block: Block<BSchema, I, S>) => void;
57
58
  /**
58
59
  * Handles drag & drop events for blocks.
59
60
  */
@@ -1,4 +1,3 @@
1
- import { EditorView } from "prosemirror-view";
2
1
  import { Block } from "../../blocks/defaultBlocks.js";
3
2
  import type { BlockNoteEditor } from "../../editor/BlockNoteEditor.js";
4
3
  import { UiElementPosition } from "../../extensions-shared/UiElementPosition.js";
@@ -6,12 +5,8 @@ import { BlockSchema, InlineContentSchema, StyleSchema } from "../../schema/inde
6
5
  export type SideMenuState<BSchema extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema> = UiElementPosition & {
7
6
  block: Block<BSchema, I, S>;
8
7
  };
9
- export declare function getDraggableBlockFromElement(element: Element, view: EditorView): {
10
- node: HTMLElement;
11
- id: string;
12
- } | undefined;
13
8
  export declare function unsetDragImage(rootEl: Document | ShadowRoot): void;
14
9
  export declare function dragStart<BSchema extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema>(e: {
15
10
  dataTransfer: DataTransfer | null;
16
11
  clientY: number;
17
- }, editor: BlockNoteEditor<BSchema, I, S>): void;
12
+ }, block: Block<BSchema, I, S>, editor: BlockNoteEditor<BSchema, I, S>): void;
@@ -0,0 +1,5 @@
1
+ import { EditorView } from "prosemirror-view";
2
+ export declare function getDraggableBlockFromElement(element: Element, view: EditorView): {
3
+ node: HTMLElement;
4
+ id: string;
5
+ } | undefined;
@@ -2,13 +2,10 @@ import * as locales from "./i18n/locales/index.js";
2
2
  export * from "./api/exporters/html/externalHTMLExporter.js";
3
3
  export * from "./api/exporters/html/internalHTMLSerializer.js";
4
4
  export * from "./api/getBlockInfoFromPos.js";
5
+ export * from "./api/nodeUtil.js";
5
6
  export * from "./api/testUtil/index.js";
6
7
  export * from "./blocks/AudioBlockContent/AudioBlockContent.js";
7
8
  export * from "./blocks/CodeBlockContent/CodeBlockContent.js";
8
- export * from "./blocks/defaultBlockHelpers.js";
9
- export * from "./blocks/defaultBlocks.js";
10
- export * from "./blocks/defaultBlockTypeGuards.js";
11
- export * from "./blocks/defaultProps.js";
12
9
  export * from "./blocks/FileBlockContent/FileBlockContent.js";
13
10
  export * from "./blocks/FileBlockContent/fileBlockHelpers.js";
14
11
  export * from "./blocks/FileBlockContent/uploadToTmpFilesDotOrg_DEV_ONLY.js";
@@ -16,10 +13,16 @@ export * from "./blocks/ImageBlockContent/ImageBlockContent.js";
16
13
  export { parseImageElement } from "./blocks/ImageBlockContent/imageBlockHelpers.js";
17
14
  export { EMPTY_CELL_HEIGHT, EMPTY_CELL_WIDTH, } from "./blocks/TableBlockContent/TableExtension.js";
18
15
  export * from "./blocks/VideoBlockContent/VideoBlockContent.js";
16
+ export * from "./blocks/defaultBlockHelpers.js";
17
+ export * from "./blocks/defaultBlockTypeGuards.js";
18
+ export * from "./blocks/defaultBlocks.js";
19
+ export * from "./blocks/defaultProps.js";
19
20
  export * from "./editor/BlockNoteEditor.js";
20
21
  export * from "./editor/BlockNoteExtensions.js";
21
22
  export * from "./editor/BlockNoteSchema.js";
23
+ export * from "./editor/defaultColors.js";
22
24
  export * from "./editor/selectionTypes.js";
25
+ export * from "./exporter/index.js";
23
26
  export * from "./extensions-shared/UiElementPosition.js";
24
27
  export * from "./extensions/FilePanel/FilePanelPlugin.js";
25
28
  export * from "./extensions/FormattingToolbar/FormattingToolbarPlugin.js";
@@ -27,13 +30,14 @@ export * from "./extensions/LinkToolbar/LinkToolbarPlugin.js";
27
30
  export * from "./extensions/SideMenu/SideMenuPlugin.js";
28
31
  export * from "./extensions/SuggestionMenu/DefaultGridSuggestionItem.js";
29
32
  export * from "./extensions/SuggestionMenu/DefaultSuggestionItem.js";
33
+ export * from "./extensions/SuggestionMenu/SuggestionPlugin.js";
30
34
  export * from "./extensions/SuggestionMenu/getDefaultEmojiPickerItems.js";
31
35
  export * from "./extensions/SuggestionMenu/getDefaultSlashMenuItems.js";
32
- export * from "./extensions/SuggestionMenu/SuggestionPlugin.js";
33
36
  export * from "./extensions/TableHandles/TableHandlesPlugin.js";
34
37
  export * from "./i18n/dictionary.js";
35
38
  export * from "./schema/index.js";
36
39
  export * from "./util/browser.js";
40
+ export * from "./util/combineByGroup.js";
37
41
  export * from "./util/esmDependencies.js";
38
42
  export * from "./util/string.js";
39
43
  export * from "./util/typescript.js";
@@ -32,7 +32,7 @@ export type CustomBlockImplementation<T extends CustomBlockConfig, I extends Inl
32
32
  };
33
33
  export declare function applyNonSelectableBlockFix(nodeView: NodeView, editor: Editor): void;
34
34
  export declare function getParseRules(config: BlockConfig, customParseFunction: CustomBlockImplementation<any, any, any>["parse"]): TagParseRule[];
35
- export declare function createBlockSpec<T extends CustomBlockConfig, I extends InlineContentSchema, S extends StyleSchema>(blockConfig: T, blockImplementation: CustomBlockImplementation<T, I, S>): {
35
+ export declare function createBlockSpec<T extends CustomBlockConfig, I extends InlineContentSchema, S extends StyleSchema>(blockConfig: T, blockImplementation: CustomBlockImplementation<NoInfer<T>, I, S>): {
36
36
  config: T;
37
37
  implementation: import("./types.js").TiptapBlockImplementation<T, any, InlineContentSchema, StyleSchema>;
38
38
  };
@@ -15,13 +15,13 @@ export declare function wrapInBlockStructure<BType extends string, PSchema exten
15
15
  contentDOM?: HTMLElement;
16
16
  destroy?: () => void;
17
17
  };
18
- type StronglyTypedTipTapNode<Name extends string, Content extends "inline*" | "tableRow+" | ""> = Node & {
18
+ type StronglyTypedTipTapNode<Name extends string, Content extends "inline*" | "tableRow+" | "blockContainer+" | "column column+" | ""> = Node & {
19
19
  name: Name;
20
20
  config: {
21
21
  content: Content;
22
22
  };
23
23
  };
24
- export declare function createStronglyTypedTiptapNode<Name extends string, Content extends "inline*" | "tableRow+" | "">(config: NodeConfig & {
24
+ export declare function createStronglyTypedTiptapNode<Name extends string, Content extends "inline*" | "tableRow+" | "blockContainer+" | "column column+" | "">(config: NodeConfig & {
25
25
  name: Name;
26
26
  content: Content;
27
27
  }): StronglyTypedTipTapNode<Name, Content>;
@@ -57,7 +57,7 @@ export type TiptapBlockImplementation<T extends BlockConfig, B extends BlockSche
57
57
  };
58
58
  export type BlockSpec<T extends BlockConfig, B extends BlockSchema, I extends InlineContentSchema, S extends StyleSchema> = {
59
59
  config: T;
60
- implementation: TiptapBlockImplementation<T, B, I, S>;
60
+ implementation: TiptapBlockImplementation<NoInfer<T>, B, I, S>;
61
61
  };
62
62
  type NamesMatch<Blocks extends Record<string, BlockConfig>> = Blocks extends {
63
63
  [Type in keyof Blocks]: Type extends string ? Blocks[Type] extends {
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Combines items by group. This can be used to combine multiple slash menu item arrays,
3
+ * while making sure that items from the same group are adjacent to each other.
4
+ */
5
+ export declare function combineByGroup<T extends {
6
+ group?: string;
7
+ }>(items: T[], ...additionalItemsArray: {
8
+ group?: string;
9
+ }[][]): T[];
@@ -1,33 +0,0 @@
1
- import n from "./html-Bx3A18fV.js";
2
- const a = Object.freeze(JSON.parse(`{"injectionSelector":"L:text.html -comment","name":"angular-expression","patterns":[{"include":"#ngExpression"}],"repository":{"arrayLiteral":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"booleanLiteral":{"patterns":[{"match":"(?<!\\\\.|\\\\$)\\\\btrue\\\\b(?!\\\\$)","name":"constant.language.boolean.true.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bfalse\\\\b(?!\\\\$)","name":"constant.language.boolean.false.ts"}]},"expressionOperator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"entity.name.function.pipe.ng"}},"match":"((?<!\\\\|)\\\\|(?!\\\\|))\\\\s?([a-zA-Z0-9\\\\-_$]*)"},{"match":"(?<!\\\\.|\\\\$)\\\\b(let)\\\\b(?!\\\\$)","name":"storage.type.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\b(await)\\\\b(?!\\\\$)","name":"keyword.control.flow.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bdelete\\\\b(?!\\\\$)","name":"keyword.operator.expression.delete.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bin\\\\b(?!\\\\$)","name":"keyword.operator.expression.in.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bof\\\\b(?!\\\\$)","name":"keyword.operator.expression.of.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bif\\\\b(?!\\\\$)","name":"keyword.control.if.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\belse\\\\b(?!\\\\$)","name":"keyword.control.else.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bthen\\\\b(?!\\\\$)","name":"keyword.control.then.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\binstanceof\\\\b(?!\\\\$)","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bnew\\\\b(?!\\\\$)","name":"keyword.operator.new.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bvoid\\\\b(?!\\\\$)","name":"keyword.operator.expression.void.ts"},{"begin":"(?<!\\\\.|\\\\$)\\\\bas\\\\b(?!\\\\$)","beginCaptures":{"0":{"name":"storage.type.as.ts"}},"end":"(?=$|\\"|'|[;,:})\\\\]])","patterns":[{"include":"#type"}]},{"match":"\\\\*=|(?<!\\\\()\\\\/=|%=|\\\\+=|-=","name":"keyword.operator.assignment.compound.ts"},{"match":"\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"match":"!|&&|\\\\?\\\\?|\\\\|\\\\|","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"\\\\%|\\\\*|\\\\/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"captures":{"1":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$0-9A-Za-z])\\\\s*(\\\\/)(?![\\\\/*])"},{"include":"#typeofOperator"}]},"functionCall":{"begin":"(?=(\\\\??\\\\.\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","end":"(?<=\\\\))(?!(\\\\??\\\\.\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","patterns":[{"match":"\\\\?","name":"punctuation.accessor.ts"},{"match":"\\\\.","name":"punctuation.accessor.ts"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.ts"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},{"include":"#parenExpression"}]},"functionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#decorator"},{"include":"#parameterName"},{"include":"#variableInitializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"match":"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.object.property.ts"},"3":{"name":"variable.other.object.property.ts"}},"match":"([?!]?\\\\.)\\\\s*(?:([A-Z][_$\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\.\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"entity.name.function.ts"}},"match":"(?:([?!]?\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.property.ts"}},"match":"([?!]?\\\\.)\\\\s*([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"variable.other.property.ts"}},"match":"([?!]?\\\\.)\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)"},{"captures":{"1":{"name":"constant.other.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:([A-Z][_$\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\.\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)"},{"match":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])","name":"constant.character.other"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"variable.other.readwrite.ts"}]},"literal":{"name":"literal.ts","patterns":[{"include":"#numericLiteral"},{"include":"#booleanLiteral"},{"include":"#nullLiteral"},{"include":"#undefinedLiteral"},{"include":"#numericConstantLiteral"},{"include":"#arrayLiteral"},{"include":"#thisLiteral"}]},"ngExpression":{"name":"meta.expression.ng","patterns":[{"include":"#string"},{"include":"#literal"},{"include":"#ternaryExpression"},{"include":"#expressionOperator"},{"include":"#functionCall"},{"include":"#identifiers"},{"include":"#parenExpression"},{"include":"#punctuationComma"},{"include":"#punctuationAccessor"}]},"nullLiteral":{"match":"(?<!\\\\.|\\\\$)\\\\bnull\\\\b(?!\\\\$)","name":"constant.language.null.ts"},"numericConstantLiteral":{"patterns":[{"match":"(?<!\\\\.|\\\\$)\\\\bNaN\\\\b(?!\\\\$)","name":"constant.language.nan.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bInfinity\\\\b(?!\\\\$)","name":"constant.language.infinity.ts"}]},"numericLiteral":{"patterns":[{"match":"\\\\b(?<!\\\\$)0(x|X)[0-9a-fA-F]+\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"match":"\\\\b(?<!\\\\$)0(b|B)[01]+\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"match":"\\\\\\\\b(?<!\\\\$)0(o|O)?[0-7]+\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"meta.delimiter.decimal.period.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"meta.delimiter.decimal.period.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"meta.delimiter.decimal.period.ts"}},"match":"(?<!\\\\$)(?:(?:\\\\b\\\\d+(\\\\.)\\\\d+[eE][+-]?\\\\d+\\\\b)|#1.1E+3(?:\\\\b\\\\d+(\\\\.)[eE][+-]?\\\\d+\\\\b)|#1.E+3(?:\\\\B(\\\\.)\\\\d+[eE][+-]?\\\\d+\\\\b)|#.1E+3(?:\\\\b\\\\d+[eE][+-]?\\\\d+\\\\b)|#1E+3(?:\\\\b\\\\d+(\\\\.)\\\\d+\\\\b)|#1.1(?:\\\\b\\\\d+(\\\\.)\\\\B)|#1.(?:\\\\B(\\\\.)\\\\d+\\\\b)|#.1(?:\\\\b\\\\d+\\\\b(?!\\\\.))#1)(?!\\\\$)"}]},"parameterName":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(public|private|protected)\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(public|private|protected)\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(\\\\??)"}]},"parenExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"punctuationAccessor":{"match":"\\\\?\\\\.|!\\\\.|\\\\.","name":"punctuation.accessor.ts"},"punctuationComma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuationSemicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstringDouble":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#stringCharacterEscape"}]},"qstringSingle":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#stringCharacterEscape"}]},"string":{"patterns":[{"include":"#qstringSingle"},{"include":"#qstringDouble"}]},"stringCharacterEscape":{"match":"\\\\\\\\(x\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"ternaryExpression":{"begin":"(?!\\\\?\\\\.\\\\s*[^\\\\d])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#ngExpression"}]},"thisLiteral":{"match":"(?<!\\\\.|\\\\$)\\\\bthis\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"name":"meta.type.ts","patterns":[{"include":"#string"},{"include":"#numericLiteral"},{"include":"#typeBuiltinLiterals"},{"include":"#typeTuple"},{"include":"#typeObject"},{"include":"#typeOperators"},{"include":"#typeFnTypeParameters"},{"include":"#typeParenOrFunctionParameters"},{"include":"#typeName"}]},"typeAnnotation":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=$|[,);}\\\\]]|\\\\/\\\\/|\\")|(?==[^>])|(?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},"typeBuiltinLiterals":{"match":"(?<!\\\\.|\\\\$)\\\\b(this|true|false|undefined|null)\\\\b(?!\\\\$)","name":"support.type.builtin.ts"},"typeFnTypeParameters":{"patterns":[{"captures":{"1":{"name":"keyword.control.new.ts"}},"match":"(?<!\\\\.|\\\\$)\\\\b(new)\\\\b(?=\\\\s*<)","name":"meta.type.constructor.ts"},{"begin":"(?<!\\\\.|\\\\$)\\\\b(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"(?<=>)\\\\s*(?=\\\\()","end":"(?<=\\\\))","include":"#typeofOperator","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]}]},"typeName":{"patterns":[{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*([?!]?\\\\.)"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"entity.name.type.ts"}]},"typeObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#typeObjectMembers"}]},"typeObjectMembers":{"patterns":[{"include":"#typeAnnotation"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"}]},"typeOperators":{"patterns":[{"include":"#typeofOperator"},{"match":"[&|]","name":"keyword.operator.type.ts"},{"match":"(?<!\\\\.|\\\\$)\\\\bkeyof\\\\b(?!\\\\$)","name":"keyword.operator.expression.keyof.ts"}]},"typeParenOrFunctionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"include":"#type"},{"include":"#functionParameters"}]},"typeTuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},"typeofOperator":{"match":"(?<!\\\\.|\\\\$)\\\\btypeof\\\\b(?!\\\\$)","name":"keyword.operator.expression.typeof.ts"},"undefinedLiteral":{"match":"(?<!\\\\.|\\\\$)\\\\bundefined\\\\b(?!\\\\$)","name":"constant.language.undefined.ts"},"variableInitializer":{"begin":"(?<!=|!)(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|[,);}\\\\]])","patterns":[{"include":"#ngExpression"}]}},"scopeName":"expression.ng"}`)), e = [
3
- a
4
- ], r = Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-let-declaration","patterns":[{"include":"#letDeclaration"}],"repository":{"letDeclaration":{"begin":"(@let)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(=)?","beginCaptures":{"1":{"name":"storage.type.ng"},"2":{"name":"meta.definition.variable.ng"},"3":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.ng","end":"(?<=;)","patterns":[{"include":"#letInitializer"}]},"letInitializer":{"begin":"\\\\s*","beginCaptures":{"0":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.initializer.ng","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.ng"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.let.ng","embeddedLangs":["angular-expression"]}')), s = [
5
- ...e,
6
- r
7
- ], i = Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment","name":"angular-template","patterns":[{"include":"#interpolation"}],"repository":{"interpolation":{"begin":"{{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"expression.ng","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.ng","embeddedLangs":["angular-expression"]}')), t = [
8
- ...e,
9
- i
10
- ], o = Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-template-blocks","patterns":[{"include":"#block"}],"repository":{"block":{"begin":"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)(?:\\\\s*)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.block.kind.ng"}},"end":"(?<=\\\\})","name":"control.block.ng","patterns":[{"include":"#blockExpression"},{"include":"#blockBody"}]},"blockBody":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"control.block.body.ng","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"blockExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"contentName":"control.block.expression.ng","end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"expression.ng"}]},"transition":{"match":"@","name":"keyword.control.block.transition.ng"}},"scopeName":"template.blocks.ng","embeddedLangs":["angular-expression","angular-template"]}')), c = [
11
- ...e,
12
- ...t,
13
- o
14
- ], m = Object.freeze(JSON.parse('{"displayName":"Angular HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"angular-html","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(</?)(\\\\w[^\\\\s>]*)(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative.ng","embeddedLangs":["html","angular-expression","angular-let-declaration","angular-template","angular-template-blocks"]}')), p = [
15
- ...n,
16
- ...e,
17
- ...s,
18
- ...t,
19
- ...c,
20
- m
21
- ], u = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
22
- __proto__: null,
23
- default: p
24
- }, Symbol.toStringTag, { value: "Module" }));
25
- export {
26
- p as a,
27
- t as b,
28
- e as c,
29
- s as d,
30
- c as e,
31
- u as f
32
- };
33
- //# sourceMappingURL=angular-html-HQGguTAE.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angular-html-HQGguTAE.js","sources":["../node_modules/shiki/dist/langs/angular-expression.mjs","../node_modules/shiki/dist/langs/angular-let-declaration.mjs","../node_modules/shiki/dist/langs/angular-template.mjs","../node_modules/shiki/dist/langs/angular-template-blocks.mjs","../node_modules/shiki/dist/langs/angular-html.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"injectionSelector\\\":\\\"L:text.html -comment\\\",\\\"name\\\":\\\"angular-expression\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}],\\\"repository\\\":{\\\"arrayLiteral\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.array.literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"booleanLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\btrue\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.boolean.true.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bfalse\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.boolean.false.ts\\\"}]},\\\"expressionOperator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.pipe.ng\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\|)\\\\\\\\|(?!\\\\\\\\|))\\\\\\\\s?([a-zA-Z0-9\\\\\\\\-_$]*)\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(let)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.type.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(await)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.flow.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bdelete\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bin\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.of.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bif\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.if.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\belse\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.else.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bthen\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.then.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\binstanceof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bnew\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.new.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bvoid\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.void.ts\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bas\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.as.ts\\\"}},\\\"end\\\":\\\"(?=$|\\\\\\\"|'|[;,:})\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()\\\\\\\\/=|%=|\\\\\\\\+=|-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.ts\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.ts\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ts\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ts\\\"},{\\\"match\\\":\\\"!|&&|\\\\\\\\?\\\\\\\\?|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.ts\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\%|\\\\\\\\*|\\\\\\\\/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$0-9A-Za-z])\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])\\\"},{\\\"include\\\":\\\"#typeofOperator\\\"}]},\\\"functionCall\\\":{\\\"begin\\\":\\\"(?=(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*(<([^<>]|<[^<>]+>)+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*(<([^<>]|<[^<>]+>)+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},{\\\"match\\\":\\\"([_$A-Za-z][_$0-9A-Za-z]*)\\\",\\\"name\\\":\\\"entity.name.function.ts\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},{\\\"include\\\":\\\"#parenExpression\\\"}]},\\\"functionParameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ts\\\"}},\\\"name\\\":\\\"meta.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#parameterName\\\"},{\\\"include\\\":\\\"#variableInitializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.object.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.object.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*(?:([A-Z][_$\\\\\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:([?!]?\\\\\\\\.)\\\\\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\\\\\s*=\\\\\\\\s*((async\\\\\\\\s+)|(function\\\\\\\\s*[(<])|(function\\\\\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\\\\\s*)?\\\\\\\\(([^()]|\\\\\\\\([^()]*\\\\\\\\))*\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*(.)*)?\\\\\\\\s*=>)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*([A-Z][_$\\\\\\\\dA-Z]*)(?![_$0-9A-Za-z])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.object.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.ts\\\"}},\\\"match\\\":\\\"(?:([A-Z][_$\\\\\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)\\\"},{\\\"match\\\":\\\"([A-Z][_$\\\\\\\\dA-Z]*)(?![_$0-9A-Za-z])\\\",\\\"name\\\":\\\"constant.character.other\\\"},{\\\"match\\\":\\\"[_$A-Za-z][_$0-9A-Za-z]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]},\\\"literal\\\":{\\\"name\\\":\\\"literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numericLiteral\\\"},{\\\"include\\\":\\\"#booleanLiteral\\\"},{\\\"include\\\":\\\"#nullLiteral\\\"},{\\\"include\\\":\\\"#undefinedLiteral\\\"},{\\\"include\\\":\\\"#numericConstantLiteral\\\"},{\\\"include\\\":\\\"#arrayLiteral\\\"},{\\\"include\\\":\\\"#thisLiteral\\\"}]},\\\"ngExpression\\\":{\\\"name\\\":\\\"meta.expression.ng\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#ternaryExpression\\\"},{\\\"include\\\":\\\"#expressionOperator\\\"},{\\\"include\\\":\\\"#functionCall\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#parenExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"},{\\\"include\\\":\\\"#punctuationAccessor\\\"}]},\\\"nullLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bnull\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.null.ts\\\"},\\\"numericConstantLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bNaN\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.nan.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bInfinity\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.infinity.ts\\\"}]},\\\"numericLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(x|X)[0-9a-fA-F]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(b|B)[01]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\b(?<!\\\\\\\\$)0(o|O)?[0-7]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)\\\\\\\\d+[eE][+-]?\\\\\\\\d+\\\\\\\\b)|#1.1E+3(?:\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)[eE][+-]?\\\\\\\\d+\\\\\\\\b)|#1.E+3(?:\\\\\\\\B(\\\\\\\\.)\\\\\\\\d+[eE][+-]?\\\\\\\\d+\\\\\\\\b)|#.1E+3(?:\\\\\\\\b\\\\\\\\d+[eE][+-]?\\\\\\\\d+\\\\\\\\b)|#1E+3(?:\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)\\\\\\\\d+\\\\\\\\b)|#1.1(?:\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)\\\\\\\\B)|#1.(?:\\\\\\\\B(\\\\\\\\.)\\\\\\\\d+\\\\\\\\b)|#.1(?:\\\\\\\\b\\\\\\\\d+\\\\\\\\b(?!\\\\\\\\.))#1)(?!\\\\\\\\$)\\\"}]},\\\"parameterName\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*\\\\\\\\b(readonly)\\\\\\\\s+)?(?:\\\\\\\\s*\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*((async\\\\\\\\s+)|(function\\\\\\\\s*[(<])|(function\\\\\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\\\\\s*)?\\\\\\\\(([^()]|\\\\\\\\([^()]*\\\\\\\\))*\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*(.)*)?\\\\\\\\s*=>)))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$0-9A-Za-z]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*\\\\\\\\b(readonly)\\\\\\\\s+)?(?:\\\\\\\\s*\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*(?<!=|:)([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parenExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"punctuationAccessor\\\":{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.|!\\\\\\\\.|\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"punctuationComma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"},\\\"punctuationSemicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.ts\\\"},\\\"qstringDouble\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.double.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringCharacterEscape\\\"}]},\\\"qstringSingle\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.single.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringCharacterEscape\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstringSingle\\\"},{\\\"include\\\":\\\"#qstringDouble\\\"}]},\\\"stringCharacterEscape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.ts\\\"},\\\"ternaryExpression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^\\\\\\\\d])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}]},\\\"thisLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bthis\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.ts\\\"},\\\"type\\\":{\\\"name\\\":\\\"meta.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numericLiteral\\\"},{\\\"include\\\":\\\"#typeBuiltinLiterals\\\"},{\\\"include\\\":\\\"#typeTuple\\\"},{\\\"include\\\":\\\"#typeObject\\\"},{\\\"include\\\":\\\"#typeOperators\\\"},{\\\"include\\\":\\\"#typeFnTypeParameters\\\"},{\\\"include\\\":\\\"#typeParenOrFunctionParameters\\\"},{\\\"include\\\":\\\"#typeName\\\"}]},\\\"typeAnnotation\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?=$|[,);}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/|\\\\\\\")|(?==[^>])|(?<=[}>\\\\\\\\])]|[_$A-Za-z])\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"typeBuiltinLiterals\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(this|true|false|undefined|null)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.type.builtin.ts\\\"},\\\"typeFnTypeParameters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(new)\\\\\\\\b(?=\\\\\\\\s*<)\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]},{\\\"begin\\\":\\\"(?<=>)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"include\\\":\\\"#typeofOperator\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$0-9A-Za-z]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]}]},\\\"typeName\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"}},\\\"match\\\":\\\"([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*([?!]?\\\\\\\\.)\\\"},{\\\"match\\\":\\\"[_$A-Za-z][_$0-9A-Za-z]*\\\",\\\"name\\\":\\\"entity.name.type.ts\\\"}]},\\\"typeObject\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.object.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typeObjectMembers\\\"}]},\\\"typeObjectMembers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeAnnotation\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"},{\\\"include\\\":\\\"#punctuationSemicolon\\\"}]},\\\"typeOperators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeofOperator\\\"},{\\\"match\\\":\\\"[&|]\\\",\\\"name\\\":\\\"keyword.operator.type.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bkeyof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.ts\\\"}]},\\\"typeParenOrFunctionParameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#functionParameters\\\"}]},\\\"typeTuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.type.tuple.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"typeofOperator\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\btypeof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.typeof.ts\\\"},\\\"undefinedLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bundefined\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.undefined.ts\\\"},\\\"variableInitializer\\\":{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=$|[,);}\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}]}},\\\"scopeName\\\":\\\"expression.ng\\\"}\"))\n\nexport default [\nlang\n]\n","import angular_expression from './angular-expression.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment -expression.ng -meta.tag -source.css -source.js\\\",\\\"name\\\":\\\"angular-let-declaration\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#letDeclaration\\\"}],\\\"repository\\\":{\\\"letDeclaration\\\":{\\\"begin\\\":\\\"(@let)\\\\\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\\\\\s*(=)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.ng\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ng\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ng\\\"}},\\\"contentName\\\":\\\"meta.definition.variable.ng\\\",\\\"end\\\":\\\"(?<=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#letInitializer\\\"}]},\\\"letInitializer\\\":{\\\"begin\\\":\\\"\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ng\\\"}},\\\"contentName\\\":\\\"meta.definition.variable.initializer.ng\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.ng\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]}},\\\"scopeName\\\":\\\"template.let.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\"]}\"))\n\nexport default [\n...angular_expression,\nlang\n]\n","import angular_expression from './angular-expression.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment\\\",\\\"name\\\":\\\"angular-template\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}],\\\"repository\\\":{\\\"interpolation\\\":{\\\"begin\\\":\\\"{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"expression.ng\\\",\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]}},\\\"scopeName\\\":\\\"template.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\"]}\"))\n\nexport default [\n...angular_expression,\nlang\n]\n","import angular_expression from './angular-expression.mjs'\nimport angular_template from './angular-template.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment -expression.ng -meta.tag -source.css -source.js\\\",\\\"name\\\":\\\"angular-template-blocks\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"}],\\\"repository\\\":{\\\"block\\\":{\\\"begin\\\":\\\"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)(?:\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.block.kind.ng\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"control.block.ng\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#blockExpression\\\"},{\\\"include\\\":\\\"#blockBody\\\"}]},\\\"blockBody\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"control.block.body.ng\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative.ng\\\"},{\\\"include\\\":\\\"template.ng\\\"}]},\\\"blockExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"contentName\\\":\\\"control.block.expression.ng\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]},\\\"transition\\\":{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.control.block.transition.ng\\\"}},\\\"scopeName\\\":\\\"template.blocks.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\",\\\"angular-template\\\"]}\"))\n\nexport default [\n...angular_expression,\n...angular_template,\nlang\n]\n","import html from './html.mjs'\nimport angular_expression from './angular-expression.mjs'\nimport angular_let_declaration from './angular-let-declaration.mjs'\nimport angular_template from './angular-template.mjs'\nimport angular_template_blocks from './angular-template-blocks.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Angular HTML\\\",\\\"injections\\\":{\\\"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)\\\":{\\\"comment\\\":\\\"Uses R: to ensure this matches after any other injections.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"angular-html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#core-minus-invalid\\\"},{\\\"begin\\\":\\\"(</?)(\\\\\\\\w[^\\\\\\\\s>]*)(?<!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.unrecognized.html.derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]}],\\\"scopeName\\\":\\\"text.html.derivative.ng\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"angular-expression\\\",\\\"angular-let-declaration\\\",\\\"angular-template\\\",\\\"angular-template-blocks\\\"]}\"))\n\nexport default [\n...html,\n...angular_expression,\n...angular_let_declaration,\n...angular_template,\n...angular_template_blocks,\nlang\n]\n"],"names":["lang","angular_expression","angular_let_declaration","angular_template","angular_template_blocks","angular_html","html"],"mappings":";AAAA,MAAMA,IAAO,OAAO,OAAO,KAAK,MAAM,knaAA0hd,CAAC,GAEljdC,IAAA;AAAA,EACfD;AACA,GCFMA,IAAO,OAAO,OAAO,KAAK,MAAM,25BAAugC,CAAC,GAE/hCE,IAAA;AAAA,EACf,GAAGD;AAAA,EACHD;AACA,GCLMA,IAAO,OAAO,OAAO,KAAK,MAAM,ggBAAokB,CAAC,GAE5lBG,IAAA;AAAA,EACf,GAAGF;AAAA,EACHD;AACA,GCJMA,IAAO,OAAO,OAAO,KAAK,MAAM,6vCAA65C,CAAC,GAEr7CI,IAAA;AAAA,EACf,GAAGH;AAAA,EACH,GAAGE;AAAA,EACHH;AACA,GCHMA,IAAO,OAAO,OAAO,KAAK,MAAM,+3BAAu9B,CAAC,GAE/+BK,IAAA;AAAA,EACf,GAAGC;AAAA,EACH,GAAGL;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACHJ;AACA;;;;","x_google_ignoreList":[0,1,2,3,4]}