@fiduswriter/editor 0.1.20 → 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 +43 -22
  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 +86 -59
  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} +187 -106
  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} +193 -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
@@ -1,4 +1,6 @@
1
1
  import {DiffDOM} from "diff-dom"
2
+ import {keyName} from "w3c-keyname"
3
+ import type {EditorView} from "prosemirror-view"
2
4
  import {
3
5
  addAlert,
4
6
  avatarTemplate,
@@ -6,10 +8,75 @@ import {
6
8
  escapeText,
7
9
  findTarget
8
10
  } from "fwtoolkit"
9
- import {keyName} from "w3c-keyname"
11
+
12
+ import type {Editor} from "../../types.js"
13
+
14
+ interface HeaderbarBaseItem {
15
+ id?: string
16
+ order?: number
17
+ disabled?: (editor: Editor) => boolean
18
+ selected?: (editor: Editor) => boolean
19
+ available?: (editor: Editor) => boolean
20
+ icon?: string
21
+ }
22
+
23
+ interface HeaderbarActionItem extends HeaderbarBaseItem {
24
+ type: "action"
25
+ title: string | ((editor: Editor) => string)
26
+ tooltip?: string | ((editor: Editor) => string)
27
+ icon?: string
28
+ action: (editor: Editor) => void
29
+ }
30
+
31
+ interface HeaderbarSettingItem extends HeaderbarBaseItem {
32
+ type: "setting"
33
+ title: string | ((editor: Editor) => string)
34
+ tooltip?: string | ((editor: Editor) => string)
35
+ icon?: string
36
+ action: (editor: Editor) => void
37
+ }
38
+
39
+ interface HeaderbarSeparatorItem extends HeaderbarBaseItem {
40
+ type: "separator"
41
+ }
42
+
43
+ interface HeaderbarMenuItem extends HeaderbarBaseItem {
44
+ type: "menu"
45
+ title: string | ((editor: Editor) => string)
46
+ tooltip?: string | ((editor: Editor) => string)
47
+ keys?: string
48
+ open: boolean
49
+ content: HeaderbarItem[]
50
+ }
51
+
52
+ type HeaderbarItem =
53
+ | HeaderbarActionItem
54
+ | HeaderbarSettingItem
55
+ | HeaderbarSeparatorItem
56
+ | HeaderbarMenuItem
57
+
58
+ interface HeaderbarModel {
59
+ open: boolean
60
+ content: HeaderbarMenuItem[]
61
+ }
10
62
 
11
63
  export class HeaderbarView {
12
- constructor(editorView, options) {
64
+ editorView: EditorView
65
+ options: {editor: Editor}
66
+ editor: Editor
67
+ dd: DiffDOM
68
+ headerEl: Element
69
+ listeners: {
70
+ onclick?: (event: MouseEvent) => void
71
+ onKeydown?: (event: KeyboardEvent) => void
72
+ onKeyup?: (event: KeyboardEvent) => void
73
+ onFocusout?: (event: FocusEvent) => void
74
+ }
75
+ parentChain: HeaderbarMenuItem[]
76
+ openMenu: HeaderbarMenuItem | null
77
+ cursorMenuItem: HeaderbarItem | null
78
+
79
+ constructor(editorView: EditorView, options: {editor: Editor}) {
13
80
  this.editorView = editorView
14
81
  this.options = options
15
82
 
@@ -19,11 +86,16 @@ export class HeaderbarView {
19
86
  this.dd = new DiffDOM({
20
87
  valueDiffing: false
21
88
  })
22
- this.headerEl = document.querySelector("#headerbar").firstElementChild
89
+ const headerbar = document.querySelector("#headerbar")
90
+ if (!headerbar?.firstElementChild) {
91
+ throw new Error("Headerbar element not found.")
92
+ }
93
+ this.headerEl = headerbar.firstElementChild
23
94
  this.listeners = {}
24
95
 
25
- this.removeUnavailable(this.options.editor.menu.headerbarModel)
26
- this.addMissingIds(this.options.editor.menu.headerbarModel)
96
+ const model = this.options.editor.menu.headerbarModel as HeaderbarModel
97
+ this.removeUnavailable(model)
98
+ this.addMissingIds(model)
27
99
  this.bindEvents()
28
100
  this.update()
29
101
  this.parentChain = []
@@ -32,7 +104,7 @@ export class HeaderbarView {
32
104
  this.cursorMenuItem = null
33
105
  }
34
106
 
35
- removeUnavailable(menu) {
107
+ removeUnavailable(menu: HeaderbarModel | HeaderbarMenuItem): void {
36
108
  // Remove those menu items from the menu model that are not available for this document.
37
109
  // Used for example for language or page size options that aren't permitted according to the
38
110
  // document template.
@@ -46,7 +118,7 @@ export class HeaderbarView {
46
118
  })
47
119
  }
48
120
 
49
- addMissingIds(menu) {
121
+ addMissingIds(menu: HeaderbarModel | HeaderbarMenuItem): void {
50
122
  // Add missing ids to menu items that don't have an ID.
51
123
  menu.content.forEach(item => {
52
124
  if (!item.id) {
@@ -58,7 +130,7 @@ export class HeaderbarView {
58
130
  })
59
131
  }
60
132
 
61
- bindEvents() {
133
+ bindEvents(): void {
62
134
  this.listeners.onclick = event => this.onclick(event)
63
135
  document.body.addEventListener("click", this.listeners.onclick)
64
136
  this.listeners.onKeydown = event => this.onKeydown(event)
@@ -69,18 +141,22 @@ export class HeaderbarView {
69
141
  document.body.addEventListener("focusout", this.listeners.onFocusout)
70
142
  }
71
143
 
72
- destroy() {
73
- if (document.activeElement.id === "document-title") {
144
+ destroy(): void {
145
+ if (document.activeElement?.id === "document-title") {
74
146
  this.saveFileName()
75
147
  }
76
- document.body.removeEventListener("click", this.listeners.onclick)
77
- document.body.removeEventListener("keydown", this.listeners.onKeydown)
78
- document.body.removeEventListener("keyup", this.listeners.onKeyup)
79
- document.body.removeEventListener("focusout", this.listeners.onFocusout)
148
+ document.body.removeEventListener("click", this.listeners.onclick!)
149
+ document.body.removeEventListener("keydown", this.listeners.onKeydown!)
150
+ document.body.removeEventListener("keyup", this.listeners.onKeyup!)
151
+ document.body.removeEventListener("focusout", this.listeners.onFocusout!)
80
152
  }
81
153
 
82
- onclick(event) {
83
- const target = event.target
154
+ onclick(event: MouseEvent): void {
155
+ const target = event.target as HTMLElement | null
156
+ if (!target) {
157
+ return
158
+ }
159
+ const model = this.editor.menu.headerbarModel as HeaderbarModel
84
160
  if (target.closest("div#close-document-top a i.fa-times")) {
85
161
  // If the user is offline prevent the closing of the document.
86
162
  if (this.editor.app.isOffline()) {
@@ -99,31 +175,37 @@ export class HeaderbarView {
99
175
  const item = target.closest(
100
176
  "#headerbar #header-navigation .fw-pulldown-item"
101
177
  )
102
- const searchPath = []
103
- let seekItem = item
104
- while (seekItem.closest("li")) {
178
+ const searchPath: number[] = []
179
+ let seekItem: Element | null = item
180
+ while (seekItem?.closest("li")) {
105
181
  let itemNumber = 0
106
182
  seekItem = seekItem.closest("li")
107
- while (seekItem.previousElementSibling) {
183
+ while (seekItem?.previousElementSibling) {
108
184
  itemNumber++
109
185
  seekItem = seekItem.previousElementSibling
110
186
  }
111
187
  searchPath.push(itemNumber)
112
- seekItem = seekItem.parentElement
188
+ seekItem = seekItem?.parentElement ?? null
113
189
  }
114
190
 
115
- seekItem = seekItem.closest("div.header-menu")
191
+ seekItem = seekItem?.closest("div.header-menu") ?? null
116
192
  let menuNumber = 0
117
- while (seekItem.previousElementSibling) {
193
+ while (seekItem?.previousElementSibling) {
118
194
  menuNumber++
119
195
  seekItem = seekItem.previousElementSibling
120
196
  }
121
- const menu = this.editor.menu.headerbarModel.content[menuNumber]
122
-
123
- let menuItem = menu
197
+ const menu = model.content[menuNumber]
124
198
 
199
+ let menuItem: HeaderbarItem = menu
125
200
  while (searchPath.length) {
126
- menuItem = menuItem.content[searchPath.pop()]
201
+ const index = searchPath.pop()
202
+ if (
203
+ menuItem.type === "menu" &&
204
+ index !== undefined &&
205
+ menuItem.content[index]
206
+ ) {
207
+ menuItem = menuItem.content[index]
208
+ }
127
209
  }
128
210
  this.executeMenuItem(menuItem, menu)
129
211
  } else if (
@@ -136,12 +218,12 @@ export class HeaderbarView {
136
218
  "#headerbar #header-navigation .header-nav-item:not(.fw-disabled)"
137
219
  )
138
220
  let menuNumber = 0
139
- let seekItem = item.parentElement
140
- while (seekItem.previousElementSibling) {
221
+ let seekItem: Element | null = item?.parentElement ?? null
222
+ while (seekItem?.previousElementSibling) {
141
223
  menuNumber++
142
224
  seekItem = seekItem.previousElementSibling
143
225
  }
144
- this.editor.menu.headerbarModel.content.forEach(menu => {
226
+ model.content.forEach(menu => {
145
227
  if (menu.open) {
146
228
  menu.open = false
147
229
  this.openMenu = null
@@ -149,15 +231,15 @@ export class HeaderbarView {
149
231
  this.parentChain = []
150
232
  }
151
233
  })
152
- this.editor.menu.headerbarModel.content[menuNumber].open = true
153
- this.openMenu = this.editor.menu.headerbarModel.content[menuNumber]
234
+ model.content[menuNumber].open = true
235
+ this.openMenu = model.content[menuNumber]
154
236
  this.parentChain = [this.openMenu]
155
237
  this.cursorMenuItem = null
156
238
  this.update()
157
239
  } else {
158
240
  let needUpdate = false
159
241
  this.cursorMenuItem = null
160
- this.editor.menu.headerbarModel.content.forEach(menu => {
242
+ model.content.forEach(menu => {
161
243
  if (menu.open) {
162
244
  needUpdate = true
163
245
  menu.open = false
@@ -172,7 +254,7 @@ export class HeaderbarView {
172
254
  }
173
255
  }
174
256
 
175
- executeMenuItem(menuItem, menu) {
257
+ executeMenuItem(menuItem: HeaderbarItem, menu: HeaderbarMenuItem): void {
176
258
  switch (menuItem.type) {
177
259
  case "action":
178
260
  if (menuItem.disabled?.(this.editor)) {
@@ -259,7 +341,7 @@ export class HeaderbarView {
259
341
  }
260
342
  }
261
343
 
262
- closeAllMenu(menu) {
344
+ closeAllMenu(menu: HeaderbarMenuItem): void {
263
345
  menu.content.forEach(menuItem => {
264
346
  if (menuItem.type === "menu" && menuItem.open) {
265
347
  menuItem.open = false
@@ -268,7 +350,10 @@ export class HeaderbarView {
268
350
  })
269
351
  }
270
352
 
271
- closeOtherMenu(menu, currentMenuItem) {
353
+ closeOtherMenu(
354
+ menu: HeaderbarMenuItem,
355
+ currentMenuItem: HeaderbarMenuItem
356
+ ): void {
272
357
  menu.content.forEach(menuItem => {
273
358
  if (menuItem.type === "menu" && menuItem.open) {
274
359
  if (
@@ -282,7 +367,7 @@ export class HeaderbarView {
282
367
  })
283
368
  }
284
369
 
285
- onKeydown(event) {
370
+ onKeydown(event: KeyboardEvent): void {
286
371
  if (findTarget(event, "h1#document-title")) {
287
372
  return
288
373
  }
@@ -333,29 +418,30 @@ export class HeaderbarView {
333
418
  return
334
419
  }
335
420
  }
336
- this.checkKeys(event, this.editor.menu.headerbarModel, name)
421
+ this.checkKeys(event, this.editor.menu.headerbarModel as HeaderbarModel, name)
337
422
  }
338
423
 
339
- onKeyup(event) {
424
+ onKeyup(event: KeyboardEvent): void {
340
425
  if (!findTarget(event, "h1#document-title")) {
341
426
  return
342
427
  }
343
428
  const docTitleEl = document.body.querySelector("h1#document-title")
344
429
  if (
345
- !docTitleEl.childNodes.length ||
430
+ !docTitleEl?.childNodes.length ||
346
431
  (docTitleEl.childNodes.length === 1 &&
347
- docTitleEl.firstChild.nodeType === 3)
432
+ docTitleEl.firstChild?.nodeType === 3)
348
433
  ) {
349
434
  return
350
435
  }
351
436
  // Special key was pressed, we reset to text only and blur
352
- docTitleEl.innerHTML = docTitleEl.innerText
437
+ docTitleEl.innerHTML = (docTitleEl as HTMLElement).innerText
353
438
  .trim()
354
439
  .replace(/\r?\n|\r/g, "")
355
- docTitleEl.blur()
440
+ ;(docTitleEl as HTMLElement).blur()
356
441
  }
357
442
 
358
- changeCursorMenuItem(name) {
443
+ changeCursorMenuItem(name: string): void {
444
+ const model = this.editor.menu.headerbarModel as HeaderbarModel
359
445
  if (!this.cursorMenuItem) {
360
446
  this.cursorMenuItem = this.parentChain[0].content[0]
361
447
  } else {
@@ -395,15 +481,14 @@ export class HeaderbarView {
395
481
  )
396
482
  } else {
397
483
  const currentMenuIndex =
398
- this.editor.menu.headerbarModel.content.findIndex(
399
- menu => menu.open
400
- )
484
+ model.content.findIndex(menu => menu.open)
401
485
  const newMenuIndex = currentMenuIndex
402
486
  ? currentMenuIndex - 1
403
- : this.editor.menu.headerbarModel.content.length - 1
404
- this.openMenu.open = false
405
- this.openMenu =
406
- this.editor.menu.headerbarModel.content[newMenuIndex]
487
+ : model.content.length - 1
488
+ if (this.openMenu) {
489
+ this.openMenu.open = false
490
+ }
491
+ this.openMenu = model.content[newMenuIndex]
407
492
  this.openMenu.open = true
408
493
  this.cursorMenuItem = this.openMenu.content[0]
409
494
  this.parentChain = [this.openMenu]
@@ -418,17 +503,15 @@ export class HeaderbarView {
418
503
  )
419
504
  } else {
420
505
  const currentMenuIndex =
421
- this.editor.menu.headerbarModel.content.findIndex(
422
- menu => menu.open
423
- )
506
+ model.content.findIndex(menu => menu.open)
424
507
  const newMenuIndex =
425
- currentMenuIndex ===
426
- this.editor.menu.headerbarModel.content.length - 1
508
+ currentMenuIndex === model.content.length - 1
427
509
  ? 0
428
510
  : currentMenuIndex + 1
429
- this.openMenu.open = false
430
- this.openMenu =
431
- this.editor.menu.headerbarModel.content[newMenuIndex]
511
+ if (this.openMenu) {
512
+ this.openMenu.open = false
513
+ }
514
+ this.openMenu = model.content[newMenuIndex]
432
515
  this.openMenu.open = true
433
516
  this.cursorMenuItem = this.openMenu.content[0]
434
517
  this.parentChain = [this.openMenu]
@@ -438,7 +521,7 @@ export class HeaderbarView {
438
521
  this.update()
439
522
  }
440
523
 
441
- getAccessKeyHTML(title, accessKey) {
524
+ getAccessKeyHTML(title: string, accessKey: string | undefined): string {
442
525
  if (!accessKey) {
443
526
  return escapeText(title)
444
527
  }
@@ -449,12 +532,15 @@ export class HeaderbarView {
449
532
  return `${escapeText(title.substring(0, index))}<span class="fw-access-key">${escapeText(title.charAt(index))}</span>${escapeText(title.substring(index + 1))}`
450
533
  }
451
534
 
452
- saveFileName() {
535
+ saveFileName(): void {
453
536
  if (this.editor.app.isOffline()) {
454
537
  // We are offline. Just reset.
455
538
  return this.update()
456
539
  }
457
- const docTitleEl = document.body.querySelector("h1#document-title")
540
+ const docTitleEl = document.body.querySelector("h1#document-title") as HTMLElement | null
541
+ if (!docTitleEl) {
542
+ return
543
+ }
458
544
  const path = cleanPath(this.getTitle(), docTitleEl.innerText.trim())
459
545
  this.editor.docInfo.path = path
460
546
  if (this.editor.ws) {
@@ -468,27 +554,31 @@ export class HeaderbarView {
468
554
  this.update()
469
555
  }
470
556
 
471
- onFocusout(event) {
557
+ onFocusout(event: FocusEvent): void {
472
558
  if (!findTarget(event, "h1#document-title")) {
473
559
  return
474
560
  }
475
561
  this.saveFileName()
476
562
  }
477
563
 
478
- checkKeys(event, menu, nameKey) {
564
+ checkKeys(
565
+ event: KeyboardEvent,
566
+ menu: HeaderbarModel | HeaderbarMenuItem,
567
+ nameKey: string
568
+ ): void {
479
569
  menu.content.forEach(menuItem => {
480
- if (menuItem.keys === nameKey) {
570
+ if ("keys" in menuItem && menuItem.keys === nameKey) {
481
571
  event.preventDefault()
482
572
 
483
573
  // Now execute the menu item
484
- this.executeMenuItem(menuItem, menu)
485
- } else if (menuItem.content) {
574
+ this.executeMenuItem(menuItem, menu as HeaderbarMenuItem)
575
+ } else if (menuItem.type === "menu") {
486
576
  this.checkKeys(event, menuItem, nameKey)
487
577
  }
488
578
  })
489
579
  }
490
580
 
491
- update() {
581
+ update(): void {
492
582
  if (
493
583
  document.activeElement &&
494
584
  document.activeElement.matches("h1#document-title")
@@ -497,14 +587,15 @@ export class HeaderbarView {
497
587
  }
498
588
  const diff = this.dd.diff(this.headerEl, this.getHeaderHTML())
499
589
  this.dd.apply(this.headerEl, diff)
500
- if (this.editor.menu.headerbarModel.open) {
590
+ const model = this.editor.menu.headerbarModel as HeaderbarModel
591
+ if (model.open) {
501
592
  document.body.classList.remove("header-closed")
502
593
  } else {
503
594
  document.body.classList.add("header-closed")
504
595
  }
505
596
  }
506
597
 
507
- getPathText() {
598
+ getPathText(): string {
508
599
  let text = this.editor.docInfo.path
509
600
  if (text.length && !text.endsWith("/")) {
510
601
  return text
@@ -515,10 +606,10 @@ export class HeaderbarView {
515
606
  return text
516
607
  }
517
608
 
518
- getTitle() {
609
+ getTitle(): string {
519
610
  const doc = this.editor.view.state.doc
520
611
  let title = ""
521
- doc.firstChild.forEach(child => {
612
+ doc.firstChild?.forEach(child => {
522
613
  if (!child.marks.find(mark => mark.type.name === "deletion")) {
523
614
  title += escapeText(child.textContent)
524
615
  }
@@ -526,12 +617,13 @@ export class HeaderbarView {
526
617
  return title.trim()
527
618
  }
528
619
 
529
- getHeaderHTML() {
530
- if (!this.editor.menu.headerbarModel.open) {
620
+ getHeaderHTML(): string {
621
+ const model = this.editor.menu.headerbarModel as HeaderbarModel
622
+ if (!model.open) {
531
623
  // header is closed
532
624
  return "<div></div>"
533
625
  }
534
- let exitUrl
626
+ let exitUrl: string
535
627
  if (this.editor.docInfo.token) {
536
628
  // Guest user — send to sign-up if open, otherwise to login
537
629
  exitUrl =
@@ -566,8 +658,10 @@ export class HeaderbarView {
566
658
  </div>`
567
659
  }
568
660
 
569
- getParticipantListHTML() {
570
- const participants = this.editor.mod.collab.participants
661
+ getParticipantListHTML(): string {
662
+ const participants = (this.editor.mod.collab as {
663
+ participants: {id: number; username?: string; name?: string; avatar?: string}[]
664
+ }).participants
571
665
  if (participants.length > 1) {
572
666
  return `
573
667
  <div id="connected-collaborators">
@@ -581,17 +675,18 @@ export class HeaderbarView {
581
675
  }
582
676
  }
583
677
 
584
- getHeaderNavHTML() {
585
- return this.editor.menu.headerbarModel.content
678
+ getHeaderNavHTML(): string {
679
+ const model = this.editor.menu.headerbarModel as HeaderbarModel
680
+ return model.content
586
681
  .map(
587
682
  menu => `
588
683
  <div class="header-menu">
589
- <span class="header-nav-item${menu.disabled && menu.disabled(this.editor) ? " fw-disabled" : ""}"
684
+ <span class="header-nav-item${menu.disabled?.(this.editor) ? " fw-disabled" : ""}"
590
685
  title="${typeof menu.tooltip === "function" ? menu.tooltip(this.editor) : menu.tooltip}"
591
686
  aria-label="${typeof menu.tooltip === "function" ? menu.tooltip(this.editor) : menu.tooltip}"
592
687
  role="menuitem"
593
688
  aria-haspopup="true">
594
- ${this.getAccessKeyHTML(menu.title, menu.keys?.slice(-1))}
689
+ ${this.getAccessKeyHTML(menu.title as string, menu.keys?.slice(-1))}
595
690
  </span>
596
691
  ${menu.open ? this.getMenuHTML(menu) : ""}
597
692
  </div>
@@ -600,7 +695,7 @@ export class HeaderbarView {
600
695
  .join("")
601
696
  }
602
697
 
603
- getMenuHTML(menu) {
698
+ getMenuHTML(menu: HeaderbarMenuItem): string {
604
699
  const title =
605
700
  typeof menu.title === "function"
606
701
  ? menu.title(this.editor)
@@ -622,8 +717,8 @@ export class HeaderbarView {
622
717
  </div>`
623
718
  }
624
719
 
625
- getMenuItemHTML(menuItem) {
626
- let returnValue
720
+ getMenuItemHTML(menuItem: HeaderbarItem): string {
721
+ let returnValue = ""
627
722
  switch (menuItem.type) {
628
723
  case "action":
629
724
  case "setting":
@@ -641,29 +736,31 @@ export class HeaderbarView {
641
736
  return returnValue
642
737
  }
643
738
 
644
- getActionMenuItemHTML(menuItem) {
739
+ getActionMenuItemHTML(
740
+ menuItem: HeaderbarActionItem | HeaderbarSettingItem
741
+ ): string {
645
742
  return `<span class="fw-pulldown-item${
646
- menuItem.selected && menuItem.selected(this.editor)
743
+ menuItem.selected?.(this.editor)
647
744
  ? " fw-selected"
648
745
  : ""
649
- }${menuItem.disabled && menuItem.disabled(this.editor) ? " fw-disabled" : ""}${
746
+ }${menuItem.disabled?.(this.editor) ? " fw-disabled" : ""}${
650
747
  menuItem === this.cursorMenuItem ? " fw-cursor" : ""
651
748
  }"
652
749
  role="menuitem"
653
- ${menuItem.disabled && menuItem.disabled(this.editor) ? 'aria-disabled="true"' : ""}
654
- ${menuItem.selected && menuItem.selected(this.editor) ? 'aria-checked="true"' : ""}
750
+ ${menuItem.disabled?.(this.editor) ? 'aria-disabled="true"' : ""}
751
+ ${menuItem.selected?.(this.editor) ? 'aria-checked="true"' : ""}
655
752
  ${menuItem.tooltip ? (typeof menuItem.tooltip === "function" ? `title="${menuItem.tooltip(this.editor)}" aria-label="${menuItem.tooltip(this.editor)}"` : `title="${menuItem.tooltip}" aria-label="${menuItem.tooltip}"`) : ""}>
656
753
  ${menuItem.icon ? `<i class="fa-solid fa-${menuItem.icon}" aria-hidden="true"></i>` : ""}
657
754
  ${typeof menuItem.title === "function" ? menuItem.title(this.editor) : menuItem.title}
658
755
  </span>`
659
756
  }
660
757
 
661
- getMenuMenuItemHTML(menuItem) {
758
+ getMenuMenuItemHTML(menuItem: HeaderbarMenuItem): string {
662
759
  return `<span class="fw-pulldown-item${
663
- menuItem.selected && menuItem.selected(this.editor)
760
+ menuItem.selected?.(this.editor)
664
761
  ? " fw-selected"
665
762
  : ""
666
- }${menuItem.disabled && menuItem.disabled(this.editor) ? " fw-disabled" : ""}${
763
+ }${menuItem.disabled?.(this.editor) ? " fw-disabled" : ""}${
667
764
  menuItem === this.cursorMenuItem ? " fw-cursor" : ""
668
765
  }" ${menuItem.tooltip ? `title="${menuItem.tooltip}" aria-label="${menuItem.tooltip}"` : ""}>
669
766
  ${menuItem.icon ? `<i class="fa-solid fa-${menuItem.icon}"></i>` : ""}
@@ -1,4 +1,11 @@
1
- import {CopyrightDialog} from "../../copyright_dialog/index.js"
1
+ import {CopyrightDialog, type Copyright} from "../../copyright_dialog/index.js"
2
+
3
+ interface FigureDialog {
4
+ copyright: Copyright | false
5
+ imgId: number | false
6
+ imgDb: unknown | false
7
+ layoutMathEditor(): void
8
+ }
2
9
 
3
10
  export const imageMenuModel = () => ({
4
11
  content: [
@@ -7,8 +14,10 @@ export const imageMenuModel = () => ({
7
14
  type: "action",
8
15
  tooltip: gettext("Specify copyright information"),
9
16
  order: 0,
10
- action: figureDialog => {
11
- const dialog = new CopyrightDialog(figureDialog.copyright)
17
+ action: (figureDialog: FigureDialog) => {
18
+ const dialog = new CopyrightDialog(
19
+ figureDialog.copyright as Copyright
20
+ )
12
21
  dialog.init().then(copyright => {
13
22
  if (copyright) {
14
23
  figureDialog.copyright = copyright
@@ -21,7 +30,7 @@ export const imageMenuModel = () => ({
21
30
  type: "action",
22
31
  tooltip: gettext("Remove the image that is previewed"),
23
32
  order: 1,
24
- action: figureDialog => {
33
+ action: (figureDialog: FigureDialog) => {
25
34
  figureDialog.imgId = false
26
35
  figureDialog.imgDb = false
27
36
  figureDialog.copyright = false
@@ -1,3 +1,8 @@
1
+ interface HeadingFilter {
2
+ title: string
3
+ level: number
4
+ }
5
+
1
6
  export const navigatorFilterModel = () => ({
2
7
  content: [
3
8
  {
@@ -24,5 +29,5 @@ export const navigatorFilterModel = () => ({
24
29
  title: gettext("Heading 6"),
25
30
  level: 6
26
31
  }
27
- ]
32
+ ] as HeadingFilter[]
28
33
  })
@@ -1,4 +1,5 @@
1
1
  import {OrderedListStartDialog} from "../../dialogs/index.js"
2
+ import type {Editor} from "../../types.js"
2
3
 
3
4
  export const orderedListMenuModel = () => ({
4
5
  content: [
@@ -9,7 +10,7 @@ export const orderedListMenuModel = () => ({
9
10
  "Specify the number from which this list is to start counting"
10
11
  ),
11
12
  order: 0,
12
- action: editor => {
13
+ action: (editor: Editor) => {
13
14
  const dialog = new OrderedListStartDialog(editor)
14
15
  dialog.init()
15
16
  return false