@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
@@ -3,7 +3,7 @@ import { TableMenu } from './menu';
3
3
  import Table from './model';
4
4
  import withTable from './plugin';
5
5
  import { renderTable, renderTableRow, renderTableCell } from './render-elem';
6
- var TablePlugin = {
6
+ const TablePlugin = {
7
7
  type: TABLE,
8
8
  nodeType: 'element',
9
9
  model: Table,
@@ -4,30 +4,33 @@ import { ColorMenu } from '../../../../commons';
4
4
  import { RECENT_USED_TABLE_CELL_BACKGROUND_COLORS_KEY } from '../../../../constants';
5
5
  import { setCellStyle } from '../../helpers';
6
6
  import { useColorContext } from '../../../../../hooks/use-color-context';
7
- var menuConfig = {
7
+ const menuConfig = {
8
8
  id: 'sdoc_background_color',
9
9
  iconClass: 'sdocfont sdoc-bg-color',
10
10
  text: 'Background_color'
11
11
  };
12
- var CellBackgroundColorMenu = function CellBackgroundColorMenu(_ref) {
13
- var isRichEditor = _ref.isRichEditor,
14
- className = _ref.className,
15
- editor = _ref.editor;
16
- var _useColorContext = useColorContext(),
17
- lastUsedTableCellBackgroundColor = _useColorContext.lastUsedTableCellBackgroundColor,
18
- updateLastUsedTableCellBackgroundColor = _useColorContext.updateLastUsedTableCellBackgroundColor;
19
- var setColor = useCallback(function (color) {
12
+ const CellBackgroundColorMenu = _ref => {
13
+ let {
14
+ isRichEditor,
15
+ className,
16
+ editor
17
+ } = _ref;
18
+ const {
19
+ lastUsedTableCellBackgroundColor,
20
+ updateLastUsedTableCellBackgroundColor
21
+ } = useColorContext();
22
+ const setColor = useCallback(color => {
20
23
  setCellStyle(editor, {
21
24
  background_color: color
22
25
  });
23
26
  }, [editor]);
24
- var props = _objectSpread(_objectSpread({
25
- isRichEditor: isRichEditor,
26
- className: className,
27
+ const props = _objectSpread(_objectSpread({
28
+ isRichEditor,
29
+ className,
27
30
  disabled: false,
28
31
  isActive: false
29
32
  }, menuConfig), {}, {
30
- onMouseDown: function onMouseDown() {},
33
+ onMouseDown: () => {},
31
34
  setColor: setColor,
32
35
  recentUsedColorsKey: RECENT_USED_TABLE_CELL_BACKGROUND_COLORS_KEY,
33
36
  lastUsedColor: lastUsedTableCellBackgroundColor,
@@ -1,18 +1,22 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
1
  import React, { useCallback, useRef } from 'react';
3
2
  import { useTranslation } from 'react-i18next';
4
3
  import CommonMenu from './common-menu';
5
4
  import { setCellStyle } from '../../helpers';
6
5
  import { TABLE_CELL_STYLE } from '../../constants';
7
- var CellTextAlignMenu = function CellTextAlignMenu(_ref) {
8
- var editor = _ref.editor,
9
- readonly = _ref.readonly;
10
- var textAlignRef = useRef(null);
11
- var _useTranslation = useTranslation(),
12
- t = _useTranslation.t;
13
- var setTextAlignStyle = useCallback(function (textAlign) {
6
+ const CellTextAlignMenu = _ref => {
7
+ let {
8
+ editor,
9
+ readonly
10
+ } = _ref;
11
+ const textAlignRef = useRef(null);
12
+ const {
13
+ t
14
+ } = useTranslation();
15
+ const setTextAlignStyle = useCallback(textAlign => {
14
16
  if (readonly) return;
15
- setCellStyle(editor, _defineProperty({}, TABLE_CELL_STYLE.TEXT_ALIGN, textAlign));
17
+ setCellStyle(editor, {
18
+ [TABLE_CELL_STYLE.TEXT_ALIGN]: textAlign
19
+ });
16
20
  textAlignRef.current && textAlignRef.current.hidePopover();
17
21
  }, [editor, readonly]);
18
22
  return /*#__PURE__*/React.createElement(CommonMenu, {
@@ -22,23 +26,17 @@ var CellTextAlignMenu = function CellTextAlignMenu(_ref) {
22
26
  disabled: readonly
23
27
  }, /*#__PURE__*/React.createElement("div", {
24
28
  className: "sdoc-dropdown-menu-item",
25
- onClick: function onClick() {
26
- return setTextAlignStyle('left');
27
- }
29
+ onClick: () => setTextAlignStyle('left')
28
30
  }, /*#__PURE__*/React.createElement("i", {
29
31
  className: "sdocfont sdoc-align-left mr-2"
30
32
  }), t('Left')), /*#__PURE__*/React.createElement("div", {
31
33
  className: "sdoc-dropdown-menu-item",
32
- onClick: function onClick() {
33
- return setTextAlignStyle('center');
34
- }
34
+ onClick: () => setTextAlignStyle('center')
35
35
  }, /*#__PURE__*/React.createElement("i", {
36
36
  className: "sdocfont sdoc-align-center mr-2"
37
37
  }), t('Center')), /*#__PURE__*/React.createElement("div", {
38
38
  className: "sdoc-dropdown-menu-item",
39
- onClick: function onClick() {
40
- return setTextAlignStyle('right');
41
- }
39
+ onClick: () => setTextAlignStyle('right')
42
40
  }, /*#__PURE__*/React.createElement("i", {
43
41
  className: "sdocfont sdoc-align-right mr-2"
44
42
  }), t('Right')));
@@ -1,82 +1,75 @@
1
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/esm/createClass";
3
- import _inherits from "@babel/runtime/helpers/esm/inherits";
4
- import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
1
  import React, { Component } from 'react';
6
2
  import { UncontrolledPopover } from 'reactstrap';
7
- var CommonMenu = /*#__PURE__*/function (_Component) {
8
- _inherits(CommonMenu, _Component);
9
- var _super = _createSuper(CommonMenu);
10
- function CommonMenu(props) {
11
- var _this;
12
- _classCallCheck(this, CommonMenu);
13
- _this = _super.call(this, props);
14
- _this.getClassName = function () {
15
- var _this$props = _this.props,
16
- isRichEditor = _this$props.isRichEditor,
17
- className = _this$props.className,
18
- disabled = _this$props.disabled;
19
- var itemClass = 'btn btn-icon btn-secondary btn-active d-flex';
3
+ class CommonMenu extends Component {
4
+ constructor(props) {
5
+ super(props);
6
+ this.getClassName = () => {
7
+ const {
8
+ isRichEditor,
9
+ className,
10
+ disabled
11
+ } = this.props;
12
+ let itemClass = 'btn btn-icon btn-secondary btn-active d-flex';
20
13
  if (!isRichEditor) return itemClass + ' ' + className + ' sdoc-menu-with-dropdown';
21
14
  itemClass = "rich-icon-btn d-flex ".concat(disabled ? 'rich-icon-btn-disabled' : 'rich-icon-btn-hover');
22
15
  return itemClass + ' ' + className + ' sdoc-menu-with-dropdown';
23
16
  };
24
- _this.hidePopover = function () {
25
- _this.ref && _this.ref.toggle && _this.ref.toggle();
17
+ this.hidePopover = () => {
18
+ this.ref && this.ref.toggle && this.ref.toggle();
26
19
  };
27
- _this.setRef = function (ref) {
28
- _this.ref = ref;
29
- if (!_this.ref) return;
30
- var toggle = _this.ref.toggle;
31
- _this.ref.toggle = function () {
20
+ this.setRef = ref => {
21
+ this.ref = ref;
22
+ if (!this.ref) return;
23
+ const {
24
+ toggle
25
+ } = this.ref;
26
+ this.ref.toggle = () => {
32
27
  toggle && toggle();
33
- _this.setState({
34
- isShowMenu: !_this.state.isShowMenu
28
+ this.setState({
29
+ isShowMenu: !this.state.isShowMenu
35
30
  });
36
31
  };
37
32
  };
38
- _this.state = {
33
+ this.state = {
39
34
  isShowMenu: false
40
35
  };
41
- return _this;
42
36
  }
43
- _createClass(CommonMenu, [{
44
- key: "render",
45
- value: function render() {
46
- var _this$props2 = this.props,
47
- id = _this$props2.id,
48
- iconClass = _this$props2.iconClass,
49
- children = _this$props2.children,
50
- disabled = _this$props2.disabled;
51
- var isShowMenu = this.state.isShowMenu;
52
- var className = this.getClassName();
53
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
54
- id: id,
55
- type: "button",
56
- className: className
57
- }, /*#__PURE__*/React.createElement("div", {
58
- className: "sdoc-menu-with-dropdown-icon"
59
- }, /*#__PURE__*/React.createElement("i", {
60
- className: iconClass
61
- })), /*#__PURE__*/React.createElement("div", {
62
- className: "sdoc-menu-with-dropdown-triangle"
63
- }, /*#__PURE__*/React.createElement("i", {
64
- className: "sdoc-menu-with-dropdown-triangle-icon sdocfont sdoc-".concat(isShowMenu ? 'caret-up' : 'drop-down')
65
- }))), !disabled && /*#__PURE__*/React.createElement(UncontrolledPopover, {
66
- target: id,
67
- className: "sdoc-common-menu-popover sdoc-table-menu-popover",
68
- trigger: "legacy",
69
- placement: "bottom-start",
70
- hideArrow: true,
71
- fade: false,
72
- ref: this.setRef
73
- }, /*#__PURE__*/React.createElement("div", {
74
- className: "sdoc-dropdown-menu"
75
- }, children)));
76
- }
77
- }]);
78
- return CommonMenu;
79
- }(Component);
37
+ render() {
38
+ const {
39
+ id,
40
+ iconClass,
41
+ children,
42
+ disabled
43
+ } = this.props;
44
+ const {
45
+ isShowMenu
46
+ } = this.state;
47
+ const className = this.getClassName();
48
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
49
+ id: id,
50
+ type: "button",
51
+ className: className
52
+ }, /*#__PURE__*/React.createElement("div", {
53
+ className: "sdoc-menu-with-dropdown-icon"
54
+ }, /*#__PURE__*/React.createElement("i", {
55
+ className: iconClass
56
+ })), /*#__PURE__*/React.createElement("div", {
57
+ className: "sdoc-menu-with-dropdown-triangle"
58
+ }, /*#__PURE__*/React.createElement("i", {
59
+ className: "sdoc-menu-with-dropdown-triangle-icon sdocfont sdoc-".concat(isShowMenu ? 'caret-up' : 'drop-down')
60
+ }))), !disabled && /*#__PURE__*/React.createElement(UncontrolledPopover, {
61
+ target: id,
62
+ className: "sdoc-common-menu-popover sdoc-table-menu-popover",
63
+ trigger: "legacy",
64
+ placement: "bottom-start",
65
+ hideArrow: true,
66
+ fade: false,
67
+ ref: this.setRef
68
+ }, /*#__PURE__*/React.createElement("div", {
69
+ className: "sdoc-dropdown-menu"
70
+ }, children)));
71
+ }
72
+ }
80
73
  CommonMenu.defaultProps = {
81
74
  isRichEditor: true,
82
75
  className: 'menu-group-item'
@@ -8,11 +8,13 @@ import RemoveTable from './remove-table-menu';
8
8
  import TableColumnMenu from './table-column-menu';
9
9
  import TableRowMenu from './table-row-menu';
10
10
  import './index.css';
11
- var ActiveTableMenu = function ActiveTableMenu(_ref) {
12
- var isRichEditor = _ref.isRichEditor,
13
- className = _ref.className,
14
- editor = _ref.editor,
15
- readonly = _ref.readonly;
11
+ const ActiveTableMenu = _ref => {
12
+ let {
13
+ isRichEditor,
14
+ className,
15
+ editor,
16
+ readonly
17
+ } = _ref;
16
18
  if (!isAllInTable(editor)) return null;
17
19
  return /*#__PURE__*/React.createElement(MenuGroup, {
18
20
  className: "menu-group sdoc-table-menu-group"
@@ -5,18 +5,20 @@ import { MenuItem } from '../../../../commons';
5
5
  import { MENUS_CONFIG_MAP, REMOVE_TABLE } from '../../../../constants';
6
6
  import { removeTableElement } from '../../helpers';
7
7
  import { TABLE_ELEMENT } from '../../constants';
8
- var RemoveTable = function RemoveTable(_ref) {
9
- var isRichEditor = _ref.isRichEditor,
10
- className = _ref.className,
11
- editor = _ref.editor,
12
- readonly = _ref.readonly;
13
- var removeTable = useCallback(function () {
8
+ const RemoveTable = _ref => {
9
+ let {
10
+ isRichEditor,
11
+ className,
12
+ editor,
13
+ readonly
14
+ } = _ref;
15
+ const removeTable = useCallback(() => {
14
16
  if (readonly) return;
15
17
  removeTableElement(editor, TABLE_ELEMENT.TABLE);
16
18
  }, [editor, readonly]);
17
- var menuConfig = MENUS_CONFIG_MAP[REMOVE_TABLE];
18
- var props = _objectSpread(_objectSpread({
19
- isRichEditor: isRichEditor,
19
+ const menuConfig = MENUS_CONFIG_MAP[REMOVE_TABLE];
20
+ const props = _objectSpread(_objectSpread({
21
+ isRichEditor,
20
22
  className: classnames(className, 'sdoc-remove-table menu-group-item'),
21
23
  disabled: readonly,
22
24
  isActive: false
@@ -3,18 +3,21 @@ import { useTranslation } from 'react-i18next';
3
3
  import CommonMenu from './common-menu';
4
4
  import { insertTableElement, removeTableElement } from '../../helpers';
5
5
  import { TABLE_ELEMENT } from '../../constants';
6
- var TableColumnMenu = function TableColumnMenu(_ref) {
7
- var editor = _ref.editor,
8
- readonly = _ref.readonly;
9
- var tableColumnRef = useRef(null);
10
- var _useTranslation = useTranslation(),
11
- t = _useTranslation.t;
12
- var insertColumn = useCallback(function (type) {
6
+ const TableColumnMenu = _ref => {
7
+ let {
8
+ editor,
9
+ readonly
10
+ } = _ref;
11
+ const tableColumnRef = useRef(null);
12
+ const {
13
+ t
14
+ } = useTranslation();
15
+ const insertColumn = useCallback(type => {
13
16
  if (readonly) return;
14
17
  insertTableElement(editor, type);
15
18
  tableColumnRef.current && tableColumnRef.current.hidePopover();
16
19
  }, [editor, readonly]);
17
- var removeColumn = useCallback(function (type) {
20
+ const removeColumn = useCallback(type => {
18
21
  if (readonly) return;
19
22
  removeTableElement(editor, type);
20
23
  tableColumnRef.current && tableColumnRef.current.hidePopover();
@@ -26,14 +29,10 @@ var TableColumnMenu = function TableColumnMenu(_ref) {
26
29
  disabled: readonly
27
30
  }, /*#__PURE__*/React.createElement("div", {
28
31
  className: "sdoc-dropdown-menu-item",
29
- onClick: function onClick() {
30
- return insertColumn(TABLE_ELEMENT.COLUMN);
31
- }
32
+ onClick: () => insertColumn(TABLE_ELEMENT.COLUMN)
32
33
  }, t('Insert_column')), /*#__PURE__*/React.createElement("div", {
33
34
  className: "sdoc-dropdown-menu-item",
34
- onClick: function onClick() {
35
- return removeColumn(TABLE_ELEMENT.COLUMN);
36
- }
35
+ onClick: () => removeColumn(TABLE_ELEMENT.COLUMN)
37
36
  }, t('Remove_column')));
38
37
  };
39
38
  export default TableColumnMenu;
@@ -3,18 +3,21 @@ import { useTranslation } from 'react-i18next';
3
3
  import CommonMenu from './common-menu';
4
4
  import { insertTableElement, removeTableElement } from '../../helpers';
5
5
  import { TABLE_ELEMENT } from '../../constants';
6
- var TableRowMenu = function TableRowMenu(_ref) {
7
- var editor = _ref.editor,
8
- readonly = _ref.readonly;
9
- var tableRowRef = useRef(null);
10
- var _useTranslation = useTranslation(),
11
- t = _useTranslation.t;
12
- var insertRow = useCallback(function (type) {
6
+ const TableRowMenu = _ref => {
7
+ let {
8
+ editor,
9
+ readonly
10
+ } = _ref;
11
+ const tableRowRef = useRef(null);
12
+ const {
13
+ t
14
+ } = useTranslation();
15
+ const insertRow = useCallback(type => {
13
16
  if (readonly) return;
14
17
  insertTableElement(editor, type);
15
18
  tableRowRef.current && tableRowRef.current.hidePopover();
16
19
  }, [editor, readonly]);
17
- var removeRow = useCallback(function (type) {
20
+ const removeRow = useCallback(type => {
18
21
  if (readonly) return;
19
22
  removeTableElement(editor, type);
20
23
  tableRowRef.current && tableRowRef.current.hidePopover();
@@ -26,14 +29,10 @@ var TableRowMenu = function TableRowMenu(_ref) {
26
29
  disabled: readonly
27
30
  }, /*#__PURE__*/React.createElement("div", {
28
31
  className: "sdoc-dropdown-menu-item",
29
- onClick: function onClick() {
30
- return insertRow(TABLE_ELEMENT.ROW);
31
- }
32
+ onClick: () => insertRow(TABLE_ELEMENT.ROW)
32
33
  }, t('Insert_row')), /*#__PURE__*/React.createElement("div", {
33
34
  className: "sdoc-dropdown-menu-item",
34
- onClick: function onClick() {
35
- return removeRow(TABLE_ELEMENT.ROW);
36
- }
35
+ onClick: () => removeRow(TABLE_ELEMENT.ROW)
37
36
  }, t('Remove_row')));
38
37
  };
39
38
  export default TableRowMenu;
@@ -1,8 +1,3 @@
1
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/esm/createClass";
3
- import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
4
- import _inherits from "@babel/runtime/helpers/esm/inherits";
5
- import _createSuper from "@babel/runtime/helpers/esm/createSuper";
6
1
  import React from 'react';
7
2
  import { withTranslation } from 'react-i18next';
8
3
  import ObjectUtils from '../../../../../utils/object-utils';
@@ -13,128 +8,120 @@ import { TABLE_MAX_COLUMNS, TABLE_MAX_ROWS, TABLE_ELEMENT, TABLE_ELEMENT_POSITIO
13
8
  import { insertTableElement, removeTableElement } from '../../helpers';
14
9
  import InsertTableElement from './insert-table-element';
15
10
  import './index.css';
16
- var TableContextMenu = /*#__PURE__*/function (_React$Component) {
17
- _inherits(TableContextMenu, _React$Component);
18
- var _super = _createSuper(TableContextMenu);
19
- function TableContextMenu(props) {
20
- var _this;
21
- _classCallCheck(this, TableContextMenu);
22
- _this = _super.call(this, props);
23
- _this.updateMenuPosition = function () {
24
- var menuHeight = _this.menu.offsetHeight;
11
+ class TableContextMenu extends React.Component {
12
+ constructor(props) {
13
+ super(props);
14
+ this.updateMenuPosition = () => {
15
+ const menuHeight = this.menu.offsetHeight;
25
16
 
26
17
  // get height of context menu when the menu is drawing completed in this page
27
18
  if (menuHeight === 0) {
28
- requestAnimationFrame(_this.updateMenuPosition);
19
+ requestAnimationFrame(this.updateMenuPosition);
29
20
  return;
30
21
  }
31
- var top = 0;
32
- if (_this.position.top + menuHeight > document.body.clientHeight) {
22
+ let top = 0;
23
+ if (this.position.top + menuHeight > document.body.clientHeight) {
33
24
  top = document.body.clientHeight - menuHeight - 5;
34
25
  } else {
35
- top = _this.position.top;
26
+ top = this.position.top;
36
27
  }
37
- var left = _this.position.left + 3;
38
- _this.setState({
28
+ const left = this.position.left + 3;
29
+ this.setState({
39
30
  contextStyle: {
40
- top: top,
41
- left: left
31
+ top,
32
+ left
42
33
  }
43
34
  });
44
35
  };
45
- _this.insertTableElement = function (type, position, count) {
46
- var editor = _this.props.editor;
36
+ this.insertTableElement = (type, position, count) => {
37
+ const {
38
+ editor
39
+ } = this.props;
47
40
  insertTableElement(editor, type, position, count);
48
41
  };
49
- _this.removeTableElement = function (type) {
50
- var editor = _this.props.editor;
42
+ this.removeTableElement = type => {
43
+ const {
44
+ editor
45
+ } = this.props;
51
46
  removeTableElement(editor, type);
52
47
  };
53
- _this.renderRemoveBtn = function (type, title) {
48
+ this.renderRemoveBtn = (type, title) => {
54
49
  return /*#__PURE__*/React.createElement("button", {
55
- onMouseDown: _this.removeTableElement.bind(_assertThisInitialized(_this), type),
50
+ onMouseDown: this.removeTableElement.bind(this, type),
56
51
  className: "dropdown-item"
57
- }, _this.props.t(title));
52
+ }, this.props.t(title));
58
53
  };
59
- _this.state = {
54
+ this.state = {
60
55
  contextStyle: {}
61
56
  };
62
- _this.position = null;
63
- return _this;
57
+ this.position = null;
64
58
  }
65
- _createClass(TableContextMenu, [{
66
- key: "componentDidMount",
67
- value: function componentDidMount() {
68
- this.position = this.props.contextMenuPosition;
59
+ componentDidMount() {
60
+ this.position = this.props.contextMenuPosition;
61
+ this.updateMenuPosition();
62
+ }
63
+ UNSAFE_componentWillReceiveProps(nextProps) {
64
+ const nextContextMenuPosition = nextProps.contextMenuPosition;
65
+ if (!ObjectUtils.isSameObject(nextContextMenuPosition, this.props.contextMenuPosition)) {
66
+ this.position = nextContextMenuPosition;
69
67
  this.updateMenuPosition();
70
68
  }
71
- }, {
72
- key: "UNSAFE_componentWillReceiveProps",
73
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
74
- var nextContextMenuPosition = nextProps.contextMenuPosition;
75
- if (!ObjectUtils.isSameObject(nextContextMenuPosition, this.props.contextMenuPosition)) {
76
- this.position = nextContextMenuPosition;
77
- this.updateMenuPosition();
78
- }
79
- }
80
- }, {
81
- key: "componentWillUnmount",
82
- value: function componentWillUnmount() {
83
- this.menu = null;
84
- }
85
- }, {
86
- key: "render",
87
- value: function render() {
88
- var _this2 = this;
89
- var contextStyle = this.state.contextStyle;
90
- var editor = this.props.editor;
91
- var currentTable = getSelectedNodeByType(editor, ELEMENT_TYPE.TABLE);
92
- if (!currentTable) return null;
93
- var currentRow = getSelectedNodeByType(editor, ELEMENT_TYPE.TABLE_ROW);
94
- var currentRowsCount = currentTable.children.length;
95
- var currentColumnsCount = currentRow.children.length;
96
- var tableSelectedRange = editor.tableSelectedRange;
97
- var selectedRows = tableSelectedRange.maxRowIndex - tableSelectedRange.minRowIndex + 1;
98
- var selectedCols = tableSelectedRange.maxColIndex - tableSelectedRange.minColIndex + 1;
99
- var canAddRowsCount = currentRowsCount + selectedRows > TABLE_MAX_ROWS ? TABLE_MAX_ROWS - currentRowsCount : selectedRows;
100
- var canAddColsCount = currentColumnsCount + selectedCols > TABLE_MAX_COLUMNS ? TABLE_MAX_COLUMNS - currentColumnsCount : selectedCols;
101
- return /*#__PURE__*/React.createElement(ElementPopover, {
102
- className: "sdoc-context-menu"
103
- }, /*#__PURE__*/React.createElement("div", {
104
- style: contextStyle,
105
- ref: function ref(_ref) {
106
- return _this2.menu = _ref;
107
- },
108
- className: "sdoc-table-context-menu dropdown-menu"
109
- }, /*#__PURE__*/React.createElement(InsertTableElement, {
110
- type: TABLE_ELEMENT.ROW,
111
- count: canAddRowsCount,
112
- currentCount: currentRowsCount,
113
- position: TABLE_ELEMENT_POSITION.BEFORE,
114
- insertTableElement: this.insertTableElement
115
- }), /*#__PURE__*/React.createElement(InsertTableElement, {
116
- type: TABLE_ELEMENT.ROW,
117
- count: canAddRowsCount,
118
- currentCount: currentRowsCount,
119
- position: TABLE_ELEMENT_POSITION.AFTER,
120
- insertTableElement: this.insertTableElement
121
- }), /*#__PURE__*/React.createElement(InsertTableElement, {
122
- type: TABLE_ELEMENT.COLUMN,
123
- count: canAddColsCount,
124
- currentCount: currentColumnsCount,
125
- position: TABLE_ELEMENT_POSITION.BEFORE,
126
- insertTableElement: this.insertTableElement
127
- }), /*#__PURE__*/React.createElement(InsertTableElement, {
128
- type: TABLE_ELEMENT.COLUMN,
129
- count: canAddColsCount,
130
- currentCount: currentColumnsCount,
131
- position: TABLE_ELEMENT_POSITION.AFTER,
132
- insertTableElement: this.insertTableElement
133
- }), /*#__PURE__*/React.createElement("div", {
134
- className: 'seafile-divider dropdown-divider'
135
- }), this.renderRemoveBtn(TABLE_ELEMENT.ROW, 'Delete_row'), this.renderRemoveBtn(TABLE_ELEMENT.COLUMN, 'Delete_column'), this.renderRemoveBtn(TABLE_ELEMENT.TABLE, 'Delete_table')));
136
- }
137
- }]);
138
- return TableContextMenu;
139
- }(React.Component);
69
+ }
70
+ componentWillUnmount() {
71
+ this.menu = null;
72
+ }
73
+ render() {
74
+ const {
75
+ contextStyle
76
+ } = this.state;
77
+ const {
78
+ editor
79
+ } = this.props;
80
+ const currentTable = getSelectedNodeByType(editor, ELEMENT_TYPE.TABLE);
81
+ if (!currentTable) return null;
82
+ const currentRow = getSelectedNodeByType(editor, ELEMENT_TYPE.TABLE_ROW);
83
+ const currentRowsCount = currentTable.children.length;
84
+ const currentColumnsCount = currentRow.children.length;
85
+ const {
86
+ tableSelectedRange
87
+ } = editor;
88
+ const selectedRows = tableSelectedRange.maxRowIndex - tableSelectedRange.minRowIndex + 1;
89
+ const selectedCols = tableSelectedRange.maxColIndex - tableSelectedRange.minColIndex + 1;
90
+ const canAddRowsCount = currentRowsCount + selectedRows > TABLE_MAX_ROWS ? TABLE_MAX_ROWS - currentRowsCount : selectedRows;
91
+ const canAddColsCount = currentColumnsCount + selectedCols > TABLE_MAX_COLUMNS ? TABLE_MAX_COLUMNS - currentColumnsCount : selectedCols;
92
+ return /*#__PURE__*/React.createElement(ElementPopover, {
93
+ className: "sdoc-context-menu"
94
+ }, /*#__PURE__*/React.createElement("div", {
95
+ style: contextStyle,
96
+ ref: ref => this.menu = ref,
97
+ className: "sdoc-table-context-menu dropdown-menu"
98
+ }, /*#__PURE__*/React.createElement(InsertTableElement, {
99
+ type: TABLE_ELEMENT.ROW,
100
+ count: canAddRowsCount,
101
+ currentCount: currentRowsCount,
102
+ position: TABLE_ELEMENT_POSITION.BEFORE,
103
+ insertTableElement: this.insertTableElement
104
+ }), /*#__PURE__*/React.createElement(InsertTableElement, {
105
+ type: TABLE_ELEMENT.ROW,
106
+ count: canAddRowsCount,
107
+ currentCount: currentRowsCount,
108
+ position: TABLE_ELEMENT_POSITION.AFTER,
109
+ insertTableElement: this.insertTableElement
110
+ }), /*#__PURE__*/React.createElement(InsertTableElement, {
111
+ type: TABLE_ELEMENT.COLUMN,
112
+ count: canAddColsCount,
113
+ currentCount: currentColumnsCount,
114
+ position: TABLE_ELEMENT_POSITION.BEFORE,
115
+ insertTableElement: this.insertTableElement
116
+ }), /*#__PURE__*/React.createElement(InsertTableElement, {
117
+ type: TABLE_ELEMENT.COLUMN,
118
+ count: canAddColsCount,
119
+ currentCount: currentColumnsCount,
120
+ position: TABLE_ELEMENT_POSITION.AFTER,
121
+ insertTableElement: this.insertTableElement
122
+ }), /*#__PURE__*/React.createElement("div", {
123
+ className: 'seafile-divider dropdown-divider'
124
+ }), this.renderRemoveBtn(TABLE_ELEMENT.ROW, 'Delete_row'), this.renderRemoveBtn(TABLE_ELEMENT.COLUMN, 'Delete_column'), this.renderRemoveBtn(TABLE_ELEMENT.TABLE, 'Delete_table')));
125
+ }
126
+ }
140
127
  export default withTranslation('sdoc-editor')(TableContextMenu);