@seafile/sdoc-editor 0.3.6 → 0.3.7

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 (339) hide show
  1. package/dist/api/sdoc-server-api.js +165 -170
  2. package/dist/api/seafile-api.js +180 -246
  3. package/dist/basic-sdk/comment/comment-decorate.js +23 -30
  4. package/dist/basic-sdk/comment/components/comment-all-participants/index.js +18 -18
  5. package/dist/basic-sdk/comment/components/comment-all-participants/participant-avatar.js +13 -13
  6. package/dist/basic-sdk/comment/components/comment-delete-shadow.js +11 -9
  7. package/dist/basic-sdk/comment/components/comment-editor.js +37 -34
  8. package/dist/basic-sdk/comment/components/comment-input/comment-participant-item.js +16 -14
  9. package/dist/basic-sdk/comment/components/comment-input/index.js +110 -106
  10. package/dist/basic-sdk/comment/components/comment-item-content.js +29 -37
  11. package/dist/basic-sdk/comment/components/comment-item-reply.js +24 -33
  12. package/dist/basic-sdk/comment/components/comment-item-resolved-reply.js +5 -3
  13. package/dist/basic-sdk/comment/components/comment-item-wrapper.js +190 -285
  14. package/dist/basic-sdk/comment/components/comment-list.js +52 -72
  15. package/dist/basic-sdk/comment/components/comment-participants-editor/index.js +23 -30
  16. package/dist/basic-sdk/comment/components/comment-participants-editor/searched-collaborators.js +21 -19
  17. package/dist/basic-sdk/comment/components/comment-participants-editor/selected-participants.js +16 -14
  18. package/dist/basic-sdk/comment/components/editor-comment.js +23 -32
  19. package/dist/basic-sdk/comment/components/elements-comment-count/element-comment-count.js +18 -20
  20. package/dist/basic-sdk/comment/components/elements-comment-count/index.js +8 -8
  21. package/dist/basic-sdk/comment/components/global-comment/global-comment-body-header.js +23 -25
  22. package/dist/basic-sdk/comment/components/global-comment/global-comment-editor.js +9 -7
  23. package/dist/basic-sdk/comment/components/global-comment/global-comment-header.js +9 -6
  24. package/dist/basic-sdk/comment/components/global-comment/index.js +63 -86
  25. package/dist/basic-sdk/comment/constants/index.js +9 -9
  26. package/dist/basic-sdk/comment/helper.js +27 -26
  27. package/dist/basic-sdk/comment/hooks/comment-hooks/use-comment-context.js +8 -7
  28. package/dist/basic-sdk/comment/hooks/comment-hooks/use-comment-list.js +19 -30
  29. package/dist/basic-sdk/comment/hooks/comment-hooks/use-comment-mount.js +41 -71
  30. package/dist/basic-sdk/comment/hooks/notification-hooks/use-notification-context.js +8 -7
  31. package/dist/basic-sdk/comment/hooks/notification-hooks/use-notification-mount.js +45 -64
  32. package/dist/basic-sdk/comment/hooks/use-participants.js +46 -53
  33. package/dist/basic-sdk/comment/index.js +22 -19
  34. package/dist/basic-sdk/comment/provider/comment-context-provider.js +9 -11
  35. package/dist/basic-sdk/comment/provider/index.js +4 -2
  36. package/dist/basic-sdk/comment/provider/notification-context-provider.js +9 -11
  37. package/dist/basic-sdk/comment/reducer/comment-reducer.js +151 -137
  38. package/dist/basic-sdk/comment/reducer/notification-reducer.js +20 -15
  39. package/dist/basic-sdk/comment/utils/index.js +180 -173
  40. package/dist/basic-sdk/comment/utils/notification-utils.js +15 -14
  41. package/dist/basic-sdk/constants/index.js +9 -9
  42. package/dist/basic-sdk/cursor/helper.js +13 -9
  43. package/dist/basic-sdk/cursor/use-cursors.js +9 -13
  44. package/dist/basic-sdk/decorates/index.js +8 -9
  45. package/dist/basic-sdk/editor/editable-article.js +63 -57
  46. package/dist/basic-sdk/editor/sdoc-editor.js +42 -47
  47. package/dist/basic-sdk/extension/commons/color-menu/color-item.js +6 -4
  48. package/dist/basic-sdk/extension/commons/color-menu/index.js +40 -50
  49. package/dist/basic-sdk/extension/commons/dropdown-menu-item/index.js +17 -16
  50. package/dist/basic-sdk/extension/commons/element-popover/index.js +27 -45
  51. package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +46 -59
  52. package/dist/basic-sdk/extension/commons/menu/menu-group.js +7 -21
  53. package/dist/basic-sdk/extension/commons/menu/menu-item.js +17 -14
  54. package/dist/basic-sdk/extension/commons/more-dropdown/index.js +9 -7
  55. package/dist/basic-sdk/extension/commons/select-file-dialog/helpers.js +3 -3
  56. package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +26 -23
  57. package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +49 -80
  58. package/dist/basic-sdk/extension/constants/color.js +10 -10
  59. package/dist/basic-sdk/extension/constants/diff-view.js +3 -3
  60. package/dist/basic-sdk/extension/constants/element-type.js +29 -29
  61. package/dist/basic-sdk/extension/constants/font.js +44 -37
  62. package/dist/basic-sdk/extension/constants/index.js +27 -16
  63. package/dist/basic-sdk/extension/constants/keyboard.js +4 -4
  64. package/dist/basic-sdk/extension/constants/menus-config.js +234 -203
  65. package/dist/basic-sdk/extension/core/queries/index.js +185 -285
  66. package/dist/basic-sdk/extension/core/transforms/focus-editor.js +2 -2
  67. package/dist/basic-sdk/extension/core/transforms/move-children.js +14 -14
  68. package/dist/basic-sdk/extension/core/transforms/remove-node-children.js +6 -18
  69. package/dist/basic-sdk/extension/core/transforms/replace-node.js +22 -19
  70. package/dist/basic-sdk/extension/core/transforms/update-parent-node.js +6 -8
  71. package/dist/basic-sdk/extension/core/utils/index.js +12 -12
  72. package/dist/basic-sdk/extension/index.js +6 -6
  73. package/dist/basic-sdk/extension/plugins/blockquote/helpers.js +39 -54
  74. package/dist/basic-sdk/extension/plugins/blockquote/index.js +1 -1
  75. package/dist/basic-sdk/extension/plugins/blockquote/menu/index.js +34 -44
  76. package/dist/basic-sdk/extension/plugins/blockquote/model.js +8 -9
  77. package/dist/basic-sdk/extension/plugins/blockquote/plugin.js +36 -37
  78. package/dist/basic-sdk/extension/plugins/blockquote/render-elem.js +7 -5
  79. package/dist/basic-sdk/extension/plugins/check-list/helpers.js +15 -25
  80. package/dist/basic-sdk/extension/plugins/check-list/index.js +1 -1
  81. package/dist/basic-sdk/extension/plugins/check-list/menu/index.js +35 -45
  82. package/dist/basic-sdk/extension/plugins/check-list/model.js +9 -10
  83. package/dist/basic-sdk/extension/plugins/check-list/plugin.js +16 -10
  84. package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +42 -56
  85. package/dist/basic-sdk/extension/plugins/clear-format/helpers.js +21 -36
  86. package/dist/basic-sdk/extension/plugins/clear-format/menu/index.js +12 -10
  87. package/dist/basic-sdk/extension/plugins/code-block/helpers.js +40 -58
  88. package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +38 -46
  89. package/dist/basic-sdk/extension/plugins/code-block/index.js +1 -1
  90. package/dist/basic-sdk/extension/plugins/code-block/menu/index.js +9 -7
  91. package/dist/basic-sdk/extension/plugins/code-block/model.js +8 -9
  92. package/dist/basic-sdk/extension/plugins/code-block/plugin.js +44 -51
  93. package/dist/basic-sdk/extension/plugins/code-block/prismjs.js +27 -27
  94. package/dist/basic-sdk/extension/plugins/code-block/render-elem.js +62 -58
  95. package/dist/basic-sdk/extension/plugins/file-link/constants/index.js +16 -14
  96. package/dist/basic-sdk/extension/plugins/file-link/helpers.js +34 -36
  97. package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +19 -23
  98. package/dist/basic-sdk/extension/plugins/file-link/index.js +1 -1
  99. package/dist/basic-sdk/extension/plugins/file-link/menu/index.js +10 -8
  100. package/dist/basic-sdk/extension/plugins/file-link/plugin.js +17 -11
  101. package/dist/basic-sdk/extension/plugins/file-link/render-elem.js +34 -38
  102. package/dist/basic-sdk/extension/plugins/font/helpers.js +75 -78
  103. package/dist/basic-sdk/extension/plugins/font/index.js +1 -1
  104. package/dist/basic-sdk/extension/plugins/font/menu/font-family/font-item.js +14 -13
  105. package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.js +38 -55
  106. package/dist/basic-sdk/extension/plugins/font/menu/font-size/font-size-scale.js +12 -10
  107. package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.js +29 -31
  108. package/dist/basic-sdk/extension/plugins/font/menu/index.js +5 -3
  109. package/dist/basic-sdk/extension/plugins/font/plugin.js +4 -4
  110. package/dist/basic-sdk/extension/plugins/header/helpers.js +32 -38
  111. package/dist/basic-sdk/extension/plugins/header/index.js +1 -1
  112. package/dist/basic-sdk/extension/plugins/header/menu/index.js +101 -107
  113. package/dist/basic-sdk/extension/plugins/header/plugin.js +41 -44
  114. package/dist/basic-sdk/extension/plugins/header/render-elem.js +28 -20
  115. package/dist/basic-sdk/extension/plugins/html/helper.js +30 -28
  116. package/dist/basic-sdk/extension/plugins/html/index.js +1 -1
  117. package/dist/basic-sdk/extension/plugins/html/plugin.js +12 -10
  118. package/dist/basic-sdk/extension/plugins/html/rules/blockquote.js +5 -3
  119. package/dist/basic-sdk/extension/plugins/html/rules/check-list.js +4 -2
  120. package/dist/basic-sdk/extension/plugins/html/rules/code-block.js +20 -24
  121. package/dist/basic-sdk/extension/plugins/html/rules/header.js +7 -5
  122. package/dist/basic-sdk/extension/plugins/html/rules/image.js +4 -2
  123. package/dist/basic-sdk/extension/plugins/html/rules/index.js +1 -1
  124. package/dist/basic-sdk/extension/plugins/html/rules/link.js +5 -3
  125. package/dist/basic-sdk/extension/plugins/html/rules/list.js +6 -4
  126. package/dist/basic-sdk/extension/plugins/html/rules/paragraph.js +5 -3
  127. package/dist/basic-sdk/extension/plugins/html/rules/table.js +5 -3
  128. package/dist/basic-sdk/extension/plugins/html/rules/text.js +5 -3
  129. package/dist/basic-sdk/extension/plugins/image/constants/index.js +2 -2
  130. package/dist/basic-sdk/extension/plugins/image/dialogs/image-previewer.js +59 -75
  131. package/dist/basic-sdk/extension/plugins/image/helpers.js +74 -98
  132. package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +49 -62
  133. package/dist/basic-sdk/extension/plugins/image/index.js +1 -1
  134. package/dist/basic-sdk/extension/plugins/image/menu/index.js +12 -9
  135. package/dist/basic-sdk/extension/plugins/image/model.js +11 -12
  136. package/dist/basic-sdk/extension/plugins/image/plugin.js +43 -35
  137. package/dist/basic-sdk/extension/plugins/image/render-elem.js +73 -91
  138. package/dist/basic-sdk/extension/plugins/index.js +1 -1
  139. package/dist/basic-sdk/extension/plugins/link/dialog/add-link-dialog/index.js +30 -39
  140. package/dist/basic-sdk/extension/plugins/link/helpers.js +76 -100
  141. package/dist/basic-sdk/extension/plugins/link/hover/index.js +12 -9
  142. package/dist/basic-sdk/extension/plugins/link/index.js +1 -1
  143. package/dist/basic-sdk/extension/plugins/link/menu/index.js +10 -8
  144. package/dist/basic-sdk/extension/plugins/link/model.js +10 -11
  145. package/dist/basic-sdk/extension/plugins/link/plugin.js +28 -31
  146. package/dist/basic-sdk/extension/plugins/link/render-elem.js +66 -74
  147. package/dist/basic-sdk/extension/plugins/list/helpers.js +45 -57
  148. package/dist/basic-sdk/extension/plugins/list/index.js +1 -1
  149. package/dist/basic-sdk/extension/plugins/list/menu/index.js +37 -49
  150. package/dist/basic-sdk/extension/plugins/list/model.js +11 -12
  151. package/dist/basic-sdk/extension/plugins/list/plugin/index.js +16 -12
  152. package/dist/basic-sdk/extension/plugins/list/plugin/insert-break-list.js +4 -4
  153. package/dist/basic-sdk/extension/plugins/list/plugin/insert-fragment-list.js +54 -70
  154. package/dist/basic-sdk/extension/plugins/list/plugin/normalize-list.js +16 -20
  155. package/dist/basic-sdk/extension/plugins/list/plugin/on-tab-handle.js +19 -14
  156. package/dist/basic-sdk/extension/plugins/list/plugin/shortcut.js +20 -28
  157. package/dist/basic-sdk/extension/plugins/list/queries/index.js +16 -18
  158. package/dist/basic-sdk/extension/plugins/list/render-elem.js +23 -15
  159. package/dist/basic-sdk/extension/plugins/list/transforms/insert-list-item.js +20 -24
  160. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-item-down.js +16 -19
  161. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-item-up.js +31 -35
  162. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-items-to-list.js +18 -18
  163. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-items.js +23 -24
  164. package/dist/basic-sdk/extension/plugins/list/transforms/normalize-list-item.js +38 -55
  165. package/dist/basic-sdk/extension/plugins/list/transforms/normalize-nested-list.js +11 -13
  166. package/dist/basic-sdk/extension/plugins/list/transforms/remove-first-list-item.js +8 -8
  167. package/dist/basic-sdk/extension/plugins/list/transforms/toggle-list.js +42 -50
  168. package/dist/basic-sdk/extension/plugins/list/transforms/unwrap-list.js +11 -14
  169. package/dist/basic-sdk/extension/plugins/markdown/index.js +1 -1
  170. package/dist/basic-sdk/extension/plugins/markdown/plugin.js +59 -52
  171. package/dist/basic-sdk/extension/plugins/paragraph/index.js +1 -1
  172. package/dist/basic-sdk/extension/plugins/paragraph/render-elem.js +12 -10
  173. package/dist/basic-sdk/extension/plugins/sdoc-link/constants/index.js +16 -14
  174. package/dist/basic-sdk/extension/plugins/sdoc-link/helpers.js +66 -65
  175. package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.js +19 -23
  176. package/dist/basic-sdk/extension/plugins/sdoc-link/index.js +1 -1
  177. package/dist/basic-sdk/extension/plugins/sdoc-link/menu/index.js +10 -8
  178. package/dist/basic-sdk/extension/plugins/sdoc-link/plugin.js +23 -15
  179. package/dist/basic-sdk/extension/plugins/sdoc-link/render-elem.js +35 -39
  180. package/dist/basic-sdk/extension/plugins/table/constants/index.js +16 -14
  181. package/dist/basic-sdk/extension/plugins/table/dialog/custom-table-size-dialog/index.js +17 -24
  182. package/dist/basic-sdk/extension/plugins/table/dialog/custom-table-size-dialog/number-input.js +9 -7
  183. package/dist/basic-sdk/extension/plugins/table/helpers.js +466 -440
  184. package/dist/basic-sdk/extension/plugins/table/index.js +1 -1
  185. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/cell-bg-color-menu.js +16 -13
  186. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/cell-text-align-menu.js +16 -18
  187. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/common-menu.js +58 -65
  188. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/index.js +7 -5
  189. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/remove-table-menu.js +11 -9
  190. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/table-column-menu.js +13 -14
  191. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/table-row-menu.js +13 -14
  192. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.js +92 -105
  193. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/insert-table-element.js +62 -66
  194. package/dist/basic-sdk/extension/plugins/table/menu/table-menu/index.js +9 -7
  195. package/dist/basic-sdk/extension/plugins/table/model.js +14 -15
  196. package/dist/basic-sdk/extension/plugins/table/plugin.js +130 -112
  197. package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.js +31 -45
  198. package/dist/basic-sdk/extension/plugins/table/popover/table-template/index.js +12 -14
  199. package/dist/basic-sdk/extension/plugins/table/popover/table-template/sample-table.js +15 -19
  200. package/dist/basic-sdk/extension/plugins/table/render/hooks.js +25 -32
  201. package/dist/basic-sdk/extension/plugins/table/render/index.js +57 -67
  202. package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +42 -36
  203. package/dist/basic-sdk/extension/plugins/table/render/render-row.js +44 -49
  204. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/first-column-left-resize-handler.js +36 -45
  205. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/index.js +10 -8
  206. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/resize-handler.js +41 -50
  207. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/column-header.js +30 -29
  208. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/index.js +21 -33
  209. package/dist/basic-sdk/extension/plugins/table/render/table-header/index.js +17 -15
  210. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-columns-header.js +7 -5
  211. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/index.js +22 -32
  212. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/row-header.js +41 -43
  213. package/dist/basic-sdk/extension/plugins/table/render/table-root.js +16 -20
  214. package/dist/basic-sdk/extension/plugins/text-align/helpers.js +19 -24
  215. package/dist/basic-sdk/extension/plugins/text-align/index.js +1 -1
  216. package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +20 -26
  217. package/dist/basic-sdk/extension/plugins/text-style/caret.js +9 -7
  218. package/dist/basic-sdk/extension/plugins/text-style/helpers.js +17 -24
  219. package/dist/basic-sdk/extension/plugins/text-style/index.js +1 -1
  220. package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +38 -37
  221. package/dist/basic-sdk/extension/plugins/text-style/plugin.js +6 -6
  222. package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +14 -10
  223. package/dist/basic-sdk/extension/render/custom-element.js +30 -49
  224. package/dist/basic-sdk/extension/render/element-decorate/rebase-decorate/index.js +6 -4
  225. package/dist/basic-sdk/extension/render/element-decorate/rebase-decorate/rebase-delete-modify-decorate.js +13 -10
  226. package/dist/basic-sdk/extension/render/element-decorate/rebase-decorate/rebase-modify-delete-decorate.js +13 -10
  227. package/dist/basic-sdk/extension/render/element-decorate/rebase-decorate/rebase-modify-modify-decorate.js +21 -19
  228. package/dist/basic-sdk/extension/render/render-element.js +5 -3
  229. package/dist/basic-sdk/extension/render/render-leaf.js +4 -6
  230. package/dist/basic-sdk/extension/toolbar/context-toolbar/index.js +18 -16
  231. package/dist/basic-sdk/extension/toolbar/header-toolbar/index.js +5 -3
  232. package/dist/basic-sdk/extension/toolbar/header-toolbar/insert-toolbar/index.js +29 -29
  233. package/dist/basic-sdk/extension/toolbar/header-toolbar/redo-undo.js +45 -53
  234. package/dist/basic-sdk/extension/toolbar/side-toolbar/event.js +8 -8
  235. package/dist/basic-sdk/extension/toolbar/side-toolbar/helpers.js +45 -49
  236. package/dist/basic-sdk/extension/toolbar/side-toolbar/index.js +50 -72
  237. package/dist/basic-sdk/extension/toolbar/side-toolbar/insert-below-menu.js +5 -3
  238. package/dist/basic-sdk/extension/toolbar/side-toolbar/insert-block-menu.js +25 -26
  239. package/dist/basic-sdk/extension/toolbar/side-toolbar/side-menu.js +24 -26
  240. package/dist/basic-sdk/extension/toolbar/side-toolbar/transform-menus.js +14 -16
  241. package/dist/basic-sdk/extension/utils/index.js +4 -4
  242. package/dist/basic-sdk/highlight/index.js +8 -13
  243. package/dist/basic-sdk/highlight/setNodeToDecorations.js +43 -73
  244. package/dist/basic-sdk/hooks/use-color-context.js +27 -35
  245. package/dist/basic-sdk/hooks/use-scroll-context.js +6 -4
  246. package/dist/basic-sdk/hooks/use-selection-element.js +5 -7
  247. package/dist/basic-sdk/hooks/use-selection-position.js +13 -15
  248. package/dist/basic-sdk/hooks/use-selection-update.js +6 -11
  249. package/dist/basic-sdk/layout/article-container.js +20 -23
  250. package/dist/basic-sdk/layout/editor-container.js +6 -4
  251. package/dist/basic-sdk/layout/editor-content.js +15 -15
  252. package/dist/basic-sdk/node-id/constants.js +9 -9
  253. package/dist/basic-sdk/node-id/helpers.js +44 -29
  254. package/dist/basic-sdk/node-id/index.js +13 -11
  255. package/dist/basic-sdk/outline/index.js +24 -27
  256. package/dist/basic-sdk/outline/outline-item.js +39 -44
  257. package/dist/basic-sdk/socket/helpers.js +99 -90
  258. package/dist/basic-sdk/socket/socket-client.js +175 -171
  259. package/dist/basic-sdk/socket/socket-manager.js +316 -297
  260. package/dist/basic-sdk/socket/with-socket-io.js +38 -30
  261. package/dist/basic-sdk/utils/debug.js +4 -4
  262. package/dist/basic-sdk/utils/diff-text.js +191 -193
  263. package/dist/basic-sdk/utils/diff.js +115 -106
  264. package/dist/basic-sdk/utils/document-utils.js +10 -13
  265. package/dist/basic-sdk/utils/dom-utils.js +18 -16
  266. package/dist/basic-sdk/utils/event-bus.js +26 -39
  267. package/dist/basic-sdk/utils/event-handler.js +81 -79
  268. package/dist/basic-sdk/utils/mouse-event.js +29 -27
  269. package/dist/basic-sdk/utils/object-utils.js +35 -53
  270. package/dist/basic-sdk/utils/rebase.js +101 -76
  271. package/dist/basic-sdk/views/published-revision-diff-viewer.js +19 -22
  272. package/dist/basic-sdk/views/readonly-article.js +7 -5
  273. package/dist/basic-sdk/views/revision-diff-viewer.js +15 -18
  274. package/dist/basic-sdk/views/sdoc-diff-viewer.js +8 -6
  275. package/dist/basic-sdk/views/sdoc-viewer.js +9 -7
  276. package/dist/components/common-loading/index.js +1 -1
  277. package/dist/components/doc-info/index.js +25 -23
  278. package/dist/components/doc-operations/collaborators-operation/collaborators-popover.js +36 -49
  279. package/dist/components/doc-operations/collaborators-operation/index.js +58 -76
  280. package/dist/components/doc-operations/comments-operation/index.js +7 -13
  281. package/dist/components/doc-operations/history-operation.js +5 -5
  282. package/dist/components/doc-operations/index.js +10 -9
  283. package/dist/components/doc-operations/more-operations.js +15 -21
  284. package/dist/components/doc-operations/revision-operations/changes-count/index.js +15 -16
  285. package/dist/components/doc-operations/revision-operations/index.js +65 -71
  286. package/dist/components/doc-operations/revision-operations/more-revision-operations/index.js +13 -17
  287. package/dist/components/doc-operations/revision-operations/publish-revision/index.js +8 -5
  288. package/dist/components/doc-operations/revision-operations/revisions/index.js +13 -19
  289. package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/index.js +56 -87
  290. package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/revision-operation/index.js +14 -16
  291. package/dist/components/doc-operations/revision-operations/view-changes/index.js +25 -32
  292. package/dist/components/doc-operations/share-operation/index.js +2 -2
  293. package/dist/components/doc-operations/tag-operation/constans.js +1 -1
  294. package/dist/components/doc-operations/tag-operation/file-tag-quick-view/index.js +26 -42
  295. package/dist/components/doc-operations/tag-operation/index.js +1 -1
  296. package/dist/components/doc-operations/tag-operation/tag-popover/index.js +95 -175
  297. package/dist/components/doc-operations/tag-operation/utils.js +2 -6
  298. package/dist/components/draft-dropdown/index.js +44 -53
  299. package/dist/components/loading/index.js +8 -22
  300. package/dist/components/modal-portal/index.js +15 -32
  301. package/dist/components/switch/index.js +8 -6
  302. package/dist/components/tip-dialog/index.js +21 -23
  303. package/dist/components/tip-message/index.js +93 -92
  304. package/dist/components/toast/alert.js +73 -88
  305. package/dist/components/toast/index.js +1 -1
  306. package/dist/components/toast/toast.js +76 -103
  307. package/dist/components/toast/toastManager.js +55 -89
  308. package/dist/components/toast/toaster.js +54 -56
  309. package/dist/components/tooltip/index.js +15 -16
  310. package/dist/constants/index.js +26 -6
  311. package/dist/constants/transfer-types.js +3 -3
  312. package/dist/context.js +242 -339
  313. package/dist/hooks/use-collaborators.js +18 -20
  314. package/dist/hooks/use-document.js +33 -45
  315. package/dist/layout/content.js +13 -26
  316. package/dist/layout/header.js +13 -26
  317. package/dist/layout/layout.js +11 -9
  318. package/dist/model/notification.js +10 -11
  319. package/dist/model/revision.js +27 -28
  320. package/dist/model/user.js +10 -11
  321. package/dist/pages/error-boundary.js +18 -36
  322. package/dist/pages/error-page.js +14 -26
  323. package/dist/pages/published-revision-viewer.js +23 -35
  324. package/dist/pages/simple-editor.js +39 -46
  325. package/dist/pages/simple-viewer.js +70 -104
  326. package/dist/utils/date-utils.js +67 -81
  327. package/dist/utils/get-event-transfer.js +13 -15
  328. package/dist/utils/hotkey.js +24 -24
  329. package/dist/utils/index.js +20 -20
  330. package/dist/utils/local-storage-utils.js +41 -58
  331. package/package.json +10 -10
  332. package/public/locales/cs/sdoc-editor.json +3 -1
  333. package/public/locales/de/sdoc-editor.json +3 -1
  334. package/public/locales/en/sdoc-editor.json +1 -0
  335. package/public/locales/es/sdoc-editor.json +3 -1
  336. package/public/locales/fr/sdoc-editor.json +3 -1
  337. package/public/locales/it/sdoc-editor.json +3 -1
  338. package/public/locales/ru/sdoc-editor.json +3 -1
  339. package/public/locales/zh_CN/sdoc-editor.json +1 -0
@@ -13,9 +13,11 @@ import HistoryMenu from './redo-undo';
13
13
  import Font from '../../plugins/font/menu';
14
14
  import InsertToolbar from './insert-toolbar';
15
15
  import ActiveTableMenu from '../../plugins/table/menu/active-table-menu';
16
- var HeaderToolbar = function HeaderToolbar(_ref) {
17
- var editor = _ref.editor,
18
- readonly = _ref.readonly;
16
+ const HeaderToolbar = _ref => {
17
+ let {
18
+ editor,
19
+ readonly
20
+ } = _ref;
19
21
  useSelectionUpdate();
20
22
  return /*#__PURE__*/React.createElement("div", {
21
23
  className: "sdoc-editor-toolbar"
@@ -1,4 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
1
  import React, { useState, useRef, useCallback, useMemo } from 'react';
3
2
  import { useTranslation } from 'react-i18next';
4
3
  import { UncontrolledPopover } from 'reactstrap';
@@ -11,31 +10,31 @@ import SdocLinkMenu from '../../../plugins/sdoc-link/menu';
11
10
  import FileLinkMenu from '../../../plugins/file-link/menu';
12
11
  import EventBus from '../../../../utils/event-bus';
13
12
  import './index.css';
14
- var InsertToolbar = function InsertToolbar(_ref) {
15
- var isRichEditor = _ref.isRichEditor,
16
- className = _ref.className,
17
- editor = _ref.editor,
18
- readonly = _ref.readonly;
19
- var _useState = useState(false),
20
- _useState2 = _slicedToArray(_useState, 2),
21
- isShowMenu = _useState2[0],
22
- setMenuShow = _useState2[1];
23
- var _useTranslation = useTranslation(),
24
- t = _useTranslation.t;
25
- var popoverRef = useRef(null);
26
- var disabled = readonly;
27
- var insertButtonRef = useRef(null);
28
- var insertToolbarId = 'sdoc-insert-toolbar-btn';
29
- var eventBus = useMemo(function () {
13
+ const InsertToolbar = _ref => {
14
+ let {
15
+ isRichEditor,
16
+ className,
17
+ editor,
18
+ readonly
19
+ } = _ref;
20
+ const [isShowMenu, setMenuShow] = useState(false);
21
+ const {
22
+ t
23
+ } = useTranslation();
24
+ const popoverRef = useRef(null);
25
+ const disabled = readonly;
26
+ const insertButtonRef = useRef(null);
27
+ const insertToolbarId = 'sdoc-insert-toolbar-btn';
28
+ const eventBus = useMemo(() => {
30
29
  return EventBus.getInstance();
31
30
  }, []);
32
- var toggle = useCallback(function (event) {
31
+ const toggle = useCallback(event => {
33
32
  popoverRef.current && popoverRef.current.toggle();
34
33
  setMenuShow(!isShowMenu);
35
34
 
36
35
  // eslint-disable-next-line react-hooks/exhaustive-deps
37
36
  }, [isShowMenu]);
38
- var validClassName = classnames(className, 'sdoc-menu-with-dropdown sdoc-insert-toolbar-btn', {
37
+ const validClassName = classnames(className, 'sdoc-menu-with-dropdown sdoc-insert-toolbar-btn', {
39
38
  'menu-show': isShowMenu,
40
39
  'disabled': disabled,
41
40
  'rich-icon-btn d-flex': isRichEditor,
@@ -43,16 +42,17 @@ var InsertToolbar = function InsertToolbar(_ref) {
43
42
  'rich-icon-btn-hover': isRichEditor && !disabled,
44
43
  'btn btn-icon btn-secondary btn-active d-flex': !isRichEditor
45
44
  });
46
- var caretIconClass = "sdoc-menu-with-dropdown-triangle-icon sdocfont sdoc-".concat(isShowMenu ? 'caret-up' : 'drop-down');
47
- var _ref2 = insertButtonRef.current ? insertButtonRef.current.getBoundingClientRect() : {
48
- bottom: 92.5
49
- },
50
- bottom = _ref2.bottom;
51
- var props = {
52
- eventBus: eventBus,
53
- editor: editor,
54
- readonly: readonly,
55
- toggle: toggle
45
+ const caretIconClass = "sdoc-menu-with-dropdown-triangle-icon sdocfont sdoc-".concat(isShowMenu ? 'caret-up' : 'drop-down');
46
+ const {
47
+ bottom
48
+ } = insertButtonRef.current ? insertButtonRef.current.getBoundingClientRect() : {
49
+ bottom: 92.5
50
+ };
51
+ const props = {
52
+ eventBus,
53
+ editor,
54
+ readonly,
55
+ toggle
56
56
  };
57
57
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
58
58
  type: "button",
@@ -1,69 +1,61 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/esm/createClass";
4
- import _inherits from "@babel/runtime/helpers/esm/inherits";
5
- import _createSuper from "@babel/runtime/helpers/esm/createSuper";
6
2
  import React from 'react';
7
3
  import { MenuItem } from '../../commons';
8
4
  import { MENUS_CONFIG_MAP, REDO, UNDO } from '../../constants';
9
- var HistoryMenu = /*#__PURE__*/function (_React$Component) {
10
- _inherits(HistoryMenu, _React$Component);
11
- var _super = _createSuper(HistoryMenu);
12
- function HistoryMenu() {
13
- var _this;
14
- _classCallCheck(this, HistoryMenu);
15
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
16
- args[_key] = arguments[_key];
17
- }
18
- _this = _super.call.apply(_super, [this].concat(args));
19
- _this.isDisabled = function (type) {
20
- var _this$props = _this.props,
21
- editor = _this$props.editor,
22
- readonly = _this$props.readonly;
5
+ class HistoryMenu extends React.Component {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.isDisabled = type => {
9
+ const {
10
+ editor,
11
+ readonly
12
+ } = this.props;
23
13
  if (readonly) return true;
24
- var history = editor.history;
14
+ const {
15
+ history
16
+ } = editor;
25
17
  if (type === UNDO) {
26
18
  return history.undos.length === 0;
27
19
  }
28
20
  return history.redos.length === 0;
29
21
  };
30
- _this.onUndoMouseDown = function () {
31
- var editor = _this.props.editor;
22
+ this.onUndoMouseDown = () => {
23
+ const {
24
+ editor
25
+ } = this.props;
32
26
  editor.undo();
33
27
  };
34
- _this.onRedoMouseDown = function () {
35
- var editor = _this.props.editor;
28
+ this.onRedoMouseDown = () => {
29
+ const {
30
+ editor
31
+ } = this.props;
36
32
  editor.redo();
37
33
  };
38
- return _this;
39
34
  }
40
- _createClass(HistoryMenu, [{
41
- key: "render",
42
- value: function render() {
43
- var _this$props2 = this.props,
44
- isRichEditor = _this$props2.isRichEditor,
45
- className = _this$props2.className;
46
- var undoConfig = MENUS_CONFIG_MAP[UNDO];
47
- var redoConfig = MENUS_CONFIG_MAP[REDO];
48
- var undoProps = _objectSpread(_objectSpread({
49
- isRichEditor: isRichEditor,
50
- className: className
51
- }, undoConfig), {}, {
52
- disabled: this.isDisabled(UNDO),
53
- isActive: false,
54
- onMouseDown: this.onUndoMouseDown
55
- });
56
- var redoProps = _objectSpread(_objectSpread({
57
- isRichEditor: isRichEditor,
58
- className: className
59
- }, redoConfig), {}, {
60
- disabled: this.isDisabled(REDO),
61
- isActive: false,
62
- onMouseDown: this.onRedoMouseDown
63
- });
64
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MenuItem, undoProps), /*#__PURE__*/React.createElement(MenuItem, redoProps));
65
- }
66
- }]);
67
- return HistoryMenu;
68
- }(React.Component);
35
+ render() {
36
+ const {
37
+ isRichEditor,
38
+ className
39
+ } = this.props;
40
+ const undoConfig = MENUS_CONFIG_MAP[UNDO];
41
+ const redoConfig = MENUS_CONFIG_MAP[REDO];
42
+ const undoProps = _objectSpread(_objectSpread({
43
+ isRichEditor,
44
+ className
45
+ }, undoConfig), {}, {
46
+ disabled: this.isDisabled(UNDO),
47
+ isActive: false,
48
+ onMouseDown: this.onUndoMouseDown
49
+ });
50
+ const redoProps = _objectSpread(_objectSpread({
51
+ isRichEditor,
52
+ className
53
+ }, redoConfig), {}, {
54
+ disabled: this.isDisabled(REDO),
55
+ isActive: false,
56
+ onMouseDown: this.onRedoMouseDown
57
+ });
58
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MenuItem, undoProps), /*#__PURE__*/React.createElement(MenuItem, redoProps));
59
+ }
60
+ }
69
61
  export default HistoryMenu;
@@ -1,25 +1,25 @@
1
1
  import EventBus from '../../../utils/event-bus';
2
2
  import { INTERNAL_EVENT } from '../../../constants';
3
- export var onMouseEnter = function onMouseEnter(event) {
3
+ export const onMouseEnter = event => {
4
4
  event.stopPropagation();
5
- var eventBus = EventBus.getInstance();
5
+ const eventBus = EventBus.getInstance();
6
6
  eventBus.dispatch(INTERNAL_EVENT.ON_MOUSE_ENTER_BLOCK, event);
7
7
  };
8
- export var onDragOver = function onDragOver(event) {
8
+ export const onDragOver = event => {
9
9
  event.stopPropagation();
10
10
  event.preventDefault();
11
- var eventBus = EventBus.getInstance();
11
+ const eventBus = EventBus.getInstance();
12
12
  eventBus.dispatch(INTERNAL_EVENT.ON_DRAG_OVER_BLOCK, event);
13
13
  };
14
- export var onDragLeave = function onDragLeave(event) {
14
+ export const onDragLeave = event => {
15
15
  event.stopPropagation();
16
16
  event.preventDefault();
17
- var eventBus = EventBus.getInstance();
17
+ const eventBus = EventBus.getInstance();
18
18
  eventBus.dispatch(INTERNAL_EVENT.ON_DRAG_LEAVE_BLOCK, event);
19
19
  };
20
- export var onDrop = function onDrop(event) {
20
+ export const onDrop = event => {
21
21
  event.stopPropagation();
22
22
  event.preventDefault();
23
- var eventBus = EventBus.getInstance();
23
+ const eventBus = EventBus.getInstance();
24
24
  eventBus.dispatch(INTERNAL_EVENT.ON_DRAG_DROP_BLOCK, event);
25
25
  };
@@ -8,14 +8,14 @@ import { generateEmptyList } from '../../plugins/list/model';
8
8
  import { setClipboardCodeBlockData } from '../../plugins/code-block/helpers';
9
9
  import { ORDERED_LIST, UNORDERED_LIST, PARAGRAPH, CHECK_LIST_ITEM, IMAGE, TABLE, CODE_BLOCK, BLOCKQUOTE, LIST_ITEM_CORRELATION_TYPE, ADD_POSITION_OFFSET_TYPE, INSERT_POSITION, ELEMENT_TYPE } from '../../constants';
10
10
  import { EMPTY_SELECTED_RANGE } from '../../plugins/table/constants';
11
- export var onSetNodeType = function onSetNodeType(editor, element, type) {
11
+ export const onSetNodeType = (editor, element, type) => {
12
12
  if (!type) return;
13
13
  if ([ORDERED_LIST, UNORDERED_LIST].includes(type)) {
14
14
  toggleList(editor, type);
15
15
  return;
16
16
  }
17
17
  if (type === CHECK_LIST_ITEM) {
18
- var newType = element.type === CHECK_LIST_ITEM ? PARAGRAPH : CHECK_LIST_ITEM;
18
+ const newType = element.type === CHECK_LIST_ITEM ? PARAGRAPH : CHECK_LIST_ITEM;
19
19
  Transforms.setNodes(editor, {
20
20
  type: newType
21
21
  });
@@ -27,9 +27,7 @@ export var onSetNodeType = function onSetNodeType(editor, element, type) {
27
27
  type: BLOCKQUOTE
28
28
  }, {
29
29
  mode: 'highest',
30
- match: function match(n) {
31
- return Element.isElement(n) && Editor.isBlock(editor, n);
32
- }
30
+ match: n => Element.isElement(n) && Editor.isBlock(editor, n)
33
31
  });
34
32
  return;
35
33
  }
@@ -37,20 +35,20 @@ export var onSetNodeType = function onSetNodeType(editor, element, type) {
37
35
  type: type
38
36
  });
39
37
  };
40
- export var setSelection = function setSelection(editor, element) {
38
+ export const setSelection = (editor, element) => {
41
39
  if (element) {
42
- var path = ReactEditor.findPath(editor, element);
40
+ const path = ReactEditor.findPath(editor, element);
43
41
  Transforms.select(editor, path);
44
42
  }
45
43
  };
46
- export var onCopyNode = function onCopyNode(editor, element) {
44
+ export const onCopyNode = (editor, element) => {
47
45
  if (element.type === ELEMENT_TYPE.CODE_BLOCK) {
48
46
  setClipboardCodeBlockData(element);
49
47
  return;
50
48
  }
51
49
  if (element.type === ELEMENT_TYPE.TABLE) {
52
- var tableSize = [element.children.length, element.children[0].children.length];
53
- var tableSelectedRange = {
50
+ const tableSize = [element.children.length, element.children[0].children.length];
51
+ const tableSelectedRange = {
54
52
  minRowIndex: 0,
55
53
  maxRowIndex: tableSize[0] - 1,
56
54
  minColIndex: 0,
@@ -58,11 +56,11 @@ export var onCopyNode = function onCopyNode(editor, element) {
58
56
  };
59
57
  editor.tableSelectedRange = tableSelectedRange;
60
58
  }
61
- var newData = editor.setFragmentData(new DataTransfer());
59
+ const newData = editor.setFragmentData(new DataTransfer());
62
60
  copy('copy', {
63
- onCopy: function onCopy(clipboardData) {
64
- newData.types.forEach(function (type) {
65
- var data = newData.getData(type);
61
+ onCopy: clipboardData => {
62
+ newData.types.forEach(type => {
63
+ const data = newData.getData(type);
66
64
  clipboardData.setData(type, data);
67
65
  });
68
66
  }
@@ -71,43 +69,41 @@ export var onCopyNode = function onCopyNode(editor, element) {
71
69
  editor.tableSelectedRange = EMPTY_SELECTED_RANGE;
72
70
  }
73
71
  };
74
- export var onDeleteNode = function onDeleteNode(editor, element) {
75
- var path = ReactEditor.findPath(editor, element);
72
+ export const onDeleteNode = (editor, element) => {
73
+ const path = ReactEditor.findPath(editor, element);
76
74
  Transforms.removeNodes(editor, {
77
75
  at: path
78
76
  });
79
77
  };
80
- export var getDomTopHeight = function getDomTopHeight(dom, slateNode) {
81
- var rect = dom.getBoundingClientRect();
82
- var offsetY = 0;
83
- var paddingTop = parseFloat(window.getComputedStyle(dom).getPropertyValue('padding-top'));
84
- var lightHight = parseFloat(window.getComputedStyle(dom).getPropertyValue('line-height'));
78
+ export const getDomTopHeight = (dom, slateNode) => {
79
+ const rect = dom.getBoundingClientRect();
80
+ let offsetY = 0;
81
+ const paddingTop = parseFloat(window.getComputedStyle(dom).getPropertyValue('padding-top'));
82
+ const lightHight = parseFloat(window.getComputedStyle(dom).getPropertyValue('line-height'));
85
83
  if (ADD_POSITION_OFFSET_TYPE.includes(slateNode.type)) {
86
84
  offsetY = lightHight / 2 + paddingTop - 12; // side toolbar icon is 12 px
87
85
  }
88
86
 
89
- var HEADER_HEIGHT = 56 + 44;
87
+ const HEADER_HEIGHT = 56 + 44;
90
88
  return rect.y - HEADER_HEIGHT + offsetY;
91
89
  };
92
- export var isVoidNode = function isVoidNode(node) {
90
+ export const isVoidNode = node => {
93
91
  if (!node) return true;
94
- var hasImage = node.children.find(function (n) {
95
- return n.type === IMAGE;
96
- });
97
- var isTable = node.type === TABLE;
98
- var isCodeBlock = node.type === CODE_BLOCK;
92
+ const hasImage = node.children.find(n => n.type === IMAGE);
93
+ const isTable = node.type === TABLE;
94
+ const isCodeBlock = node.type === CODE_BLOCK;
99
95
  return Node.string(node) === '' && !hasImage && !isTable && !isCodeBlock;
100
96
  };
101
- export var isNotSupportTransform = function isNotSupportTransform(node) {
97
+ export const isNotSupportTransform = node => {
102
98
  if (node.type && [CODE_BLOCK, TABLE].includes(node.type)) {
103
99
  return true;
104
100
  }
105
101
  return false;
106
102
  };
107
- export var insertElement = function insertElement(editor, type, insertPosition) {
103
+ export const insertElement = (editor, type, insertPosition) => {
108
104
  if (insertPosition === INSERT_POSITION.AFTER) {
109
- var p = generateEmptyElement(PARAGRAPH);
110
- var path = Editor.path(editor, editor.selection);
105
+ const p = generateEmptyElement(PARAGRAPH);
106
+ const path = Editor.path(editor, editor.selection);
111
107
  Transforms.insertNodes(editor, p, {
112
108
  at: [path[0] + 1]
113
109
  });
@@ -115,54 +111,54 @@ export var insertElement = function insertElement(editor, type, insertPosition)
115
111
  }
116
112
  // Insertion position is current or after
117
113
  Transforms.setNodes(editor, {
118
- type: type
114
+ type
119
115
  });
120
116
  };
121
- export var getNodeEntry = function getNodeEntry(editor, el) {
122
- var node = ReactEditor.toSlateNode(editor, el);
123
- var path = ReactEditor.findPath(editor, node);
117
+ export const getNodeEntry = (editor, el) => {
118
+ const node = ReactEditor.toSlateNode(editor, el);
119
+ let path = ReactEditor.findPath(editor, node);
124
120
  if (isList(editor, path)) {
125
121
  path = path.slice(0, path.length - 1);
126
122
  }
127
123
  if (node && path) return [node, path];
128
124
  return [];
129
125
  };
130
- export var isBlockquote = function isBlockquote(editor, path) {
126
+ export const isBlockquote = (editor, path) => {
131
127
  var _nodeEntry$;
132
- var nodeEntry = Editor.node(editor, path);
128
+ const nodeEntry = Editor.node(editor, path);
133
129
  if (nodeEntry && ((_nodeEntry$ = nodeEntry[0]) === null || _nodeEntry$ === void 0 ? void 0 : _nodeEntry$.type) === BLOCKQUOTE) {
134
130
  return true;
135
131
  }
136
132
  return false;
137
133
  };
138
- export var isList = function isList(editor, path) {
134
+ export const isList = (editor, path) => {
139
135
  var _nodeEntry$2;
140
- var nodeEntry = Editor.node(editor, [path[0]]);
136
+ const nodeEntry = Editor.node(editor, [path[0]]);
141
137
  if (nodeEntry && [ORDERED_LIST, UNORDERED_LIST].includes((_nodeEntry$2 = nodeEntry[0]) === null || _nodeEntry$2 === void 0 ? void 0 : _nodeEntry$2.type)) {
142
138
  return true;
143
139
  }
144
140
  if (path.length > 1 && isBlockquote(editor, [path[0]])) {
145
141
  var _nodeEntry$3;
146
- var _nodeEntry = Editor.node(editor, [path[0], path[1]]);
147
- if ([ORDERED_LIST, UNORDERED_LIST].includes((_nodeEntry$3 = _nodeEntry[0]) === null || _nodeEntry$3 === void 0 ? void 0 : _nodeEntry$3.type)) {
142
+ const nodeEntry = Editor.node(editor, [path[0], path[1]]);
143
+ if ([ORDERED_LIST, UNORDERED_LIST].includes((_nodeEntry$3 = nodeEntry[0]) === null || _nodeEntry$3 === void 0 ? void 0 : _nodeEntry$3.type)) {
148
144
  return true;
149
145
  }
150
146
  }
151
147
  return false;
152
148
  };
153
- export var getListNode = function getListNode(editor, path) {
154
- var listType = Editor.node(editor, [path[0]])[0].type;
149
+ export const getListNode = (editor, path) => {
150
+ let listType = Editor.node(editor, [path[0]])[0].type;
155
151
  if (listType === BLOCKQUOTE) {
156
152
  listType = Editor.node(editor, [path[0], path[1]])[0].type;
157
153
  }
158
- var listItem = Editor.node(editor, path)[0];
159
- var listNode = generateEmptyList(listType);
154
+ const listItem = Editor.node(editor, path)[0];
155
+ const listNode = generateEmptyList(listType);
160
156
  listNode.children[0] = listItem;
161
157
  return listNode;
162
158
  };
163
- export var onWrapListItem = function onWrapListItem(editor, targetPath, sourcePath) {
164
- var nextPath = Path.next(targetPath);
165
- var listNode = getListNode(editor, sourcePath);
159
+ export const onWrapListItem = (editor, targetPath, sourcePath) => {
160
+ const nextPath = Path.next(targetPath);
161
+ const listNode = getListNode(editor, sourcePath);
166
162
  Transforms.insertNodes(editor, listNode, {
167
163
  at: nextPath
168
164
  });
@@ -1,4 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
1
  import React, { useCallback, useEffect, useRef, useState } from 'react';
3
2
  import classnames from 'classnames';
4
3
  import { Editor, Path, Transforms } from '@seafile/slate';
@@ -11,40 +10,25 @@ import { getDomTopHeight, setSelection, isVoidNode, getNodeEntry, isBlockquote,
11
10
  import { INTERNAL_EVENT } from '../../../constants';
12
11
  import { CODE_BLOCK, TABLE, BLOCKQUOTE, CHECK_LIST_ITEM } from '../../constants';
13
12
  import './index.css';
14
- var sourceElement = null;
15
- var targetElement = null;
16
- var SideToolbar = function SideToolbar() {
17
- var editor = useSlateStatic();
18
- var scrollRef = useScrollContext();
19
- var menuRef = useRef(null);
20
- var _useState = useState(null),
21
- _useState2 = _slicedToArray(_useState, 2),
22
- slateNode = _useState2[0],
23
- setSlateNode = _useState2[1];
24
- var _useState3 = useState({}),
25
- _useState4 = _slicedToArray(_useState3, 2),
26
- sidePosition = _useState4[0],
27
- setSidePosition = _useState4[1];
28
- var _useState5 = useState(false),
29
- _useState6 = _slicedToArray(_useState5, 2),
30
- isNodeEmpty = _useState6[0],
31
- setNodeEmpty = _useState6[1];
32
- var _useState7 = useState(false),
33
- _useState8 = _slicedToArray(_useState7, 2),
34
- isShowSideMenu = _useState8[0],
35
- setShowSideMenu = _useState8[1];
36
- var _useState9 = useState({}),
37
- _useState10 = _slicedToArray(_useState9, 2),
38
- menuPosition = _useState10[0],
39
- setMenuPosition = _useState10[1];
40
- var onReset = useCallback(function () {
13
+ let sourceElement = null;
14
+ let targetElement = null;
15
+ const SideToolbar = () => {
16
+ const editor = useSlateStatic();
17
+ const scrollRef = useScrollContext();
18
+ const menuRef = useRef(null);
19
+ const [slateNode, setSlateNode] = useState(null);
20
+ const [sidePosition, setSidePosition] = useState({});
21
+ const [isNodeEmpty, setNodeEmpty] = useState(false);
22
+ const [isShowSideMenu, setShowSideMenu] = useState(false);
23
+ const [menuPosition, setMenuPosition] = useState({});
24
+ const onReset = useCallback(() => {
41
25
  setShowSideMenu(false);
42
26
  setMenuPosition({});
43
27
  setSlateNode(null);
44
28
  // eslint-disable-next-line react-hooks/exhaustive-deps
45
29
  }, []);
46
- useEffect(function () {
47
- var observerRefValue;
30
+ useEffect(() => {
31
+ let observerRefValue;
48
32
  if (isShowSideMenu) {
49
33
  scrollRef.current.addEventListener('scroll', onReset);
50
34
  observerRefValue = scrollRef.current;
@@ -52,7 +36,7 @@ var SideToolbar = function SideToolbar() {
52
36
  scrollRef.current.removeEventListener('scroll', onReset);
53
37
  observerRefValue = null;
54
38
  }
55
- return function () {
39
+ return () => {
56
40
  if (observerRefValue) {
57
41
  observerRefValue.removeEventListener('scroll', onReset);
58
42
  focusEditor(editor);
@@ -60,18 +44,18 @@ var SideToolbar = function SideToolbar() {
60
44
  };
61
45
  // eslint-disable-next-line react-hooks/exhaustive-deps
62
46
  }, [isShowSideMenu]);
63
- useEffect(function () {
64
- var handleMouseEnter = function handleMouseEnter(e) {
47
+ useEffect(() => {
48
+ const handleMouseEnter = e => {
65
49
  if (isShowSideMenu) return;
66
- var dom = e.target;
50
+ let dom = e.target;
67
51
  while (((_dom = dom) === null || _dom === void 0 ? void 0 : (_dom$dataset = _dom.dataset) === null || _dom$dataset === void 0 ? void 0 : _dom$dataset.root) !== 'true') {
68
52
  var _dom, _dom$dataset;
69
53
  if (!dom.parentNode) return;
70
54
  dom = dom.parentNode;
71
55
  }
72
- var node = ReactEditor.toSlateNode(editor, dom);
73
- var top = getDomTopHeight(dom, node);
74
- var isEmpty = isVoidNode(node);
56
+ const node = ReactEditor.toSlateNode(editor, dom);
57
+ const top = getDomTopHeight(dom, node);
58
+ const isEmpty = isVoidNode(node);
75
59
  setSidePosition({
76
60
  top: top + scrollRef.current.scrollTop,
77
61
  left: 20
@@ -79,56 +63,50 @@ var SideToolbar = function SideToolbar() {
79
63
  setSlateNode(node);
80
64
  setNodeEmpty(isEmpty);
81
65
  };
82
- var eventBus = EventBus.getInstance();
83
- var unSubscribeMouseEnter = eventBus.subscribe(INTERNAL_EVENT.ON_MOUSE_ENTER_BLOCK, handleMouseEnter);
66
+ const eventBus = EventBus.getInstance();
67
+ const unSubscribeMouseEnter = eventBus.subscribe(INTERNAL_EVENT.ON_MOUSE_ENTER_BLOCK, handleMouseEnter);
84
68
  return unSubscribeMouseEnter;
85
69
 
86
70
  // eslint-disable-next-line react-hooks/exhaustive-deps
87
71
  }, [editor, isShowSideMenu, scrollRef]);
88
- var onShowSideMenuToggle = useCallback(function () {
72
+ const onShowSideMenuToggle = useCallback(() => {
89
73
  setSelection(editor, slateNode);
90
- var _menuRef$current$getB = menuRef.current.getBoundingClientRect(),
91
- top = _menuRef$current$getB.top,
92
- left = _menuRef$current$getB.left;
74
+ const {
75
+ top,
76
+ left
77
+ } = menuRef.current.getBoundingClientRect();
93
78
  setShowSideMenu(!isShowSideMenu);
94
79
  setMenuPosition({
95
- top: top,
96
- left: left
80
+ top,
81
+ left
97
82
  });
98
83
  }, [editor, isShowSideMenu, slateNode]);
99
- var dragStart = useCallback(function (event) {
84
+ const dragStart = useCallback(event => {
100
85
  sourceElement = ReactEditor.toDOMNode(editor, slateNode);
101
- var path = ReactEditor.findPath(editor, slateNode);
86
+ const path = ReactEditor.findPath(editor, slateNode);
102
87
 
103
88
  // Dragging the first element within the blockquote drags the entire blockquote by default.
104
- if (isBlockquote(editor, [path[0]]) && path.slice(1).every(function (p) {
105
- return p === 0;
106
- })) {
107
- var nodeEntry = Editor.node(editor, [path[0]]);
89
+ if (isBlockquote(editor, [path[0]]) && path.slice(1).every(p => p === 0)) {
90
+ const nodeEntry = Editor.node(editor, [path[0]]);
108
91
  sourceElement = ReactEditor.toDOMNode(editor, nodeEntry[0]);
109
92
  }
110
93
  event.dataTransfer.setDragImage(sourceElement, 0, 0);
111
94
  }, [editor, slateNode]);
112
- var dragOver = useCallback(function (event) {
113
- var overElement = event.currentTarget;
95
+ const dragOver = useCallback(event => {
96
+ const overElement = event.currentTarget;
114
97
  if (!overElement.classList.contains('sdoc-draging')) {
115
98
  overElement.classList.add('sdoc-draging');
116
99
  }
117
100
  }, []);
118
- var dragLeave = useCallback(function (event) {
119
- var leaveElement = event.currentTarget;
101
+ const dragLeave = useCallback(event => {
102
+ const leaveElement = event.currentTarget;
120
103
  leaveElement.classList.remove('sdoc-draging');
121
104
  }, []);
122
- var drop = useCallback(function (event) {
105
+ const drop = useCallback(event => {
123
106
  targetElement = event.currentTarget;
124
107
  targetElement.classList.remove('sdoc-draging');
125
- var _getNodeEntry = getNodeEntry(editor, sourceElement),
126
- _getNodeEntry2 = _slicedToArray(_getNodeEntry, 2),
127
- sourceNode = _getNodeEntry2[0],
128
- sourcePath = _getNodeEntry2[1];
129
- var _getNodeEntry3 = getNodeEntry(editor, targetElement),
130
- _getNodeEntry4 = _slicedToArray(_getNodeEntry3, 2),
131
- targetPath = _getNodeEntry4[1];
108
+ const [sourceNode, sourcePath] = getNodeEntry(editor, sourceElement);
109
+ const [, targetPath] = getNodeEntry(editor, targetElement);
132
110
 
133
111
  // Dragging into a quoteBlock is not supported
134
112
  if ([CODE_BLOCK, TABLE, BLOCKQUOTE].includes(sourceNode.type) && isBlockquote(editor, [targetPath[0]]) && targetPath.length > 1) {
@@ -191,7 +169,7 @@ var SideToolbar = function SideToolbar() {
191
169
 
192
170
  // Drag backward
193
171
  if (Path.isAfter(targetPath, sourcePath)) {
194
- var toPath = targetPath.slice(0);
172
+ let toPath = targetPath.slice(0);
195
173
 
196
174
  // Drag elements outside the quoteBlock into the quoteBlock
197
175
  if (!isBlockquote(editor, [sourcePath[0]]) && isBlockquote(editor, [targetPath[0]]) && targetPath.length > 1) {
@@ -210,10 +188,10 @@ var SideToolbar = function SideToolbar() {
210
188
 
211
189
  // Drag forward
212
190
  if (Path.isBefore(targetPath, sourcePath)) {
213
- var _toPath = Path.next(targetPath);
191
+ const toPath = Path.next(targetPath);
214
192
  Transforms.moveNodes(editor, {
215
193
  at: sourcePath,
216
- to: _toPath
194
+ to: toPath
217
195
  });
218
196
  }
219
197
 
@@ -221,12 +199,12 @@ var SideToolbar = function SideToolbar() {
221
199
  sourceElement = null;
222
200
  targetElement = null;
223
201
  }, [editor]);
224
- useEffect(function () {
225
- var eventBus = EventBus.getInstance();
226
- var unSubscribeDragOver = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_OVER_BLOCK, dragOver);
227
- var unSubscribeDragLeave = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_LEAVE_BLOCK, dragLeave);
228
- var unSubscribeDrop = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_DROP_BLOCK, drop);
229
- return function () {
202
+ useEffect(() => {
203
+ const eventBus = EventBus.getInstance();
204
+ const unSubscribeDragOver = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_OVER_BLOCK, dragOver);
205
+ const unSubscribeDragLeave = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_LEAVE_BLOCK, dragLeave);
206
+ const unSubscribeDrop = eventBus.subscribe(INTERNAL_EVENT.ON_DRAG_DROP_BLOCK, drop);
207
+ return () => {
230
208
  unSubscribeDragOver();
231
209
  unSubscribeDragLeave();
232
210
  unSubscribeDrop();