@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,492 +0,0 @@
1
- import Quill from 'quill'
2
- import { CELL_MIN_HEIGHT, CELL_MIN_WIDTH, COL_TOOL_HEIGHT, PRIMARY_COLOR, ROW_TOOL_WIDTH } from '../table-config'
3
- import { css } from '../utils'
4
-
5
- export default class TableColumnTool {
6
- table: any
7
- quill: any
8
- modulesContainer: any
9
- domNode: any
10
- columnCtrlPanel: HTMLDivElement
11
- leftMask: HTMLDivElement
12
- rowCtrlPanel: HTMLDivElement
13
- activeToolCell: HTMLElement
14
- oldRootScrollTop: any
15
- constructor(table, quill, dom) {
16
- if (!table) {
17
- return null
18
- }
19
- this.table = table
20
- this.quill = quill
21
- this.modulesContainer = dom
22
- this.domNode = null
23
- this.oldRootScrollTop = this.quill.root.scrollTop
24
-
25
- this.initColTool()
26
-
27
- if (this.quill.root === this.quill.scrollingContainer) {
28
- this.quill.root.addEventListener('scroll', this.handleQuillRootScroll.bind(this))
29
- }
30
- }
31
-
32
- handleQuillRootScroll() {
33
- if (this.domNode) {
34
- this.domNode.style.marginTop = `${this.oldRootScrollTop - this.quill.root.scrollTop}px`
35
- }
36
- }
37
-
38
- initColTool() {
39
- const parent = this.quill.root.parentNode
40
- const containerRect = parent.getBoundingClientRect()
41
- const tableViewRect = this.table.parentNode.getBoundingClientRect()
42
-
43
- this.domNode = document.createElement('div')
44
- this.domNode.classList.add('qlbt-table-control-panel')
45
-
46
- // 以下添加顺序影响遮罩顺序,勿改变
47
- this.columnCtrlPanel = document.createElement('div')
48
- this.columnCtrlPanel.classList.add('qlbt-column-control-panel')
49
- this.domNode.appendChild(this.columnCtrlPanel)
50
-
51
- this.leftMask = document.createElement('div')
52
- this.leftMask.classList.add('qlbt-left-mask')
53
- css(this.leftMask, { height: `${tableViewRect.height + 50}px` })
54
- this.domNode.appendChild(this.leftMask)
55
-
56
- this.rowCtrlPanel = document.createElement('div')
57
- this.rowCtrlPanel.classList.add('qlbt-row-control-panel')
58
- this.domNode.appendChild(this.rowCtrlPanel)
59
-
60
- this.updateRowToolCells()
61
- this.updateColToolCells()
62
-
63
- this.modulesContainer.appendChild(this.domNode)
64
- css(this.domNode, {
65
- width: '100%',
66
- height: `${COL_TOOL_HEIGHT}px`,
67
- left: '0px',
68
- top: `${tableViewRect.top - containerRect.top + parent.scrollTop - 25}px`,
69
- })
70
- }
71
-
72
- createToolCell(isRow) {
73
- // @ts-ignore
74
- window.quillIsIntable = true
75
- const toolCell = document.createElement('div')
76
- const selector = document.createElement('div')
77
- const resizeHolder = document.createElement('div')
78
- if (isRow) {
79
- toolCell.classList.add('qlbt-row-tool-cell')
80
- selector.classList.add('qlbt-row-tool-cell-selector')
81
- resizeHolder.classList.add('qlbt-row-tool-cell-holder')
82
- css(toolCell, { width: `${ROW_TOOL_WIDTH}px` })
83
- }
84
- else {
85
- toolCell.classList.add('qlbt-col-tool-cell')
86
- selector.classList.add('qlbt-col-tool-cell-selector')
87
- resizeHolder.classList.add('qlbt-col-tool-cell-holder')
88
- css(toolCell, { height: `${COL_TOOL_HEIGHT}px` })
89
- }
90
- toolCell.appendChild(selector)
91
- toolCell.appendChild(resizeHolder)
92
- return toolCell
93
- }
94
-
95
- updateColToolCells() {
96
- const tableContainer = Quill.find(this.table)
97
- if (!tableContainer) {
98
- return
99
- }
100
- const tableCols = tableContainer.colGroup().children
101
- const tableColsNum = Math.max(Array.from(tableCols).length, tableContainer.colGroup().domNode.children.length)
102
- const existCells: any = Array.from(this.columnCtrlPanel.querySelectorAll('.qlbt-col-tool-cell'))
103
- const cellsNumber = Math.max(existCells.length, tableColsNum)
104
-
105
- for (let index = 0; index < cellsNumber; index++) {
106
- let col = tableCols.at(index)
107
- let colWidth = 0
108
- if (!col || col.domNode !== tableContainer.colGroup().domNode.children[index]) {
109
- col = tableContainer.colGroup().domNode.children[index]
110
- colWidth = col ? col.width : tableContainer.colGroup().domNode.children[index - 1].width
111
- }
112
- else {
113
- colWidth = Number.parseInt(col.formats()[col.statics.blotName].width, 10)
114
- }
115
- // if cell already exist
116
- let colToolCell = null
117
- if (!existCells[index]) {
118
- colToolCell = this.createToolCell(false)
119
- this.columnCtrlPanel.appendChild(colToolCell)
120
- this.addColCellSelectHandler(colToolCell)
121
- this.addColCellHolderHandler(colToolCell)
122
- // set tool cell min-width
123
- css(colToolCell, {
124
- 'min-width': `${colWidth}px`,
125
- })
126
- }
127
- else if (existCells[index] && index >= tableColsNum) {
128
- existCells[index].remove()
129
- }
130
- else {
131
- colToolCell = existCells[index]
132
- // set tool cell min-width
133
- css(colToolCell, {
134
- 'min-width': `${colWidth}px`,
135
- })
136
- }
137
- }
138
- }
139
-
140
- updateRowToolCells() {
141
- const tableContainer = Quill.find(this.table)
142
- if (!tableContainer) {
143
- return
144
- }
145
- let tableRows = Array.from(tableContainer.domNode.querySelectorAll('tr'))
146
- tableRows = tableRows.filter((tr: any) => tr.children.length)
147
- const existCells: any = Array.from(this.rowCtrlPanel.querySelectorAll('.qlbt-row-tool-cell'))
148
- const rowNumber = Math.max(existCells.length, tableRows.length)
149
-
150
- for (let index = 0; index < rowNumber; index++) {
151
- const row: any = tableRows[index]
152
-
153
- // fix: 修复 IE11/Edge 下无法拿到 height 的问题
154
- // IE11/Edge 下 height 会变成 'auto'
155
- let computedHeight = row && getComputedStyle(row).height
156
- if (computedHeight === 'auto') {
157
- computedHeight = row.querySelector('td').style.height || '30px'
158
- }
159
-
160
- let rowHeight = row && Number.parseFloat(computedHeight)
161
- if (rowHeight < CELL_MIN_HEIGHT) {
162
- const rowChildHeight = row && row.childNodes[0] && Number.parseFloat(getComputedStyle(row.childNodes[0]).height)
163
- rowHeight = rowChildHeight
164
- }
165
- // if cell already exist
166
- let rowToolCell = null
167
- if (!existCells[index]) {
168
- rowToolCell = this.createToolCell(true)
169
- this.rowCtrlPanel.appendChild(rowToolCell)
170
- this.addRowCellSelectHandler(rowToolCell)
171
- this.addRowCellHolderHandler(rowToolCell)
172
- // set tool cell height, ff not support min-height
173
- css(rowToolCell, { height: `${rowHeight}px` })
174
- }
175
- else if (existCells[index] && index >= tableRows.length) {
176
- existCells[index].remove()
177
- }
178
- else {
179
- rowToolCell = existCells[index]
180
- css(rowToolCell, { height: `${rowHeight}px` })
181
- }
182
- }
183
- }
184
-
185
- destroy() {
186
- // @ts-ignore
187
- window.quillIsIntable = false
188
- this.domNode.remove()
189
- return null
190
- }
191
-
192
- addRowCellSelectHandler(cell) {
193
- const selector = cell.querySelector('.qlbt-row-tool-cell-selector')
194
-
195
- const handleClick = (e) => {
196
- e.preventDefault()
197
-
198
- const dom = e.target.parentNode
199
- const domRect = dom.getBoundingClientRect()
200
- const containerRect = this.quill.root.parentNode.getBoundingClientRect()
201
- const tableRect = this.table.getBoundingClientRect()
202
- const tableSelection = this.quill.getModule('better-table').tableSelection
203
- tableSelection.boundary = {
204
- x: tableRect.left - containerRect.left, // 表格左上角X轴坐标
205
- x1: tableRect.left - containerRect.left + tableRect.width - 2, // 表格右上角X轴坐标
206
- y: domRect.top - containerRect.top, // 表格左上角Y轴坐标
207
- y1: domRect.top - containerRect.top + domRect.height - 1, // 表格右上角Y轴坐标
208
- width: tableRect.width - 2,
209
- height: domRect.height - 1,
210
- }
211
- tableSelection.selectedTds = tableSelection.computeSelectedTds()
212
- tableSelection.repositionHelpLines()
213
-
214
- dom.classList.add('qlbt-tool-cell-on')
215
- this.activeToolCell = dom
216
- }
217
-
218
- selector.addEventListener('click', handleClick, false)
219
- }
220
-
221
- addRowCellHolderHandler(cell) {
222
- const holder = cell.querySelector('.qlbt-row-tool-cell-holder')
223
- let dragging = false
224
- let y0 = 0
225
- let y = 0
226
- let delta = 0
227
- let height0 = 0
228
- // helpLine relation variable
229
- let tableRect: any = {}
230
- let cellRect: any = {}
231
- let helpLine = null
232
-
233
- const handleDrag = (e) => {
234
- e.preventDefault()
235
-
236
- if (dragging) {
237
- y = e.clientY
238
-
239
- if (height0 + y - y0 >= CELL_MIN_HEIGHT) {
240
- delta = y - y0
241
- }
242
- else {
243
- delta = CELL_MIN_HEIGHT - height0
244
- }
245
-
246
- css(helpLine, {
247
- top: `${cellRect.top + cellRect.height + delta}px`,
248
- })
249
- }
250
- }
251
-
252
- const handleMouseup = (e) => {
253
- e.preventDefault()
254
-
255
- const existCells = Array.from(this.domNode.querySelectorAll('.qlbt-row-tool-cell'))
256
- const rowIndex = existCells.indexOf(cell)
257
- const rows: any = Array.from(this.table.querySelectorAll('tr'))
258
- const tds = Array.from(rows[rowIndex].childNodes)
259
- const hasContentTd: any = tds.find((td: any) => td.getAttribute('rowspan') === '1' && td.textContent !== '\n')
260
-
261
- if (dragging) {
262
- let tdHeight = `${height0 + delta}px`
263
- if (hasContentTd) {
264
- tds.forEach((td: any) => td.getAttribute('rowspan') === '1' && css(td, { height: tdHeight }))
265
- const currentHeight = getComputedStyle(hasContentTd).height
266
- tdHeight = (Number.parseInt(currentHeight, 10) > height0 + delta && currentHeight) || tdHeight
267
- }
268
- css(cell, { height: tdHeight })
269
- tds.forEach((td: any) => td.getAttribute('rowspan') === '1' && css(td, { height: tdHeight }))
270
-
271
- const tableViewRect = this.table.parentNode.getBoundingClientRect()
272
- css(this.leftMask, { height: `${tableViewRect.height + 50}px` })
273
-
274
- y0 = 0
275
- y = 0
276
- delta = 0
277
- height0 = 0
278
- dragging = false
279
- holder.classList.remove('dragging')
280
- }
281
-
282
- this.quill.root.parentNode.removeEventListener('mousemove', handleDrag, false)
283
- document.removeEventListener('mouseup', handleMouseup, false)
284
- tableRect = {}
285
- cellRect = {}
286
- helpLine.remove()
287
- helpLine = null
288
-
289
- const betterTableModule = this.quill.getModule('better-table')
290
- const tableScrollBar = betterTableModule.tableScrollBar
291
- tableScrollBar.resetTableHeight(this.table)
292
-
293
- // fix: 拖动滚动条时修正选区位置
294
- const tableSelection = betterTableModule.tableSelection
295
- if (tableSelection && tableSelection.selectedTds.length) {
296
- tableSelection.refreshHelpLinesPosition()
297
- }
298
- }
299
-
300
- const handleMousedown = (e) => {
301
- e.preventDefault()
302
-
303
- this.quill.root.parentNode.addEventListener('mousemove', handleDrag, false)
304
- document.addEventListener('mouseup', handleMouseup, false)
305
-
306
- tableRect = this.table.getBoundingClientRect()
307
- const tableViewRect = this.table.parentNode.getBoundingClientRect()
308
- const width = (tableRect.width > tableViewRect.width && tableViewRect.width) || tableRect.width
309
- cellRect = cell.getBoundingClientRect()
310
- helpLine = document.createElement('div')
311
- css(helpLine, {
312
- position: 'fixed',
313
- top: `${cellRect.top + cellRect.height}px`,
314
- left: `${cellRect.left}px`,
315
- zIndex: '100',
316
- width: `${width + ROW_TOOL_WIDTH + 9}px`,
317
- height: '1px',
318
- backgroundColor: PRIMARY_COLOR,
319
- })
320
-
321
- this.quill.root.parentNode.appendChild(helpLine)
322
- dragging = true
323
- y0 = e.clientY
324
- height0 = cellRect.height
325
- holder.classList.add('dragging')
326
- }
327
-
328
- holder.addEventListener('mousedown', handleMousedown, false)
329
- }
330
-
331
- addColCellSelectHandler(cell) {
332
- // 上方列宽控制条
333
-
334
- const selector = cell.querySelector('.qlbt-col-tool-cell-selector')
335
-
336
- const handleClick = (e) => {
337
- e.preventDefault()
338
-
339
- const dom = e.target.parentNode
340
- const domRect = dom.getBoundingClientRect()
341
- const containerRect = this.quill.root.parentNode.getBoundingClientRect()
342
- const tableRect = this.table.getBoundingClientRect()
343
- const tableSelection = this.quill.getModule('better-table').tableSelection
344
- tableSelection.boundary = {
345
- x: domRect.left - containerRect.left - 1,
346
- x1: domRect.left - containerRect.left + domRect.width - 2,
347
- y: tableRect.top - containerRect.top,
348
- y1: tableRect.top - containerRect.top + tableRect.height - 2,
349
- width: domRect.width,
350
- height: tableRect.height - 2,
351
- }
352
- tableSelection.selectedTds = tableSelection.computeSelectedTds()
353
- tableSelection.repositionHelpLines()
354
-
355
- dom.classList.add('qlbt-tool-cell-on')
356
- this.activeToolCell = dom
357
- }
358
- selector.addEventListener('click', handleClick, false)
359
- }
360
-
361
- addColCellHolderHandler(cell) {
362
- const tableContainer = Quill.find(this.table)
363
- const holder = cell.querySelector('.qlbt-col-tool-cell-holder')
364
- let dragging = false
365
- let x0 = 0
366
- let x = 0
367
- let delta: any = 0
368
- let width0 = 0
369
- // helpLine relation variable
370
- let tableRect: any = {}
371
- let scrollContainerRect = null
372
- let cellRect: any = {}
373
- let helpLine = null
374
-
375
- const handleDrag = (e) => {
376
- e.preventDefault()
377
-
378
- if (dragging) {
379
- x = e.clientX
380
-
381
- if (width0 + x - x0 >= CELL_MIN_WIDTH) {
382
- delta = x - x0
383
- }
384
- else {
385
- delta = CELL_MIN_WIDTH - width0
386
- }
387
- let left = cellRect.left + cellRect.width - 1 + delta
388
- if (scrollContainerRect) {
389
- left -= scrollContainerRect.left
390
- }
391
-
392
- css(helpLine, {
393
- left: `${left}px`,
394
- })
395
- }
396
- }
397
-
398
- const handleMouseup = (e) => {
399
- e.preventDefault()
400
-
401
- const existCells = Array.from(this.domNode.querySelectorAll('.qlbt-col-tool-cell'))
402
- const colIndex = existCells.indexOf(cell)
403
- let colBlot = tableContainer.colGroup().children.at(colIndex)
404
- if (!colBlot || colBlot.domNode !== tableContainer.colGroup().domNode.children[colIndex]) {
405
- colBlot = tableContainer.colGroup().domNode.children[colIndex]
406
- }
407
- if (dragging) {
408
- // fix: 防止 colWidth 是小数
409
- const colWidth = Number.parseInt(width0 + delta, 10)
410
- if (colBlot.format) {
411
- colBlot.format('width', colWidth)
412
- }
413
- else {
414
- colBlot.width = colWidth
415
- }
416
-
417
- css(cell, { 'min-width': `${colWidth}px` })
418
-
419
- x0 = 0
420
- x = 0
421
- delta = 0
422
- width0 = 0
423
- dragging = false
424
- holder.classList.remove('dragging')
425
- }
426
-
427
- this.quill.root.parentNode.removeEventListener('mousemove', handleDrag, false)
428
- document.removeEventListener('mouseup', handleMouseup, false)
429
- tableRect = {}
430
- scrollContainerRect = null
431
- cellRect = {}
432
- helpLine.remove()
433
- helpLine = null
434
- tableContainer.updateTableWidth()
435
-
436
- setTimeout(() => {
437
- this.updateRowToolCells()
438
- const betterTableModule = this.quill.getModule('better-table')
439
- const tableScrollBar = betterTableModule.tableScrollBar
440
- tableScrollBar.updateScrollBar()
441
- // fix: 拖动滚动条时修正选区位置
442
- const tableSelection = betterTableModule.tableSelection
443
- if (tableSelection && tableSelection.selectedTds.length) {
444
- tableSelection.refreshHelpLinesPosition()
445
- }
446
- })
447
- }
448
-
449
- const handleMousedown = (e) => {
450
- e.preventDefault()
451
-
452
- this.quill.root.parentNode.addEventListener('mousemove', handleDrag, false)
453
- document.addEventListener('mouseup', handleMouseup, false)
454
-
455
- tableRect = this.table.getBoundingClientRect()
456
- cellRect = cell.getBoundingClientRect()
457
-
458
- let positionValue = 'fixed'
459
- let top = cellRect.top
460
- let left = cellRect.left + cellRect.width - 1
461
- if (this.quill.root === this.quill.scrollingContainer) {
462
- positionValue = 'absolute'
463
- scrollContainerRect = this.quill.root.getBoundingClientRect()
464
- top -= scrollContainerRect.top
465
- left -= scrollContainerRect.left
466
- }
467
-
468
- helpLine = document.createElement('div')
469
- css(helpLine, {
470
- position: positionValue,
471
- top: `${top}px`,
472
- left: `${left}px`,
473
- zIndex: '100',
474
- height: `${tableRect.height + COL_TOOL_HEIGHT + 8}px`,
475
- width: '1px',
476
- backgroundColor: PRIMARY_COLOR,
477
- })
478
-
479
- this.quill.root.parentNode.appendChild(helpLine)
480
- dragging = true
481
- x0 = e.clientX
482
- width0 = cellRect.width
483
- holder.classList.add('dragging')
484
- }
485
-
486
- holder.addEventListener('mousedown', handleMousedown, false)
487
- }
488
-
489
- colToolCells() {
490
- return Array.from(this.domNode.querySelectorAll('.qlbt-col-tool-cell'))
491
- }
492
- }