@seafile/comment-editor 0.0.1 → 0.0.2

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 (305) 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/extension/commons/index.js +1 -22
  7. package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +0 -136
  8. package/dist/basic-sdk/extension/commons/menu/menu-item.js +1 -6
  9. package/dist/basic-sdk/extension/constants/element-type.js +2 -36
  10. package/dist/basic-sdk/extension/constants/index.js +4 -421
  11. package/dist/basic-sdk/extension/constants/menus-config.js +2 -402
  12. package/dist/basic-sdk/extension/core/queries/index.js +0 -3
  13. package/dist/basic-sdk/extension/core/transforms/index.js +0 -11
  14. package/dist/basic-sdk/extension/index.js +3 -24
  15. package/dist/basic-sdk/extension/plugins/blockquote/helpers.js +1 -28
  16. package/dist/basic-sdk/extension/plugins/blockquote/plugin.js +2 -2
  17. package/dist/basic-sdk/extension/plugins/html/helper.js +0 -1
  18. package/dist/basic-sdk/extension/plugins/html/plugin.js +0 -24
  19. package/dist/basic-sdk/extension/plugins/html/rules/index.js +1 -4
  20. package/dist/basic-sdk/extension/plugins/image/helpers.js +2 -5
  21. package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +1 -1
  22. package/dist/basic-sdk/extension/plugins/image/plugin.js +0 -14
  23. package/dist/basic-sdk/extension/plugins/image/render-elem.js +0 -7
  24. package/dist/basic-sdk/extension/plugins/index.js +1 -102
  25. package/dist/basic-sdk/extension/plugins/link/helpers.js +2 -16
  26. package/dist/basic-sdk/extension/plugins/link/plugin.js +5 -13
  27. package/dist/basic-sdk/extension/plugins/list/helpers.js +0 -4
  28. package/dist/basic-sdk/extension/plugins/list/plugin/normalize-list.js +1 -1
  29. package/dist/basic-sdk/extension/plugins/list/transforms/move-list-item-sublist-to-list-item-sublist.js +2 -9
  30. package/dist/basic-sdk/extension/plugins/list/transforms/normalize-list-item.js +1 -1
  31. package/dist/basic-sdk/extension/plugins/markdown/plugin.js +1 -6
  32. package/dist/basic-sdk/extension/plugins/paragraph/render-elem.js +1 -9
  33. package/dist/basic-sdk/extension/plugins/text-style/helpers.js +0 -8
  34. package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +0 -75
  35. package/dist/basic-sdk/extension/render/render-comment-editor-element.js +0 -7
  36. package/dist/basic-sdk/extension/utils/index.js +1 -51
  37. package/dist/basic-sdk/index.js +1 -40
  38. package/dist/basic-sdk/slate-convert/html-to-slate/constants.js +3 -18
  39. package/dist/basic-sdk/slate-convert/html-to-slate/index.js +0 -1
  40. package/dist/basic-sdk/slate-convert/html-to-slate/rules/index.js +1 -4
  41. package/dist/basic-sdk/slate-convert/md-to-slate/transform.js +1 -90
  42. package/dist/basic-sdk/slate-convert/slate-to-md/transform.js +0 -89
  43. package/dist/basic-sdk/utils/common-utils.js +1 -39
  44. package/dist/basic-sdk/utils/document-utils.js +2 -31
  45. package/dist/basic-sdk/utils/event-handler.js +2 -18
  46. package/dist/basic-sdk/utils/mouse-event.js +2 -57
  47. package/dist/constants/index.js +2 -59
  48. package/dist/pages/seafile-comment-editor.js +2 -4
  49. package/package.json +1 -14
  50. package/public/index.html +0 -1
  51. package/dist/assets/css/simple-editor.css +0 -9
  52. package/dist/assets/images/content-replaced.png +0 -0
  53. package/dist/assets/images/revision-avatar.png +0 -0
  54. package/dist/assets/images/sdoc-freezed.png +0 -0
  55. package/dist/basic-sdk/android/constants.js +0 -10
  56. package/dist/basic-sdk/android/js-bridge.js +0 -74
  57. package/dist/basic-sdk/android/outline-module.js +0 -29
  58. package/dist/basic-sdk/api/sdoc-server-api.js +0 -189
  59. package/dist/basic-sdk/api/seafile-api.js +0 -220
  60. package/dist/basic-sdk/assets/css/diff-viewer.css +0 -5
  61. package/dist/basic-sdk/assets/images/sdoc-ask-ai.png +0 -0
  62. package/dist/basic-sdk/components/file-loading/index.css +0 -57
  63. package/dist/basic-sdk/components/file-loading/index.js +0 -15
  64. package/dist/basic-sdk/constants/plugin.js +0 -10
  65. package/dist/basic-sdk/constants/z-index.js +0 -8
  66. package/dist/basic-sdk/extension/commons/color-menu/color-item.js +0 -33
  67. package/dist/basic-sdk/extension/commons/color-menu/index.css +0 -161
  68. package/dist/basic-sdk/extension/commons/color-menu/index.js +0 -210
  69. package/dist/basic-sdk/extension/commons/file-insert-dialog/index.js +0 -282
  70. package/dist/basic-sdk/extension/commons/file-insert-dialog/style.css +0 -91
  71. package/dist/basic-sdk/extension/commons/more-dropdown/index.js +0 -44
  72. package/dist/basic-sdk/extension/commons/search-list/index.css +0 -28
  73. package/dist/basic-sdk/extension/commons/search-list/index.js +0 -149
  74. package/dist/basic-sdk/extension/commons/select/_option.js +0 -39
  75. package/dist/basic-sdk/extension/commons/select/field-setting.js +0 -109
  76. package/dist/basic-sdk/extension/commons/select/index.js +0 -142
  77. package/dist/basic-sdk/extension/commons/select/menu/index.js +0 -11
  78. package/dist/basic-sdk/extension/commons/select/menu/item.js +0 -39
  79. package/dist/basic-sdk/extension/commons/select/menu/menu.js +0 -34
  80. package/dist/basic-sdk/extension/commons/select/menu/style.css +0 -43
  81. package/dist/basic-sdk/extension/commons/select/style.css +0 -149
  82. package/dist/basic-sdk/extension/commons/select-file-dialog/helpers.js +0 -54
  83. package/dist/basic-sdk/extension/commons/select-file-dialog/index.css +0 -135
  84. package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +0 -207
  85. package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.css +0 -114
  86. package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +0 -193
  87. package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/index.js +0 -274
  88. package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/style.css +0 -116
  89. package/dist/basic-sdk/extension/constants/color.js +0 -282
  90. package/dist/basic-sdk/extension/constants/diff-view.js +0 -20
  91. package/dist/basic-sdk/extension/constants/font.js +0 -537
  92. package/dist/basic-sdk/extension/constants/keyboard.js +0 -45
  93. package/dist/basic-sdk/extension/core/transforms/update-parent-node.js +0 -34
  94. package/dist/basic-sdk/extension/plugins/ai/ai-icon/index.js +0 -26
  95. package/dist/basic-sdk/extension/plugins/ai/ai-icon/style.css +0 -22
  96. package/dist/basic-sdk/extension/plugins/ai/ai-menu/ai-context-menu.js +0 -41
  97. package/dist/basic-sdk/extension/plugins/ai/ai-menu/ai-dropdown-menu.js +0 -35
  98. package/dist/basic-sdk/extension/plugins/ai/ai-menu/index.js +0 -20
  99. package/dist/basic-sdk/extension/plugins/ai/ai-menu/menu-item.js +0 -58
  100. package/dist/basic-sdk/extension/plugins/ai/ai-menu/style.css +0 -12
  101. package/dist/basic-sdk/extension/plugins/ai/ai-module/adjust-sub-menu.js +0 -44
  102. package/dist/basic-sdk/extension/plugins/ai/ai-module/helpers.js +0 -72
  103. package/dist/basic-sdk/extension/plugins/ai/ai-module/index.js +0 -600
  104. package/dist/basic-sdk/extension/plugins/ai/ai-module/lang-sub-menu.js +0 -55
  105. package/dist/basic-sdk/extension/plugins/ai/ai-module/style.css +0 -148
  106. package/dist/basic-sdk/extension/plugins/ai/ai-module/tip-dialog.js +0 -41
  107. package/dist/basic-sdk/extension/plugins/ai/constants/index.js +0 -137
  108. package/dist/basic-sdk/extension/plugins/ai/index.js +0 -1
  109. package/dist/basic-sdk/extension/plugins/callout/constant.js +0 -58
  110. package/dist/basic-sdk/extension/plugins/callout/helper.js +0 -281
  111. package/dist/basic-sdk/extension/plugins/callout/index.js +0 -19
  112. package/dist/basic-sdk/extension/plugins/callout/menu/index.css +0 -16
  113. package/dist/basic-sdk/extension/plugins/callout/menu/index.js +0 -52
  114. package/dist/basic-sdk/extension/plugins/callout/plugin.js +0 -109
  115. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-color-selector/index.js +0 -65
  116. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-color-selector/style.css +0 -39
  117. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-hover-menu/index.js +0 -90
  118. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-hover-menu/style.css +0 -45
  119. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-icon/index.js +0 -45
  120. package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-icon/style.css +0 -33
  121. package/dist/basic-sdk/extension/plugins/callout/render-elem/index.css +0 -52
  122. package/dist/basic-sdk/extension/plugins/callout/render-elem/index.js +0 -134
  123. package/dist/basic-sdk/extension/plugins/check-list/helpers.js +0 -121
  124. package/dist/basic-sdk/extension/plugins/check-list/index.js +0 -16
  125. package/dist/basic-sdk/extension/plugins/check-list/menu/index.js +0 -58
  126. package/dist/basic-sdk/extension/plugins/check-list/model.js +0 -17
  127. package/dist/basic-sdk/extension/plugins/check-list/plugin.js +0 -110
  128. package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +0 -71
  129. package/dist/basic-sdk/extension/plugins/clear-format/helpers.js +0 -54
  130. package/dist/basic-sdk/extension/plugins/clear-format/menu/index.js +0 -35
  131. package/dist/basic-sdk/extension/plugins/code-block/helpers.js +0 -206
  132. package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.css +0 -148
  133. package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +0 -259
  134. package/dist/basic-sdk/extension/plugins/code-block/index.js +0 -19
  135. package/dist/basic-sdk/extension/plugins/code-block/menu/index.js +0 -35
  136. package/dist/basic-sdk/extension/plugins/code-block/model.js +0 -16
  137. package/dist/basic-sdk/extension/plugins/code-block/plugin.js +0 -229
  138. package/dist/basic-sdk/extension/plugins/code-block/prismjs.js +0 -189
  139. package/dist/basic-sdk/extension/plugins/code-block/render-elem.js +0 -182
  140. package/dist/basic-sdk/extension/plugins/file-link/constants/index.js +0 -26
  141. package/dist/basic-sdk/extension/plugins/file-link/helpers.js +0 -125
  142. package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.css +0 -89
  143. package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +0 -122
  144. package/dist/basic-sdk/extension/plugins/file-link/index.js +0 -18
  145. package/dist/basic-sdk/extension/plugins/file-link/menu/index.js +0 -38
  146. package/dist/basic-sdk/extension/plugins/file-link/plugin.js +0 -72
  147. package/dist/basic-sdk/extension/plugins/file-link/render-elem.css +0 -56
  148. package/dist/basic-sdk/extension/plugins/file-link/render-elem.js +0 -164
  149. package/dist/basic-sdk/extension/plugins/font/helpers.js +0 -173
  150. package/dist/basic-sdk/extension/plugins/font/index.js +0 -13
  151. package/dist/basic-sdk/extension/plugins/font/menu/font-family/font-item.js +0 -39
  152. package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.css +0 -40
  153. package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.js +0 -145
  154. package/dist/basic-sdk/extension/plugins/font/menu/font-size/font-size-scale.js +0 -38
  155. package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.css +0 -40
  156. package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.js +0 -103
  157. package/dist/basic-sdk/extension/plugins/font/menu/index.js +0 -24
  158. package/dist/basic-sdk/extension/plugins/font/plugin.js +0 -18
  159. package/dist/basic-sdk/extension/plugins/group/index.js +0 -13
  160. package/dist/basic-sdk/extension/plugins/group/render-elem.js +0 -25
  161. package/dist/basic-sdk/extension/plugins/header/helpers.js +0 -69
  162. package/dist/basic-sdk/extension/plugins/header/index.js +0 -17
  163. package/dist/basic-sdk/extension/plugins/header/menu/index.js +0 -153
  164. package/dist/basic-sdk/extension/plugins/header/menu/style.css +0 -79
  165. package/dist/basic-sdk/extension/plugins/header/plugin.js +0 -140
  166. package/dist/basic-sdk/extension/plugins/header/render-elem.js +0 -90
  167. package/dist/basic-sdk/extension/plugins/history/history-menu.js +0 -70
  168. package/dist/basic-sdk/extension/plugins/html/rules/check-list.js +0 -27
  169. package/dist/basic-sdk/extension/plugins/html/rules/code-block.js +0 -89
  170. package/dist/basic-sdk/extension/plugins/html/rules/header.js +0 -32
  171. package/dist/basic-sdk/extension/plugins/html/rules/table.js +0 -41
  172. package/dist/basic-sdk/extension/plugins/multi-column/constants/index.js +0 -7
  173. package/dist/basic-sdk/extension/plugins/multi-column/helper.js +0 -192
  174. package/dist/basic-sdk/extension/plugins/multi-column/index.js +0 -17
  175. package/dist/basic-sdk/extension/plugins/multi-column/plugin.js +0 -153
  176. package/dist/basic-sdk/extension/plugins/multi-column/render/index.css +0 -51
  177. package/dist/basic-sdk/extension/plugins/multi-column/render/index.js +0 -91
  178. package/dist/basic-sdk/extension/plugins/multi-column/render/multi-column-root.js +0 -23
  179. package/dist/basic-sdk/extension/plugins/multi-column/render/render-column.js +0 -46
  180. package/dist/basic-sdk/extension/plugins/multi-column/render-elem.js +0 -20
  181. package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/column-resize-handler.js +0 -28
  182. package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/index.js +0 -148
  183. package/dist/basic-sdk/extension/plugins/sdoc-link/constants/index.js +0 -26
  184. package/dist/basic-sdk/extension/plugins/sdoc-link/helpers.js +0 -291
  185. package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.css +0 -89
  186. package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.js +0 -121
  187. package/dist/basic-sdk/extension/plugins/sdoc-link/index.js +0 -19
  188. package/dist/basic-sdk/extension/plugins/sdoc-link/menu/index.js +0 -38
  189. package/dist/basic-sdk/extension/plugins/sdoc-link/plugin.js +0 -102
  190. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-elem.css +0 -68
  191. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-elem.js +0 -180
  192. package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-file-link-temp-input.js +0 -34
  193. package/dist/basic-sdk/extension/plugins/search-replace/constant.js +0 -8
  194. package/dist/basic-sdk/extension/plugins/search-replace/helper.js +0 -355
  195. package/dist/basic-sdk/extension/plugins/search-replace/index.js +0 -17
  196. package/dist/basic-sdk/extension/plugins/search-replace/menu/index.css +0 -14
  197. package/dist/basic-sdk/extension/plugins/search-replace/menu/index.js +0 -89
  198. package/dist/basic-sdk/extension/plugins/search-replace/plugin.js +0 -28
  199. package/dist/basic-sdk/extension/plugins/search-replace/popover/index.css +0 -98
  200. package/dist/basic-sdk/extension/plugins/search-replace/popover/index.js +0 -238
  201. package/dist/basic-sdk/extension/plugins/search-replace/popover/replace-all-confirm-modal.js +0 -50
  202. package/dist/basic-sdk/extension/plugins/table/constants/index.js +0 -64
  203. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/index.css +0 -7
  204. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/index.js +0 -102
  205. package/dist/basic-sdk/extension/plugins/table/dialogs/custom-table-size-dialog/number-input.js +0 -31
  206. package/dist/basic-sdk/extension/plugins/table/dialogs/index.js +0 -20
  207. package/dist/basic-sdk/extension/plugins/table/dialogs/split-cell-setting-dialog.js +0 -115
  208. package/dist/basic-sdk/extension/plugins/table/helpers.js +0 -2124
  209. package/dist/basic-sdk/extension/plugins/table/index.js +0 -21
  210. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/common-menu.js +0 -83
  211. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/color-item.js +0 -33
  212. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/index.js +0 -173
  213. package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/style.css +0 -7
  214. package/dist/basic-sdk/extension/plugins/table/menu/horizontal-align-popover/index.js +0 -79
  215. package/dist/basic-sdk/extension/plugins/table/menu/index.js +0 -20
  216. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.css +0 -40
  217. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.js +0 -232
  218. package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/insert-table-element.js +0 -97
  219. package/dist/basic-sdk/extension/plugins/table/menu/table-menu/index.js +0 -40
  220. package/dist/basic-sdk/extension/plugins/table/menu/vertical-align-popover/index.js +0 -81
  221. package/dist/basic-sdk/extension/plugins/table/menu/vertical-align-popover/style.css +0 -24
  222. package/dist/basic-sdk/extension/plugins/table/model.js +0 -54
  223. package/dist/basic-sdk/extension/plugins/table/plugin.js +0 -621
  224. package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.css +0 -69
  225. package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.js +0 -265
  226. package/dist/basic-sdk/extension/plugins/table/popover/table-template/index.css +0 -43
  227. package/dist/basic-sdk/extension/plugins/table/popover/table-template/index.js +0 -129
  228. package/dist/basic-sdk/extension/plugins/table/popover/table-template/sample-table.js +0 -44
  229. package/dist/basic-sdk/extension/plugins/table/render/alternate-color.css +0 -37
  230. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/column-drag-handler.js +0 -24
  231. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/index.js +0 -53
  232. package/dist/basic-sdk/extension/plugins/table/render/drag-handlers/row-drag-handler.js +0 -24
  233. package/dist/basic-sdk/extension/plugins/table/render/hooks.js +0 -76
  234. package/dist/basic-sdk/extension/plugins/table/render/index.css +0 -169
  235. package/dist/basic-sdk/extension/plugins/table/render/index.js +0 -271
  236. package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +0 -253
  237. package/dist/basic-sdk/extension/plugins/table/render/render-row.js +0 -15
  238. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/column-resize-handler.js +0 -114
  239. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/first-column-left-resize-handler.js +0 -100
  240. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/index.js +0 -74
  241. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/row-resize-handler.js +0 -90
  242. package/dist/basic-sdk/extension/plugins/table/render/resize-mask/index.js +0 -136
  243. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/column-header.js +0 -104
  244. package/dist/basic-sdk/extension/plugins/table/render/table-header/columns-header/index.js +0 -92
  245. package/dist/basic-sdk/extension/plugins/table/render/table-header/index.css +0 -84
  246. package/dist/basic-sdk/extension/plugins/table/render/table-header/index.js +0 -114
  247. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-columns-header.js +0 -32
  248. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/index.js +0 -90
  249. package/dist/basic-sdk/extension/plugins/table/render/table-header/rows-header/row-header.js +0 -126
  250. package/dist/basic-sdk/extension/plugins/table/render/table-root.js +0 -60
  251. package/dist/basic-sdk/extension/plugins/table/render-elem.js +0 -27
  252. package/dist/basic-sdk/extension/plugins/text-align/helpers.js +0 -51
  253. package/dist/basic-sdk/extension/plugins/text-align/index.js +0 -8
  254. package/dist/basic-sdk/extension/plugins/text-align/menu/index.css +0 -5
  255. package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +0 -98
  256. package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +0 -164
  257. package/dist/basic-sdk/extension/plugins/video/constants/index.js +0 -10
  258. package/dist/basic-sdk/extension/plugins/video/dialog/add-video-link-dialog/index.js +0 -108
  259. package/dist/basic-sdk/extension/plugins/video/helpers.js +0 -241
  260. package/dist/basic-sdk/extension/plugins/video/index.css +0 -73
  261. package/dist/basic-sdk/extension/plugins/video/index.js +0 -20
  262. package/dist/basic-sdk/extension/plugins/video/menu/index.js +0 -76
  263. package/dist/basic-sdk/extension/plugins/video/plugin.js +0 -52
  264. package/dist/basic-sdk/extension/plugins/video/render-elem.js +0 -154
  265. package/dist/basic-sdk/extension/plugins/wiki-link/helpers.js +0 -77
  266. package/dist/basic-sdk/extension/plugins/wiki-link/index.js +0 -16
  267. package/dist/basic-sdk/extension/render/helper.js +0 -64
  268. package/dist/basic-sdk/highlight/index.js +0 -26
  269. package/dist/basic-sdk/highlight/setNodeToDecorations.js +0 -83
  270. package/dist/basic-sdk/hooks/use-color-context.js +0 -49
  271. package/dist/basic-sdk/hooks/use-force-update.js +0 -15
  272. package/dist/basic-sdk/hooks/use-selection-element.js +0 -26
  273. package/dist/basic-sdk/hooks/use-selection-position.js +0 -68
  274. package/dist/basic-sdk/slate-convert/html-to-slate/rules/code-block.js +0 -90
  275. package/dist/basic-sdk/slate-convert/html-to-slate/rules/header.js +0 -24
  276. package/dist/basic-sdk/slate-convert/html-to-slate/rules/table.js +0 -45
  277. package/dist/basic-sdk/socket/helpers.js +0 -312
  278. package/dist/basic-sdk/utils/Kebab-to-camel.js +0 -10
  279. package/dist/basic-sdk/utils/debounce.js +0 -20
  280. package/dist/basic-sdk/utils/debug.js +0 -20
  281. package/dist/basic-sdk/utils/default-mode.js +0 -28
  282. package/dist/basic-sdk/utils/diff-text.js +0 -297
  283. package/dist/basic-sdk/utils/diff.js +0 -328
  284. package/dist/basic-sdk/utils/dom-utils.js +0 -57
  285. package/dist/basic-sdk/utils/full-width-mode.js +0 -36
  286. package/dist/basic-sdk/utils/local-storage-utils.js +0 -52
  287. package/dist/basic-sdk/utils/rebase.js +0 -309
  288. package/dist/components/error-boundary/error-page.css +0 -16
  289. package/dist/components/error-boundary/error-page.js +0 -36
  290. package/dist/components/error-boundary/index.js +0 -33
  291. package/dist/components/modal-header/index.css +0 -18
  292. package/dist/components/modal-header/index.js +0 -29
  293. package/dist/components/modal-portal/index.js +0 -26
  294. package/dist/components/tip-dialog/index.css +0 -48
  295. package/dist/components/tip-dialog/index.js +0 -115
  296. package/dist/utils/date-utils.js +0 -78
  297. package/dist/utils/index.js +0 -45
  298. package/public/media/dtable-font.css +0 -1568
  299. package/public/media/dtable-fonts/dtable-font.eot +0 -0
  300. package/public/media/dtable-fonts/dtable-font.svg +0 -793
  301. package/public/media/dtable-fonts/dtable-font.ttf +0 -0
  302. package/public/media/dtable-fonts/dtable-font.woff +0 -0
  303. package/public/media/dtable-fonts/dtable-font.woff2 +0 -0
  304. package/public/media/seafile-logo.png +0 -0
  305. /package/dist/basic-sdk/{extension/plugins/header → components/placeholder}/placeholder.js +0 -0
@@ -1,52 +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 _toast = _interopRequireDefault(require("../../../../components/toast"));
12
- var _constants = require("../../../../constants");
13
- var _eventBus = _interopRequireDefault(require("../../../../utils/event-bus"));
14
- var _commons = require("../../../commons");
15
- var _constants2 = require("../../../constants");
16
- var _elementType = require("../../../constants/element-type");
17
- var _helper = require("../helper");
18
- const menuConfig = _constants2.MENUS_CONFIG_MAP[_elementType.CALL_OUT];
19
- const CalloutMenu = _ref => {
20
- let {
21
- editor,
22
- isRichEditor,
23
- className,
24
- readonly
25
- } = _ref;
26
- const {
27
- t
28
- } = (0, _reactI18next.useTranslation)('sdoc-editor');
29
- const handleDisplayAlert = (0, _react.useCallback)(type => {
30
- setTimeout(() => {
31
- _toast.default.warning(`${t('The_current_location_does_not_support_pasting')}${t(type && type.at(0).toUpperCase() + type.slice(1))}`);
32
- }, 0);
33
- // eslint-disable-next-line react-hooks/exhaustive-deps
34
- }, []);
35
- (0, _react.useEffect)(() => {
36
- const eventBus = _eventBus.default.getInstance();
37
- const unsubscribe = eventBus.subscribe(_constants.INTERNAL_EVENT.DISPLAY_CALLOUT_UNSUPPORT_ALERT, handleDisplayAlert);
38
- return unsubscribe;
39
- }, [handleDisplayAlert]);
40
- const handleClick = (0, _react.useCallback)(e => {
41
- (0, _helper.isMenuActive)(editor) ? (0, _helper.unwrapCallout)(editor) : (0, _helper.wrapCallout)(editor);
42
- }, [editor]);
43
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_commons.MenuItem, Object.assign({
44
- isRichEditor: isRichEditor,
45
- className: className,
46
- ariaLabel: "callout",
47
- disabled: (0, _helper.isMenuDisabled)(editor, readonly),
48
- isActive: (0, _helper.isMenuActive)(editor),
49
- onMouseDown: handleClick
50
- }, menuConfig)));
51
- };
52
- var _default = exports.default = CalloutMenu;
@@ -1,109 +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 _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
12
- var _constants2 = require("../../constants");
13
- var _core = require("../../core");
14
- var _constant = require("./constant");
15
- var _helper = require("./helper");
16
- /**
17
- * @param {Editor} editor
18
- * @returns
19
- */
20
- const withCallout = editor => {
21
- const {
22
- insertFragment,
23
- deleteBackward,
24
- onHotKeyDown,
25
- insertData
26
- } = editor;
27
- const newEditor = editor;
28
- newEditor.deleteBackward = unit => {
29
- const calloutEntry = (0, _helper.getCalloutEntry)(editor);
30
- if (calloutEntry) {
31
- const node = calloutEntry[0];
32
- if ((0, _core.isSelectionAtBlockStart)(editor) && !!node.callout_icon) {
33
- (0, _helper.deleteCalloutIcon)(editor);
34
- return;
35
- }
36
- if ((0, _core.isSelectionAtBlockStart)(editor) && (0, _helper.isCalloutContentEmpty)(calloutEntry)) {
37
- (0, _helper.unwrapCallout)(editor);
38
- return;
39
- }
40
- }
41
- return deleteBackward(unit);
42
- };
43
- newEditor.insertData = data => {
44
- if ((0, _helper.getCalloutEntry)(newEditor)) {
45
- if (data.types.includes('text/code-block')) {
46
- const eventBus = _eventBus.default.getInstance();
47
- eventBus.dispatch(_constants.INTERNAL_EVENT.DISPLAY_CALLOUT_UNSUPPORT_ALERT, _constants2.CODE_BLOCK);
48
- return;
49
- }
50
- }
51
- return insertData(data);
52
- };
53
- newEditor.insertFragment = data => {
54
- if ((0, _helper.getCalloutEntry)(editor)) {
55
- var _data$find;
56
- // No paste any unsupportedType content into callout
57
- const unsupportedType = (_data$find = data.find(node => !_constant.CALLOUT_ALLOWED_INSIDE_TYPES.includes(node.type))) === null || _data$find === void 0 ? void 0 : _data$find.type;
58
- if (unsupportedType) {
59
- const eventBus = _eventBus.default.getInstance();
60
- eventBus.dispatch(_constants.INTERNAL_EVENT.DISPLAY_CALLOUT_UNSUPPORT_ALERT, unsupportedType);
61
- return;
62
- }
63
-
64
- // Unwrap the callout nodes if nested within another callout
65
- const hasCalloutNode = data.some(node => node.type === _constants2.CALL_OUT);
66
- if (hasCalloutNode) {
67
- const newData = data.flatMap(node => node.type === _constants2.CALL_OUT ? node.children : [node]);
68
- insertFragment(newData);
69
- } else {
70
- insertFragment(data);
71
- }
72
- return;
73
- }
74
- return insertFragment(data);
75
- };
76
- newEditor.onHotKeyDown = event => {
77
- const calloutEntry = (0, _helper.getCalloutEntry)(editor);
78
- if (calloutEntry) {
79
- const [, calloutPath] = calloutEntry;
80
- // Close color picker
81
- const eventBus = _eventBus.default.getInstance();
82
- eventBus.dispatch(_constants.INTERNAL_EVENT.CLOSE_CALLOUT_COLOR_PICKER);
83
- if ((0, _isHotkey.default)('mod+enter', event)) {
84
- (0, _helper.insertElement)(newEditor, _constants2.PARAGRAPH, _constants2.INSERT_POSITION.AFTER);
85
- return true;
86
- }
87
- if ((0, _isHotkey.default)('mod+a', event)) {
88
- event.preventDefault();
89
- try {
90
- const startPoint = _slate.Editor.start(newEditor, calloutPath);
91
- const endPoint = _slate.Editor.end(newEditor, calloutPath);
92
- const selectRange = _slate.Editor.range(newEditor, startPoint, endPoint);
93
- _slate.Transforms.select(newEditor, selectRange);
94
- return true;
95
- } catch (error) {
96
- return true;
97
- }
98
- }
99
- }
100
- return onHotKeyDown && onHotKeyDown(event);
101
- };
102
- newEditor.onCopy = event => {
103
- if ((0, _helper.getCalloutEntry)(editor)) {
104
- event.stopPropagation();
105
- }
106
- };
107
- return newEditor;
108
- };
109
- var _default = exports.default = withCallout;
@@ -1,65 +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.default = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _slate = require("@seafile/slate");
10
- var _core = require("../../../../core");
11
- var _constant = require("../../constant");
12
- var _helper = require("../../helper");
13
- require("./style.css");
14
- const ColorSelector = _ref => {
15
- let {
16
- editor,
17
- element,
18
- onCloseSelector
19
- } = _ref;
20
- const onColorClick = (0, _react.useCallback)(event => {
21
- event.stopPropagation();
22
- let target = event.target;
23
- while (!target.dataset || !target.dataset.backgroundColor) {
24
- target = target.parentNode;
25
- }
26
- const {
27
- backgroundColor
28
- } = target.dataset;
29
- const currentPath = (0, _core.findPath)(editor, element);
30
- _slate.Transforms.select(editor, currentPath);
31
- (0, _helper.changeFillBackgroundColor)(editor, backgroundColor);
32
- onCloseSelector();
33
- }, [editor, element, onCloseSelector]);
34
- const isShowCheckedIcon = (0, _react.useCallback)(currentBackgroundColor => {
35
- const {
36
- background_color
37
- } = element.style || {};
38
- return background_color && background_color === currentBackgroundColor;
39
- }, [element.style]);
40
- return /*#__PURE__*/_react.default.createElement("div", {
41
- className: "sdoc-callout-color-selector-container",
42
- contentEditable: false
43
- }, /*#__PURE__*/_react.default.createElement("ul", {
44
- className: "sdoc-color-selector-list"
45
- }, Object.values(_constant.CALLOUT_COLOR_MAP).map((_ref2, index) => {
46
- let {
47
- border_color,
48
- background_color
49
- } = _ref2;
50
- return /*#__PURE__*/_react.default.createElement("li", {
51
- key: `sdoc-callout-color-selector-${index}`,
52
- className: "sdoc-callout-color-item",
53
- "data-border-color": border_color,
54
- "data-background-color": background_color,
55
- style: {
56
- borderColor: border_color,
57
- backgroundColor: background_color
58
- },
59
- onClick: onColorClick
60
- }, isShowCheckedIcon(background_color) && /*#__PURE__*/_react.default.createElement("i", {
61
- className: "sdoc-callout-color-checked-icon sdocfont sdoc-check-mark"
62
- }));
63
- })));
64
- };
65
- var _default = exports.default = ColorSelector;
@@ -1,39 +0,0 @@
1
- .sdoc-callout-color-selector-container {
2
- position: absolute;
3
- padding: 10px;
4
- left: 0;
5
- top: 36.5px;
6
- background-color: #fff;
7
- border: 1px solid #eee;
8
- border-radius: 3px;
9
- z-index: 100;
10
- }
11
-
12
- .sdoc-callout-color-selector-container .sdoc-color-selector-list {
13
- display: flex;
14
- margin: 0;
15
- padding: 0;
16
- }
17
-
18
- .sdoc-callout-color-selector-container .sdoc-color-selector-list .sdoc-callout-color-item {
19
- position: relative;
20
- margin-right: 10px;
21
- width: 20px;
22
- height: 20px;
23
- list-style: none;
24
- border-width: 1px;
25
- border-style: solid;
26
- border-radius: 3px;
27
- cursor: pointer;
28
- }
29
-
30
- .sdoc-callout-color-selector-container .sdoc-color-selector-list .sdoc-callout-color-item:last-child {
31
- margin-right: 0px;
32
- }
33
-
34
- .sdoc-callout-color-selector-container .sdoc-color-selector-list .sdoc-callout-color-item .sdoc-callout-color-checked-icon {
35
- position: absolute;
36
- top: 1px;
37
- left: 3px;
38
- font-size: 12px;
39
- }
@@ -1,90 +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 = CalloutHoverMenu;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _reactI18next = require("react-i18next");
11
- var _classnames = _interopRequireDefault(require("classnames"));
12
- var _commons = require("../../../../commons");
13
- var _helper = require("../../helper");
14
- var _calloutColorSelector = _interopRequireDefault(require("../callout-color-selector"));
15
- var _calloutIcon = _interopRequireDefault(require("../callout-icon"));
16
- require("./style.css");
17
- function CalloutHoverMenu(_ref) {
18
- let {
19
- editor,
20
- element,
21
- popoverPosition
22
- } = _ref;
23
- const [isShowColorSelector, setIsShowColorSelector] = (0, _react.useState)(false);
24
- const [isShowIcon, setIsShowIcon] = (0, _react.useState)(false);
25
- const {
26
- t
27
- } = (0, _reactI18next.useTranslation)('sdoc-editor');
28
- const onColorSelectorToggle = (0, _react.useCallback)(event => {
29
- event.stopPropagation();
30
- if (!isShowColorSelector) {
31
- setIsShowIcon(false);
32
- }
33
- setIsShowColorSelector(!isShowColorSelector);
34
- }, [isShowColorSelector, setIsShowColorSelector]);
35
- const onIconToggle = (0, _react.useCallback)(event => {
36
- event.stopPropagation();
37
- if (!isShowIcon) {
38
- setIsShowColorSelector(false);
39
- }
40
- setIsShowIcon(!isShowIcon);
41
- }, [isShowIcon, setIsShowIcon]);
42
- const onCloseSelector = (0, _react.useCallback)(() => {
43
- setIsShowColorSelector(false);
44
- setIsShowIcon(false);
45
- }, []);
46
- const firstItemClass = (0, _classnames.default)({
47
- 'callout-menu-item': true,
48
- 'color-active': isShowColorSelector
49
- });
50
- const secondItemClass = (0, _classnames.default)({
51
- 'callout-menu-item': true,
52
- 'icon-active': isShowIcon
53
- });
54
- const handleRemoveIcon = () => {
55
- (0, _helper.setCalloutIcon)(editor, '');
56
- };
57
- return /*#__PURE__*/_react.default.createElement(_commons.ElementPopover, null, /*#__PURE__*/_react.default.createElement("div", {
58
- className: "sdoc-callout-hover-menu",
59
- style: popoverPosition
60
- }, /*#__PURE__*/_react.default.createElement("div", {
61
- className: firstItemClass,
62
- onClick: onColorSelectorToggle
63
- }, /*#__PURE__*/_react.default.createElement("span", {
64
- className: "sdocfont sdoc-callout-color mr-1"
65
- }), /*#__PURE__*/_react.default.createElement("span", {
66
- className: "sdocfont sdoc-drop-down"
67
- })), /*#__PURE__*/_react.default.createElement("div", {
68
- className: "callout-menu-divider"
69
- }), /*#__PURE__*/_react.default.createElement("div", {
70
- className: secondItemClass,
71
- onClick: onIconToggle
72
- }, /*#__PURE__*/_react.default.createElement("span", {
73
- className: "sdocfont sdoc-callout-icon mr-1"
74
- }), /*#__PURE__*/_react.default.createElement("span", {
75
- className: "sdocfont sdoc-drop-down"
76
- })), isShowColorSelector && /*#__PURE__*/_react.default.createElement(_calloutColorSelector.default, {
77
- editor: editor,
78
- element: element,
79
- onCloseSelector: onCloseSelector
80
- }), isShowIcon && /*#__PURE__*/_react.default.createElement(_calloutIcon.default, {
81
- editor: editor,
82
- element: element,
83
- onCloseSelector: onCloseSelector
84
- }), /*#__PURE__*/_react.default.createElement("div", {
85
- className: "callout-menu-divider"
86
- }), /*#__PURE__*/_react.default.createElement("div", {
87
- className: "callout-menu-item",
88
- onClick: handleRemoveIcon
89
- }, t('Remove_icon'))));
90
- }
@@ -1,45 +0,0 @@
1
- .sdoc-callout-hover-menu {
2
- position: absolute;
3
- padding: 7px;
4
- height: 36px;
5
- background-color: #fff;
6
- border: 1px solid #eee;
7
- border-radius: 3px;
8
- z-index: 100;
9
- display: flex;
10
- }
11
-
12
- .sdoc-callout-hover-menu .callout-menu-item {
13
- padding: 0 4px;
14
- display: flex;
15
- justify-content: center;
16
- align-items: center;
17
- font-size: 12px;
18
- color: #212529;
19
- cursor: pointer;
20
- border-radius: 3px;
21
- }
22
-
23
- .sdoc-callout-hover-menu .callout-menu-item:hover {
24
- background-color: #f2f2f2;
25
- }
26
-
27
- .sdoc-callout-hover-menu .callout-menu-item .sdocfont {
28
- font-size: 12px;
29
- color: #444;
30
- }
31
-
32
- .sdoc-callout-hover-menu .callout-menu-item .sdoc-drop-down {
33
- color: #999;
34
- }
35
-
36
- .sdoc-callout-hover-menu .callout-menu-item.color-active,
37
- .sdoc-callout-hover-menu .callout-menu-item.icon-active {
38
- background-color: #f2f2f2;
39
- border-radius: 2px;
40
- }
41
-
42
- .sdoc-callout-hover-menu .callout-menu-divider {
43
- border-left: 1px solid #ccc;
44
- margin: 4px 8px;
45
- }
@@ -1,45 +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.default = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _slate = require("@seafile/slate");
10
- var _core = require("../../../../core");
11
- var _constant = require("../../constant");
12
- var _helper = require("../../helper");
13
- require("./style.css");
14
- const IconSelector = _ref => {
15
- let {
16
- editor,
17
- element,
18
- onCloseSelector
19
- } = _ref;
20
- const onImageClick = (0, _react.useCallback)(event => {
21
- event.stopPropagation();
22
- const {
23
- image
24
- } = event.target.dataset;
25
- if (!image) return;
26
- const currentPath = (0, _core.findPath)(editor, element);
27
- _slate.Transforms.select(editor, currentPath);
28
- (0, _helper.setCalloutIcon)(editor, image);
29
- onCloseSelector();
30
- }, [editor, element, onCloseSelector]);
31
- return /*#__PURE__*/_react.default.createElement("div", {
32
- className: "sdoc-callout-icon-selector-container",
33
- onClick: onImageClick
34
- }, Object.keys(_constant.CALLOUT_ICON_MAP).map(key => {
35
- const content = _constant.CALLOUT_ICON_MAP[key];
36
- return /*#__PURE__*/_react.default.createElement("div", {
37
- key: key,
38
- className: "icon-item"
39
- }, /*#__PURE__*/_react.default.createElement("span", {
40
- className: 'sdoc-emoji ' + key,
41
- "data-image": key
42
- }, content));
43
- }));
44
- };
45
- var _default = exports.default = IconSelector;
@@ -1,33 +0,0 @@
1
- .sdoc-callout-icon-selector-container {
2
- position: absolute;
3
- padding: 4px;
4
- left: 40px;
5
- top: 36.5px;
6
- background-color: #fff;
7
- border: 1px solid #eee;
8
- border-radius: 3px;
9
- display: flex;
10
- min-width: 100px;
11
- z-index: 100;
12
- }
13
-
14
- .sdoc-callout-icon-selector-container .icon-item {
15
- width: 32px;
16
- height: 32px;
17
- margin: 0 4px;
18
- cursor: pointer;
19
- display: flex;
20
- justify-content: center;
21
- align-items: center;
22
- }
23
-
24
- .sdoc-callout-icon-selector-container .icon-item:hover {
25
- background-color: #f2f2f2;
26
- }
27
-
28
- .sdoc-callout-icon-selector-container .icon-item img {
29
- display: inline-block;
30
- width: 24px;
31
- height: 24px;
32
- cursor: pointer;
33
- }
@@ -1,52 +0,0 @@
1
- .sdoc-callout-white-wrapper {
2
- padding: 5px 0;
3
- }
4
-
5
- .sdoc-callout-container {
6
- position: relative;
7
- padding: 10px;
8
- border-width: 1px;
9
- border-style: solid;
10
- border-radius: 5px;
11
- display: flex;
12
- }
13
-
14
- .sdoc-callout-container .callout-content {
15
- flex: 1;
16
- position: relative;
17
- overflow: auto;
18
- }
19
-
20
- .sdoc-callout-container .sdoc-callout-placeholder {
21
- position: absolute;
22
- top: 5px;
23
- color: #b8b6b6;
24
- pointer-events: none;
25
- }
26
-
27
- .sdoc-emoji {
28
- font-family: "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", EmojiSymbols;
29
- white-space: nowrap;
30
- height: 24px;
31
- width: 24px;
32
- line-height: 24px;
33
- font-size: 21px;
34
- display: flex;
35
- justify-content: center;
36
- align-items: center;
37
- }
38
-
39
- .sdoc-emoji.wraning {
40
- color: block;
41
- }
42
-
43
- .sdoc-callout-container .callout-icon {
44
- width: 18px;
45
- margin-right: 8px;
46
- margin-top: 2px;
47
- }
48
-
49
- .sdoc-callout-container .callout-icon .sdoc-emoji {
50
- font-size: 16px;
51
- }
52
-
@@ -1,134 +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 _slate = require("@seafile/slate");
12
- var _slateReact = require("@seafile/slate-react");
13
- var _constants = require("../../../../constants");
14
- var _useScrollContext = require("../../../../hooks/use-scroll-context");
15
- var _eventBus = _interopRequireDefault(require("../../../../utils/event-bus"));
16
- var _utils = require("../../../utils");
17
- var _constant = require("../constant");
18
- var _calloutHoverMenu = _interopRequireDefault(require("./callout-hover-menu"));
19
- require("./index.css");
20
- /* eslint-disable react-hooks/rules-of-hooks */
21
-
22
- const renderCallout = (_ref, editor) => {
23
- let {
24
- attributes,
25
- children,
26
- element
27
- } = _ref;
28
- const readOnly = (0, _slateReact.useReadOnly)();
29
- const scrollRef = (0, _useScrollContext.useScrollContext)();
30
- const isSelected = (0, _slateReact.useSelected)();
31
- const {
32
- t
33
- } = (0, _reactI18next.useTranslation)('sdoc-editor');
34
- const calloutRef = (0, _react.useRef)();
35
- const [isShowColorSelector, setIsShowColorSelector] = (0, _react.useState)(false);
36
- const [popoverPosition, setPopoverPosition] = (0, _react.useState)({
37
- top: '',
38
- left: ''
39
- });
40
- const containerStyle = (0, _react.useMemo)(() => {
41
- const {
42
- background_color = 'transparent'
43
- } = element.style;
44
- let borderColor = 'transparent';
45
- if (isSelected) {
46
- var _CALLOUT_COLOR_MAP$ba;
47
- borderColor = (_CALLOUT_COLOR_MAP$ba = _constant.CALLOUT_COLOR_MAP[background_color]) === null || _CALLOUT_COLOR_MAP$ba === void 0 ? void 0 : _CALLOUT_COLOR_MAP$ba.border_color;
48
- }
49
- return {
50
- backgroundColor: background_color,
51
- borderColor
52
- };
53
- }, [element.style, isSelected]);
54
- const calloutIcon = (0, _react.useMemo)(() => {
55
- const {
56
- callout_icon = ''
57
- } = element;
58
- if (!callout_icon) return null;
59
- return _constant.CALLOUT_ICON_MAP[callout_icon];
60
- }, [element]);
61
- const isShowPlaceholder = (0, _react.useCallback)(() => {
62
- if (readOnly || isSelected) return false;
63
- // If element contains more than one element or element is not paragraph, show placeholder
64
- const isContainUnitElement = element.children.length !== 1 || element.children.some(childElement => childElement.type !== 'paragraph');
65
- if (isContainUnitElement) return false;
66
- const elementContent = _slate.Node.string(element);
67
- return !elementContent.length;
68
- // eslint-disable-next-line react-hooks/exhaustive-deps
69
- }, [element, isSelected]);
70
- const handleCloseColorSelector = (0, _react.useCallback)(() => {
71
- setIsShowColorSelector(false);
72
- }, []);
73
- const handleScroll = (0, _react.useCallback)(e => {
74
- if (readOnly) return;
75
- if (!isShowColorSelector) return;
76
- if (e.currentTarget.scrollTop) {
77
- const menuPosition = (0, _utils.getMenuPosition)(calloutRef.current, editor);
78
- setPopoverPosition(menuPosition);
79
- }
80
- }, [editor, isShowColorSelector, readOnly]);
81
- (0, _react.useEffect)(() => {
82
- const eventBus = _eventBus.default.getInstance();
83
- const unsubscribe = eventBus.subscribe(_constants.INTERNAL_EVENT.CLOSE_CALLOUT_COLOR_PICKER, handleCloseColorSelector);
84
- return unsubscribe;
85
- }, [handleCloseColorSelector]);
86
- (0, _react.useEffect)(() => {
87
- if (readOnly) return;
88
- let observerRefValue = null;
89
- if (scrollRef.current) {
90
- scrollRef.current.addEventListener('scroll', handleScroll);
91
- observerRefValue = scrollRef.current;
92
- }
93
- return () => {
94
- observerRefValue.removeEventListener('scroll', handleScroll);
95
- };
96
- }, [handleScroll, readOnly, scrollRef]);
97
- (0, _react.useEffect)(() => {
98
- if (!isSelected) {
99
- setIsShowColorSelector(false);
100
- }
101
- }, [isSelected]);
102
- const handleDisplayColorSelector = (0, _react.useCallback)(() => {
103
- if (readOnly) return;
104
- const menuPosition = (0, _utils.getMenuPosition)(calloutRef.current, editor);
105
- setPopoverPosition(menuPosition);
106
- setIsShowColorSelector(true);
107
- }, [editor, readOnly]);
108
- const handleClick = (0, _react.useCallback)(e => {
109
- handleDisplayColorSelector();
110
- }, [handleDisplayColorSelector]);
111
- return /*#__PURE__*/_react.default.createElement("div", Object.assign({}, attributes, {
112
- "data-id": element.id,
113
- className: "sdoc-callout-white-wrapper"
114
- }), /*#__PURE__*/_react.default.createElement("div", {
115
- onClick: handleClick,
116
- ref: calloutRef,
117
- className: `${attributes.className} sdoc-callout-container`,
118
- style: containerStyle
119
- }, element.callout_icon && /*#__PURE__*/_react.default.createElement("div", {
120
- className: "callout-icon"
121
- }, /*#__PURE__*/_react.default.createElement("span", {
122
- className: 'sdoc-emoji ' + element.callout_icon
123
- }, calloutIcon)), /*#__PURE__*/_react.default.createElement("div", {
124
- className: "callout-content"
125
- }, children, isShowPlaceholder() && /*#__PURE__*/_react.default.createElement("div", {
126
- contentEditable: false,
127
- className: "sdoc-callout-placeholder"
128
- }, t('Please_enter'), "...")), isShowColorSelector && /*#__PURE__*/_react.default.createElement(_calloutHoverMenu.default, {
129
- editor: editor,
130
- element: element,
131
- popoverPosition: popoverPosition
132
- })));
133
- };
134
- var _default = exports.default = renderCallout;