@opentiny/fluent-editor 3.20.2 → 3.20.3

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 (530) hide show
  1. package/package.json +3 -3
  2. package/dist/package.json +0 -52
  3. package/scripts/pre-release.js +0 -34
  4. package/src/assets/better-table.scss +0 -367
  5. package/src/assets/common.scss +0 -279
  6. package/src/assets/counter.scss +0 -19
  7. package/src/assets/custom-image.scss +0 -20
  8. package/src/assets/editor.scss +0 -365
  9. package/src/assets/emoji/emoji.scss +0 -461
  10. package/src/assets/emoji/style.scss +0 -252
  11. package/src/assets/fileBar.scss +0 -116
  12. package/src/assets/font.scss +0 -36
  13. package/src/assets/fullscreen.scss +0 -21
  14. package/src/assets/iconfont/iconfont.ttf +0 -0
  15. package/src/assets/iconfont/iconfont.woff +0 -0
  16. package/src/assets/iconfont/iconfont.woff2 +0 -0
  17. package/src/assets/image1.png +0 -0
  18. package/src/assets/lineHeight.scss +0 -16
  19. package/src/assets/link.scss +0 -130
  20. package/src/assets/mention.scss +0 -48
  21. package/src/assets/screenshot.scss +0 -78
  22. package/src/assets/size.scss +0 -13
  23. package/src/assets/style.scss +0 -39
  24. package/src/assets/tasklist.scss +0 -76
  25. package/src/assets/toolbar.scss +0 -416
  26. package/src/attributors/font-size.ts +0 -6
  27. package/src/attributors/font-style.ts +0 -6
  28. package/src/attributors/index.ts +0 -4
  29. package/src/attributors/line-height.ts +0 -6
  30. package/src/attributors/text-indent.ts +0 -6
  31. package/src/config/base64-image.ts +0 -8
  32. package/src/config/editor.config.ts +0 -88
  33. package/src/config/editor.utils.ts +0 -199
  34. package/src/config/i18n/en-us.ts +0 -106
  35. package/src/config/i18n/zh-cn.ts +0 -104
  36. package/src/config/icons.config.ts +0 -297
  37. package/src/config/index.ts +0 -171
  38. package/src/config/types/additional-toolbar-item.interface.ts +0 -8
  39. package/src/config/types/content-change.interface.ts +0 -13
  40. package/src/config/types/content-save.interface.ts +0 -6
  41. package/src/config/types/counter-option.interface.ts +0 -9
  42. package/src/config/types/editor-config.interface.ts +0 -22
  43. package/src/config/types/editor-modules.interface.ts +0 -41
  44. package/src/config/types/file-operation.interface.ts +0 -12
  45. package/src/config/types/focus-change.interface.ts +0 -4
  46. package/src/config/types/fullscreen-module.interface.ts +0 -4
  47. package/src/config/types/help-panel-item.interface.ts +0 -5
  48. package/src/config/types/help-panel-option.interface.ts +0 -7
  49. package/src/config/types/image-module.interface.ts +0 -3
  50. package/src/config/types/image-upload.interface.ts +0 -7
  51. package/src/config/types/index.ts +0 -22
  52. package/src/config/types/load-on-demand-module.interface.ts +0 -5
  53. package/src/config/types/mention-module.interface.ts +0 -8
  54. package/src/config/types/paste-change.interface.ts +0 -6
  55. package/src/config/types/quick-menu-module.interface.ts +0 -3
  56. package/src/config/types/range.interface.ts +0 -4
  57. package/src/config/types/registry-options.interface.ts +0 -5
  58. package/src/config/types/selection-change.interface.ts +0 -8
  59. package/src/config/types/toolbar-item.interface.ts +0 -13
  60. package/src/config/types/type.ts +0 -5
  61. package/src/config/types/validate-error.interface.ts +0 -11
  62. package/src/counter/index.ts +0 -69
  63. package/src/custom-clipboard.ts +0 -633
  64. package/src/custom-image/BlotFormatter.ts +0 -167
  65. package/src/custom-image/Options.ts +0 -150
  66. package/src/custom-image/actions/Action.ts +0 -13
  67. package/src/custom-image/actions/CustomResizeAction.ts +0 -207
  68. package/src/custom-image/actions/DeleteAction.ts +0 -29
  69. package/src/custom-image/image.ts +0 -118
  70. package/src/custom-image/specs/BlotSpec.ts +0 -30
  71. package/src/custom-image/specs/CustomImageSpec.ts +0 -139
  72. package/src/custom-image/specs/ImageSpec.ts +0 -33
  73. package/src/custom-uploader.ts +0 -199
  74. package/src/emoji/emoji-list/index.ts +0 -1
  75. package/src/emoji/emoji-list/people.ts +0 -111
  76. package/src/emoji/emoji-list.ts +0 -9
  77. package/src/emoji/emoji-map.ts +0 -9
  78. package/src/emoji/formats/emoji-blot.ts +0 -54
  79. package/src/emoji/index.ts +0 -5
  80. package/src/emoji/modules/emoji.ts +0 -318
  81. package/src/emoji/modules/toolbar-emoji.ts +0 -182
  82. package/src/emoji/utils.ts +0 -15
  83. package/src/file/formats/file.ts +0 -67
  84. package/src/file/index.ts +0 -38
  85. package/src/file/modules/file-bar.ts +0 -146
  86. package/src/fluent-editor.ts +0 -164
  87. package/src/format-painter/index.ts +0 -79
  88. package/src/global-link/constants.ts +0 -3
  89. package/src/global-link/formats/customer-widget-link.ts +0 -36
  90. package/src/global-link/formats/doc-link.ts +0 -55
  91. package/src/global-link/formats/wiki-link.ts +0 -45
  92. package/src/global-link/formats/work-item-link.ts +0 -47
  93. package/src/global-link/global-link-panel.ts +0 -20
  94. package/src/global-link/index.ts +0 -165
  95. package/src/global-link/utils/createTable.ts +0 -54
  96. package/src/index.ts +0 -5
  97. package/src/link/formats/link.ts +0 -44
  98. package/src/link/index.ts +0 -35
  99. package/src/link/modules/tooltip.ts +0 -318
  100. package/src/mention/Mention.ts +0 -406
  101. package/src/mention/MentionLink.ts +0 -51
  102. package/src/mention/constants.ts +0 -3
  103. package/src/quick-menu/index.ts +0 -100
  104. package/src/screenshot/index.ts +0 -231
  105. package/src/soft-break/index.ts +0 -34
  106. package/src/strike/index.ts +0 -16
  107. package/src/syntax/index.ts +0 -35
  108. package/src/table/better-table.ts +0 -553
  109. package/src/table/formats/header.ts +0 -129
  110. package/src/table/formats/list.ts +0 -229
  111. package/src/table/formats/table.ts +0 -1272
  112. package/src/table/modules/table-column-tool.ts +0 -492
  113. package/src/table/modules/table-operation-menu.ts +0 -584
  114. package/src/table/modules/table-scroll-bar.ts +0 -248
  115. package/src/table/modules/table-selection.ts +0 -387
  116. package/src/table/table-config.ts +0 -42
  117. package/src/table/utils/index.ts +0 -62
  118. package/src/table/utils/node-matchers.ts +0 -359
  119. package/src/toolbar/better-picker.ts +0 -370
  120. package/src/toolbar/index.ts +0 -180
  121. package/src/utils/debounce.ts +0 -149
  122. package/src/utils/image.ts +0 -22
  123. package/src/utils/method.ts +0 -82
  124. package/src/utils/scroll-lock.ts +0 -52
  125. package/src/video/index.ts +0 -62
  126. package/tsconfig.json +0 -26
  127. package/vite.config.theme.ts +0 -20
  128. package/vite.config.ts +0 -56
  129. /package/{dist/README.md → README.md} +0 -0
  130. /package/{dist/es → es}/attributors/font-size.es.js +0 -0
  131. /package/{dist/es → es}/attributors/font-size.es.js.map +0 -0
  132. /package/{dist/es → es}/attributors/font-style.es.js +0 -0
  133. /package/{dist/es → es}/attributors/font-style.es.js.map +0 -0
  134. /package/{dist/es → es}/attributors/index.es.js +0 -0
  135. /package/{dist/es → es}/attributors/index.es.js.map +0 -0
  136. /package/{dist/es → es}/attributors/line-height.es.js +0 -0
  137. /package/{dist/es → es}/attributors/line-height.es.js.map +0 -0
  138. /package/{dist/es → es}/attributors/text-indent.es.js +0 -0
  139. /package/{dist/es → es}/attributors/text-indent.es.js.map +0 -0
  140. /package/{dist/es → es}/config/base64-image.es.js +0 -0
  141. /package/{dist/es → es}/config/base64-image.es.js.map +0 -0
  142. /package/{dist/es → es}/config/editor.config.es.js +0 -0
  143. /package/{dist/es → es}/config/editor.config.es.js.map +0 -0
  144. /package/{dist/es → es}/config/editor.utils.es.js +0 -0
  145. /package/{dist/es → es}/config/editor.utils.es.js.map +0 -0
  146. /package/{dist/es → es}/config/i18n/en-us.es.js +0 -0
  147. /package/{dist/es → es}/config/i18n/en-us.es.js.map +0 -0
  148. /package/{dist/es → es}/config/i18n/zh-cn.es.js +0 -0
  149. /package/{dist/es → es}/config/i18n/zh-cn.es.js.map +0 -0
  150. /package/{dist/es → es}/config/icons.config.es.js +0 -0
  151. /package/{dist/es → es}/config/icons.config.es.js.map +0 -0
  152. /package/{dist/es → es}/config/index.es.js +0 -0
  153. /package/{dist/es → es}/config/index.es.js.map +0 -0
  154. /package/{dist/es → es}/config/types/additional-toolbar-item.interface.es.js +0 -0
  155. /package/{dist/es → es}/config/types/additional-toolbar-item.interface.es.js.map +0 -0
  156. /package/{dist/es → es}/config/types/content-change.interface.es.js +0 -0
  157. /package/{dist/es → es}/config/types/content-change.interface.es.js.map +0 -0
  158. /package/{dist/es → es}/config/types/content-save.interface.es.js +0 -0
  159. /package/{dist/es → es}/config/types/content-save.interface.es.js.map +0 -0
  160. /package/{dist/es → es}/config/types/counter-option.interface.es.js +0 -0
  161. /package/{dist/es → es}/config/types/counter-option.interface.es.js.map +0 -0
  162. /package/{dist/es → es}/config/types/editor-config.interface.es.js +0 -0
  163. /package/{dist/es → es}/config/types/editor-config.interface.es.js.map +0 -0
  164. /package/{dist/es → es}/config/types/editor-modules.interface.es.js +0 -0
  165. /package/{dist/es → es}/config/types/editor-modules.interface.es.js.map +0 -0
  166. /package/{dist/es → es}/config/types/file-operation.interface.es.js +0 -0
  167. /package/{dist/es → es}/config/types/file-operation.interface.es.js.map +0 -0
  168. /package/{dist/es → es}/config/types/focus-change.interface.es.js +0 -0
  169. /package/{dist/es → es}/config/types/focus-change.interface.es.js.map +0 -0
  170. /package/{dist/es → es}/config/types/fullscreen-module.interface.es.js +0 -0
  171. /package/{dist/es → es}/config/types/fullscreen-module.interface.es.js.map +0 -0
  172. /package/{dist/es → es}/config/types/help-panel-item.interface.es.js +0 -0
  173. /package/{dist/es → es}/config/types/help-panel-item.interface.es.js.map +0 -0
  174. /package/{dist/es → es}/config/types/help-panel-option.interface.es.js +0 -0
  175. /package/{dist/es → es}/config/types/help-panel-option.interface.es.js.map +0 -0
  176. /package/{dist/es → es}/config/types/image-module.interface.es.js +0 -0
  177. /package/{dist/es → es}/config/types/image-module.interface.es.js.map +0 -0
  178. /package/{dist/es → es}/config/types/image-upload.interface.es.js +0 -0
  179. /package/{dist/es → es}/config/types/image-upload.interface.es.js.map +0 -0
  180. /package/{dist/es → es}/config/types/index.es.js +0 -0
  181. /package/{dist/es → es}/config/types/index.es.js.map +0 -0
  182. /package/{dist/es → es}/config/types/load-on-demand-module.interface.es.js +0 -0
  183. /package/{dist/es → es}/config/types/load-on-demand-module.interface.es.js.map +0 -0
  184. /package/{dist/es → es}/config/types/mention-module.interface.es.js +0 -0
  185. /package/{dist/es → es}/config/types/mention-module.interface.es.js.map +0 -0
  186. /package/{dist/es → es}/config/types/paste-change.interface.es.js +0 -0
  187. /package/{dist/es → es}/config/types/paste-change.interface.es.js.map +0 -0
  188. /package/{dist/es → es}/config/types/quick-menu-module.interface.es.js +0 -0
  189. /package/{dist/es → es}/config/types/quick-menu-module.interface.es.js.map +0 -0
  190. /package/{dist/es → es}/config/types/range.interface.es.js +0 -0
  191. /package/{dist/es → es}/config/types/range.interface.es.js.map +0 -0
  192. /package/{dist/es → es}/config/types/registry-options.interface.es.js +0 -0
  193. /package/{dist/es → es}/config/types/registry-options.interface.es.js.map +0 -0
  194. /package/{dist/es → es}/config/types/selection-change.interface.es.js +0 -0
  195. /package/{dist/es → es}/config/types/selection-change.interface.es.js.map +0 -0
  196. /package/{dist/es → es}/config/types/toolbar-item.interface.es.js +0 -0
  197. /package/{dist/es → es}/config/types/toolbar-item.interface.es.js.map +0 -0
  198. /package/{dist/es → es}/config/types/type.es.js +0 -0
  199. /package/{dist/es → es}/config/types/type.es.js.map +0 -0
  200. /package/{dist/es → es}/config/types/validate-error.interface.es.js +0 -0
  201. /package/{dist/es → es}/config/types/validate-error.interface.es.js.map +0 -0
  202. /package/{dist/es → es}/counter/index.es.js +0 -0
  203. /package/{dist/es → es}/counter/index.es.js.map +0 -0
  204. /package/{dist/es → es}/custom-clipboard.es.js +0 -0
  205. /package/{dist/es → es}/custom-clipboard.es.js.map +0 -0
  206. /package/{dist/es → es}/custom-image/BlotFormatter.es.js +0 -0
  207. /package/{dist/es → es}/custom-image/BlotFormatter.es.js.map +0 -0
  208. /package/{dist/es → es}/custom-image/Options.es.js +0 -0
  209. /package/{dist/es → es}/custom-image/Options.es.js.map +0 -0
  210. /package/{dist/es → es}/custom-image/actions/Action.es.js +0 -0
  211. /package/{dist/es → es}/custom-image/actions/Action.es.js.map +0 -0
  212. /package/{dist/es → es}/custom-image/actions/CustomResizeAction.es.js +0 -0
  213. /package/{dist/es → es}/custom-image/actions/CustomResizeAction.es.js.map +0 -0
  214. /package/{dist/es → es}/custom-image/actions/DeleteAction.es.js +0 -0
  215. /package/{dist/es → es}/custom-image/actions/DeleteAction.es.js.map +0 -0
  216. /package/{dist/es → es}/custom-image/image.es.js +0 -0
  217. /package/{dist/es → es}/custom-image/image.es.js.map +0 -0
  218. /package/{dist/es → es}/custom-image/specs/BlotSpec.es.js +0 -0
  219. /package/{dist/es → es}/custom-image/specs/BlotSpec.es.js.map +0 -0
  220. /package/{dist/es → es}/custom-image/specs/CustomImageSpec.es.js +0 -0
  221. /package/{dist/es → es}/custom-image/specs/CustomImageSpec.es.js.map +0 -0
  222. /package/{dist/es → es}/custom-image/specs/ImageSpec.es.js +0 -0
  223. /package/{dist/es → es}/custom-image/specs/ImageSpec.es.js.map +0 -0
  224. /package/{dist/es → es}/custom-uploader.es.js +0 -0
  225. /package/{dist/es → es}/custom-uploader.es.js.map +0 -0
  226. /package/{dist/es → es}/emoji/emoji-list/index.es.js +0 -0
  227. /package/{dist/es → es}/emoji/emoji-list/index.es.js.map +0 -0
  228. /package/{dist/es → es}/emoji/emoji-list/people.es.js +0 -0
  229. /package/{dist/es → es}/emoji/emoji-list/people.es.js.map +0 -0
  230. /package/{dist/es → es}/emoji/emoji-list.es.js +0 -0
  231. /package/{dist/es → es}/emoji/emoji-list.es.js.map +0 -0
  232. /package/{dist/es → es}/emoji/emoji-map.es.js +0 -0
  233. /package/{dist/es → es}/emoji/emoji-map.es.js.map +0 -0
  234. /package/{dist/es → es}/emoji/formats/emoji-blot.es.js +0 -0
  235. /package/{dist/es → es}/emoji/formats/emoji-blot.es.js.map +0 -0
  236. /package/{dist/es → es}/emoji/index.es.js +0 -0
  237. /package/{dist/es → es}/emoji/index.es.js.map +0 -0
  238. /package/{dist/es → es}/emoji/modules/emoji.es.js +0 -0
  239. /package/{dist/es → es}/emoji/modules/emoji.es.js.map +0 -0
  240. /package/{dist/es → es}/emoji/modules/toolbar-emoji.es.js +0 -0
  241. /package/{dist/es → es}/emoji/modules/toolbar-emoji.es.js.map +0 -0
  242. /package/{dist/es → es}/emoji/utils.es.js +0 -0
  243. /package/{dist/es → es}/emoji/utils.es.js.map +0 -0
  244. /package/{dist/es → es}/file/formats/file.es.js +0 -0
  245. /package/{dist/es → es}/file/formats/file.es.js.map +0 -0
  246. /package/{dist/es → es}/file/index.es.js +0 -0
  247. /package/{dist/es → es}/file/index.es.js.map +0 -0
  248. /package/{dist/es → es}/file/modules/file-bar.es.js +0 -0
  249. /package/{dist/es → es}/file/modules/file-bar.es.js.map +0 -0
  250. /package/{dist/es → es}/fluent-editor.es.js +0 -0
  251. /package/{dist/es → es}/fluent-editor.es.js.map +0 -0
  252. /package/{dist/es → es}/format-painter/index.es.js +0 -0
  253. /package/{dist/es → es}/format-painter/index.es.js.map +0 -0
  254. /package/{dist/es → es}/global-link/constants.es.js +0 -0
  255. /package/{dist/es → es}/global-link/constants.es.js.map +0 -0
  256. /package/{dist/es → es}/global-link/formats/customer-widget-link.es.js +0 -0
  257. /package/{dist/es → es}/global-link/formats/customer-widget-link.es.js.map +0 -0
  258. /package/{dist/es → es}/global-link/formats/doc-link.es.js +0 -0
  259. /package/{dist/es → es}/global-link/formats/doc-link.es.js.map +0 -0
  260. /package/{dist/es → es}/global-link/formats/wiki-link.es.js +0 -0
  261. /package/{dist/es → es}/global-link/formats/wiki-link.es.js.map +0 -0
  262. /package/{dist/es → es}/global-link/formats/work-item-link.es.js +0 -0
  263. /package/{dist/es → es}/global-link/formats/work-item-link.es.js.map +0 -0
  264. /package/{dist/es → es}/global-link/global-link-panel.es.js +0 -0
  265. /package/{dist/es → es}/global-link/global-link-panel.es.js.map +0 -0
  266. /package/{dist/es → es}/global-link/index.es.js +0 -0
  267. /package/{dist/es → es}/global-link/index.es.js.map +0 -0
  268. /package/{dist/es → es}/global-link/utils/createTable.es.js +0 -0
  269. /package/{dist/es → es}/global-link/utils/createTable.es.js.map +0 -0
  270. /package/{dist/es → es}/index.es.js +0 -0
  271. /package/{dist/es → es}/index.es.js.map +0 -0
  272. /package/{dist/es → es}/link/formats/link.es.js +0 -0
  273. /package/{dist/es → es}/link/formats/link.es.js.map +0 -0
  274. /package/{dist/es → es}/link/index.es.js +0 -0
  275. /package/{dist/es → es}/link/index.es.js.map +0 -0
  276. /package/{dist/es → es}/link/modules/tooltip.es.js +0 -0
  277. /package/{dist/es → es}/link/modules/tooltip.es.js.map +0 -0
  278. /package/{dist/es → es}/mention/Mention.es.js +0 -0
  279. /package/{dist/es → es}/mention/Mention.es.js.map +0 -0
  280. /package/{dist/es → es}/mention/MentionLink.es.js +0 -0
  281. /package/{dist/es → es}/mention/MentionLink.es.js.map +0 -0
  282. /package/{dist/es → es}/mention/constants.es.js +0 -0
  283. /package/{dist/es → es}/mention/constants.es.js.map +0 -0
  284. /package/{dist/es → es}/quick-menu/index.es.js +0 -0
  285. /package/{dist/es → es}/quick-menu/index.es.js.map +0 -0
  286. /package/{dist/es → es}/screenshot/index.es.js +0 -0
  287. /package/{dist/es → es}/screenshot/index.es.js.map +0 -0
  288. /package/{dist/es → es}/soft-break/index.es.js +0 -0
  289. /package/{dist/es → es}/soft-break/index.es.js.map +0 -0
  290. /package/{dist/es → es}/strike/index.es.js +0 -0
  291. /package/{dist/es → es}/strike/index.es.js.map +0 -0
  292. /package/{dist/es → es}/syntax/index.es.js +0 -0
  293. /package/{dist/es → es}/syntax/index.es.js.map +0 -0
  294. /package/{dist/es → es}/table/better-table.es.js +0 -0
  295. /package/{dist/es → es}/table/better-table.es.js.map +0 -0
  296. /package/{dist/es → es}/table/formats/header.es.js +0 -0
  297. /package/{dist/es → es}/table/formats/header.es.js.map +0 -0
  298. /package/{dist/es → es}/table/formats/list.es.js +0 -0
  299. /package/{dist/es → es}/table/formats/list.es.js.map +0 -0
  300. /package/{dist/es → es}/table/formats/table.es.js +0 -0
  301. /package/{dist/es → es}/table/formats/table.es.js.map +0 -0
  302. /package/{dist/es → es}/table/modules/table-column-tool.es.js +0 -0
  303. /package/{dist/es → es}/table/modules/table-column-tool.es.js.map +0 -0
  304. /package/{dist/es → es}/table/modules/table-operation-menu.es.js +0 -0
  305. /package/{dist/es → es}/table/modules/table-operation-menu.es.js.map +0 -0
  306. /package/{dist/es → es}/table/modules/table-scroll-bar.es.js +0 -0
  307. /package/{dist/es → es}/table/modules/table-scroll-bar.es.js.map +0 -0
  308. /package/{dist/es → es}/table/modules/table-selection.es.js +0 -0
  309. /package/{dist/es → es}/table/modules/table-selection.es.js.map +0 -0
  310. /package/{dist/es → es}/table/table-config.es.js +0 -0
  311. /package/{dist/es → es}/table/table-config.es.js.map +0 -0
  312. /package/{dist/es → es}/table/utils/index.es.js +0 -0
  313. /package/{dist/es → es}/table/utils/index.es.js.map +0 -0
  314. /package/{dist/es → es}/table/utils/node-matchers.es.js +0 -0
  315. /package/{dist/es → es}/table/utils/node-matchers.es.js.map +0 -0
  316. /package/{dist/es → es}/toolbar/better-picker.es.js +0 -0
  317. /package/{dist/es → es}/toolbar/better-picker.es.js.map +0 -0
  318. /package/{dist/es → es}/toolbar/index.es.js +0 -0
  319. /package/{dist/es → es}/toolbar/index.es.js.map +0 -0
  320. /package/{dist/es → es}/utils/debounce.es.js +0 -0
  321. /package/{dist/es → es}/utils/debounce.es.js.map +0 -0
  322. /package/{dist/es → es}/utils/image.es.js +0 -0
  323. /package/{dist/es → es}/utils/image.es.js.map +0 -0
  324. /package/{dist/es → es}/utils/method.es.js +0 -0
  325. /package/{dist/es → es}/utils/method.es.js.map +0 -0
  326. /package/{dist/es → es}/utils/scroll-lock.es.js +0 -0
  327. /package/{dist/es → es}/utils/scroll-lock.es.js.map +0 -0
  328. /package/{dist/es → es}/video/index.es.js +0 -0
  329. /package/{dist/es → es}/video/index.es.js.map +0 -0
  330. /package/{dist/lib → lib}/attributors/font-size.cjs.js +0 -0
  331. /package/{dist/lib → lib}/attributors/font-size.cjs.js.map +0 -0
  332. /package/{dist/lib → lib}/attributors/font-style.cjs.js +0 -0
  333. /package/{dist/lib → lib}/attributors/font-style.cjs.js.map +0 -0
  334. /package/{dist/lib → lib}/attributors/index.cjs.js +0 -0
  335. /package/{dist/lib → lib}/attributors/index.cjs.js.map +0 -0
  336. /package/{dist/lib → lib}/attributors/line-height.cjs.js +0 -0
  337. /package/{dist/lib → lib}/attributors/line-height.cjs.js.map +0 -0
  338. /package/{dist/lib → lib}/attributors/text-indent.cjs.js +0 -0
  339. /package/{dist/lib → lib}/attributors/text-indent.cjs.js.map +0 -0
  340. /package/{dist/lib → lib}/config/base64-image.cjs.js +0 -0
  341. /package/{dist/lib → lib}/config/base64-image.cjs.js.map +0 -0
  342. /package/{dist/lib → lib}/config/editor.config.cjs.js +0 -0
  343. /package/{dist/lib → lib}/config/editor.config.cjs.js.map +0 -0
  344. /package/{dist/lib → lib}/config/editor.utils.cjs.js +0 -0
  345. /package/{dist/lib → lib}/config/editor.utils.cjs.js.map +0 -0
  346. /package/{dist/lib → lib}/config/i18n/en-us.cjs.js +0 -0
  347. /package/{dist/lib → lib}/config/i18n/en-us.cjs.js.map +0 -0
  348. /package/{dist/lib → lib}/config/i18n/zh-cn.cjs.js +0 -0
  349. /package/{dist/lib → lib}/config/i18n/zh-cn.cjs.js.map +0 -0
  350. /package/{dist/lib → lib}/config/icons.config.cjs.js +0 -0
  351. /package/{dist/lib → lib}/config/icons.config.cjs.js.map +0 -0
  352. /package/{dist/lib → lib}/config/index.cjs.js +0 -0
  353. /package/{dist/lib → lib}/config/index.cjs.js.map +0 -0
  354. /package/{dist/lib → lib}/config/types/additional-toolbar-item.interface.cjs.js +0 -0
  355. /package/{dist/lib → lib}/config/types/additional-toolbar-item.interface.cjs.js.map +0 -0
  356. /package/{dist/lib → lib}/config/types/content-change.interface.cjs.js +0 -0
  357. /package/{dist/lib → lib}/config/types/content-change.interface.cjs.js.map +0 -0
  358. /package/{dist/lib → lib}/config/types/content-save.interface.cjs.js +0 -0
  359. /package/{dist/lib → lib}/config/types/content-save.interface.cjs.js.map +0 -0
  360. /package/{dist/lib → lib}/config/types/counter-option.interface.cjs.js +0 -0
  361. /package/{dist/lib → lib}/config/types/counter-option.interface.cjs.js.map +0 -0
  362. /package/{dist/lib → lib}/config/types/editor-config.interface.cjs.js +0 -0
  363. /package/{dist/lib → lib}/config/types/editor-config.interface.cjs.js.map +0 -0
  364. /package/{dist/lib → lib}/config/types/editor-modules.interface.cjs.js +0 -0
  365. /package/{dist/lib → lib}/config/types/editor-modules.interface.cjs.js.map +0 -0
  366. /package/{dist/lib → lib}/config/types/file-operation.interface.cjs.js +0 -0
  367. /package/{dist/lib → lib}/config/types/file-operation.interface.cjs.js.map +0 -0
  368. /package/{dist/lib → lib}/config/types/focus-change.interface.cjs.js +0 -0
  369. /package/{dist/lib → lib}/config/types/focus-change.interface.cjs.js.map +0 -0
  370. /package/{dist/lib → lib}/config/types/fullscreen-module.interface.cjs.js +0 -0
  371. /package/{dist/lib → lib}/config/types/fullscreen-module.interface.cjs.js.map +0 -0
  372. /package/{dist/lib → lib}/config/types/help-panel-item.interface.cjs.js +0 -0
  373. /package/{dist/lib → lib}/config/types/help-panel-item.interface.cjs.js.map +0 -0
  374. /package/{dist/lib → lib}/config/types/help-panel-option.interface.cjs.js +0 -0
  375. /package/{dist/lib → lib}/config/types/help-panel-option.interface.cjs.js.map +0 -0
  376. /package/{dist/lib → lib}/config/types/image-module.interface.cjs.js +0 -0
  377. /package/{dist/lib → lib}/config/types/image-module.interface.cjs.js.map +0 -0
  378. /package/{dist/lib → lib}/config/types/image-upload.interface.cjs.js +0 -0
  379. /package/{dist/lib → lib}/config/types/image-upload.interface.cjs.js.map +0 -0
  380. /package/{dist/lib → lib}/config/types/index.cjs.js +0 -0
  381. /package/{dist/lib → lib}/config/types/index.cjs.js.map +0 -0
  382. /package/{dist/lib → lib}/config/types/load-on-demand-module.interface.cjs.js +0 -0
  383. /package/{dist/lib → lib}/config/types/load-on-demand-module.interface.cjs.js.map +0 -0
  384. /package/{dist/lib → lib}/config/types/mention-module.interface.cjs.js +0 -0
  385. /package/{dist/lib → lib}/config/types/mention-module.interface.cjs.js.map +0 -0
  386. /package/{dist/lib → lib}/config/types/paste-change.interface.cjs.js +0 -0
  387. /package/{dist/lib → lib}/config/types/paste-change.interface.cjs.js.map +0 -0
  388. /package/{dist/lib → lib}/config/types/quick-menu-module.interface.cjs.js +0 -0
  389. /package/{dist/lib → lib}/config/types/quick-menu-module.interface.cjs.js.map +0 -0
  390. /package/{dist/lib → lib}/config/types/range.interface.cjs.js +0 -0
  391. /package/{dist/lib → lib}/config/types/range.interface.cjs.js.map +0 -0
  392. /package/{dist/lib → lib}/config/types/registry-options.interface.cjs.js +0 -0
  393. /package/{dist/lib → lib}/config/types/registry-options.interface.cjs.js.map +0 -0
  394. /package/{dist/lib → lib}/config/types/selection-change.interface.cjs.js +0 -0
  395. /package/{dist/lib → lib}/config/types/selection-change.interface.cjs.js.map +0 -0
  396. /package/{dist/lib → lib}/config/types/toolbar-item.interface.cjs.js +0 -0
  397. /package/{dist/lib → lib}/config/types/toolbar-item.interface.cjs.js.map +0 -0
  398. /package/{dist/lib → lib}/config/types/type.cjs.js +0 -0
  399. /package/{dist/lib → lib}/config/types/type.cjs.js.map +0 -0
  400. /package/{dist/lib → lib}/config/types/validate-error.interface.cjs.js +0 -0
  401. /package/{dist/lib → lib}/config/types/validate-error.interface.cjs.js.map +0 -0
  402. /package/{dist/lib → lib}/counter/index.cjs.js +0 -0
  403. /package/{dist/lib → lib}/counter/index.cjs.js.map +0 -0
  404. /package/{dist/lib → lib}/custom-clipboard.cjs.js +0 -0
  405. /package/{dist/lib → lib}/custom-clipboard.cjs.js.map +0 -0
  406. /package/{dist/lib → lib}/custom-image/BlotFormatter.cjs.js +0 -0
  407. /package/{dist/lib → lib}/custom-image/BlotFormatter.cjs.js.map +0 -0
  408. /package/{dist/lib → lib}/custom-image/Options.cjs.js +0 -0
  409. /package/{dist/lib → lib}/custom-image/Options.cjs.js.map +0 -0
  410. /package/{dist/lib → lib}/custom-image/actions/Action.cjs.js +0 -0
  411. /package/{dist/lib → lib}/custom-image/actions/Action.cjs.js.map +0 -0
  412. /package/{dist/lib → lib}/custom-image/actions/CustomResizeAction.cjs.js +0 -0
  413. /package/{dist/lib → lib}/custom-image/actions/CustomResizeAction.cjs.js.map +0 -0
  414. /package/{dist/lib → lib}/custom-image/actions/DeleteAction.cjs.js +0 -0
  415. /package/{dist/lib → lib}/custom-image/actions/DeleteAction.cjs.js.map +0 -0
  416. /package/{dist/lib → lib}/custom-image/image.cjs.js +0 -0
  417. /package/{dist/lib → lib}/custom-image/image.cjs.js.map +0 -0
  418. /package/{dist/lib → lib}/custom-image/specs/BlotSpec.cjs.js +0 -0
  419. /package/{dist/lib → lib}/custom-image/specs/BlotSpec.cjs.js.map +0 -0
  420. /package/{dist/lib → lib}/custom-image/specs/CustomImageSpec.cjs.js +0 -0
  421. /package/{dist/lib → lib}/custom-image/specs/CustomImageSpec.cjs.js.map +0 -0
  422. /package/{dist/lib → lib}/custom-image/specs/ImageSpec.cjs.js +0 -0
  423. /package/{dist/lib → lib}/custom-image/specs/ImageSpec.cjs.js.map +0 -0
  424. /package/{dist/lib → lib}/custom-uploader.cjs.js +0 -0
  425. /package/{dist/lib → lib}/custom-uploader.cjs.js.map +0 -0
  426. /package/{dist/lib → lib}/emoji/emoji-list/index.cjs.js +0 -0
  427. /package/{dist/lib → lib}/emoji/emoji-list/index.cjs.js.map +0 -0
  428. /package/{dist/lib → lib}/emoji/emoji-list/people.cjs.js +0 -0
  429. /package/{dist/lib → lib}/emoji/emoji-list/people.cjs.js.map +0 -0
  430. /package/{dist/lib → lib}/emoji/emoji-list.cjs.js +0 -0
  431. /package/{dist/lib → lib}/emoji/emoji-list.cjs.js.map +0 -0
  432. /package/{dist/lib → lib}/emoji/emoji-map.cjs.js +0 -0
  433. /package/{dist/lib → lib}/emoji/emoji-map.cjs.js.map +0 -0
  434. /package/{dist/lib → lib}/emoji/formats/emoji-blot.cjs.js +0 -0
  435. /package/{dist/lib → lib}/emoji/formats/emoji-blot.cjs.js.map +0 -0
  436. /package/{dist/lib → lib}/emoji/index.cjs.js +0 -0
  437. /package/{dist/lib → lib}/emoji/index.cjs.js.map +0 -0
  438. /package/{dist/lib → lib}/emoji/modules/emoji.cjs.js +0 -0
  439. /package/{dist/lib → lib}/emoji/modules/emoji.cjs.js.map +0 -0
  440. /package/{dist/lib → lib}/emoji/modules/toolbar-emoji.cjs.js +0 -0
  441. /package/{dist/lib → lib}/emoji/modules/toolbar-emoji.cjs.js.map +0 -0
  442. /package/{dist/lib → lib}/emoji/utils.cjs.js +0 -0
  443. /package/{dist/lib → lib}/emoji/utils.cjs.js.map +0 -0
  444. /package/{dist/lib → lib}/file/formats/file.cjs.js +0 -0
  445. /package/{dist/lib → lib}/file/formats/file.cjs.js.map +0 -0
  446. /package/{dist/lib → lib}/file/index.cjs.js +0 -0
  447. /package/{dist/lib → lib}/file/index.cjs.js.map +0 -0
  448. /package/{dist/lib → lib}/file/modules/file-bar.cjs.js +0 -0
  449. /package/{dist/lib → lib}/file/modules/file-bar.cjs.js.map +0 -0
  450. /package/{dist/lib → lib}/fluent-editor.cjs.js +0 -0
  451. /package/{dist/lib → lib}/fluent-editor.cjs.js.map +0 -0
  452. /package/{dist/lib → lib}/format-painter/index.cjs.js +0 -0
  453. /package/{dist/lib → lib}/format-painter/index.cjs.js.map +0 -0
  454. /package/{dist/lib → lib}/global-link/constants.cjs.js +0 -0
  455. /package/{dist/lib → lib}/global-link/constants.cjs.js.map +0 -0
  456. /package/{dist/lib → lib}/global-link/formats/customer-widget-link.cjs.js +0 -0
  457. /package/{dist/lib → lib}/global-link/formats/customer-widget-link.cjs.js.map +0 -0
  458. /package/{dist/lib → lib}/global-link/formats/doc-link.cjs.js +0 -0
  459. /package/{dist/lib → lib}/global-link/formats/doc-link.cjs.js.map +0 -0
  460. /package/{dist/lib → lib}/global-link/formats/wiki-link.cjs.js +0 -0
  461. /package/{dist/lib → lib}/global-link/formats/wiki-link.cjs.js.map +0 -0
  462. /package/{dist/lib → lib}/global-link/formats/work-item-link.cjs.js +0 -0
  463. /package/{dist/lib → lib}/global-link/formats/work-item-link.cjs.js.map +0 -0
  464. /package/{dist/lib → lib}/global-link/global-link-panel.cjs.js +0 -0
  465. /package/{dist/lib → lib}/global-link/global-link-panel.cjs.js.map +0 -0
  466. /package/{dist/lib → lib}/global-link/index.cjs.js +0 -0
  467. /package/{dist/lib → lib}/global-link/index.cjs.js.map +0 -0
  468. /package/{dist/lib → lib}/global-link/utils/createTable.cjs.js +0 -0
  469. /package/{dist/lib → lib}/global-link/utils/createTable.cjs.js.map +0 -0
  470. /package/{dist/lib → lib}/index.cjs.js +0 -0
  471. /package/{dist/lib → lib}/index.cjs.js.map +0 -0
  472. /package/{dist/lib → lib}/link/formats/link.cjs.js +0 -0
  473. /package/{dist/lib → lib}/link/formats/link.cjs.js.map +0 -0
  474. /package/{dist/lib → lib}/link/index.cjs.js +0 -0
  475. /package/{dist/lib → lib}/link/index.cjs.js.map +0 -0
  476. /package/{dist/lib → lib}/link/modules/tooltip.cjs.js +0 -0
  477. /package/{dist/lib → lib}/link/modules/tooltip.cjs.js.map +0 -0
  478. /package/{dist/lib → lib}/mention/Mention.cjs.js +0 -0
  479. /package/{dist/lib → lib}/mention/Mention.cjs.js.map +0 -0
  480. /package/{dist/lib → lib}/mention/MentionLink.cjs.js +0 -0
  481. /package/{dist/lib → lib}/mention/MentionLink.cjs.js.map +0 -0
  482. /package/{dist/lib → lib}/mention/constants.cjs.js +0 -0
  483. /package/{dist/lib → lib}/mention/constants.cjs.js.map +0 -0
  484. /package/{dist/lib → lib}/quick-menu/index.cjs.js +0 -0
  485. /package/{dist/lib → lib}/quick-menu/index.cjs.js.map +0 -0
  486. /package/{dist/lib → lib}/screenshot/index.cjs.js +0 -0
  487. /package/{dist/lib → lib}/screenshot/index.cjs.js.map +0 -0
  488. /package/{dist/lib → lib}/soft-break/index.cjs.js +0 -0
  489. /package/{dist/lib → lib}/soft-break/index.cjs.js.map +0 -0
  490. /package/{dist/lib → lib}/strike/index.cjs.js +0 -0
  491. /package/{dist/lib → lib}/strike/index.cjs.js.map +0 -0
  492. /package/{dist/lib → lib}/syntax/index.cjs.js +0 -0
  493. /package/{dist/lib → lib}/syntax/index.cjs.js.map +0 -0
  494. /package/{dist/lib → lib}/table/better-table.cjs.js +0 -0
  495. /package/{dist/lib → lib}/table/better-table.cjs.js.map +0 -0
  496. /package/{dist/lib → lib}/table/formats/header.cjs.js +0 -0
  497. /package/{dist/lib → lib}/table/formats/header.cjs.js.map +0 -0
  498. /package/{dist/lib → lib}/table/formats/list.cjs.js +0 -0
  499. /package/{dist/lib → lib}/table/formats/list.cjs.js.map +0 -0
  500. /package/{dist/lib → lib}/table/formats/table.cjs.js +0 -0
  501. /package/{dist/lib → lib}/table/formats/table.cjs.js.map +0 -0
  502. /package/{dist/lib → lib}/table/modules/table-column-tool.cjs.js +0 -0
  503. /package/{dist/lib → lib}/table/modules/table-column-tool.cjs.js.map +0 -0
  504. /package/{dist/lib → lib}/table/modules/table-operation-menu.cjs.js +0 -0
  505. /package/{dist/lib → lib}/table/modules/table-operation-menu.cjs.js.map +0 -0
  506. /package/{dist/lib → lib}/table/modules/table-scroll-bar.cjs.js +0 -0
  507. /package/{dist/lib → lib}/table/modules/table-scroll-bar.cjs.js.map +0 -0
  508. /package/{dist/lib → lib}/table/modules/table-selection.cjs.js +0 -0
  509. /package/{dist/lib → lib}/table/modules/table-selection.cjs.js.map +0 -0
  510. /package/{dist/lib → lib}/table/table-config.cjs.js +0 -0
  511. /package/{dist/lib → lib}/table/table-config.cjs.js.map +0 -0
  512. /package/{dist/lib → lib}/table/utils/index.cjs.js +0 -0
  513. /package/{dist/lib → lib}/table/utils/index.cjs.js.map +0 -0
  514. /package/{dist/lib → lib}/table/utils/node-matchers.cjs.js +0 -0
  515. /package/{dist/lib → lib}/table/utils/node-matchers.cjs.js.map +0 -0
  516. /package/{dist/lib → lib}/toolbar/better-picker.cjs.js +0 -0
  517. /package/{dist/lib → lib}/toolbar/better-picker.cjs.js.map +0 -0
  518. /package/{dist/lib → lib}/toolbar/index.cjs.js +0 -0
  519. /package/{dist/lib → lib}/toolbar/index.cjs.js.map +0 -0
  520. /package/{dist/lib → lib}/utils/debounce.cjs.js +0 -0
  521. /package/{dist/lib → lib}/utils/debounce.cjs.js.map +0 -0
  522. /package/{dist/lib → lib}/utils/image.cjs.js +0 -0
  523. /package/{dist/lib → lib}/utils/image.cjs.js.map +0 -0
  524. /package/{dist/lib → lib}/utils/method.cjs.js +0 -0
  525. /package/{dist/lib → lib}/utils/method.cjs.js.map +0 -0
  526. /package/{dist/lib → lib}/utils/scroll-lock.cjs.js +0 -0
  527. /package/{dist/lib → lib}/utils/scroll-lock.cjs.js.map +0 -0
  528. /package/{dist/lib → lib}/video/index.cjs.js +0 -0
  529. /package/{dist/lib → lib}/video/index.cjs.js.map +0 -0
  530. /package/{dist/style.css → style.css} +0 -0
@@ -1,62 +0,0 @@
1
- export function css(domNode, rules) {
2
- if (typeof rules === 'object') {
3
- for (const prop in rules) {
4
- if (prop) {
5
- if (Array.isArray(rules[prop])) {
6
- // 兼容IE11浏览器
7
- rules[prop].forEach((val) => {
8
- domNode.style[prop] = val
9
- })
10
- }
11
- else {
12
- domNode.style[prop] = rules[prop]
13
- }
14
- }
15
- }
16
- }
17
- }
18
-
19
- /**
20
- * getRelativeRect
21
- * @param targetRect rect data for target element {Object}
22
- * @param container container element {Element}
23
- * @return an object with rect data {Object}
24
- */
25
- export function getRelativeRect(targetRect, container) {
26
- const containerRect = container.getBoundingClientRect()
27
-
28
- return { // ie浏览器中getBoundingClientRect输出为left、right、top、bottom,与chrome的x、y不同
29
- x: (targetRect.x || targetRect.left) - (containerRect.x || containerRect.left) - container.scrollLeft,
30
- y: (targetRect.y || targetRect.top) - (containerRect.y || containerRect.top) - container.scrollTop,
31
- x1: (targetRect.x || targetRect.left) - (containerRect.x || containerRect.left) - container.scrollLeft + targetRect.width,
32
- y1: (targetRect.y || targetRect.top) - (containerRect.y || containerRect.top) - container.scrollTop + targetRect.height,
33
- width: targetRect.width,
34
- height: targetRect.height,
35
- }
36
- }
37
-
38
- export const elementRemove = function (node) {
39
- node && node.parentNode && node.parentNode.removeChild(node)
40
- }
41
-
42
- export const arrayFrom = function (arrayLike, mapFn?, thisArg?) {
43
- if (!arrayLike) {
44
- throw new TypeError(
45
- 'Array.from requires an array-like object - not null or undefined',
46
- )
47
- }
48
-
49
- const length = arrayLike.length
50
- const resArray = []
51
-
52
- for (let i = 0; i < length; i++) {
53
- if (typeof mapFn === 'function') {
54
- resArray.push(mapFn.call(thisArg, arrayLike[i]))
55
- }
56
- else {
57
- resArray.push(arrayLike[i])
58
- }
59
- }
60
-
61
- return resArray
62
- }
@@ -1,359 +0,0 @@
1
- import Quill from 'quill'
2
- import { omit, splitWithBreak } from '../../config/editor.utils'
3
- import { cellId as tableCellId, rowId as tableRowId, TableViewWrapper } from '../formats/table'
4
- import { CELL_MIN_WIDTH } from '../table-config'
5
-
6
- const Delta = Quill.imports.delta
7
- const InlineBlot = Quill.imports.parchment.InlineBlot
8
-
9
- // rebuild delta
10
- export function matchTableCell(node, delta) {
11
- // fix: 移除旧数据中的pt高度,避免由于高度平均分导致无法插入行
12
- if (node.style.height.indexOf('pt')) {
13
- node.removeAttribute('style')
14
- }
15
-
16
- const row = node.parentNode
17
- let rowId = row.dataset.row
18
- if (!rowId) {
19
- rowId = row.dataset.row = tableRowId()
20
- }
21
- let cellId = node.dataset.cell
22
- // fix: dataset.cell in td will be 'undefined' when insert row/column
23
- if (!cellId || cellId === 'undefined') {
24
- cellId = tableCellId()
25
- }
26
- const colspan = node.getAttribute('colspan') || 1
27
- const rowspan = node.getAttribute('rowspan') || 1
28
-
29
- // fix: empty table cells copied from other place will be removed unexpectedly
30
- if (delta.length() === 0) {
31
- delta = new Delta().insert('\n', {
32
- 'table-cell-line': { row: rowId, cell: cellId, rowspan, colspan },
33
- })
34
- return delta
35
- }
36
-
37
- delta = delta.reduce((newDelta, op) => {
38
- if (op.insert && typeof op.insert === 'string') {
39
- const lines = splitWithBreak(op.insert)
40
-
41
- lines.forEach((text) => {
42
- if (text === '\n') {
43
- let attributes = {}
44
- const cellAttributes = {
45
- row: rowId,
46
- cell: cellId,
47
- rowspan,
48
- colspan,
49
- }
50
- if (op.attributes.table) {
51
- delete op.attributes.table
52
- }
53
- switch (true) {
54
- case !!op.attributes.header:
55
- attributes = Object.assign(op.attributes.header, cellAttributes)
56
- break
57
- case !!op.attributes.list:
58
- attributes = { list: Object.assign(op.attributes.list, cellAttributes) }
59
- break
60
- default:
61
- attributes = { 'table-cell-line': cellAttributes }
62
- }
63
- // fix: when td has background-color, quill can't set it to table-cell bolt
64
- if (op.attributes.background && attributes['table-cell-line']) {
65
- attributes['table-cell-line'].tdBgColor = op.attributes.background
66
- }
67
- newDelta.insert('\n', Object.assign(op.attributes, attributes))
68
- }
69
- else {
70
- newDelta.insert(text, omit(op.attributes, ['table', 'table-cell-line', 'header', 'list']))
71
- }
72
- })
73
- }
74
- else {
75
- newDelta.insert(op.insert, op.attributes)
76
- }
77
-
78
- return newDelta
79
- }, new Delta())
80
-
81
- // fix: table cell height becomes larger(because insert unnecessary <div> on both sides of cell) when init table ngModel
82
- const regexp = /^[\n]+$/
83
- const firstDelta = delta.ops[0]
84
- if (delta.ops.length >= 3) {
85
- const lastDelta = delta.ops[delta.ops.length - 1]
86
- if (regexp.test(firstDelta.insert) && firstDelta.attributes['table-cell-line']) {
87
- delta.ops.splice(0, 1)
88
- }
89
- if (regexp.test(lastDelta.insert) && lastDelta.attributes['table-cell-line']) {
90
- delta.ops[delta.ops.length - 1].insert = '\n'
91
- }
92
- }
93
- else if (delta.ops.length === 1 && regexp.test(firstDelta.insert) && firstDelta.attributes['table-cell-line']) {
94
- delta.ops[0].insert = '\n'
95
- }
96
-
97
- return delta
98
- }
99
-
100
- // replace th tag with td tag
101
- export function matchTableHeader(node, delta, _scroll) {
102
- const row = node.parentNode
103
- const cells = Array.from(row.querySelectorAll('th'))
104
- let rowId = row.dataset.row
105
- if (!rowId) {
106
- rowId = row.dataset.row = tableRowId()
107
- }
108
- const cellId = cells.indexOf(node) + 1
109
- const colspan = node.getAttribute('colspan') || false
110
- const rowspan = node.getAttribute('rowspan') || false
111
-
112
- // fix: empty table cells copied from other place will be removed unexpectedly
113
- if (delta.length() === 0) {
114
- delta = new Delta().insert('\n', {
115
- 'table-cell-line': { row: rowId, cell: cellId, rowspan, colspan },
116
- })
117
- return delta
118
- }
119
-
120
- delta = delta.reduce((newDelta, op) => {
121
- if (op.insert && typeof op.insert === 'string') {
122
- const lines = splitWithBreak(op.insert)
123
-
124
- // fix: no '\n' in the end of op.insert, push a '\n' to lines
125
- if (lines[lines.length - 1] !== '\n') {
126
- lines.push('\n')
127
- }
128
-
129
- lines.forEach((text) => {
130
- text === '\n'
131
- ? newDelta.insert('\n', { 'table-cell-line': { row: rowId, cell: cellId, rowspan, colspan } })
132
- : newDelta.insert(text, op.attributes)
133
- })
134
- }
135
- else {
136
- newDelta.insert(op.insert, op.attributes)
137
- }
138
-
139
- return newDelta
140
- }, new Delta())
141
-
142
- delta = delta.reduce((newDelta, op) => {
143
- if (op.insert && typeof op.insert === 'string' && op.insert.startsWith('\n')) {
144
- newDelta.insert(op.insert, { 'table-cell-line': { row: rowId, cell: cellId, rowspan, colspan } })
145
- }
146
- else {
147
- newDelta.insert(op.insert, { ...omit(op.attributes, ['table', 'table-cell-line']) })
148
- }
149
-
150
- return newDelta
151
- }, new Delta())
152
-
153
- return delta
154
- }
155
-
156
- // supplement colgroup and col
157
- export function matchTable(node, delta, scroll) {
158
- const isWordTable = node.children.length === 1
159
- if (!(node instanceof Element)) {
160
- return
161
- }
162
- const getMaxColNumber = (tds) => {
163
- if (isWordTable) {
164
- return tds.length
165
- }
166
- let colsNumber = 0
167
- tds.forEach((td) => {
168
- colsNumber += td.colSpan
169
- })
170
- return Math.max(tds.length, colsNumber)
171
- }
172
-
173
- const checkMinWidth = (width) => {
174
- if (Number.isNaN(width)) {
175
- // 无指定值时默认为auto,待渲染后修正
176
- return { 'table-col': { width: 'auto' } }
177
- }
178
- else if (width < CELL_MIN_WIDTH) {
179
- // 当列宽度小于默认宽度时取默认宽度
180
- return { 'table-col': true }
181
- }
182
- else {
183
- // 大于默认值取实际指定值
184
- return { 'table-col': { width } }
185
- }
186
- }
187
-
188
- // fix: a table with an empty tr is invalid, should not be displayed
189
- const rows = node.querySelectorAll('tr')
190
- const topRow = rows[0]
191
- const onlyEmptyTr = rows.length === 1 && !topRow.querySelector('td')
192
-
193
- // fix: empty table will return empty delta
194
- if (!topRow || onlyEmptyTr) {
195
- return new Delta().insert('\n')
196
- }
197
-
198
- const colsNumber = node.querySelectorAll('col').length
199
- let maxCellsNumber = 0
200
- let maxCells
201
- // 遍历行获取最大列数和该行的所有单元格
202
- Array.prototype.slice.call(rows).forEach((row) => {
203
- const tds = row.querySelectorAll('td')
204
- maxCellsNumber = Math.max(getMaxColNumber(tds), maxCellsNumber)
205
- maxCells = tds
206
- })
207
-
208
- // 列的累计器
209
- let colCount = 0
210
- delta = delta.reduce((newDelta, op) => {
211
- // 当colCount与colsNumber相等时,则补充相差列
212
- if (colCount === colsNumber) {
213
- const fillNumber = maxCellsNumber - colCount
214
- const outset = colCount
215
- // index为差值列索引,通过遍历差值得到mexCells行中对应索引的单元格宽度
216
- for (let i = 0; i < fillNumber; i++) {
217
- const index = outset + i
218
- const colWidth = Number.parseInt(
219
- index < maxCells.length
220
- ? maxCells[index].width
221
- // maxCells[index].style && maxCells[index].style.width ? maxCells[index].style.width :
222
- : maxCells[maxCells.length - 1].width,
223
- 10,
224
- )
225
- newDelta.insert('\n', checkMinWidth(colWidth))
226
- colCount++
227
- }
228
- }
229
- const attr = op.attributes || {}
230
- switch (true) {
231
- case !!attr['table-col']:
232
- // 只有当前列数小于实际总列数才操作,所以不存在大于的情况
233
- if (colCount < maxCellsNumber) {
234
- // 当table-col宽度一致时会合并为单一insert,insert长度大于1,截取符合实际总列数的长度来插入
235
- const insert = op.insert.slice(0, maxCellsNumber)
236
- const colWidth = Number.parseInt(attr['table-col'].width, 10)
237
- newDelta.insert(insert, checkMinWidth(colWidth))
238
- colCount += insert.length
239
- }
240
- break
241
- case !!attr.notFilled:
242
- { // 将标记的空tr填充对应列数的单元格
243
- const rowId = tableRowId()
244
- for (let x = 0; x < maxCellsNumber; x++) {
245
- newDelta.insert('\n', { 'table-cell-line': { row: rowId, cell: tableCellId(), rowspan: 1, colspan: 1 } })
246
- }
247
- break }
248
- default:
249
- newDelta.insert(op.insert, op.attributes)
250
- }
251
- return newDelta
252
- }, new Delta())
253
-
254
- const tableItem = node.closest('.quill-better-table-wrapper') || node
255
- const prevBlot = tableItem.previousElementSibling && scroll.query(tableItem.previousElementSibling)
256
- const nextBlot = tableItem.nextElementSibling && scroll.query(tableItem.nextElementSibling)
257
- // fix: prevent two adjacent tables from sticking together
258
- if (!nextBlot || nextBlot.prototype instanceof InlineBlot) {
259
- delta = delta.insert('\n')
260
- }
261
- // fix: When there is no line break in front of the table, pressing the Enter key will cause a problem with the table.
262
- if (!prevBlot || prevBlot.prototype instanceof InlineBlot) {
263
- const newLine = new Delta().insert('\n')
264
- delta = newLine.concat(delta)
265
- }
266
- if (nextBlot === TableViewWrapper) {
267
- delta = delta.insert('\n')
268
- }
269
-
270
- return delta
271
- }
272
-
273
- export function matchTableRow(_node, delta) {
274
- // fix: 处理空<tr>标签被忽略的情况
275
- if (delta.ops.length === 1 && !delta.ops[0].attributes) {
276
- delta = new Delta().insert('\n', { notFilled: true })
277
- }
278
- return delta
279
- }
280
-
281
- // match h tags, distinguish between headers in the table and headers outside the table
282
- export function matchHeader(node, delta) {
283
- const newDelta = new Delta()
284
- const fontSize = node.style.fontSize
285
- delta.forEach((op) => {
286
- newDelta.insert(
287
- op.insert,
288
- Object.assign(op.attributes, {
289
- size: fontSize,
290
- }),
291
- )
292
- })
293
- return newDelta
294
- }
295
-
296
- export function matchList(node, delta) {
297
- const value = node.tagName === 'UL' ? 'bullet' : 'ordered'
298
- delta.forEach((op) => {
299
- if (typeof op.attributes.list === 'string') {
300
- delete op.attributes.list
301
- }
302
- else if (typeof op.attributes.list === 'object' && !op.attributes.list.value) {
303
- op.attributes.list.value = value
304
- }
305
- })
306
- return delta
307
- }
308
-
309
- export function matchInline(node, delta, scroll) {
310
- const quill = Quill.find(scroll.domNode.parentNode)
311
- const currentRange = quill.getSelection()
312
- const formats = currentRange && quill.getFormat(currentRange)
313
- if (
314
- formats
315
- && formats['table-cell-line'] // 当前光标节点在表格内,否则不操作delta
316
- && node.nextElementSibling
317
- ) {
318
- // 插入节点是否存在下一个兄弟元素
319
- const match = scroll.query(node)
320
- const nodeHtml = node.nextElementSibling.innerHTML
321
- const nodeText = node.nextElementSibling.textContent
322
- if (
323
- (match && match.prototype instanceof InlineBlot) // 判断当前节点是否为内联
324
- || (node.tagName === 'P' && nodeHtml !== nodeText)
325
- ) {
326
- // 非内联时如果为P且下一个不为text节点
327
- delta.forEach((op) => {
328
- op.insert += '\n'
329
- })
330
- }
331
- }
332
- return delta
333
- }
334
-
335
- // 匹配 word 自带的 v:shape 标签中的图片 v:imageData
336
- export function matchWordShapeImage(node, delta) {
337
- if (node) {
338
- const imageUrl = node.attributes.src?.nodeValue
339
- delta = new Delta().insert({ image: imageUrl })
340
- }
341
- return delta
342
- }
343
-
344
- export function matchMentionLink(node, delta, scroll) {
345
- const name = node.dataset.mentionId
346
- if (name) {
347
- const quill = Quill.find(scroll.domNode.parentNode)
348
- const mention = quill.getModule('mention')
349
- if (mention) {
350
- mention.options.search(name).then((res) => {
351
- const [item] = res
352
- if (item) {
353
- mention.options.select(item)
354
- }
355
- })
356
- }
357
- }
358
- return delta
359
- }