@opentiny/fluent-editor 3.20.2-alpha.0 → 3.20.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/dist/package.json +52 -0
  2. package/package.json +3 -3
  3. package/scripts/pre-release.js +34 -0
  4. package/src/assets/better-table.scss +367 -0
  5. package/src/assets/common.scss +279 -0
  6. package/src/assets/counter.scss +19 -0
  7. package/src/assets/custom-image.scss +20 -0
  8. package/src/assets/editor.scss +365 -0
  9. package/src/assets/emoji/emoji.scss +461 -0
  10. package/src/assets/emoji/style.scss +252 -0
  11. package/src/assets/fileBar.scss +116 -0
  12. package/src/assets/font.scss +36 -0
  13. package/src/assets/fullscreen.scss +21 -0
  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 +16 -0
  19. package/src/assets/link.scss +130 -0
  20. package/src/assets/mention.scss +48 -0
  21. package/src/assets/screenshot.scss +78 -0
  22. package/src/assets/size.scss +13 -0
  23. package/src/assets/style.scss +39 -0
  24. package/src/assets/tasklist.scss +76 -0
  25. package/src/assets/toolbar.scss +416 -0
  26. package/src/attributors/font-size.ts +6 -0
  27. package/src/attributors/font-style.ts +6 -0
  28. package/src/attributors/index.ts +4 -0
  29. package/src/attributors/line-height.ts +6 -0
  30. package/src/attributors/text-indent.ts +6 -0
  31. package/src/config/base64-image.ts +8 -0
  32. package/src/config/editor.config.ts +88 -0
  33. package/src/config/editor.utils.ts +199 -0
  34. package/src/config/i18n/en-us.ts +106 -0
  35. package/src/config/i18n/zh-cn.ts +104 -0
  36. package/src/config/icons.config.ts +297 -0
  37. package/src/config/index.ts +171 -0
  38. package/src/config/types/additional-toolbar-item.interface.ts +8 -0
  39. package/src/config/types/content-change.interface.ts +13 -0
  40. package/src/config/types/content-save.interface.ts +6 -0
  41. package/src/config/types/counter-option.interface.ts +9 -0
  42. package/src/config/types/editor-config.interface.ts +22 -0
  43. package/src/config/types/editor-modules.interface.ts +41 -0
  44. package/src/config/types/file-operation.interface.ts +12 -0
  45. package/src/config/types/focus-change.interface.ts +4 -0
  46. package/src/config/types/fullscreen-module.interface.ts +4 -0
  47. package/src/config/types/help-panel-item.interface.ts +5 -0
  48. package/src/config/types/help-panel-option.interface.ts +7 -0
  49. package/src/config/types/image-module.interface.ts +3 -0
  50. package/src/config/types/image-upload.interface.ts +7 -0
  51. package/src/config/types/index.ts +22 -0
  52. package/src/config/types/load-on-demand-module.interface.ts +5 -0
  53. package/src/config/types/mention-module.interface.ts +8 -0
  54. package/src/config/types/paste-change.interface.ts +6 -0
  55. package/src/config/types/quick-menu-module.interface.ts +3 -0
  56. package/src/config/types/range.interface.ts +4 -0
  57. package/src/config/types/registry-options.interface.ts +5 -0
  58. package/src/config/types/selection-change.interface.ts +8 -0
  59. package/src/config/types/toolbar-item.interface.ts +13 -0
  60. package/src/config/types/type.ts +5 -0
  61. package/src/config/types/validate-error.interface.ts +11 -0
  62. package/src/counter/index.ts +69 -0
  63. package/src/custom-clipboard.ts +633 -0
  64. package/src/custom-image/BlotFormatter.ts +167 -0
  65. package/src/custom-image/Options.ts +150 -0
  66. package/src/custom-image/actions/Action.ts +13 -0
  67. package/src/custom-image/actions/CustomResizeAction.ts +207 -0
  68. package/src/custom-image/actions/DeleteAction.ts +29 -0
  69. package/src/custom-image/image.ts +118 -0
  70. package/src/custom-image/specs/BlotSpec.ts +30 -0
  71. package/src/custom-image/specs/CustomImageSpec.ts +139 -0
  72. package/src/custom-image/specs/ImageSpec.ts +33 -0
  73. package/src/custom-uploader.ts +199 -0
  74. package/src/emoji/emoji-list/index.ts +1 -0
  75. package/src/emoji/emoji-list/people.ts +111 -0
  76. package/src/emoji/emoji-list.ts +9 -0
  77. package/src/emoji/emoji-map.ts +9 -0
  78. package/src/emoji/formats/emoji-blot.ts +54 -0
  79. package/src/emoji/index.ts +5 -0
  80. package/src/emoji/modules/emoji.ts +318 -0
  81. package/src/emoji/modules/toolbar-emoji.ts +182 -0
  82. package/src/emoji/utils.ts +15 -0
  83. package/src/file/formats/file.ts +67 -0
  84. package/src/file/index.ts +38 -0
  85. package/src/file/modules/file-bar.ts +146 -0
  86. package/src/fluent-editor.ts +164 -0
  87. package/src/format-painter/index.ts +79 -0
  88. package/src/global-link/constants.ts +3 -0
  89. package/src/global-link/formats/customer-widget-link.ts +36 -0
  90. package/src/global-link/formats/doc-link.ts +55 -0
  91. package/src/global-link/formats/wiki-link.ts +45 -0
  92. package/src/global-link/formats/work-item-link.ts +47 -0
  93. package/src/global-link/global-link-panel.ts +20 -0
  94. package/src/global-link/index.ts +165 -0
  95. package/src/global-link/utils/createTable.ts +54 -0
  96. package/src/index.ts +5 -0
  97. package/src/link/formats/link.ts +44 -0
  98. package/src/link/index.ts +35 -0
  99. package/src/link/modules/tooltip.ts +318 -0
  100. package/src/mention/Mention.ts +406 -0
  101. package/src/mention/MentionLink.ts +51 -0
  102. package/src/mention/constants.ts +3 -0
  103. package/src/quick-menu/index.ts +100 -0
  104. package/src/screenshot/index.ts +231 -0
  105. package/src/soft-break/index.ts +34 -0
  106. package/src/strike/index.ts +16 -0
  107. package/src/syntax/index.ts +35 -0
  108. package/src/table/better-table.ts +553 -0
  109. package/src/table/formats/header.ts +129 -0
  110. package/src/table/formats/list.ts +229 -0
  111. package/src/table/formats/table.ts +1272 -0
  112. package/src/table/modules/table-column-tool.ts +492 -0
  113. package/src/table/modules/table-operation-menu.ts +584 -0
  114. package/src/table/modules/table-scroll-bar.ts +248 -0
  115. package/src/table/modules/table-selection.ts +387 -0
  116. package/src/table/table-config.ts +42 -0
  117. package/src/table/utils/index.ts +62 -0
  118. package/src/table/utils/node-matchers.ts +359 -0
  119. package/src/toolbar/better-picker.ts +370 -0
  120. package/src/toolbar/index.ts +180 -0
  121. package/src/utils/debounce.ts +149 -0
  122. package/src/utils/image.ts +22 -0
  123. package/src/utils/method.ts +82 -0
  124. package/src/utils/scroll-lock.ts +52 -0
  125. package/src/video/index.ts +62 -0
  126. package/tsconfig.json +26 -0
  127. package/vite.config.theme.ts +20 -0
  128. package/vite.config.ts +56 -0
  129. /package/{README.md → dist/README.md} +0 -0
  130. /package/{es → dist/es}/attributors/font-size.es.js +0 -0
  131. /package/{es → dist/es}/attributors/font-size.es.js.map +0 -0
  132. /package/{es → dist/es}/attributors/font-style.es.js +0 -0
  133. /package/{es → dist/es}/attributors/font-style.es.js.map +0 -0
  134. /package/{es → dist/es}/attributors/index.es.js +0 -0
  135. /package/{es → dist/es}/attributors/index.es.js.map +0 -0
  136. /package/{es → dist/es}/attributors/line-height.es.js +0 -0
  137. /package/{es → dist/es}/attributors/line-height.es.js.map +0 -0
  138. /package/{es → dist/es}/attributors/text-indent.es.js +0 -0
  139. /package/{es → dist/es}/attributors/text-indent.es.js.map +0 -0
  140. /package/{es → dist/es}/config/base64-image.es.js +0 -0
  141. /package/{es → dist/es}/config/base64-image.es.js.map +0 -0
  142. /package/{es → dist/es}/config/editor.config.es.js +0 -0
  143. /package/{es → dist/es}/config/editor.config.es.js.map +0 -0
  144. /package/{es → dist/es}/config/editor.utils.es.js +0 -0
  145. /package/{es → dist/es}/config/editor.utils.es.js.map +0 -0
  146. /package/{es → dist/es}/config/i18n/en-us.es.js +0 -0
  147. /package/{es → dist/es}/config/i18n/en-us.es.js.map +0 -0
  148. /package/{es → dist/es}/config/i18n/zh-cn.es.js +0 -0
  149. /package/{es → dist/es}/config/i18n/zh-cn.es.js.map +0 -0
  150. /package/{es → dist/es}/config/icons.config.es.js +0 -0
  151. /package/{es → dist/es}/config/icons.config.es.js.map +0 -0
  152. /package/{es → dist/es}/config/index.es.js +0 -0
  153. /package/{es → dist/es}/config/index.es.js.map +0 -0
  154. /package/{es → dist/es}/config/types/additional-toolbar-item.interface.es.js +0 -0
  155. /package/{es → dist/es}/config/types/additional-toolbar-item.interface.es.js.map +0 -0
  156. /package/{es → dist/es}/config/types/content-change.interface.es.js +0 -0
  157. /package/{es → dist/es}/config/types/content-change.interface.es.js.map +0 -0
  158. /package/{es → dist/es}/config/types/content-save.interface.es.js +0 -0
  159. /package/{es → dist/es}/config/types/content-save.interface.es.js.map +0 -0
  160. /package/{es → dist/es}/config/types/counter-option.interface.es.js +0 -0
  161. /package/{es → dist/es}/config/types/counter-option.interface.es.js.map +0 -0
  162. /package/{es → dist/es}/config/types/editor-config.interface.es.js +0 -0
  163. /package/{es → dist/es}/config/types/editor-config.interface.es.js.map +0 -0
  164. /package/{es → dist/es}/config/types/editor-modules.interface.es.js +0 -0
  165. /package/{es → dist/es}/config/types/editor-modules.interface.es.js.map +0 -0
  166. /package/{es → dist/es}/config/types/file-operation.interface.es.js +0 -0
  167. /package/{es → dist/es}/config/types/file-operation.interface.es.js.map +0 -0
  168. /package/{es → dist/es}/config/types/focus-change.interface.es.js +0 -0
  169. /package/{es → dist/es}/config/types/focus-change.interface.es.js.map +0 -0
  170. /package/{es → dist/es}/config/types/fullscreen-module.interface.es.js +0 -0
  171. /package/{es → dist/es}/config/types/fullscreen-module.interface.es.js.map +0 -0
  172. /package/{es → dist/es}/config/types/help-panel-item.interface.es.js +0 -0
  173. /package/{es → dist/es}/config/types/help-panel-item.interface.es.js.map +0 -0
  174. /package/{es → dist/es}/config/types/help-panel-option.interface.es.js +0 -0
  175. /package/{es → dist/es}/config/types/help-panel-option.interface.es.js.map +0 -0
  176. /package/{es → dist/es}/config/types/image-module.interface.es.js +0 -0
  177. /package/{es → dist/es}/config/types/image-module.interface.es.js.map +0 -0
  178. /package/{es → dist/es}/config/types/image-upload.interface.es.js +0 -0
  179. /package/{es → dist/es}/config/types/image-upload.interface.es.js.map +0 -0
  180. /package/{es → dist/es}/config/types/index.es.js +0 -0
  181. /package/{es → dist/es}/config/types/index.es.js.map +0 -0
  182. /package/{es → dist/es}/config/types/load-on-demand-module.interface.es.js +0 -0
  183. /package/{es → dist/es}/config/types/load-on-demand-module.interface.es.js.map +0 -0
  184. /package/{es → dist/es}/config/types/mention-module.interface.es.js +0 -0
  185. /package/{es → dist/es}/config/types/mention-module.interface.es.js.map +0 -0
  186. /package/{es → dist/es}/config/types/paste-change.interface.es.js +0 -0
  187. /package/{es → dist/es}/config/types/paste-change.interface.es.js.map +0 -0
  188. /package/{es → dist/es}/config/types/quick-menu-module.interface.es.js +0 -0
  189. /package/{es → dist/es}/config/types/quick-menu-module.interface.es.js.map +0 -0
  190. /package/{es → dist/es}/config/types/range.interface.es.js +0 -0
  191. /package/{es → dist/es}/config/types/range.interface.es.js.map +0 -0
  192. /package/{es → dist/es}/config/types/registry-options.interface.es.js +0 -0
  193. /package/{es → dist/es}/config/types/registry-options.interface.es.js.map +0 -0
  194. /package/{es → dist/es}/config/types/selection-change.interface.es.js +0 -0
  195. /package/{es → dist/es}/config/types/selection-change.interface.es.js.map +0 -0
  196. /package/{es → dist/es}/config/types/toolbar-item.interface.es.js +0 -0
  197. /package/{es → dist/es}/config/types/toolbar-item.interface.es.js.map +0 -0
  198. /package/{es → dist/es}/config/types/type.es.js +0 -0
  199. /package/{es → dist/es}/config/types/type.es.js.map +0 -0
  200. /package/{es → dist/es}/config/types/validate-error.interface.es.js +0 -0
  201. /package/{es → dist/es}/config/types/validate-error.interface.es.js.map +0 -0
  202. /package/{es → dist/es}/counter/index.es.js +0 -0
  203. /package/{es → dist/es}/counter/index.es.js.map +0 -0
  204. /package/{es → dist/es}/custom-clipboard.es.js +0 -0
  205. /package/{es → dist/es}/custom-clipboard.es.js.map +0 -0
  206. /package/{es → dist/es}/custom-image/BlotFormatter.es.js +0 -0
  207. /package/{es → dist/es}/custom-image/BlotFormatter.es.js.map +0 -0
  208. /package/{es → dist/es}/custom-image/Options.es.js +0 -0
  209. /package/{es → dist/es}/custom-image/Options.es.js.map +0 -0
  210. /package/{es → dist/es}/custom-image/actions/Action.es.js +0 -0
  211. /package/{es → dist/es}/custom-image/actions/Action.es.js.map +0 -0
  212. /package/{es → dist/es}/custom-image/actions/CustomResizeAction.es.js +0 -0
  213. /package/{es → dist/es}/custom-image/actions/CustomResizeAction.es.js.map +0 -0
  214. /package/{es → dist/es}/custom-image/actions/DeleteAction.es.js +0 -0
  215. /package/{es → dist/es}/custom-image/actions/DeleteAction.es.js.map +0 -0
  216. /package/{es → dist/es}/custom-image/image.es.js +0 -0
  217. /package/{es → dist/es}/custom-image/image.es.js.map +0 -0
  218. /package/{es → dist/es}/custom-image/specs/BlotSpec.es.js +0 -0
  219. /package/{es → dist/es}/custom-image/specs/BlotSpec.es.js.map +0 -0
  220. /package/{es → dist/es}/custom-image/specs/CustomImageSpec.es.js +0 -0
  221. /package/{es → dist/es}/custom-image/specs/CustomImageSpec.es.js.map +0 -0
  222. /package/{es → dist/es}/custom-image/specs/ImageSpec.es.js +0 -0
  223. /package/{es → dist/es}/custom-image/specs/ImageSpec.es.js.map +0 -0
  224. /package/{es → dist/es}/custom-uploader.es.js +0 -0
  225. /package/{es → dist/es}/custom-uploader.es.js.map +0 -0
  226. /package/{es → dist/es}/emoji/emoji-list/index.es.js +0 -0
  227. /package/{es → dist/es}/emoji/emoji-list/index.es.js.map +0 -0
  228. /package/{es → dist/es}/emoji/emoji-list/people.es.js +0 -0
  229. /package/{es → dist/es}/emoji/emoji-list/people.es.js.map +0 -0
  230. /package/{es → dist/es}/emoji/emoji-list.es.js +0 -0
  231. /package/{es → dist/es}/emoji/emoji-list.es.js.map +0 -0
  232. /package/{es → dist/es}/emoji/emoji-map.es.js +0 -0
  233. /package/{es → dist/es}/emoji/emoji-map.es.js.map +0 -0
  234. /package/{es → dist/es}/emoji/formats/emoji-blot.es.js +0 -0
  235. /package/{es → dist/es}/emoji/formats/emoji-blot.es.js.map +0 -0
  236. /package/{es → dist/es}/emoji/index.es.js +0 -0
  237. /package/{es → dist/es}/emoji/index.es.js.map +0 -0
  238. /package/{es → dist/es}/emoji/modules/emoji.es.js +0 -0
  239. /package/{es → dist/es}/emoji/modules/emoji.es.js.map +0 -0
  240. /package/{es → dist/es}/emoji/modules/toolbar-emoji.es.js +0 -0
  241. /package/{es → dist/es}/emoji/modules/toolbar-emoji.es.js.map +0 -0
  242. /package/{es → dist/es}/emoji/utils.es.js +0 -0
  243. /package/{es → dist/es}/emoji/utils.es.js.map +0 -0
  244. /package/{es → dist/es}/file/formats/file.es.js +0 -0
  245. /package/{es → dist/es}/file/formats/file.es.js.map +0 -0
  246. /package/{es → dist/es}/file/index.es.js +0 -0
  247. /package/{es → dist/es}/file/index.es.js.map +0 -0
  248. /package/{es → dist/es}/file/modules/file-bar.es.js +0 -0
  249. /package/{es → dist/es}/file/modules/file-bar.es.js.map +0 -0
  250. /package/{es → dist/es}/fluent-editor.es.js +0 -0
  251. /package/{es → dist/es}/fluent-editor.es.js.map +0 -0
  252. /package/{es → dist/es}/format-painter/index.es.js +0 -0
  253. /package/{es → dist/es}/format-painter/index.es.js.map +0 -0
  254. /package/{es → dist/es}/global-link/constants.es.js +0 -0
  255. /package/{es → dist/es}/global-link/constants.es.js.map +0 -0
  256. /package/{es → dist/es}/global-link/formats/customer-widget-link.es.js +0 -0
  257. /package/{es → dist/es}/global-link/formats/customer-widget-link.es.js.map +0 -0
  258. /package/{es → dist/es}/global-link/formats/doc-link.es.js +0 -0
  259. /package/{es → dist/es}/global-link/formats/doc-link.es.js.map +0 -0
  260. /package/{es → dist/es}/global-link/formats/wiki-link.es.js +0 -0
  261. /package/{es → dist/es}/global-link/formats/wiki-link.es.js.map +0 -0
  262. /package/{es → dist/es}/global-link/formats/work-item-link.es.js +0 -0
  263. /package/{es → dist/es}/global-link/formats/work-item-link.es.js.map +0 -0
  264. /package/{es → dist/es}/global-link/global-link-panel.es.js +0 -0
  265. /package/{es → dist/es}/global-link/global-link-panel.es.js.map +0 -0
  266. /package/{es → dist/es}/global-link/index.es.js +0 -0
  267. /package/{es → dist/es}/global-link/index.es.js.map +0 -0
  268. /package/{es → dist/es}/global-link/utils/createTable.es.js +0 -0
  269. /package/{es → dist/es}/global-link/utils/createTable.es.js.map +0 -0
  270. /package/{es → dist/es}/index.es.js +0 -0
  271. /package/{es → dist/es}/index.es.js.map +0 -0
  272. /package/{es → dist/es}/link/formats/link.es.js +0 -0
  273. /package/{es → dist/es}/link/formats/link.es.js.map +0 -0
  274. /package/{es → dist/es}/link/index.es.js +0 -0
  275. /package/{es → dist/es}/link/index.es.js.map +0 -0
  276. /package/{es → dist/es}/link/modules/tooltip.es.js +0 -0
  277. /package/{es → dist/es}/link/modules/tooltip.es.js.map +0 -0
  278. /package/{es → dist/es}/mention/Mention.es.js +0 -0
  279. /package/{es → dist/es}/mention/Mention.es.js.map +0 -0
  280. /package/{es → dist/es}/mention/MentionLink.es.js +0 -0
  281. /package/{es → dist/es}/mention/MentionLink.es.js.map +0 -0
  282. /package/{es → dist/es}/mention/constants.es.js +0 -0
  283. /package/{es → dist/es}/mention/constants.es.js.map +0 -0
  284. /package/{es → dist/es}/quick-menu/index.es.js +0 -0
  285. /package/{es → dist/es}/quick-menu/index.es.js.map +0 -0
  286. /package/{es → dist/es}/screenshot/index.es.js +0 -0
  287. /package/{es → dist/es}/screenshot/index.es.js.map +0 -0
  288. /package/{es → dist/es}/soft-break/index.es.js +0 -0
  289. /package/{es → dist/es}/soft-break/index.es.js.map +0 -0
  290. /package/{es → dist/es}/strike/index.es.js +0 -0
  291. /package/{es → dist/es}/strike/index.es.js.map +0 -0
  292. /package/{es → dist/es}/syntax/index.es.js +0 -0
  293. /package/{es → dist/es}/syntax/index.es.js.map +0 -0
  294. /package/{es → dist/es}/table/better-table.es.js +0 -0
  295. /package/{es → dist/es}/table/better-table.es.js.map +0 -0
  296. /package/{es → dist/es}/table/formats/header.es.js +0 -0
  297. /package/{es → dist/es}/table/formats/header.es.js.map +0 -0
  298. /package/{es → dist/es}/table/formats/list.es.js +0 -0
  299. /package/{es → dist/es}/table/formats/list.es.js.map +0 -0
  300. /package/{es → dist/es}/table/formats/table.es.js +0 -0
  301. /package/{es → dist/es}/table/formats/table.es.js.map +0 -0
  302. /package/{es → dist/es}/table/modules/table-column-tool.es.js +0 -0
  303. /package/{es → dist/es}/table/modules/table-column-tool.es.js.map +0 -0
  304. /package/{es → dist/es}/table/modules/table-operation-menu.es.js +0 -0
  305. /package/{es → dist/es}/table/modules/table-operation-menu.es.js.map +0 -0
  306. /package/{es → dist/es}/table/modules/table-scroll-bar.es.js +0 -0
  307. /package/{es → dist/es}/table/modules/table-scroll-bar.es.js.map +0 -0
  308. /package/{es → dist/es}/table/modules/table-selection.es.js +0 -0
  309. /package/{es → dist/es}/table/modules/table-selection.es.js.map +0 -0
  310. /package/{es → dist/es}/table/table-config.es.js +0 -0
  311. /package/{es → dist/es}/table/table-config.es.js.map +0 -0
  312. /package/{es → dist/es}/table/utils/index.es.js +0 -0
  313. /package/{es → dist/es}/table/utils/index.es.js.map +0 -0
  314. /package/{es → dist/es}/table/utils/node-matchers.es.js +0 -0
  315. /package/{es → dist/es}/table/utils/node-matchers.es.js.map +0 -0
  316. /package/{es → dist/es}/toolbar/better-picker.es.js +0 -0
  317. /package/{es → dist/es}/toolbar/better-picker.es.js.map +0 -0
  318. /package/{es → dist/es}/toolbar/index.es.js +0 -0
  319. /package/{es → dist/es}/toolbar/index.es.js.map +0 -0
  320. /package/{es → dist/es}/utils/debounce.es.js +0 -0
  321. /package/{es → dist/es}/utils/debounce.es.js.map +0 -0
  322. /package/{es → dist/es}/utils/image.es.js +0 -0
  323. /package/{es → dist/es}/utils/image.es.js.map +0 -0
  324. /package/{es → dist/es}/utils/method.es.js +0 -0
  325. /package/{es → dist/es}/utils/method.es.js.map +0 -0
  326. /package/{es → dist/es}/utils/scroll-lock.es.js +0 -0
  327. /package/{es → dist/es}/utils/scroll-lock.es.js.map +0 -0
  328. /package/{es → dist/es}/video/index.es.js +0 -0
  329. /package/{es → dist/es}/video/index.es.js.map +0 -0
  330. /package/{lib → dist/lib}/attributors/font-size.cjs.js +0 -0
  331. /package/{lib → dist/lib}/attributors/font-size.cjs.js.map +0 -0
  332. /package/{lib → dist/lib}/attributors/font-style.cjs.js +0 -0
  333. /package/{lib → dist/lib}/attributors/font-style.cjs.js.map +0 -0
  334. /package/{lib → dist/lib}/attributors/index.cjs.js +0 -0
  335. /package/{lib → dist/lib}/attributors/index.cjs.js.map +0 -0
  336. /package/{lib → dist/lib}/attributors/line-height.cjs.js +0 -0
  337. /package/{lib → dist/lib}/attributors/line-height.cjs.js.map +0 -0
  338. /package/{lib → dist/lib}/attributors/text-indent.cjs.js +0 -0
  339. /package/{lib → dist/lib}/attributors/text-indent.cjs.js.map +0 -0
  340. /package/{lib → dist/lib}/config/base64-image.cjs.js +0 -0
  341. /package/{lib → dist/lib}/config/base64-image.cjs.js.map +0 -0
  342. /package/{lib → dist/lib}/config/editor.config.cjs.js +0 -0
  343. /package/{lib → dist/lib}/config/editor.config.cjs.js.map +0 -0
  344. /package/{lib → dist/lib}/config/editor.utils.cjs.js +0 -0
  345. /package/{lib → dist/lib}/config/editor.utils.cjs.js.map +0 -0
  346. /package/{lib → dist/lib}/config/i18n/en-us.cjs.js +0 -0
  347. /package/{lib → dist/lib}/config/i18n/en-us.cjs.js.map +0 -0
  348. /package/{lib → dist/lib}/config/i18n/zh-cn.cjs.js +0 -0
  349. /package/{lib → dist/lib}/config/i18n/zh-cn.cjs.js.map +0 -0
  350. /package/{lib → dist/lib}/config/icons.config.cjs.js +0 -0
  351. /package/{lib → dist/lib}/config/icons.config.cjs.js.map +0 -0
  352. /package/{lib → dist/lib}/config/index.cjs.js +0 -0
  353. /package/{lib → dist/lib}/config/index.cjs.js.map +0 -0
  354. /package/{lib → dist/lib}/config/types/additional-toolbar-item.interface.cjs.js +0 -0
  355. /package/{lib → dist/lib}/config/types/additional-toolbar-item.interface.cjs.js.map +0 -0
  356. /package/{lib → dist/lib}/config/types/content-change.interface.cjs.js +0 -0
  357. /package/{lib → dist/lib}/config/types/content-change.interface.cjs.js.map +0 -0
  358. /package/{lib → dist/lib}/config/types/content-save.interface.cjs.js +0 -0
  359. /package/{lib → dist/lib}/config/types/content-save.interface.cjs.js.map +0 -0
  360. /package/{lib → dist/lib}/config/types/counter-option.interface.cjs.js +0 -0
  361. /package/{lib → dist/lib}/config/types/counter-option.interface.cjs.js.map +0 -0
  362. /package/{lib → dist/lib}/config/types/editor-config.interface.cjs.js +0 -0
  363. /package/{lib → dist/lib}/config/types/editor-config.interface.cjs.js.map +0 -0
  364. /package/{lib → dist/lib}/config/types/editor-modules.interface.cjs.js +0 -0
  365. /package/{lib → dist/lib}/config/types/editor-modules.interface.cjs.js.map +0 -0
  366. /package/{lib → dist/lib}/config/types/file-operation.interface.cjs.js +0 -0
  367. /package/{lib → dist/lib}/config/types/file-operation.interface.cjs.js.map +0 -0
  368. /package/{lib → dist/lib}/config/types/focus-change.interface.cjs.js +0 -0
  369. /package/{lib → dist/lib}/config/types/focus-change.interface.cjs.js.map +0 -0
  370. /package/{lib → dist/lib}/config/types/fullscreen-module.interface.cjs.js +0 -0
  371. /package/{lib → dist/lib}/config/types/fullscreen-module.interface.cjs.js.map +0 -0
  372. /package/{lib → dist/lib}/config/types/help-panel-item.interface.cjs.js +0 -0
  373. /package/{lib → dist/lib}/config/types/help-panel-item.interface.cjs.js.map +0 -0
  374. /package/{lib → dist/lib}/config/types/help-panel-option.interface.cjs.js +0 -0
  375. /package/{lib → dist/lib}/config/types/help-panel-option.interface.cjs.js.map +0 -0
  376. /package/{lib → dist/lib}/config/types/image-module.interface.cjs.js +0 -0
  377. /package/{lib → dist/lib}/config/types/image-module.interface.cjs.js.map +0 -0
  378. /package/{lib → dist/lib}/config/types/image-upload.interface.cjs.js +0 -0
  379. /package/{lib → dist/lib}/config/types/image-upload.interface.cjs.js.map +0 -0
  380. /package/{lib → dist/lib}/config/types/index.cjs.js +0 -0
  381. /package/{lib → dist/lib}/config/types/index.cjs.js.map +0 -0
  382. /package/{lib → dist/lib}/config/types/load-on-demand-module.interface.cjs.js +0 -0
  383. /package/{lib → dist/lib}/config/types/load-on-demand-module.interface.cjs.js.map +0 -0
  384. /package/{lib → dist/lib}/config/types/mention-module.interface.cjs.js +0 -0
  385. /package/{lib → dist/lib}/config/types/mention-module.interface.cjs.js.map +0 -0
  386. /package/{lib → dist/lib}/config/types/paste-change.interface.cjs.js +0 -0
  387. /package/{lib → dist/lib}/config/types/paste-change.interface.cjs.js.map +0 -0
  388. /package/{lib → dist/lib}/config/types/quick-menu-module.interface.cjs.js +0 -0
  389. /package/{lib → dist/lib}/config/types/quick-menu-module.interface.cjs.js.map +0 -0
  390. /package/{lib → dist/lib}/config/types/range.interface.cjs.js +0 -0
  391. /package/{lib → dist/lib}/config/types/range.interface.cjs.js.map +0 -0
  392. /package/{lib → dist/lib}/config/types/registry-options.interface.cjs.js +0 -0
  393. /package/{lib → dist/lib}/config/types/registry-options.interface.cjs.js.map +0 -0
  394. /package/{lib → dist/lib}/config/types/selection-change.interface.cjs.js +0 -0
  395. /package/{lib → dist/lib}/config/types/selection-change.interface.cjs.js.map +0 -0
  396. /package/{lib → dist/lib}/config/types/toolbar-item.interface.cjs.js +0 -0
  397. /package/{lib → dist/lib}/config/types/toolbar-item.interface.cjs.js.map +0 -0
  398. /package/{lib → dist/lib}/config/types/type.cjs.js +0 -0
  399. /package/{lib → dist/lib}/config/types/type.cjs.js.map +0 -0
  400. /package/{lib → dist/lib}/config/types/validate-error.interface.cjs.js +0 -0
  401. /package/{lib → dist/lib}/config/types/validate-error.interface.cjs.js.map +0 -0
  402. /package/{lib → dist/lib}/counter/index.cjs.js +0 -0
  403. /package/{lib → dist/lib}/counter/index.cjs.js.map +0 -0
  404. /package/{lib → dist/lib}/custom-clipboard.cjs.js +0 -0
  405. /package/{lib → dist/lib}/custom-clipboard.cjs.js.map +0 -0
  406. /package/{lib → dist/lib}/custom-image/BlotFormatter.cjs.js +0 -0
  407. /package/{lib → dist/lib}/custom-image/BlotFormatter.cjs.js.map +0 -0
  408. /package/{lib → dist/lib}/custom-image/Options.cjs.js +0 -0
  409. /package/{lib → dist/lib}/custom-image/Options.cjs.js.map +0 -0
  410. /package/{lib → dist/lib}/custom-image/actions/Action.cjs.js +0 -0
  411. /package/{lib → dist/lib}/custom-image/actions/Action.cjs.js.map +0 -0
  412. /package/{lib → dist/lib}/custom-image/actions/CustomResizeAction.cjs.js +0 -0
  413. /package/{lib → dist/lib}/custom-image/actions/CustomResizeAction.cjs.js.map +0 -0
  414. /package/{lib → dist/lib}/custom-image/actions/DeleteAction.cjs.js +0 -0
  415. /package/{lib → dist/lib}/custom-image/actions/DeleteAction.cjs.js.map +0 -0
  416. /package/{lib → dist/lib}/custom-image/image.cjs.js +0 -0
  417. /package/{lib → dist/lib}/custom-image/image.cjs.js.map +0 -0
  418. /package/{lib → dist/lib}/custom-image/specs/BlotSpec.cjs.js +0 -0
  419. /package/{lib → dist/lib}/custom-image/specs/BlotSpec.cjs.js.map +0 -0
  420. /package/{lib → dist/lib}/custom-image/specs/CustomImageSpec.cjs.js +0 -0
  421. /package/{lib → dist/lib}/custom-image/specs/CustomImageSpec.cjs.js.map +0 -0
  422. /package/{lib → dist/lib}/custom-image/specs/ImageSpec.cjs.js +0 -0
  423. /package/{lib → dist/lib}/custom-image/specs/ImageSpec.cjs.js.map +0 -0
  424. /package/{lib → dist/lib}/custom-uploader.cjs.js +0 -0
  425. /package/{lib → dist/lib}/custom-uploader.cjs.js.map +0 -0
  426. /package/{lib → dist/lib}/emoji/emoji-list/index.cjs.js +0 -0
  427. /package/{lib → dist/lib}/emoji/emoji-list/index.cjs.js.map +0 -0
  428. /package/{lib → dist/lib}/emoji/emoji-list/people.cjs.js +0 -0
  429. /package/{lib → dist/lib}/emoji/emoji-list/people.cjs.js.map +0 -0
  430. /package/{lib → dist/lib}/emoji/emoji-list.cjs.js +0 -0
  431. /package/{lib → dist/lib}/emoji/emoji-list.cjs.js.map +0 -0
  432. /package/{lib → dist/lib}/emoji/emoji-map.cjs.js +0 -0
  433. /package/{lib → dist/lib}/emoji/emoji-map.cjs.js.map +0 -0
  434. /package/{lib → dist/lib}/emoji/formats/emoji-blot.cjs.js +0 -0
  435. /package/{lib → dist/lib}/emoji/formats/emoji-blot.cjs.js.map +0 -0
  436. /package/{lib → dist/lib}/emoji/index.cjs.js +0 -0
  437. /package/{lib → dist/lib}/emoji/index.cjs.js.map +0 -0
  438. /package/{lib → dist/lib}/emoji/modules/emoji.cjs.js +0 -0
  439. /package/{lib → dist/lib}/emoji/modules/emoji.cjs.js.map +0 -0
  440. /package/{lib → dist/lib}/emoji/modules/toolbar-emoji.cjs.js +0 -0
  441. /package/{lib → dist/lib}/emoji/modules/toolbar-emoji.cjs.js.map +0 -0
  442. /package/{lib → dist/lib}/emoji/utils.cjs.js +0 -0
  443. /package/{lib → dist/lib}/emoji/utils.cjs.js.map +0 -0
  444. /package/{lib → dist/lib}/file/formats/file.cjs.js +0 -0
  445. /package/{lib → dist/lib}/file/formats/file.cjs.js.map +0 -0
  446. /package/{lib → dist/lib}/file/index.cjs.js +0 -0
  447. /package/{lib → dist/lib}/file/index.cjs.js.map +0 -0
  448. /package/{lib → dist/lib}/file/modules/file-bar.cjs.js +0 -0
  449. /package/{lib → dist/lib}/file/modules/file-bar.cjs.js.map +0 -0
  450. /package/{lib → dist/lib}/fluent-editor.cjs.js +0 -0
  451. /package/{lib → dist/lib}/fluent-editor.cjs.js.map +0 -0
  452. /package/{lib → dist/lib}/format-painter/index.cjs.js +0 -0
  453. /package/{lib → dist/lib}/format-painter/index.cjs.js.map +0 -0
  454. /package/{lib → dist/lib}/global-link/constants.cjs.js +0 -0
  455. /package/{lib → dist/lib}/global-link/constants.cjs.js.map +0 -0
  456. /package/{lib → dist/lib}/global-link/formats/customer-widget-link.cjs.js +0 -0
  457. /package/{lib → dist/lib}/global-link/formats/customer-widget-link.cjs.js.map +0 -0
  458. /package/{lib → dist/lib}/global-link/formats/doc-link.cjs.js +0 -0
  459. /package/{lib → dist/lib}/global-link/formats/doc-link.cjs.js.map +0 -0
  460. /package/{lib → dist/lib}/global-link/formats/wiki-link.cjs.js +0 -0
  461. /package/{lib → dist/lib}/global-link/formats/wiki-link.cjs.js.map +0 -0
  462. /package/{lib → dist/lib}/global-link/formats/work-item-link.cjs.js +0 -0
  463. /package/{lib → dist/lib}/global-link/formats/work-item-link.cjs.js.map +0 -0
  464. /package/{lib → dist/lib}/global-link/global-link-panel.cjs.js +0 -0
  465. /package/{lib → dist/lib}/global-link/global-link-panel.cjs.js.map +0 -0
  466. /package/{lib → dist/lib}/global-link/index.cjs.js +0 -0
  467. /package/{lib → dist/lib}/global-link/index.cjs.js.map +0 -0
  468. /package/{lib → dist/lib}/global-link/utils/createTable.cjs.js +0 -0
  469. /package/{lib → dist/lib}/global-link/utils/createTable.cjs.js.map +0 -0
  470. /package/{lib → dist/lib}/index.cjs.js +0 -0
  471. /package/{lib → dist/lib}/index.cjs.js.map +0 -0
  472. /package/{lib → dist/lib}/link/formats/link.cjs.js +0 -0
  473. /package/{lib → dist/lib}/link/formats/link.cjs.js.map +0 -0
  474. /package/{lib → dist/lib}/link/index.cjs.js +0 -0
  475. /package/{lib → dist/lib}/link/index.cjs.js.map +0 -0
  476. /package/{lib → dist/lib}/link/modules/tooltip.cjs.js +0 -0
  477. /package/{lib → dist/lib}/link/modules/tooltip.cjs.js.map +0 -0
  478. /package/{lib → dist/lib}/mention/Mention.cjs.js +0 -0
  479. /package/{lib → dist/lib}/mention/Mention.cjs.js.map +0 -0
  480. /package/{lib → dist/lib}/mention/MentionLink.cjs.js +0 -0
  481. /package/{lib → dist/lib}/mention/MentionLink.cjs.js.map +0 -0
  482. /package/{lib → dist/lib}/mention/constants.cjs.js +0 -0
  483. /package/{lib → dist/lib}/mention/constants.cjs.js.map +0 -0
  484. /package/{lib → dist/lib}/quick-menu/index.cjs.js +0 -0
  485. /package/{lib → dist/lib}/quick-menu/index.cjs.js.map +0 -0
  486. /package/{lib → dist/lib}/screenshot/index.cjs.js +0 -0
  487. /package/{lib → dist/lib}/screenshot/index.cjs.js.map +0 -0
  488. /package/{lib → dist/lib}/soft-break/index.cjs.js +0 -0
  489. /package/{lib → dist/lib}/soft-break/index.cjs.js.map +0 -0
  490. /package/{lib → dist/lib}/strike/index.cjs.js +0 -0
  491. /package/{lib → dist/lib}/strike/index.cjs.js.map +0 -0
  492. /package/{lib → dist/lib}/syntax/index.cjs.js +0 -0
  493. /package/{lib → dist/lib}/syntax/index.cjs.js.map +0 -0
  494. /package/{lib → dist/lib}/table/better-table.cjs.js +0 -0
  495. /package/{lib → dist/lib}/table/better-table.cjs.js.map +0 -0
  496. /package/{lib → dist/lib}/table/formats/header.cjs.js +0 -0
  497. /package/{lib → dist/lib}/table/formats/header.cjs.js.map +0 -0
  498. /package/{lib → dist/lib}/table/formats/list.cjs.js +0 -0
  499. /package/{lib → dist/lib}/table/formats/list.cjs.js.map +0 -0
  500. /package/{lib → dist/lib}/table/formats/table.cjs.js +0 -0
  501. /package/{lib → dist/lib}/table/formats/table.cjs.js.map +0 -0
  502. /package/{lib → dist/lib}/table/modules/table-column-tool.cjs.js +0 -0
  503. /package/{lib → dist/lib}/table/modules/table-column-tool.cjs.js.map +0 -0
  504. /package/{lib → dist/lib}/table/modules/table-operation-menu.cjs.js +0 -0
  505. /package/{lib → dist/lib}/table/modules/table-operation-menu.cjs.js.map +0 -0
  506. /package/{lib → dist/lib}/table/modules/table-scroll-bar.cjs.js +0 -0
  507. /package/{lib → dist/lib}/table/modules/table-scroll-bar.cjs.js.map +0 -0
  508. /package/{lib → dist/lib}/table/modules/table-selection.cjs.js +0 -0
  509. /package/{lib → dist/lib}/table/modules/table-selection.cjs.js.map +0 -0
  510. /package/{lib → dist/lib}/table/table-config.cjs.js +0 -0
  511. /package/{lib → dist/lib}/table/table-config.cjs.js.map +0 -0
  512. /package/{lib → dist/lib}/table/utils/index.cjs.js +0 -0
  513. /package/{lib → dist/lib}/table/utils/index.cjs.js.map +0 -0
  514. /package/{lib → dist/lib}/table/utils/node-matchers.cjs.js +0 -0
  515. /package/{lib → dist/lib}/table/utils/node-matchers.cjs.js.map +0 -0
  516. /package/{lib → dist/lib}/toolbar/better-picker.cjs.js +0 -0
  517. /package/{lib → dist/lib}/toolbar/better-picker.cjs.js.map +0 -0
  518. /package/{lib → dist/lib}/toolbar/index.cjs.js +0 -0
  519. /package/{lib → dist/lib}/toolbar/index.cjs.js.map +0 -0
  520. /package/{lib → dist/lib}/utils/debounce.cjs.js +0 -0
  521. /package/{lib → dist/lib}/utils/debounce.cjs.js.map +0 -0
  522. /package/{lib → dist/lib}/utils/image.cjs.js +0 -0
  523. /package/{lib → dist/lib}/utils/image.cjs.js.map +0 -0
  524. /package/{lib → dist/lib}/utils/method.cjs.js +0 -0
  525. /package/{lib → dist/lib}/utils/method.cjs.js.map +0 -0
  526. /package/{lib → dist/lib}/utils/scroll-lock.cjs.js +0 -0
  527. /package/{lib → dist/lib}/utils/scroll-lock.cjs.js.map +0 -0
  528. /package/{lib → dist/lib}/video/index.cjs.js +0 -0
  529. /package/{lib → dist/lib}/video/index.cjs.js.map +0 -0
  530. /package/{style.css → dist/style.css} +0 -0
@@ -0,0 +1,22 @@
1
+ export function imgToBase64(imageUrl: string) {
2
+ return new Promise<string>((resolve, reject) => {
3
+ const canvas = document.createElement('canvas')
4
+ const img = new Image()
5
+ img.crossOrigin = 'Anonymous'
6
+ img.src = imageUrl
7
+ img.onload = function () {
8
+ const ctx = canvas.getContext('2d')
9
+ if (ctx) {
10
+ canvas.height = img.height
11
+ canvas.width = img.width
12
+ ctx.clearRect(0, 0, canvas.width, canvas.height)
13
+ ctx.drawImage(img, 0, 0)
14
+ const dataURL = canvas.toDataURL('image/png', 1)
15
+ resolve(dataURL)
16
+ }
17
+ }
18
+ img.onerror = function () {
19
+ reject(new Error(`Could not load image at ${imageUrl}`))
20
+ }
21
+ })
22
+ }
@@ -0,0 +1,82 @@
1
+ /** Detect free variable `global` from Node.js. */
2
+ const freeGlobal
3
+ = typeof global === 'object'
4
+ && global !== null
5
+ && global.Object === Object
6
+ && global
7
+
8
+ /** Detect free variable `globalThis` */
9
+ const freeGlobalThis
10
+ = typeof globalThis === 'object'
11
+ && globalThis !== null
12
+ && globalThis.Object == Object
13
+ && globalThis
14
+
15
+ /** Detect free variable `self`. */
16
+ const freeSelf
17
+ = typeof self === 'object' && self !== null && self.Object === Object && self
18
+
19
+ /** Used as a reference to the global object. */
20
+ export const root
21
+ = freeGlobalThis || freeGlobal || freeSelf || new Function('return this')()
22
+
23
+ export function isObject(value) {
24
+ const type = typeof value
25
+ return value != null && (type === 'object' || type === 'function')
26
+ }
27
+
28
+ export function compareArray(arr1, arr2) {
29
+ if (arr1.length !== arr2.length) {
30
+ return false
31
+ }
32
+ for (let i = 0; i < arr1.length; i++) {
33
+ if (arr1[i] !== arr2[i]) {
34
+ return false
35
+ }
36
+ }
37
+ return true
38
+ }
39
+
40
+ export function compareObject(object1, object2) {
41
+ const o1keys = Object.keys(object1)
42
+ const o2keys = Object.keys(object2)
43
+ if (o2keys.length !== o1keys.length) return false
44
+ for (let i = 0; i <= o1keys.length - 1; i++) {
45
+ const key = o1keys[i]
46
+ if (!o2keys.includes(key)) return false
47
+ if (!compare(object2[key], object1[key])) return false
48
+ }
49
+ return true
50
+ }
51
+
52
+ export function compare(value, other) {
53
+ if (value === other) {
54
+ return true
55
+ }
56
+ if (Array.isArray(value) && Array.isArray(other)) {
57
+ return compareArray(value, other)
58
+ }
59
+ if (value instanceof Function || other instanceof Function) {
60
+ return false
61
+ }
62
+ if (value instanceof Object && other instanceof Object) {
63
+ return compareObject(value, other)
64
+ }
65
+ return false
66
+ }
67
+
68
+ export function unshiftString(str: string, targetLength: number, addString: string): string {
69
+ targetLength = targetLength > 0 ? targetLength : 0
70
+ addString = String((typeof addString !== 'undefined' && typeof addString !== 'object') ? addString : ' ')
71
+ str = (str === undefined || str === null) ? '' : String(str)
72
+ if (str.length >= targetLength) {
73
+ return String(str)
74
+ }
75
+ else {
76
+ targetLength = targetLength - str.length
77
+ if (targetLength > addString.length) {
78
+ addString += addString.repeat(targetLength / addString.length)
79
+ }
80
+ return addString.slice(0, targetLength) + String(str)
81
+ }
82
+ }
@@ -0,0 +1,52 @@
1
+ let scrollBarWidth: number
2
+ export function getScrollBarWidth({ target = document.body } = {}): number {
3
+ if (scrollBarWidth !== undefined) return scrollBarWidth
4
+
5
+ const outer = document.createElement('div')
6
+ outer.className = 'scroll__wrap'
7
+ outer.style.visibility = 'hidden'
8
+ outer.style.width = '100px'
9
+ outer.style.position = 'absolute'
10
+ outer.style.top = '-9999px'
11
+ target.appendChild(outer)
12
+
13
+ const widthNoScroll = outer.offsetWidth
14
+ outer.style.overflow = 'scroll'
15
+
16
+ const inner = document.createElement('div')
17
+ inner.style.width = '100%'
18
+ outer.appendChild(inner)
19
+
20
+ const widthWithScroll = inner.offsetWidth
21
+ outer.parentNode?.removeChild(outer)
22
+ scrollBarWidth = widthNoScroll - widthWithScroll
23
+
24
+ return scrollBarWidth
25
+ }
26
+
27
+ export function lockScroll({ target = document.body } = {}) {
28
+ let scrollBarWidth = 0
29
+ let originWidth = '0'
30
+
31
+ const clockClass = 'scroll--lock'
32
+
33
+ const cleanLock = () => {
34
+ target && (target.style.width = originWidth)
35
+ target.classList.remove(clockClass)
36
+ }
37
+
38
+ const hasHiddenClass = target.classList.contains(clockClass)
39
+ if (!hasHiddenClass) {
40
+ originWidth = target.style.width
41
+ }
42
+ scrollBarWidth = getScrollBarWidth({ target })
43
+ const hasOverflow = (target === document.body ? document.documentElement : target).clientHeight < target.scrollHeight
44
+ const overflowY = window.getComputedStyle(target).overflowY
45
+ // only when the scrollbar exists needs to reduce width
46
+ if (scrollBarWidth > 0 && (hasOverflow || overflowY === 'scroll') && !hasHiddenClass) {
47
+ target.style.width = `calc(100% - ${scrollBarWidth}px)`
48
+ }
49
+ target.classList.add(clockClass)
50
+
51
+ return cleanLock
52
+ }
@@ -0,0 +1,62 @@
1
+ import type { Parchment as TypeParchment } from 'quill'
2
+ import Quill from 'quill'
3
+ import { sanitize } from '../config/editor.utils'
4
+
5
+ const BlockEmbed = Quill.imports['blots/block/embed'] as TypeParchment.BlotConstructor
6
+ const VIDEO_ATTRIBUTES = ['id', 'title', 'src']
7
+
8
+ class Video extends BlockEmbed {
9
+ static blotName: string
10
+ static tagName: string
11
+ static SANITIZED_URL: string
12
+ static PROTOCOL_WHITELIST: string[]
13
+ static className: string
14
+ statics: any
15
+ domNode: any
16
+
17
+ static sanitize(url) {
18
+ return sanitize(url, this.PROTOCOL_WHITELIST) ? url : this.SANITIZED_URL
19
+ }
20
+
21
+ static create(value) {
22
+ const node = super.create(value) as HTMLElement
23
+ node.setAttribute('contenteditable', 'false')
24
+ node.setAttribute('controls', 'controls')
25
+ VIDEO_ATTRIBUTES.forEach((key) => {
26
+ if (value[key]) {
27
+ switch (key) {
28
+ case 'src':{ const src = Video.sanitize(value[key])
29
+ node.setAttribute(key, src)
30
+ break
31
+ }
32
+ case 'title': {
33
+ node.setAttribute(key, value[key])
34
+ break
35
+ }
36
+ default: {
37
+ node.dataset[key] = value[key]
38
+ }
39
+ }
40
+ }
41
+ })
42
+ return node
43
+ }
44
+
45
+ static value(domNode) {
46
+ const formats: any = {}
47
+ VIDEO_ATTRIBUTES.forEach((key) => {
48
+ const value = domNode.getAttribute(key) || domNode.dataset[key]
49
+ if (value) {
50
+ formats[key] = value
51
+ }
52
+ })
53
+ return formats
54
+ }
55
+ }
56
+ Video.blotName = 'video'
57
+ Video.tagName = 'VIDEO'
58
+ Video.SANITIZED_URL = 'about:blank'
59
+ Video.PROTOCOL_WHITELIST = ['http', 'https']
60
+ Video.className = 'ql-video-item'
61
+
62
+ export default Video
package/tsconfig.json ADDED
@@ -0,0 +1,26 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2017",
4
+ "jsx": "preserve",
5
+ "lib": ["esnext", "dom"],
6
+
7
+ "experimentalDecorators": true,
8
+ "baseUrl": "./",
9
+ "module": "esnext",
10
+ "moduleResolution": "node",
11
+ "resolveJsonModule": true,
12
+ "types": ["vite/client", "@types/node", "@types/jest", "quill/quill.d.ts", "quill/core.d.ts"],
13
+ "strict": true,
14
+ // 不允许this有隐式的any类型
15
+ "strictNullChecks": false,
16
+ "noImplicitAny": false, // 不允许隐式的any类型
17
+ "noImplicitThis": false,
18
+ // "outDir": "./dist/out-tsc",
19
+ "declaration": false,
20
+ "downlevelIteration": true,
21
+ "importHelpers": true,
22
+ "sourceMap": true,
23
+ "allowSyntheticDefaultImports": true,
24
+ "esModuleInterop": true // 不允许把null、undefined赋值给其他类型的变量
25
+ }
26
+ }
@@ -0,0 +1,20 @@
1
+ import { resolve } from 'node:path'
2
+ import { defineConfig } from 'vite'
3
+
4
+ export default defineConfig({
5
+ build: {
6
+ sourcemap: false,
7
+ minify: false,
8
+ rollupOptions: {
9
+ input: 'src/assets/style.scss',
10
+ treeshake: false,
11
+ preserveEntrySignatures: 'strict',
12
+ output: {
13
+ dir: resolve(__dirname, 'dist'),
14
+ assetFileNames: 'style.css',
15
+ preserveModules: true,
16
+ preserveModulesRoot: resolve(__dirname, 'src/assets'),
17
+ },
18
+ },
19
+ },
20
+ })
package/vite.config.ts ADDED
@@ -0,0 +1,56 @@
1
+ import { readFileSync } from 'node:fs'
2
+ import { resolve } from 'node:path'
3
+ import * as glob from 'glob'
4
+ import { defineConfig } from 'vite'
5
+
6
+ interface Manifest {
7
+ version: string
8
+ dependencies?: Record<string, string>
9
+ peerDependencies?: Record<string, string>
10
+ }
11
+ export function getPackageManifest(pkgPath: string): Manifest {
12
+ return JSON.parse(readFileSync(pkgPath, 'utf8')) as Manifest
13
+ }
14
+ export function rollupExternalFromPackage(pkgPath: string) {
15
+ const { dependencies, peerDependencies } = getPackageManifest(pkgPath)
16
+ const dependenciesKeys = Object.keys(dependencies ?? {})
17
+ const peerDependenciesKeys = Object.keys(peerDependencies ?? {})
18
+
19
+ return (id: string) => {
20
+ const packages = new Set([...peerDependenciesKeys, ...dependenciesKeys])
21
+ return Array.from(packages).some(pkg => id === pkg || id.startsWith(`${pkg}/`))
22
+ }
23
+ }
24
+
25
+ function rollupOutput(target: string, format: string): any {
26
+ return {
27
+ format: target,
28
+ entryFileNames: `[name].${target}.js`,
29
+ preserveModules: true,
30
+ dir: resolve(__dirname, 'dist', format),
31
+ preserveModulesRoot: resolve(__dirname, 'src'),
32
+ exports: 'named',
33
+ }
34
+ }
35
+
36
+ const input = glob.sync('./src/**/*.ts', {
37
+ cwd: __dirname,
38
+ absolute: true,
39
+ })
40
+
41
+ export default defineConfig({
42
+ build: {
43
+ sourcemap: true,
44
+ minify: false,
45
+ rollupOptions: {
46
+ input,
47
+ treeshake: false,
48
+ preserveEntrySignatures: 'allow-extension',
49
+ external: rollupExternalFromPackage(resolve(__dirname, 'package.json')),
50
+ output: [
51
+ rollupOutput('es', 'es'),
52
+ rollupOutput('cjs', 'lib'),
53
+ ],
54
+ },
55
+ }
56
+ })
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes