@worktile/theia 18.0.15 → 18.1.0

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 (370) hide show
  1. package/constants/node-types.d.ts +1 -0
  2. package/core/toolbar-item/base-toolbar-item.d.ts +2 -2
  3. package/fesm2022/worktile-theia.mjs +304 -311
  4. package/fesm2022/worktile-theia.mjs.map +1 -1
  5. package/interfaces/view-base.d.ts +1 -1
  6. package/package.json +2 -4
  7. package/plugins/code/code.component.scss +1 -2
  8. package/plugins/image/image.component.d.ts +1 -1
  9. package/plugins/link/link.component.d.ts +1 -1
  10. package/plugins/mention/suggestion.component.d.ts +1 -1
  11. package/plugins/vertical-align/toolbar-item.component.d.ts +3 -2
  12. package/esm2022/components/action/prevent-default.mjs +0 -21
  13. package/esm2022/components/column-resize/column-resize-notifier.mjs +0 -31
  14. package/esm2022/components/column-resize/column-resize.directive.mjs +0 -124
  15. package/esm2022/components/column-resize/event-dispatcher.mjs +0 -56
  16. package/esm2022/components/column-resize/overlay-handle.component.mjs +0 -144
  17. package/esm2022/components/column-resize/resize-ref.mjs +0 -26
  18. package/esm2022/components/column-resize/resizing.store.mjs +0 -92
  19. package/esm2022/components/column-resize/selectors.mjs +0 -4
  20. package/esm2022/components/contextmenu/contextmenu.component.mjs +0 -99
  21. package/esm2022/components/conversion-hint/conversion-hint.component.mjs +0 -56
  22. package/esm2022/components/element/element.component.mjs +0 -23
  23. package/esm2022/components/index.mjs +0 -24
  24. package/esm2022/components/inline-toolbar/inline-toolbar.component.mjs +0 -131
  25. package/esm2022/components/listbox/listbox.mjs +0 -380
  26. package/esm2022/components/listbox/listbox.type.mjs +0 -5
  27. package/esm2022/components/plugin-menu/plugin-menu.component.mjs +0 -272
  28. package/esm2022/components/table-select/table-select.component.mjs +0 -49
  29. package/esm2022/components/template/template.component.mjs +0 -62
  30. package/esm2022/components/text/text.component.mjs +0 -57
  31. package/esm2022/components/toolbar/toolbar.component.mjs +0 -262
  32. package/esm2022/components/toolbar-dropdown/toolbar-dropdown.component.mjs +0 -137
  33. package/esm2022/components/toolbar-group/toolbar-group.component.mjs +0 -125
  34. package/esm2022/components/toolbar-item/toolbar-item.component.mjs +0 -80
  35. package/esm2022/constants/auto-format-rules.mjs +0 -167
  36. package/esm2022/constants/code.mjs +0 -85
  37. package/esm2022/constants/color-select.mjs +0 -3
  38. package/esm2022/constants/default.mjs +0 -11
  39. package/esm2022/constants/error.mjs +0 -7
  40. package/esm2022/constants/index.mjs +0 -9
  41. package/esm2022/constants/node-types.mjs +0 -136
  42. package/esm2022/constants/plugin-menu.mjs +0 -311
  43. package/esm2022/constants/selector.mjs +0 -3
  44. package/esm2022/constants/toolbar.mjs +0 -53
  45. package/esm2022/core/create-plugin.mjs +0 -5
  46. package/esm2022/core/create-toolbar.mjs +0 -55
  47. package/esm2022/core/index.mjs +0 -6
  48. package/esm2022/core/toolbar-item/base-toolbar-item.mjs +0 -95
  49. package/esm2022/core/utils/combine-plugins.mjs +0 -10
  50. package/esm2022/core/utils/flatten-deep-plugins.mjs +0 -19
  51. package/esm2022/core/utils/get-plugin-options.mjs +0 -3
  52. package/esm2022/core/utils/get-plugin.mjs +0 -2
  53. package/esm2022/core/utils/get-plugins.mjs +0 -4
  54. package/esm2022/core/utils/index.mjs +0 -12
  55. package/esm2022/core/utils/merge-array.mjs +0 -18
  56. package/esm2022/core/utils/merge-deep-plugins.mjs +0 -14
  57. package/esm2022/core/utils/merge-options.mjs +0 -25
  58. package/esm2022/core/utils/nested-structure-by-key.mjs +0 -11
  59. package/esm2022/core/utils/plugin-menu.mjs +0 -63
  60. package/esm2022/core/utils/plugins-by-key.mjs +0 -10
  61. package/esm2022/core/with-theia.mjs +0 -25
  62. package/esm2022/custom-types.mjs +0 -2
  63. package/esm2022/editor.component.mjs +0 -488
  64. package/esm2022/editor.module.mjs +0 -18
  65. package/esm2022/i18n/i18n.mjs +0 -10
  66. package/esm2022/i18n/i18n.service.mjs +0 -46
  67. package/esm2022/i18n/i18n.token.mjs +0 -9
  68. package/esm2022/i18n/index.mjs +0 -10
  69. package/esm2022/i18n/locales/de-de.mjs +0 -102
  70. package/esm2022/i18n/locales/en-us.mjs +0 -102
  71. package/esm2022/i18n/locales/ja-jp.mjs +0 -102
  72. package/esm2022/i18n/locales/ru-ru.mjs +0 -102
  73. package/esm2022/i18n/locales/zh-hans.mjs +0 -102
  74. package/esm2022/i18n/locales/zh-hant.mjs +0 -102
  75. package/esm2022/interfaces/auto-format.mjs +0 -2
  76. package/esm2022/interfaces/editor.mjs +0 -26
  77. package/esm2022/interfaces/element.mjs +0 -2
  78. package/esm2022/interfaces/image.mjs +0 -3
  79. package/esm2022/interfaces/index.mjs +0 -11
  80. package/esm2022/interfaces/plugins/index.mjs +0 -6
  81. package/esm2022/interfaces/plugins/no-infer.mjs +0 -2
  82. package/esm2022/interfaces/plugins/plugin-key.mjs +0 -42
  83. package/esm2022/interfaces/plugins/plugin-menu.mjs +0 -19
  84. package/esm2022/interfaces/plugins/plugins.mjs +0 -2
  85. package/esm2022/interfaces/plugins/with-override.mjs +0 -2
  86. package/esm2022/interfaces/preset.mjs +0 -3
  87. package/esm2022/interfaces/reset-block-type-plugin-options.mjs +0 -2
  88. package/esm2022/interfaces/toolbar.mjs +0 -12
  89. package/esm2022/interfaces/upload.mjs +0 -2
  90. package/esm2022/interfaces/utility/index.mjs +0 -4
  91. package/esm2022/interfaces/utility/nested-structure-by-key.mjs +0 -2
  92. package/esm2022/interfaces/utility/override-by-key.mjs +0 -2
  93. package/esm2022/interfaces/utility/types.mjs +0 -2
  94. package/esm2022/interfaces/valid-children-types.mjs +0 -36
  95. package/esm2022/interfaces/view-base.mjs +0 -38
  96. package/esm2022/pipes.mjs +0 -61
  97. package/esm2022/plugins/align/align.editor.mjs +0 -41
  98. package/esm2022/plugins/align/align.plugin.mjs +0 -64
  99. package/esm2022/plugins/autoformat/autoformat.plugin.mjs +0 -109
  100. package/esm2022/plugins/autoformat/transforms/auto-format-block.mjs +0 -14
  101. package/esm2022/plugins/autoformat/transforms/auto-format-inline.mjs +0 -78
  102. package/esm2022/plugins/blockquote/blockquote.component.mjs +0 -16
  103. package/esm2022/plugins/blockquote/blockquote.editor.mjs +0 -20
  104. package/esm2022/plugins/blockquote/blockquote.plugin.mjs +0 -84
  105. package/esm2022/plugins/code/code.component.mjs +0 -255
  106. package/esm2022/plugins/code/code.editor.mjs +0 -59
  107. package/esm2022/plugins/code/code.plugin.mjs +0 -67
  108. package/esm2022/plugins/color/color.editor.mjs +0 -27
  109. package/esm2022/plugins/color/color.plugin.mjs +0 -32
  110. package/esm2022/plugins/color/toolbar-item.component.mjs +0 -99
  111. package/esm2022/plugins/common/block-card.plugin.mjs +0 -330
  112. package/esm2022/plugins/common/common.plugin.mjs +0 -49
  113. package/esm2022/plugins/common/get-fragment.plugin.mjs +0 -24
  114. package/esm2022/plugins/common/history.plugin.mjs +0 -31
  115. package/esm2022/plugins/common/insert-data-by-invalid-type.mjs +0 -23
  116. package/esm2022/plugins/common/move-selection.plugin.mjs +0 -105
  117. package/esm2022/plugins/common/remove-empty.plugin.mjs +0 -61
  118. package/esm2022/plugins/common/remove-void.plugin.mjs +0 -60
  119. package/esm2022/plugins/common/reset-type.plugin.mjs +0 -35
  120. package/esm2022/plugins/deserialize/deserialize-html.plugin.mjs +0 -61
  121. package/esm2022/plugins/deserialize/deserialize-md.plugin.mjs +0 -142
  122. package/esm2022/plugins/font-size/font-size.editor.mjs +0 -98
  123. package/esm2022/plugins/heading/heading.editor.mjs +0 -54
  124. package/esm2022/plugins/heading/heading.plugin.mjs +0 -136
  125. package/esm2022/plugins/hr/hr.component.mjs +0 -37
  126. package/esm2022/plugins/hr/hr.editor.mjs +0 -16
  127. package/esm2022/plugins/hr/hr.plugin.mjs +0 -56
  128. package/esm2022/plugins/image/image.component.mjs +0 -474
  129. package/esm2022/plugins/image/image.editor.mjs +0 -116
  130. package/esm2022/plugins/image/image.plugin.mjs +0 -90
  131. package/esm2022/plugins/indent/indent.editor.mjs +0 -78
  132. package/esm2022/plugins/indent/indent.plugin.mjs +0 -59
  133. package/esm2022/plugins/indent/on-keydown-indent.mjs +0 -59
  134. package/esm2022/plugins/index.mjs +0 -73
  135. package/esm2022/plugins/inline-code/inline-code.component.mjs +0 -28
  136. package/esm2022/plugins/inline-code/inline-code.editor.mjs +0 -49
  137. package/esm2022/plugins/inline-code/inline-code.plugin.mjs +0 -67
  138. package/esm2022/plugins/link/edit/link-edit.component.mjs +0 -104
  139. package/esm2022/plugins/link/hover/link-hover.component.mjs +0 -38
  140. package/esm2022/plugins/link/link.component.mjs +0 -170
  141. package/esm2022/plugins/link/link.editor.mjs +0 -87
  142. package/esm2022/plugins/link/link.plugin.mjs +0 -89
  143. package/esm2022/plugins/link/link.types.mjs +0 -12
  144. package/esm2022/plugins/list/components/bulleted-list.component.mjs +0 -28
  145. package/esm2022/plugins/list/components/list-item.component.mjs +0 -88
  146. package/esm2022/plugins/list/components/numbered-list.component.mjs +0 -37
  147. package/esm2022/plugins/list/list.editor.mjs +0 -128
  148. package/esm2022/plugins/list/list.plugin.mjs +0 -302
  149. package/esm2022/plugins/list/normalizers/get-list-normalizer.mjs +0 -39
  150. package/esm2022/plugins/list/normalizers/normalize-list-item.mjs +0 -18
  151. package/esm2022/plugins/list/normalizers/normalize-no.mjs +0 -43
  152. package/esm2022/plugins/list/on-key-down-list.mjs +0 -33
  153. package/esm2022/plugins/list/queries/get-list-item-entry.mjs +0 -28
  154. package/esm2022/plugins/list/queries/get-list-item-sublist.mjs +0 -12
  155. package/esm2022/plugins/list/queries/get-list-types.mjs +0 -5
  156. package/esm2022/plugins/list/queries/get-start-list-item.mjs +0 -27
  157. package/esm2022/plugins/list/queries/has-list-in-list-item.mjs +0 -27
  158. package/esm2022/plugins/list/queries/is-in-list.mjs +0 -6
  159. package/esm2022/plugins/list/queries/is-list-nested.mjs +0 -10
  160. package/esm2022/plugins/list/queries/is-list.mjs +0 -5
  161. package/esm2022/plugins/list/queries/is-node-type-list.mjs +0 -5
  162. package/esm2022/plugins/list/queries/is-selection-at-list-item-start.mjs +0 -13
  163. package/esm2022/plugins/list/queries/is-selection-in-same-list-item.mjs +0 -17
  164. package/esm2022/plugins/list/queries/is-single-list-item.mjs +0 -9
  165. package/esm2022/plugins/list/transforms/insert-list-data.mjs +0 -72
  166. package/esm2022/plugins/list/transforms/insert-list-item.mjs +0 -73
  167. package/esm2022/plugins/list/transforms/move-list-item-down.mjs +0 -41
  168. package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.mjs +0 -43
  169. package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list.mjs +0 -30
  170. package/esm2022/plugins/list/transforms/move-list-item-up.mjs +0 -78
  171. package/esm2022/plugins/list/transforms/unwrap-list.mjs +0 -10
  172. package/esm2022/plugins/list/types.mjs +0 -2
  173. package/esm2022/plugins/mark/mark.editor.mjs +0 -28
  174. package/esm2022/plugins/mark/mark.plugin.mjs +0 -105
  175. package/esm2022/plugins/mention/index.mjs +0 -5
  176. package/esm2022/plugins/mention/mention.editor.mjs +0 -179
  177. package/esm2022/plugins/mention/mention.plugin.mjs +0 -92
  178. package/esm2022/plugins/mention/mention.type.mjs +0 -2
  179. package/esm2022/plugins/mention/suggestion.component.mjs +0 -22
  180. package/esm2022/plugins/node-id/node-id.plugin.mjs +0 -78
  181. package/esm2022/plugins/normalizers/insert-paragraph-nodes.mjs +0 -28
  182. package/esm2022/plugins/normalizers/remove-empty-nodes.mjs +0 -18
  183. package/esm2022/plugins/normalizers/trailing-node.plugin.mjs +0 -33
  184. package/esm2022/plugins/paint-format/paint-format.editor.mjs +0 -126
  185. package/esm2022/plugins/public-api.mjs +0 -20
  186. package/esm2022/plugins/quick-insert/components/quick-insert.component.mjs +0 -126
  187. package/esm2022/plugins/quick-insert/index.mjs +0 -4
  188. package/esm2022/plugins/quick-insert/quick-insert.editor.mjs +0 -70
  189. package/esm2022/plugins/quick-insert/quick-insert.plugin.mjs +0 -109
  190. package/esm2022/plugins/soft-break/soft-break.plugin.mjs +0 -36
  191. package/esm2022/plugins/soft-break/soft-break.types.mjs +0 -2
  192. package/esm2022/plugins/table/components/insert-mark/insert-mark.component.mjs +0 -132
  193. package/esm2022/plugins/table/components/row/row.component.mjs +0 -93
  194. package/esm2022/plugins/table/components/table.component.mjs +0 -887
  195. package/esm2022/plugins/table/components/td/td.component.mjs +0 -610
  196. package/esm2022/plugins/table/components/toolbar/table-options.component.mjs +0 -102
  197. package/esm2022/plugins/table/components/toolbar/table-toolbar.component.mjs +0 -179
  198. package/esm2022/plugins/table/table.editor.mjs +0 -301
  199. package/esm2022/plugins/table/table.pipe.mjs +0 -66
  200. package/esm2022/plugins/table/table.plugin.mjs +0 -556
  201. package/esm2022/plugins/table/table.service.mjs +0 -122
  202. package/esm2022/plugins/table/table.store.mjs +0 -417
  203. package/esm2022/plugins/table/table.types.mjs +0 -68
  204. package/esm2022/plugins/table/toolbar-item.component.mjs +0 -95
  205. package/esm2022/plugins/table/transforms/clear-cell.mjs +0 -14
  206. package/esm2022/plugins/table/transforms/clear-table-node.mjs +0 -27
  207. package/esm2022/plugins/table/transforms/index.mjs +0 -8
  208. package/esm2022/plugins/table/transforms/insert-column.mjs +0 -69
  209. package/esm2022/plugins/table/transforms/insert-row.mjs +0 -50
  210. package/esm2022/plugins/table/transforms/insert-table.mjs +0 -15
  211. package/esm2022/plugins/table/transforms/move-selection-from-cell.mjs +0 -91
  212. package/esm2022/plugins/table/transforms/remove-column.mjs +0 -51
  213. package/esm2022/plugins/table/transforms/remove-row.mjs +0 -48
  214. package/esm2022/plugins/table/transforms/remove-table.mjs +0 -49
  215. package/esm2022/plugins/table/utils/add-columns.mjs +0 -38
  216. package/esm2022/plugins/table/utils/calc-anchor-position.mjs +0 -26
  217. package/esm2022/plugins/table/utils/calc-span.mjs +0 -73
  218. package/esm2022/plugins/table/utils/calculate-table.mjs +0 -116
  219. package/esm2022/plugins/table/utils/cell-position.mjs +0 -57
  220. package/esm2022/plugins/table/utils/create-cell.mjs +0 -19
  221. package/esm2022/plugins/table/utils/create-row.mjs +0 -12
  222. package/esm2022/plugins/table/utils/create-table-position.mjs +0 -10
  223. package/esm2022/plugins/table/utils/create-table.mjs +0 -15
  224. package/esm2022/plugins/table/utils/get-grid-columns.mjs +0 -79
  225. package/esm2022/plugins/table/utils/get-min-max-cell-index.mjs +0 -69
  226. package/esm2022/plugins/table/utils/get-next-cell.mjs +0 -44
  227. package/esm2022/plugins/table/utils/get-select-cell-node.mjs +0 -16
  228. package/esm2022/plugins/table/utils/handle-cell.mjs +0 -25
  229. package/esm2022/plugins/table/utils/index.mjs +0 -16
  230. package/esm2022/plugins/table/utils/is-header-row.mjs +0 -15
  231. package/esm2022/plugins/table/utils/is-legal-table.mjs +0 -26
  232. package/esm2022/plugins/table/utils/is-range-in-table.mjs +0 -16
  233. package/esm2022/plugins/table/utils/is-selection-in-table.mjs +0 -51
  234. package/esm2022/plugins/table/utils/is-virtual-key.mjs +0 -13
  235. package/esm2022/plugins/table/utils/merge-cell.mjs +0 -110
  236. package/esm2022/plugins/table/utils/next-path.mjs +0 -5
  237. package/esm2022/plugins/table/utils/normalize-table.mjs +0 -31
  238. package/esm2022/plugins/table/utils/remove-columns.mjs +0 -23
  239. package/esm2022/plugins/table/utils/remove-row-column.mjs +0 -45
  240. package/esm2022/plugins/table/utils/set-menu-cell-invisibility.mjs +0 -45
  241. package/esm2022/plugins/table/utils/split-cell.mjs +0 -29
  242. package/esm2022/plugins/table/utils/table-entry.mjs +0 -21
  243. package/esm2022/plugins/table/utils/table-position.mjs +0 -251
  244. package/esm2022/plugins/table/utils/table-viewport.mjs +0 -41
  245. package/esm2022/plugins/todo-item/todo-item.component.mjs +0 -65
  246. package/esm2022/plugins/todo-item/todo-item.editor.mjs +0 -32
  247. package/esm2022/plugins/todo-item/todo-item.plugin.mjs +0 -93
  248. package/esm2022/plugins/vertical-align/toolbar-item.component.mjs +0 -89
  249. package/esm2022/plugins/vertical-align/vertical-align.editor.mjs +0 -59
  250. package/esm2022/public-api.mjs +0 -22
  251. package/esm2022/queries/anchor-block-entry.mjs +0 -13
  252. package/esm2022/queries/anchor-block.mjs +0 -6
  253. package/esm2022/queries/anchor-inline-entry.mjs +0 -10
  254. package/esm2022/queries/find-descendant.mjs +0 -47
  255. package/esm2022/queries/find-node.mjs +0 -45
  256. package/esm2022/queries/find-path.mjs +0 -28
  257. package/esm2022/queries/get-above-by-type.mjs +0 -14
  258. package/esm2022/queries/get-above.mjs +0 -9
  259. package/esm2022/queries/get-anchor-block-entry.mjs +0 -8
  260. package/esm2022/queries/get-block-above.mjs +0 -10
  261. package/esm2022/queries/get-block-card-above.mjs +0 -10
  262. package/esm2022/queries/get-block-card-cursor.mjs +0 -9
  263. package/esm2022/queries/get-container-blocks.mjs +0 -12
  264. package/esm2022/queries/get-directly-parent.mjs +0 -12
  265. package/esm2022/queries/get-insert-elements-path.mjs +0 -46
  266. package/esm2022/queries/get-last-child-path.mjs +0 -9
  267. package/esm2022/queries/get-last-node.mjs +0 -17
  268. package/esm2022/queries/get-next-sibling-nodes.mjs +0 -17
  269. package/esm2022/queries/get-node.mjs +0 -10
  270. package/esm2022/queries/get-nodes-by-type.mjs +0 -15
  271. package/esm2022/queries/get-nodes.mjs +0 -7
  272. package/esm2022/queries/get-parent.mjs +0 -12
  273. package/esm2022/queries/get-plain-text.mjs +0 -16
  274. package/esm2022/queries/get-plugin-by-toolbar.mjs +0 -13
  275. package/esm2022/queries/get-point-before.mjs +0 -62
  276. package/esm2022/queries/get-point-from-location.mjs +0 -15
  277. package/esm2022/queries/get-previous-path.mjs +0 -9
  278. package/esm2022/queries/get-rang-from-block-start.mjs +0 -16
  279. package/esm2022/queries/get-range-before.mjs +0 -17
  280. package/esm2022/queries/get-selection-marks.mjs +0 -18
  281. package/esm2022/queries/get-selection-nodes-by-type.mjs +0 -30
  282. package/esm2022/queries/get-text.mjs +0 -9
  283. package/esm2022/queries/get-toolbar-disabled.mjs +0 -13
  284. package/esm2022/queries/index.mjs +0 -62
  285. package/esm2022/queries/is-across-blocks.mjs +0 -7
  286. package/esm2022/queries/is-ancestor-empty.mjs +0 -6
  287. package/esm2022/queries/is-ancestor.mjs +0 -3
  288. package/esm2022/queries/is-block-above-empty.mjs +0 -11
  289. package/esm2022/queries/is-block-active.mjs +0 -8
  290. package/esm2022/queries/is-block-card-cursor.mjs +0 -16
  291. package/esm2022/queries/is-block-text-empty-after-selection.mjs +0 -31
  292. package/esm2022/queries/is-collapsed.mjs +0 -7
  293. package/esm2022/queries/is-contain-nested-type.mjs +0 -29
  294. package/esm2022/queries/is-container-type.mjs +0 -3
  295. package/esm2022/queries/is-descendant.mjs +0 -3
  296. package/esm2022/queries/is-empty-content-filter.mjs +0 -22
  297. package/esm2022/queries/is-empty-content.mjs +0 -15
  298. package/esm2022/queries/is-empty-paragraph-by-path.mjs +0 -7
  299. package/esm2022/queries/is-empty-paragraph.mjs +0 -28
  300. package/esm2022/queries/is-first-child.mjs +0 -5
  301. package/esm2022/queries/is-global-collapsed.mjs +0 -5
  302. package/esm2022/queries/is-include-types.mjs +0 -12
  303. package/esm2022/queries/is-node-type-in.mjs +0 -9
  304. package/esm2022/queries/is-node-type.mjs +0 -15
  305. package/esm2022/queries/is-paragraph.mjs +0 -9
  306. package/esm2022/queries/is-point-at-root.mjs +0 -2
  307. package/esm2022/queries/is-range-across-blocks.mjs +0 -22
  308. package/esm2022/queries/is-range-at-root.mjs +0 -3
  309. package/esm2022/queries/is-root-path.mjs +0 -2
  310. package/esm2022/queries/is-start.mjs +0 -6
  311. package/esm2022/queries/some-node.mjs +0 -9
  312. package/esm2022/services/context.service.mjs +0 -140
  313. package/esm2022/services/table-contextmenu.service.mjs +0 -288
  314. package/esm2022/services/toolbar.service.mjs +0 -47
  315. package/esm2022/shortcuts/index.mjs +0 -5
  316. package/esm2022/shortcuts/mark.mjs +0 -25
  317. package/esm2022/test/basic/basic.component.mjs +0 -61
  318. package/esm2022/test/faker/data-transfer-faker.mjs +0 -13
  319. package/esm2022/test/faker/tethys-icon-faker.mjs +0 -22
  320. package/esm2022/test/index.mjs +0 -7
  321. package/esm2022/test/utils/mock-plugins.mjs +0 -104
  322. package/esm2022/test/utils/preset-config.mjs +0 -17
  323. package/esm2022/test/utils/with-plugin.mjs +0 -11
  324. package/esm2022/transforms/apply-deep-to-nodes.mjs +0 -22
  325. package/esm2022/transforms/clear-marks.mjs +0 -23
  326. package/esm2022/transforms/delete-element.mjs +0 -12
  327. package/esm2022/transforms/delete-node-by-type.mjs +0 -10
  328. package/esm2022/transforms/handle-continual-delete-backward.mjs +0 -18
  329. package/esm2022/transforms/handle-continual-insert-break.mjs +0 -20
  330. package/esm2022/transforms/index.mjs +0 -19
  331. package/esm2022/transforms/insert-elements.mjs +0 -55
  332. package/esm2022/transforms/insert-paragraph.mjs +0 -6
  333. package/esm2022/transforms/merge-deep-to-nodes.mjs +0 -9
  334. package/esm2022/transforms/move-children.mjs +0 -22
  335. package/esm2022/transforms/on-keydown-reset-block-type.mjs +0 -23
  336. package/esm2022/transforms/set-end-selection.mjs +0 -10
  337. package/esm2022/transforms/set-marks.mjs +0 -9
  338. package/esm2022/transforms/set-node-by-type.mjs +0 -10
  339. package/esm2022/transforms/set-node.mjs +0 -6
  340. package/esm2022/transforms/un-hang-range.mjs +0 -11
  341. package/esm2022/transforms/un-wrap.mjs +0 -12
  342. package/esm2022/transforms/unwrap-nodes-by-type.mjs +0 -14
  343. package/esm2022/utils/auto-focus.mjs +0 -24
  344. package/esm2022/utils/blob.mjs +0 -16
  345. package/esm2022/utils/cast-array.mjs +0 -7
  346. package/esm2022/utils/color-picker.mjs +0 -15
  347. package/esm2022/utils/common.mjs +0 -11
  348. package/esm2022/utils/copy-node.mjs +0 -38
  349. package/esm2022/utils/create-empty-paragraph.mjs +0 -14
  350. package/esm2022/utils/data-transform.mjs +0 -48
  351. package/esm2022/utils/dom.mjs +0 -56
  352. package/esm2022/utils/editor-uuid.mjs +0 -8
  353. package/esm2022/utils/fragment.mjs +0 -82
  354. package/esm2022/utils/get-editable-element-height.mjs +0 -6
  355. package/esm2022/utils/get-mode.mjs +0 -14
  356. package/esm2022/utils/get-toolbar-class.mjs +0 -6
  357. package/esm2022/utils/id-creator.mjs +0 -11
  358. package/esm2022/utils/index.mjs +0 -23
  359. package/esm2022/utils/insert-data-by-invalid-type.mjs +0 -70
  360. package/esm2022/utils/is-clean-empty-paragraph.mjs +0 -37
  361. package/esm2022/utils/is-inline.mjs +0 -9
  362. package/esm2022/utils/lodash.mjs +0 -3
  363. package/esm2022/utils/match.mjs +0 -32
  364. package/esm2022/utils/merge-element-options.mjs +0 -19
  365. package/esm2022/utils/normalize.mjs +0 -61
  366. package/esm2022/utils/refocus.mjs +0 -47
  367. package/esm2022/utils/scrolling.mjs +0 -43
  368. package/esm2022/utils/update-popover-position.mjs +0 -26
  369. package/esm2022/utils/weak-maps.mjs +0 -9
  370. package/esm2022/worktile-theia.mjs +0 -5
@@ -1,105 +0,0 @@
1
- import { Editor, Range, Text, Transforms } from 'slate';
2
- import { DISABLED_OPERATE_TYPES, ElementKinds, MarkTypes } from '../../constants';
3
- import { PluginKeys } from '../../interfaces';
4
- import { createPluginFactory } from '../../core';
5
- import { CONTROL_KEY } from '../../utils';
6
- import { MarkEditor } from './mark.editor';
7
- export const withMark = (editor) => {
8
- const e = editor;
9
- e.removeMark = (key, shouldChange = true) => {
10
- const { selection } = e;
11
- if (selection) {
12
- if (Range.isExpanded(selection)) {
13
- Transforms.unsetNodes(e, key, {
14
- match: Text.isText,
15
- split: true
16
- });
17
- }
18
- else {
19
- const marks = { ...(Editor.marks(e) || {}) };
20
- delete marks[key];
21
- editor.marks = marks;
22
- const text = Editor.string(e, selection.anchor.path);
23
- if (text !== '') {
24
- Editor.setNormalizing(editor, false);
25
- e.insertText('');
26
- editor.marks = marks;
27
- Editor.setNormalizing(editor, true);
28
- }
29
- else {
30
- Transforms.unsetNodes(e, key, { at: selection.anchor.path });
31
- }
32
- if (shouldChange) {
33
- editor.onChange();
34
- }
35
- }
36
- }
37
- };
38
- e.addMark = (key, value) => {
39
- const { selection } = editor;
40
- if (selection) {
41
- if (Range.isExpanded(selection)) {
42
- Transforms.setNodes(e, { [key]: value }, { match: Text.isText, split: true });
43
- }
44
- else {
45
- const marks = {
46
- ...(Editor.marks(e) || {}),
47
- [key]: value
48
- };
49
- editor.marks = marks;
50
- const text = Editor.string(e, selection.anchor.path);
51
- if (text !== '') {
52
- Editor.setNormalizing(editor, false);
53
- e.insertText('');
54
- editor.marks = marks;
55
- Editor.setNormalizing(editor, true);
56
- }
57
- else {
58
- Transforms.setNodes(e, { [key]: value }, { at: selection.anchor.path });
59
- }
60
- }
61
- }
62
- };
63
- return e;
64
- };
65
- export const createMarkPlugin = (locale) => createPluginFactory({
66
- key: PluginKeys.mark,
67
- withOverrides: withMark,
68
- toolbarItems: [
69
- {
70
- key: MarkTypes.bold,
71
- icon: 'bold',
72
- name: locale().bold,
73
- shortcutKey: `${CONTROL_KEY}+B`,
74
- execute: editor => MarkEditor.toggleMark(editor, MarkTypes.bold),
75
- active: editor => MarkEditor.isMarkActive(editor, MarkTypes.bold)
76
- },
77
- {
78
- key: MarkTypes.italic,
79
- icon: 'italic',
80
- name: locale().italic,
81
- shortcutKey: `${CONTROL_KEY}+I`,
82
- execute: editor => MarkEditor.toggleMark(editor, MarkTypes.italic),
83
- active: editor => MarkEditor.isMarkActive(editor, MarkTypes.italic)
84
- },
85
- {
86
- key: MarkTypes.strike,
87
- icon: 'strike',
88
- name: locale().strike,
89
- execute: editor => MarkEditor.toggleMark(editor, MarkTypes.strike),
90
- active: editor => MarkEditor.isMarkActive(editor, MarkTypes.strike)
91
- },
92
- {
93
- key: MarkTypes.underline,
94
- icon: 'underline',
95
- name: locale().underline,
96
- shortcutKey: `${CONTROL_KEY}+U`,
97
- execute: editor => MarkEditor.toggleMark(editor, MarkTypes.underline),
98
- active: editor => MarkEditor.isMarkActive(editor, MarkTypes.underline)
99
- }
100
- ],
101
- options: {
102
- disabledOperateTypes: [ElementKinds.image, ...DISABLED_OPERATE_TYPES]
103
- }
104
- })();
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9tYXJrL21hcmsucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBZ0MsTUFBUyxFQUFLLEVBQUU7SUFDcEUsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBRWpCLENBQUMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFXLEVBQUUsWUFBWSxHQUFHLElBQUksRUFBRSxFQUFFO1FBQ2hELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNaLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM5QixVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUU7b0JBQzFCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDbEIsS0FBSyxFQUFFLElBQUk7aUJBQ2QsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLE1BQU0sS0FBSyxHQUFHLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxL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Q0FBQztTQUN0RTtRQUNEO1lBQ0ksR0FBRyxFQUFFLFNBQVMsQ0FBQyxTQUFTO1lBQ3hCLElBQUksRUFBRSxXQUFXO1lBQ2pCLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxTQUFTO1lBQ3hCLFdBQVcsRUFBRSxHQUFHLFdBQVcsSUFBSTtZQUMvQixPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDO1lBQ3JFLE1BQU0sRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUM7U0FDekU7S0FDSjtJQUNELE9BQU8sRUFBRTtRQUNMLG9CQUFvQixFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxHQUFHLHNCQUFzQixDQUFDO0tBQ3hFO0NBQ0osQ0FBQyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFJhbmdlLCBUZXh0LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRElTQUJMRURfT1BFUkFURV9UWVBFUywgRWxlbWVudEtpbmRzLCBNYXJrVHlwZXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgUGx1Z2luS2V5cyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlUGx1Z2luRmFjdG9yeSB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQ09OVFJPTF9LRVkgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNYXJrRWRpdG9yIH0gZnJvbSAnLi9tYXJrLmVkaXRvcic7XG5pbXBvcnQgeyBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZUkxOG5UcmFuc2xhdGlvbiB9IGZyb20gJy4uLy4uL2kxOG4nO1xuXG5leHBvcnQgY29uc3Qgd2l0aE1hcmsgPSA8VCBleHRlbmRzIEVkaXRvciAmIE1hcmtFZGl0b3I+KGVkaXRvcjogVCk6IFQgPT4ge1xuICAgIGNvbnN0IGUgPSBlZGl0b3I7XG5cbiAgICBlLnJlbW92ZU1hcmsgPSAoa2V5OiBzdHJpbmcsIHNob3VsZENoYW5nZSA9IHRydWUpID0+IHtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGU7XG4gICAgICAgIGlmIChzZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIGlmIChSYW5nZS5pc0V4cGFuZGVkKHNlbGVjdGlvbikpIHtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnVuc2V0Tm9kZXMoZSwga2V5LCB7XG4gICAgICAgICAgICAgICAgICAgIG1hdGNoOiBUZXh0LmlzVGV4dCxcbiAgICAgICAgICAgICAgICAgICAgc3BsaXQ6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFya3MgPSB7IC4uLihFZGl0b3IubWFya3MoZSkgfHwge30pIH07XG4gICAgICAgICAgICAgICAgZGVsZXRlIG1hcmtzW2tleV07XG4gICAgICAgICAgICAgICAgZWRpdG9yLm1hcmtzID0gbWFya3M7XG4gICAgICAgICAgICAgICAgY29uc3QgdGV4dCA9IEVkaXRvci5zdHJpbmcoZSwgc2VsZWN0aW9uLmFuY2hvci5wYXRoKTtcbiAgICAgICAgICAgICAgICBpZiAodGV4dCAhPT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgRWRpdG9yLnNldE5vcm1hbGl6aW5nKGVkaXRvciwgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICBlLmluc2VydFRleHQoJycpO1xuICAgICAgICAgICAgICAgICAgICBlZGl0b3IubWFya3MgPSBtYXJrcztcbiAgICAgICAgICAgICAgICAgICAgRWRpdG9yLnNldE5vcm1hbGl6aW5nKGVkaXRvciwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy51bnNldE5vZGVzKGUsIGtleSwgeyBhdDogc2VsZWN0aW9uLmFuY2hvci5wYXRoIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoc2hvdWxkQ2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGVkaXRvci5vbkNoYW5nZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBlLmFkZE1hcmsgPSAoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcblxuICAgICAgICBpZiAoc2VsZWN0aW9uKSB7XG4gICAgICAgICAgICBpZiAoUmFuZ2UuaXNFeHBhbmRlZChzZWxlY3Rpb24pKSB7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhlLCB7IFtrZXldOiB2YWx1ZSB9LCB7IG1hdGNoOiBUZXh0LmlzVGV4dCwgc3BsaXQ6IHRydWUgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcmtzID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi4oRWRpdG9yLm1hcmtzKGUpIHx8IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgW2tleV06IHZhbHVlXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBlZGl0b3IubWFya3MgPSBtYXJrcztcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gRWRpdG9yLnN0cmluZyhlLCBzZWxlY3Rpb24uYW5jaG9yLnBhdGgpO1xuICAgICAgICAgICAgICAgIGlmICh0ZXh0ICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICBFZGl0b3Iuc2V0Tm9ybWFsaXppbmcoZWRpdG9yLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGUuaW5zZXJ0VGV4dCgnJyk7XG4gICAgICAgICAgICAgICAgICAgIGVkaXRvci5tYXJrcyA9IG1hcmtzO1xuICAgICAgICAgICAgICAgICAgICBFZGl0b3Iuc2V0Tm9ybWFsaXppbmcoZWRpdG9yLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKGUsIHsgW2tleV06IHZhbHVlIH0sIHsgYXQ6IHNlbGVjdGlvbi5hbmNob3IucGF0aCB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIGU7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWFya1BsdWdpbiA9IChsb2NhbGU6IFNpZ25hbDxUaGVJMThuVHJhbnNsYXRpb24+KSA9PlxuICAgIGNyZWF0ZVBsdWdpbkZhY3Rvcnkoe1xuICAgICAgICBrZXk6IFBsdWdpbktleXMubWFyayxcbiAgICAgICAgd2l0aE92ZXJyaWRlczogd2l0aE1hcmssXG4gICAgICAgIHRvb2xiYXJJdGVtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGtleTogTWFya1R5cGVzLmJvbGQsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2JvbGQnLFxuICAgICAgICAgICAgICAgIG5hbWU6IGxvY2FsZSgpLmJvbGQsXG4gICAgICAgICAgICAgICAgc2hvcnRjdXRLZXk6IGAke0NPTlRST0xfS0VZfStCYCxcbiAgICAgICAgICAgICAgICBleGVjdXRlOiBlZGl0b3IgPT4gTWFya0VkaXRvci50b2dnbGVNYXJrKGVkaXRvciwgTWFya1R5cGVzLmJvbGQpLFxuICAgICAgICAgICAgICAgIGFjdGl2ZTogZWRpdG9yID0+IE1hcmtFZGl0b3IuaXNNYXJrQWN0aXZlKGVkaXRvciwgTWFya1R5cGVzLmJvbGQpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGtleTogTWFya1R5cGVzLml0YWxpYyxcbiAgICAgICAgICAgICAgICBpY29uOiAnaXRhbGljJyxcbiAgICAgICAgICAgICAgICBuYW1lOiBsb2NhbGUoKS5pdGFsaWMsXG4gICAgICAgICAgICAgICAgc2hvcnRjdXRLZXk6IGAke0NPTlRST0xfS0VZfStJYCxcbiAgICAgICAgICAgICAgICBleGVjdXRlOiBlZGl0b3IgPT4gTWFya0VkaXRvci50b2dnbGVNYXJrKGVkaXRvciwgTWFya1R5cGVzLml0YWxpYyksXG4gICAgICAgICAgICAgICAgYWN0aXZlOiBlZGl0b3IgPT4gTWFya0VkaXRvci5pc01hcmtBY3RpdmUoZWRpdG9yLCBNYXJrVHlwZXMuaXRhbGljKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBrZXk6IE1hcmtUeXBlcy5zdHJpa2UsXG4gICAgICAgICAgICAgICAgaWNvbjogJ3N0cmlrZScsXG4gICAgICAgICAgICAgICAgbmFtZTogbG9jYWxlKCkuc3RyaWtlLFxuICAgICAgICAgICAgICAgIGV4ZWN1dGU6IGVkaXRvciA9PiBNYXJrRWRpdG9yLnRvZ2dsZU1hcmsoZWRpdG9yLCBNYXJrVHlwZXMuc3RyaWtlKSxcbiAgICAgICAgICAgICAgICBhY3RpdmU6IGVkaXRvciA9PiBNYXJrRWRpdG9yLmlzTWFya0FjdGl2ZShlZGl0b3IsIE1hcmtUeXBlcy5zdHJpa2UpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGtleTogTWFya1R5cGVzLnVuZGVybGluZSxcbiAgICAgICAgICAgICAgICBpY29uOiAndW5kZXJsaW5lJyxcbiAgICAgICAgICAgICAgICBuYW1lOiBsb2NhbGUoKS51bmRlcmxpbmUsXG4gICAgICAgICAgICAgICAgc2hvcnRjdXRLZXk6IGAke0NPTlRST0xfS0VZfStVYCxcbiAgICAgICAgICAgICAgICBleGVjdXRlOiBlZGl0b3IgPT4gTWFya0VkaXRvci50b2dnbGVNYXJrKGVkaXRvciwgTWFya1R5cGVzLnVuZGVybGluZSksXG4gICAgICAgICAgICAgICAgYWN0aXZlOiBlZGl0b3IgPT4gTWFya0VkaXRvci5pc01hcmtBY3RpdmUoZWRpdG9yLCBNYXJrVHlwZXMudW5kZXJsaW5lKVxuICAgICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBkaXNhYmxlZE9wZXJhdGVUeXBlczogW0VsZW1lbnRLaW5kcy5pbWFnZSwgLi4uRElTQUJMRURfT1BFUkFURV9UWVBFU11cbiAgICAgICAgfVxuICAgIH0pKCk7XG4iXX0=
@@ -1,5 +0,0 @@
1
- export * from './mention.type';
2
- export * from './mention.editor';
3
- export * from './mention.plugin';
4
- export * from './suggestion.component';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9tZW50aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lbnRpb24udHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL21lbnRpb24uZWRpdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbWVudGlvbi5wbHVnaW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWdnZXN0aW9uLmNvbXBvbmVudCc7XG4iXX0=
@@ -1,179 +0,0 @@
1
- import { Overlay } from '@angular/cdk/overlay';
2
- import { ChangeDetectorRef, ElementRef, ViewContainerRef } from '@angular/core';
3
- import { ThyPopover } from 'ngx-tethys/popover';
4
- import { Editor, Transforms } from 'slate';
5
- import { AngularEditor } from 'slate-angular';
6
- import { ElementKinds } from '../../constants';
7
- import { getPluginOptions } from '../../core';
8
- import { PluginKeys, TheEditor } from '../../interfaces';
9
- import * as TheQueries from '../../queries';
10
- import { createEmptyParagraph, THE_EDITOR_ORIGIN_ANCHOR, THE_EDITOR_POPOVER_REF, updatePopoverPosition } from '../../utils';
11
- export const MentionEditor = {
12
- insertTrigger(editor, type) {
13
- MentionEditor.close(editor);
14
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
15
- const currentMention = mentions.find(m => m?.type === type);
16
- const insertPath = TheQueries.getInsertElementsPath(editor, [ElementKinds.paragraph]);
17
- if (!insertPath) {
18
- Transforms.insertNodes(editor, createEmptyParagraph(), { select: true });
19
- }
20
- Transforms.insertText(editor, ` ${currentMention.trigger}`);
21
- setTimeout(() => {
22
- THE_EDITOR_ORIGIN_ANCHOR.set(editor, Editor.before(editor, editor.selection.anchor));
23
- const textElement = AngularEditor.toDOMNode(editor, TheQueries.anchorBlockEntry(editor)[0]);
24
- MentionEditor.openSelectOverlay(editor, type, textElement);
25
- });
26
- },
27
- deleteTriggerText(editor) {
28
- const searchInfo = MentionEditor.getSearchInfo(editor);
29
- const { currentRange } = searchInfo;
30
- Transforms.delete(editor, { at: currentRange });
31
- },
32
- openSuggestion(editor, type) {
33
- const { selection } = editor;
34
- const elementRef = editor.injector.get(ElementRef);
35
- const isParagraphStart = Editor.isStart(editor, selection?.anchor, TheQueries.anchorBlockEntry(editor)[1]);
36
- const originAnchor = THE_EDITOR_ORIGIN_ANCHOR.get(editor);
37
- let text = '';
38
- if (!isParagraphStart) {
39
- const beforeRange = {
40
- anchor: Editor.before(editor, selection.anchor),
41
- focus: selection.focus
42
- };
43
- text = Editor.string(editor, beforeRange);
44
- }
45
- const isSoftBreak = text === '\n';
46
- if (isParagraphStart || text === ' ' || isSoftBreak) {
47
- if (!originAnchor) {
48
- THE_EDITOR_ORIGIN_ANCHOR.set(editor, editor.selection.anchor);
49
- }
50
- const textElement = AngularEditor.toDOMNode(editor, TheQueries.anchorBlockEntry(editor)[0]);
51
- const origin = isParagraphStart ? textElement : elementRef;
52
- MentionEditor.openSelectOverlay(editor, type, origin, isSoftBreak);
53
- }
54
- },
55
- getSearchInfo(editor) {
56
- const popoverRef = THE_EDITOR_POPOVER_REF.get(editor);
57
- const originAnchor = THE_EDITOR_ORIGIN_ANCHOR.get(editor);
58
- if (originAnchor && popoverRef && popoverRef.componentInstance) {
59
- const currentRange = Editor.range(editor, originAnchor, editor.selection?.focus);
60
- const currentText = Editor.string(editor, currentRange);
61
- return {
62
- currentRange,
63
- currentText
64
- };
65
- }
66
- return null;
67
- },
68
- updateSearchText(editor, text) {
69
- const popoverRef = THE_EDITOR_POPOVER_REF.get(editor);
70
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
71
- const panelClass = popoverRef.getOverlayRef().getConfig().panelClass;
72
- const type = Array.isArray(panelClass)
73
- ? panelClass.find(i => i.indexOf('the-mention-') > -1).split('the-mention-')[1]
74
- : panelClass.split('the-mention-')[1];
75
- const currentMention = mentions.find(m => m.type === type);
76
- const regex = new RegExp(`^${currentMention.trigger}`);
77
- const beforeMatch = text && text.match(regex);
78
- const keywords = text.slice(1);
79
- const cdr = editor.injector.get(ChangeDetectorRef);
80
- if (popoverRef?.componentInstance && beforeMatch && !keywords.match(/^\s|\s$/)) {
81
- popoverRef.componentInstance.keywords = keywords;
82
- popoverRef.componentInstance.getSearchResult(keywords);
83
- cdr.markForCheck();
84
- }
85
- },
86
- openSelectOverlay(editor, type, origin, isSoftBreak = false) {
87
- const overlay = editor.injector.get(Overlay);
88
- const thyPopover = editor.injector.get(ThyPopover);
89
- const viewContainerRef = editor.injector.get(ViewContainerRef);
90
- const cdr = editor.injector.get(ChangeDetectorRef);
91
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
92
- const currentMention = mentions.find(m => m.type === type);
93
- const suggestionComponent = currentMention?.suggestion;
94
- const popoverRef = thyPopover.open(suggestionComponent, {
95
- origin,
96
- initialState: {
97
- editor,
98
- type
99
- },
100
- panelClass: `the-mention-${type}`,
101
- placement: 'bottomLeft',
102
- insideClosable: false,
103
- outsideClosable: true,
104
- hasBackdrop: false,
105
- offset: 4,
106
- minWidth: 0,
107
- viewContainerRef: viewContainerRef,
108
- scrollStrategy: overlay.scrollStrategies.reposition(),
109
- autoAdaptive: true
110
- });
111
- THE_EDITOR_POPOVER_REF.set(editor, popoverRef);
112
- popoverRef?.afterClosed().subscribe(() => {
113
- MentionEditor.close(editor);
114
- });
115
- MentionEditor.updatePositionStrategy(editor, isSoftBreak);
116
- cdr.markForCheck();
117
- },
118
- close(editor) {
119
- const popoverRef = THE_EDITOR_POPOVER_REF.get(editor);
120
- if (popoverRef) {
121
- popoverRef.close();
122
- THE_EDITOR_POPOVER_REF.set(editor, null);
123
- THE_EDITOR_ORIGIN_ANCHOR.set(editor, null);
124
- }
125
- },
126
- insertMention(editor, type, data) {
127
- const element = {
128
- type,
129
- ...data,
130
- children: [
131
- {
132
- text: ''
133
- }
134
- ]
135
- };
136
- Transforms.insertNodes(editor, element);
137
- Transforms.select(editor, editor.selection);
138
- Transforms.move(editor);
139
- TheEditor.focus(editor);
140
- editor.insertText(' ');
141
- },
142
- isActive(editor, type) {
143
- const [match] = TheQueries.getNodesByType(editor, type);
144
- return !!match;
145
- },
146
- updatePositionStrategy(editor, isSoftBreak = false) {
147
- const textElement = AngularEditor.toDOMNode(editor, TheQueries.anchorBlockEntry(editor)[0]);
148
- const nativeRange = AngularEditor.toDOMRange(editor, editor.selection);
149
- const cursorRect = nativeRange.getBoundingClientRect();
150
- const textElementRect = textElement.getBoundingClientRect();
151
- const bottomPosition = {
152
- originX: 'start',
153
- originY: 'top',
154
- overlayX: 'start',
155
- overlayY: 'top',
156
- offsetX: isSoftBreak ? 0 : cursorRect.x - textElementRect.x,
157
- offsetY: isSoftBreak ? textElementRect.height : cursorRect.y - textElementRect.y + 20
158
- };
159
- const bottomLeftPosition = {
160
- ...bottomPosition,
161
- overlayX: 'end',
162
- offsetX: isSoftBreak ? 0 : cursorRect.x - textElementRect.x + 10
163
- };
164
- const topRightPosition = {
165
- ...bottomPosition,
166
- overlayY: 'bottom',
167
- offsetY: cursorRect.y - textElementRect.y + (isSoftBreak ? cursorRect.height : 0)
168
- };
169
- const topLeftPosition = {
170
- ...topRightPosition,
171
- overlayX: 'end',
172
- overlayY: 'bottom',
173
- offsetX: isSoftBreak ? 0 : cursorRect.x - textElementRect.x + 10
174
- };
175
- const overlayRef = THE_EDITOR_POPOVER_REF.get(editor)?.getOverlayRef();
176
- updatePopoverPosition(overlayRef, textElement, [bottomPosition, bottomLeftPosition, topRightPosition, topLeftPosition]);
177
- }
178
- };
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudGlvbi5lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9tZW50aW9uL21lbnRpb24uZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBVyxVQUFVLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekQsT0FBTyxLQUFLLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzVILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUN6QixhQUFhLENBQUMsTUFBaUIsRUFBRSxJQUFZO1FBQ3pDLGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQXVCLE1BQU0sRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxDQUFDO1FBQzlGLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFD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QUN4QyxHQUFHLGNBQWM7WUFDakIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BGLENBQUM7UUFDRixNQUFNLGVBQWUsR0FBc0I7WUFDdkMsR0FBRyxnQkFBZ0I7WUFDbkIsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRLEVBQUUsUUFBUTtZQUNsQixPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsR0FBRyxFQUFFO1NBQ25FLENBQUM7UUFFRixNQUFNLFVBQVUsR0FBRyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDdkUscUJBQXFCLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQzVILENBQUM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGVkUG9zaXRpb24sIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBBbmd1bGFyRWRpdG9yIH0gZnJvbSAnc2xhdGUtYW5ndWxhcic7XG5pbXBvcnQgeyBFbGVtZW50S2luZHMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0UGx1Z2luT3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgUGx1Z2luS2V5cywgVGhlRWRpdG9yIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBUaGVRdWVyaWVzIGZyb20gJy4uLy4uL3F1ZXJpZXMnO1xuaW1wb3J0IHsgY3JlYXRlRW1wdHlQYXJhZ3JhcGgsIFRIRV9FRElUT1JfT1JJR0lOX0FOQ0hPUiwgVEhFX0VESVRPUl9QT1BPVkVSX1JFRiwgdXBkYXRlUG9wb3ZlclBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTWVudGlvblBsdWdpbk9wdGlvbnMgfSBmcm9tICcuL21lbnRpb24udHlwZSc7XG5cbmV4cG9ydCBjb25zdCBNZW50aW9uRWRpdG9yID0ge1xuICAgIGluc2VydFRyaWdnZXIoZWRpdG9yOiBUaGVFZGl0b3IsIHR5cGU6IHN0cmluZykge1xuICAgICAgICBNZW50aW9uRWRpdG9yLmNsb3NlKGVkaXRvcik7XG4gICAgICAgIGNvbnN0IG1lbnRpb25zID0gZ2V0UGx1Z2luT3B0aW9uczxNZW50aW9uUGx1Z2luT3B0aW9ucz4oZWRpdG9yLCBQbHVnaW5LZXlzLm1lbnRpb24pPy5tZW50aW9ucztcbiAgICAgICAgY29uc3QgY3VycmVudE1lbnRpb24gPSBtZW50aW9ucy5maW5kKG0gPT4gbT8udHlwZSA9PT0gdHlwZSk7XG4gICAgICAgIGNvbnN0IGluc2VydFBhdGggPSBUaGVRdWVyaWVzLmdldEluc2VydEVsZW1lbnRzUGF0aChlZGl0b3IsIFtFbGVtZW50S2luZHMucGFyYWdyYXBoXSk7XG5cbiAgICAgICAgaWYgKCFpbnNlcnRQYXRoKSB7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgY3JlYXRlRW1wdHlQYXJhZ3JhcGgoKSwgeyBzZWxlY3Q6IHRydWUgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBUcmFuc2Zvcm1zLmluc2VydFRleHQoZWRpdG9yLCBgICR7Y3VycmVudE1lbnRpb24udHJpZ2dlcn1gKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBUSEVfRURJVE9SX09SSUdJTl9BTkNIT1Iuc2V0KGVkaXRvciwgRWRpdG9yLmJlZm9yZShlZGl0b3IsIGVkaXRvci5zZWxlY3Rpb24uYW5jaG9yKSk7XG4gICAgICAgICAgICBjb25zdCB0ZXh0RWxlbWVudCA9IEFuZ3VsYXJFZGl0b3IudG9ET01Ob2RlKGVkaXRvciwgVGhlUXVlcmllcy5hbmNob3JCbG9ja0VudHJ5KGVkaXRvcilbMF0pO1xuICAgICAgICAgICAgTWVudGlvbkVkaXRvci5vcGVuU2VsZWN0T3ZlcmxheShlZGl0b3IsIHR5cGUsIHRleHRFbGVtZW50KTtcbiAgICAgICAgfSk7XG4gICAgfSxcbiAgICBkZWxldGVUcmlnZ2VyVGV4dChlZGl0b3I6IFRoZUVkaXRvcikge1xuICAgICAgICBjb25zdCBzZWFyY2hJbmZvID0gTWVudGlvbkVkaXRvci5nZXRTZWFyY2hJbmZvKGVkaXRvcik7XG4gICAgICAgIGNvbnN0IHsgY3VycmVudFJhbmdlIH0gPSBzZWFyY2hJbmZvO1xuICAgICAgICBUcmFuc2Zvcm1zLmRlbGV0ZShlZGl0b3IsIHsgYXQ6IGN1cnJlbnRSYW5nZSB9KTtcbiAgICB9LFxuICAgIG9wZW5TdWdnZXN0aW9uKGVkaXRvcjogVGhlRWRpdG9yLCB0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICAgICAgY29uc3QgZWxlbWVudFJlZiA9IGVkaXRvci5pbmplY3Rvci5nZXQoRWxlbWVudFJlZik7XG4gICAgICAgIGNvbnN0IGlzUGFyYWdyYXBoU3RhcnQgPSBFZGl0b3IuaXNTdGFydChlZGl0b3IsIHNlbGVjdGlvbj8uYW5jaG9yLCBUaGVRdWVyaWVzLmFuY2hvckJsb2NrRW50cnkoZWRpdG9yKVsxXSk7XG4gICAgICAgIGNvbnN0IG9yaWdpbkFuY2hvciA9IFRIRV9FRElUT1JfT1JJR0lOX0FOQ0hPUi5nZXQoZWRpdG9yKTtcbiAgICAgICAgbGV0IHRleHQgPSAnJztcblxuICAgICAgICBpZiAoIWlzUGFyYWdyYXBoU3RhcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGJlZm9yZVJhbmdlID0ge1xuICAgICAgICAgICAgICAgIGFuY2hvcjogRWRpdG9yLmJlZm9yZShlZGl0b3IsIHNlbGVjdGlvbi5hbmNob3IpLFxuICAgICAgICAgICAgICAgIGZvY3VzOiBzZWxlY3Rpb24uZm9jdXNcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0ZXh0ID0gRWRpdG9yLnN0cmluZyhlZGl0b3IsIGJlZm9yZVJhbmdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGlzU29mdEJyZWFrID0gdGV4dCA9PT0gJ1xcbic7XG4gICAgICAgIGlmIChpc1BhcmFncmFwaFN0YXJ0IHx8IHRleHQgPT09ICcgJyB8fCBpc1NvZnRCcmVhaykge1xuICAgICAgICAgICAgaWYgKCFvcmlnaW5BbmNob3IpIHtcbiAgICAgICAgICAgICAgICBUSEVfRURJVE9SX09SSUdJTl9BTkNIT1Iuc2V0KGVkaXRvciwgZWRpdG9yLnNlbGVjdGlvbi5hbmNob3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdGV4dEVsZW1lbnQgPSBBbmd1bGFyRWRpdG9yLnRvRE9NTm9kZShlZGl0b3IsIFRoZVF1ZXJpZXMuYW5jaG9yQmxvY2tFbnRyeShlZGl0b3IpWzBdKTtcbiAgICAgICAgICAgIGNvbnN0IG9yaWdpbiA9IGlzUGFyYWdyYXBoU3RhcnQgPyB0ZXh0RWxlbWVudCA6IGVsZW1lbnRSZWY7XG4gICAgICAgICAgICBNZW50aW9uRWRpdG9yLm9wZW5TZWxlY3RPdmVybGF5KGVkaXRvciwgdHlwZSwgb3JpZ2luLCBpc1NvZnRCcmVhayk7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIGdldFNlYXJjaEluZm8oZWRpdG9yOiBUaGVFZGl0b3IpIHtcbiAgICAgICAgY29uc3QgcG9wb3ZlclJlZiA9IFRIRV9FRElUT1JfUE9QT1ZFUl9SRUYuZ2V0KGVkaXRvcik7XG4gICAgICAgIGNvbnN0IG9yaWdpbkFuY2hvciA9IFRIRV9FRElUT1JfT1JJR0lOX0FOQ0hPUi5nZXQoZWRpdG9yKTtcblxuICAgICAgICBpZiAob3JpZ2luQW5jaG9yICYmIHBvcG92ZXJSZWYgJiYgcG9wb3ZlclJlZi5jb21wb25lbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFJhbmdlID0gRWRpdG9yLnJhbmdlKGVkaXRvciwgb3JpZ2luQW5jaG9yLCBlZGl0b3Iuc2VsZWN0aW9uPy5mb2N1cyk7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VGV4dCA9IEVkaXRvci5zdHJpbmcoZWRpdG9yLCBjdXJyZW50UmFuZ2UpO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRSYW5nZSxcbiAgICAgICAgICAgICAgICBjdXJyZW50VGV4dFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH0sXG4gICAgdXBkYXRlU2VhcmNoVGV4dChlZGl0b3I6IFRoZUVkaXRvciwgdGV4dDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHBvcG92ZXJSZWYgPSBUSEVfRURJVE9SX1BPUE9WRVJfUkVGLmdldChlZGl0b3IpO1xuICAgICAgICBjb25zdCBtZW50aW9ucyA9IGdldFBsdWdpbk9wdGlvbnM8TWVudGlvblBsdWdpbk9wdGlvbnM+KGVkaXRvciwgUGx1Z2luS2V5cy5tZW50aW9uKT8ubWVudGlvbnM7XG4gICAgICAgIGNvbnN0IHBhbmVsQ2xhc3MgPSBwb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKS5nZXRDb25maWcoKS5wYW5lbENsYXNzO1xuICAgICAgICBjb25zdCB0eXBlID0gQXJyYXkuaXNBcnJheShwYW5lbENsYXNzKVxuICAgICAgICAgICAgPyBwYW5lbENsYXNzLmZpbmQoaSA9PiBpLmluZGV4T2YoJ3RoZS1tZW50aW9uLScpID4gLTEpLnNwbGl0KCd0aGUtbWVudGlvbi0nKVsxXVxuICAgICAgICAgICAgOiBwYW5lbENsYXNzLnNwbGl0KCd0aGUtbWVudGlvbi0nKVsxXTtcbiAgICAgICAgY29uc3QgY3VycmVudE1lbnRpb24gPSBtZW50aW9ucy5maW5kKG0gPT4gbS50eXBlID09PSB0eXBlKTtcbiAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKGBeJHtjdXJyZW50TWVudGlvbi50cmlnZ2VyfWApO1xuICAgICAgICBjb25zdCBiZWZvcmVNYXRjaCA9IHRleHQgJiYgdGV4dC5tYXRjaChyZWdleCk7XG4gICAgICAgIGNvbnN0IGtleXdvcmRzID0gdGV4dC5zbGljZSgxKTtcbiAgICAgICAgY29uc3QgY2RyID0gZWRpdG9yLmluamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAgICAgaWYgKHBvcG92ZXJSZWY/LmNvbXBvbmVudEluc3RhbmNlICYmIGJlZm9yZU1hdGNoICYmICFrZXl3b3Jkcy5tYXRjaCgvXlxcc3xcXHMkLykpIHtcbiAgICAgICAgICAgIHBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2Uua2V5d29yZHMgPSBrZXl3b3JkcztcbiAgICAgICAgICAgIHBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2UuZ2V0U2VhcmNoUmVzdWx0KGtleXdvcmRzKTtcbiAgICAgICAgICAgIGNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgb3BlblNlbGVjdE92ZXJsYXkoZWRpdG9yOiBUaGVFZGl0b3IsIHR5cGU6IHN0cmluZywgb3JpZ2luOiBFbGVtZW50UmVmIHwgSFRNTEVsZW1lbnQsIGlzU29mdEJyZWFrID0gZmFsc2UpIHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheSA9IGVkaXRvci5pbmplY3Rvci5nZXQoT3ZlcmxheSk7XG4gICAgICAgIGNvbnN0IHRoeVBvcG92ZXIgPSBlZGl0b3IuaW5qZWN0b3IuZ2V0KFRoeVBvcG92ZXIpO1xuICAgICAgICBjb25zdCB2aWV3Q29udGFpbmVyUmVmID0gZWRpdG9yLmluamVjdG9yLmdldChWaWV3Q29udGFpbmVyUmVmKTtcbiAgICAgICAgY29uc3QgY2RyID0gZWRpdG9yLmluamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgICAgIGNvbnN0IG1lbnRpb25zID0gZ2V0UGx1Z2luT3B0aW9uczxNZW50aW9uUGx1Z2luT3B0aW9ucz4oZWRpdG9yLCBQbHVnaW5LZXlzLm1lbnRpb24pPy5tZW50aW9ucztcbiAgICAgICAgY29uc3QgY3VycmVudE1lbnRpb24gPSBtZW50aW9ucy5maW5kKG0gPT4gbS50eXBlID09PSB0eXBlKTtcbiAgICAgICAgY29uc3Qgc3VnZ2VzdGlvbkNvbXBvbmVudCA9IGN1cnJlbnRNZW50aW9uPy5zdWdnZXN0aW9uO1xuXG4gICAgICAgIGNvbnN0IHBvcG92ZXJSZWYgPSB0aHlQb3BvdmVyLm9wZW4oc3VnZ2VzdGlvbkNvbXBvbmVudCwge1xuICAgICAgICAgICAgb3JpZ2luLFxuICAgICAgICAgICAgaW5pdGlhbFN0YXRlOiB7XG4gICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgIHR5cGVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBgdGhlLW1lbnRpb24tJHt0eXBlfWAsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JyxcbiAgICAgICAgICAgIGluc2lkZUNsb3NhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG9mZnNldDogNCxcbiAgICAgICAgICAgIG1pbldpZHRoOiAwLFxuICAgICAgICAgICAgdmlld0NvbnRhaW5lclJlZjogdmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiBvdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpLFxuICAgICAgICAgICAgYXV0b0FkYXB0aXZlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBUSEVfRURJVE9SX1BPUE9WRVJfUkVGLnNldChlZGl0b3IsIHBvcG92ZXJSZWYpO1xuICAgICAgICBwb3BvdmVyUmVmPy5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBNZW50aW9uRWRpdG9yLmNsb3NlKGVkaXRvcik7XG4gICAgICAgIH0pO1xuICAgICAgICBNZW50aW9uRWRpdG9yLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3koZWRpdG9yLCBpc1NvZnRCcmVhayk7XG5cbiAgICAgICAgY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0sXG4gICAgY2xvc2UoZWRpdG9yOiBUaGVFZGl0b3IpIHtcbiAgICAgICAgY29uc3QgcG9wb3ZlclJlZiA9IFRIRV9FRElUT1JfUE9QT1ZFUl9SRUYuZ2V0KGVkaXRvcik7XG4gICAgICAgIGlmIChwb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICBwb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICBUSEVfRURJVE9SX1BPUE9WRVJfUkVGLnNldChlZGl0b3IsIG51bGwpO1xuICAgICAgICAgICAgVEhFX0VESVRPUl9PUklHSU5fQU5DSE9SLnNldChlZGl0b3IsIG51bGwpO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBpbnNlcnRNZW50aW9uPFQ+KGVkaXRvcjogVGhlRWRpdG9yLCB0eXBlOiBzdHJpbmcsIGRhdGE6IFQpIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQ6ICcnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgZWxlbWVudCBhcyBFbGVtZW50KTtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QoZWRpdG9yLCBlZGl0b3Iuc2VsZWN0aW9uKTtcbiAgICAgICAgVHJhbnNmb3Jtcy5tb3ZlKGVkaXRvcik7XG4gICAgICAgIFRoZUVkaXRvci5mb2N1cyhlZGl0b3IpO1xuXG4gICAgICAgIGVkaXRvci5pbnNlcnRUZXh0KCcgJyk7XG4gICAgfSxcbiAgICBpc0FjdGl2ZShlZGl0b3I6IFRoZUVkaXRvciwgdHlwZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IFttYXRjaF0gPSBUaGVRdWVyaWVzLmdldE5vZGVzQnlUeXBlKGVkaXRvciwgdHlwZSk7XG4gICAgICAgIHJldHVybiAhIW1hdGNoO1xuICAgIH0sXG4gICAgdXBkYXRlUG9zaXRpb25TdHJhdGVneShlZGl0b3I6IFRoZUVkaXRvciwgaXNTb2Z0QnJlYWsgPSBmYWxzZSkge1xuICAgICAgICBjb25zdCB0ZXh0RWxlbWVudCA9IEFuZ3VsYXJFZGl0b3IudG9ET01Ob2RlKGVkaXRvciwgVGhlUXVlcmllcy5hbmNob3JCbG9ja0VudHJ5KGVkaXRvcilbMF0pO1xuICAgICAgICBjb25zdCBuYXRpdmVSYW5nZSA9IEFuZ3VsYXJFZGl0b3IudG9ET01SYW5nZShlZGl0b3IsIGVkaXRvci5zZWxlY3Rpb24pO1xuICAgICAgICBjb25zdCBjdXJzb3JSZWN0ID0gbmF0aXZlUmFuZ2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHRleHRFbGVtZW50UmVjdCA9IHRleHRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBib3R0b21Qb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgICAgIG9mZnNldFg6IGlzU29mdEJyZWFrID8gMCA6IGN1cnNvclJlY3QueCAtIHRleHRFbGVtZW50UmVjdC54LFxuICAgICAgICAgICAgb2Zmc2V0WTogaXNTb2Z0QnJlYWsgPyB0ZXh0RWxlbWVudFJlY3QuaGVpZ2h0IDogY3Vyc29yUmVjdC55IC0gdGV4dEVsZW1lbnRSZWN0LnkgKyAyMFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBib3R0b21MZWZ0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgICAgICAgICAgLi4uYm90dG9tUG9zaXRpb24sXG4gICAgICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgICAgICBvZmZzZXRYOiBpc1NvZnRCcmVhayA/IDAgOiBjdXJzb3JSZWN0LnggLSB0ZXh0RWxlbWVudFJlY3QueCArIDEwXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHRvcFJpZ2h0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgICAgICAgICAgLi4uYm90dG9tUG9zaXRpb24sXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvZmZzZXRZOiBjdXJzb3JSZWN0LnkgLSB0ZXh0RWxlbWVudFJlY3QueSArIChpc1NvZnRCcmVhayA/IGN1cnNvclJlY3QuaGVpZ2h0IDogMClcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgdG9wTGVmdFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIC4uLnRvcFJpZ2h0UG9zaXRpb24sXG4gICAgICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvZmZzZXRYOiBpc1NvZnRCcmVhayA/IDAgOiBjdXJzb3JSZWN0LnggLSB0ZXh0RWxlbWVudFJlY3QueCArIDEwXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3Qgb3ZlcmxheVJlZiA9IFRIRV9FRElUT1JfUE9QT1ZFUl9SRUYuZ2V0KGVkaXRvcik/LmdldE92ZXJsYXlSZWYoKTtcbiAgICAgICAgdXBkYXRlUG9wb3ZlclBvc2l0aW9uKG92ZXJsYXlSZWYsIHRleHRFbGVtZW50LCBbYm90dG9tUG9zaXRpb24sIGJvdHRvbUxlZnRQb3NpdGlvbiwgdG9wUmlnaHRQb3NpdGlvbiwgdG9wTGVmdFBvc2l0aW9uXSk7XG4gICAgfVxufTtcbiJdfQ==
@@ -1,92 +0,0 @@
1
- import { createPluginFactory, getPluginOptions } from '../../core';
2
- import { PluginKeys } from '../../interfaces';
3
- import { isDirectionKeydown, THE_EDITOR_POPOVER_REF } from '../../utils';
4
- import { MentionEditor } from './mention.editor';
5
- import { isMobileMode } from '../../utils/get-mode';
6
- export const withMention = (editor) => {
7
- const { isInline, isVoid, insertText, deleteBackward, renderElement, deleteFragment, onKeydown } = editor;
8
- editor.isInline = element => {
9
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
10
- if (mentions?.some(mention => element?.type === mention?.type)) {
11
- return true;
12
- }
13
- return isInline(element);
14
- };
15
- editor.isVoid = element => {
16
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
17
- if (mentions?.some(mention => element?.type === mention?.type)) {
18
- return true;
19
- }
20
- return isVoid(element);
21
- };
22
- editor.renderElement = (element) => {
23
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
24
- const currentMention = mentions?.find(mention => element?.type === mention?.type);
25
- if (currentMention && currentMention?.render) {
26
- return currentMention?.render;
27
- }
28
- return renderElement(element);
29
- };
30
- editor.insertText = text => {
31
- if (text === ' ') {
32
- MentionEditor.close(editor);
33
- }
34
- else if (!isMobileMode(editor)) {
35
- const mentions = getPluginOptions(editor, PluginKeys.mention)?.mentions;
36
- const currentMention = mentions?.find(m => m?.trigger === text);
37
- const isDisabledTrigger = currentMention && currentMention.disableTrigger ? currentMention?.disableTrigger(editor) : false;
38
- if (editor.selection && currentMention && !isDisabledTrigger) {
39
- MentionEditor.openSuggestion(editor, currentMention.type);
40
- }
41
- const searchInfo = MentionEditor.getSearchInfo(editor);
42
- if (searchInfo) {
43
- const { currentText } = searchInfo;
44
- const searchText = `${currentText}${text}`;
45
- MentionEditor.updateSearchText(editor, searchText);
46
- }
47
- }
48
- insertText(text);
49
- };
50
- editor.deleteBackward = unit => {
51
- const searchInfo = MentionEditor.getSearchInfo(editor);
52
- if (searchInfo) {
53
- const { currentText } = searchInfo;
54
- const searchText = currentText.slice(0, -1);
55
- if (!!searchText) {
56
- MentionEditor.updateSearchText(editor, searchText);
57
- }
58
- else {
59
- MentionEditor.close(editor);
60
- }
61
- }
62
- deleteBackward(unit);
63
- };
64
- editor.deleteFragment = direction => {
65
- const searchInfo = MentionEditor.getSearchInfo(editor);
66
- if (searchInfo) {
67
- const { currentText } = searchInfo;
68
- if (!!currentText) {
69
- MentionEditor.updateSearchText(editor, currentText);
70
- }
71
- else {
72
- MentionEditor.close(editor);
73
- }
74
- }
75
- deleteFragment(direction);
76
- };
77
- editor.onKeydown = (event) => {
78
- if (THE_EDITOR_POPOVER_REF.get(editor)) {
79
- if (isDirectionKeydown(event)) {
80
- event.preventDefault();
81
- return;
82
- }
83
- }
84
- onKeydown(event);
85
- };
86
- return editor;
87
- };
88
- export const createMentionPlugin = createPluginFactory({
89
- key: PluginKeys.mention,
90
- withOverrides: withMention
91
- });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudGlvbi5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9tZW50aW9uL21lbnRpb24ucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFcEQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQW1CLE1BQVMsRUFBSyxFQUFFO0lBQzFELE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFMUcsTUFBTSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsRUFBRTtRQUN4QixNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBdUIsTUFBTSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLENBQUM7UUFDOUYsSUFBSSxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLElBQUksS0FBSyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM3RCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQyxDQUFDO0lBRUYsTUFBTSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRTtRQUN0QixNQUFN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RSxVQUFVLENBQUMsT0FBTztJQUN2QixhQUFhLEVBQUUsV0FBVztDQUM3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBjcmVhdGVQbHVnaW5GYWN0b3J5LCBnZXRQbHVnaW5PcHRpb25zIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBQbHVnaW5LZXlzIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBpc0RpcmVjdGlvbktleWRvd24sIFRIRV9FRElUT1JfUE9QT1ZFUl9SRUYgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNZW50aW9uRWRpdG9yIH0gZnJvbSAnLi9tZW50aW9uLmVkaXRvcic7XG5pbXBvcnQgeyBNZW50aW9uUGx1Z2luT3B0aW9ucyB9IGZyb20gJy4vbWVudGlvbi50eXBlJztcbmltcG9ydCB7IGlzTW9iaWxlTW9kZSB9IGZyb20gJy4uLy4uL3V0aWxzL2dldC1tb2RlJztcblxuZXhwb3J0IGNvbnN0IHdpdGhNZW50aW9uID0gPFQgZXh0ZW5kcyBFZGl0b3I+KGVkaXRvcjogVCk6IFQgPT4ge1xuICAgIGNvbnN0IHsgaXNJbmxpbmUsIGlzVm9pZCwgaW5zZXJ0VGV4dCwgZGVsZXRlQmFja3dhcmQsIHJlbmRlckVsZW1lbnQsIGRlbGV0ZUZyYWdtZW50LCBvbktleWRvd24gfSA9IGVkaXRvcjtcblxuICAgIGVkaXRvci5pc0lubGluZSA9IGVsZW1lbnQgPT4ge1xuICAgICAgICBjb25zdCBtZW50aW9ucyA9IGdldFBsdWdpbk9wdGlvbnM8TWVudGlvblBsdWdpbk9wdGlvbnM+KGVkaXRvciwgUGx1Z2luS2V5cy5tZW50aW9uKT8ubWVudGlvbnM7XG4gICAgICAgIGlmIChtZW50aW9ucz8uc29tZShtZW50aW9uID0+IGVsZW1lbnQ/LnR5cGUgPT09IG1lbnRpb24/LnR5cGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNJbmxpbmUoZWxlbWVudCk7XG4gICAgfTtcblxuICAgIGVkaXRvci5pc1ZvaWQgPSBlbGVtZW50ID0+IHtcbiAgICAgICAgY29uc3QgbWVudGlvbnMgPSBnZXRQbHVnaW5PcHRpb25zPE1lbnRpb25QbHVnaW5PcHRpb25zPihlZGl0b3IsIFBsdWdpbktleXMubWVudGlvbik/Lm1lbnRpb25zO1xuICAgICAgICBpZiAobWVudGlvbnM/LnNvbWUobWVudGlvbiA9PiBlbGVtZW50Py50eXBlID09PSBtZW50aW9uPy50eXBlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzVm9pZChlbGVtZW50KTtcbiAgICB9O1xuXG4gICAgZWRpdG9yLnJlbmRlckVsZW1lbnQgPSAoZWxlbWVudDogRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCBtZW50aW9ucyA9IGdldFBsdWdpbk9wdGlvbnM8TWVudGlvblBsdWdpbk9wdGlvbnM+KGVkaXRvciwgUGx1Z2luS2V5cy5tZW50aW9uKT8ubWVudGlvbnM7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRNZW50aW9uID0gbWVudGlvbnM/LmZpbmQobWVudGlvbiA9PiBlbGVtZW50Py50eXBlID09PSBtZW50aW9uPy50eXBlKTtcbiAgICAgICAgaWYgKGN1cnJlbnRNZW50aW9uICYmIGN1cnJlbnRNZW50aW9uPy5yZW5kZXIpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50TWVudGlvbj8ucmVuZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlbmRlckVsZW1lbnQoZWxlbWVudCk7XG4gICAgfTtcblxuICAgIGVkaXRvci5pbnNlcnRUZXh0ID0gdGV4dCA9PiB7XG4gICAgICAgIGlmICh0ZXh0ID09PSAnICcpIHtcbiAgICAgICAgICAgIE1lbnRpb25FZGl0b3IuY2xvc2UoZWRpdG9yKTtcbiAgICAgICAgfSBlbHNlIGlmICghaXNNb2JpbGVNb2RlKGVkaXRvcikpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lbnRpb25zID0gZ2V0UGx1Z2luT3B0aW9uczxNZW50aW9uUGx1Z2luT3B0aW9ucz4oZWRpdG9yLCBQbHVnaW5LZXlzLm1lbnRpb24pPy5tZW50aW9ucztcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRNZW50aW9uID0gbWVudGlvbnM/LmZpbmQobSA9PiBtPy50cmlnZ2VyID09PSB0ZXh0KTtcbiAgICAgICAgICAgIGNvbnN0IGlzRGlzYWJsZWRUcmlnZ2VyID0gY3VycmVudE1lbnRpb24gJiYgY3VycmVudE1lbnRpb24uZGlzYWJsZVRyaWdnZXIgPyBjdXJyZW50TWVudGlvbj8uZGlzYWJsZVRyaWdnZXIoZWRpdG9yKSA6IGZhbHNlO1xuICAgICAgICAgICAgaWYgKGVkaXRvci5zZWxlY3Rpb24gJiYgY3VycmVudE1lbnRpb24gJiYgIWlzRGlzYWJsZWRUcmlnZ2VyKSB7XG4gICAgICAgICAgICAgICAgTWVudGlvbkVkaXRvci5vcGVuU3VnZ2VzdGlvbihlZGl0b3IsIGN1cnJlbnRNZW50aW9uLnR5cGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBzZWFyY2hJbmZvID0gTWVudGlvbkVkaXRvci5nZXRTZWFyY2hJbmZvKGVkaXRvcik7XG4gICAgICAgICAgICBpZiAoc2VhcmNoSW5mbykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgY3VycmVudFRleHQgfSA9IHNlYXJjaEluZm87XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VhcmNoVGV4dCA9IGAke2N1cnJlbnRUZXh0fSR7dGV4dH1gO1xuICAgICAgICAgICAgICAgIE1lbnRpb25FZGl0b3IudXBkYXRlU2VhcmNoVGV4dChlZGl0b3IsIHNlYXJjaFRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5zZXJ0VGV4dCh0ZXh0KTtcbiAgICB9O1xuXG4gICAgZWRpdG9yLmRlbGV0ZUJhY2t3YXJkID0gdW5pdCA9PiB7XG4gICAgICAgIGNvbnN0IHNlYXJjaEluZm8gPSBNZW50aW9uRWRpdG9yLmdldFNlYXJjaEluZm8oZWRpdG9yKTtcbiAgICAgICAgaWYgKHNlYXJjaEluZm8pIHtcbiAgICAgICAgICAgIGNvbnN0IHsgY3VycmVudFRleHQgfSA9IHNlYXJjaEluZm87XG4gICAgICAgICAgICBjb25zdCBzZWFyY2hUZXh0ID0gY3VycmVudFRleHQuc2xpY2UoMCwgLTEpO1xuXG4gICAgICAgICAgICBpZiAoISFzZWFyY2hUZXh0KSB7XG4gICAgICAgICAgICAgICAgTWVudGlvbkVkaXRvci51cGRhdGVTZWFyY2hUZXh0KGVkaXRvciwgc2VhcmNoVGV4dCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIE1lbnRpb25FZGl0b3IuY2xvc2UoZWRpdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGRlbGV0ZUJhY2t3YXJkKHVuaXQpO1xuICAgIH07XG5cbiAgICBlZGl0b3IuZGVsZXRlRnJhZ21lbnQgPSBkaXJlY3Rpb24gPT4ge1xuICAgICAgICBjb25zdCBzZWFyY2hJbmZvID0gTWVudGlvbkVkaXRvci5nZXRTZWFyY2hJbmZvKGVkaXRvcik7XG5cbiAgICAgICAgaWYgKHNlYXJjaEluZm8pIHtcbiAgICAgICAgICAgIGNvbnN0IHsgY3VycmVudFRleHQgfSA9IHNlYXJjaEluZm87XG5cbiAgICAgICAgICAgIGlmICghIWN1cnJlbnRUZXh0KSB7XG4gICAgICAgICAgICAgICAgTWVudGlvbkVkaXRvci51cGRhdGVTZWFyY2hUZXh0KGVkaXRvciwgY3VycmVudFRleHQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBNZW50aW9uRWRpdG9yLmNsb3NlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkZWxldGVGcmFnbWVudChkaXJlY3Rpb24pO1xuICAgIH07XG5cbiAgICBlZGl0b3Iub25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChUSEVfRURJVE9SX1BPUE9WRVJfUkVGLmdldChlZGl0b3IpKSB7XG4gICAgICAgICAgICBpZiAoaXNEaXJlY3Rpb25LZXlkb3duKGV2ZW50KSkge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG9uS2V5ZG93bihldmVudCk7XG4gICAgfTtcblxuICAgIHJldHVybiBlZGl0b3I7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWVudGlvblBsdWdpbiA9IGNyZWF0ZVBsdWdpbkZhY3Rvcnk8TWVudGlvblBsdWdpbk9wdGlvbnM+KHtcbiAgICBrZXk6IFBsdWdpbktleXMubWVudGlvbixcbiAgICB3aXRoT3ZlcnJpZGVzOiB3aXRoTWVudGlvblxufSk7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudGlvbi50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvbWVudGlvbi9tZW50aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IFRoZUVkaXRvciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZU1lbnRpb24ge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICB0cmlnZ2VyOiBzdHJpbmc7XG4gICAgc3VnZ2VzdGlvbjogQ29tcG9uZW50VHlwZTxhbnk+O1xuICAgIHJlbmRlcjogQ29tcG9uZW50VHlwZTxhbnk+O1xuICAgIGRpc2FibGVUcmlnZ2VyPzogKGVkaXRvcjogVGhlRWRpdG9yKSA9PiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lbnRpb25QbHVnaW5PcHRpb25zIHtcbiAgICBtZW50aW9uczogVGhlTWVudGlvbltdO1xufVxuIl19
@@ -1,22 +0,0 @@
1
- import { Directive, HostListener, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class TheBaseSuggestion {
4
- handleMousedown(event) {
5
- event.preventDefault();
6
- }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheBaseSuggestion, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TheBaseSuggestion, inputs: { editor: "editor", type: "type", keywords: "keywords" }, host: { listeners: { "mousedown": "handleMousedown($event)" } }, ngImport: i0 }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheBaseSuggestion, decorators: [{
11
- type: Directive
12
- }], propDecorators: { editor: [{
13
- type: Input
14
- }], type: [{
15
- type: Input
16
- }], keywords: [{
17
- type: Input
18
- }], handleMousedown: [{
19
- type: HostListener,
20
- args: ['mousedown', ['$event']]
21
- }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9tZW50aW9uL3N1Z2dlc3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJL0QsTUFBTSxPQUFnQixpQkFBaUI7SUFRbkMsZUFBZSxDQUFDLEtBQVk7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzNCLENBQUM7K0dBVmlCLGlCQUFpQjttR0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUR0QyxTQUFTOzhCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFHTixlQUFlO3NCQURkLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVFZGl0b3IgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGhlQmFzZVN1Z2dlc3Rpb24ge1xuICAgIEBJbnB1dCgpIGVkaXRvcjogVGhlRWRpdG9yO1xuXG4gICAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xuXG4gICAgQElucHV0KCkga2V5d29yZHM6IHN0cmluZztcblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gICAgaGFuZGxlTW91c2Vkb3duKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIGFic3RyYWN0IGdldFNlYXJjaFJlc3VsdChrZXl3b3Jkczogc3RyaW5nKTogdm9pZDtcblxuICAgIGFic3RyYWN0IHNlbGVjdE1lbnRpb248VD4oZXZlbnQ6IFQpOiB2b2lkO1xufVxuIl19
@@ -1,78 +0,0 @@
1
- import { Element } from 'slate';
2
- import { ELEMENT_UNIQUE_ID } from '../../constants';
3
- import { createPluginFactory, getPluginOptions } from '../../core';
4
- import { PluginKeys } from '../../interfaces';
5
- import * as TheQueries from '../../queries';
6
- import * as TheTransforms from '../../transforms';
7
- import { idCreator } from '../../utils';
8
- import { deleteElementKey } from '../../utils/fragment';
9
- import { cloneDeep } from '../../utils/lodash';
10
- export const withNodeID = (e) => {
11
- const editor = e;
12
- let props = { idKey: 'id', idCreator: () => Date.now(), filterText: true, filter: () => true };
13
- const options = getPluginOptions(editor, PluginKeys.nodeID);
14
- props = { ...props, ...options };
15
- const { idKey, idCreator, filterText, filter } = props;
16
- const { apply, getFragment } = editor;
17
- const idPropsCreator = () => ({ [idKey]: idCreator() });
18
- editor.removedIDs = new Set();
19
- editor.apply = (operation) => {
20
- if (operation.type === 'insert_node') {
21
- const newFilter = (entry) => {
22
- const [_node] = entry;
23
- return filter(entry) && filterText ? Element.isElement(_node) : TheQueries.isDescendant(_node);
24
- };
25
- // fix can not find path by orign node
26
- let node = operation.node;
27
- if (!Object.isExtensible(node)) {
28
- node = cloneDeep(node);
29
- }
30
- // it will not overwrite ids once it's set as it's read-only
31
- TheTransforms.mergeDeepToNodes({
32
- node,
33
- source: idPropsCreator,
34
- query: {
35
- filter: newFilter
36
- }
37
- });
38
- return apply({
39
- ...operation,
40
- node
41
- });
42
- }
43
- if (operation.type === 'split_node' && (!filterText || operation.properties.type)) {
44
- let id = operation.properties[idKey];
45
- if (editor.removedIDs.has(id)) {
46
- editor.removedIDs.delete(id);
47
- }
48
- else {
49
- id = idCreator();
50
- }
51
- return apply({
52
- ...operation,
53
- properties: {
54
- ...operation.properties,
55
- [idKey]: id
56
- }
57
- });
58
- }
59
- if (operation.type === 'merge_node' && (!filterText || operation.properties.type)) {
60
- editor.removedIDs.add(operation.properties[idKey]);
61
- }
62
- return apply(operation);
63
- };
64
- editor.getFragment = () => {
65
- const fragment = cloneDeep(getFragment());
66
- return deleteElementKey(fragment, idKey);
67
- };
68
- return editor;
69
- };
70
- export const createNodeIDPlugin = createPluginFactory({
71
- key: PluginKeys.nodeID,
72
- withOverrides: withNodeID,
73
- options: {
74
- idKey: ELEMENT_UNIQUE_ID,
75
- idCreator
76
- }
77
- });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pZC5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy9ub2RlLWlkL25vZGUtaWQucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsT0FBTyxFQUE4QixNQUFNLE9BQU8sQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbkUsT0FBTyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxrQkFBa0IsQ0FBQztBQUM1RCxPQUFPLEtBQUssVUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBVy9DLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFtQixDQUFJLEVBQUssRUFBRTtJQUNwRCxNQUFNLE1BQU0sR0FBRyxDQUFpQyxDQUFDO0lBRWpELElBQUksS0FBSyxHQUFvQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoSCxNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBa0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RSxLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLE9BQU8s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S0FBSyxDQUFpQixDQUFDO0lBQzdELENBQUMsQ0FBQztJQUVGLE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFrQjtJQUNuRSxHQUFHLEVBQUUsVUFBVSxDQUFDLE1BQU07SUFDdEIsYUFBYSxFQUFFLFVBQVU7SUFDekIsT0FBTyxFQUFFO1FBQ0wsS0FBSyxFQUFFLGlCQUFpQjtRQUN4QixTQUFTO0tBQ1o7Q0FDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXNjZW5kYW50LCBFZGl0b3IsIEVsZW1lbnQsIE5vZGUsIE5vZGVFbnRyeSwgT3BlcmF0aW9uIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRUxFTUVOVF9VTklRVUVfSUQgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgY3JlYXRlUGx1Z2luRmFjdG9yeSwgZ2V0UGx1Z2luT3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgUGx1Z2luS2V5cywgUXVlcnlPcHRpb25zIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBUaGVRdWVyaWVzIGZyb20gJy4uLy4uL3F1ZXJpZXMnO1xuaW1wb3J0ICogYXMgVGhlVHJhbnNmb3JtcyBmcm9tICcuLi8uLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGlkQ3JlYXRvciB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IGRlbGV0ZUVsZW1lbnRLZXkgfSBmcm9tICcuLi8uLi91dGlscy9mcmFnbWVudCc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICcuLi8uLi91dGlscy9sb2Rhc2gnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFdpdGhOb2RlSURQcm9wcyBleHRlbmRzIFF1ZXJ5T3B0aW9ucyB7XG4gICAgLy8gS2V5IHVzZWQgZm9yIHRoZSBpZC4gRGVmYXVsdCBpcyBgaWRgLlxuICAgIGlkS2V5Pzogc3RyaW5nO1xuICAgIC8vIElEIGZhY3RvcnksIGUuZy4gYHV1aWRgXG4gICAgaWRDcmVhdG9yPzogKCkgPT4gdm9pZDtcbiAgICAvLyBGaWx0ZXIgYFRleHRgIG5vZGVzLlxuICAgIGZpbHRlclRleHQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aE5vZGVJRCA9IDxUIGV4dGVuZHMgRWRpdG9yPihlOiBUKTogVCA9PiB7XG4gICAgY29uc3QgZWRpdG9yID0gZSBhcyBUICYgeyByZW1vdmVkSURzOiBTZXQ8YW55PiB9O1xuXG4gICAgbGV0IHByb3BzOiBXaXRoTm9kZUlEUHJvcHMgPSB7IGlkS2V5OiAnaWQnLCBpZENyZWF0b3I6ICgpID0+IERhdGUubm93KCksIGZpbHRlclRleHQ6IHRydWUsIGZpbHRlcjogKCkgPT4gdHJ1ZSB9O1xuICAgIGNvbnN0IG9wdGlvbnMgPSBnZXRQbHVnaW5PcHRpb25zPFdpdGhOb2RlSURQcm9wcz4oZWRpdG9yLCBQbHVnaW5LZXlzLm5vZGVJRCk7XG4gICAgcHJvcHMgPSB7IC4uLnByb3BzLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgeyBpZEtleSwgaWRDcmVhdG9yLCBmaWx0ZXJUZXh0LCBmaWx0ZXIgfSA9IHByb3BzO1xuXG4gICAgY29uc3QgeyBhcHBseSwgZ2V0RnJhZ21lbnQgfSA9IGVkaXRvcjtcblxuICAgIGNvbnN0IGlkUHJvcHNDcmVhdG9yID0gKCkgPT4gKHsgW2lkS2V5XTogaWRDcmVhdG9yKCkgfSk7XG5cbiAgICBlZGl0b3IucmVtb3ZlZElEcyA9IG5ldyBTZXQoKTtcblxuICAgIGVkaXRvci5hcHBseSA9IChvcGVyYXRpb246IE9wZXJhdGlvbikgPT4ge1xuICAgICAgICBpZiAob3BlcmF0aW9uLnR5cGUgPT09ICdpbnNlcnRfbm9kZScpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0ZpbHRlciA9IChlbnRyeTogTm9kZUVudHJ5PE5vZGU+KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgW19ub2RlXSA9IGVudHJ5O1xuICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXIoZW50cnkpICYmIGZpbHRlclRleHQgPyBFbGVtZW50LmlzRWxlbWVudChfbm9kZSkgOiBUaGVRdWVyaWVzLmlzRGVzY2VuZGFudChfbm9kZSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAvLyBmaXggY2FuIG5vdCBmaW5kIHBhdGggYnkgb3JpZ24gbm9kZVxuICAgICAgICAgICAgbGV0IG5vZGUgPSBvcGVyYXRpb24ubm9kZTtcbiAgICAgICAgICAgIGlmICghT2JqZWN0LmlzRXh0ZW5zaWJsZShub2RlKSkge1xuICAgICAgICAgICAgICAgIG5vZGUgPSBjbG9uZURlZXAobm9kZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGl0IHdpbGwgbm90IG92ZXJ3cml0ZSBpZHMgb25jZSBpdCdzIHNldCBhcyBpdCdzIHJlYWQtb25seVxuICAgICAgICAgICAgVGhlVHJhbnNmb3Jtcy5tZXJnZURlZXBUb05vZGVzKHtcbiAgICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICAgIHNvdXJjZTogaWRQcm9wc0NyZWF0b3IsXG4gICAgICAgICAgICAgICAgcXVlcnk6IHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBuZXdGaWx0ZXJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmV0dXJuIGFwcGx5KHtcbiAgICAgICAgICAgICAgICAuLi5vcGVyYXRpb24sXG4gICAgICAgICAgICAgICAgbm9kZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3BlcmF0aW9uLnR5cGUgPT09ICdzcGxpdF9ub2RlJyAmJiAoIWZpbHRlclRleHQgfHwgKG9wZXJhdGlvbi5wcm9wZXJ0aWVzIGFzIEVsZW1lbnQpLnR5cGUpKSB7XG4gICAgICAgICAgICBsZXQgaWQgPSBvcGVyYXRpb24ucHJvcGVydGllc1tpZEtleV07XG4gICAgICAgICAgICBpZiAoZWRpdG9yLnJlbW92ZWRJRHMuaGFzKGlkKSkge1xuICAgICAgICAgICAgICAgIGVkaXRvci5yZW1vdmVkSURzLmRlbGV0ZShpZCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlkID0gaWRDcmVhdG9yKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhcHBseSh7XG4gICAgICAgICAgICAgICAgLi4ub3BlcmF0aW9uLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4ub3BlcmF0aW9uLnByb3BlcnRpZXMsXG4gICAgICAgICAgICAgICAgICAgIFtpZEtleV06IGlkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3BlcmF0aW9uLnR5cGUgPT09ICdtZXJnZV9ub2RlJyAmJiAoIWZpbHRlclRleHQgfHwgKG9wZXJhdGlvbi5wcm9wZXJ0aWVzIGFzIEVsZW1lbnQpLnR5cGUpKSB7XG4gICAgICAgICAgICBlZGl0b3IucmVtb3ZlZElEcy5hZGQoKG9wZXJhdGlvbi5wcm9wZXJ0aWVzIGFzIEVsZW1lbnQpW2lkS2V5XSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYXBwbHkob3BlcmF0aW9uKTtcbiAgICB9O1xuXG4gICAgZWRpdG9yLmdldEZyYWdtZW50ID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBmcmFnbWVudCA9IGNsb25lRGVlcChnZXRGcmFnbWVudCgpKTtcbiAgICAgICAgcmV0dXJuIGRlbGV0ZUVsZW1lbnRLZXkoZnJhZ21lbnQsIGlkS2V5KSBhcyBEZXNjZW5kYW50W107XG4gICAgfTtcblxuICAgIHJldHVybiBlZGl0b3I7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTm9kZUlEUGx1Z2luID0gY3JlYXRlUGx1Z2luRmFjdG9yeTxXaXRoTm9kZUlEUHJvcHM+KHtcbiAgICBrZXk6IFBsdWdpbktleXMubm9kZUlELFxuICAgIHdpdGhPdmVycmlkZXM6IHdpdGhOb2RlSUQsXG4gICAgb3B0aW9uczoge1xuICAgICAgICBpZEtleTogRUxFTUVOVF9VTklRVUVfSUQsXG4gICAgICAgIGlkQ3JlYXRvclxuICAgIH1cbn0pO1xuIl19
@@ -1,28 +0,0 @@
1
- import { Editor, Element, Text, Transforms } from 'slate';
2
- import { createPluginFactory, getPluginOptions } from '../../core';
3
- import { PluginKeys } from '../../interfaces';
4
- import * as TheQueries from '../../queries';
5
- import { createEmptyParagraph } from '../../utils/create-empty-paragraph';
6
- export const withInsertParagraphNodes = (editor) => {
7
- const { normalizeNode } = editor;
8
- const types = getPluginOptions(editor, PluginKeys.insertParagraphNodes)?.types ?? [];
9
- editor.normalizeNode = ([currentNode, currentPath]) => {
10
- if (Text.isText(currentNode) && currentPath.length) {
11
- const [node] = Editor.parent(editor, currentPath);
12
- const containerBlocks = [...types, ...TheQueries.getContainerBlocks(editor)];
13
- if (Element.isElement(node) && containerBlocks.includes(node.type)) {
14
- const paragraph = createEmptyParagraph();
15
- paragraph.children[0].text = currentNode.text;
16
- Transforms.insertNodes(editor, paragraph, { at: currentPath });
17
- return;
18
- }
19
- }
20
- return normalizeNode([currentNode, currentPath]);
21
- };
22
- return editor;
23
- };
24
- export const createInsertParagraphNodesPlugin = createPluginFactory({
25
- key: PluginKeys.insertParagraphNodes,
26
- withOverrides: withInsertParagraphNodes
27
- });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXBhcmFncmFwaC1ub2Rlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL25vcm1hbGl6ZXJzL2luc2VydC1wYXJhZ3JhcGgtbm9kZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFbkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxVQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBTTFFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQW1CLE1BQVMsRUFBSyxFQUFFO0lBQ3ZFLE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQThCLE1BQU0sRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO0lBRWxILE1BQU0sQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFO1FBQ2xELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakQsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ2xELE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBRyxLQUFLLEVBQUUsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUM3RSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDakUsTUFBTSxTQUFTLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztnQkFDeEMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQVUsQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztnQkFDeEQsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQy9ELE9BQU87WUFDWCxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQyxDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsbUJBQW1CLENBQThCO0lBQzdGLEdBQUcsRUFBRSxVQUFVLENBQUMsb0JBQW9CO0lBQ3BDLGFBQWEsRUFBRSx3QkFBd0I7Q0FDMUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUZXh0LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgY3JlYXRlUGx1Z2luRmFjdG9yeSwgZ2V0UGx1Z2luT3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQ3VzdG9tRWxlbWVudEtpbmRzIH0gZnJvbSAnLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFBsdWdpbktleXMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCAqIGFzIFRoZVF1ZXJpZXMgZnJvbSAnLi4vLi4vcXVlcmllcyc7XG5pbXBvcnQgeyBjcmVhdGVFbXB0eVBhcmFncmFwaCB9IGZyb20gJy4uLy4uL3V0aWxzL2NyZWF0ZS1lbXB0eS1wYXJhZ3JhcGgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluc2VydFBhcmFncmFwaE5vZGVzT3B0aW9ucyB7XG4gICAgdHlwZXM6IEN1c3RvbUVsZW1lbnRLaW5kc1tdO1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aEluc2VydFBhcmFncmFwaE5vZGVzID0gPFQgZXh0ZW5kcyBFZGl0b3I+KGVkaXRvcjogVCk6IFQgPT4ge1xuICAgIGNvbnN0IHsgbm9ybWFsaXplTm9kZSB9ID0gZWRpdG9yO1xuICAgIGNvbnN0IHR5cGVzID0gZ2V0UGx1Z2luT3B0aW9uczxJbnNlcnRQYXJhZ3JhcGhOb2Rlc09wdGlvbnM+KGVkaXRvciwgUGx1Z2luS2V5cy5pbnNlcnRQYXJhZ3JhcGhOb2Rlcyk/LnR5cGVzID8/IFtdO1xuXG4gICAgZWRpdG9yLm5vcm1hbGl6ZU5vZGUgPSAoW2N1cnJlbnROb2RlLCBjdXJyZW50UGF0aF0pID0+IHtcbiAgICAgICAgaWYgKFRleHQuaXNUZXh0KGN1cnJlbnROb2RlKSAmJiBjdXJyZW50UGF0aC5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IFtub2RlXSA9IEVkaXRvci5wYXJlbnQoZWRpdG9yLCBjdXJyZW50UGF0aCk7XG4gICAgICAgICAgICBjb25zdCBjb250YWluZXJCbG9ja3MgPSBbLi4udHlwZXMsIC4uLlRoZVF1ZXJpZXMuZ2V0Q29udGFpbmVyQmxvY2tzKGVkaXRvcildO1xuICAgICAgICAgICAgaWYgKEVsZW1lbnQuaXNFbGVtZW50KG5vZGUpICYmIGNvbnRhaW5lckJsb2Nrcy5pbmNsdWRlcyhub2RlLnR5cGUpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFyYWdyYXBoID0gY3JlYXRlRW1wdHlQYXJhZ3JhcGgoKTtcbiAgICAgICAgICAgICAgICAocGFyYWdyYXBoLmNoaWxkcmVuWzBdIGFzIFRleHQpLnRleHQgPSBjdXJyZW50Tm9kZS50ZXh0O1xuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBwYXJhZ3JhcGgsIHsgYXQ6IGN1cnJlbnRQYXRoIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbm9ybWFsaXplTm9kZShbY3VycmVudE5vZGUsIGN1cnJlbnRQYXRoXSk7XG4gICAgfTtcblxuICAgIHJldHVybiBlZGl0b3I7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlSW5zZXJ0UGFyYWdyYXBoTm9kZXNQbHVnaW4gPSBjcmVhdGVQbHVnaW5GYWN0b3J5PEluc2VydFBhcmFncmFwaE5vZGVzT3B0aW9ucz4oe1xuICAgIGtleTogUGx1Z2luS2V5cy5pbnNlcnRQYXJhZ3JhcGhOb2RlcyxcbiAgICB3aXRoT3ZlcnJpZGVzOiB3aXRoSW5zZXJ0UGFyYWdyYXBoTm9kZXNcbn0pO1xuIl19