@fiduswriter/editor 0.1.19 → 0.1.21

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 (786) hide show
  1. package/dist/bibliography/tools.d.ts +14 -0
  2. package/dist/bibliography/tools.d.ts.map +1 -0
  3. package/dist/bibliography/tools.js +1 -1
  4. package/dist/bibliography/tools.js.map +1 -1
  5. package/dist/citations/index.d.ts +17 -0
  6. package/dist/citations/index.d.ts.map +1 -0
  7. package/dist/citations/index.js +22 -13
  8. package/dist/citations/index.js.map +1 -1
  9. package/dist/citations/render.d.ts +29 -0
  10. package/dist/citations/render.d.ts.map +1 -0
  11. package/dist/citations/render.js +25 -8
  12. package/dist/citations/render.js.map +1 -1
  13. package/dist/clipboard/copy/index.d.ts +2 -0
  14. package/dist/clipboard/copy/index.d.ts.map +1 -0
  15. package/dist/clipboard/copy/index.js.map +1 -1
  16. package/dist/clipboard/copy/schema.d.ts +4 -0
  17. package/dist/clipboard/copy/schema.d.ts.map +1 -0
  18. package/dist/clipboard/copy/schema.js +6 -5
  19. package/dist/clipboard/copy/schema.js.map +1 -1
  20. package/dist/clipboard/copy/serializers.d.ts +24 -0
  21. package/dist/clipboard/copy/serializers.d.ts.map +1 -0
  22. package/dist/clipboard/copy/serializers.js +19 -9
  23. package/dist/clipboard/copy/serializers.js.map +1 -1
  24. package/dist/clipboard/paste/fidus_writer.d.ts +7 -0
  25. package/dist/clipboard/paste/fidus_writer.d.ts.map +1 -0
  26. package/dist/clipboard/paste/fidus_writer.js +5 -2
  27. package/dist/clipboard/paste/fidus_writer.js.map +1 -1
  28. package/dist/clipboard/paste/general.d.ts +18 -0
  29. package/dist/clipboard/paste/general.d.ts.map +1 -0
  30. package/dist/clipboard/paste/general.js +18 -6
  31. package/dist/clipboard/paste/general.js.map +1 -1
  32. package/dist/clipboard/paste/google_docs.d.ts +6 -0
  33. package/dist/clipboard/paste/google_docs.d.ts.map +1 -0
  34. package/dist/clipboard/paste/google_docs.js +3 -2
  35. package/dist/clipboard/paste/google_docs.js.map +1 -1
  36. package/dist/clipboard/paste/html.d.ts +22 -0
  37. package/dist/clipboard/paste/html.d.ts.map +1 -0
  38. package/dist/clipboard/paste/html.js +15 -0
  39. package/dist/clipboard/paste/html.js.map +1 -1
  40. package/dist/clipboard/paste/index.d.ts +3 -0
  41. package/dist/clipboard/paste/index.d.ts.map +1 -0
  42. package/dist/clipboard/paste/index.js.map +1 -1
  43. package/dist/clipboard/paste/libreoffice_writer.d.ts +5 -0
  44. package/dist/clipboard/paste/libreoffice_writer.d.ts.map +1 -0
  45. package/dist/clipboard/paste/libreoffice_writer.js +2 -2
  46. package/dist/clipboard/paste/libreoffice_writer.js.map +1 -1
  47. package/dist/clipboard/paste/microsoft_word.d.ts +7 -0
  48. package/dist/clipboard/paste/microsoft_word.d.ts.map +1 -0
  49. package/dist/clipboard/paste/microsoft_word.js +13 -14
  50. package/dist/clipboard/paste/microsoft_word.js.map +1 -1
  51. package/dist/clipboard/paste/text.d.ts +11 -0
  52. package/dist/clipboard/paste/text.d.ts.map +1 -0
  53. package/dist/clipboard/paste/text.js +5 -3
  54. package/dist/clipboard/paste/text.js.map +1 -1
  55. package/dist/collab/chat.d.ts +24 -0
  56. package/dist/collab/chat.d.ts.map +1 -0
  57. package/dist/collab/chat.js +46 -16
  58. package/dist/collab/chat.js.map +1 -1
  59. package/dist/collab/colors.d.ts +16 -0
  60. package/dist/collab/colors.d.ts.map +1 -0
  61. package/dist/collab/colors.js +6 -0
  62. package/dist/collab/colors.js.map +1 -1
  63. package/dist/collab/doc.d.ts +147 -0
  64. package/dist/collab/doc.d.ts.map +1 -0
  65. package/dist/collab/doc.js +77 -42
  66. package/dist/collab/doc.js.map +1 -1
  67. package/dist/collab/index.d.ts +23 -0
  68. package/dist/collab/index.d.ts.map +1 -0
  69. package/dist/collab/index.js +14 -3
  70. package/dist/collab/index.js.map +1 -1
  71. package/dist/collab/merge/changeset.d.ts +23 -0
  72. package/dist/collab/merge/changeset.d.ts.map +1 -0
  73. package/dist/collab/merge/changeset.js +5 -4
  74. package/dist/collab/merge/changeset.js.map +1 -1
  75. package/dist/collab/merge/editor.d.ts +53 -0
  76. package/dist/collab/merge/editor.d.ts.map +1 -0
  77. package/dist/collab/merge/editor.js +62 -35
  78. package/dist/collab/merge/editor.js.map +1 -1
  79. package/dist/collab/merge/footnotes.d.ts +26 -0
  80. package/dist/collab/merge/footnotes.d.ts.map +1 -0
  81. package/dist/collab/merge/footnotes.js +14 -5
  82. package/dist/collab/merge/footnotes.js.map +1 -1
  83. package/dist/collab/merge/index.d.ts +32 -0
  84. package/dist/collab/merge/index.d.ts.map +1 -0
  85. package/dist/collab/merge/index.js +38 -26
  86. package/dist/collab/merge/index.js.map +1 -1
  87. package/dist/collab/merge/recreate_transform.d.ts +4 -0
  88. package/dist/collab/merge/recreate_transform.d.ts.map +1 -0
  89. package/dist/collab/merge/recreate_transform.js +25 -5
  90. package/dist/collab/merge/recreate_transform.js.map +1 -1
  91. package/dist/collab/merge/schema.d.ts +4 -0
  92. package/dist/collab/merge/schema.d.ts.map +1 -0
  93. package/dist/collab/merge/schema.js +35 -26
  94. package/dist/collab/merge/schema.js.map +1 -1
  95. package/dist/collab/merge/state_plugins/action.d.ts +16 -0
  96. package/dist/collab/merge/state_plugins/action.d.ts.map +1 -0
  97. package/dist/collab/merge/state_plugins/action.js +4 -5
  98. package/dist/collab/merge/state_plugins/action.js.map +1 -1
  99. package/dist/collab/merge/state_plugins/clipboard.d.ts +6 -0
  100. package/dist/collab/merge/state_plugins/clipboard.d.ts.map +1 -0
  101. package/dist/collab/merge/state_plugins/clipboard.js +1 -1
  102. package/dist/collab/merge/state_plugins/clipboard.js.map +1 -1
  103. package/dist/collab/merge/state_plugins/diff.d.ts +32 -0
  104. package/dist/collab/merge/state_plugins/diff.d.ts.map +1 -0
  105. package/dist/collab/merge/state_plugins/diff.js +108 -84
  106. package/dist/collab/merge/state_plugins/diff.js.map +1 -1
  107. package/dist/collab/merge/state_plugins/index.d.ts +3 -0
  108. package/dist/collab/merge/state_plugins/index.d.ts.map +1 -0
  109. package/dist/collab/merge/state_plugins/index.js.map +1 -1
  110. package/dist/collab/merge/tools.d.ts +11 -0
  111. package/dist/collab/merge/tools.d.ts.map +1 -0
  112. package/dist/collab/merge/tools.js +16 -14
  113. package/dist/collab/merge/tools.js.map +1 -1
  114. package/dist/collab/templates.d.ts +14 -0
  115. package/dist/collab/templates.d.ts.map +1 -0
  116. package/dist/collab/templates.js +1 -1
  117. package/dist/collab/templates.js.map +1 -1
  118. package/dist/comments/comment.d.ts +29 -0
  119. package/dist/comments/comment.d.ts.map +1 -0
  120. package/dist/comments/comment.js +12 -0
  121. package/dist/comments/comment.js.map +1 -1
  122. package/dist/comments/editors/answer.d.ts +14 -0
  123. package/dist/comments/editors/answer.d.ts.map +1 -0
  124. package/dist/comments/editors/answer.js +5 -3
  125. package/dist/comments/editors/answer.js.map +1 -1
  126. package/dist/comments/editors/comment.d.ts +65 -0
  127. package/dist/comments/editors/comment.d.ts.map +1 -0
  128. package/dist/comments/editors/comment.js +43 -14
  129. package/dist/comments/editors/comment.js.map +1 -1
  130. package/dist/comments/editors/index.d.ts +4 -0
  131. package/dist/comments/editors/index.d.ts.map +1 -0
  132. package/dist/comments/editors/index.js.map +1 -1
  133. package/dist/comments/editors/notify.d.ts +3 -0
  134. package/dist/comments/editors/notify.d.ts.map +1 -0
  135. package/dist/comments/editors/notify.js.map +1 -1
  136. package/dist/comments/editors/schema.d.ts +12 -0
  137. package/dist/comments/editors/schema.d.ts.map +1 -0
  138. package/dist/comments/editors/schema.js +5 -5
  139. package/dist/comments/editors/schema.js.map +1 -1
  140. package/dist/comments/index.d.ts +10 -0
  141. package/dist/comments/index.d.ts.map +1 -0
  142. package/dist/comments/index.js +5 -2
  143. package/dist/comments/index.js.map +1 -1
  144. package/dist/comments/interactions.d.ts +49 -0
  145. package/dist/comments/interactions.d.ts.map +1 -0
  146. package/dist/comments/interactions.js +33 -18
  147. package/dist/comments/interactions.js.map +1 -1
  148. package/dist/comments/store.d.ts +59 -0
  149. package/dist/comments/store.d.ts.map +1 -0
  150. package/dist/comments/store.js +36 -16
  151. package/dist/comments/store.js.map +1 -1
  152. package/dist/contacts/add_dialog.d.ts +7 -0
  153. package/dist/contacts/add_dialog.d.ts.map +1 -0
  154. package/dist/contacts/add_dialog.js +25 -26
  155. package/dist/contacts/add_dialog.js.map +1 -1
  156. package/dist/contacts/templates.d.ts +12 -0
  157. package/dist/contacts/templates.d.ts.map +1 -0
  158. package/dist/contacts/templates.js +3 -2
  159. package/dist/contacts/templates.js.map +1 -1
  160. package/dist/copyright_dialog/index.d.ts +25 -0
  161. package/dist/copyright_dialog/index.d.ts.map +1 -0
  162. package/dist/copyright_dialog/index.js +34 -26
  163. package/dist/copyright_dialog/index.js.map +1 -1
  164. package/dist/copyright_dialog/templates.d.ts +17 -0
  165. package/dist/copyright_dialog/templates.d.ts.map +1 -0
  166. package/dist/copyright_dialog/templates.js.map +1 -1
  167. package/dist/databases/bibliography.d.ts +42 -0
  168. package/dist/databases/bibliography.d.ts.map +1 -0
  169. package/dist/databases/bibliography.js +24 -9
  170. package/dist/databases/bibliography.js.map +1 -1
  171. package/dist/databases/images.d.ts +66 -0
  172. package/dist/databases/images.d.ts.map +1 -0
  173. package/dist/databases/images.js +19 -9
  174. package/dist/databases/images.js.map +1 -1
  175. package/dist/databases/index.d.ts +26 -0
  176. package/dist/databases/index.d.ts.map +1 -0
  177. package/dist/databases/index.js +9 -8
  178. package/dist/databases/index.js.map +1 -1
  179. package/dist/dialogs/citation.d.ts +58 -0
  180. package/dist/dialogs/citation.d.ts.map +1 -0
  181. package/dist/dialogs/citation.js +48 -25
  182. package/dist/dialogs/citation.js.map +1 -1
  183. package/dist/dialogs/code_block.d.ts +25 -0
  184. package/dist/dialogs/code_block.d.ts.map +1 -0
  185. package/dist/dialogs/code_block.js +32 -11
  186. package/dist/dialogs/code_block.js.map +1 -1
  187. package/dist/dialogs/contributor.d.ts +13 -0
  188. package/dist/dialogs/contributor.d.ts.map +1 -0
  189. package/dist/dialogs/contributor.js +17 -20
  190. package/dist/dialogs/contributor.js.map +1 -1
  191. package/dist/dialogs/figure.d.ts +51 -0
  192. package/dist/dialogs/figure.d.ts.map +1 -0
  193. package/dist/dialogs/figure.js +123 -81
  194. package/dist/dialogs/figure.js.map +1 -1
  195. package/dist/dialogs/index.d.ts +11 -0
  196. package/dist/dialogs/index.d.ts.map +1 -0
  197. package/dist/dialogs/index.js.map +1 -1
  198. package/dist/dialogs/language.d.ts +10 -0
  199. package/dist/dialogs/language.d.ts.map +1 -0
  200. package/dist/dialogs/language.js +4 -1
  201. package/dist/dialogs/language.js.map +1 -1
  202. package/dist/dialogs/link.d.ts +30 -0
  203. package/dist/dialogs/link.d.ts.map +1 -0
  204. package/dist/dialogs/link.js +27 -15
  205. package/dist/dialogs/link.js.map +1 -1
  206. package/dist/dialogs/math.d.ts +22 -0
  207. package/dist/dialogs/math.d.ts.map +1 -0
  208. package/dist/dialogs/math.js +27 -14
  209. package/dist/dialogs/math.js.map +1 -1
  210. package/dist/dialogs/ordered_list.d.ts +22 -0
  211. package/dist/dialogs/ordered_list.d.ts.map +1 -0
  212. package/dist/dialogs/ordered_list.js +12 -5
  213. package/dist/dialogs/ordered_list.js.map +1 -1
  214. package/dist/dialogs/revision.d.ts +8 -0
  215. package/dist/dialogs/revision.d.ts.map +1 -0
  216. package/dist/dialogs/revision.js +2 -0
  217. package/dist/dialogs/revision.js.map +1 -1
  218. package/dist/dialogs/subsup.d.ts +5 -0
  219. package/dist/dialogs/subsup.d.ts.map +1 -0
  220. package/dist/dialogs/subsup.js +3 -3
  221. package/dist/dialogs/subsup.js.map +1 -1
  222. package/dist/dialogs/table.d.ts +33 -0
  223. package/dist/dialogs/table.d.ts.map +1 -0
  224. package/dist/dialogs/table.js +43 -21
  225. package/dist/dialogs/table.js.map +1 -1
  226. package/dist/dialogs/templates.d.ts +85 -0
  227. package/dist/dialogs/templates.d.ts.map +1 -0
  228. package/dist/dialogs/templates.js +8 -8
  229. package/dist/dialogs/templates.js.map +1 -1
  230. package/dist/document_template/exporter.d.ts +23 -0
  231. package/dist/document_template/exporter.d.ts.map +1 -0
  232. package/dist/document_template/exporter.js +14 -5
  233. package/dist/document_template/exporter.js.map +1 -1
  234. package/dist/document_template/index.d.ts +35 -0
  235. package/dist/document_template/index.d.ts.map +1 -0
  236. package/dist/document_template/index.js +61 -53
  237. package/dist/document_template/index.js.map +1 -1
  238. package/dist/document_template/schema.d.ts +13 -0
  239. package/dist/document_template/schema.d.ts.map +1 -0
  240. package/dist/document_template/schema.js +2 -2
  241. package/dist/document_template/schema.js.map +1 -1
  242. package/dist/documents/access_rights/index.d.ts +85 -0
  243. package/dist/documents/access_rights/index.d.ts.map +1 -0
  244. package/dist/documents/access_rights/index.js +96 -60
  245. package/dist/documents/access_rights/index.js.map +1 -1
  246. package/dist/documents/access_rights/templates.d.ts +47 -0
  247. package/dist/documents/access_rights/templates.d.ts.map +1 -0
  248. package/dist/documents/access_rights/templates.js.map +1 -1
  249. package/dist/e2ee/snapshot-manager.d.ts +120 -0
  250. package/dist/e2ee/snapshot-manager.d.ts.map +1 -0
  251. package/dist/e2ee/snapshot-manager.js +27 -38
  252. package/dist/e2ee/snapshot-manager.js.map +1 -1
  253. package/dist/exporter/native/copy.d.ts +16 -0
  254. package/dist/exporter/native/copy.d.ts.map +1 -0
  255. package/dist/exporter/native/copy.js +51 -35
  256. package/dist/exporter/native/copy.js.map +1 -1
  257. package/dist/exporter/native/file.d.ts +6 -0
  258. package/dist/exporter/native/file.d.ts.map +1 -0
  259. package/dist/exporter/native/file.js +1 -1
  260. package/dist/exporter/native/file.js.map +1 -1
  261. package/dist/exporter/native/index.d.ts +4 -0
  262. package/dist/exporter/native/index.d.ts.map +1 -0
  263. package/dist/exporter/native/index.js.map +1 -1
  264. package/dist/exporter/native/revision.d.ts +8 -0
  265. package/dist/exporter/native/revision.d.ts.map +1 -0
  266. package/dist/exporter/native/revision.js +2 -2
  267. package/dist/exporter/native/revision.js.map +1 -1
  268. package/dist/exporter/native/zip.d.ts +2 -0
  269. package/dist/exporter/native/zip.d.ts.map +1 -0
  270. package/dist/exporter/native/zip.js.map +1 -1
  271. package/dist/footnotes/editor.d.ts +25 -0
  272. package/dist/footnotes/editor.d.ts.map +1 -0
  273. package/dist/footnotes/editor.js +5 -3
  274. package/dist/footnotes/editor.js.map +1 -1
  275. package/dist/footnotes/index.d.ts +11 -0
  276. package/dist/footnotes/index.d.ts.map +1 -0
  277. package/dist/footnotes/index.js +5 -2
  278. package/dist/footnotes/index.js.map +1 -1
  279. package/dist/footnotes/layout.d.ts +15 -0
  280. package/dist/footnotes/layout.d.ts.map +1 -0
  281. package/dist/footnotes/layout.js +26 -17
  282. package/dist/footnotes/layout.js.map +1 -1
  283. package/dist/footnotes/state_plugins/access_rights.d.ts +6 -0
  284. package/dist/footnotes/state_plugins/access_rights.d.ts.map +1 -0
  285. package/dist/footnotes/state_plugins/access_rights.js +1 -1
  286. package/dist/footnotes/state_plugins/access_rights.js.map +1 -1
  287. package/dist/footnotes/state_plugins/index.d.ts +2 -0
  288. package/dist/footnotes/state_plugins/index.d.ts.map +1 -0
  289. package/dist/footnotes/state_plugins/index.js.map +1 -1
  290. package/dist/images/edit_dialog/model.d.ts +4 -0
  291. package/dist/images/edit_dialog/model.d.ts.map +1 -0
  292. package/dist/images/edit_dialog/model.js.map +1 -1
  293. package/dist/index.d.ts +74 -0
  294. package/dist/index.d.ts.map +1 -0
  295. package/dist/index.js +88 -60
  296. package/dist/index.js.map +1 -1
  297. package/dist/keymap.d.ts +5 -0
  298. package/dist/keymap.d.ts.map +1 -0
  299. package/dist/keymap.js +1 -1
  300. package/dist/keymap.js.map +1 -1
  301. package/dist/marginboxes/index.d.ts +107 -0
  302. package/dist/marginboxes/index.d.ts.map +1 -0
  303. package/dist/marginboxes/index.js +165 -88
  304. package/dist/marginboxes/index.js.map +1 -1
  305. package/dist/marginboxes/templates.d.ts +118 -0
  306. package/dist/marginboxes/templates.d.ts.map +1 -0
  307. package/dist/marginboxes/templates.js +25 -24
  308. package/dist/marginboxes/templates.js.map +1 -1
  309. package/dist/menus/code_block/index.d.ts +2 -0
  310. package/dist/menus/code_block/index.d.ts.map +1 -0
  311. package/dist/menus/code_block/index.js.map +1 -1
  312. package/dist/menus/code_block/model.d.ts +14 -0
  313. package/dist/menus/code_block/model.d.ts.map +1 -0
  314. package/dist/menus/code_block/model.js +5 -4
  315. package/dist/menus/code_block/model.js.map +1 -1
  316. package/dist/menus/figure/index.d.ts +3 -0
  317. package/dist/menus/figure/index.d.ts.map +1 -0
  318. package/dist/menus/figure/index.js.map +1 -1
  319. package/dist/menus/figure/model.d.ts +32 -0
  320. package/dist/menus/figure/model.d.ts.map +1 -0
  321. package/dist/menus/figure/model.js +11 -12
  322. package/dist/menus/figure/model.js.map +1 -1
  323. package/dist/menus/figure/utils.d.ts +3 -0
  324. package/dist/menus/figure/utils.d.ts.map +1 -0
  325. package/dist/menus/figure/utils.js +4 -1
  326. package/dist/menus/figure/utils.js.map +1 -1
  327. package/dist/menus/headerbar/index.d.ts +3 -0
  328. package/dist/menus/headerbar/index.d.ts.map +1 -0
  329. package/dist/menus/headerbar/index.js.map +1 -1
  330. package/dist/menus/headerbar/model.d.ts +192 -0
  331. package/dist/menus/headerbar/model.d.ts.map +1 -0
  332. package/dist/menus/headerbar/model.js +141 -110
  333. package/dist/menus/headerbar/model.js.map +1 -1
  334. package/dist/menus/headerbar/view.d.ts +89 -0
  335. package/dist/menus/headerbar/view.d.ts.map +1 -0
  336. package/dist/menus/headerbar/view.js +76 -45
  337. package/dist/menus/headerbar/view.js.map +1 -1
  338. package/dist/menus/image/index.d.ts +2 -0
  339. package/dist/menus/image/index.d.ts.map +1 -0
  340. package/dist/menus/image/index.js.map +1 -1
  341. package/dist/menus/image/model.d.ts +18 -0
  342. package/dist/menus/image/model.d.ts.map +1 -0
  343. package/dist/menus/image/model.js +2 -2
  344. package/dist/menus/image/model.js.map +1 -1
  345. package/dist/menus/index.d.ts +10 -0
  346. package/dist/menus/index.d.ts.map +1 -0
  347. package/dist/menus/index.js.map +1 -1
  348. package/dist/menus/navigator/index.d.ts +2 -0
  349. package/dist/menus/navigator/index.d.ts.map +1 -0
  350. package/dist/menus/navigator/index.js.map +1 -1
  351. package/dist/menus/navigator/model.d.ts +9 -0
  352. package/dist/menus/navigator/model.d.ts.map +1 -0
  353. package/dist/menus/navigator/model.js.map +1 -1
  354. package/dist/menus/ordered_list/index.d.ts +2 -0
  355. package/dist/menus/ordered_list/index.d.ts.map +1 -0
  356. package/dist/menus/ordered_list/index.js.map +1 -1
  357. package/dist/menus/ordered_list/model.d.ts +11 -0
  358. package/dist/menus/ordered_list/model.d.ts.map +1 -0
  359. package/dist/menus/ordered_list/model.js +1 -1
  360. package/dist/menus/ordered_list/model.js.map +1 -1
  361. package/dist/menus/selection/index.d.ts +3 -0
  362. package/dist/menus/selection/index.d.ts.map +1 -0
  363. package/dist/menus/selection/index.js.map +1 -1
  364. package/dist/menus/selection/model.d.ts +16 -0
  365. package/dist/menus/selection/model.d.ts.map +1 -0
  366. package/dist/menus/selection/model.js +18 -16
  367. package/dist/menus/selection/model.js.map +1 -1
  368. package/dist/menus/selection/view.d.ts +49 -0
  369. package/dist/menus/selection/view.d.ts.map +1 -0
  370. package/dist/menus/selection/view.js +33 -18
  371. package/dist/menus/selection/view.js.map +1 -1
  372. package/dist/menus/table/index.d.ts +2 -0
  373. package/dist/menus/table/index.d.ts.map +1 -0
  374. package/dist/menus/table/index.js.map +1 -1
  375. package/dist/menus/table/model.d.ts +39 -0
  376. package/dist/menus/table/model.d.ts.map +1 -0
  377. package/dist/menus/table/model.js +53 -50
  378. package/dist/menus/table/model.js.map +1 -1
  379. package/dist/menus/toolbar/index.d.ts +3 -0
  380. package/dist/menus/toolbar/index.d.ts.map +1 -0
  381. package/dist/menus/toolbar/index.js.map +1 -1
  382. package/dist/menus/toolbar/model.d.ts +125 -0
  383. package/dist/menus/toolbar/model.d.ts.map +1 -0
  384. package/dist/menus/toolbar/model.js +160 -140
  385. package/dist/menus/toolbar/model.js.map +1 -1
  386. package/dist/menus/toolbar/view.d.ts +72 -0
  387. package/dist/menus/toolbar/view.d.ts.map +1 -0
  388. package/dist/menus/toolbar/view.js +61 -36
  389. package/dist/menus/toolbar/view.js.map +1 -1
  390. package/dist/navigator/index.d.ts +38 -0
  391. package/dist/navigator/index.d.ts.map +1 -0
  392. package/dist/navigator/index.js +42 -21
  393. package/dist/navigator/index.js.map +1 -1
  394. package/dist/no_collab_save/index.d.ts +20 -0
  395. package/dist/no_collab_save/index.d.ts.map +1 -0
  396. package/dist/no_collab_save/index.js +20 -11
  397. package/dist/no_collab_save/index.js.map +1 -1
  398. package/dist/plugins/citation_dialog/index.d.ts +2 -0
  399. package/dist/plugins/citation_dialog/index.d.ts.map +1 -0
  400. package/dist/plugins/citation_dialog/index.js.map +1 -1
  401. package/dist/plugins/editor/index.d.ts +2 -0
  402. package/dist/plugins/editor/index.d.ts.map +1 -0
  403. package/dist/plugins/editor/index.js.map +1 -1
  404. package/dist/state_plugins/access_rights.d.ts +6 -0
  405. package/dist/state_plugins/access_rights.d.ts.map +1 -0
  406. package/dist/state_plugins/access_rights.js +5 -3
  407. package/dist/state_plugins/access_rights.js.map +1 -1
  408. package/dist/state_plugins/citation_render.d.ts +9 -0
  409. package/dist/state_plugins/citation_render.d.ts.map +1 -0
  410. package/dist/state_plugins/citation_render.js +12 -43
  411. package/dist/state_plugins/citation_render.js.map +1 -1
  412. package/dist/state_plugins/clipboard.d.ts +12 -0
  413. package/dist/state_plugins/clipboard.d.ts.map +1 -0
  414. package/dist/state_plugins/clipboard.js +13 -11
  415. package/dist/state_plugins/clipboard.js.map +1 -1
  416. package/dist/state_plugins/code_block.d.ts +6 -0
  417. package/dist/state_plugins/code_block.d.ts.map +1 -0
  418. package/dist/state_plugins/code_block.js +23 -9
  419. package/dist/state_plugins/code_block.js.map +1 -1
  420. package/dist/state_plugins/collab_carets.d.ts +26 -0
  421. package/dist/state_plugins/collab_carets.d.ts.map +1 -0
  422. package/dist/state_plugins/collab_carets.js +24 -16
  423. package/dist/state_plugins/collab_carets.js.map +1 -1
  424. package/dist/state_plugins/comments.d.ts +15 -0
  425. package/dist/state_plugins/comments.d.ts.map +1 -0
  426. package/dist/state_plugins/comments.js +26 -21
  427. package/dist/state_plugins/comments.js.map +1 -1
  428. package/dist/state_plugins/contributor_input/dropup.d.ts +17 -0
  429. package/dist/state_plugins/contributor_input/dropup.d.ts.map +1 -0
  430. package/dist/state_plugins/contributor_input/dropup.js +19 -20
  431. package/dist/state_plugins/contributor_input/dropup.js.map +1 -1
  432. package/dist/state_plugins/contributor_input/index.d.ts +3 -0
  433. package/dist/state_plugins/contributor_input/index.d.ts.map +1 -0
  434. package/dist/state_plugins/contributor_input/index.js.map +1 -1
  435. package/dist/state_plugins/contributor_input/node_view.d.ts +7 -0
  436. package/dist/state_plugins/contributor_input/node_view.d.ts.map +1 -0
  437. package/dist/state_plugins/contributor_input/node_view.js.map +1 -1
  438. package/dist/state_plugins/contributor_input/plugin.d.ts +19 -0
  439. package/dist/state_plugins/contributor_input/plugin.d.ts.map +1 -0
  440. package/dist/state_plugins/contributor_input/plugin.js +14 -45
  441. package/dist/state_plugins/contributor_input/plugin.js.map +1 -1
  442. package/dist/state_plugins/document_template.d.ts +33 -0
  443. package/dist/state_plugins/document_template.d.ts.map +1 -0
  444. package/dist/state_plugins/document_template.js +34 -15
  445. package/dist/state_plugins/document_template.js.map +1 -1
  446. package/dist/state_plugins/figure.d.ts +6 -0
  447. package/dist/state_plugins/figure.d.ts.map +1 -0
  448. package/dist/state_plugins/figure.js +26 -8
  449. package/dist/state_plugins/figure.js.map +1 -1
  450. package/dist/state_plugins/footnote_markers.d.ts +15 -0
  451. package/dist/state_plugins/footnote_markers.d.ts.map +1 -0
  452. package/dist/state_plugins/footnote_markers.js +72 -153
  453. package/dist/state_plugins/footnote_markers.js.map +1 -1
  454. package/dist/state_plugins/headerbar.d.ts +6 -0
  455. package/dist/state_plugins/headerbar.d.ts.map +1 -0
  456. package/dist/state_plugins/headerbar.js +1 -1
  457. package/dist/state_plugins/headerbar.js.map +1 -1
  458. package/dist/state_plugins/index.d.ts +28 -0
  459. package/dist/state_plugins/index.d.ts.map +1 -0
  460. package/dist/state_plugins/index.js +13 -12
  461. package/dist/state_plugins/index.js.map +1 -1
  462. package/dist/state_plugins/inline_math.d.ts +6 -0
  463. package/dist/state_plugins/inline_math.d.ts.map +1 -0
  464. package/dist/state_plugins/inline_math.js +28 -19
  465. package/dist/state_plugins/inline_math.js.map +1 -1
  466. package/dist/state_plugins/inline_reference/dropup.d.ts +62 -0
  467. package/dist/state_plugins/inline_reference/dropup.d.ts.map +1 -0
  468. package/dist/state_plugins/inline_reference/dropup.js +17 -17
  469. package/dist/state_plugins/inline_reference/dropup.js.map +1 -1
  470. package/dist/state_plugins/inline_reference/index.d.ts +2 -0
  471. package/dist/state_plugins/inline_reference/index.d.ts.map +1 -0
  472. package/dist/state_plugins/inline_reference/index.js.map +1 -1
  473. package/dist/state_plugins/inline_reference/plugin.d.ts +35 -0
  474. package/dist/state_plugins/inline_reference/plugin.d.ts.map +1 -0
  475. package/dist/state_plugins/inline_reference/plugin.js +68 -55
  476. package/dist/state_plugins/inline_reference/plugin.js.map +1 -1
  477. package/dist/state_plugins/jump_hidden_nodes.d.ts +5 -0
  478. package/dist/state_plugins/jump_hidden_nodes.d.ts.map +1 -0
  479. package/dist/state_plugins/jump_hidden_nodes.js +35 -22
  480. package/dist/state_plugins/jump_hidden_nodes.js.map +1 -1
  481. package/dist/state_plugins/links.d.ts +11 -0
  482. package/dist/state_plugins/links.d.ts.map +1 -0
  483. package/dist/state_plugins/links.js +39 -25
  484. package/dist/state_plugins/links.js.map +1 -1
  485. package/dist/state_plugins/marginboxes.d.ts +6 -0
  486. package/dist/state_plugins/marginboxes.d.ts.map +1 -0
  487. package/dist/state_plugins/marginboxes.js +2 -1
  488. package/dist/state_plugins/marginboxes.js.map +1 -1
  489. package/dist/state_plugins/ordered_list_menu.d.ts +6 -0
  490. package/dist/state_plugins/ordered_list_menu.d.ts.map +1 -0
  491. package/dist/state_plugins/ordered_list_menu.js +20 -6
  492. package/dist/state_plugins/ordered_list_menu.js.map +1 -1
  493. package/dist/state_plugins/placeholders.d.ts +6 -0
  494. package/dist/state_plugins/placeholders.d.ts.map +1 -0
  495. package/dist/state_plugins/placeholders.js +18 -54
  496. package/dist/state_plugins/placeholders.js.map +1 -1
  497. package/dist/state_plugins/search.d.ts +34 -0
  498. package/dist/state_plugins/search.d.ts.map +1 -0
  499. package/dist/state_plugins/search.js +31 -27
  500. package/dist/state_plugins/search.js.map +1 -1
  501. package/dist/state_plugins/selection_menu.d.ts +6 -0
  502. package/dist/state_plugins/selection_menu.d.ts.map +1 -0
  503. package/dist/state_plugins/selection_menu.js +1 -1
  504. package/dist/state_plugins/selection_menu.js.map +1 -1
  505. package/dist/state_plugins/settings.d.ts +8 -0
  506. package/dist/state_plugins/settings.d.ts.map +1 -0
  507. package/dist/state_plugins/settings.js +31 -21
  508. package/dist/state_plugins/settings.js.map +1 -1
  509. package/dist/state_plugins/table.d.ts +6 -0
  510. package/dist/state_plugins/table.d.ts.map +1 -0
  511. package/dist/state_plugins/table.js +33 -13
  512. package/dist/state_plugins/table.js.map +1 -1
  513. package/dist/state_plugins/tag_input/index.d.ts +3 -0
  514. package/dist/state_plugins/tag_input/index.d.ts.map +1 -0
  515. package/dist/state_plugins/tag_input/index.js.map +1 -1
  516. package/dist/state_plugins/tag_input/node_view.d.ts +7 -0
  517. package/dist/state_plugins/tag_input/node_view.d.ts.map +1 -0
  518. package/dist/state_plugins/tag_input/node_view.js.map +1 -1
  519. package/dist/state_plugins/tag_input/plugin.d.ts +14 -0
  520. package/dist/state_plugins/tag_input/plugin.d.ts.map +1 -0
  521. package/dist/state_plugins/tag_input/plugin.js +7 -6
  522. package/dist/state_plugins/tag_input/plugin.js.map +1 -1
  523. package/dist/state_plugins/toc_render.d.ts +6 -0
  524. package/dist/state_plugins/toc_render.d.ts.map +1 -0
  525. package/dist/state_plugins/toc_render.js +59 -96
  526. package/dist/state_plugins/toc_render.js.map +1 -1
  527. package/dist/state_plugins/toolbar.d.ts +6 -0
  528. package/dist/state_plugins/toolbar.d.ts.map +1 -0
  529. package/dist/state_plugins/toolbar.js +1 -1
  530. package/dist/state_plugins/toolbar.js.map +1 -1
  531. package/dist/state_plugins/track/find_selected_changes.d.ts +13 -0
  532. package/dist/state_plugins/track/find_selected_changes.d.ts.map +1 -0
  533. package/dist/state_plugins/track/find_selected_changes.js +4 -3
  534. package/dist/state_plugins/track/find_selected_changes.js.map +1 -1
  535. package/dist/state_plugins/track/helpers.d.ts +29 -0
  536. package/dist/state_plugins/track/helpers.d.ts.map +1 -0
  537. package/dist/state_plugins/track/helpers.js +9 -3
  538. package/dist/state_plugins/track/helpers.js.map +1 -1
  539. package/dist/state_plugins/track/index.d.ts +3 -0
  540. package/dist/state_plugins/track/index.d.ts.map +1 -0
  541. package/dist/state_plugins/track/index.js.map +1 -1
  542. package/dist/state_plugins/track/plugin.d.ts +14 -0
  543. package/dist/state_plugins/track/plugin.d.ts.map +1 -0
  544. package/dist/state_plugins/track/plugin.js +10 -6
  545. package/dist/state_plugins/track/plugin.js.map +1 -1
  546. package/dist/tools/index.d.ts +4 -0
  547. package/dist/tools/index.d.ts.map +1 -0
  548. package/dist/tools/index.js.map +1 -1
  549. package/dist/tools/key_bindings/index.d.ts +7 -0
  550. package/dist/tools/key_bindings/index.d.ts.map +1 -0
  551. package/dist/tools/key_bindings/index.js +1 -3
  552. package/dist/tools/key_bindings/index.js.map +1 -1
  553. package/dist/tools/key_bindings/templates.d.ts +2 -0
  554. package/dist/tools/key_bindings/templates.d.ts.map +1 -0
  555. package/dist/tools/key_bindings/templates.js.map +1 -1
  556. package/dist/tools/search_replace/index.d.ts +28 -0
  557. package/dist/tools/search_replace/index.d.ts.map +1 -0
  558. package/dist/tools/search_replace/index.js +53 -27
  559. package/dist/tools/search_replace/index.js.map +1 -1
  560. package/dist/tools/search_replace/templates.d.ts +6 -0
  561. package/dist/tools/search_replace/templates.d.ts.map +1 -0
  562. package/dist/tools/search_replace/templates.js.map +1 -1
  563. package/dist/tools/word_count/index.d.ts +15 -0
  564. package/dist/tools/word_count/index.d.ts.map +1 -0
  565. package/dist/tools/word_count/index.js +2 -1
  566. package/dist/tools/word_count/index.js.map +1 -1
  567. package/dist/tools/word_count/templates.d.ts +11 -0
  568. package/dist/tools/word_count/templates.d.ts.map +1 -0
  569. package/dist/tools/word_count/templates.js.map +1 -1
  570. package/dist/track/accept.d.ts +3 -0
  571. package/dist/track/accept.d.ts.map +1 -0
  572. package/dist/track/accept.js +10 -5
  573. package/dist/track/accept.js.map +1 -1
  574. package/dist/track/accept_all.d.ts +3 -0
  575. package/dist/track/accept_all.d.ts.map +1 -0
  576. package/dist/track/accept_all.js +2 -2
  577. package/dist/track/accept_all.js.map +1 -1
  578. package/dist/track/accept_all_no_insertions.d.ts +3 -0
  579. package/dist/track/accept_all_no_insertions.d.ts.map +1 -0
  580. package/dist/track/accept_all_no_insertions.js +2 -2
  581. package/dist/track/accept_all_no_insertions.js.map +1 -1
  582. package/dist/track/amend_transaction.d.ts +5 -0
  583. package/dist/track/amend_transaction.d.ts.map +1 -0
  584. package/dist/track/amend_transaction.js +55 -32
  585. package/dist/track/amend_transaction.js.map +1 -1
  586. package/dist/track/delete.d.ts +3 -0
  587. package/dist/track/delete.d.ts.map +1 -0
  588. package/dist/track/delete.js +4 -3
  589. package/dist/track/delete.js.map +1 -1
  590. package/dist/track/index.d.ts +6 -0
  591. package/dist/track/index.d.ts.map +1 -0
  592. package/dist/track/index.js.map +1 -1
  593. package/dist/track/mod.d.ts +10 -0
  594. package/dist/track/mod.d.ts.map +1 -0
  595. package/dist/track/mod.js +9 -5
  596. package/dist/track/mod.js.map +1 -1
  597. package/dist/track/reject.d.ts +3 -0
  598. package/dist/track/reject.d.ts.map +1 -0
  599. package/dist/track/reject.js +14 -5
  600. package/dist/track/reject.js.map +1 -1
  601. package/dist/track/reject_all.d.ts +3 -0
  602. package/dist/track/reject_all.d.ts.map +1 -0
  603. package/dist/track/reject_all.js +6 -2
  604. package/dist/track/reject_all.js.map +1 -1
  605. package/dist/types.d.ts +182 -0
  606. package/dist/types.d.ts.map +1 -0
  607. package/dist/types.js +17 -0
  608. package/dist/types.js.map +1 -0
  609. package/package.json +38 -3
  610. package/src/bibliography/{tools.js → tools.ts} +16 -5
  611. package/src/citations/{index.js → index.ts} +100 -80
  612. package/src/citations/{render.js → render.ts} +43 -15
  613. package/src/clipboard/copy/{schema.js → schema.ts} +19 -8
  614. package/src/clipboard/copy/{serializers.js → serializers.ts} +44 -32
  615. package/src/clipboard/paste/{fidus_writer.js → fidus_writer.ts} +28 -8
  616. package/src/clipboard/paste/{general.js → general.ts} +28 -13
  617. package/src/clipboard/paste/{google_docs.js → google_docs.ts} +7 -4
  618. package/src/clipboard/paste/{html.js → html.ts} +35 -8
  619. package/src/clipboard/paste/{libreoffice_writer.js → libreoffice_writer.ts} +4 -4
  620. package/src/clipboard/paste/{microsoft_word.js → microsoft_word.ts} +22 -21
  621. package/src/clipboard/paste/{text.js → text.ts} +11 -7
  622. package/src/collab/{chat.js → chat.ts} +78 -27
  623. package/src/collab/{colors.js → colors.ts} +21 -5
  624. package/src/collab/{doc.js → doc.ts} +290 -184
  625. package/src/collab/{index.js → index.ts} +47 -13
  626. package/src/collab/merge/{changeset.js → changeset.ts} +33 -20
  627. package/src/collab/merge/{editor.js → editor.ts} +211 -107
  628. package/src/collab/merge/{footnotes.js → footnotes.ts} +43 -22
  629. package/src/collab/merge/{index.js → index.ts} +147 -70
  630. package/src/collab/merge/{recreate_transform.js → recreate_transform.ts} +60 -29
  631. package/src/collab/merge/{schema.js → schema.ts} +55 -35
  632. package/src/collab/merge/state_plugins/{action.js → action.ts} +65 -27
  633. package/src/collab/merge/state_plugins/{clipboard.js → clipboard.ts} +13 -3
  634. package/src/collab/merge/state_plugins/{diff.js → diff.ts} +279 -168
  635. package/src/collab/merge/{tools.js → tools.ts} +57 -27
  636. package/src/collab/{templates.js → templates.ts} +17 -2
  637. package/src/comments/{comment.js → comment.ts} +26 -0
  638. package/src/comments/editors/{answer.js → answer.ts} +27 -12
  639. package/src/comments/editors/{comment.js → comment.ts} +112 -36
  640. package/src/comments/editors/{notify.js → notify.ts} +6 -1
  641. package/src/comments/editors/{schema.js → schema.ts} +9 -8
  642. package/src/comments/index.ts +16 -0
  643. package/src/comments/{interactions.js → interactions.ts} +150 -89
  644. package/src/comments/{store.js → store.ts} +149 -73
  645. package/src/contacts/{add_dialog.js → add_dialog.ts} +50 -37
  646. package/src/contacts/{templates.js → templates.ts} +9 -3
  647. package/src/copyright_dialog/{index.js → index.ts} +92 -57
  648. package/src/copyright_dialog/{templates.js → templates.ts} +18 -3
  649. package/src/databases/{bibliography.js → bibliography.ts} +62 -36
  650. package/src/databases/{images.js → images.ts} +146 -96
  651. package/src/databases/index.ts +116 -0
  652. package/src/dialogs/{citation.js → citation.ts} +191 -107
  653. package/src/dialogs/{code_block.js → code_block.ts} +75 -33
  654. package/src/dialogs/{contributor.js → contributor.ts} +74 -49
  655. package/src/dialogs/{figure.js → figure.ts} +250 -149
  656. package/src/dialogs/{language.js → language.ts} +11 -6
  657. package/src/dialogs/{link.js → link.ts} +105 -60
  658. package/src/dialogs/{math.js → math.ts} +56 -28
  659. package/src/dialogs/{ordered_list.js → ordered_list.ts} +25 -12
  660. package/src/dialogs/{revision.js → revision.ts} +13 -9
  661. package/src/dialogs/{subsup.js → subsup.ts} +9 -7
  662. package/src/dialogs/{table.js → table.ts} +129 -70
  663. package/src/dialogs/{templates.js → templates.ts} +102 -22
  664. package/src/document_template/exporter.ts +158 -0
  665. package/src/document_template/{index.js → index.ts} +158 -117
  666. package/src/document_template/{schema.js → schema.ts} +31 -28
  667. package/src/documents/access_rights/{index.js → index.ts} +240 -123
  668. package/src/documents/access_rights/{templates.js → templates.ts} +41 -5
  669. package/src/e2ee/{snapshot-manager.js → snapshot-manager.ts} +80 -49
  670. package/src/exporter/native/copy.ts +302 -0
  671. package/src/exporter/native/{file.js → file.ts} +12 -5
  672. package/src/exporter/native/{revision.js → revision.ts} +17 -9
  673. package/src/footnotes/{editor.js → editor.ts} +37 -18
  674. package/src/footnotes/index.ts +21 -0
  675. package/src/footnotes/{layout.js → layout.ts} +53 -36
  676. package/src/footnotes/state_plugins/{access_rights.js → access_rights.ts} +6 -4
  677. package/src/global.d.ts +29 -0
  678. package/src/images/edit_dialog/{model.js → model.ts} +1 -1
  679. package/src/{index.js → index.ts} +194 -132
  680. package/src/{keymap.js → keymap.ts} +36 -16
  681. package/src/marginboxes/{index.js → index.ts} +341 -171
  682. package/src/marginboxes/{templates.js → templates.ts} +236 -38
  683. package/src/menus/code_block/{model.js → model.ts} +16 -5
  684. package/src/menus/figure/{model.js → model.ts} +21 -16
  685. package/src/menus/figure/utils.ts +13 -0
  686. package/src/menus/headerbar/{model.js → model.ts} +243 -153
  687. package/src/menus/headerbar/{view.js → view.ts} +189 -92
  688. package/src/menus/image/{model.js → model.ts} +13 -4
  689. package/src/menus/navigator/{model.js → model.ts} +6 -1
  690. package/src/menus/ordered_list/{model.js → model.ts} +2 -1
  691. package/src/menus/selection/{model.js → model.ts} +38 -20
  692. package/src/menus/selection/{view.js → view.ts} +88 -35
  693. package/src/menus/table/{model.js → model.ts} +84 -63
  694. package/src/menus/toolbar/{model.js → model.ts} +267 -215
  695. package/src/menus/toolbar/{view.js → view.ts} +135 -65
  696. package/src/modules.d.ts +84 -0
  697. package/src/navigator/{index.js → index.ts} +90 -56
  698. package/src/no_collab_save/{index.js → index.ts} +54 -31
  699. package/src/state_plugins/{access_rights.js → access_rights.ts} +12 -7
  700. package/src/state_plugins/citation_render.ts +63 -0
  701. package/src/state_plugins/{clipboard.js → clipboard.ts} +38 -23
  702. package/src/state_plugins/{code_block.js → code_block.ts} +62 -28
  703. package/src/state_plugins/{collab_carets.js → collab_carets.ts} +56 -25
  704. package/src/state_plugins/{comments.js → comments.ts} +70 -40
  705. package/src/state_plugins/contributor_input/{dropup.js → dropup.ts} +70 -38
  706. package/src/state_plugins/contributor_input/{node_view.js → node_view.ts} +13 -4
  707. package/src/state_plugins/contributor_input/{plugin.js → plugin.ts} +74 -75
  708. package/src/state_plugins/{document_template.js → document_template.ts} +108 -49
  709. package/src/state_plugins/{figure.js → figure.ts} +61 -23
  710. package/src/state_plugins/footnote_markers.ts +142 -0
  711. package/src/state_plugins/{headerbar.js → headerbar.ts} +4 -2
  712. package/src/state_plugins/{index.js → index.ts} +23 -56
  713. package/src/state_plugins/{inline_math.js → inline_math.ts} +151 -65
  714. package/src/state_plugins/inline_reference/{dropup.js → dropup.ts} +68 -34
  715. package/src/state_plugins/inline_reference/{plugin.js → plugin.ts} +221 -101
  716. package/src/state_plugins/jump_hidden_nodes.ts +67 -0
  717. package/src/state_plugins/{links.js → links.ts} +153 -99
  718. package/src/state_plugins/marginboxes.ts +17 -0
  719. package/src/state_plugins/{ordered_list_menu.js → ordered_list_menu.ts} +43 -17
  720. package/src/state_plugins/placeholders.ts +78 -0
  721. package/src/state_plugins/{search.js → search.ts} +110 -48
  722. package/src/state_plugins/{selection_menu.js → selection_menu.ts} +4 -2
  723. package/src/state_plugins/{settings.js → settings.ts} +68 -39
  724. package/src/state_plugins/table.ts +169 -0
  725. package/src/state_plugins/tag_input/{node_view.js → node_view.ts} +12 -3
  726. package/src/state_plugins/tag_input/plugin.ts +292 -0
  727. package/src/state_plugins/toc_render.ts +133 -0
  728. package/src/state_plugins/{toolbar.js → toolbar.ts} +4 -2
  729. package/src/state_plugins/track/{find_selected_changes.js → find_selected_changes.ts} +34 -19
  730. package/src/state_plugins/track/{helpers.js → helpers.ts} +36 -10
  731. package/src/state_plugins/track/{plugin.js → plugin.ts} +38 -14
  732. package/src/tools/key_bindings/{index.js → index.ts} +7 -3
  733. package/src/tools/key_bindings/{templates.js → templates.ts} +1 -1
  734. package/src/tools/search_replace/{index.js → index.ts} +115 -69
  735. package/src/tools/search_replace/{templates.js → templates.ts} +6 -1
  736. package/src/tools/word_count/{index.js → index.ts} +16 -6
  737. package/src/tools/word_count/{templates.js → templates.ts} +10 -1
  738. package/src/track/{accept.js → accept.ts} +20 -9
  739. package/src/track/{accept_all.js → accept_all.ts} +27 -17
  740. package/src/track/{accept_all_no_insertions.js → accept_all_no_insertions.ts} +16 -10
  741. package/src/track/{amend_transaction.js → amend_transaction.ts} +130 -70
  742. package/src/track/{delete.js → delete.ts} +15 -12
  743. package/src/track/{mod.js → mod.ts} +51 -32
  744. package/src/track/{reject.js → reject.ts} +34 -19
  745. package/src/track/{reject_all.js → reject_all.ts} +44 -24
  746. package/src/types.ts +214 -0
  747. package/src/comments/index.js +0 -11
  748. package/src/databases/index.js +0 -69
  749. package/src/document_template/exporter.js +0 -97
  750. package/src/exporter/native/copy.js +0 -191
  751. package/src/footnotes/index.js +0 -16
  752. package/src/menus/figure/utils.js +0 -5
  753. package/src/state_plugins/citation_render.js +0 -88
  754. package/src/state_plugins/footnote_markers.js +0 -238
  755. package/src/state_plugins/jump_hidden_nodes.js +0 -58
  756. package/src/state_plugins/marginboxes.js +0 -14
  757. package/src/state_plugins/placeholders.js +0 -123
  758. package/src/state_plugins/table.js +0 -127
  759. package/src/state_plugins/tag_input/plugin.js +0 -278
  760. package/src/state_plugins/toc_render.js +0 -160
  761. /package/src/clipboard/copy/{index.js → index.ts} +0 -0
  762. /package/src/clipboard/paste/{index.js → index.ts} +0 -0
  763. /package/src/collab/merge/state_plugins/{index.js → index.ts} +0 -0
  764. /package/src/comments/editors/{index.js → index.ts} +0 -0
  765. /package/src/dialogs/{index.js → index.ts} +0 -0
  766. /package/src/exporter/native/{index.js → index.ts} +0 -0
  767. /package/src/exporter/native/{zip.js → zip.ts} +0 -0
  768. /package/src/footnotes/state_plugins/{index.js → index.ts} +0 -0
  769. /package/src/menus/code_block/{index.js → index.ts} +0 -0
  770. /package/src/menus/figure/{index.js → index.ts} +0 -0
  771. /package/src/menus/headerbar/{index.js → index.ts} +0 -0
  772. /package/src/menus/image/{index.js → index.ts} +0 -0
  773. /package/src/menus/{index.js → index.ts} +0 -0
  774. /package/src/menus/navigator/{index.js → index.ts} +0 -0
  775. /package/src/menus/ordered_list/{index.js → index.ts} +0 -0
  776. /package/src/menus/selection/{index.js → index.ts} +0 -0
  777. /package/src/menus/table/{index.js → index.ts} +0 -0
  778. /package/src/menus/toolbar/{index.js → index.ts} +0 -0
  779. /package/src/plugins/citation_dialog/{index.js → index.ts} +0 -0
  780. /package/src/plugins/editor/{index.js → index.ts} +0 -0
  781. /package/src/state_plugins/contributor_input/{index.js → index.ts} +0 -0
  782. /package/src/state_plugins/inline_reference/{index.js → index.ts} +0 -0
  783. /package/src/state_plugins/tag_input/{index.js → index.ts} +0 -0
  784. /package/src/state_plugins/track/{index.js → index.ts} +0 -0
  785. /package/src/tools/{index.js → index.ts} +0 -0
  786. /package/src/track/{index.js → index.ts} +0 -0
@@ -4,7 +4,8 @@ import { wrapInList } from "prosemirror-schema-list";
4
4
  import { COMMENT_ONLY_ROLES, READ_ONLY_ROLES } from "../../index.js";
5
5
  import { CitationDialog, FigureDialog, LinkDialog, MathDialog, TableDialog } from "../../dialogs/index.js";
6
6
  import { setBlockType } from "../../keymap.js";
7
- import { checkProtectedInSelection, getInlineReferenceState, setInlineReferenceState } from "../../state_plugins/index.js";
7
+ import { checkProtectedInSelection } from "../../state_plugins/document_template.js";
8
+ import { getInlineReferenceState, setInlineReferenceState } from "../../state_plugins/inline_reference/index.js";
8
9
  const BLOCK_LABELS = {
9
10
  paragraph: gettext("Normal Text"),
10
11
  heading1: gettext("1st Heading"),
@@ -16,21 +17,23 @@ const BLOCK_LABELS = {
16
17
  code_block: gettext("Code"),
17
18
  figure: gettext("Figure")
18
19
  };
20
+ function currentSelection(editor) {
21
+ return editor.currentView.state.selection;
22
+ }
19
23
  // from https://github.com/ProseMirror/prosemirror-tables/blob/master/src/util.js
20
- const findTable = state => {
24
+ const findTable = (state) => {
21
25
  const $head = state.selection.$head;
22
26
  for (let d = $head.depth; d > 0; d--) {
23
27
  if ($head.node(d).type.spec.tableRole == "table") {
24
28
  return $head.node(d);
25
29
  }
26
30
  }
27
- return false;
31
+ return null;
28
32
  };
29
33
  function elementAvailable(editor, elementName) {
30
34
  let elementInDocParts = false;
31
35
  editor.view.state.doc.forEach(docPart => {
32
- if (docPart.attrs.elements &&
33
- docPart.attrs.elements.includes(elementName)) {
36
+ if (docPart.attrs.elements?.includes(elementName)) {
34
37
  elementInDocParts = true;
35
38
  }
36
39
  });
@@ -43,8 +46,7 @@ export function elementDisabled(editor, elementName) {
43
46
  const anchorDocPart = editor.currentView.state.selection.$anchor.node(1), headDocPart = editor.currentView.state.selection.$head.node(1);
44
47
  return (!anchorDocPart ||
45
48
  headDocPart !== anchorDocPart ||
46
- !anchorDocPart.attrs.elements ||
47
- !anchorDocPart.attrs.elements.includes(elementName) ||
49
+ !anchorDocPart.attrs.elements?.includes(elementName) ||
48
50
  checkProtectedInSelection(editor.view.state));
49
51
  }
50
52
  else {
@@ -58,7 +60,7 @@ export function elementDisabled(editor, elementName) {
58
60
  function markAvailable(editor, markName) {
59
61
  let markInDocParts = false;
60
62
  editor.view.state.doc.forEach(docPart => {
61
- if (docPart.attrs.elements && docPart.attrs.marks.includes(markName)) {
63
+ if (docPart.attrs.marks?.includes(markName)) {
62
64
  markInDocParts = true;
63
65
  }
64
66
  });
@@ -71,8 +73,7 @@ function markDisabled(editor, markName) {
71
73
  const anchorDocPart = editor.currentView.state.selection.$anchor.node(1), headDocPart = editor.currentView.state.selection.$head.node(1);
72
74
  return (!anchorDocPart ||
73
75
  headDocPart !== anchorDocPart ||
74
- !anchorDocPart.attrs.marks ||
75
- !anchorDocPart.attrs.marks.includes(markName) ||
76
+ !anchorDocPart.attrs.marks?.includes(markName) ||
76
77
  checkProtectedInSelection(editor.view.state));
77
78
  }
78
79
  else {
@@ -89,7 +90,7 @@ export const toolbarModel = () => ({
89
90
  {
90
91
  type: "button",
91
92
  title: gettext("Open/close header menu"),
92
- icon: editor => {
93
+ icon: (editor) => {
93
94
  if (editor.menu.headerbarModel.open) {
94
95
  return "angle-double-up";
95
96
  }
@@ -97,14 +98,16 @@ export const toolbarModel = () => ({
97
98
  return "angle-double-down";
98
99
  }
99
100
  },
100
- action: editor => {
101
+ action: (editor) => {
102
+ ;
101
103
  editor.menu.headerbarModel.open =
102
104
  !editor.menu.headerbarModel.open;
103
105
  if (editor.menu.headerView) {
106
+ ;
104
107
  editor.menu.headerView.update();
105
108
  }
106
109
  },
107
- class: editor => {
110
+ class: (editor) => {
108
111
  if (editor.menu.headerbarModel.open) {
109
112
  return "no-border";
110
113
  }
@@ -116,8 +119,9 @@ export const toolbarModel = () => ({
116
119
  },
117
120
  {
118
121
  type: "info",
119
- show: editor => {
122
+ show: (editor) => {
120
123
  let title = "";
124
+ const selection = currentSelection(editor);
121
125
  if (editor.currentView !== editor.view) {
122
126
  return gettext("Footnote");
123
127
  }
@@ -136,15 +140,15 @@ export const toolbarModel = () => ({
136
140
  editor.currentView.state.selection.to) {
137
141
  title =
138
142
  editor.currentView.state.selection.$anchor.nodeAfter
139
- .attrs.title;
143
+ ?.attrs.title ?? "";
140
144
  return title.length > 20
141
145
  ? title.slice(0, 20) + "..."
142
146
  : title;
143
147
  }
144
- else if (editor.currentView.state.selection.jsonID === "node" &&
145
- editor.currentView.state.selection.node.isBlock &&
146
- editor.currentView.state.selection.node.attrs.title) {
147
- title = editor.currentView.state.selection.node.attrs.title;
148
+ else if (selection.jsonID === "node" &&
149
+ selection.node?.isBlock &&
150
+ selection.node.attrs.title) {
151
+ title = selection.node.attrs.title;
148
152
  return title.length > 20
149
153
  ? title.slice(0, 20) + "..."
150
154
  : title;
@@ -157,14 +161,15 @@ export const toolbarModel = () => ({
157
161
  },
158
162
  {
159
163
  type: "menu",
160
- show: editor => {
164
+ show: (editor) => {
165
+ const selection = currentSelection(editor);
161
166
  if (editor.currentView.state.selection.$anchor.node(1) &&
162
167
  !editor.view.state.selection.$anchor.node(1).attrs.elements) {
163
168
  return "";
164
169
  }
165
- if (editor.currentView.state.selection.jsonID === "node" &&
166
- editor.currentView.state.selection.node.isBlock) {
167
- const selectedNode = editor.currentView.state.selection.node;
170
+ if (selection.jsonID === "node" &&
171
+ selection.node?.isBlock) {
172
+ const selectedNode = selection.node;
168
173
  return BLOCK_LABELS[selectedNode.type.name]
169
174
  ? BLOCK_LABELS[selectedNode.type.name]
170
175
  : "";
@@ -192,7 +197,7 @@ export const toolbarModel = () => ({
192
197
  }
193
198
  }
194
199
  });
195
- if (blockNodeType) {
200
+ if (blockNodeType && typeof blockNodeType === "string") {
196
201
  return BLOCK_LABELS[blockNodeType]
197
202
  ? BLOCK_LABELS[blockNodeType]
198
203
  : "";
@@ -202,94 +207,94 @@ export const toolbarModel = () => ({
202
207
  }
203
208
  }
204
209
  },
205
- disabled: editor => READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
210
+ disabled: (editor) => READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
206
211
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
207
212
  !editor.currentView.state.selection.$anchor.node(1) ||
208
213
  !editor.currentView.state.selection.$anchor.node(1).attrs
209
214
  .elements ||
210
- (editor.currentView.state.selection.jsonID === "node" &&
211
- editor.currentView.state.selection.node.isBlock &&
212
- !editor.currentView.state.selection.node.isTextblock) ||
213
- editor.currentView.state.selection.jsonID === "gapcursor",
215
+ (currentSelection(editor).jsonID === "node" &&
216
+ currentSelection(editor).node?.isBlock &&
217
+ !currentSelection(editor).node?.isTextblock) ||
218
+ currentSelection(editor).jsonID === "gapcursor",
214
219
  content: [
215
220
  {
216
221
  title: BLOCK_LABELS["paragraph"],
217
- action: editor => {
222
+ action: (editor) => {
218
223
  const view = editor.currentView;
219
224
  setBlockType(view.state.schema.nodes.paragraph)(view.state, view.dispatch);
220
225
  },
221
- available: editor => elementAvailable(editor, "paragraph"),
222
- disabled: editor => elementDisabled(editor, "paragraph"),
226
+ available: (editor) => elementAvailable(editor, "paragraph"),
227
+ disabled: (editor) => elementDisabled(editor, "paragraph"),
223
228
  order: 0
224
229
  },
225
230
  {
226
231
  title: BLOCK_LABELS["heading1"],
227
- action: editor => {
232
+ action: (editor) => {
228
233
  const view = editor.currentView;
229
234
  setBlockType(view.state.schema.nodes.heading1)(view.state, view.dispatch);
230
235
  },
231
- available: editor => elementAvailable(editor, "heading1"),
232
- disabled: editor => elementDisabled(editor, "heading1"),
236
+ available: (editor) => elementAvailable(editor, "heading1"),
237
+ disabled: (editor) => elementDisabled(editor, "heading1"),
233
238
  order: 1
234
239
  },
235
240
  {
236
241
  title: BLOCK_LABELS["heading2"],
237
- action: editor => {
242
+ action: (editor) => {
238
243
  const view = editor.currentView;
239
244
  setBlockType(view.state.schema.nodes.heading2)(view.state, view.dispatch);
240
245
  },
241
- available: editor => elementAvailable(editor, "heading2"),
242
- disabled: editor => elementDisabled(editor, "heading2"),
246
+ available: (editor) => elementAvailable(editor, "heading2"),
247
+ disabled: (editor) => elementDisabled(editor, "heading2"),
243
248
  order: 2
244
249
  },
245
250
  {
246
251
  title: BLOCK_LABELS["heading3"],
247
- action: editor => {
252
+ action: (editor) => {
248
253
  const view = editor.currentView;
249
254
  setBlockType(view.state.schema.nodes.heading3)(view.state, view.dispatch);
250
255
  },
251
- available: editor => elementAvailable(editor, "heading3"),
252
- disabled: editor => elementDisabled(editor, "heading3"),
256
+ available: (editor) => elementAvailable(editor, "heading3"),
257
+ disabled: (editor) => elementDisabled(editor, "heading3"),
253
258
  order: 3
254
259
  },
255
260
  {
256
261
  title: BLOCK_LABELS["heading4"],
257
- action: editor => {
262
+ action: (editor) => {
258
263
  const view = editor.currentView;
259
264
  setBlockType(view.state.schema.nodes.heading4)(view.state, view.dispatch);
260
265
  },
261
- available: editor => elementAvailable(editor, "heading4"),
262
- disabled: editor => elementDisabled(editor, "heading4"),
266
+ available: (editor) => elementAvailable(editor, "heading4"),
267
+ disabled: (editor) => elementDisabled(editor, "heading4"),
263
268
  order: 4
264
269
  },
265
270
  {
266
271
  title: BLOCK_LABELS["heading5"],
267
- action: editor => {
272
+ action: (editor) => {
268
273
  const view = editor.currentView;
269
274
  setBlockType(view.state.schema.nodes.heading5)(view.state, view.dispatch);
270
275
  },
271
- available: editor => elementAvailable(editor, "heading5"),
272
- disabled: editor => elementDisabled(editor, "heading5"),
276
+ available: (editor) => elementAvailable(editor, "heading5"),
277
+ disabled: (editor) => elementDisabled(editor, "heading5"),
273
278
  order: 5
274
279
  },
275
280
  {
276
281
  title: BLOCK_LABELS["heading6"],
277
- action: editor => {
282
+ action: (editor) => {
278
283
  const view = editor.currentView;
279
284
  setBlockType(view.state.schema.nodes.heading6)(view.state, view.dispatch);
280
285
  },
281
- available: editor => elementAvailable(editor, "heading6"),
282
- disabled: editor => elementDisabled(editor, "heading6"),
286
+ available: (editor) => elementAvailable(editor, "heading6"),
287
+ disabled: (editor) => elementDisabled(editor, "heading6"),
283
288
  order: 6
284
289
  },
285
290
  {
286
291
  title: BLOCK_LABELS["code_block"],
287
- action: editor => {
292
+ action: (editor) => {
288
293
  const view = editor.currentView;
289
294
  setBlockType(view.state.schema.nodes.code_block)(view.state, view.dispatch);
290
295
  },
291
- available: editor => elementAvailable(editor, "code_block"),
292
- disabled: editor => elementDisabled(editor, "code_block"),
296
+ available: (editor) => elementAvailable(editor, "code_block"),
297
+ disabled: (editor) => elementDisabled(editor, "code_block"),
293
298
  order: 7
294
299
  }
295
300
  ],
@@ -299,26 +304,27 @@ export const toolbarModel = () => ({
299
304
  type: "button",
300
305
  title: gettext("Strong"),
301
306
  icon: "bold",
302
- action: editor => {
307
+ action: (editor) => {
303
308
  const mark = editor.currentView.state.schema.marks["strong"];
304
309
  const command = toggleMark(mark);
305
310
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
306
311
  },
307
- available: editor => markAvailable(editor, "strong"),
308
- disabled: editor => {
312
+ available: (editor) => markAvailable(editor, "strong"),
313
+ disabled: (editor) => {
309
314
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
310
315
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
311
- editor.currentView.state.selection.jsonID === "gapcursor" ||
316
+ currentSelection(editor).jsonID === "gapcursor" ||
312
317
  markDisabled(editor, "strong")) {
313
318
  return true;
314
319
  }
320
+ return false;
315
321
  },
316
- selected: editor => {
322
+ selected: (editor) => {
317
323
  const storedMarks = editor.currentView.state.storedMarks;
318
- if (storedMarks?.some(mark => mark.type.name === "strong") ||
324
+ if (storedMarks?.some((mark) => mark.type.name === "strong") ||
319
325
  editor.currentView.state.selection.$head
320
326
  .marks()
321
- .some(mark => mark.type.name === "strong")) {
327
+ .some((mark) => mark.type.name === "strong")) {
322
328
  return true;
323
329
  }
324
330
  else {
@@ -331,22 +337,22 @@ export const toolbarModel = () => ({
331
337
  type: "button",
332
338
  title: gettext("Emphasis"),
333
339
  icon: "italic",
334
- action: editor => {
340
+ action: (editor) => {
335
341
  const mark = editor.currentView.state.schema.marks["em"];
336
342
  const command = toggleMark(mark);
337
343
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
338
344
  },
339
- available: editor => markAvailable(editor, "em"),
340
- disabled: editor => READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
345
+ available: (editor) => markAvailable(editor, "em"),
346
+ disabled: (editor) => READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
341
347
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
342
- editor.currentView.state.selection.jsonID === "gapcursor" ||
348
+ currentSelection(editor).jsonID === "gapcursor" ||
343
349
  markDisabled(editor, "em"),
344
- selected: editor => {
350
+ selected: (editor) => {
345
351
  const storedMarks = editor.currentView.state.storedMarks;
346
- if (storedMarks?.some(mark => mark.type.name === "em") ||
352
+ if (storedMarks?.some((mark) => mark.type.name === "em") ||
347
353
  editor.currentView.state.selection.$head
348
354
  .marks()
349
- .some(mark => mark.type.name === "em")) {
355
+ .some((mark) => mark.type.name === "em")) {
350
356
  return true;
351
357
  }
352
358
  else {
@@ -359,26 +365,27 @@ export const toolbarModel = () => ({
359
365
  type: "button",
360
366
  title: gettext("Underline"),
361
367
  icon: "underline",
362
- action: editor => {
368
+ action: (editor) => {
363
369
  const mark = editor.currentView.state.schema.marks["underline"];
364
370
  const command = toggleMark(mark);
365
371
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
366
372
  },
367
- available: editor => markAvailable(editor, "underline"),
368
- disabled: editor => {
373
+ available: (editor) => markAvailable(editor, "underline"),
374
+ disabled: (editor) => {
369
375
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
370
376
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
371
- editor.currentView.state.selection.jsonID === "gapcursor" ||
377
+ currentSelection(editor).jsonID === "gapcursor" ||
372
378
  markDisabled(editor, "underline")) {
373
379
  return true;
374
380
  }
381
+ return false;
375
382
  },
376
- selected: editor => {
383
+ selected: (editor) => {
377
384
  const storedMarks = editor.currentView.state.storedMarks;
378
- if (storedMarks?.some(mark => mark.type.name === "underline") ||
385
+ if (storedMarks?.some((mark) => mark.type.name === "underline") ||
379
386
  editor.currentView.state.selection.$head
380
387
  .marks()
381
- .some(mark => mark.type.name === "underline")) {
388
+ .some((mark) => mark.type.name === "underline")) {
382
389
  return true;
383
390
  }
384
391
  else {
@@ -391,26 +398,27 @@ export const toolbarModel = () => ({
391
398
  type: "button",
392
399
  title: gettext("Superscript"),
393
400
  icon: "superscript",
394
- action: editor => {
401
+ action: (editor) => {
395
402
  const mark = editor.currentView.state.schema.marks["sup"];
396
403
  const command = toggleMark(mark);
397
404
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
398
405
  },
399
- available: editor => markAvailable(editor, "sup"),
400
- disabled: editor => {
406
+ available: (editor) => markAvailable(editor, "sup"),
407
+ disabled: (editor) => {
401
408
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
402
409
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
403
- editor.currentView.state.selection.jsonID === "gapcursor" ||
410
+ currentSelection(editor).jsonID === "gapcursor" ||
404
411
  markDisabled(editor, "sup")) {
405
412
  return true;
406
413
  }
414
+ return false;
407
415
  },
408
- selected: editor => {
416
+ selected: (editor) => {
409
417
  const storedMarks = editor.currentView.state.storedMarks;
410
- if (storedMarks?.some(mark => mark.type.name === "sup") ||
418
+ if (storedMarks?.some((mark) => mark.type.name === "sup") ||
411
419
  editor.currentView.state.selection.$head
412
420
  .marks()
413
- .some(mark => mark.type.name === "sup")) {
421
+ .some((mark) => mark.type.name === "sup")) {
414
422
  return true;
415
423
  }
416
424
  else {
@@ -423,26 +431,27 @@ export const toolbarModel = () => ({
423
431
  type: "button",
424
432
  title: gettext("Subscript"),
425
433
  icon: "subscript",
426
- action: editor => {
434
+ action: (editor) => {
427
435
  const mark = editor.currentView.state.schema.marks["sub"];
428
436
  const command = toggleMark(mark);
429
437
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
430
438
  },
431
- available: editor => markAvailable(editor, "sub"),
432
- disabled: editor => {
439
+ available: (editor) => markAvailable(editor, "sub"),
440
+ disabled: (editor) => {
433
441
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
434
442
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
435
- editor.currentView.state.selection.jsonID === "gapcursor" ||
443
+ currentSelection(editor).jsonID === "gapcursor" ||
436
444
  markDisabled(editor, "sub")) {
437
445
  return true;
438
446
  }
447
+ return false;
439
448
  },
440
- selected: editor => {
449
+ selected: (editor) => {
441
450
  const storedMarks = editor.currentView.state.storedMarks;
442
- if (storedMarks?.some(mark => mark.type.name === "sub") ||
451
+ if (storedMarks?.some((mark) => mark.type.name === "sub") ||
443
452
  editor.currentView.state.selection.$head
444
453
  .marks()
445
- .some(mark => mark.type.name === "sub")) {
454
+ .some((mark) => mark.type.name === "sub")) {
446
455
  return true;
447
456
  }
448
457
  else {
@@ -455,26 +464,27 @@ export const toolbarModel = () => ({
455
464
  type: "button",
456
465
  title: gettext("Code"),
457
466
  icon: "code",
458
- action: editor => {
467
+ action: (editor) => {
459
468
  const mark = editor.currentView.state.schema.marks["code"];
460
469
  const command = toggleMark(mark);
461
470
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
462
471
  },
463
- available: editor => markAvailable(editor, "code"),
464
- disabled: editor => {
472
+ available: (editor) => markAvailable(editor, "code"),
473
+ disabled: (editor) => {
465
474
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
466
475
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
467
- editor.currentView.state.selection.jsonID === "gapcursor" ||
476
+ currentSelection(editor).jsonID === "gapcursor" ||
468
477
  markDisabled(editor, "code")) {
469
478
  return true;
470
479
  }
480
+ return false;
471
481
  },
472
- selected: editor => {
482
+ selected: (editor) => {
473
483
  const storedMarks = editor.currentView.state.storedMarks;
474
- if (storedMarks?.some(mark => mark.type.name === "code") ||
484
+ if (storedMarks?.some((mark) => mark.type.name === "code") ||
475
485
  editor.currentView.state.selection.$head
476
486
  .marks()
477
- .some(mark => mark.type.name === "code")) {
487
+ .some((mark) => mark.type.name === "code")) {
478
488
  return true;
479
489
  }
480
490
  else {
@@ -487,20 +497,21 @@ export const toolbarModel = () => ({
487
497
  type: "button",
488
498
  title: gettext("Numbered list"),
489
499
  icon: "list-ol",
490
- action: editor => {
500
+ action: (editor) => {
491
501
  const node = editor.currentView.state.schema.nodes["ordered_list"];
492
502
  const command = wrapInList(node);
493
503
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
494
504
  },
495
- available: editor => elementAvailable(editor, "ordered_list"),
496
- disabled: editor => {
505
+ available: (editor) => elementAvailable(editor, "ordered_list"),
506
+ disabled: (editor) => {
497
507
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
498
508
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
499
509
  elementDisabled(editor, "ordered_list")) {
500
510
  return true;
501
511
  }
512
+ return false;
502
513
  },
503
- selected: editor => {
514
+ selected: (editor) => {
504
515
  const depth = editor.currentView.state.selection.$head.sharedDepth(editor.currentView.state.selection.anchor);
505
516
  const nodeType = editor.currentView.state.schema.nodes["ordered_list"];
506
517
  for (let i = 0; i < depth; i++) {
@@ -517,20 +528,21 @@ export const toolbarModel = () => ({
517
528
  type: "button",
518
529
  title: gettext("Bullet list"),
519
530
  icon: "list-ul",
520
- action: editor => {
531
+ action: (editor) => {
521
532
  const node = editor.currentView.state.schema.nodes["bullet_list"];
522
533
  const command = wrapInList(node);
523
534
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
524
535
  },
525
- available: editor => elementAvailable(editor, "bullet_list"),
526
- disabled: editor => {
536
+ available: (editor) => elementAvailable(editor, "bullet_list"),
537
+ disabled: (editor) => {
527
538
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
528
539
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
529
540
  elementDisabled(editor, "bullet_list")) {
530
541
  return true;
531
542
  }
543
+ return false;
532
544
  },
533
- selected: editor => {
545
+ selected: (editor) => {
534
546
  const depth = editor.currentView.state.selection.$head.sharedDepth(editor.currentView.state.selection.anchor);
535
547
  const nodeType = editor.currentView.state.schema.nodes["bullet_list"];
536
548
  for (let i = 0; i < depth; i++) {
@@ -547,20 +559,21 @@ export const toolbarModel = () => ({
547
559
  type: "button",
548
560
  title: gettext("Blockquote"),
549
561
  icon: "quote-right",
550
- action: editor => {
562
+ action: (editor) => {
551
563
  const node = editor.currentView.state.schema.nodes["blockquote"];
552
564
  const command = wrapIn(node);
553
565
  command(editor.currentView.state, tr => editor.currentView.dispatch(tr));
554
566
  },
555
- available: editor => elementAvailable(editor, "blockquote"),
556
- disabled: editor => {
567
+ available: (editor) => elementAvailable(editor, "blockquote"),
568
+ disabled: (editor) => {
557
569
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
558
570
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
559
571
  elementDisabled(editor, "blockquote")) {
560
572
  return true;
561
573
  }
574
+ return false;
562
575
  },
563
- selected: editor => {
576
+ selected: (editor) => {
564
577
  const depth = editor.currentView.state.selection.$head.sharedDepth(editor.currentView.state.selection.anchor);
565
578
  const nodeType = editor.currentView.state.schema.nodes["blockquote"];
566
579
  for (let i = 0; i < depth; i++) {
@@ -578,42 +591,44 @@ export const toolbarModel = () => ({
578
591
  type: "button",
579
592
  title: gettext("Link"),
580
593
  icon: "link",
581
- action: editor => {
594
+ action: (editor) => {
582
595
  const dialog = new LinkDialog(editor);
583
596
  dialog.init();
584
597
  },
585
- available: editor => markAvailable(editor, "link"),
586
- disabled: editor => {
598
+ available: (editor) => markAvailable(editor, "link"),
599
+ disabled: (editor) => {
587
600
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
588
601
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
589
602
  (markDisabled(editor, "link") &&
590
603
  elementDisabled(editor, "cross_reference"))) {
591
604
  return true;
592
605
  }
606
+ return false;
593
607
  },
594
- selected: editor => editor.currentView.state.selection.$head
608
+ selected: (editor) => editor.currentView.state.selection.$head
595
609
  .marks()
596
- .some(mark => mark.type.name === "link"),
610
+ .some((mark) => mark.type.name === "link"),
597
611
  order: 12
598
612
  },
599
613
  {
600
614
  type: "button",
601
615
  title: gettext("Footnote"),
602
616
  icon: "asterisk",
603
- action: editor => {
617
+ action: (editor) => {
604
618
  const node = editor.view.state.schema.nodes["footnote"];
605
619
  const tr = editor.view.state.tr.replaceSelectionWith(node.createAndFill(), false);
606
620
  editor.view.dispatch(tr);
607
621
  return false;
608
622
  },
609
- available: editor => elementAvailable(editor, "footnote"),
610
- disabled: editor => {
623
+ available: (editor) => elementAvailable(editor, "footnote"),
624
+ disabled: (editor) => {
611
625
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
612
626
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
613
627
  editor.view !== editor.currentView || // we don't allow footnotes in footnotes
614
628
  elementDisabled(editor, "footnote")) {
615
629
  return true;
616
630
  }
631
+ return false;
617
632
  },
618
633
  order: 13
619
634
  },
@@ -621,7 +636,7 @@ export const toolbarModel = () => ({
621
636
  type: "button",
622
637
  title: gettext("Cite"),
623
638
  icon: "book",
624
- action: editor => {
639
+ action: (editor) => {
625
640
  const inlineState = getInlineReferenceState(editor.currentView.state);
626
641
  if (inlineState?.active && inlineState.isEdit) {
627
642
  editor.currentView.dispatch(setInlineReferenceState(editor.currentView.state.tr, {
@@ -632,17 +647,18 @@ export const toolbarModel = () => ({
632
647
  dialog.init();
633
648
  return false;
634
649
  },
635
- available: editor => elementAvailable(editor, "citation"),
636
- disabled: editor => {
650
+ available: (editor) => elementAvailable(editor, "citation"),
651
+ disabled: (editor) => {
637
652
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
638
653
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
639
654
  elementDisabled(editor, "citation") ||
640
- !["text", "node"].includes(editor.currentView.state.selection.jsonID) ||
641
- (editor.currentView.state.selection.jsonID === "node" &&
642
- editor.currentView.state.selection.node.type.name !==
655
+ !["text", "node"].includes(currentSelection(editor).jsonID) ||
656
+ (currentSelection(editor).jsonID === "node" &&
657
+ currentSelection(editor).node?.type.name !==
643
658
  "citation")) {
644
659
  return true;
645
660
  }
661
+ return false;
646
662
  },
647
663
  order: 14
648
664
  },
@@ -650,17 +666,18 @@ export const toolbarModel = () => ({
650
666
  type: "button",
651
667
  title: gettext("Horizontal line"),
652
668
  icon: "minus",
653
- action: editor => {
669
+ action: (editor) => {
654
670
  const view = editor.currentView, state = view.state;
655
671
  view.dispatch(state.tr.replaceSelectionWith(state.schema.node("horizontal_rule")));
656
672
  },
657
- available: editor => elementAvailable(editor, "horizontal_rule"),
658
- disabled: editor => {
673
+ available: (editor) => elementAvailable(editor, "horizontal_rule"),
674
+ disabled: (editor) => {
659
675
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
660
676
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
661
677
  elementDisabled(editor, "horizontal_rule")) {
662
678
  return true;
663
679
  }
680
+ return false;
664
681
  },
665
682
  order: 15
666
683
  },
@@ -668,21 +685,22 @@ export const toolbarModel = () => ({
668
685
  type: "button",
669
686
  title: gettext("Math"),
670
687
  icon: "percent",
671
- action: editor => {
688
+ action: (editor) => {
672
689
  const dialog = new MathDialog(editor);
673
690
  dialog.init();
674
691
  },
675
- available: editor => elementAvailable(editor, "equation"),
676
- disabled: editor => {
692
+ available: (editor) => elementAvailable(editor, "equation"),
693
+ disabled: (editor) => {
677
694
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
678
695
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
679
696
  elementDisabled(editor, "equation") ||
680
- !["text", "node"].includes(editor.currentView.state.selection.jsonID) ||
681
- (editor.currentView.state.selection.jsonID === "node" &&
682
- editor.currentView.state.selection.node.type.name !==
697
+ !["text", "node"].includes(currentSelection(editor).jsonID) ||
698
+ (currentSelection(editor).jsonID === "node" &&
699
+ currentSelection(editor).node?.type.name !==
683
700
  "equation")) {
684
701
  return true;
685
702
  }
703
+ return false;
686
704
  },
687
705
  order: 16
688
706
  },
@@ -690,18 +708,19 @@ export const toolbarModel = () => ({
690
708
  type: "button",
691
709
  title: gettext("Figure"),
692
710
  icon: "image",
693
- action: editor => {
711
+ action: (editor) => {
694
712
  const dialog = new FigureDialog(editor);
695
713
  dialog.init();
696
714
  return false;
697
715
  },
698
- available: editor => elementAvailable(editor, "figure"),
699
- disabled: editor => {
716
+ available: (editor) => elementAvailable(editor, "figure"),
717
+ disabled: (editor) => {
700
718
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
701
719
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
702
720
  elementDisabled(editor, "figure")) {
703
721
  return true;
704
722
  }
723
+ return false;
705
724
  },
706
725
  order: 17
707
726
  },
@@ -710,19 +729,20 @@ export const toolbarModel = () => ({
710
729
  title: gettext("Table"),
711
730
  tooltip: gettext("Insert a table into the document."),
712
731
  icon: "table",
713
- action: editor => {
732
+ action: (editor) => {
714
733
  const dialog = new TableDialog(editor);
715
734
  dialog.init();
716
735
  return false;
717
736
  },
718
- available: editor => elementAvailable(editor, "table"),
719
- disabled: editor => {
737
+ available: (editor) => elementAvailable(editor, "table"),
738
+ disabled: (editor) => {
720
739
  if (READ_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
721
740
  COMMENT_ONLY_ROLES.includes(editor.docInfo.access_rights) ||
722
741
  elementDisabled(editor, "table") ||
723
742
  findTable(editor.currentView.state)) {
724
743
  return true;
725
744
  }
745
+ return false;
726
746
  },
727
747
  order: 15
728
748
  },
@@ -730,16 +750,16 @@ export const toolbarModel = () => ({
730
750
  type: "button",
731
751
  title: gettext("Undo"),
732
752
  icon: "undo",
733
- action: editor => undo(editor.currentView.state, tr => editor.currentView.dispatch(tr.setMeta("inputType", "historyUndo"))),
734
- disabled: editor => undoDepth(editor.currentView.state) === 0,
753
+ action: (editor) => undo(editor.currentView.state, tr => editor.currentView.dispatch(tr.setMeta("inputType", "historyUndo"))),
754
+ disabled: (editor) => undoDepth(editor.currentView.state) === 0,
735
755
  order: 16
736
756
  },
737
757
  {
738
758
  type: "button",
739
759
  title: gettext("Redo"),
740
760
  icon: "redo",
741
- action: editor => redo(editor.currentView.state, tr => editor.currentView.dispatch(tr.setMeta("inputType", "historyRedo"))),
742
- disabled: editor => redoDepth(editor.currentView.state) === 0,
761
+ action: (editor) => redo(editor.currentView.state, tr => editor.currentView.dispatch(tr.setMeta("inputType", "historyRedo"))),
762
+ disabled: (editor) => redoDepth(editor.currentView.state) === 0,
743
763
  order: 17
744
764
  }
745
765
  ]