@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
@@ -1,5 +1,4 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
2
  import { ReactEditor } from '@seafile/slate-react';
4
3
  import { Editor, Transforms, Range, Text } from '@seafile/slate';
5
4
  import slugid from 'slugid';
@@ -7,12 +6,14 @@ import copy from 'copy-to-clipboard';
7
6
  import context from '../../../../context';
8
7
  import { SDOC_LINK, LINK, INSERT_FILE_DISPLAY_TYPE, CODE_BLOCK, CODE_LINE, PARAGRAPH } from '../../constants';
9
8
  import { focusEditor, getNodeType, getSelectedElems } from '../../core';
10
- export var isMenuDisabled = function isMenuDisabled(editor, readonly) {
9
+ export const isMenuDisabled = (editor, readonly) => {
11
10
  if (readonly) return true;
12
11
  if (editor.selection == null) return true;
13
- var selectedElems = getSelectedElems(editor);
14
- var notMatch = selectedElems.some(function (elem) {
15
- var type = elem.type;
12
+ const selectedElems = getSelectedElems(editor);
13
+ const notMatch = selectedElems.some(elem => {
14
+ const {
15
+ type
16
+ } = elem;
16
17
  if (editor.isVoid(elem)) return true;
17
18
  if ([CODE_BLOCK, CODE_LINE, LINK].includes(type)) return true;
18
19
  return false;
@@ -21,8 +22,8 @@ export var isMenuDisabled = function isMenuDisabled(editor, readonly) {
21
22
  return false; // enable
22
23
  };
23
24
 
24
- export var generateSdocFileNode = function generateSdocFileNode(uuid, text) {
25
- var sdocFileNode = {
25
+ export const generateSdocFileNode = (uuid, text) => {
26
+ const sdocFileNode = {
26
27
  id: slugid.nice(),
27
28
  type: SDOC_LINK,
28
29
  doc_uuid: uuid,
@@ -35,33 +36,30 @@ export var generateSdocFileNode = function generateSdocFileNode(uuid, text) {
35
36
  };
36
37
  return sdocFileNode;
37
38
  };
38
- export var getType = function getType(editor) {
39
- var _Editor$nodes = Editor.nodes(editor, {
40
- match: function match(n) {
41
- return getNodeType(n) === LINK;
42
- },
43
- universal: true
44
- }),
45
- _Editor$nodes2 = _slicedToArray(_Editor$nodes, 1),
46
- match = _Editor$nodes2[0];
39
+ export const getType = editor => {
40
+ const [match] = Editor.nodes(editor, {
41
+ match: n => getNodeType(n) === LINK,
42
+ universal: true
43
+ });
47
44
  if (!match) return PARAGRAPH;
48
- var _match = _slicedToArray(match, 1),
49
- n = _match[0];
45
+ const [n] = match;
50
46
  return getNodeType(n);
51
47
  };
52
- export var insertSdocFileLink = function insertSdocFileLink(editor, text, uuid) {
48
+ export const insertSdocFileLink = (editor, text, uuid) => {
53
49
  if (isMenuDisabled(editor)) return;
54
50
  // Selection folded or not
55
- var selection = editor.selection;
51
+ const {
52
+ selection
53
+ } = editor;
56
54
  if (selection == null) return;
57
- var isCollapsed = Range.isCollapsed(selection);
55
+ const isCollapsed = Range.isCollapsed(selection);
58
56
 
59
57
  // Remove shortcut symbol,if trigger by shortcut
60
58
  removeShortCutSymbol(editor);
61
59
  if (isCollapsed) {
62
60
  // Insert Spaces before and after sdoclinks for easy operation
63
61
  editor.insertText(' ');
64
- var sdocFileNode = generateSdocFileNode(uuid, text);
62
+ const sdocFileNode = generateSdocFileNode(uuid, text);
65
63
  Transforms.insertNodes(editor, sdocFileNode);
66
64
 
67
65
  // Not being able to use insertText directly causes the added Spaces to be added to the linked text, as in the issue above, replaced by insertFragment
@@ -70,16 +68,16 @@ export var insertSdocFileLink = function insertSdocFileLink(editor, text, uuid)
70
68
  text: ' '
71
69
  }]);
72
70
  } else {
73
- var selectedText = Editor.string(editor, selection); // Selected text
71
+ const selectedText = Editor.string(editor, selection); // Selected text
74
72
  if (selectedText !== text) {
75
73
  // If the selected text is different from the typed text, delete the text and insert the link
76
74
  editor.deleteFragment();
77
- var _sdocFileNode = generateSdocFileNode(uuid, text);
78
- Transforms.insertNodes(editor, _sdocFileNode);
75
+ const sdocFileNode = generateSdocFileNode(uuid, text);
76
+ Transforms.insertNodes(editor, sdocFileNode);
79
77
  } else {
80
78
  // If the selected text is the same as the entered text, only the link can be wrapped
81
- var _sdocFileNode2 = generateSdocFileNode(uuid, text);
82
- Transforms.wrapNodes(editor, _sdocFileNode2, {
79
+ const sdocFileNode = generateSdocFileNode(uuid, text);
80
+ Transforms.wrapNodes(editor, sdocFileNode, {
83
81
  split: true
84
82
  });
85
83
  Transforms.collapse(editor, {
@@ -88,17 +86,17 @@ export var insertSdocFileLink = function insertSdocFileLink(editor, text, uuid)
88
86
  }
89
87
  }
90
88
  };
91
- export var unwrapLinkNode = function unwrapLinkNode(editor, element) {
89
+ export const unwrapLinkNode = (editor, element) => {
92
90
  if (editor.selection == null) return;
93
- var path = ReactEditor.findPath(editor, element);
91
+ const path = ReactEditor.findPath(editor, element);
94
92
  if (path) {
95
93
  Transforms.unwrapNodes(editor, {
96
94
  at: path
97
95
  });
98
96
  }
99
97
  };
100
- export var getNewFileListData = function getNewFileListData(fileListData, indexId, children) {
101
- fileListData.forEach(function (item) {
98
+ export const getNewFileListData = (fileListData, indexId, children) => {
99
+ fileListData.forEach(item => {
102
100
  if (item.indexId === indexId) {
103
101
  item.children = children;
104
102
  }
@@ -108,65 +106,68 @@ export var getNewFileListData = function getNewFileListData(fileListData, indexI
108
106
  });
109
107
  return fileListData;
110
108
  };
111
- export var getUrl = function getUrl(uuid) {
109
+ export const getUrl = uuid => {
112
110
  return context.getSdocLocalFileUrl(uuid);
113
111
  };
114
- export var onCopySdocLinkNode = function onCopySdocLinkNode(editor, element) {
112
+ export const onCopySdocLinkNode = (editor, element) => {
115
113
  if (editor.selection == null || Range.isExpanded(editor.selection)) return;
116
- var p = ReactEditor.findPath(editor, element);
114
+ const p = ReactEditor.findPath(editor, element);
117
115
  Transforms.select(editor, p);
118
- var newData = editor.setFragmentData(new DataTransfer());
116
+ const newData = editor.setFragmentData(new DataTransfer());
119
117
  copy('copy', {
120
- onCopy: function onCopy(clipboardData) {
121
- newData.types.forEach(function (type) {
122
- var data = newData.getData(type);
118
+ onCopy: clipboardData => {
119
+ newData.types.forEach(type => {
120
+ const data = newData.getData(type);
123
121
  clipboardData.setData(type, data);
124
122
  });
125
123
  }
126
124
  });
127
125
  };
128
- export var getBeforeText = function getBeforeText(editor) {
129
- var selection = editor.selection;
126
+ export const getBeforeText = editor => {
127
+ const {
128
+ selection
129
+ } = editor;
130
130
  if (selection == null) return {
131
131
  beforeText: '',
132
132
  range: null
133
133
  };
134
- var anchor = selection.anchor;
134
+ const {
135
+ anchor
136
+ } = selection;
135
137
  // Find the near text node above the current text
136
- var _Editor$nodes3 = Editor.nodes(editor, {
137
- match: function match(node) {
138
- return Text.isText(node);
139
- },
140
- mode: 'lowest'
141
- }),
142
- _Editor$nodes4 = _slicedToArray(_Editor$nodes3, 1),
143
- _Editor$nodes4$ = _slicedToArray(_Editor$nodes4[0], 2),
144
- beforeNodePath = _Editor$nodes4$[1];
145
- var beforeNodeStartPoint = Editor.start(editor, beforeNodePath); // The starting position of the text node
146
- var range = {
147
- anchor: anchor,
138
+ const [[, beforeNodePath]] = Editor.nodes(editor, {
139
+ match: node => Text.isText(node),
140
+ mode: 'lowest'
141
+ });
142
+ const beforeNodeStartPoint = Editor.start(editor, beforeNodePath); // The starting position of the text node
143
+ const range = {
144
+ anchor,
148
145
  focus: beforeNodeStartPoint
149
146
  };
150
- var beforeText = Editor.string(editor, range) || '';
147
+ const beforeText = Editor.string(editor, range) || '';
151
148
  return {
152
- beforeText: beforeText,
153
- range: range
149
+ beforeText,
150
+ range
154
151
  };
155
152
  };
156
- export var isTriggeredByShortCut = function isTriggeredByShortCut(editor) {
157
- var _getBeforeText = getBeforeText(editor),
158
- beforeText = _getBeforeText.beforeText;
153
+ export const isTriggeredByShortCut = editor => {
154
+ const {
155
+ beforeText
156
+ } = getBeforeText(editor);
159
157
  return beforeText.slice(-2) === '[[';
160
158
  };
161
159
 
162
160
  // If insert operation is triggered by shortcut, remove the '[[' symbol
163
- export var removeShortCutSymbol = function removeShortCutSymbol(editor) {
161
+ export const removeShortCutSymbol = editor => {
164
162
  // Check is trigger by short cut
165
- var selection = editor.selection;
166
- var _getBeforeText2 = getBeforeText(editor),
167
- beforeText = _getBeforeText2.beforeText,
168
- beforeRange = _getBeforeText2.range;
169
- var isTrrigeredByShortCut = beforeText.slice(-3) === '[[ ';
163
+ const {
164
+ selection
165
+ } = editor;
166
+ const {
167
+ beforeText,
168
+ range: beforeRange
169
+ } = getBeforeText(editor);
170
+ const isTrrigeredByShortCut = beforeText.slice(-3) === '[[ ';
170
171
  isTrrigeredByShortCut && Transforms.delete(editor, {
171
172
  at: {
172
173
  anchor: {
@@ -1,4 +1,3 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
1
  import React, { useCallback, useState } from 'react';
3
2
  import { Transforms } from '@seafile/slate';
4
3
  import { ReactEditor, useReadOnly } from '@seafile/slate-react';
@@ -9,19 +8,18 @@ import { ElementPopover } from '../../../commons';
9
8
  import toaster from '../../../../../components/toast';
10
9
  import { getUrl, onCopySdocLinkNode } from '../helpers';
11
10
  import './index.css';
12
- var SdocLinkHoverMenu = function SdocLinkHoverMenu(_ref) {
13
- var editor = _ref.editor,
14
- menuPosition = _ref.menuPosition,
15
- element = _ref.element,
16
- onUnwrapFileLinkNode = _ref.onUnwrapFileLinkNode,
17
- onHideInsertHoverMenu = _ref.onHideInsertHoverMenu,
18
- t = _ref.t;
19
- var readOnly = useReadOnly();
20
- var _useState = useState(false),
21
- _useState2 = _slicedToArray(_useState, 2),
22
- isShowDisplayStylePopover = _useState2[0],
23
- setIsShowDisplayStylePopover = _useState2[1];
24
- var onCopy = useCallback(function (e) {
11
+ const SdocLinkHoverMenu = _ref => {
12
+ let {
13
+ editor,
14
+ menuPosition,
15
+ element,
16
+ onUnwrapFileLinkNode,
17
+ onHideInsertHoverMenu,
18
+ t
19
+ } = _ref;
20
+ const readOnly = useReadOnly();
21
+ const [isShowDisplayStylePopover, setIsShowDisplayStylePopover] = useState(false);
22
+ const onCopy = useCallback(e => {
25
23
  e.stopPropagation();
26
24
  onCopySdocLinkNode(editor, element);
27
25
  toaster.success(t('Copied'), {
@@ -31,12 +29,12 @@ var SdocLinkHoverMenu = function SdocLinkHoverMenu(_ref) {
31
29
  onHideInsertHoverMenu();
32
30
  // eslint-disable-next-line react-hooks/exhaustive-deps
33
31
  }, []);
34
- var onShowProver = useCallback(function (e) {
32
+ const onShowProver = useCallback(e => {
35
33
  setIsShowDisplayStylePopover(true);
36
34
  }, []);
37
- var onSelect = useCallback(function (event, value) {
35
+ const onSelect = useCallback((event, value) => {
38
36
  event.stopPropagation();
39
- var path = ReactEditor.findPath(editor, element);
37
+ const path = ReactEditor.findPath(editor, element);
40
38
  if (path) {
41
39
  Transforms.setNodes(editor, {
42
40
  display_type: value
@@ -47,8 +45,8 @@ var SdocLinkHoverMenu = function SdocLinkHoverMenu(_ref) {
47
45
  onHideInsertHoverMenu();
48
46
  // eslint-disable-next-line react-hooks/exhaustive-deps
49
47
  }, []);
50
- var selectedType = element.display_type || SDOC_LINK_TYPE.TEXT_LINK;
51
- var id = "sdoc-link-display-type-".concat(element.id);
48
+ const selectedType = element.display_type || SDOC_LINK_TYPE.TEXT_LINK;
49
+ const id = "sdoc-link-display-type-".concat(element.id);
52
50
  return /*#__PURE__*/React.createElement(ElementPopover, null, /*#__PURE__*/React.createElement("div", {
53
51
  className: "sdoc-link-hover-menu-container",
54
52
  style: menuPosition
@@ -91,14 +89,12 @@ var SdocLinkHoverMenu = function SdocLinkHoverMenu(_ref) {
91
89
  className: "sdocfont sdoc-unlink icon-font"
92
90
  })))), isShowDisplayStylePopover && /*#__PURE__*/React.createElement("div", {
93
91
  className: "sdoc-file-display-style-popover sdoc-dropdown-menu"
94
- }, SDOC_LINK_TYPES.map(function (sdocLinkType) {
92
+ }, SDOC_LINK_TYPES.map(sdocLinkType => {
95
93
  return /*#__PURE__*/React.createElement("div", {
96
94
  key: sdocLinkType,
97
95
  "date-type": sdocLinkType,
98
96
  className: "sdoc-dropdown-menu-item sdoc-dropdown-item-with-left-icon pr-2",
99
- onClick: function onClick(event) {
100
- return onSelect(event, sdocLinkType);
101
- }
97
+ onClick: event => onSelect(event, sdocLinkType)
102
98
  }, /*#__PURE__*/React.createElement("div", {
103
99
  className: "sdoc-dropdown-item-content"
104
100
  }, /*#__PURE__*/React.createElement("i", {
@@ -2,7 +2,7 @@ import { SDOC_LINK } from '../../constants';
2
2
  import SdocLinkMenu from './menu';
3
3
  import withSdocLink from './plugin';
4
4
  import renderSdocLink from './render-elem';
5
- var SdocLinkPlugin = {
5
+ const SdocLinkPlugin = {
6
6
  type: SDOC_LINK,
7
7
  editorMenus: [SdocLinkMenu],
8
8
  editorPlugin: withSdocLink,
@@ -3,14 +3,16 @@ import { SDOC_LINK, MENUS_CONFIG_MAP, ELEMENT_TYPE } from '../../../constants';
3
3
  import { isMenuDisabled, insertSdocFileLink } from '../helpers';
4
4
  import DropdownMenuItem from '../../../commons/dropdown-menu-item';
5
5
  import { INTERNAL_EVENT } from '../../../../constants';
6
- var SdocLinkMenu = function SdocLinkMenu(_ref) {
7
- var editor = _ref.editor,
8
- readonly = _ref.readonly,
9
- toggle = _ref.toggle,
10
- eventBus = _ref.eventBus;
11
- var disabled = isMenuDisabled(editor, readonly);
12
- var menuConfig = MENUS_CONFIG_MAP[SDOC_LINK];
13
- var openSelectSdocFileDialog = useCallback(function () {
6
+ const SdocLinkMenu = _ref => {
7
+ let {
8
+ editor,
9
+ readonly,
10
+ toggle,
11
+ eventBus
12
+ } = _ref;
13
+ const disabled = isMenuDisabled(editor, readonly);
14
+ const menuConfig = MENUS_CONFIG_MAP[SDOC_LINK];
15
+ const openSelectSdocFileDialog = useCallback(() => {
14
16
  eventBus.dispatch(INTERNAL_EVENT.INSERT_ELEMENT, {
15
17
  type: ELEMENT_TYPE.SDOC_LINK,
16
18
  insertSdocFileLinkCallback: insertSdocFileLink
@@ -3,32 +3,38 @@ import { ELEMENT_TYPE, SDOC_LINK } from '../../constants';
3
3
  import EventBus from '../../../utils/event-bus';
4
4
  import { INTERNAL_EVENT } from '../../../constants';
5
5
  import { insertSdocFileLink, isTriggeredByShortCut } from './helpers';
6
- var withSdocLink = function withSdocLink(editor) {
7
- var isInline = editor.isInline,
8
- deleteBackward = editor.deleteBackward,
9
- onHotKeyDown = editor.onHotKeyDown;
10
- var newEditor = editor;
6
+ const withSdocLink = editor => {
7
+ const {
8
+ isInline,
9
+ deleteBackward,
10
+ onHotKeyDown
11
+ } = editor;
12
+ const newEditor = editor;
11
13
 
12
14
  // Rewrite isInline
13
- newEditor.isInline = function (elem) {
14
- var type = elem.type;
15
+ newEditor.isInline = elem => {
16
+ const {
17
+ type
18
+ } = elem;
15
19
  if (type === SDOC_LINK) {
16
20
  return true;
17
21
  }
18
22
  return isInline(elem);
19
23
  };
20
- newEditor.deleteBackward = function (unit) {
21
- var selection = newEditor.selection;
24
+ newEditor.deleteBackward = unit => {
25
+ const {
26
+ selection
27
+ } = newEditor;
22
28
  if (selection === null) {
23
29
  return deleteBackward(unit);
24
30
  }
25
31
 
26
32
  // Delete file link node
27
- var nodeEntry = Editor.node(newEditor, newEditor.selection);
33
+ const nodeEntry = Editor.node(newEditor, newEditor.selection);
28
34
  if (nodeEntry && Node.string(nodeEntry[0]).length === 0) {
29
- var beforePath = nodeEntry[1];
35
+ const beforePath = nodeEntry[1];
30
36
  beforePath.splice(-1, 1, Math.max(nodeEntry[1].at(-1) - 1, 0));
31
- var beforeNodeEntry = Editor.node(newEditor, beforePath);
37
+ const beforeNodeEntry = Editor.node(newEditor, beforePath);
32
38
  if (beforeNodeEntry && beforeNodeEntry[0].type === SDOC_LINK) {
33
39
  Transforms.delete(newEditor, {
34
40
  at: beforeNodeEntry[1]
@@ -39,11 +45,13 @@ var withSdocLink = function withSdocLink(editor) {
39
45
  }
40
46
  return deleteBackward(unit);
41
47
  };
42
- newEditor.onHotKeyDown = function (event) {
43
- var key = event.key;
48
+ newEditor.onHotKeyDown = event => {
49
+ const {
50
+ key
51
+ } = event;
44
52
  if (key !== ' ') return onHotKeyDown && onHotKeyDown(event);
45
53
  // If user press whitespace after '[[', open file modal
46
- var eventBus = EventBus.getInstance();
54
+ const eventBus = EventBus.getInstance();
47
55
  if (isTriggeredByShortCut(newEditor)) {
48
56
  eventBus.dispatch(INTERNAL_EVENT.INSERT_ELEMENT, {
49
57
  type: ELEMENT_TYPE.SDOC_LINK,
@@ -1,5 +1,4 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
2
  import React, { useCallback, useEffect, useState, useRef } from 'react';
4
3
  import { Range } from '@seafile/slate';
5
4
  import { useReadOnly } from '@seafile/slate-react';
@@ -9,44 +8,41 @@ import HoverMenu from './hover-menu';
9
8
  import { DELETED_STYLE, ADDED_STYLE } from '../../constants';
10
9
  import { SDOC_LINK_TYPE } from './constants';
11
10
  import './render-elem.css';
12
- var SdocFileLink = function SdocFileLink(_ref) {
13
- var editor = _ref.editor,
14
- element = _ref.element,
15
- children = _ref.children,
16
- attributes = _ref.attributes;
17
- var sdocFileRef = useRef(null);
18
- var scrollRef = useScrollContext();
19
- var _useState = useState(false),
20
- _useState2 = _slicedToArray(_useState, 2),
21
- isShowInsertHoverMenu = _useState2[0],
22
- setIsShowInsertHoverMenu = _useState2[1];
23
- var _useState3 = useState({}),
24
- _useState4 = _slicedToArray(_useState3, 2),
25
- menuPosition = _useState4[0],
26
- setMenuPosition = _useState4[1];
27
- var readOnly = useReadOnly();
28
- var registerEventHandle = useCallback(function () {
11
+ const SdocFileLink = _ref => {
12
+ let {
13
+ editor,
14
+ element,
15
+ children,
16
+ attributes
17
+ } = _ref;
18
+ const sdocFileRef = useRef(null);
19
+ const scrollRef = useScrollContext();
20
+ const [isShowInsertHoverMenu, setIsShowInsertHoverMenu] = useState(false);
21
+ const [menuPosition, setMenuPosition] = useState({});
22
+ const readOnly = useReadOnly();
23
+ const registerEventHandle = useCallback(() => {
29
24
  document.addEventListener('click', onHideInsertHoverMenu);
30
25
  // eslint-disable-next-line react-hooks/exhaustive-deps
31
26
  }, []);
32
- var unregisterEventHandle = useCallback(function () {
27
+ const unregisterEventHandle = useCallback(() => {
33
28
  document.removeEventListener('click', onHideInsertHoverMenu);
34
29
  // eslint-disable-next-line react-hooks/exhaustive-deps
35
30
  }, []);
36
- useEffect(function () {
37
- return function () {
31
+ useEffect(() => {
32
+ return () => {
38
33
  unregisterEventHandle();
39
34
  };
40
35
  // eslint-disable-next-line react-hooks/exhaustive-deps
41
36
  }, []);
42
- var setPosition = useCallback(function (elem) {
37
+ const setPosition = useCallback(elem => {
43
38
  if (elem) {
44
- var _elem$getBoundingClie = elem.getBoundingClientRect(),
45
- top = _elem$getBoundingClie.top,
46
- left = _elem$getBoundingClie.left;
47
- var menuTop = top - 42; // top = top distance - menu height
48
- var menuLeft = left - 18; // left = left distance - (menu width / 2)
49
- var newMenuPosition = {
39
+ const {
40
+ top,
41
+ left
42
+ } = elem.getBoundingClientRect();
43
+ const menuTop = top - 42; // top = top distance - menu height
44
+ const menuLeft = left - 18; // left = left distance - (menu width / 2)
45
+ const newMenuPosition = {
50
46
  top: menuTop,
51
47
  left: menuLeft
52
48
  };
@@ -54,44 +50,44 @@ var SdocFileLink = function SdocFileLink(_ref) {
54
50
  }
55
51
  // eslint-disable-next-line react-hooks/exhaustive-deps
56
52
  }, []);
57
- var onScroll = useCallback(function (e) {
53
+ const onScroll = useCallback(e => {
58
54
  setPosition(sdocFileRef.current);
59
55
  // eslint-disable-next-line react-hooks/exhaustive-deps
60
56
  }, []);
61
- useEffect(function () {
62
- var observerRefValue = null;
57
+ useEffect(() => {
58
+ let observerRefValue = null;
63
59
  if (isShowInsertHoverMenu) {
64
60
  scrollRef.current && scrollRef.current.addEventListener('scroll', onScroll);
65
61
  observerRefValue = scrollRef.current;
66
62
  } else {
67
63
  scrollRef.current && scrollRef.current.removeEventListener('scroll', onScroll);
68
64
  }
69
- return function () {
65
+ return () => {
70
66
  if (observerRefValue) {
71
67
  observerRefValue.removeEventListener('scroll', onScroll);
72
68
  }
73
69
  };
74
70
  // eslint-disable-next-line react-hooks/exhaustive-deps
75
71
  }, [isShowInsertHoverMenu]);
76
- var onClickFile = useCallback(function (e) {
72
+ const onClickFile = useCallback(e => {
77
73
  e.stopPropagation();
78
74
  setPosition(e.currentTarget);
79
75
  setIsShowInsertHoverMenu(true);
80
- setTimeout(function () {
76
+ setTimeout(() => {
81
77
  registerEventHandle();
82
78
  }, 0);
83
79
  // eslint-disable-next-line react-hooks/exhaustive-deps
84
80
  }, []);
85
- var onHideInsertHoverMenu = useCallback(function (e) {
81
+ const onHideInsertHoverMenu = useCallback(e => {
86
82
  setIsShowInsertHoverMenu(false);
87
83
  unregisterEventHandle();
88
84
  // eslint-disable-next-line react-hooks/exhaustive-deps
89
85
  }, []);
90
- var onUnwrapFileLinkNode = useCallback(function () {
86
+ const onUnwrapFileLinkNode = useCallback(() => {
91
87
  unwrapLinkNode(editor, element);
92
88
  // eslint-disable-next-line react-hooks/exhaustive-deps
93
89
  }, []);
94
- var style = {};
90
+ let style = {};
95
91
  if (element.ADD) {
96
92
  style = _objectSpread({}, ADDED_STYLE);
97
93
  } else if (element.DELETE) {
@@ -118,7 +114,7 @@ var SdocFileLink = function SdocFileLink(_ref) {
118
114
  style: style
119
115
  }, /*#__PURE__*/React.createElement("a", {
120
116
  href: getUrl(element.doc_uuid),
121
- onClick: function onClick(e) {
117
+ onClick: e => {
122
118
  e.preventDefault();
123
119
  },
124
120
  title: element.title
@@ -130,7 +126,7 @@ var SdocFileLink = function SdocFileLink(_ref) {
130
126
  onHideInsertHoverMenu: onHideInsertHoverMenu
131
127
  }));
132
128
  };
133
- var renderSdocLink = function renderSdocLink(props, editor) {
129
+ const renderSdocLink = (props, editor) => {
134
130
  return /*#__PURE__*/React.createElement(SdocFileLink, Object.assign({}, props, {
135
131
  editor: editor
136
132
  }));
@@ -1,35 +1,37 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- var _TABLE_ELEMENT_SPAN;
3
- export var TABLE_MAX_ROWS = 50;
4
- export var TABLE_MAX_COLUMNS = 50;
5
- export var EMPTY_SELECTED_RANGE = {
1
+ export const TABLE_MAX_ROWS = 50;
2
+ export const TABLE_MAX_COLUMNS = 50;
3
+ export const EMPTY_SELECTED_RANGE = {
6
4
  minRowIndex: -1,
7
5
  maxRowIndex: -1,
8
6
  minColIndex: -1,
9
7
  maxColIndex: -1
10
8
  };
11
- export var TABLE_ROW_MIN_HEIGHT = 42;
12
- export var TABLE_CELL_MIN_WIDTH = 35;
13
- export var TABLE_ELEMENT = {
9
+ export const TABLE_ROW_MIN_HEIGHT = 42;
10
+ export const TABLE_CELL_MIN_WIDTH = 35;
11
+ export const TABLE_ELEMENT = {
14
12
  TABLE: 'table',
15
13
  ROW: 'row',
16
14
  COLUMN: 'column',
17
15
  CELL: 'cell'
18
16
  };
19
- export var TABLE_ELEMENT_SPAN = (_TABLE_ELEMENT_SPAN = {}, _defineProperty(_TABLE_ELEMENT_SPAN, TABLE_ELEMENT.TABLE, 'table'), _defineProperty(_TABLE_ELEMENT_SPAN, TABLE_ELEMENT.ROW, 'tr'), _defineProperty(_TABLE_ELEMENT_SPAN, TABLE_ELEMENT.CELL, 'td'), _TABLE_ELEMENT_SPAN);
20
- export var TABLE_ELEMENT_POSITION = {
17
+ export const TABLE_ELEMENT_SPAN = {
18
+ [TABLE_ELEMENT.TABLE]: 'table',
19
+ [TABLE_ELEMENT.ROW]: 'tr',
20
+ [TABLE_ELEMENT.CELL]: 'td'
21
+ };
22
+ export const TABLE_ELEMENT_POSITION = {
21
23
  AFTER: 'after',
22
24
  BEFORE: 'before'
23
25
  };
24
- export var SELECTED_TABLE_CELL_BACKGROUND_COLOR = '#dee8fe';
25
- export var TABLE_CELL_STYLE = {
26
+ export const SELECTED_TABLE_CELL_BACKGROUND_COLOR = '#dee8fe';
27
+ export const TABLE_CELL_STYLE = {
26
28
  TEXT_ALIGN: 'text_align',
27
29
  BACKGROUND_COLOR: 'background_color'
28
30
  };
29
- export var TABLE_ROW_STYLE = {
31
+ export const TABLE_ROW_STYLE = {
30
32
  MIN_HEIGHT: 'min_height'
31
33
  };
32
- export var TABLE_ALTERNATE_HIGHLIGHT_CLASS_MAP = {
34
+ export const TABLE_ALTERNATE_HIGHLIGHT_CLASS_MAP = {
33
35
  '#3f495d': 'sdoc-table-3f495d',
34
36
  '#2367f2': 'sdoc-table-2367f2',
35
37
  '#f77d21': 'sdoc-table-f77d21',