@worktile/theia 18.0.16 → 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 (369) 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 +297 -310
  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/esm2022/components/action/prevent-default.mjs +0 -21
  12. package/esm2022/components/column-resize/column-resize-notifier.mjs +0 -31
  13. package/esm2022/components/column-resize/column-resize.directive.mjs +0 -124
  14. package/esm2022/components/column-resize/event-dispatcher.mjs +0 -56
  15. package/esm2022/components/column-resize/overlay-handle.component.mjs +0 -144
  16. package/esm2022/components/column-resize/resize-ref.mjs +0 -26
  17. package/esm2022/components/column-resize/resizing.store.mjs +0 -92
  18. package/esm2022/components/column-resize/selectors.mjs +0 -4
  19. package/esm2022/components/contextmenu/contextmenu.component.mjs +0 -99
  20. package/esm2022/components/conversion-hint/conversion-hint.component.mjs +0 -56
  21. package/esm2022/components/element/element.component.mjs +0 -23
  22. package/esm2022/components/index.mjs +0 -24
  23. package/esm2022/components/inline-toolbar/inline-toolbar.component.mjs +0 -131
  24. package/esm2022/components/listbox/listbox.mjs +0 -380
  25. package/esm2022/components/listbox/listbox.type.mjs +0 -5
  26. package/esm2022/components/plugin-menu/plugin-menu.component.mjs +0 -272
  27. package/esm2022/components/table-select/table-select.component.mjs +0 -49
  28. package/esm2022/components/template/template.component.mjs +0 -62
  29. package/esm2022/components/text/text.component.mjs +0 -57
  30. package/esm2022/components/toolbar/toolbar.component.mjs +0 -262
  31. package/esm2022/components/toolbar-dropdown/toolbar-dropdown.component.mjs +0 -137
  32. package/esm2022/components/toolbar-group/toolbar-group.component.mjs +0 -125
  33. package/esm2022/components/toolbar-item/toolbar-item.component.mjs +0 -80
  34. package/esm2022/constants/auto-format-rules.mjs +0 -167
  35. package/esm2022/constants/code.mjs +0 -85
  36. package/esm2022/constants/color-select.mjs +0 -3
  37. package/esm2022/constants/default.mjs +0 -11
  38. package/esm2022/constants/error.mjs +0 -7
  39. package/esm2022/constants/index.mjs +0 -9
  40. package/esm2022/constants/node-types.mjs +0 -136
  41. package/esm2022/constants/plugin-menu.mjs +0 -311
  42. package/esm2022/constants/selector.mjs +0 -3
  43. package/esm2022/constants/toolbar.mjs +0 -53
  44. package/esm2022/core/create-plugin.mjs +0 -5
  45. package/esm2022/core/create-toolbar.mjs +0 -55
  46. package/esm2022/core/index.mjs +0 -6
  47. package/esm2022/core/toolbar-item/base-toolbar-item.mjs +0 -95
  48. package/esm2022/core/utils/combine-plugins.mjs +0 -10
  49. package/esm2022/core/utils/flatten-deep-plugins.mjs +0 -19
  50. package/esm2022/core/utils/get-plugin-options.mjs +0 -3
  51. package/esm2022/core/utils/get-plugin.mjs +0 -2
  52. package/esm2022/core/utils/get-plugins.mjs +0 -4
  53. package/esm2022/core/utils/index.mjs +0 -12
  54. package/esm2022/core/utils/merge-array.mjs +0 -18
  55. package/esm2022/core/utils/merge-deep-plugins.mjs +0 -14
  56. package/esm2022/core/utils/merge-options.mjs +0 -25
  57. package/esm2022/core/utils/nested-structure-by-key.mjs +0 -11
  58. package/esm2022/core/utils/plugin-menu.mjs +0 -63
  59. package/esm2022/core/utils/plugins-by-key.mjs +0 -10
  60. package/esm2022/core/with-theia.mjs +0 -25
  61. package/esm2022/custom-types.mjs +0 -2
  62. package/esm2022/editor.component.mjs +0 -488
  63. package/esm2022/editor.module.mjs +0 -18
  64. package/esm2022/i18n/i18n.mjs +0 -10
  65. package/esm2022/i18n/i18n.service.mjs +0 -46
  66. package/esm2022/i18n/i18n.token.mjs +0 -9
  67. package/esm2022/i18n/index.mjs +0 -10
  68. package/esm2022/i18n/locales/de-de.mjs +0 -102
  69. package/esm2022/i18n/locales/en-us.mjs +0 -102
  70. package/esm2022/i18n/locales/ja-jp.mjs +0 -102
  71. package/esm2022/i18n/locales/ru-ru.mjs +0 -102
  72. package/esm2022/i18n/locales/zh-hans.mjs +0 -102
  73. package/esm2022/i18n/locales/zh-hant.mjs +0 -102
  74. package/esm2022/interfaces/auto-format.mjs +0 -2
  75. package/esm2022/interfaces/editor.mjs +0 -26
  76. package/esm2022/interfaces/element.mjs +0 -2
  77. package/esm2022/interfaces/image.mjs +0 -3
  78. package/esm2022/interfaces/index.mjs +0 -11
  79. package/esm2022/interfaces/plugins/index.mjs +0 -6
  80. package/esm2022/interfaces/plugins/no-infer.mjs +0 -2
  81. package/esm2022/interfaces/plugins/plugin-key.mjs +0 -42
  82. package/esm2022/interfaces/plugins/plugin-menu.mjs +0 -19
  83. package/esm2022/interfaces/plugins/plugins.mjs +0 -2
  84. package/esm2022/interfaces/plugins/with-override.mjs +0 -2
  85. package/esm2022/interfaces/preset.mjs +0 -3
  86. package/esm2022/interfaces/reset-block-type-plugin-options.mjs +0 -2
  87. package/esm2022/interfaces/toolbar.mjs +0 -12
  88. package/esm2022/interfaces/upload.mjs +0 -2
  89. package/esm2022/interfaces/utility/index.mjs +0 -4
  90. package/esm2022/interfaces/utility/nested-structure-by-key.mjs +0 -2
  91. package/esm2022/interfaces/utility/override-by-key.mjs +0 -2
  92. package/esm2022/interfaces/utility/types.mjs +0 -2
  93. package/esm2022/interfaces/valid-children-types.mjs +0 -36
  94. package/esm2022/interfaces/view-base.mjs +0 -38
  95. package/esm2022/pipes.mjs +0 -61
  96. package/esm2022/plugins/align/align.editor.mjs +0 -41
  97. package/esm2022/plugins/align/align.plugin.mjs +0 -64
  98. package/esm2022/plugins/autoformat/autoformat.plugin.mjs +0 -109
  99. package/esm2022/plugins/autoformat/transforms/auto-format-block.mjs +0 -14
  100. package/esm2022/plugins/autoformat/transforms/auto-format-inline.mjs +0 -78
  101. package/esm2022/plugins/blockquote/blockquote.component.mjs +0 -16
  102. package/esm2022/plugins/blockquote/blockquote.editor.mjs +0 -20
  103. package/esm2022/plugins/blockquote/blockquote.plugin.mjs +0 -84
  104. package/esm2022/plugins/code/code.component.mjs +0 -255
  105. package/esm2022/plugins/code/code.editor.mjs +0 -59
  106. package/esm2022/plugins/code/code.plugin.mjs +0 -67
  107. package/esm2022/plugins/color/color.editor.mjs +0 -27
  108. package/esm2022/plugins/color/color.plugin.mjs +0 -32
  109. package/esm2022/plugins/color/toolbar-item.component.mjs +0 -99
  110. package/esm2022/plugins/common/block-card.plugin.mjs +0 -330
  111. package/esm2022/plugins/common/common.plugin.mjs +0 -49
  112. package/esm2022/plugins/common/get-fragment.plugin.mjs +0 -24
  113. package/esm2022/plugins/common/history.plugin.mjs +0 -31
  114. package/esm2022/plugins/common/insert-data-by-invalid-type.mjs +0 -23
  115. package/esm2022/plugins/common/move-selection.plugin.mjs +0 -105
  116. package/esm2022/plugins/common/remove-empty.plugin.mjs +0 -61
  117. package/esm2022/plugins/common/remove-void.plugin.mjs +0 -60
  118. package/esm2022/plugins/common/reset-type.plugin.mjs +0 -35
  119. package/esm2022/plugins/deserialize/deserialize-html.plugin.mjs +0 -61
  120. package/esm2022/plugins/deserialize/deserialize-md.plugin.mjs +0 -142
  121. package/esm2022/plugins/font-size/font-size.editor.mjs +0 -98
  122. package/esm2022/plugins/heading/heading.editor.mjs +0 -54
  123. package/esm2022/plugins/heading/heading.plugin.mjs +0 -136
  124. package/esm2022/plugins/hr/hr.component.mjs +0 -37
  125. package/esm2022/plugins/hr/hr.editor.mjs +0 -16
  126. package/esm2022/plugins/hr/hr.plugin.mjs +0 -56
  127. package/esm2022/plugins/image/image.component.mjs +0 -474
  128. package/esm2022/plugins/image/image.editor.mjs +0 -116
  129. package/esm2022/plugins/image/image.plugin.mjs +0 -90
  130. package/esm2022/plugins/indent/indent.editor.mjs +0 -78
  131. package/esm2022/plugins/indent/indent.plugin.mjs +0 -59
  132. package/esm2022/plugins/indent/on-keydown-indent.mjs +0 -59
  133. package/esm2022/plugins/index.mjs +0 -73
  134. package/esm2022/plugins/inline-code/inline-code.component.mjs +0 -28
  135. package/esm2022/plugins/inline-code/inline-code.editor.mjs +0 -49
  136. package/esm2022/plugins/inline-code/inline-code.plugin.mjs +0 -67
  137. package/esm2022/plugins/link/edit/link-edit.component.mjs +0 -104
  138. package/esm2022/plugins/link/hover/link-hover.component.mjs +0 -38
  139. package/esm2022/plugins/link/link.component.mjs +0 -170
  140. package/esm2022/plugins/link/link.editor.mjs +0 -87
  141. package/esm2022/plugins/link/link.plugin.mjs +0 -89
  142. package/esm2022/plugins/link/link.types.mjs +0 -12
  143. package/esm2022/plugins/list/components/bulleted-list.component.mjs +0 -28
  144. package/esm2022/plugins/list/components/list-item.component.mjs +0 -88
  145. package/esm2022/plugins/list/components/numbered-list.component.mjs +0 -37
  146. package/esm2022/plugins/list/list.editor.mjs +0 -128
  147. package/esm2022/plugins/list/list.plugin.mjs +0 -302
  148. package/esm2022/plugins/list/normalizers/get-list-normalizer.mjs +0 -39
  149. package/esm2022/plugins/list/normalizers/normalize-list-item.mjs +0 -18
  150. package/esm2022/plugins/list/normalizers/normalize-no.mjs +0 -43
  151. package/esm2022/plugins/list/on-key-down-list.mjs +0 -33
  152. package/esm2022/plugins/list/queries/get-list-item-entry.mjs +0 -28
  153. package/esm2022/plugins/list/queries/get-list-item-sublist.mjs +0 -12
  154. package/esm2022/plugins/list/queries/get-list-types.mjs +0 -5
  155. package/esm2022/plugins/list/queries/get-start-list-item.mjs +0 -27
  156. package/esm2022/plugins/list/queries/has-list-in-list-item.mjs +0 -27
  157. package/esm2022/plugins/list/queries/is-in-list.mjs +0 -6
  158. package/esm2022/plugins/list/queries/is-list-nested.mjs +0 -10
  159. package/esm2022/plugins/list/queries/is-list.mjs +0 -5
  160. package/esm2022/plugins/list/queries/is-node-type-list.mjs +0 -5
  161. package/esm2022/plugins/list/queries/is-selection-at-list-item-start.mjs +0 -13
  162. package/esm2022/plugins/list/queries/is-selection-in-same-list-item.mjs +0 -17
  163. package/esm2022/plugins/list/queries/is-single-list-item.mjs +0 -9
  164. package/esm2022/plugins/list/transforms/insert-list-data.mjs +0 -72
  165. package/esm2022/plugins/list/transforms/insert-list-item.mjs +0 -73
  166. package/esm2022/plugins/list/transforms/move-list-item-down.mjs +0 -41
  167. package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.mjs +0 -43
  168. package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list.mjs +0 -30
  169. package/esm2022/plugins/list/transforms/move-list-item-up.mjs +0 -78
  170. package/esm2022/plugins/list/transforms/unwrap-list.mjs +0 -10
  171. package/esm2022/plugins/list/types.mjs +0 -2
  172. package/esm2022/plugins/mark/mark.editor.mjs +0 -28
  173. package/esm2022/plugins/mark/mark.plugin.mjs +0 -105
  174. package/esm2022/plugins/mention/index.mjs +0 -5
  175. package/esm2022/plugins/mention/mention.editor.mjs +0 -179
  176. package/esm2022/plugins/mention/mention.plugin.mjs +0 -92
  177. package/esm2022/plugins/mention/mention.type.mjs +0 -2
  178. package/esm2022/plugins/mention/suggestion.component.mjs +0 -22
  179. package/esm2022/plugins/node-id/node-id.plugin.mjs +0 -78
  180. package/esm2022/plugins/normalizers/insert-paragraph-nodes.mjs +0 -28
  181. package/esm2022/plugins/normalizers/remove-empty-nodes.mjs +0 -18
  182. package/esm2022/plugins/normalizers/trailing-node.plugin.mjs +0 -33
  183. package/esm2022/plugins/paint-format/paint-format.editor.mjs +0 -126
  184. package/esm2022/plugins/public-api.mjs +0 -20
  185. package/esm2022/plugins/quick-insert/components/quick-insert.component.mjs +0 -126
  186. package/esm2022/plugins/quick-insert/index.mjs +0 -4
  187. package/esm2022/plugins/quick-insert/quick-insert.editor.mjs +0 -70
  188. package/esm2022/plugins/quick-insert/quick-insert.plugin.mjs +0 -109
  189. package/esm2022/plugins/soft-break/soft-break.plugin.mjs +0 -36
  190. package/esm2022/plugins/soft-break/soft-break.types.mjs +0 -2
  191. package/esm2022/plugins/table/components/insert-mark/insert-mark.component.mjs +0 -132
  192. package/esm2022/plugins/table/components/row/row.component.mjs +0 -93
  193. package/esm2022/plugins/table/components/table.component.mjs +0 -887
  194. package/esm2022/plugins/table/components/td/td.component.mjs +0 -610
  195. package/esm2022/plugins/table/components/toolbar/table-options.component.mjs +0 -102
  196. package/esm2022/plugins/table/components/toolbar/table-toolbar.component.mjs +0 -179
  197. package/esm2022/plugins/table/table.editor.mjs +0 -301
  198. package/esm2022/plugins/table/table.pipe.mjs +0 -66
  199. package/esm2022/plugins/table/table.plugin.mjs +0 -556
  200. package/esm2022/plugins/table/table.service.mjs +0 -122
  201. package/esm2022/plugins/table/table.store.mjs +0 -417
  202. package/esm2022/plugins/table/table.types.mjs +0 -68
  203. package/esm2022/plugins/table/toolbar-item.component.mjs +0 -95
  204. package/esm2022/plugins/table/transforms/clear-cell.mjs +0 -14
  205. package/esm2022/plugins/table/transforms/clear-table-node.mjs +0 -27
  206. package/esm2022/plugins/table/transforms/index.mjs +0 -8
  207. package/esm2022/plugins/table/transforms/insert-column.mjs +0 -69
  208. package/esm2022/plugins/table/transforms/insert-row.mjs +0 -50
  209. package/esm2022/plugins/table/transforms/insert-table.mjs +0 -15
  210. package/esm2022/plugins/table/transforms/move-selection-from-cell.mjs +0 -91
  211. package/esm2022/plugins/table/transforms/remove-column.mjs +0 -51
  212. package/esm2022/plugins/table/transforms/remove-row.mjs +0 -48
  213. package/esm2022/plugins/table/transforms/remove-table.mjs +0 -49
  214. package/esm2022/plugins/table/utils/add-columns.mjs +0 -38
  215. package/esm2022/plugins/table/utils/calc-anchor-position.mjs +0 -26
  216. package/esm2022/plugins/table/utils/calc-span.mjs +0 -73
  217. package/esm2022/plugins/table/utils/calculate-table.mjs +0 -116
  218. package/esm2022/plugins/table/utils/cell-position.mjs +0 -57
  219. package/esm2022/plugins/table/utils/create-cell.mjs +0 -19
  220. package/esm2022/plugins/table/utils/create-row.mjs +0 -12
  221. package/esm2022/plugins/table/utils/create-table-position.mjs +0 -10
  222. package/esm2022/plugins/table/utils/create-table.mjs +0 -15
  223. package/esm2022/plugins/table/utils/get-grid-columns.mjs +0 -79
  224. package/esm2022/plugins/table/utils/get-min-max-cell-index.mjs +0 -69
  225. package/esm2022/plugins/table/utils/get-next-cell.mjs +0 -44
  226. package/esm2022/plugins/table/utils/get-select-cell-node.mjs +0 -16
  227. package/esm2022/plugins/table/utils/handle-cell.mjs +0 -25
  228. package/esm2022/plugins/table/utils/index.mjs +0 -16
  229. package/esm2022/plugins/table/utils/is-header-row.mjs +0 -15
  230. package/esm2022/plugins/table/utils/is-legal-table.mjs +0 -26
  231. package/esm2022/plugins/table/utils/is-range-in-table.mjs +0 -16
  232. package/esm2022/plugins/table/utils/is-selection-in-table.mjs +0 -51
  233. package/esm2022/plugins/table/utils/is-virtual-key.mjs +0 -13
  234. package/esm2022/plugins/table/utils/merge-cell.mjs +0 -110
  235. package/esm2022/plugins/table/utils/next-path.mjs +0 -5
  236. package/esm2022/plugins/table/utils/normalize-table.mjs +0 -31
  237. package/esm2022/plugins/table/utils/remove-columns.mjs +0 -23
  238. package/esm2022/plugins/table/utils/remove-row-column.mjs +0 -45
  239. package/esm2022/plugins/table/utils/set-menu-cell-invisibility.mjs +0 -45
  240. package/esm2022/plugins/table/utils/split-cell.mjs +0 -29
  241. package/esm2022/plugins/table/utils/table-entry.mjs +0 -21
  242. package/esm2022/plugins/table/utils/table-position.mjs +0 -251
  243. package/esm2022/plugins/table/utils/table-viewport.mjs +0 -41
  244. package/esm2022/plugins/todo-item/todo-item.component.mjs +0 -65
  245. package/esm2022/plugins/todo-item/todo-item.editor.mjs +0 -32
  246. package/esm2022/plugins/todo-item/todo-item.plugin.mjs +0 -93
  247. package/esm2022/plugins/vertical-align/toolbar-item.component.mjs +0 -95
  248. package/esm2022/plugins/vertical-align/vertical-align.editor.mjs +0 -59
  249. package/esm2022/public-api.mjs +0 -22
  250. package/esm2022/queries/anchor-block-entry.mjs +0 -13
  251. package/esm2022/queries/anchor-block.mjs +0 -6
  252. package/esm2022/queries/anchor-inline-entry.mjs +0 -10
  253. package/esm2022/queries/find-descendant.mjs +0 -47
  254. package/esm2022/queries/find-node.mjs +0 -45
  255. package/esm2022/queries/find-path.mjs +0 -28
  256. package/esm2022/queries/get-above-by-type.mjs +0 -14
  257. package/esm2022/queries/get-above.mjs +0 -9
  258. package/esm2022/queries/get-anchor-block-entry.mjs +0 -8
  259. package/esm2022/queries/get-block-above.mjs +0 -10
  260. package/esm2022/queries/get-block-card-above.mjs +0 -10
  261. package/esm2022/queries/get-block-card-cursor.mjs +0 -9
  262. package/esm2022/queries/get-container-blocks.mjs +0 -12
  263. package/esm2022/queries/get-directly-parent.mjs +0 -12
  264. package/esm2022/queries/get-insert-elements-path.mjs +0 -46
  265. package/esm2022/queries/get-last-child-path.mjs +0 -9
  266. package/esm2022/queries/get-last-node.mjs +0 -17
  267. package/esm2022/queries/get-next-sibling-nodes.mjs +0 -17
  268. package/esm2022/queries/get-node.mjs +0 -10
  269. package/esm2022/queries/get-nodes-by-type.mjs +0 -15
  270. package/esm2022/queries/get-nodes.mjs +0 -7
  271. package/esm2022/queries/get-parent.mjs +0 -12
  272. package/esm2022/queries/get-plain-text.mjs +0 -16
  273. package/esm2022/queries/get-plugin-by-toolbar.mjs +0 -13
  274. package/esm2022/queries/get-point-before.mjs +0 -62
  275. package/esm2022/queries/get-point-from-location.mjs +0 -15
  276. package/esm2022/queries/get-previous-path.mjs +0 -9
  277. package/esm2022/queries/get-rang-from-block-start.mjs +0 -16
  278. package/esm2022/queries/get-range-before.mjs +0 -17
  279. package/esm2022/queries/get-selection-marks.mjs +0 -18
  280. package/esm2022/queries/get-selection-nodes-by-type.mjs +0 -30
  281. package/esm2022/queries/get-text.mjs +0 -9
  282. package/esm2022/queries/get-toolbar-disabled.mjs +0 -13
  283. package/esm2022/queries/index.mjs +0 -62
  284. package/esm2022/queries/is-across-blocks.mjs +0 -7
  285. package/esm2022/queries/is-ancestor-empty.mjs +0 -6
  286. package/esm2022/queries/is-ancestor.mjs +0 -3
  287. package/esm2022/queries/is-block-above-empty.mjs +0 -11
  288. package/esm2022/queries/is-block-active.mjs +0 -8
  289. package/esm2022/queries/is-block-card-cursor.mjs +0 -16
  290. package/esm2022/queries/is-block-text-empty-after-selection.mjs +0 -31
  291. package/esm2022/queries/is-collapsed.mjs +0 -7
  292. package/esm2022/queries/is-contain-nested-type.mjs +0 -29
  293. package/esm2022/queries/is-container-type.mjs +0 -3
  294. package/esm2022/queries/is-descendant.mjs +0 -3
  295. package/esm2022/queries/is-empty-content-filter.mjs +0 -22
  296. package/esm2022/queries/is-empty-content.mjs +0 -15
  297. package/esm2022/queries/is-empty-paragraph-by-path.mjs +0 -7
  298. package/esm2022/queries/is-empty-paragraph.mjs +0 -28
  299. package/esm2022/queries/is-first-child.mjs +0 -5
  300. package/esm2022/queries/is-global-collapsed.mjs +0 -5
  301. package/esm2022/queries/is-include-types.mjs +0 -12
  302. package/esm2022/queries/is-node-type-in.mjs +0 -9
  303. package/esm2022/queries/is-node-type.mjs +0 -15
  304. package/esm2022/queries/is-paragraph.mjs +0 -9
  305. package/esm2022/queries/is-point-at-root.mjs +0 -2
  306. package/esm2022/queries/is-range-across-blocks.mjs +0 -22
  307. package/esm2022/queries/is-range-at-root.mjs +0 -3
  308. package/esm2022/queries/is-root-path.mjs +0 -2
  309. package/esm2022/queries/is-start.mjs +0 -6
  310. package/esm2022/queries/some-node.mjs +0 -9
  311. package/esm2022/services/context.service.mjs +0 -140
  312. package/esm2022/services/table-contextmenu.service.mjs +0 -288
  313. package/esm2022/services/toolbar.service.mjs +0 -47
  314. package/esm2022/shortcuts/index.mjs +0 -5
  315. package/esm2022/shortcuts/mark.mjs +0 -25
  316. package/esm2022/test/basic/basic.component.mjs +0 -61
  317. package/esm2022/test/faker/data-transfer-faker.mjs +0 -13
  318. package/esm2022/test/faker/tethys-icon-faker.mjs +0 -22
  319. package/esm2022/test/index.mjs +0 -7
  320. package/esm2022/test/utils/mock-plugins.mjs +0 -104
  321. package/esm2022/test/utils/preset-config.mjs +0 -17
  322. package/esm2022/test/utils/with-plugin.mjs +0 -11
  323. package/esm2022/transforms/apply-deep-to-nodes.mjs +0 -22
  324. package/esm2022/transforms/clear-marks.mjs +0 -23
  325. package/esm2022/transforms/delete-element.mjs +0 -12
  326. package/esm2022/transforms/delete-node-by-type.mjs +0 -10
  327. package/esm2022/transforms/handle-continual-delete-backward.mjs +0 -18
  328. package/esm2022/transforms/handle-continual-insert-break.mjs +0 -20
  329. package/esm2022/transforms/index.mjs +0 -19
  330. package/esm2022/transforms/insert-elements.mjs +0 -55
  331. package/esm2022/transforms/insert-paragraph.mjs +0 -6
  332. package/esm2022/transforms/merge-deep-to-nodes.mjs +0 -9
  333. package/esm2022/transforms/move-children.mjs +0 -22
  334. package/esm2022/transforms/on-keydown-reset-block-type.mjs +0 -23
  335. package/esm2022/transforms/set-end-selection.mjs +0 -10
  336. package/esm2022/transforms/set-marks.mjs +0 -9
  337. package/esm2022/transforms/set-node-by-type.mjs +0 -10
  338. package/esm2022/transforms/set-node.mjs +0 -6
  339. package/esm2022/transforms/un-hang-range.mjs +0 -11
  340. package/esm2022/transforms/un-wrap.mjs +0 -12
  341. package/esm2022/transforms/unwrap-nodes-by-type.mjs +0 -14
  342. package/esm2022/utils/auto-focus.mjs +0 -24
  343. package/esm2022/utils/blob.mjs +0 -16
  344. package/esm2022/utils/cast-array.mjs +0 -7
  345. package/esm2022/utils/color-picker.mjs +0 -15
  346. package/esm2022/utils/common.mjs +0 -11
  347. package/esm2022/utils/copy-node.mjs +0 -38
  348. package/esm2022/utils/create-empty-paragraph.mjs +0 -14
  349. package/esm2022/utils/data-transform.mjs +0 -48
  350. package/esm2022/utils/dom.mjs +0 -56
  351. package/esm2022/utils/editor-uuid.mjs +0 -8
  352. package/esm2022/utils/fragment.mjs +0 -82
  353. package/esm2022/utils/get-editable-element-height.mjs +0 -6
  354. package/esm2022/utils/get-mode.mjs +0 -14
  355. package/esm2022/utils/get-toolbar-class.mjs +0 -6
  356. package/esm2022/utils/id-creator.mjs +0 -11
  357. package/esm2022/utils/index.mjs +0 -23
  358. package/esm2022/utils/insert-data-by-invalid-type.mjs +0 -70
  359. package/esm2022/utils/is-clean-empty-paragraph.mjs +0 -37
  360. package/esm2022/utils/is-inline.mjs +0 -9
  361. package/esm2022/utils/lodash.mjs +0 -3
  362. package/esm2022/utils/match.mjs +0 -32
  363. package/esm2022/utils/merge-element-options.mjs +0 -19
  364. package/esm2022/utils/normalize.mjs +0 -61
  365. package/esm2022/utils/refocus.mjs +0 -47
  366. package/esm2022/utils/scrolling.mjs +0 -43
  367. package/esm2022/utils/update-popover-position.mjs +0 -26
  368. package/esm2022/utils/weak-maps.mjs +0 -9
  369. package/esm2022/worktile-theia.mjs +0 -5
@@ -1,95 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { ThyAction } from 'ngx-tethys/action';
3
- import { ThyIcon } from 'ngx-tethys/icon';
4
- import { ThyTooltipDirective } from 'ngx-tethys/tooltip';
5
- import { TheTableSelect } from '../../components/table-select/table-select.component';
6
- import { TheBaseToolbarItem } from '../../core';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "ngx-tethys/popover";
9
- import * as i2 from "@angular/cdk/overlay";
10
- export class TheTableToolbarItem extends TheBaseToolbarItem {
11
- get isOpenTableSelect() {
12
- return this.tableSelectRef && this.tableSelectRef.componentInstance;
13
- }
14
- constructor(thyPopover, overlay) {
15
- super();
16
- this.thyPopover = thyPopover;
17
- this.overlay = overlay;
18
- }
19
- preventDefault(event) {
20
- event.preventDefault();
21
- event.stopPropagation();
22
- }
23
- execute(event) {
24
- super.execute(event);
25
- if (this.editor?.disabled) {
26
- return;
27
- }
28
- this.toggleTableSelect(event);
29
- }
30
- toggleTableSelect(event, optionsParam) {
31
- if (this.isOpenTableSelect) {
32
- this.tableSelectRef.close();
33
- return;
34
- }
35
- this.tableSelectRef = this.thyPopover.open(TheTableSelect, {
36
- origin: event.currentTarget,
37
- initialState: {
38
- editor: this.editor,
39
- optionsParam
40
- },
41
- minWidth: 0,
42
- hasBackdrop: false,
43
- outsideClosable: true,
44
- insideClosable: false,
45
- placement: 'bottomLeft',
46
- offset: 0,
47
- panelClass: 'the-table-selector-panel',
48
- scrollStrategy: this.overlay.scrollStrategies.reposition()
49
- });
50
- return this.tableSelectRef;
51
- }
52
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheTableToolbarItem, deps: [{ token: i1.ThyPopover }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TheTableToolbarItem, isStandalone: true, selector: "the-table-toolbar-item", host: { classAttribute: "the-toolbar-dropdown-container" }, usesInheritance: true, ngImport: i0, template: `
54
- <a
55
- href="javascript:;"
56
- class="link-with-down"
57
- thyAction
58
- [thyActionIcon]="toolbarItem.icon"
59
- [thyActionActive]="active"
60
- [thyTooltip]="toolbarItem?.name"
61
- thyTooltipPlacement="top"
62
- (mousedown)="preventDefault($event)"
63
- (click)="execute($event)"
64
- >
65
- <thy-icon class="link-down-icon font-size-sm text-desc ml-1" thyIconName="caret-down"></thy-icon>
66
- </a>
67
- `, isInline: true, dependencies: [{ kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }] }); }
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheTableToolbarItem, decorators: [{
70
- type: Component,
71
- args: [{
72
- selector: 'the-table-toolbar-item',
73
- template: `
74
- <a
75
- href="javascript:;"
76
- class="link-with-down"
77
- thyAction
78
- [thyActionIcon]="toolbarItem.icon"
79
- [thyActionActive]="active"
80
- [thyTooltip]="toolbarItem?.name"
81
- thyTooltipPlacement="top"
82
- (mousedown)="preventDefault($event)"
83
- (click)="execute($event)"
84
- >
85
- <thy-icon class="link-down-icon font-size-sm text-desc ml-1" thyIconName="caret-down"></thy-icon>
86
- </a>
87
- `,
88
- host: {
89
- class: 'the-toolbar-dropdown-container'
90
- },
91
- standalone: true,
92
- imports: [ThyAction, ThyTooltipDirective, ThyIcon]
93
- }]
94
- }], ctorParameters: () => [{ type: i1.ThyPopover }, { type: i2.Overlay }] });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3Rvb2xiYXItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7QUEwQmhELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxrQkFBa0I7SUFHdkQsSUFBSSxpQkFBaUI7UUFDakIsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUM7SUFDeEUsQ0FBQztJQUVELFlBQ1ksVUFBc0IsRUFDdEIsT0FBZ0I7UUFFeEIsS0FBSyxFQUFFLENBQUM7UUFIQSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFHNUIsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFZO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFpQjtRQUNyQixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUN4QixPQUFPO1FBQ1gsQ0FBQztRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBaUIsRUFBRSxZQUEyQjtRQUM1RCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUIsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2RCxNQUFNLEVBQUUsS0FBSyxDQUFDLGFBQTRCO1lBQzFDLFlBQVksRUFBRTtnQkFDVixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLFlBQVk7YUFDZjtZQUNELFFBQVEsRUFBRSxDQUFDO1lBQ1gsV0FBVyxFQUFFLEtBQUs7WUFDbEIsZUFBZSxFQUFFLElBQUk7WUFDckIsY0FBYyxFQUFFLEtBQUs7WUFDckIsU0FBUyxFQUFFLFlBQVk7WUFDdkIsTUFBTSxFQUFFLENBQUM7WUFDVCxVQUFVLEVBQUUsMEJBQTBCO1lBQ3RDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRTtTQUM3RCxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQzsrR0FqRFEsbUJBQW1CO21HQUFuQixtQkFBbUIscUtBckJsQjs7Ozs7Ozs7Ozs7Ozs7S0FjVCw0REFLUyxTQUFTLGdNQUFFLG1CQUFtQiw4VEFBRSxPQUFPOzs0RkFFeEMsbUJBQW1CO2tCQXZCL0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7O0tBY1Q7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxnQ0FBZ0M7cUJBQzFDO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsT0FBTyxDQUFDO2lCQUNyRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeUFjdGlvbiB9IGZyb20gJ25neC10ZXRoeXMvYWN0aW9uJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBUaHlUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy90b29sdGlwJztcbmltcG9ydCB7IFRoZVRhYmxlU2VsZWN0IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy90YWJsZS1zZWxlY3QvdGFibGUtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVCYXNlVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4vdGFibGUudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoZS10YWJsZS10b29sYmFyLWl0ZW0nLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxhXG4gICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAgIGNsYXNzPVwibGluay13aXRoLWRvd25cIlxuICAgICAgICAgICAgdGh5QWN0aW9uXG4gICAgICAgICAgICBbdGh5QWN0aW9uSWNvbl09XCJ0b29sYmFySXRlbS5pY29uXCJcbiAgICAgICAgICAgIFt0aHlBY3Rpb25BY3RpdmVdPVwiYWN0aXZlXCJcbiAgICAgICAgICAgIFt0aHlUb29sdGlwXT1cInRvb2xiYXJJdGVtPy5uYW1lXCJcbiAgICAgICAgICAgIHRoeVRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgICAgICAgKG1vdXNlZG93bik9XCJwcmV2ZW50RGVmYXVsdCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJleGVjdXRlKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJsaW5rLWRvd24taWNvbiBmb250LXNpemUtc20gdGV4dC1kZXNjIG1sLTFcIiB0aHlJY29uTmFtZT1cImNhcmV0LWRvd25cIj48L3RoeS1pY29uPlxuICAgICAgICA8L2E+XG4gICAgYCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGhlLXRvb2xiYXItZHJvcGRvd24tY29udGFpbmVyJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGh5QWN0aW9uLCBUaHlUb29sdGlwRGlyZWN0aXZlLCBUaHlJY29uXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUYWJsZVRvb2xiYXJJdGVtIGV4dGVuZHMgVGhlQmFzZVRvb2xiYXJJdGVtIHtcbiAgICB0YWJsZVNlbGVjdFJlZjogVGh5UG9wb3ZlclJlZjxUaGVUYWJsZVNlbGVjdD47XG5cbiAgICBnZXQgaXNPcGVuVGFibGVTZWxlY3QoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhYmxlU2VsZWN0UmVmICYmIHRoaXMudGFibGVTZWxlY3RSZWYuY29tcG9uZW50SW5zdGFuY2U7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5XG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgcHJldmVudERlZmF1bHQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIGV4ZWN1dGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgc3VwZXIuZXhlY3V0ZShldmVudCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZWRpdG9yPy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudG9nZ2xlVGFibGVTZWxlY3QoZXZlbnQpO1xuICAgIH1cblxuICAgIHRvZ2dsZVRhYmxlU2VsZWN0KGV2ZW50OiBNb3VzZUV2ZW50LCBvcHRpb25zUGFyYW0/OiBUYWJsZU9wdGlvbnMpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuVGFibGVTZWxlY3QpIHtcbiAgICAgICAgICAgIHRoaXMudGFibGVTZWxlY3RSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRhYmxlU2VsZWN0UmVmID0gdGhpcy50aHlQb3BvdmVyLm9wZW4oVGhlVGFibGVTZWxlY3QsIHtcbiAgICAgICAgICAgIG9yaWdpbjogZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGVkaXRvcjogdGhpcy5lZGl0b3IsXG4gICAgICAgICAgICAgICAgb3B0aW9uc1BhcmFtXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbWluV2lkdGg6IDAsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IHRydWUsXG4gICAgICAgICAgICBpbnNpZGVDbG9zYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JyxcbiAgICAgICAgICAgIG9mZnNldDogMCxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0aGUtdGFibGUtc2VsZWN0b3ItcGFuZWwnLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGVTZWxlY3RSZWY7XG4gICAgfVxufVxuIl19
@@ -1,14 +0,0 @@
1
- import { Transforms } from 'slate';
2
- import { createCell } from '../utils/create-cell';
3
- /**
4
- * Clear the content of the given cell
5
- */
6
- export function clearCell(opts, editor, cellEntry) {
7
- Transforms.removeNodes(editor, { at: cellEntry[1] });
8
- const cellNode = {
9
- ...cellEntry[0],
10
- ...createCell(opts)
11
- };
12
- Transforms.insertNodes(editor, { ...cellNode }, { at: cellEntry[1] });
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvY2xlYXItY2VsbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUE4QixNQUFNLE9BQU8sQ0FBQztBQUUvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLFNBQTZCO0lBQ3ZGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckQsTUFBTSxRQUFRLEdBQUc7UUFDYixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDZixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7S0FDdEIsQ0FBQztJQUNGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1zLCBOb2RlRW50cnksIEVkaXRvciwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUNlbGwgfSBmcm9tICcuLi91dGlscy9jcmVhdGUtY2VsbCc7XG5cbi8qKlxuICogQ2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIGNlbGxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyQ2VsbChvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBjZWxsRW50cnk6IE5vZGVFbnRyeTxFbGVtZW50Pikge1xuICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiBjZWxsRW50cnlbMV0gfSk7XG4gICAgY29uc3QgY2VsbE5vZGUgPSB7XG4gICAgICAgIC4uLmNlbGxFbnRyeVswXSxcbiAgICAgICAgLi4uY3JlYXRlQ2VsbChvcHRzKVxuICAgIH07XG4gICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIHsgLi4uY2VsbE5vZGUgfSwgeyBhdDogY2VsbEVudHJ5WzFdIH0pO1xufVxuIl19
@@ -1,27 +0,0 @@
1
- import { Transforms, Range } from 'slate';
2
- import { createCell } from '../utils/create-cell';
3
- import { createTablePosition } from '../utils/create-table-position';
4
- /**
5
- * Clear the content of the given node
6
- */
7
- export function clearTableNode(opts, editor, isTopToBot) {
8
- const { selection } = editor;
9
- const element = createTablePosition(editor, selection.focus.path);
10
- const rowIndex = element.getRowIndex();
11
- const colIndex = element.getColumnIndex();
12
- const removeRow = isTopToBot ? 0 : rowIndex + 1;
13
- for (let i = 0; i < element.getWidth(); i++) {
14
- const inColRange = Range.includes(selection, [...element.tableEntry[1], rowIndex, i]);
15
- if (inColRange && i !== colIndex) {
16
- Transforms.removeNodes(editor, { at: [...element.tableEntry[1], rowIndex, i] });
17
- Transforms.insertNodes(editor, createCell(opts), { at: [...element.tableEntry[1], rowIndex, i] });
18
- }
19
- }
20
- for (let i = 0; i < element.getHeight(); i++) {
21
- const inRowRange = Range.includes(selection, [...element.tableEntry[1], i]);
22
- if (inRowRange && i !== rowIndex) {
23
- Transforms.removeNodes(editor, { at: [...element.tableEntry[1], removeRow] });
24
- }
25
- }
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItdGFibGUtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvY2xlYXItdGFibGUtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFckU7O0dBRUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLFVBQW9CO0lBQ25GLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEUsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUNoRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDMUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEYsSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQy9CLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEYsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEcsQ0FBQztJQUNMLENBQUM7SUFDRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDM0MsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RSxJQUFJLFVBQVUsSUFBSSxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDL0IsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7SUFDTCxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgVHJhbnNmb3JtcywgUmFuZ2UgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBjcmVhdGVDZWxsIH0gZnJvbSAnLi4vdXRpbHMvY3JlYXRlLWNlbGwnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGFibGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzL2NyZWF0ZS10YWJsZS1wb3NpdGlvbic7XG5cbi8qKlxuICogQ2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIG5vZGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyVGFibGVOb2RlKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIGlzVG9wVG9Cb3Q/OiBib29sZWFuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCBlbGVtZW50ID0gY3JlYXRlVGFibGVQb3NpdGlvbihlZGl0b3IsIHNlbGVjdGlvbi5mb2N1cy5wYXRoKTtcbiAgICBjb25zdCByb3dJbmRleCA9IGVsZW1lbnQuZ2V0Um93SW5kZXgoKTtcbiAgICBjb25zdCBjb2xJbmRleCA9IGVsZW1lbnQuZ2V0Q29sdW1uSW5kZXgoKTtcbiAgICBjb25zdCByZW1vdmVSb3cgPSBpc1RvcFRvQm90ID8gMCA6IHJvd0luZGV4ICsgMTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnQuZ2V0V2lkdGgoKTsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGluQ29sUmFuZ2UgPSBSYW5nZS5pbmNsdWRlcyhzZWxlY3Rpb24sIFsuLi5lbGVtZW50LnRhYmxlRW50cnlbMV0sIHJvd0luZGV4LCBpXSk7XG4gICAgICAgIGlmIChpbkNvbFJhbmdlICYmIGkgIT09IGNvbEluZGV4KSB7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdDogWy4uLmVsZW1lbnQudGFibGVFbnRyeVsxXSwgcm93SW5kZXgsIGldIH0pO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIGNyZWF0ZUNlbGwob3B0cyksIHsgYXQ6IFsuLi5lbGVtZW50LnRhYmxlRW50cnlbMV0sIHJvd0luZGV4LCBpXSB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnQuZ2V0SGVpZ2h0KCk7IGkrKykge1xuICAgICAgICBjb25zdCBpblJvd1JhbmdlID0gUmFuZ2UuaW5jbHVkZXMoc2VsZWN0aW9uLCBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCBpXSk7XG4gICAgICAgIGlmIChpblJvd1JhbmdlICYmIGkgIT09IHJvd0luZGV4KSB7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdDogWy4uLmVsZW1lbnQudGFibGVFbnRyeVsxXSwgcmVtb3ZlUm93XSB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,8 +0,0 @@
1
- import { insertTable } from './insert-table';
2
- import { insertRow } from './insert-row';
3
- import { insertColumn } from './insert-column';
4
- import { removeRow } from './remove-row';
5
- import { removeColumn } from './remove-column';
6
- import { removeTable } from './remove-table';
7
- export { insertTable, insertRow, insertColumn, removeTable, removeRow, removeColumn };
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS90cmFuc2Zvcm1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnNlcnRUYWJsZSB9IGZyb20gJy4vaW5zZXJ0LXRhYmxlJztcbmltcG9ydCB7IGluc2VydFJvdyB9IGZyb20gJy4vaW5zZXJ0LXJvdyc7XG5pbXBvcnQgeyBpbnNlcnRDb2x1bW4gfSBmcm9tICcuL2luc2VydC1jb2x1bW4nO1xuaW1wb3J0IHsgcmVtb3ZlUm93IH0gZnJvbSAnLi9yZW1vdmUtcm93JztcbmltcG9ydCB7IHJlbW92ZUNvbHVtbiB9IGZyb20gJy4vcmVtb3ZlLWNvbHVtbic7XG5pbXBvcnQgeyByZW1vdmVUYWJsZSB9IGZyb20gJy4vcmVtb3ZlLXRhYmxlJztcblxuZXhwb3J0IHsgaW5zZXJ0VGFibGUsIGluc2VydFJvdywgaW5zZXJ0Q29sdW1uLCByZW1vdmVUYWJsZSwgcmVtb3ZlUm93LCByZW1vdmVDb2x1bW4gfTtcbiJdfQ==
@@ -1,69 +0,0 @@
1
- import { Transforms, Editor } from 'slate';
2
- import { createCell } from '../utils';
3
- import { calcSpanForColumn } from '../utils/calc-span';
4
- import { addColumns } from '../utils/add-columns';
5
- import { AngularEditor } from 'slate-angular';
6
- import { createTablePosition } from '../utils/create-table-position';
7
- /**
8
- * Insert a new column in current table
9
- */
10
- export function insertColumn(opts, editor, count = 1, at, // Column index
11
- getCell) {
12
- const { selection } = editor;
13
- const { anchor: { path } } = selection;
14
- const tablePosition = createTablePosition(editor, path);
15
- let table = tablePosition.table;
16
- let tableEntry = tablePosition.tableEntry;
17
- const insertColumnIndex = typeof at === 'undefined' ? tablePosition.getColumnIndex() + 1 : at;
18
- // Insert the new cell
19
- Editor.withoutNormalizing(editor, () => {
20
- const colspan = calcSpanForColumn(table, insertColumnIndex);
21
- for (let i = 0; i < count; i++) {
22
- table.children.forEach((row, rowIndex) => {
23
- const isInside = colspan[rowIndex];
24
- const newCell = getCell ? getCell(insertColumnIndex, rowIndex) : createCell(opts);
25
- if (isInside) {
26
- newCell.hidden = true;
27
- const dirtyCell = row.children.find((cell, columnIndex) => !cell.hidden &&
28
- columnIndex < insertColumnIndex &&
29
- cell.colspan &&
30
- cell.colspan + columnIndex > insertColumnIndex);
31
- if (dirtyCell) {
32
- Transforms.setNodes(editor, { colspan: dirtyCell.colspan + 1 }, {
33
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
34
- });
35
- }
36
- }
37
- Transforms.insertNodes(editor, [newCell], {
38
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(insertColumnIndex)
39
- });
40
- });
41
- }
42
- const theTableWrapper = AngularEditor.toDOMNode(editor, table).querySelector('.the-table-wrapper');
43
- const scrollWidth = theTableWrapper.scrollWidth;
44
- const clientWidth = theTableWrapper.clientWidth;
45
- const columnLength = table?.children[0].children.length;
46
- const columnWidth = clientWidth / (columnLength + count);
47
- if (table?.columns) {
48
- Transforms.setNodes(editor, { columns: addColumns(table, table.columns.length + count, insertColumnIndex, scrollWidth > clientWidth) }, { at: tableEntry[1] });
49
- }
50
- else if (columnWidth < opts.minWidthPx) {
51
- const columns = Array(columnLength + count).fill({ width: opts.minWidthPx });
52
- Transforms.setNodes(editor, { columns }, { at: tableEntry[1] });
53
- }
54
- });
55
- }
56
- /**
57
- * Insert new column in the row
58
- */
59
- export function insertColumnAtRow(opts, editor, count = 1, tableEntry, rowIndex, columnIndex, getCell) {
60
- Editor.withoutNormalizing(editor, () => {
61
- for (let i = 0; i < count; i++) {
62
- const newCell = getCell ? getCell(columnIndex, rowIndex) : createCell(opts);
63
- Transforms.insertNodes(editor, [newCell], {
64
- at: tableEntry[1].concat([rowIndex, columnIndex])
65
- });
66
- }
67
- });
68
- }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBYSxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQWlCLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRTs7R0FFRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQ3hCLElBQWtCLEVBQ2xCLE1BQWMsRUFDZCxLQUFLLEdBQUcsQ0FBQyxFQUNULEVBQVcsRUFBRSxlQUFlO0FBQzVCLE9BQTJEO0lBRTNELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsTUFBTSxFQUNGLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxFQUNuQixHQUFHLFNBQVMsQ0FBQztJQUVkLE1BQU0sYUFBYSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RCxJQUFJLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2hDLElBQUksVUFBVSxHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUM7SUFFMUMsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUU5Rixz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QUFHLEtBQUssQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQzdFLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQzdCLElBQWtCLEVBQ2xCLE1BQWMsRUFDZCxLQUFLLEdBQUcsQ0FBQyxFQUNULFVBQW1DLEVBQ25DLFFBQWdCLEVBQ2hCLFdBQW1CLEVBQ25CLE9BQTJEO0lBRTNELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1FBQ25DLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RSxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN0QyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQzthQUNwRCxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtcywgRWRpdG9yLCBOb2RlRW50cnkgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uLCBjcmVhdGVDZWxsIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2FsY1NwYW5Gb3JDb2x1bW4gfSBmcm9tICcuLi91dGlscy9jYWxjLXNwYW4nO1xuaW1wb3J0IHsgYWRkQ29sdW1ucyB9IGZyb20gJy4uL3V0aWxzL2FkZC1jb2x1bW5zJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlQ2VsbEVsZW1lbnQsIFRhYmxlRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10eXBlcyc7XG5pbXBvcnQgeyBBbmd1bGFyRWRpdG9yIH0gZnJvbSAnc2xhdGUtYW5ndWxhcic7XG5pbXBvcnQgeyBjcmVhdGVUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMvY3JlYXRlLXRhYmxlLXBvc2l0aW9uJztcblxuLyoqXG4gKiBJbnNlcnQgYSBuZXcgY29sdW1uIGluIGN1cnJlbnQgdGFibGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc2VydENvbHVtbihcbiAgICBvcHRzOiBUYWJsZU9wdGlvbnMsXG4gICAgZWRpdG9yOiBFZGl0b3IsXG4gICAgY291bnQgPSAxLFxuICAgIGF0PzogbnVtYmVyLCAvLyBDb2x1bW4gaW5kZXhcbiAgICBnZXRDZWxsPzogKGNvbHVtbjogbnVtYmVyLCByb3c6IG51bWJlcikgPT4gVGFibGVDZWxsRWxlbWVudFxuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCB7XG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cbiAgICB9ID0gc2VsZWN0aW9uO1xuXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IGNyZWF0ZVRhYmxlUG9zaXRpb24oZWRpdG9yLCBwYXRoKTtcbiAgICBsZXQgdGFibGUgPSB0YWJsZVBvc2l0aW9uLnRhYmxlO1xuICAgIGxldCB0YWJsZUVudHJ5ID0gdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5O1xuXG4gICAgY29uc3QgaW5zZXJ0Q29sdW1uSW5kZXggPSB0eXBlb2YgYXQgPT09ICd1bmRlZmluZWQnID8gdGFibGVQb3NpdGlvbi5nZXRDb2x1bW5JbmRleCgpICsgMSA6IGF0O1xuXG4gICAgLy8gSW5zZXJ0IHRoZSBuZXcgY2VsbFxuXG4gICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgY29uc3QgY29sc3BhbiA9IGNhbGNTcGFuRm9yQ29sdW1uKHRhYmxlLCBpbnNlcnRDb2x1bW5JbmRleCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgICAgICAgICAgdGFibGUuY2hpbGRyZW4uZm9yRWFjaCgocm93LCByb3dJbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzSW5zaWRlID0gY29sc3Bhbltyb3dJbmRleF07XG4gICAgICAgICAgICAgICAgY29uc3QgbmV3Q2VsbCA9IGdldENlbGwgPyBnZXRDZWxsKGluc2VydENvbHVtbkluZGV4LCByb3dJbmRleCkgOiBjcmVhdGVDZWxsKG9wdHMpO1xuICAgICAgICAgICAgICAgIGlmIChpc0luc2lkZSkge1xuICAgICAgICAgICAgICAgICAgICBuZXdDZWxsLmhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRpcnR5Q2VsbCA9IHJvdy5jaGlsZHJlbi5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGNlbGw6IFRhYmxlQ2VsbEVsZW1lbnQsIGNvbHVtbkluZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uSW5kZXggPCBpbnNlcnRDb2x1bW5JbmRleCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGwuY29sc3BhbiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGwuY29sc3BhbiArIGNvbHVtbkluZGV4ID4gaW5zZXJ0Q29sdW1uSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgKSBhcyBUYWJsZUNlbGxFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGlydHlDZWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW46IGRpcnR5Q2VsbC5jb2xzcGFuICsgMSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChyb3cuY2hpbGRyZW4uaW5kZXhPZihkaXJ0eUNlbGwpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIFtuZXdDZWxsXSwge1xuICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KGluc2VydENvbHVtbkluZGV4KVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0aGVUYWJsZVdyYXBwZXIgPSBBbmd1bGFyRWRpdG9yLnRvRE9NTm9kZShlZGl0b3IsIHRhYmxlKS5xdWVyeVNlbGVjdG9yKCcudGhlLXRhYmxlLXdyYXBwZXInKTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsV2lkdGggPSB0aGVUYWJsZVdyYXBwZXIuc2Nyb2xsV2lkdGg7XG4gICAgICAgIGNvbnN0IGNsaWVudFdpZHRoID0gdGhlVGFibGVXcmFwcGVyLmNsaWVudFdpZHRoO1xuICAgICAgICBjb25zdCBjb2x1bW5MZW5ndGggPSB0YWJsZT8uY2hpbGRyZW5bMF0uY2hpbGRyZW4ubGVuZ3RoO1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IGNsaWVudFdpZHRoIC8gKGNvbHVtbkxlbmd0aCArIGNvdW50KTtcblxuICAgICAgICBpZiAodGFibGU/LmNvbHVtbnMpIHtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXG4gICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgIHsgY29sdW1uczogYWRkQ29sdW1ucyh0YWJsZSwgdGFibGUuY29sdW1ucy5sZW5ndGggKyBjb3VudCwgaW5zZXJ0Q29sdW1uSW5kZXgsIHNjcm9sbFdpZHRoID4gY2xpZW50V2lkdGgpIH0sXG4gICAgICAgICAgICAgICAgeyBhdDogdGFibGVFbnRyeVsxXSB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbHVtbldpZHRoIDwgb3B0cy5taW5XaWR0aFB4KSB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5zID0gQXJyYXkoY29sdW1uTGVuZ3RoICsgY291bnQpLmZpbGwoeyB3aWR0aDogb3B0cy5taW5XaWR0aFB4IH0pO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhlZGl0b3IsIHsgY29sdW1ucyB9LCB7IGF0OiB0YWJsZUVudHJ5WzFdIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59XG5cbi8qKlxuICogSW5zZXJ0IG5ldyBjb2x1bW4gaW4gdGhlIHJvd1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0Q29sdW1uQXRSb3coXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIGNvdW50ID0gMSxcbiAgICB0YWJsZUVudHJ5OiBOb2RlRW50cnk8VGFibGVFbGVtZW50PixcbiAgICByb3dJbmRleDogbnVtYmVyLFxuICAgIGNvbHVtbkluZGV4OiBudW1iZXIsXG4gICAgZ2V0Q2VsbD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IFRhYmxlQ2VsbEVsZW1lbnRcbikge1xuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgbmV3Q2VsbCA9IGdldENlbGwgPyBnZXRDZWxsKGNvbHVtbkluZGV4LCByb3dJbmRleCkgOiBjcmVhdGVDZWxsKG9wdHMpO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIFtuZXdDZWxsXSwge1xuICAgICAgICAgICAgICAgIGF0OiB0YWJsZUVudHJ5WzFdLmNvbmNhdChbcm93SW5kZXgsIGNvbHVtbkluZGV4XSlcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4iXX0=
@@ -1,50 +0,0 @@
1
- import { Transforms } from 'slate';
2
- import { createRow, calcSpanForRow } from '../utils';
3
- import { createTablePosition } from '../utils/create-table-position';
4
- function getInsertRowState(opts, editor, count = 1, at) {
5
- const tablePosition = createTablePosition(editor);
6
- let table = tablePosition.table;
7
- let tableEntry = tablePosition.tableEntry;
8
- // Create a new row with the right count of cells
9
- const columns = table.children[0].children.length;
10
- const rowIndex = tablePosition.getRowIndex();
11
- const insertRowIndex = typeof at === 'undefined' ? rowIndex + 1 : at;
12
- return { table, tableEntry, columns, rowIndex, insertRowIndex };
13
- }
14
- function packNewRow(opts, editor, count = 1, at) {
15
- const { table, tableEntry, columns, insertRowIndex } = getInsertRowState(opts, editor, count, at);
16
- const rowspan = calcSpanForRow(table, insertRowIndex);
17
- const newRow = createRow(opts, columns);
18
- newRow.children.forEach((cell, columnIndex) => {
19
- const isInside = rowspan[columnIndex];
20
- if (isInside) {
21
- cell.hidden = true;
22
- const dirtyRow = table.children.find((row, rowIndex) => !row.children[columnIndex].hidden &&
23
- rowIndex < insertRowIndex &&
24
- row.children[columnIndex].rowspan &&
25
- row.children[columnIndex].rowspan + rowIndex > insertRowIndex);
26
- if (dirtyRow) {
27
- Transforms.setNodes(editor, { rowspan: dirtyRow.children[columnIndex].rowspan + 1 }, {
28
- at: tableEntry[1].concat(table.children.indexOf(dirtyRow)).concat(columnIndex)
29
- });
30
- }
31
- }
32
- });
33
- return newRow;
34
- }
35
- /**
36
- * Insert a new row in current table
37
- */
38
- export function insertRow(opts, editor, count = 1, at // row index
39
- ) {
40
- const { tableEntry, insertRowIndex } = getInsertRowState(opts, editor, count, at);
41
- const newRows = [];
42
- for (let i = 0; i < count; i++) {
43
- const newRow = packNewRow(opts, editor, count, at);
44
- newRows.push(newRow);
45
- }
46
- Transforms.insertNodes(editor, newRows, {
47
- at: tableEntry[1].concat(insertRowIndex)
48
- });
49
- }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRSxTQUFTLGlCQUFpQixDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBVztJQUNqRixNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRCxJQUFJLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2hDLElBQUksVUFBVSxHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUM7SUFFMUMsaURBQWlEO0lBQ2pELE1BQU0sT0FBTyxHQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBc0IsQ0FBQyxNQUFNLENBQUM7SUFFakUsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdDLE1BQU0sY0FBYyxHQUFHLE9BQU8sRUFBRSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRXJFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDcEUsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBVztJQUMxRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEcsTUFBTSxPQUFPLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN0RCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRXhDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFO1FBQzFDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0QyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDbkIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hDLENBQUMsR0FBb0IsRUFBRSxRQUFnQixFQUFFLEVBQUUsQ0FDdkMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU07Z0JBQ2pDLFFBQVEsR0FBRyxjQUFjO2dCQUN6QixHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU87Z0JBQ2pDLEdBQUcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsR0FBRyxjQUFjLENBQ3BFLENBQUM7WUFDRixJQUFJLFFBQVEsRUFBRSxDQUFDO2dCQUNYLFVBQVUsQ0FBQyxRQUFRLENBQ2YsTUFBTSxFQUNOLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRSxFQUN2RDtvQkFDSSxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7aUJBQ2pGLENBQ0osQ0FBQztZQUNOLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUNyQixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxFQUFXLENBQUMsWUFBWTs7SUFFeEIsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRixNQUFNLE9BQU8sR0FBc0IsRUFBRSxDQUFDO0lBRXRDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUM3QixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkQsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFO1FBQ3BDLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztLQUMzQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVSb3dFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IGNyZWF0ZVJvdywgY2FsY1NwYW5Gb3JSb3cgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMvY3JlYXRlLXRhYmxlLXBvc2l0aW9uJztcblxuZnVuY3Rpb24gZ2V0SW5zZXJ0Um93U3RhdGUob3B0czogVGFibGVPcHRpb25zLCBlZGl0b3I6IEVkaXRvciwgY291bnQgPSAxLCBhdD86IG51bWJlcikge1xuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBjcmVhdGVUYWJsZVBvc2l0aW9uKGVkaXRvcik7XG4gICAgbGV0IHRhYmxlID0gdGFibGVQb3NpdGlvbi50YWJsZTtcbiAgICBsZXQgdGFibGVFbnRyeSA9IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeTtcblxuICAgIC8vIENyZWF0ZSBhIG5ldyByb3cgd2l0aCB0aGUgcmlnaHQgY291bnQgb2YgY2VsbHNcbiAgICBjb25zdCBjb2x1bW5zID0gKHRhYmxlLmNoaWxkcmVuWzBdLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkubGVuZ3RoO1xuXG4gICAgY29uc3Qgcm93SW5kZXggPSB0YWJsZVBvc2l0aW9uLmdldFJvd0luZGV4KCk7XG4gICAgY29uc3QgaW5zZXJ0Um93SW5kZXggPSB0eXBlb2YgYXQgPT09ICd1bmRlZmluZWQnID8gcm93SW5kZXggKyAxIDogYXQ7XG5cbiAgICByZXR1cm4geyB0YWJsZSwgdGFibGVFbnRyeSwgY29sdW1ucywgcm93SW5kZXgsIGluc2VydFJvd0luZGV4IH07XG59XG5cbmZ1bmN0aW9uIHBhY2tOZXdSb3cob3B0czogVGFibGVPcHRpb25zLCBlZGl0b3I6IEVkaXRvciwgY291bnQgPSAxLCBhdD86IG51bWJlcikge1xuICAgIGNvbnN0IHsgdGFibGUsIHRhYmxlRW50cnksIGNvbHVtbnMsIGluc2VydFJvd0luZGV4IH0gPSBnZXRJbnNlcnRSb3dTdGF0ZShvcHRzLCBlZGl0b3IsIGNvdW50LCBhdCk7XG4gICAgY29uc3Qgcm93c3BhbiA9IGNhbGNTcGFuRm9yUm93KHRhYmxlLCBpbnNlcnRSb3dJbmRleCk7XG4gICAgY29uc3QgbmV3Um93ID0gY3JlYXRlUm93KG9wdHMsIGNvbHVtbnMpO1xuXG4gICAgbmV3Um93LmNoaWxkcmVuLmZvckVhY2goKGNlbGwsIGNvbHVtbkluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IGlzSW5zaWRlID0gcm93c3Bhbltjb2x1bW5JbmRleF07XG4gICAgICAgIGlmIChpc0luc2lkZSkge1xuICAgICAgICAgICAgY2VsbC5oaWRkZW4gPSB0cnVlO1xuICAgICAgICAgICAgY29uc3QgZGlydHlSb3cgPSB0YWJsZS5jaGlsZHJlbi5maW5kKFxuICAgICAgICAgICAgICAgIChyb3c6IFRhYmxlUm93RWxlbWVudCwgcm93SW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgIXJvdy5jaGlsZHJlbltjb2x1bW5JbmRleF0uaGlkZGVuICYmXG4gICAgICAgICAgICAgICAgICAgIHJvd0luZGV4IDwgaW5zZXJ0Um93SW5kZXggJiZcbiAgICAgICAgICAgICAgICAgICAgcm93LmNoaWxkcmVuW2NvbHVtbkluZGV4XS5yb3dzcGFuICYmXG4gICAgICAgICAgICAgICAgICAgIHJvdy5jaGlsZHJlbltjb2x1bW5JbmRleF0ucm93c3BhbiArIHJvd0luZGV4ID4gaW5zZXJ0Um93SW5kZXhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoZGlydHlSb3cpIHtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHsgcm93c3BhbjogZGlydHlSb3cuY2hpbGRyZW5bY29sdW1uSW5kZXhdLnJvd3NwYW4gKyAxIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZUVudHJ5WzFdLmNvbmNhdCh0YWJsZS5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Um93KSkuY29uY2F0KGNvbHVtbkluZGV4KVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBuZXdSb3c7XG59XG5cbi8qKlxuICogSW5zZXJ0IGEgbmV3IHJvdyBpbiBjdXJyZW50IHRhYmxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRSb3coXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIGNvdW50ID0gMSxcbiAgICBhdD86IG51bWJlciAvLyByb3cgaW5kZXhcbikge1xuICAgIGNvbnN0IHsgdGFibGVFbnRyeSwgaW5zZXJ0Um93SW5kZXggfSA9IGdldEluc2VydFJvd1N0YXRlKG9wdHMsIGVkaXRvciwgY291bnQsIGF0KTtcbiAgICBjb25zdCBuZXdSb3dzOiBUYWJsZVJvd0VsZW1lbnRbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IG5ld1JvdyA9IHBhY2tOZXdSb3cob3B0cywgZWRpdG9yLCBjb3VudCwgYXQpO1xuICAgICAgICBuZXdSb3dzLnB1c2gobmV3Um93KTtcbiAgICB9XG5cbiAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgbmV3Um93cywge1xuICAgICAgICBhdDogdGFibGVFbnRyeVsxXS5jb25jYXQoaW5zZXJ0Um93SW5kZXgpXG4gICAgfSk7XG59XG4iXX0=
@@ -1,15 +0,0 @@
1
- import * as TheTransforms from '../../../transforms';
2
- import { createTable } from '../utils';
3
- /**
4
- * Insert a new table
5
- */
6
- export function insertTable(opts, editor, rows = 3, columns = 3, getCellContent) {
7
- const { selection } = editor;
8
- if (!selection?.anchor) {
9
- return;
10
- }
11
- // Create the table node
12
- const table = createTable(opts, columns, rows, getCellContent);
13
- TheTransforms.insertElements(editor, table, false);
14
- }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9pbnNlcnQtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLGFBQWEsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXZDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FDdkIsSUFBa0IsRUFDbEIsTUFBYyxFQUNkLE9BQWUsQ0FBQyxFQUNoQixVQUFrQixDQUFDLEVBQ25CLGNBQXdEO0lBRXhELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNyQixPQUFPO0lBQ1gsQ0FBQztJQUNELHdCQUF3QjtJQUN4QixNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDL0QsYUFBYSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIE5vZGUgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgKiBhcyBUaGVUcmFuc2Zvcm1zIGZyb20gJy4uLy4uLy4uL3RyYW5zZm9ybXMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGFibGUgfSBmcm9tICcuLi91dGlscyc7XG5cbi8qKlxuICogSW5zZXJ0IGEgbmV3IHRhYmxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRUYWJsZShcbiAgICBvcHRzOiBUYWJsZU9wdGlvbnMsXG4gICAgZWRpdG9yOiBFZGl0b3IsXG4gICAgcm93czogbnVtYmVyID0gMyxcbiAgICBjb2x1bW5zOiBudW1iZXIgPSAzLFxuICAgIGdldENlbGxDb250ZW50PzogKGNvbHVtbjogbnVtYmVyLCByb3c6IG51bWJlcikgPT4gTm9kZVtdXG4pIHtcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xuICAgIGlmICghc2VsZWN0aW9uPy5hbmNob3IpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBDcmVhdGUgdGhlIHRhYmxlIG5vZGVcbiAgICBjb25zdCB0YWJsZSA9IGNyZWF0ZVRhYmxlKG9wdHMsIGNvbHVtbnMsIHJvd3MsIGdldENlbGxDb250ZW50KTtcbiAgICBUaGVUcmFuc2Zvcm1zLmluc2VydEVsZW1lbnRzKGVkaXRvciwgdGFibGUsIGZhbHNlKTtcbn1cbiJdfQ==
@@ -1,91 +0,0 @@
1
- import { isKeyHotkey } from 'is-hotkey';
2
- import { Editor, Path } from 'slate';
3
- import { ELEMENT_TO_COMPONENT } from 'slate-angular';
4
- import * as TheQueries from '../../../queries';
5
- import { isMobileMode } from '../../../utils';
6
- import { TableSelectCellDirection } from '../table.types';
7
- import { createTablePosition } from '../utils';
8
- import { calculateAnchorPositionInCell } from '../utils/calc-anchor-position';
9
- const keyShiftDir = {
10
- 'shift+up': TableSelectCellDirection.up,
11
- 'shift+right': TableSelectCellDirection.right,
12
- 'shift+down': TableSelectCellDirection.down,
13
- 'shift+left': TableSelectCellDirection.left
14
- };
15
- const getHotKey = (e) => {
16
- const hotkey = ['shift+up', 'shift+right', 'shift+down', 'shift+left'].find(key => isKeyHotkey(key, e));
17
- return hotkey;
18
- };
19
- /**
20
- * 处理单元格内 shift + up/down/left/right 行为
21
- * @param editor 编辑器对象
22
- * @param e 键盘事件对象
23
- */
24
- export const moveSelectionFromCell = (editor, e) => {
25
- const hotkey = getHotKey(e);
26
- if (!hotkey) {
27
- return;
28
- }
29
- const { selection } = editor;
30
- const cursor = selection.focus;
31
- const tablePosition = createTablePosition(editor);
32
- const tableComponent = ELEMENT_TO_COMPONENT.get(tablePosition.table);
33
- const tableStore = tableComponent.tableStore;
34
- const selectedCells = tableStore.getSelectedCellPositions();
35
- const endPosition = createTablePosition(editor, cursor.path);
36
- const cellPath = endPosition.cellEntry[1];
37
- const isStart = Editor.isStart(editor, selection.focus, cellPath);
38
- const isEnd = Editor.isEnd(editor, selection.focus, cellPath);
39
- const isUp = isKeyHotkey('shift+up', e);
40
- const isDown = isKeyHotkey('shift+down', e);
41
- const isLeft = isKeyHotkey('shift+left', e);
42
- const isRight = isKeyHotkey('shift+right', e);
43
- // 当前已经没有选中单元格
44
- if (selectedCells.length === 0) {
45
- if (isUp || isDown) {
46
- const cellStartPath = Editor.start(editor, cellPath).path;
47
- const cellEndPath = Editor.end(editor, cellPath).path;
48
- const { isFirstLine, isLastLine } = calculateAnchorPositionInCell(editor, cursor);
49
- const [, anchorBlockPath] = TheQueries.anchorBlockEntry(editor, cursor);
50
- const anchorPosition = createTablePosition(editor, selection.anchor.path);
51
- const startCellPosition = createTablePosition(editor, cellStartPath);
52
- const endCellPosition = createTablePosition(editor, cellEndPath);
53
- const isSameCellByStart = Path.equals(anchorPosition.cellEntry[1], startCellPosition.cellEntry[1]);
54
- const isSameCellByEnd = Path.equals(anchorPosition.cellEntry[1], endCellPosition.cellEntry[1]);
55
- cellStartPath.pop();
56
- cellEndPath.pop();
57
- // 同一单元格内,当前光标不在首行或当前是跨行,则执行默认逻辑
58
- if (isUp && isSameCellByStart && (!isFirstLine || !Path.equals(anchorBlockPath, cellStartPath))) {
59
- return;
60
- }
61
- // 同一单元格内,当前光标不在最后一行或当前是跨行,则执行默认逻辑
62
- if (isDown && isSameCellByEnd && (!isLastLine || !Path.equals(anchorBlockPath, cellEndPath))) {
63
- return;
64
- }
65
- }
66
- if (isLeft) {
67
- const beforePoint = Editor.before(editor, selection);
68
- const beforePosition = beforePoint && createTablePosition(editor, beforePoint.path);
69
- // 如果不是单元格或不在起始位置,则不处理
70
- if (!beforePosition?.cell || !isStart) {
71
- return;
72
- }
73
- }
74
- if (isRight) {
75
- const afterPoint = Editor.after(editor, selection);
76
- const afterPosition = afterPoint && createTablePosition(editor, afterPoint.path);
77
- // 如果不是单元格或不是单元格尾部,则不处理
78
- if (!afterPosition?.cell || !isEnd) {
79
- return;
80
- }
81
- }
82
- }
83
- tableStore.selectCellInDirection(keyShiftDir[hotkey]);
84
- setTimeout(() => {
85
- const tableService = tableComponent.tableService;
86
- const isMobile = isMobileMode(editor);
87
- const focusElement = tableComponent.tbodyNativeElement?.querySelector('.focused-cell') || tableStore.focusCellElement;
88
- tableService.afterSelectedCells(focusElement, tableComponent.element, isMobile);
89
- });
90
- };
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1zZWxlY3Rpb24tZnJvbS1jZWxsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9tb3ZlLXNlbGVjdGlvbi1mcm9tLWNlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxLQUFLLFVBQVUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQy9DLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlFLE1BQU0sV0FBVyxHQUFHO0lBQ2hCLFVBQVUsRUFBRSx3QkFBd0IsQ0FBQyxFQUFFO0lBQ3ZDLGFBQWEsRUFBRSx3QkFBd0IsQ0FBQyxLQUFLO0lBQzdDLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO0lBQzNDLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO0NBQzlDLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQWdCLEVBQUUsRUFBRTtJQUNuQyxNQUFNLE1BQU0sR0FBRyxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RyxPQUFPLE1BQU0sQ0FB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LENBQUM7Z0JBQ2pDLE9BQU87WUFDWCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxVQUFVLENBQUMscUJBQXFCLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFdEQsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNaLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFDakQsTUFBTSxRQUFRLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sWUFBWSxHQUNiLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLENBQUMsZUFBZSxDQUEwQixJQUFJLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvSCxZQUFZLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEYsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0tleUhvdGtleSB9IGZyb20gJ2lzLWhvdGtleSc7XG5pbXBvcnQgeyBFZGl0b3IsIFBhdGggfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBFTEVNRU5UX1RPX0NPTVBPTkVOVCB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgVGhlRWRpdG9yIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBUaGVRdWVyaWVzIGZyb20gJy4uLy4uLy4uL3F1ZXJpZXMnO1xuaW1wb3J0IHsgaXNNb2JpbGVNb2RlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgVGhlVGFibGUgfSBmcm9tICcuLi9jb21wb25lbnRzL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVNlbGVjdENlbGxEaXJlY3Rpb24gfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2FsY3VsYXRlQW5jaG9yUG9zaXRpb25JbkNlbGwgfSBmcm9tICcuLi91dGlscy9jYWxjLWFuY2hvci1wb3NpdGlvbic7XG5cbmNvbnN0IGtleVNoaWZ0RGlyID0ge1xuICAgICdzaGlmdCt1cCc6IFRhYmxlU2VsZWN0Q2VsbERpcmVjdGlvbi51cCxcbiAgICAnc2hpZnQrcmlnaHQnOiBUYWJsZVNlbGVjdENlbGxEaXJlY3Rpb24ucmlnaHQsXG4gICAgJ3NoaWZ0K2Rvd24nOiBUYWJsZVNlbGVjdENlbGxEaXJlY3Rpb24uZG93bixcbiAgICAnc2hpZnQrbGVmdCc6IFRhYmxlU2VsZWN0Q2VsbERpcmVjdGlvbi5sZWZ0XG59O1xuXG5jb25zdCBnZXRIb3RLZXkgPSAoZTogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgIGNvbnN0IGhvdGtleSA9IFsnc2hpZnQrdXAnLCAnc2hpZnQrcmlnaHQnLCAnc2hpZnQrZG93bicsICdzaGlmdCtsZWZ0J10uZmluZChrZXkgPT4gaXNLZXlIb3RrZXkoa2V5LCBlKSk7XG4gICAgcmV0dXJuIGhvdGtleTtcbn07XG5cbi8qKlxuICog5aSE55CG5Y2V5YWD5qC85YaFIHNoaWZ0ICsgdXAvZG93bi9sZWZ0L3JpZ2h0IOihjOS4ulxuICogQHBhcmFtIGVkaXRvciDnvJbovpHlmajlr7nosaFcbiAqIEBwYXJhbSBlIOmUruebmOS6i+S7tuWvueixoVxuICovXG5leHBvcnQgY29uc3QgbW92ZVNlbGVjdGlvbkZyb21DZWxsID0gKGVkaXRvcjogVGhlRWRpdG9yLCBlOiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgY29uc3QgaG90a2V5ID0gZ2V0SG90S2V5KGUpO1xuICAgIGlmICghaG90a2V5KSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xuICAgIGNvbnN0IGN1cnNvciA9IHNlbGVjdGlvbi5mb2N1cztcbiAgICBjb25zdCB0YWJsZVBvc2l0aW9uID0gY3JlYXRlVGFibGVQb3NpdGlvbihlZGl0b3IpO1xuICAgIGNvbnN0IHRhYmxlQ29tcG9uZW50ID0gRUxFTUVOVF9UT19DT01QT05FTlQuZ2V0KHRhYmxlUG9zaXRpb24udGFibGUpIGFzIFRoZVRhYmxlO1xuICAgIGNvbnN0IHRhYmxlU3RvcmUgPSB0YWJsZUNvbXBvbmVudC50YWJsZVN0b3JlO1xuICAgIGNvbnN0IHNlbGVjdGVkQ2VsbHMgPSB0YWJsZVN0b3JlLmdldFNlbGVjdGVkQ2VsbFBvc2l0aW9ucygpO1xuICAgIGNvbnN0IGVuZFBvc2l0aW9uID0gY3JlYXRlVGFibGVQb3NpdGlvbihlZGl0b3IsIGN1cnNvci5wYXRoKTtcbiAgICBjb25zdCBjZWxsUGF0aCA9IGVuZFBvc2l0aW9uLmNlbGxFbnRyeVsxXTtcbiAgICBjb25zdCBpc1N0YXJ0ID0gRWRpdG9yLmlzU3RhcnQoZWRpdG9yLCBzZWxlY3Rpb24uZm9jdXMsIGNlbGxQYXRoKTtcbiAgICBjb25zdCBpc0VuZCA9IEVkaXRvci5pc0VuZChlZGl0b3IsIHNlbGVjdGlvbi5mb2N1cywgY2VsbFBhdGgpO1xuICAgIGNvbnN0IGlzVXAgPSBpc0tleUhvdGtleSgnc2hpZnQrdXAnLCBlKTtcbiAgICBjb25zdCBpc0Rvd24gPSBpc0tleUhvdGtleSgnc2hpZnQrZG93bicsIGUpO1xuICAgIGNvbnN0IGlzTGVmdCA9IGlzS2V5SG90a2V5KCdzaGlmdCtsZWZ0JywgZSk7XG4gICAgY29uc3QgaXNSaWdodCA9IGlzS2V5SG90a2V5KCdzaGlmdCtyaWdodCcsIGUpO1xuXG4gICAgLy8g5b2T5YmN5bey57uP5rKh5pyJ6YCJ5Lit5Y2V5YWD5qC8XG4gICAgaWYgKHNlbGVjdGVkQ2VsbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGlmIChpc1VwIHx8IGlzRG93bikge1xuICAgICAgICAgICAgY29uc3QgY2VsbFN0YXJ0UGF0aCA9IEVkaXRvci5zdGFydChlZGl0b3IsIGNlbGxQYXRoKS5wYXRoO1xuICAgICAgICAgICAgY29uc3QgY2VsbEVuZFBhdGggPSBFZGl0b3IuZW5kKGVkaXRvciwgY2VsbFBhdGgpLnBhdGg7XG4gICAgICAgICAgICBjb25zdCB7IGlzRmlyc3RMaW5lLCBpc0xhc3RMaW5lIH0gPSBjYWxjdWxhdGVBbmNob3JQb3NpdGlvbkluQ2VsbChlZGl0b3IsIGN1cnNvcik7XG4gICAgICAgICAgICBjb25zdCBbLCBhbmNob3JCbG9ja1BhdGhdID0gVGhlUXVlcmllcy5hbmNob3JCbG9ja0VudHJ5KGVkaXRvciwgY3Vyc29yKTtcbiAgICAgICAgICAgIGNvbnN0IGFuY2hvclBvc2l0aW9uID0gY3JlYXRlVGFibGVQb3NpdGlvbihlZGl0b3IsIHNlbGVjdGlvbi5hbmNob3IucGF0aCk7XG4gICAgICAgICAgICBjb25zdCBzdGFydENlbGxQb3NpdGlvbiA9IGNyZWF0ZVRhYmxlUG9zaXRpb24oZWRpdG9yLCBjZWxsU3RhcnRQYXRoKTtcbiAgICAgICAgICAgIGNvbnN0IGVuZENlbGxQb3NpdGlvbiA9IGNyZWF0ZVRhYmxlUG9zaXRpb24oZWRpdG9yLCBjZWxsRW5kUGF0aCk7XG4gICAgICAgICAgICBjb25zdCBpc1NhbWVDZWxsQnlTdGFydCA9IFBhdGguZXF1YWxzKGFuY2hvclBvc2l0aW9uLmNlbGxFbnRyeVsxXSwgc3RhcnRDZWxsUG9zaXRpb24uY2VsbEVudHJ5WzFdKTtcbiAgICAgICAgICAgIGNvbnN0IGlzU2FtZUNlbGxCeUVuZCA9IFBhdGguZXF1YWxzKGFuY2hvclBvc2l0aW9uLmNlbGxFbnRyeVsxXSwgZW5kQ2VsbFBvc2l0aW9uLmNlbGxFbnRyeVsxXSk7XG5cbiAgICAgICAgICAgIGNlbGxTdGFydFBhdGgucG9wKCk7XG4gICAgICAgICAgICBjZWxsRW5kUGF0aC5wb3AoKTtcblxuICAgICAgICAgICAgLy8g5ZCM5LiA5Y2V5YWD5qC85YaF77yM5b2T5YmN5YWJ5qCH5LiN5Zyo6aaW6KGM5oiW5b2T5YmN5piv6Leo6KGM77yM5YiZ5omn6KGM6buY6K6k6YC76L6RXG4gICAgICAgICAgICBpZiAoaXNVcCAmJiBpc1NhbWVDZWxsQnlTdGFydCAmJiAoIWlzRmlyc3RMaW5lIHx8ICFQYXRoLmVxdWFscyhhbmNob3JCbG9ja1BhdGgsIGNlbGxTdGFydFBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8g5ZCM5LiA5Y2V5YWD5qC85YaF77yM5b2T5YmN5YWJ5qCH5LiN5Zyo5pyA5ZCO5LiA6KGM5oiW5b2T5YmN5piv6Leo6KGM77yM5YiZ5omn6KGM6buY6K6k6YC76L6RXG4gICAgICAgICAgICBpZiAoaXNEb3duICYmIGlzU2FtZUNlbGxCeUVuZCAmJiAoIWlzTGFzdExpbmUgfHwgIVBhdGguZXF1YWxzKGFuY2hvckJsb2NrUGF0aCwgY2VsbEVuZFBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0xlZnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGJlZm9yZVBvaW50ID0gRWRpdG9yLmJlZm9yZShlZGl0b3IsIHNlbGVjdGlvbik7XG4gICAgICAgICAgICBjb25zdCBiZWZvcmVQb3NpdGlvbiA9IGJlZm9yZVBvaW50ICYmIGNyZWF0ZVRhYmxlUG9zaXRpb24oZWRpdG9yLCBiZWZvcmVQb2ludC5wYXRoKTtcbiAgICAgICAgICAgIC8vIOWmguaenOS4jeaYr+WNleWFg+agvOaIluS4jeWcqOi1t+Wni+S9jee9ru+8jOWImeS4jeWkhOeQhlxuICAgICAgICAgICAgaWYgKCFiZWZvcmVQb3NpdGlvbj8uY2VsbCB8fCAhaXNTdGFydCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc1JpZ2h0KSB7XG4gICAgICAgICAgICBjb25zdCBhZnRlclBvaW50ID0gRWRpdG9yLmFmdGVyKGVkaXRvciwgc2VsZWN0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IGFmdGVyUG9zaXRpb24gPSBhZnRlclBvaW50ICYmIGNyZWF0ZVRhYmxlUG9zaXRpb24oZWRpdG9yLCBhZnRlclBvaW50LnBhdGgpO1xuICAgICAgICAgICAgLy8g5aaC5p6c5LiN5piv5Y2V5YWD5qC85oiW5LiN5piv5Y2V5YWD5qC85bC+6YOo77yM5YiZ5LiN5aSE55CGXG4gICAgICAgICAgICBpZiAoIWFmdGVyUG9zaXRpb24/LmNlbGwgfHwgIWlzRW5kKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGVTdG9yZS5zZWxlY3RDZWxsSW5EaXJlY3Rpb24oa2V5U2hpZnREaXJbaG90a2V5XSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgY29uc3QgdGFibGVTZXJ2aWNlID0gdGFibGVDb21wb25lbnQudGFibGVTZXJ2aWNlO1xuICAgICAgICBjb25zdCBpc01vYmlsZSA9IGlzTW9iaWxlTW9kZShlZGl0b3IpO1xuICAgICAgICBjb25zdCBmb2N1c0VsZW1lbnQgPVxuICAgICAgICAgICAgKHRhYmxlQ29tcG9uZW50LnRib2R5TmF0aXZlRWxlbWVudD8ucXVlcnlTZWxlY3RvcignLmZvY3VzZWQtY2VsbCcpIGFzIEhUTUxUYWJsZUNlbGxFbGVtZW50KSB8fCB0YWJsZVN0b3JlLmZvY3VzQ2VsbEVsZW1lbnQ7XG4gICAgICAgIHRhYmxlU2VydmljZS5hZnRlclNlbGVjdGVkQ2VsbHMoZm9jdXNFbGVtZW50LCB0YWJsZUNvbXBvbmVudC5lbGVtZW50LCBpc01vYmlsZSk7XG4gICAgfSk7XG59O1xuIl19
@@ -1,51 +0,0 @@
1
- import { Editor, Transforms } from 'slate';
2
- import { clearCell } from './clear-cell';
3
- import { removeColumns } from '../utils/remove-columns';
4
- import { createTablePosition } from '../utils/create-table-position';
5
- export function removeColumn(opts, editor, selectColIndex) {
6
- const { selection } = editor;
7
- const { anchor: { path } } = selection;
8
- const tablePosition = createTablePosition(editor, path);
9
- const { tableEntry, table, row, cellEntry: [cellNode, cellPath] } = tablePosition;
10
- const rows = tableEntry[0].children;
11
- selectColIndex = selectColIndex === undefined ? [...cellPath].pop() : selectColIndex;
12
- Editor.withoutNormalizing(editor, () => {
13
- table.children.map((row, rowIndex) => {
14
- const dirtyCell = row.children.find((cell, columnIndex) => !cell.hidden && columnIndex < selectColIndex && cell.colspan && cell.colspan + columnIndex > selectColIndex);
15
- if (dirtyCell) {
16
- const colspan = dirtyCell.colspan - 1 > 1 ? dirtyCell.colspan - 1 : null;
17
- Transforms.setNodes(editor, { colspan }, {
18
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
19
- });
20
- }
21
- const removeCell = row.children[selectColIndex];
22
- const nextCell = row.children[selectColIndex + 1];
23
- if (nextCell && nextCell.hidden && removeCell.colspan > 1) {
24
- const colspan = removeCell.colspan - 1 > 1 ? removeCell.colspan - 1 : null;
25
- Transforms.setNodes(editor, { colspan, rowspan: removeCell.rowspan || null, hidden: null }, { at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(nextCell)) });
26
- }
27
- });
28
- });
29
- // Remove the cell from every row
30
- Editor.withoutNormalizing(editor, () => {
31
- if (tablePosition.getWidth() > 1) {
32
- rows.forEach((row, rowIndex) => {
33
- const at = tableEntry[1].concat([rowIndex, selectColIndex]);
34
- Transforms.removeNodes(editor, { at });
35
- });
36
- if (table.columns) {
37
- Transforms.setNodes(editor, { columns: removeColumns(table, table.columns.length - 1, selectColIndex) }, { at: tableEntry[1] });
38
- }
39
- }
40
- else {
41
- // If last column, clear text in cells instead
42
- rows.forEach((row, rowIndex) => {
43
- row.children.forEach((cell, cellIndex) => {
44
- const at = tableEntry[1].concat([rowIndex, cellIndex]);
45
- clearCell(opts, editor, [cell, at]);
46
- });
47
- });
48
- }
49
- });
50
- }
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUVwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRSxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLGNBQXVCO0lBQ3BGLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsTUFBTSxFQUNGLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxFQUNuQixHQUFHLFNBQVMsQ0FBQztJQUVkLE1BQU0sYUFBYSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RCxNQUFNLEVBQ0YsVUFBVSxFQUNWLEtBQUssRUFDTCxHQUFHLEVBQ0gsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxFQUNsQyxHQUFHLGFBQWEsQ0FBQztJQUVsQixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBcUIsQ0FBQztJQUVqRCxjQUFjLEdBQUcsY0FBYyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFFckYsTUFBTSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7UUFDbkMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFH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Q0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ0osOENBQThDO1lBQzlDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUU7Z0JBQzNCLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUFFO29CQUNyQyxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ3ZELFNBQVMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsSUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ25ELENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGNsZWFyQ2VsbCB9IGZyb20gJy4vY2xlYXItY2VsbCc7XG5pbXBvcnQgeyByZW1vdmVDb2x1bW5zIH0gZnJvbSAnLi4vdXRpbHMvcmVtb3ZlLWNvbHVtbnMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMvY3JlYXRlLXRhYmxlLXBvc2l0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNvbHVtbihvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBzZWxlY3RDb2xJbmRleD86IG51bWJlcikge1xuICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3I7XG4gICAgY29uc3Qge1xuICAgICAgICBhbmNob3I6IHsgcGF0aCB9XG4gICAgfSA9IHNlbGVjdGlvbjtcblxuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBjcmVhdGVUYWJsZVBvc2l0aW9uKGVkaXRvciwgcGF0aCk7XG4gICAgY29uc3Qge1xuICAgICAgICB0YWJsZUVudHJ5LFxuICAgICAgICB0YWJsZSxcbiAgICAgICAgcm93LFxuICAgICAgICBjZWxsRW50cnk6IFtjZWxsTm9kZSwgY2VsbFBhdGhdXG4gICAgfSA9IHRhYmxlUG9zaXRpb247XG5cbiAgICBjb25zdCByb3dzID0gdGFibGVFbnRyeVswXS5jaGlsZHJlbiBhcyBFbGVtZW50W107XG5cbiAgICBzZWxlY3RDb2xJbmRleCA9IHNlbGVjdENvbEluZGV4ID09PSB1bmRlZmluZWQgPyBbLi4uY2VsbFBhdGhdLnBvcCgpIDogc2VsZWN0Q29sSW5kZXg7XG5cbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICB0YWJsZS5jaGlsZHJlbi5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRpcnR5Q2VsbCA9IHJvdy5jaGlsZHJlbi5maW5kKFxuICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgICAgICAgICAgICAhY2VsbC5oaWRkZW4gJiYgY29sdW1uSW5kZXggPCBzZWxlY3RDb2xJbmRleCAmJiBjZWxsLmNvbHNwYW4gJiYgY2VsbC5jb2xzcGFuICsgY29sdW1uSW5kZXggPiBzZWxlY3RDb2xJbmRleFxuICAgICAgICAgICAgKSBhcyBUYWJsZUNlbGxFbGVtZW50O1xuICAgICAgICAgICAgaWYgKGRpcnR5Q2VsbCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbHNwYW4gPSBkaXJ0eUNlbGwuY29sc3BhbiAtIDEgPiAxID8gZGlydHlDZWxsLmNvbHNwYW4gLSAxIDogbnVsbDtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHsgY29sc3BhbiB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcmVtb3ZlQ2VsbCA9IHJvdy5jaGlsZHJlbltzZWxlY3RDb2xJbmRleF0gYXMgVGFibGVDZWxsRWxlbWVudDtcbiAgICAgICAgICAgIGNvbnN0IG5leHRDZWxsID0gcm93LmNoaWxkcmVuW3NlbGVjdENvbEluZGV4ICsgMV0gYXMgVGFibGVDZWxsRWxlbWVudDtcbiAgICAgICAgICAgIGlmIChuZXh0Q2VsbCAmJiBuZXh0Q2VsbC5oaWRkZW4gJiYgcmVtb3ZlQ2VsbC5jb2xzcGFuID4gMSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbHNwYW4gPSByZW1vdmVDZWxsLmNvbHNwYW4gLSAxID4gMSA/IHJlbW92ZUNlbGwuY29sc3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXG4gICAgICAgICAgICAgICAgICAgIGVkaXRvcixcbiAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuLCByb3dzcGFuOiByZW1vdmVDZWxsLnJvd3NwYW4gfHwgbnVsbCwgaGlkZGVuOiBudWxsIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChyb3cuY2hpbGRyZW4uaW5kZXhPZihuZXh0Q2VsbCkpIH1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIC8vIFJlbW92ZSB0aGUgY2VsbCBmcm9tIGV2ZXJ5IHJvd1xuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XG4gICAgICAgIGlmICh0YWJsZVBvc2l0aW9uLmdldFdpZHRoKCkgPiAxKSB7XG4gICAgICAgICAgICByb3dzLmZvckVhY2goKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhdCA9IHRhYmxlRW50cnlbMV0uY29uY2F0KFtyb3dJbmRleCwgc2VsZWN0Q29sSW5kZXhdKTtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdCB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHRhYmxlLmNvbHVtbnMpIHtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHsgY29sdW1uczogcmVtb3ZlQ29sdW1ucyh0YWJsZSwgdGFibGUuY29sdW1ucy5sZW5ndGggLSAxLCBzZWxlY3RDb2xJbmRleCkgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBhdDogdGFibGVFbnRyeVsxXSB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmIGxhc3QgY29sdW1uLCBjbGVhciB0ZXh0IGluIGNlbGxzIGluc3RlYWRcbiAgICAgICAgICAgIHJvd3MuZm9yRWFjaCgocm93LCByb3dJbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIHJvdy5jaGlsZHJlbi5mb3JFYWNoKChjZWxsLCBjZWxsSW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChbcm93SW5kZXgsIGNlbGxJbmRleF0pO1xuICAgICAgICAgICAgICAgICAgICBjbGVhckNlbGwob3B0cywgZWRpdG9yLCBbY2VsbCBhcyBFbGVtZW50LCBhdF0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbiJdfQ==
@@ -1,48 +0,0 @@
1
- import { Editor, Transforms } from 'slate';
2
- import { createTablePosition } from '../utils/create-table-position';
3
- import { clearCell } from './clear-cell';
4
- export function removeRow(opts, editor, selectRowIndex) {
5
- const tablePosition = createTablePosition(editor);
6
- const { tableEntry, table, rowEntry: [rowNode, rowPath] } = tablePosition;
7
- selectRowIndex = selectRowIndex === undefined ? [...rowPath].pop() : selectRowIndex;
8
- const at = tableEntry[1].concat(selectRowIndex);
9
- Editor.withoutNormalizing(editor, () => {
10
- table.children.map((row, rowIndex) => {
11
- if (rowIndex < selectRowIndex) {
12
- const dirtyCells = row.children.filter((cell, columnIndex) => !cell.hidden && cell.rowspan && cell.rowspan + rowIndex > selectRowIndex);
13
- if (dirtyCells.length) {
14
- dirtyCells.map((dirtyCell) => {
15
- const rowspan = dirtyCell.rowspan - 1 > 1 ? dirtyCell.rowspan - 1 : null;
16
- Transforms.setNodes(editor, { rowspan }, {
17
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
18
- });
19
- });
20
- }
21
- }
22
- });
23
- const removeRow = table.children[selectRowIndex];
24
- const nextRow = table.children[selectRowIndex + 1];
25
- if (nextRow) {
26
- removeRow.children.map((cell, cellIndex) => {
27
- const nextCell = nextRow.children[cellIndex];
28
- if (nextCell && cell.rowspan > 1 && nextCell.hidden) {
29
- const rowspan = cell.rowspan - 1 > 1 ? cell.rowspan - 1 : null;
30
- Transforms.setNodes(editor, { colspan: cell.colspan || null, rowspan, hidden: null }, { at: tablePosition.tableEntry[1].concat(selectRowIndex + 1).concat(cellIndex) });
31
- }
32
- });
33
- }
34
- });
35
- // Update table by removing the row
36
- if (tablePosition.getHeight() > 1) {
37
- Transforms.removeNodes(editor, { at });
38
- }
39
- else {
40
- // If last remaining row, clear it instead
41
- Editor.withoutNormalizing(editor, () => {
42
- rowNode.children.forEach((cell, cellIndex) => {
43
- clearCell(opts, editor, [cell, at.concat(cellIndex)]);
44
- });
45
- });
46
- }
47
- }
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE1BQU0sVUFBVSxTQUFTLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsY0FBdUI7SUFDakYsTUFBTSxhQUFhLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsTUFBTSxFQUNGLFVBQVUsRUFDVixLQUFLLEVBQ0wsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUMvQixHQUFHLGFBQWEsQ0FBQztJQUVsQixjQUFjLEdBQUcsY0FBYyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDcEYsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVoRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNqQyxJQUFJLFFBQVEsR0FBRyxjQUFjLEVBQUUsQ0FBQztnQkFDNUIsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ2xDLENBQUMsSUFBc0IsRUFBRSxXQUFtQixFQUFFLEVBQUUs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RWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCwgVGFibGVSb3dFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IGNyZWF0ZVRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscy9jcmVhdGUtdGFibGUtcG9zaXRpb24nO1xuaW1wb3J0IHsgY2xlYXJDZWxsIH0gZnJvbSAnLi9jbGVhci1jZWxsJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVJvdyhvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBzZWxlY3RSb3dJbmRleD86IG51bWJlcikge1xuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBjcmVhdGVUYWJsZVBvc2l0aW9uKGVkaXRvcik7XG4gICAgY29uc3Qge1xuICAgICAgICB0YWJsZUVudHJ5LFxuICAgICAgICB0YWJsZSxcbiAgICAgICAgcm93RW50cnk6IFtyb3dOb2RlLCByb3dQYXRoXVxuICAgIH0gPSB0YWJsZVBvc2l0aW9uO1xuXG4gICAgc2VsZWN0Um93SW5kZXggPSBzZWxlY3RSb3dJbmRleCA9PT0gdW5kZWZpbmVkID8gWy4uLnJvd1BhdGhdLnBvcCgpIDogc2VsZWN0Um93SW5kZXg7XG4gICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChzZWxlY3RSb3dJbmRleCk7XG5cbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICB0YWJsZS5jaGlsZHJlbi5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChyb3dJbmRleCA8IHNlbGVjdFJvd0luZGV4KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGlydHlDZWxscyA9IHJvdy5jaGlsZHJlbi5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNlbGwucm93c3BhbiAmJiBjZWxsLnJvd3NwYW4gKyByb3dJbmRleCA+IHNlbGVjdFJvd0luZGV4XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAoZGlydHlDZWxscy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlydHlDZWxscy5tYXAoKGRpcnR5Q2VsbDogVGFibGVDZWxsRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c3BhbiA9IGRpcnR5Q2VsbC5yb3dzcGFuIC0gMSA+IDEgPyBkaXJ0eUNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyByb3dzcGFuIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcmVtb3ZlUm93ID0gdGFibGUuY2hpbGRyZW5bc2VsZWN0Um93SW5kZXhdIGFzIFRhYmxlUm93RWxlbWVudDtcbiAgICAgICAgY29uc3QgbmV4dFJvdyA9IHRhYmxlLmNoaWxkcmVuW3NlbGVjdFJvd0luZGV4ICsgMV0gYXMgVGFibGVSb3dFbGVtZW50O1xuICAgICAgICBpZiAobmV4dFJvdykge1xuICAgICAgICAgICAgcmVtb3ZlUm93LmNoaWxkcmVuLm1hcCgoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dENlbGwgPSBuZXh0Um93LmNoaWxkcmVuW2NlbGxJbmRleF07XG4gICAgICAgICAgICAgICAgaWYgKG5leHRDZWxsICYmIGNlbGwucm93c3BhbiA+IDEgJiYgbmV4dENlbGwuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvd3NwYW4gPSBjZWxsLnJvd3NwYW4gLSAxID4gMSA/IGNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuOiBjZWxsLmNvbHNwYW4gfHwgbnVsbCwgcm93c3BhbiwgaGlkZGVuOiBudWxsIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHNlbGVjdFJvd0luZGV4ICsgMSkuY29uY2F0KGNlbGxJbmRleCkgfVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBVcGRhdGUgdGFibGUgYnkgcmVtb3ZpbmcgdGhlIHJvd1xuICAgIGlmICh0YWJsZVBvc2l0aW9uLmdldEhlaWdodCgpID4gMSkge1xuICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBJZiBsYXN0IHJlbWFpbmluZyByb3csIGNsZWFyIGl0IGluc3RlYWRcbiAgICAgICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgICAgIChyb3dOb2RlLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkuZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJDZWxsKG9wdHMsIGVkaXRvciwgW2NlbGwsIGF0LmNvbmNhdChjZWxsSW5kZXgpXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19