@seafile/comment-editor 0.0.1 → 0.0.2-alpha.1

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 (306) hide show
  1. package/README.md +2 -8
  2. package/dist/basic-sdk/constants/index.js +2 -91
  3. package/dist/basic-sdk/context.js +0 -191
  4. package/dist/basic-sdk/cursor/helper.js +2 -31
  5. package/dist/basic-sdk/decorates/index.js +1 -2
  6. package/dist/basic-sdk/editor/comment-editor.js +3 -3
  7. package/dist/basic-sdk/extension/commons/index.js +1 -22
  8. package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +0 -136
  9. package/dist/basic-sdk/extension/commons/menu/menu-item.js +1 -6
  10. package/dist/basic-sdk/extension/constants/element-type.js +2 -36
  11. package/dist/basic-sdk/extension/constants/index.js +4 -421
  12. package/dist/basic-sdk/extension/constants/menus-config.js +2 -402
  13. package/dist/basic-sdk/extension/core/queries/index.js +0 -3
  14. package/dist/basic-sdk/extension/core/transforms/index.js +0 -11
  15. package/dist/basic-sdk/extension/index.js +3 -24
  16. package/dist/basic-sdk/extension/plugins/blockquote/helpers.js +1 -28
  17. package/dist/basic-sdk/extension/plugins/blockquote/plugin.js +2 -2
  18. package/dist/basic-sdk/extension/plugins/html/helper.js +0 -1
  19. package/dist/basic-sdk/extension/plugins/html/plugin.js +0 -24
  20. package/dist/basic-sdk/extension/plugins/html/rules/index.js +1 -4
  21. package/dist/basic-sdk/extension/plugins/image/helpers.js +2 -5
  22. package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +1 -1
  23. package/dist/basic-sdk/extension/plugins/image/plugin.js +0 -14
  24. package/dist/basic-sdk/extension/plugins/image/render-elem.js +0 -7
  25. package/dist/basic-sdk/extension/plugins/index.js +1 -102
  26. package/dist/basic-sdk/extension/plugins/link/helpers.js +2 -16
  27. package/dist/basic-sdk/extension/plugins/link/plugin.js +5 -13
  28. package/dist/basic-sdk/extension/plugins/list/helpers.js +0 -4
  29. package/dist/basic-sdk/extension/plugins/list/plugin/normalize-list.js +1 -1
  30. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-item-sublist-to-list-item-sublist.js +2 -9
  31. package/dist/basic-sdk/extension/plugins/list/transforms/normalize-list-item.js +1 -1
  32. package/dist/basic-sdk/extension/plugins/markdown/plugin.js +1 -6
  33. package/dist/basic-sdk/extension/plugins/paragraph/render-elem.js +1 -9
  34. package/dist/basic-sdk/extension/plugins/text-style/helpers.js +0 -8
  35. package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +0 -75
  36. package/dist/basic-sdk/extension/render/render-comment-editor-element.js +3 -9
  37. package/dist/basic-sdk/extension/utils/index.js +1 -51
  38. package/dist/basic-sdk/index.js +1 -40
  39. package/dist/basic-sdk/slate-convert/html-to-slate/constants.js +3 -18
  40. package/dist/basic-sdk/slate-convert/html-to-slate/index.js +0 -1
  41. package/dist/basic-sdk/slate-convert/html-to-slate/rules/index.js +1 -4
  42. package/dist/basic-sdk/slate-convert/md-to-slate/transform.js +1 -90
  43. package/dist/basic-sdk/slate-convert/slate-to-md/transform.js +0 -89
  44. package/dist/basic-sdk/utils/common-utils.js +1 -39
  45. package/dist/basic-sdk/utils/document-utils.js +2 -31
  46. package/dist/basic-sdk/utils/event-handler.js +2 -18
  47. package/dist/basic-sdk/utils/mouse-event.js +2 -57
  48. package/dist/constants/index.js +2 -59
  49. package/dist/pages/seafile-comment-editor.js +7 -8
  50. package/package.json +1 -14
  51. package/public/index.html +0 -1
  52. package/dist/assets/css/simple-editor.css +0 -9
  53. package/dist/assets/images/content-replaced.png +0 -0
  54. package/dist/assets/images/revision-avatar.png +0 -0
  55. package/dist/assets/images/sdoc-freezed.png +0 -0
  56. package/dist/basic-sdk/android/constants.js +0 -10
  57. package/dist/basic-sdk/android/js-bridge.js +0 -74
  58. package/dist/basic-sdk/android/outline-module.js +0 -29
  59. package/dist/basic-sdk/api/sdoc-server-api.js +0 -189
  60. package/dist/basic-sdk/api/seafile-api.js +0 -220
  61. package/dist/basic-sdk/assets/css/diff-viewer.css +0 -5
  62. package/dist/basic-sdk/assets/images/sdoc-ask-ai.png +0 -0
  63. package/dist/basic-sdk/components/file-loading/index.css +0 -57
  64. package/dist/basic-sdk/components/file-loading/index.js +0 -15
  65. package/dist/basic-sdk/constants/plugin.js +0 -10
  66. package/dist/basic-sdk/constants/z-index.js +0 -8
  67. package/dist/basic-sdk/extension/commons/color-menu/color-item.js +0 -33
  68. package/dist/basic-sdk/extension/commons/color-menu/index.css +0 -161
  69. package/dist/basic-sdk/extension/commons/color-menu/index.js +0 -210
  70. package/dist/basic-sdk/extension/commons/file-insert-dialog/index.js +0 -282
  71. package/dist/basic-sdk/extension/commons/file-insert-dialog/style.css +0 -91
  72. package/dist/basic-sdk/extension/commons/more-dropdown/index.js +0 -44
  73. package/dist/basic-sdk/extension/commons/search-list/index.css +0 -28
  74. package/dist/basic-sdk/extension/commons/search-list/index.js +0 -149
  75. package/dist/basic-sdk/extension/commons/select/_option.js +0 -39
  76. package/dist/basic-sdk/extension/commons/select/field-setting.js +0 -109
  77. package/dist/basic-sdk/extension/commons/select/index.js +0 -142
  78. package/dist/basic-sdk/extension/commons/select/menu/index.js +0 -11
  79. package/dist/basic-sdk/extension/commons/select/menu/item.js +0 -39
  80. package/dist/basic-sdk/extension/commons/select/menu/menu.js +0 -34
  81. package/dist/basic-sdk/extension/commons/select/menu/style.css +0 -43
  82. package/dist/basic-sdk/extension/commons/select/style.css +0 -149
  83. package/dist/basic-sdk/extension/commons/select-file-dialog/helpers.js +0 -54
  84. package/dist/basic-sdk/extension/commons/select-file-dialog/index.css +0 -135
  85. package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +0 -207
  86. package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.css +0 -114
  87. package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +0 -193
  88. package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/index.js +0 -274
  89. package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/style.css +0 -116
  90. package/dist/basic-sdk/extension/constants/color.js +0 -282
  91. package/dist/basic-sdk/extension/constants/diff-view.js +0 -20
  92. package/dist/basic-sdk/extension/constants/font.js +0 -537
  93. package/dist/basic-sdk/extension/constants/keyboard.js +0 -45
  94. package/dist/basic-sdk/extension/core/transforms/update-parent-node.js +0 -34
  95. package/dist/basic-sdk/extension/plugins/ai/ai-icon/index.js +0 -26
  96. package/dist/basic-sdk/extension/plugins/ai/ai-icon/style.css +0 -22
  97. package/dist/basic-sdk/extension/plugins/ai/ai-menu/ai-context-menu.js +0 -41
  98. package/dist/basic-sdk/extension/plugins/ai/ai-menu/ai-dropdown-menu.js +0 -35
  99. package/dist/basic-sdk/extension/plugins/ai/ai-menu/index.js +0 -20
  100. package/dist/basic-sdk/extension/plugins/ai/ai-menu/menu-item.js +0 -58
  101. package/dist/basic-sdk/extension/plugins/ai/ai-menu/style.css +0 -12
  102. package/dist/basic-sdk/extension/plugins/ai/ai-module/adjust-sub-menu.js +0 -44
  103. package/dist/basic-sdk/extension/plugins/ai/ai-module/helpers.js +0 -72
  104. package/dist/basic-sdk/extension/plugins/ai/ai-module/index.js +0 -600
  105. package/dist/basic-sdk/extension/plugins/ai/ai-module/lang-sub-menu.js +0 -55
  106. package/dist/basic-sdk/extension/plugins/ai/ai-module/style.css +0 -148
  107. package/dist/basic-sdk/extension/plugins/ai/ai-module/tip-dialog.js +0 -41
  108. package/dist/basic-sdk/extension/plugins/ai/constants/index.js +0 -137
  109. package/dist/basic-sdk/extension/plugins/ai/index.js +0 -1
  110. package/dist/basic-sdk/extension/plugins/callout/constant.js +0 -58
  111. package/dist/basic-sdk/extension/plugins/callout/helper.js +0 -281
  112. package/dist/basic-sdk/extension/plugins/callout/index.js +0 -19
  113. package/dist/basic-sdk/extension/plugins/callout/menu/index.css +0 -16
  114. package/dist/basic-sdk/extension/plugins/callout/menu/index.js +0 -52
  115. package/dist/basic-sdk/extension/plugins/callout/plugin.js +0 -109
  116. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-color-selector/index.js +0 -65
  117. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-color-selector/style.css +0 -39
  118. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-hover-menu/index.js +0 -90
  119. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-hover-menu/style.css +0 -45
  120. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-icon/index.js +0 -45
  121. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-icon/style.css +0 -33
  122. package/dist/basic-sdk/extension/plugins/callout/render-elem/index.css +0 -52
  123. package/dist/basic-sdk/extension/plugins/callout/render-elem/index.js +0 -134
  124. package/dist/basic-sdk/extension/plugins/check-list/helpers.js +0 -121
  125. package/dist/basic-sdk/extension/plugins/check-list/index.js +0 -16
  126. package/dist/basic-sdk/extension/plugins/check-list/menu/index.js +0 -58
  127. package/dist/basic-sdk/extension/plugins/check-list/model.js +0 -17
  128. package/dist/basic-sdk/extension/plugins/check-list/plugin.js +0 -110
  129. package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +0 -71
  130. package/dist/basic-sdk/extension/plugins/clear-format/helpers.js +0 -54
  131. package/dist/basic-sdk/extension/plugins/clear-format/menu/index.js +0 -35
  132. package/dist/basic-sdk/extension/plugins/code-block/helpers.js +0 -206
  133. package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.css +0 -148
  134. package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +0 -259
  135. package/dist/basic-sdk/extension/plugins/code-block/index.js +0 -19
  136. package/dist/basic-sdk/extension/plugins/code-block/menu/index.js +0 -35
  137. package/dist/basic-sdk/extension/plugins/code-block/model.js +0 -16
  138. package/dist/basic-sdk/extension/plugins/code-block/plugin.js +0 -229
  139. package/dist/basic-sdk/extension/plugins/code-block/prismjs.js +0 -189
  140. package/dist/basic-sdk/extension/plugins/code-block/render-elem.js +0 -182
  141. package/dist/basic-sdk/extension/plugins/file-link/constants/index.js +0 -26
  142. package/dist/basic-sdk/extension/plugins/file-link/helpers.js +0 -125
  143. package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.css +0 -89
  144. package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +0 -122
  145. package/dist/basic-sdk/extension/plugins/file-link/index.js +0 -18
  146. package/dist/basic-sdk/extension/plugins/file-link/menu/index.js +0 -38
  147. package/dist/basic-sdk/extension/plugins/file-link/plugin.js +0 -72
  148. package/dist/basic-sdk/extension/plugins/file-link/render-elem.css +0 -56
  149. package/dist/basic-sdk/extension/plugins/file-link/render-elem.js +0 -164
  150. package/dist/basic-sdk/extension/plugins/font/helpers.js +0 -173
  151. package/dist/basic-sdk/extension/plugins/font/index.js +0 -13
  152. package/dist/basic-sdk/extension/plugins/font/menu/font-family/font-item.js +0 -39
  153. package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.css +0 -40
  154. package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.js +0 -145
  155. package/dist/basic-sdk/extension/plugins/font/menu/font-size/font-size-scale.js +0 -38
  156. package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.css +0 -40
  157. package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.js +0 -103
  158. package/dist/basic-sdk/extension/plugins/font/menu/index.js +0 -24
  159. package/dist/basic-sdk/extension/plugins/font/plugin.js +0 -18
  160. package/dist/basic-sdk/extension/plugins/group/index.js +0 -13
  161. package/dist/basic-sdk/extension/plugins/group/render-elem.js +0 -25
  162. package/dist/basic-sdk/extension/plugins/header/helpers.js +0 -69
  163. package/dist/basic-sdk/extension/plugins/header/index.js +0 -17
  164. package/dist/basic-sdk/extension/plugins/header/menu/index.js +0 -153
  165. package/dist/basic-sdk/extension/plugins/header/menu/style.css +0 -79
  166. package/dist/basic-sdk/extension/plugins/header/plugin.js +0 -140
  167. package/dist/basic-sdk/extension/plugins/header/render-elem.js +0 -90
  168. package/dist/basic-sdk/extension/plugins/history/history-menu.js +0 -70
  169. package/dist/basic-sdk/extension/plugins/html/rules/check-list.js +0 -27
  170. package/dist/basic-sdk/extension/plugins/html/rules/code-block.js +0 -89
  171. package/dist/basic-sdk/extension/plugins/html/rules/header.js +0 -32
  172. package/dist/basic-sdk/extension/plugins/html/rules/table.js +0 -41
  173. package/dist/basic-sdk/extension/plugins/multi-column/constants/index.js +0 -7
  174. package/dist/basic-sdk/extension/plugins/multi-column/helper.js +0 -192
  175. package/dist/basic-sdk/extension/plugins/multi-column/index.js +0 -17
  176. package/dist/basic-sdk/extension/plugins/multi-column/plugin.js +0 -153
  177. package/dist/basic-sdk/extension/plugins/multi-column/render/index.css +0 -51
  178. package/dist/basic-sdk/extension/plugins/multi-column/render/index.js +0 -91
  179. package/dist/basic-sdk/extension/plugins/multi-column/render/multi-column-root.js +0 -23
  180. package/dist/basic-sdk/extension/plugins/multi-column/render/render-column.js +0 -46
  181. package/dist/basic-sdk/extension/plugins/multi-column/render-elem.js +0 -20
  182. package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/column-resize-handler.js +0 -28
  183. package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/index.js +0 -148
  184. package/dist/basic-sdk/extension/plugins/sdoc-link/constants/index.js +0 -26
  185. package/dist/basic-sdk/extension/plugins/sdoc-link/helpers.js +0 -291
  186. package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.css +0 -89
  187. package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.js +0 -121
  188. package/dist/basic-sdk/extension/plugins/sdoc-link/index.js +0 -19
  189. package/dist/basic-sdk/extension/plugins/sdoc-link/menu/index.js +0 -38
  190. package/dist/basic-sdk/extension/plugins/sdoc-link/plugin.js +0 -102
  191. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-elem.css +0 -68
  192. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-elem.js +0 -180
  193. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-file-link-temp-input.js +0 -34
  194. package/dist/basic-sdk/extension/plugins/search-replace/constant.js +0 -8
  195. package/dist/basic-sdk/extension/plugins/search-replace/helper.js +0 -355
  196. package/dist/basic-sdk/extension/plugins/search-replace/index.js +0 -17
  197. package/dist/basic-sdk/extension/plugins/search-replace/menu/index.css +0 -14
  198. package/dist/basic-sdk/extension/plugins/search-replace/menu/index.js +0 -89
  199. package/dist/basic-sdk/extension/plugins/search-replace/plugin.js +0 -28
  200. package/dist/basic-sdk/extension/plugins/search-replace/popover/index.css +0 -98
  201. package/dist/basic-sdk/extension/plugins/search-replace/popover/index.js +0 -238
  202. package/dist/basic-sdk/extension/plugins/search-replace/popover/replace-all-confirm-modal.js +0 -50
  203. package/dist/basic-sdk/extension/plugins/table/constants/index.js +0 -64
  204. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/index.css +0 -7
  205. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/index.js +0 -102
  206. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/number-input.js +0 -31
  207. package/dist/basic-sdk/extension/plugins/table/dialogs/index.js +0 -20
  208. package/dist/basic-sdk/extension/plugins/table/dialogs/split-cell-setting-dialog.js +0 -115
  209. package/dist/basic-sdk/extension/plugins/table/helpers.js +0 -2124
  210. package/dist/basic-sdk/extension/plugins/table/index.js +0 -21
  211. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/common-menu.js +0 -83
  212. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/color-item.js +0 -33
  213. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/index.js +0 -173
  214. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/style.css +0 -7
  215. package/dist/basic-sdk/extension/plugins/table/menu/horizontal-align-popover/index.js +0 -79
  216. package/dist/basic-sdk/extension/plugins/table/menu/index.js +0 -20
  217. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.css +0 -40
  218. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.js +0 -232
  219. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/insert-table-element.js +0 -97
  220. package/dist/basic-sdk/extension/plugins/table/menu/table-menu/index.js +0 -40
  221. package/dist/basic-sdk/extension/plugins/table/menu/vertical-align-popover/index.js +0 -81
  222. package/dist/basic-sdk/extension/plugins/table/menu/vertical-align-popover/style.css +0 -24
  223. package/dist/basic-sdk/extension/plugins/table/model.js +0 -54
  224. package/dist/basic-sdk/extension/plugins/table/plugin.js +0 -621
  225. package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.css +0 -69
  226. package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.js +0 -265
  227. package/dist/basic-sdk/extension/plugins/table/popover/table-template/index.css +0 -43
  228. package/dist/basic-sdk/extension/plugins/table/popover/table-template/index.js +0 -129
  229. package/dist/basic-sdk/extension/plugins/table/popover/table-template/sample-table.js +0 -44
  230. package/dist/basic-sdk/extension/plugins/table/render/alternate-color.css +0 -37
  231. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/column-drag-handler.js +0 -24
  232. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/index.js +0 -53
  233. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/row-drag-handler.js +0 -24
  234. package/dist/basic-sdk/extension/plugins/table/render/hooks.js +0 -76
  235. package/dist/basic-sdk/extension/plugins/table/render/index.css +0 -169
  236. package/dist/basic-sdk/extension/plugins/table/render/index.js +0 -271
  237. package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +0 -253
  238. package/dist/basic-sdk/extension/plugins/table/render/render-row.js +0 -15
  239. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/column-resize-handler.js +0 -114
  240. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/first-column-left-resize-handler.js +0 -100
  241. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/index.js +0 -74
  242. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/row-resize-handler.js +0 -90
  243. package/dist/basic-sdk/extension/plugins/table/render/resize-mask/index.js +0 -136
  244. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/column-header.js +0 -104
  245. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/index.js +0 -92
  246. package/dist/basic-sdk/extension/plugins/table/render/table-header/index.css +0 -84
  247. package/dist/basic-sdk/extension/plugins/table/render/table-header/index.js +0 -114
  248. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-columns-header.js +0 -32
  249. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/index.js +0 -90
  250. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/row-header.js +0 -126
  251. package/dist/basic-sdk/extension/plugins/table/render/table-root.js +0 -60
  252. package/dist/basic-sdk/extension/plugins/table/render-elem.js +0 -27
  253. package/dist/basic-sdk/extension/plugins/text-align/helpers.js +0 -51
  254. package/dist/basic-sdk/extension/plugins/text-align/index.js +0 -8
  255. package/dist/basic-sdk/extension/plugins/text-align/menu/index.css +0 -5
  256. package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +0 -98
  257. package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +0 -164
  258. package/dist/basic-sdk/extension/plugins/video/constants/index.js +0 -10
  259. package/dist/basic-sdk/extension/plugins/video/dialog/add-video-link-dialog/index.js +0 -108
  260. package/dist/basic-sdk/extension/plugins/video/helpers.js +0 -241
  261. package/dist/basic-sdk/extension/plugins/video/index.css +0 -73
  262. package/dist/basic-sdk/extension/plugins/video/index.js +0 -20
  263. package/dist/basic-sdk/extension/plugins/video/menu/index.js +0 -76
  264. package/dist/basic-sdk/extension/plugins/video/plugin.js +0 -52
  265. package/dist/basic-sdk/extension/plugins/video/render-elem.js +0 -154
  266. package/dist/basic-sdk/extension/plugins/wiki-link/helpers.js +0 -77
  267. package/dist/basic-sdk/extension/plugins/wiki-link/index.js +0 -16
  268. package/dist/basic-sdk/extension/render/helper.js +0 -64
  269. package/dist/basic-sdk/highlight/index.js +0 -26
  270. package/dist/basic-sdk/highlight/setNodeToDecorations.js +0 -83
  271. package/dist/basic-sdk/hooks/use-color-context.js +0 -49
  272. package/dist/basic-sdk/hooks/use-force-update.js +0 -15
  273. package/dist/basic-sdk/hooks/use-selection-element.js +0 -26
  274. package/dist/basic-sdk/hooks/use-selection-position.js +0 -68
  275. package/dist/basic-sdk/slate-convert/html-to-slate/rules/code-block.js +0 -90
  276. package/dist/basic-sdk/slate-convert/html-to-slate/rules/header.js +0 -24
  277. package/dist/basic-sdk/slate-convert/html-to-slate/rules/table.js +0 -45
  278. package/dist/basic-sdk/socket/helpers.js +0 -312
  279. package/dist/basic-sdk/utils/Kebab-to-camel.js +0 -10
  280. package/dist/basic-sdk/utils/debounce.js +0 -20
  281. package/dist/basic-sdk/utils/debug.js +0 -20
  282. package/dist/basic-sdk/utils/default-mode.js +0 -28
  283. package/dist/basic-sdk/utils/diff-text.js +0 -297
  284. package/dist/basic-sdk/utils/diff.js +0 -328
  285. package/dist/basic-sdk/utils/dom-utils.js +0 -57
  286. package/dist/basic-sdk/utils/full-width-mode.js +0 -36
  287. package/dist/basic-sdk/utils/local-storage-utils.js +0 -52
  288. package/dist/basic-sdk/utils/rebase.js +0 -309
  289. package/dist/components/error-boundary/error-page.css +0 -16
  290. package/dist/components/error-boundary/error-page.js +0 -36
  291. package/dist/components/error-boundary/index.js +0 -33
  292. package/dist/components/modal-header/index.css +0 -18
  293. package/dist/components/modal-header/index.js +0 -29
  294. package/dist/components/modal-portal/index.js +0 -26
  295. package/dist/components/tip-dialog/index.css +0 -48
  296. package/dist/components/tip-dialog/index.js +0 -115
  297. package/dist/utils/date-utils.js +0 -78
  298. package/dist/utils/index.js +0 -45
  299. package/public/media/dtable-font.css +0 -1568
  300. package/public/media/dtable-fonts/dtable-font.eot +0 -0
  301. package/public/media/dtable-fonts/dtable-font.svg +0 -793
  302. package/public/media/dtable-fonts/dtable-font.ttf +0 -0
  303. package/public/media/dtable-fonts/dtable-font.woff +0 -0
  304. package/public/media/dtable-fonts/dtable-font.woff2 +0 -0
  305. package/public/media/seafile-logo.png +0 -0
  306. /package/dist/basic-sdk/{extension/plugins/header → components/placeholder}/placeholder.js +0 -0
@@ -1,241 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.videoFileIcon = exports.parseVideoLink = exports.onCopyNode = exports.isInsertVideoMenuDisabled = exports.insertVideo = exports.getVideoURL = exports.generateVideoNode = exports.formatFileSize = void 0;
8
- var _slate = require("@seafile/slate");
9
- var _copyToClipboard = _interopRequireDefault(require("copy-to-clipboard"));
10
- var _urlJoin = _interopRequireDefault(require("url-join"));
11
- var _context = _interopRequireDefault(require("../../../context"));
12
- var _constants = require("../../constants");
13
- var _core = require("../../core");
14
- var _helpers = require("../../plugins/code-block/helpers");
15
- var _constants2 = require("../../plugins/table/constants");
16
- var _constants3 = require("./constants");
17
- const isInsertVideoMenuDisabled = (editor, readonly) => {
18
- if (readonly) return true;
19
- const {
20
- selection
21
- } = editor;
22
- if (selection === null) return true;
23
- if (!_slate.Range.isCollapsed(selection)) return true;
24
- const [match] = _slate.Editor.nodes(editor, {
25
- match: n => {
26
- let type = (0, _core.getNodeType)(n);
27
- if (!type && (0, _core.isTextNode)(n) && n.id) {
28
- const parentNode = (0, _core.getParentNode)(editor.children, n.id);
29
- type = (0, _core.getNodeType)(parentNode);
30
- }
31
- if (type === _constants.CODE_BLOCK) return true;
32
- if (type.startsWith('header')) return true;
33
- if (type === _constants.TITLE) return true;
34
- if (type === _constants.SUBTITLE) return true;
35
- if (type === _constants.LIST_ITEM) return true;
36
- if (type === _constants.CHECK_LIST_ITEM) return true;
37
- if (type === _constants.MULTI_COLUMN) return true;
38
- if (type === _constants.BLOCKQUOTE) return true;
39
- if (type === _constants.CALL_OUT) return true;
40
- if (type === _constants.TABLE) return true;
41
- if (_slate.Editor.isVoid(editor, n)) return true;
42
- return false;
43
- },
44
- universal: true
45
- });
46
- if (match) return true;
47
- return false;
48
- };
49
- exports.isInsertVideoMenuDisabled = isInsertVideoMenuDisabled;
50
- const generateVideoNode = (src, videoInfo) => {
51
- const element = (0, _core.generateEmptyElement)(_constants.VIDEO);
52
- const {
53
- name,
54
- size,
55
- is_embeddable_link
56
- } = videoInfo;
57
- return [{
58
- ...element,
59
- data: {
60
- src,
61
- name,
62
- size,
63
- is_embeddable_link
64
- }
65
- }];
66
- };
67
- exports.generateVideoNode = generateVideoNode;
68
- const parseVideoLink = url => {
69
- if (!url) return false;
70
-
71
- // Youtube url conversion
72
- if (url.includes('youtube.com')) {
73
- const videoId = new URL(url).searchParams.get('v');
74
- const videoUrl = videoId ? `https://www.youtube.com/embed/${videoId}/?rel=0` : false;
75
- return videoUrl;
76
- }
77
-
78
- // Tencent url conversion
79
- if (url.includes('v.qq.com')) {
80
- const vidMatch = url.match(/\/([^\/]+)\.html/);
81
- const videoUrl = vidMatch !== null && vidMatch !== void 0 && vidMatch[1] ? `https://v.qq.com/txp/iframe/player.html?vid=${vidMatch[1]}` : false;
82
- return videoUrl;
83
- }
84
-
85
- // Bilibili url conversion
86
- if (url.includes('bilibili.com')) {
87
- const vidMatch = url.match(/\/video\/(BV[0-9A-Za-z]+)/);
88
- const videoUrl = vidMatch !== null && vidMatch !== void 0 && vidMatch[1] ? `https://player.bilibili.com/player.html?bvid=${vidMatch[1]}` : false;
89
- return videoUrl;
90
- }
91
-
92
- // Youku url conversion
93
- if (url.includes('v.youku.com')) {
94
- const vidMatch = url.match(/id_([A-Za-z0-9=]+)\.html/);
95
- const videoUrl = vidMatch !== null && vidMatch !== void 0 && vidMatch[1] ? `https://player.youku.com/embed/${vidMatch[1]}` : false;
96
- return videoUrl;
97
- }
98
-
99
- // Unsupported url
100
- return false;
101
- };
102
- exports.parseVideoLink = parseVideoLink;
103
- const insertVideo = function (editor, videoFiles, srcList, selection) {
104
- let position = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants.INSERT_POSITION.CURRENT;
105
- if (!srcList) return;
106
- if (position !== _constants.INSERT_POSITION.AFTER) {
107
- if (isInsertVideoMenuDisabled(editor)) return;
108
- }
109
- const videoInfo = {
110
- name: videoFiles[0].name || null,
111
- size: videoFiles[0].size || null,
112
- is_embeddable_link: videoFiles[0].isEmbeddableLink || false
113
- };
114
- let videoNodes;
115
- // Return when embedding an invalid youtube, tencent or bilibili video url
116
- if (videoInfo.is_embeddable_link) {
117
- const parsedSrc = parseVideoLink(srcList[0]);
118
- if (!parsedSrc) return;
119
- videoNodes = generateVideoNode(parsedSrc, videoInfo);
120
- } else {
121
- videoNodes = generateVideoNode(srcList[0], videoInfo);
122
- }
123
- const validSelection = selection || editor.selection;
124
- let path = _slate.Editor.path(editor, validSelection);
125
- if (position === _constants.INSERT_POSITION.AFTER) {
126
- const p = (0, _core.generateEmptyElement)(_constants.ELEMENT_TYPE.PARAGRAPH);
127
- videoNodes.forEach((item, index) => {
128
- p.children[index] = item;
129
- });
130
- _slate.Transforms.insertNodes(editor, p, {
131
- at: [path[0] + 1]
132
- });
133
- (0, _core.focusEditor)(editor, [path[0] + 1, 2]);
134
- return;
135
- }
136
- const aboveNodeEntry = (0, _core.getAboveBlockNode)(editor);
137
- const nodePath = [aboveNodeEntry[1][0]];
138
- const nextPath = _slate.Path.next(nodePath);
139
- const isEmptyParagraph = aboveNodeEntry[0].type === _constants.PARAGRAPH && _slate.Node.string(aboveNodeEntry[0]).length === 0;
140
- if (videoNodes.length === 1 && isEmptyParagraph) {
141
- _slate.Transforms.setNodes(editor, videoNodes[0], {
142
- at: validSelection
143
- });
144
- _slate.Transforms.insertNodes(editor, (0, _core.generateDefaultParagraph)(), {
145
- at: nextPath
146
- });
147
- const endOfFirstNode = _slate.Editor.start(editor, nextPath);
148
- const range = {
149
- anchor: endOfFirstNode,
150
- focus: endOfFirstNode
151
- };
152
- (0, _core.focusEditor)(editor, range);
153
- return;
154
- }
155
- let videoEndSelection;
156
- if ((0, _core.isLastNode)(editor, aboveNodeEntry[0]) && _slate.Editor.isEnd(editor, validSelection.anchor, [validSelection.anchor.path[0]])) {
157
- // Insert video into empty paragraph node at the end if in the last position
158
- _slate.Transforms.splitNodes(editor, {
159
- at: selection,
160
- always: true
161
- });
162
- _slate.Transforms.insertNodes(editor, videoNodes[0], {
163
- at: validSelection
164
- });
165
- _slate.Transforms.insertNodes(editor, (0, _core.generateDefaultParagraph)(), {
166
- at: [nextPath[0] + 1]
167
- });
168
- videoEndSelection = [nextPath[0] + 1];
169
- } else {
170
- _slate.Transforms.splitNodes(editor, {
171
- at: selection,
172
- always: true
173
- });
174
- _slate.Transforms.insertNodes(editor, videoNodes[0], {
175
- at: validSelection
176
- });
177
- videoEndSelection = _slate.Editor.start(editor, _slate.Path.next(nextPath));
178
- }
179
- (0, _core.focusEditor)(editor, videoEndSelection);
180
- };
181
- exports.insertVideo = insertVideo;
182
- const getVideoURL = data => {
183
- const {
184
- src: url
185
- } = data;
186
- if (url && url.startsWith('http')) return url;
187
- const serviceUrl = _context.default.getSetting('serviceUrl');
188
- const assetsUrl = _context.default.getSetting('assetsUrl');
189
- return (0, _urlJoin.default)(serviceUrl, assetsUrl, url);
190
- };
191
- exports.getVideoURL = getVideoURL;
192
- const formatFileSize = size => {
193
- if (typeof size !== 'number') {
194
- return '';
195
- }
196
- if (size >= _constants3.ONE_GB) {
197
- return (size / _constants3.ONE_GB).toFixed(1) + ' G';
198
- }
199
- if (size >= _constants3.ONE_MB) {
200
- return (size / _constants3.ONE_MB).toFixed(1) + ' M';
201
- }
202
- if (size >= _constants3.ONE_KB) {
203
- return (size / _constants3.ONE_KB).toFixed(1) + ' K';
204
- }
205
- return size.toFixed(1) + ' B';
206
- };
207
- exports.formatFileSize = formatFileSize;
208
- const videoFileIcon = () => {
209
- const server = _context.default.getSetting('serviceUrl');
210
- return `${server}/media/img/file/256/video.png`;
211
- };
212
- exports.videoFileIcon = videoFileIcon;
213
- const onCopyNode = (editor, element) => {
214
- if (element.type === _constants.ELEMENT_TYPE.CODE_BLOCK) {
215
- (0, _helpers.setClipboardCodeBlockData)(element);
216
- return;
217
- }
218
- if (element.type === _constants.ELEMENT_TYPE.TABLE) {
219
- const tableSize = [element.children.length, element.children[0].children.length];
220
- const tableSelectedRange = {
221
- minRowIndex: 0,
222
- maxRowIndex: tableSize[0] - 1,
223
- minColIndex: 0,
224
- maxColIndex: tableSize[1] - 1
225
- };
226
- editor.tableSelectedRange = tableSelectedRange;
227
- }
228
- const newData = editor.setFragmentData(new DataTransfer());
229
- (0, _copyToClipboard.default)('copy', {
230
- onCopy: clipboardData => {
231
- newData.types.forEach(type => {
232
- const data = newData.getData(type);
233
- clipboardData.setData(type, data);
234
- });
235
- }
236
- });
237
- if (element.type === _constants.ELEMENT_TYPE.TABLE) {
238
- editor.tableSelectedRange = _constants2.EMPTY_SELECTED_RANGE;
239
- }
240
- };
241
- exports.onCopyNode = onCopyNode;
@@ -1,73 +0,0 @@
1
- .video-loading-placeholder {
2
- background-color: #F2F2F2;
3
- width: 100%;
4
- height: auto;
5
- display: flex;
6
- align-items: center;
7
- }
8
-
9
- .video-loading-placeholder .video-file-icon {
10
- width: 35px;
11
- height: auto;
12
- }
13
-
14
- .video-loading-placeholder .video-file-info {
15
- display: flex;
16
- flex-direction: column;
17
- justify-content: center;
18
- align-items: flex-start;
19
- font-size: small;
20
- }
21
-
22
- .video-loading-placeholder .file-size {
23
- display: flex;
24
- align-items: center;
25
- color: #939393;
26
- }
27
-
28
- .video-loading-placeholder .loading-spinner {
29
- border: 3px solid #d8d8d8;
30
- border-top: 3px solid #939393;
31
- border-radius: 50%;
32
- width: 15px;
33
- height: 15px;
34
- animation: spin 1s linear infinite;
35
- }
36
-
37
- @keyframes spin {
38
- 0% { transform: rotate(0deg); }
39
- 100% { transform: rotate(360deg); }
40
- }
41
-
42
- .sdoc-video-wrapper{
43
- display: flex;
44
- }
45
- .sdoc-video-wrapper {
46
- position: relative;
47
- display: flex;
48
- }
49
-
50
- .sdoc-video-wrapper .sdoc-video-inner {
51
- position: relative;
52
- width: 100%;
53
- aspect-ratio: 16 / 9;
54
- display: flex;
55
- margin-top: 5px;
56
- margin-bottom: 10px;
57
- }
58
-
59
- .sdoc-video-inner .sdoc-video-element{
60
- width: 100%;
61
- }
62
-
63
- .sdoc-video-inner .sdoc-video-element:focus-visible {
64
- outline: none;
65
- }
66
-
67
- .sdoc-video-inner .sdoc-video-play {
68
- position: absolute;
69
- top: 36.75%;
70
- left: 46.3%;
71
- font-size: 48px;
72
- pointer-events: none;
73
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _constants = require("../../constants");
9
- var _menu = _interopRequireDefault(require("./menu"));
10
- var _plugin = _interopRequireDefault(require("./plugin"));
11
- var _renderElem = require("./render-elem");
12
- require("./index.css");
13
- const VideoPlugin = {
14
- type: _constants.VIDEO,
15
- nodeType: 'element',
16
- editorMenus: [_menu.default],
17
- editorPlugin: _plugin.default,
18
- renderElements: [_renderElem.renderVideo]
19
- };
20
- var _default = exports.default = VideoPlugin;
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _reactI18next = require("react-i18next");
11
- var _reactstrap = require("reactstrap");
12
- var _constants = require("../../../../constants");
13
- var _dropdownMenuItem = _interopRequireDefault(require("../../../commons/dropdown-menu-item"));
14
- var _constants2 = require("../../../constants");
15
- var _helpers = require("../helpers");
16
- const VideoMenu = _ref => {
17
- let {
18
- editor,
19
- readonly,
20
- toggle,
21
- eventBus
22
- } = _ref;
23
- const disabled = (0, _helpers.isInsertVideoMenuDisabled)(editor, readonly);
24
- const menuConfig = _constants2.MENUS_CONFIG_MAP[_constants2.VIDEO];
25
- const {
26
- t
27
- } = (0, _reactI18next.useTranslation)('sdoc-editor');
28
- const openLocalVideoDialog = (0, _react.useCallback)(() => {
29
- eventBus.dispatch(_constants.INTERNAL_EVENT.INSERT_ELEMENT, {
30
- type: _constants2.LOCAL_VIDEO,
31
- editor
32
- });
33
- }, [editor, eventBus]);
34
- const addVideoLink = (0, _react.useCallback)(() => {
35
- eventBus.dispatch(_constants.INTERNAL_EVENT.INSERT_ELEMENT, {
36
- type: _constants2.ELEMENT_TYPE.VIDEO_LINK,
37
- editor
38
- });
39
- toggle && toggle();
40
- // eslint-disable-next-line react-hooks/exhaustive-deps
41
- }, [editor, eventBus]);
42
- const openSelectVideoFileDialog = (0, _react.useCallback)(() => {
43
- eventBus.dispatch(_constants.INTERNAL_EVENT.INSERT_ELEMENT, {
44
- type: _constants2.ELEMENT_TYPE.VIDEO,
45
- insertVideo: _helpers.insertVideo
46
- });
47
- toggle && toggle();
48
- // eslint-disable-next-line react-hooks/exhaustive-deps
49
- }, [toggle, eventBus]);
50
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_dropdownMenuItem.default, {
51
- disabled: disabled,
52
- menuConfig: menuConfig,
53
- className: "pr-2"
54
- }, !disabled && /*#__PURE__*/_react.default.createElement("i", {
55
- className: "sdocfont sdoc-right-slide sdoc-dropdown-item-right-icon"
56
- })), !disabled && /*#__PURE__*/_react.default.createElement(_reactstrap.UncontrolledPopover, {
57
- target: menuConfig.id,
58
- trigger: "hover",
59
- className: "sdoc-menu-popover sdoc-dropdown-menu sdoc-sub-dropdown-menu sdoc-insert-video-menu-popover",
60
- placement: "right-start",
61
- hideArrow: true,
62
- fade: false
63
- }, /*#__PURE__*/_react.default.createElement("div", {
64
- className: "sdoc-insert-video-menu-popover-container sdoc-dropdown-menu-container 333"
65
- }, /*#__PURE__*/_react.default.createElement("div", {
66
- className: "sdoc-dropdown-menu-item",
67
- onClick: openLocalVideoDialog
68
- }, t('Upload_local_video')), /*#__PURE__*/_react.default.createElement("div", {
69
- className: "sdoc-dropdown-menu-item",
70
- onClick: addVideoLink
71
- }, t('Add_video_link')), /*#__PURE__*/_react.default.createElement("div", {
72
- className: "sdoc-dropdown-menu-item",
73
- onClick: openSelectVideoFileDialog
74
- }, t('Link_Seafile_video_file')))));
75
- };
76
- var _default = exports.default = VideoMenu;
@@ -1,52 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _slate = require("@seafile/slate");
9
- var _isHotkey = _interopRequireDefault(require("is-hotkey"));
10
- var _constants = require("../../constants");
11
- var _core = require("../../core");
12
- var _helpers = require("./helpers");
13
- const withVideo = editor => {
14
- const {
15
- isVoid,
16
- onHotKeyDown
17
- } = editor;
18
- const newEditor = editor;
19
-
20
- // Make video as void node
21
- newEditor.isVoid = elem => {
22
- const {
23
- type
24
- } = elem;
25
- if (type === _constants.VIDEO) {
26
- return true;
27
- }
28
- return isVoid(elem);
29
- };
30
- newEditor.onHotKeyDown = event => {
31
- const [videoNode, path] = (0, _core.getSelectedNodeEntryByType)(editor, _constants.VIDEO) || [];
32
- if (path) {
33
- // Insert empty paragraph node after video when clicking 'enter' on selected video
34
- if ((0, _isHotkey.default)('enter', event)) {
35
- event.preventDefault();
36
- const emptyParagraph = (0, _core.generateEmptyElement)(_constants.PARAGRAPH);
37
- _slate.Transforms.insertNodes(editor, emptyParagraph, {
38
- at: _slate.Path.next(path)
39
- });
40
- const focusPoint = _slate.Editor.end(editor, _slate.Path.next(path));
41
- (0, _core.focusEditor)(newEditor, focusPoint);
42
- }
43
- if ((0, _isHotkey.default)('mod+c', event)) {
44
- (0, _helpers.onCopyNode)(editor, videoNode);
45
- }
46
- return true;
47
- }
48
- return onHotKeyDown && onHotKeyDown(event);
49
- };
50
- return newEditor;
51
- };
52
- var _default = exports.default = withVideo;
@@ -1,154 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.renderVideo = renderVideo;
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _slate = require("@seafile/slate");
10
- var _slateReact = require("@seafile/slate-react");
11
- var _helpers = require("./helpers");
12
- require("./index.css");
13
- const Video = _ref => {
14
- var _videoStates$element$;
15
- let {
16
- element,
17
- editor
18
- } = _ref;
19
- const {
20
- data
21
- } = element;
22
- const videoRef = (0, _react.useRef)(null);
23
- const [isLoaded, setIsLoaded] = (0, _react.useState)(false);
24
- const [isSelected, setIsSelected] = (0, _react.useState)(false);
25
- const [videoStates, setVideoStates] = (0, _react.useState)({});
26
- const videoName = (data === null || data === void 0 ? void 0 : data.name) || (data === null || data === void 0 ? void 0 : data.src);
27
- const videoSize = data === null || data === void 0 ? void 0 : data.size;
28
- const isEmbeddableLink = data === null || data === void 0 ? void 0 : data.is_embeddable_link;
29
- const readonly = (0, _slateReact.useReadOnly)();
30
- const handlePlay = () => {
31
- setVideoStates(prev => ({
32
- ...prev,
33
- [element.id]: false
34
- }));
35
- };
36
- const handlePause = () => {
37
- setVideoStates(prev => ({
38
- ...prev,
39
- [element.id]: true
40
- }));
41
- };
42
- const isPaused = (_videoStates$element$ = videoStates[element.id]) !== null && _videoStates$element$ !== void 0 ? _videoStates$element$ : true;
43
- const handleVideoLoad = () => {
44
- setIsLoaded(true);
45
- };
46
- const onClickVideo = (0, _react.useCallback)(e => {
47
- e.stopPropagation();
48
- const path = _slateReact.ReactEditor.findPath(editor, element);
49
- _slate.Transforms.select(editor, path);
50
- setIsSelected(true);
51
- }, [editor, element]);
52
- const onClickOutside = (0, _react.useCallback)(e => {
53
- e.stopPropagation();
54
- if (videoRef.current && !videoRef.current.contains(e.target)) {
55
- setIsSelected(false);
56
- }
57
- }, []);
58
- (0, _react.useEffect)(() => {
59
- const videoElement = videoRef.current;
60
- if (videoElement) {
61
- videoElement.addEventListener('loadeddata', handleVideoLoad);
62
- }
63
- document.addEventListener('click', onClickOutside);
64
- return () => {
65
- if (videoElement) {
66
- videoElement.removeEventListener('loadeddata', handleVideoLoad);
67
- }
68
- document.removeEventListener('click', onClickOutside);
69
- };
70
- }, [onClickOutside]);
71
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !isLoaded && /*#__PURE__*/_react.default.createElement("div", {
72
- className: "video-loading-placeholder"
73
- }, /*#__PURE__*/_react.default.createElement("img", {
74
- className: "video-file-icon",
75
- src: (0, _helpers.videoFileIcon)(),
76
- alt: ""
77
- }), /*#__PURE__*/_react.default.createElement("div", {
78
- className: "video-file-info"
79
- }, /*#__PURE__*/_react.default.createElement("div", null, videoName), /*#__PURE__*/_react.default.createElement("div", {
80
- className: "file-size"
81
- }, /*#__PURE__*/_react.default.createElement("span", null, (0, _helpers.formatFileSize)(videoSize), " \u2014 "), /*#__PURE__*/_react.default.createElement("div", {
82
- className: "loading-spinner"
83
- }, /*#__PURE__*/_react.default.createElement("div", {
84
- className: "spinner"
85
- }))))), /*#__PURE__*/_react.default.createElement("div", {
86
- "data-id": element.id,
87
- className: "sdoc-video-wrapper",
88
- style: {
89
- display: isLoaded ? 'block' : 'none'
90
- }
91
- }, /*#__PURE__*/_react.default.createElement("div", {
92
- className: "sdoc-video-inner",
93
- style: {
94
- visibility: isLoaded ? 'visible' : 'hidden'
95
- }
96
- }, !isEmbeddableLink && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("video", {
97
- className: "sdoc-video-element",
98
- ref: videoRef,
99
- src: (0, _helpers.getVideoURL)(data),
100
- controls: true,
101
- controlsList: readonly && 'nofullscreen',
102
- onClick: onClickVideo,
103
- draggable: false,
104
- onPlay: handlePlay,
105
- onPause: handlePause,
106
- onCanPlay: handleVideoLoad,
107
- style: {
108
- boxShadow: isSelected ? '0 0 0 2px #007bff' : 'none'
109
- }
110
- }), /*#__PURE__*/_react.default.createElement("div", {
111
- className: "sdoc-video-play sdocfont sdoc-play icon-font",
112
- style: {
113
- visibility: isPaused ? 'visible' : 'hidden'
114
- },
115
- contentEditable: "false"
116
- })), isEmbeddableLink && /*#__PURE__*/_react.default.createElement("iframe", {
117
- className: "sdoc-video-element",
118
- title: data.src,
119
- allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
120
- allowFullScreen: true,
121
- src: (0, _helpers.getVideoURL)(data),
122
- onLoad: handleVideoLoad,
123
- style: {
124
- width: '100%',
125
- height: '100%',
126
- border: 'none'
127
- }
128
- }))));
129
- };
130
- const SdocVideo = Video;
131
- function renderVideo(props, editor) {
132
- const {
133
- element,
134
- children,
135
- attributes
136
- } = props;
137
- return /*#__PURE__*/_react.default.createElement("div", Object.assign({
138
- className: "sdoc-video-wrapper"
139
- }, attributes, {
140
- contentEditable: "true",
141
- suppressContentEditableWarning: true
142
- }), /*#__PURE__*/_react.default.createElement("div", {
143
- className: "sdoc-video-children-wrapper",
144
- contentEditable: "false",
145
- suppressContentEditableWarning: true,
146
- style: {
147
- userSelect: 'none',
148
- pointerEvents: 'none'
149
- }
150
- }, children), /*#__PURE__*/_react.default.createElement(SdocVideo, {
151
- element: element,
152
- editor: editor
153
- }));
154
- }
@@ -1,77 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.insertWikiPageLink = exports.getWikiUrl = exports.generateWikiFileNode = void 0;
8
- var _slate = require("@seafile/slate");
9
- var _slugid = _interopRequireDefault(require("slugid"));
10
- var _context = _interopRequireDefault(require("../../../context"));
11
- var _constants = require("../../constants");
12
- var _elementType = require("../../constants/element-type");
13
- var _helpers = require("../sdoc-link/helpers");
14
- const insertWikiPageLink = (editor, text, wikiRepoId, pageId, icon, isDir) => {
15
- if ((0, _helpers.isMenuDisabled)(editor)) return;
16
- // Selection folded or not
17
- const {
18
- selection
19
- } = editor;
20
- if (selection == null) return;
21
- const isCollapsed = _slate.Range.isCollapsed(selection);
22
-
23
- // Remove shortcut symbol,if trigger by shortcut
24
- (0, _helpers.removeShortCutSymbol)(editor);
25
- const wikiLinkNode = generateWikiFileNode(wikiRepoId, pageId, text, icon, isDir);
26
- if (isCollapsed) {
27
- _slate.Transforms.insertNodes(editor, wikiLinkNode);
28
- } else {
29
- const selectedText = _slate.Editor.string(editor, selection); // Selected text
30
- if (selectedText !== text) {
31
- // If the selected text is different from the typed text, delete the text and insert the link
32
- editor.deleteFragment();
33
- _slate.Transforms.insertNodes(editor, wikiLinkNode);
34
- } else {
35
- // If the selected text is the same as the entered text, only the link can be wrapped
36
- _slate.Transforms.wrapNodes(editor, wikiLinkNode, {
37
- split: true
38
- });
39
- _slate.Transforms.collapse(editor, {
40
- edge: 'end'
41
- });
42
- }
43
- }
44
- };
45
- exports.insertWikiPageLink = insertWikiPageLink;
46
- const generateWikiFileNode = function (wikiRepoId, pageId) {
47
- let title = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
48
- let icon = arguments.length > 3 ? arguments[3] : undefined;
49
- let isDir = arguments.length > 4 ? arguments[4] : undefined;
50
- const wikiPageLinkNode = {
51
- id: _slugid.default.nice(),
52
- type: _elementType.WIKI_LINK,
53
- wiki_repo_id: wikiRepoId,
54
- page_id: pageId,
55
- title: title,
56
- icon,
57
- isDir,
58
- display_type: _constants.INSERT_FILE_DISPLAY_TYPE[1],
59
- children: [{
60
- id: _slugid.default.nice(),
61
- text: title
62
- }]
63
- };
64
- return wikiPageLinkNode;
65
- };
66
- exports.generateWikiFileNode = generateWikiFileNode;
67
- const getWikiUrl = (wikiRepoId, pageId, readOnly) => {
68
- if (readOnly) {
69
- const siteRoot = _context.default.getSetting('siteRoot');
70
- const publishUrl = _context.default.getSetting('publishUrl');
71
- const DEFAULT_URL = 'wiki/publish';
72
- return `${siteRoot}${DEFAULT_URL}/${publishUrl}/${pageId}/`;
73
- }
74
- const siteRoot = _context.default.getSetting('siteRoot');
75
- return `${siteRoot}wikis/${wikiRepoId}/${pageId}/`;
76
- };
77
- exports.getWikiUrl = getWikiUrl;