@worktile/theia 13.0.0-next.1 → 13.0.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 (626) hide show
  1. package/README.md +11 -11
  2. package/components/color-select/color-select.component.d.ts +32 -32
  3. package/components/color-select/color-select.component.scss +107 -107
  4. package/components/column-resize/column-resize-notifier.d.ts +35 -35
  5. package/components/column-resize/column-resize.directive.d.ts +26 -26
  6. package/components/column-resize/column-resize.module.d.ts +14 -14
  7. package/components/column-resize/event-dispatcher.d.ts +31 -31
  8. package/components/column-resize/overlay-handle.component.d.ts +33 -33
  9. package/components/column-resize/resize-ref.d.ts +25 -25
  10. package/components/column-resize/resizing.store.d.ts +28 -28
  11. package/components/column-resize/selectors.d.ts +3 -3
  12. package/components/contextmenu/contextmenu.component.d.ts +22 -22
  13. package/components/conversion-hint/conversion-hint.component.d.ts +18 -18
  14. package/components/conversion-hint/conversion-hint.component.scss +11 -11
  15. package/components/element/element.component.d.ts +7 -7
  16. package/components/inline-toolbar/inline-toolbar.component.d.ts +26 -26
  17. package/components/nav-split-line/nav-split-line.component.d.ts +13 -13
  18. package/components/table-select/table-select.component.d.ts +20 -20
  19. package/components/table-select/table-select.component.scss +35 -35
  20. package/components/template/template.component.d.ts +15 -15
  21. package/components/text/text.component.d.ts +14 -14
  22. package/components/toolbar/toolbar.component.d.ts +64 -64
  23. package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +33 -33
  24. package/components/toolbar-group/toolbar-group.component.d.ts +33 -33
  25. package/components/toolbar-group/toolbar-group.component.scss +17 -17
  26. package/components/toolbar-item/toolbar-item.component.d.ts +17 -17
  27. package/constants/auto-format-rules.d.ts +2 -2
  28. package/constants/code.d.ts +9 -9
  29. package/constants/color-select.d.ts +14 -14
  30. package/constants/default.d.ts +9 -9
  31. package/constants/error.d.ts +5 -5
  32. package/constants/index.d.ts +5 -5
  33. package/constants/node-types.d.ts +99 -99
  34. package/constants/selector.d.ts +2 -2
  35. package/constants/toolbar.d.ts +17 -17
  36. package/core/create-plugin.d.ts +2 -2
  37. package/core/create-toolbar.d.ts +5 -5
  38. package/core/index.d.ts +4 -4
  39. package/core/toolbar-item/base-toolbar-item.d.ts +29 -29
  40. package/core/utils/combine-plugins.d.ts +2 -2
  41. package/core/utils/flatten-deep-plugins.d.ts +6 -6
  42. package/core/utils/get-plugin-options.d.ts +2 -2
  43. package/core/utils/get-plugin.d.ts +2 -2
  44. package/core/utils/get-plugins.d.ts +2 -2
  45. package/core/utils/index.d.ts +10 -10
  46. package/core/utils/merge-array.d.ts +1 -1
  47. package/core/utils/merge-deep-plugins.d.ts +2 -2
  48. package/core/utils/merge-options.d.ts +2 -2
  49. package/core/utils/nested-structure-by-key.d.ts +2 -2
  50. package/core/utils/plugins-by-key.d.ts +2 -2
  51. package/core/with-theia.d.ts +4 -4
  52. package/custom-types.d.ts +131 -131
  53. package/editor.component.d.ts +92 -92
  54. package/editor.module.d.ts +100 -98
  55. package/esm2020/components/color-select/color-select.component.mjs +108 -108
  56. package/esm2020/components/column-resize/column-resize-notifier.mjs +31 -31
  57. package/esm2020/components/column-resize/column-resize.directive.mjs +98 -98
  58. package/esm2020/components/column-resize/column-resize.module.mjs +32 -32
  59. package/esm2020/components/column-resize/event-dispatcher.mjs +55 -55
  60. package/esm2020/components/column-resize/overlay-handle.component.mjs +139 -139
  61. package/esm2020/components/column-resize/resize-ref.mjs +25 -25
  62. package/esm2020/components/column-resize/resizing.store.mjs +154 -154
  63. package/esm2020/components/column-resize/selectors.mjs +4 -4
  64. package/esm2020/components/contextmenu/contextmenu.component.mjs +61 -61
  65. package/esm2020/components/conversion-hint/conversion-hint.component.mjs +54 -54
  66. package/esm2020/components/element/element.component.mjs +22 -22
  67. package/esm2020/components/inline-toolbar/inline-toolbar.component.mjs +125 -125
  68. package/esm2020/components/nav-split-line/nav-split-line.component.mjs +36 -36
  69. package/esm2020/components/table-select/table-select.component.mjs +49 -49
  70. package/esm2020/components/template/template.component.mjs +62 -62
  71. package/esm2020/components/text/text.component.mjs +57 -57
  72. package/esm2020/components/toolbar/toolbar.component.mjs +241 -241
  73. package/esm2020/components/toolbar-dropdown/toolbar-dropdown.component.mjs +128 -128
  74. package/esm2020/components/toolbar-group/toolbar-group.component.mjs +110 -110
  75. package/esm2020/components/toolbar-item/toolbar-item.component.mjs +60 -60
  76. package/esm2020/constants/auto-format-rules.mjs +166 -166
  77. package/esm2020/constants/code.mjs +88 -88
  78. package/esm2020/constants/color-select.mjs +61 -61
  79. package/esm2020/constants/default.mjs +9 -9
  80. package/esm2020/constants/error.mjs +7 -7
  81. package/esm2020/constants/index.mjs +5 -5
  82. package/esm2020/constants/node-types.mjs +132 -132
  83. package/esm2020/constants/selector.mjs +3 -3
  84. package/esm2020/constants/toolbar.mjs +69 -69
  85. package/esm2020/core/create-plugin.mjs +4 -4
  86. package/esm2020/core/create-toolbar.mjs +55 -55
  87. package/esm2020/core/index.mjs +4 -4
  88. package/esm2020/core/toolbar-item/base-toolbar-item.mjs +89 -89
  89. package/esm2020/core/utils/combine-plugins.mjs +9 -9
  90. package/esm2020/core/utils/flatten-deep-plugins.mjs +18 -18
  91. package/esm2020/core/utils/get-plugin-options.mjs +2 -2
  92. package/esm2020/core/utils/get-plugin.mjs +1 -1
  93. package/esm2020/core/utils/get-plugins.mjs +3 -3
  94. package/esm2020/core/utils/index.mjs +10 -10
  95. package/esm2020/core/utils/merge-array.mjs +17 -17
  96. package/esm2020/core/utils/merge-deep-plugins.mjs +13 -13
  97. package/esm2020/core/utils/merge-options.mjs +19 -19
  98. package/esm2020/core/utils/nested-structure-by-key.mjs +10 -10
  99. package/esm2020/core/utils/plugins-by-key.mjs +9 -9
  100. package/esm2020/core/with-theia.mjs +22 -22
  101. package/esm2020/custom-types.mjs +1 -1
  102. package/esm2020/editor.component.mjs +430 -430
  103. package/esm2020/editor.module.mjs +207 -201
  104. package/esm2020/interfaces/auto-format.mjs +1 -1
  105. package/esm2020/interfaces/editor.mjs +24 -24
  106. package/esm2020/interfaces/element.mjs +1 -1
  107. package/esm2020/interfaces/image.mjs +2 -2
  108. package/esm2020/interfaces/index.mjs +8 -8
  109. package/esm2020/interfaces/plugins/index.mjs +4 -4
  110. package/esm2020/interfaces/plugins/no-infer.mjs +1 -1
  111. package/esm2020/interfaces/plugins/plugin-key.mjs +39 -39
  112. package/esm2020/interfaces/plugins/plugins.mjs +1 -1
  113. package/esm2020/interfaces/plugins/with-override.mjs +1 -1
  114. package/esm2020/interfaces/reset-block-type-plugin-options.mjs +2 -2
  115. package/esm2020/interfaces/toolbar.mjs +11 -11
  116. package/esm2020/interfaces/upload.mjs +1 -1
  117. package/esm2020/interfaces/utility/index.mjs +3 -3
  118. package/esm2020/interfaces/utility/nested-structure-by-key.mjs +1 -1
  119. package/esm2020/interfaces/utility/override-by-key.mjs +1 -1
  120. package/esm2020/interfaces/utility/types.mjs +1 -1
  121. package/esm2020/interfaces/valid-children-types.mjs +35 -35
  122. package/esm2020/interfaces/view-base.mjs +21 -21
  123. package/esm2020/pipes.mjs +42 -42
  124. package/esm2020/plugins/align/align.editor.mjs +46 -46
  125. package/esm2020/plugins/align/align.plugin.mjs +63 -63
  126. package/esm2020/plugins/autoformat/autoformat.plugin.mjs +108 -108
  127. package/esm2020/plugins/autoformat/transforms/auto-format-block.mjs +14 -14
  128. package/esm2020/plugins/autoformat/transforms/auto-format-inline.mjs +77 -77
  129. package/esm2020/plugins/blockquote/blockquote.component.mjs +21 -21
  130. package/esm2020/plugins/blockquote/blockquote.editor.mjs +19 -19
  131. package/esm2020/plugins/blockquote/blockquote.plugin.mjs +70 -70
  132. package/esm2020/plugins/code/code.component.mjs +240 -240
  133. package/esm2020/plugins/code/code.editor.mjs +47 -47
  134. package/esm2020/plugins/code/code.plugin.mjs +41 -41
  135. package/esm2020/plugins/color/color.editor.mjs +43 -43
  136. package/esm2020/plugins/color/color.plugin.mjs +27 -27
  137. package/esm2020/plugins/color/toolbar-item.component.mjs +78 -78
  138. package/esm2020/plugins/common/auto-insert-data..mjs +76 -76
  139. package/esm2020/plugins/common/block-card.plugin.mjs +286 -286
  140. package/esm2020/plugins/common/get-fragment.plugin.mjs +23 -23
  141. package/esm2020/plugins/common/history.plugin.mjs +30 -30
  142. package/esm2020/plugins/common/move-selection.plugin.mjs +89 -89
  143. package/esm2020/plugins/common/remove-empty.plugin.mjs +59 -59
  144. package/esm2020/plugins/common/remove-void.plugin.mjs +56 -56
  145. package/esm2020/plugins/common/reset-type.plugin.mjs +34 -34
  146. package/esm2020/plugins/common/transforms.plugin.mjs +17 -17
  147. package/esm2020/plugins/deserializers/deserialize-html.plugin.mjs +38 -38
  148. package/esm2020/plugins/deserializers/deserialize-md.plugin.mjs +121 -121
  149. package/esm2020/plugins/font-size/font-size.editor.mjs +97 -97
  150. package/esm2020/plugins/heading/heading.editor.mjs +53 -53
  151. package/esm2020/plugins/heading/heading.plugin.mjs +84 -84
  152. package/esm2020/plugins/hr/hr.component.mjs +40 -40
  153. package/esm2020/plugins/hr/hr.editor.mjs +7 -7
  154. package/esm2020/plugins/hr/hr.plugin.mjs +41 -41
  155. package/esm2020/plugins/image/image.component.mjs +385 -365
  156. package/esm2020/plugins/image/image.editor.mjs +57 -57
  157. package/esm2020/plugins/image/image.plugin.mjs +56 -56
  158. package/esm2020/plugins/indent/indent.editor.mjs +70 -70
  159. package/esm2020/plugins/indent/indent.plugin.mjs +57 -57
  160. package/esm2020/plugins/indent/on-keydown-indent.mjs +53 -53
  161. package/esm2020/plugins/index.mjs +70 -70
  162. package/esm2020/plugins/inline-code/inline-code.component.mjs +21 -21
  163. package/esm2020/plugins/inline-code/inline-code.editor.mjs +47 -47
  164. package/esm2020/plugins/inline-code/inline-code.plugin.mjs +65 -65
  165. package/esm2020/plugins/link/edit/link-edit.component.mjs +105 -105
  166. package/esm2020/plugins/link/hover/link-hover.component.mjs +36 -36
  167. package/esm2020/plugins/link/link.component.mjs +162 -162
  168. package/esm2020/plugins/link/link.editor.mjs +66 -66
  169. package/esm2020/plugins/link/link.plugin.mjs +58 -58
  170. package/esm2020/plugins/link/link.types.mjs +12 -12
  171. package/esm2020/plugins/list/components/bulleted-list.component.mjs +32 -32
  172. package/esm2020/plugins/list/components/list-item.component.mjs +92 -92
  173. package/esm2020/plugins/list/components/numbered-list.component.mjs +38 -38
  174. package/esm2020/plugins/list/list.editor.mjs +125 -125
  175. package/esm2020/plugins/list/list.plugin.mjs +285 -285
  176. package/esm2020/plugins/list/normalizers/get-list-normalizer.mjs +39 -39
  177. package/esm2020/plugins/list/normalizers/normalize-list-item.mjs +18 -18
  178. package/esm2020/plugins/list/normalizers/normalize-no.mjs +42 -42
  179. package/esm2020/plugins/list/on-key-down-list.mjs +32 -32
  180. package/esm2020/plugins/list/queries/get-list-item-entry.mjs +27 -27
  181. package/esm2020/plugins/list/queries/get-list-item-sublist.mjs +12 -12
  182. package/esm2020/plugins/list/queries/get-list-types.mjs +5 -5
  183. package/esm2020/plugins/list/queries/get-start-list-item.mjs +26 -26
  184. package/esm2020/plugins/list/queries/has-list-in-list-item.mjs +27 -27
  185. package/esm2020/plugins/list/queries/is-in-list.mjs +5 -5
  186. package/esm2020/plugins/list/queries/is-list-nested.mjs +10 -10
  187. package/esm2020/plugins/list/queries/is-list.mjs +5 -5
  188. package/esm2020/plugins/list/queries/is-node-type-list.mjs +4 -4
  189. package/esm2020/plugins/list/queries/is-selection-at-list-item-start.mjs +12 -12
  190. package/esm2020/plugins/list/queries/is-selection-in-same-list-item.mjs +16 -16
  191. package/esm2020/plugins/list/queries/is-single-list-item.mjs +9 -9
  192. package/esm2020/plugins/list/transforms/insert-list-data.mjs +71 -71
  193. package/esm2020/plugins/list/transforms/insert-list-item.mjs +72 -72
  194. package/esm2020/plugins/list/transforms/move-list-item-down.mjs +41 -41
  195. package/esm2020/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.mjs +42 -42
  196. package/esm2020/plugins/list/transforms/move-list-item-sublist-items-to-list.mjs +29 -29
  197. package/esm2020/plugins/list/transforms/move-list-item-up.mjs +77 -77
  198. package/esm2020/plugins/list/transforms/unwrap-list.mjs +9 -9
  199. package/esm2020/plugins/list/types.mjs +2 -2
  200. package/esm2020/plugins/mark/mark.editor.mjs +27 -27
  201. package/esm2020/plugins/mark/mark.plugin.mjs +104 -104
  202. package/esm2020/plugins/node-id/node-id.plugin.mjs +77 -77
  203. package/esm2020/plugins/normalizers/insert-paragraph-nodes.mjs +27 -27
  204. package/esm2020/plugins/normalizers/remove-empty-nodes.mjs +17 -17
  205. package/esm2020/plugins/normalizers/trailing-node.plugin.mjs +32 -32
  206. package/esm2020/plugins/paint-format/paint-format.editor.mjs +122 -122
  207. package/esm2020/plugins/public-api.mjs +15 -15
  208. package/esm2020/plugins/quick-insert/components/quick-insert.component.mjs +95 -95
  209. package/esm2020/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.mjs +79 -79
  210. package/esm2020/plugins/quick-insert/quick-insert.editor.mjs +52 -52
  211. package/esm2020/plugins/quick-insert/quick-insert.plugin.mjs +73 -73
  212. package/esm2020/plugins/soft-break/soft-break.plugin.mjs +35 -35
  213. package/esm2020/plugins/soft-break/soft-break.types.mjs +1 -1
  214. package/esm2020/plugins/table/components/insert-mark/insert-mark.component.mjs +99 -99
  215. package/esm2020/plugins/table/components/row/row.component.mjs +46 -46
  216. package/esm2020/plugins/table/components/table.component.mjs +460 -460
  217. package/esm2020/plugins/table/components/td/td.component.mjs +696 -696
  218. package/esm2020/plugins/table/components/toolbar/table-options.component.mjs +70 -70
  219. package/esm2020/plugins/table/components/toolbar/table-toolbar.component.mjs +158 -158
  220. package/esm2020/plugins/table/table.editor.mjs +182 -182
  221. package/esm2020/plugins/table/table.plugin.mjs +426 -426
  222. package/esm2020/plugins/table/table.service.mjs +102 -102
  223. package/esm2020/plugins/table/table.store.mjs +483 -483
  224. package/esm2020/plugins/table/table.types.mjs +33 -33
  225. package/esm2020/plugins/table/toolbar-item.component.mjs +60 -60
  226. package/esm2020/plugins/table/transforms/clear-cell.mjs +14 -14
  227. package/esm2020/plugins/table/transforms/clear-table-node.mjs +27 -27
  228. package/esm2020/plugins/table/transforms/insert-column.mjs +57 -57
  229. package/esm2020/plugins/table/transforms/insert-row.mjs +42 -42
  230. package/esm2020/plugins/table/transforms/insert-table.mjs +14 -14
  231. package/esm2020/plugins/table/transforms/remove-column.mjs +51 -51
  232. package/esm2020/plugins/table/transforms/remove-row.mjs +50 -50
  233. package/esm2020/plugins/table/transforms/remove-table.mjs +49 -49
  234. package/esm2020/plugins/table/utils/add-columns.mjs +28 -28
  235. package/esm2020/plugins/table/utils/calc-anchor-position.mjs +24 -24
  236. package/esm2020/plugins/table/utils/calc-span.mjs +72 -72
  237. package/esm2020/plugins/table/utils/create-cell.mjs +19 -19
  238. package/esm2020/plugins/table/utils/create-row.mjs +12 -12
  239. package/esm2020/plugins/table/utils/create-table.mjs +13 -13
  240. package/esm2020/plugins/table/utils/get-base-height.mjs +22 -22
  241. package/esm2020/plugins/table/utils/get-select-cell-node.mjs +19 -19
  242. package/esm2020/plugins/table/utils/index.mjs +8 -8
  243. package/esm2020/plugins/table/utils/is-range-in-table.mjs +16 -16
  244. package/esm2020/plugins/table/utils/is-selection-in-table.mjs +11 -11
  245. package/esm2020/plugins/table/utils/is-virtual-key.mjs +12 -12
  246. package/esm2020/plugins/table/utils/merge-cell.mjs +90 -90
  247. package/esm2020/plugins/table/utils/next-path.mjs +5 -5
  248. package/esm2020/plugins/table/utils/normalize-table.mjs +30 -30
  249. package/esm2020/plugins/table/utils/remove-columns.mjs +23 -23
  250. package/esm2020/plugins/table/utils/set-menu-cell-invisibility.mjs +15 -15
  251. package/esm2020/plugins/table/utils/split-cell.mjs +31 -31
  252. package/esm2020/plugins/table/utils/table-position.mjs +242 -242
  253. package/esm2020/plugins/todo-item/todo-item.component.mjs +53 -53
  254. package/esm2020/plugins/todo-item/todo-item.editor.mjs +31 -31
  255. package/esm2020/plugins/todo-item/todo-item.plugin.mjs +78 -78
  256. package/esm2020/plugins/vertical-align/toolbar-item.component.mjs +82 -82
  257. package/esm2020/plugins/vertical-align/vertical-align.editor.mjs +54 -54
  258. package/esm2020/public-api.mjs +23 -23
  259. package/esm2020/queries/anchor-block-entry.mjs +13 -13
  260. package/esm2020/queries/anchor-block.mjs +6 -6
  261. package/esm2020/queries/anchor-inline-entry.mjs +10 -10
  262. package/esm2020/queries/find-descendant.mjs +47 -47
  263. package/esm2020/queries/find-node.mjs +45 -45
  264. package/esm2020/queries/find-path.mjs +28 -28
  265. package/esm2020/queries/get-above-by-type.mjs +13 -13
  266. package/esm2020/queries/get-above.mjs +9 -9
  267. package/esm2020/queries/get-anchor-block-entry.mjs +8 -8
  268. package/esm2020/queries/get-block-above.mjs +10 -10
  269. package/esm2020/queries/get-block-card-above.mjs +10 -10
  270. package/esm2020/queries/get-block-card-cursor.mjs +5 -5
  271. package/esm2020/queries/get-container-blocks.mjs +11 -11
  272. package/esm2020/queries/get-directly-parent.mjs +11 -11
  273. package/esm2020/queries/get-insert-elements-path.mjs +43 -43
  274. package/esm2020/queries/get-last-child-path.mjs +9 -9
  275. package/esm2020/queries/get-last-node.mjs +17 -17
  276. package/esm2020/queries/get-next-sibling-nodes.mjs +17 -17
  277. package/esm2020/queries/get-node.mjs +10 -10
  278. package/esm2020/queries/get-nodes-by-type.mjs +15 -15
  279. package/esm2020/queries/get-nodes.mjs +7 -7
  280. package/esm2020/queries/get-parent.mjs +12 -12
  281. package/esm2020/queries/get-plain-text.mjs +16 -16
  282. package/esm2020/queries/get-plugin-by-toolbar.mjs +12 -12
  283. package/esm2020/queries/get-point-before.mjs +61 -61
  284. package/esm2020/queries/get-point-from-location.mjs +15 -15
  285. package/esm2020/queries/get-previous-path.mjs +9 -9
  286. package/esm2020/queries/get-rang-from-block-start.mjs +16 -16
  287. package/esm2020/queries/get-range-before.mjs +17 -17
  288. package/esm2020/queries/get-selection-marks.mjs +18 -18
  289. package/esm2020/queries/get-selection-nodes-by-type.mjs +29 -29
  290. package/esm2020/queries/get-text.mjs +9 -9
  291. package/esm2020/queries/get-toolbar-disabled.mjs +12 -12
  292. package/esm2020/queries/index.mjs +58 -58
  293. package/esm2020/queries/is-across-blocks.mjs +7 -7
  294. package/esm2020/queries/is-ancestor-empty.mjs +6 -6
  295. package/esm2020/queries/is-ancestor.mjs +3 -3
  296. package/esm2020/queries/is-block-above-empty.mjs +11 -11
  297. package/esm2020/queries/is-block-active.mjs +7 -7
  298. package/esm2020/queries/is-block-card-cursor.mjs +4 -4
  299. package/esm2020/queries/is-block-text-empty-after-selection.mjs +31 -31
  300. package/esm2020/queries/is-collapsed.mjs +7 -7
  301. package/esm2020/queries/is-contain-nested-type.mjs +28 -28
  302. package/esm2020/queries/is-container-type.mjs +2 -2
  303. package/esm2020/queries/is-descendant.mjs +3 -3
  304. package/esm2020/queries/is-empty-content.mjs +14 -14
  305. package/esm2020/queries/is-empty-paragraph-by-path.mjs +7 -7
  306. package/esm2020/queries/is-empty-paragraph.mjs +11 -11
  307. package/esm2020/queries/is-first-child.mjs +5 -5
  308. package/esm2020/queries/is-include-types.mjs +11 -11
  309. package/esm2020/queries/is-node-type-in.mjs +9 -9
  310. package/esm2020/queries/is-node-type.mjs +15 -15
  311. package/esm2020/queries/is-paragraph.mjs +9 -9
  312. package/esm2020/queries/is-point-at-root.mjs +2 -2
  313. package/esm2020/queries/is-range-across-blocks.mjs +22 -22
  314. package/esm2020/queries/is-range-at-root.mjs +3 -3
  315. package/esm2020/queries/is-start.mjs +6 -6
  316. package/esm2020/queries/some-node.mjs +9 -9
  317. package/esm2020/services/color-select.service.mjs +49 -49
  318. package/esm2020/services/context.service.mjs +58 -58
  319. package/esm2020/services/table-contextmenu.service.mjs +189 -189
  320. package/esm2020/services/toolbar.service.mjs +47 -47
  321. package/esm2020/shortcuts/index.mjs +5 -5
  322. package/esm2020/shortcuts/mark.mjs +24 -24
  323. package/esm2020/transforms/apply-deep-to-nodes.mjs +21 -21
  324. package/esm2020/transforms/clear-marks.mjs +23 -23
  325. package/esm2020/transforms/close-conversion-hint.mjs +8 -8
  326. package/esm2020/transforms/delete-element.mjs +11 -11
  327. package/esm2020/transforms/handle-continual-delete-backward.mjs +17 -17
  328. package/esm2020/transforms/handle-continual-insert-break.mjs +19 -19
  329. package/esm2020/transforms/index.mjs +18 -18
  330. package/esm2020/transforms/insert-elements.mjs +33 -33
  331. package/esm2020/transforms/insert-paragraph.mjs +6 -6
  332. package/esm2020/transforms/merge-deep-to-nodes.mjs +8 -8
  333. package/esm2020/transforms/move-children.mjs +21 -21
  334. package/esm2020/transforms/on-keydown-reset-block-type.mjs +22 -22
  335. package/esm2020/transforms/set-end-selection.mjs +10 -10
  336. package/esm2020/transforms/set-marks.mjs +9 -9
  337. package/esm2020/transforms/set-node.mjs +5 -5
  338. package/esm2020/transforms/split-node.mjs +31 -31
  339. package/esm2020/transforms/un-hang-range.mjs +11 -11
  340. package/esm2020/transforms/un-wrap.mjs +11 -11
  341. package/esm2020/transforms/unwrap-nodes-by-type.mjs +14 -14
  342. package/esm2020/utils/auto-focus.mjs +13 -13
  343. package/esm2020/utils/auto-scroll-view.mjs +24 -24
  344. package/esm2020/utils/cast-array.mjs +7 -7
  345. package/esm2020/utils/common.mjs +2 -2
  346. package/esm2020/utils/create-empty-paragraph.mjs +14 -14
  347. package/esm2020/utils/data-transform.mjs +48 -48
  348. package/esm2020/utils/dom.mjs +46 -46
  349. package/esm2020/utils/editor-uuid.mjs +8 -8
  350. package/esm2020/utils/fragment.mjs +65 -65
  351. package/esm2020/utils/get-all-nodes-by-type.mjs +5 -0
  352. package/esm2020/utils/get-editable-element-height.mjs +6 -6
  353. package/esm2020/utils/get-toolbar-class.mjs +6 -6
  354. package/esm2020/utils/id-creator.mjs +11 -11
  355. package/esm2020/utils/index.mjs +13 -13
  356. package/esm2020/utils/is-clean-empty-paragraph.mjs +36 -36
  357. package/esm2020/utils/is-inline.mjs +8 -8
  358. package/esm2020/utils/lodash.mjs +2 -2
  359. package/esm2020/utils/match.mjs +32 -32
  360. package/esm2020/utils/merge-element-options.mjs +19 -19
  361. package/esm2020/utils/weak-maps.mjs +3 -3
  362. package/esm2020/worktile-theia.mjs +4 -4
  363. package/fesm2015/worktile-theia.mjs +13131 -13097
  364. package/fesm2015/worktile-theia.mjs.map +1 -1
  365. package/fesm2020/worktile-theia.mjs +13150 -13120
  366. package/fesm2020/worktile-theia.mjs.map +1 -1
  367. package/interfaces/auto-format.d.ts +64 -64
  368. package/interfaces/editor.d.ts +146 -146
  369. package/interfaces/element.d.ts +9 -9
  370. package/interfaces/image.d.ts +25 -25
  371. package/interfaces/index.d.ts +8 -8
  372. package/interfaces/plugins/index.d.ts +4 -4
  373. package/interfaces/plugins/no-infer.d.ts +1 -1
  374. package/interfaces/plugins/plugin-key.d.ts +48 -48
  375. package/interfaces/plugins/plugins.d.ts +45 -45
  376. package/interfaces/plugins/with-override.d.ts +7 -7
  377. package/interfaces/reset-block-type-plugin-options.d.ts +23 -23
  378. package/interfaces/toolbar.d.ts +64 -64
  379. package/interfaces/upload.d.ts +11 -11
  380. package/interfaces/utility/index.d.ts +3 -3
  381. package/interfaces/utility/nested-structure-by-key.d.ts +3 -3
  382. package/interfaces/utility/override-by-key.d.ts +3 -3
  383. package/interfaces/utility/types.d.ts +1 -1
  384. package/interfaces/valid-children-types.d.ts +9 -9
  385. package/interfaces/view-base.d.ts +9 -9
  386. package/package.json +5 -4
  387. package/pipes.d.ts +16 -16
  388. package/plugins/align/align.editor.d.ts +7 -7
  389. package/plugins/align/align.plugin.d.ts +2 -2
  390. package/plugins/autoformat/autoformat.plugin.d.ts +6 -6
  391. package/plugins/autoformat/transforms/auto-format-block.d.ts +5 -5
  392. package/plugins/autoformat/transforms/auto-format-inline.d.ts +9 -9
  393. package/plugins/blockquote/blockquote.component.d.ts +11 -11
  394. package/plugins/blockquote/blockquote.editor.d.ts +4 -4
  395. package/plugins/blockquote/blockquote.plugin.d.ts +2 -2
  396. package/plugins/code/code.component.d.ts +65 -65
  397. package/plugins/code/code.editor.d.ts +8 -8
  398. package/plugins/code/code.plugin.d.ts +2 -2
  399. package/plugins/color/color.editor.d.ts +8 -8
  400. package/plugins/color/color.plugin.d.ts +1 -1
  401. package/plugins/color/toolbar-item.component.d.ts +16 -16
  402. package/plugins/common/auto-insert-data..d.ts +2 -2
  403. package/plugins/common/block-card.plugin.d.ts +2 -2
  404. package/plugins/common/get-fragment.plugin.d.ts +6 -6
  405. package/plugins/common/history.plugin.d.ts +9 -9
  406. package/plugins/common/move-selection.plugin.d.ts +2 -2
  407. package/plugins/common/remove-empty.plugin.d.ts +2 -2
  408. package/plugins/common/remove-void.plugin.d.ts +2 -2
  409. package/plugins/common/reset-type.plugin.d.ts +2 -2
  410. package/plugins/common/transforms.plugin.d.ts +8 -8
  411. package/plugins/deserializers/deserialize-html.plugin.d.ts +2 -2
  412. package/plugins/deserializers/deserialize-md.plugin.d.ts +2 -2
  413. package/plugins/font-size/font-size.editor.d.ts +10 -10
  414. package/plugins/heading/heading.editor.d.ts +9 -9
  415. package/plugins/heading/heading.plugin.d.ts +7 -7
  416. package/plugins/hr/hr.component.d.ts +12 -12
  417. package/plugins/hr/hr.editor.d.ts +4 -4
  418. package/plugins/hr/hr.plugin.d.ts +2 -2
  419. package/plugins/image/image.component.d.ts +77 -74
  420. package/plugins/image/image.editor.d.ts +12 -12
  421. package/plugins/image/image.plugin.d.ts +7 -7
  422. package/plugins/indent/indent.editor.d.ts +10 -10
  423. package/plugins/indent/indent.plugin.d.ts +8 -8
  424. package/plugins/indent/on-keydown-indent.d.ts +3 -3
  425. package/plugins/index.d.ts +1 -1
  426. package/plugins/inline-code/inline-code.component.d.ts +9 -9
  427. package/plugins/inline-code/inline-code.editor.d.ts +7 -7
  428. package/plugins/inline-code/inline-code.plugin.d.ts +2 -2
  429. package/plugins/link/edit/link-edit.component.d.ts +36 -36
  430. package/plugins/link/hover/link-hover.component.d.ts +15 -15
  431. package/plugins/link/link.component.d.ts +39 -39
  432. package/plugins/link/link.editor.d.ts +7 -7
  433. package/plugins/link/link.plugin.d.ts +2 -2
  434. package/plugins/link/link.types.d.ts +9 -9
  435. package/plugins/list/components/bulleted-list.component.d.ts +15 -15
  436. package/plugins/list/components/list-item.component.d.ts +20 -20
  437. package/plugins/list/components/numbered-list.component.d.ts +16 -16
  438. package/plugins/list/list.editor.d.ts +12 -12
  439. package/plugins/list/list.plugin.d.ts +3 -3
  440. package/plugins/list/normalizers/get-list-normalizer.d.ts +6 -6
  441. package/plugins/list/normalizers/normalize-list-item.d.ts +5 -5
  442. package/plugins/list/normalizers/normalize-no.d.ts +2 -2
  443. package/plugins/list/on-key-down-list.d.ts +2 -2
  444. package/plugins/list/queries/get-list-item-entry.d.ts +10 -10
  445. package/plugins/list/queries/get-list-item-sublist.d.ts +6 -6
  446. package/plugins/list/queries/get-list-types.d.ts +2 -2
  447. package/plugins/list/queries/get-start-list-item.d.ts +8 -8
  448. package/plugins/list/queries/has-list-in-list-item.d.ts +15 -15
  449. package/plugins/list/queries/is-in-list.d.ts +2 -2
  450. package/plugins/list/queries/is-list-nested.d.ts +5 -5
  451. package/plugins/list/queries/is-list.d.ts +2 -2
  452. package/plugins/list/queries/is-node-type-list.d.ts +2 -2
  453. package/plugins/list/queries/is-selection-at-list-item-start.d.ts +5 -5
  454. package/plugins/list/queries/is-selection-in-same-list-item.d.ts +5 -5
  455. package/plugins/list/queries/is-single-list-item.d.ts +5 -5
  456. package/plugins/list/transforms/insert-list-data.d.ts +12 -12
  457. package/plugins/list/transforms/insert-list-item.d.ts +5 -5
  458. package/plugins/list/transforms/move-list-item-down.d.ts +6 -6
  459. package/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.d.ts +20 -20
  460. package/plugins/list/transforms/move-list-item-sublist-items-to-list.d.ts +19 -19
  461. package/plugins/list/transforms/move-list-item-up.d.ts +10 -10
  462. package/plugins/list/transforms/unwrap-list.d.ts +2 -2
  463. package/plugins/list/types.d.ts +7 -7
  464. package/plugins/mark/mark.editor.d.ts +8 -8
  465. package/plugins/mark/mark.plugin.d.ts +3 -3
  466. package/plugins/node-id/node-id.plugin.d.ts +8 -8
  467. package/plugins/normalizers/insert-paragraph-nodes.d.ts +7 -7
  468. package/plugins/normalizers/remove-empty-nodes.d.ts +7 -7
  469. package/plugins/normalizers/trailing-node.plugin.d.ts +9 -9
  470. package/plugins/paint-format/paint-format.editor.d.ts +8 -8
  471. package/plugins/public-api.d.ts +15 -15
  472. package/plugins/quick-insert/components/quick-insert.component.d.ts +28 -28
  473. package/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.d.ts +28 -28
  474. package/plugins/quick-insert/quick-insert.editor.d.ts +7 -7
  475. package/plugins/quick-insert/quick-insert.plugin.d.ts +10 -10
  476. package/plugins/soft-break/soft-break.plugin.d.ts +5 -5
  477. package/plugins/soft-break/soft-break.types.d.ts +8 -8
  478. package/plugins/table/components/insert-mark/insert-mark.component.d.ts +24 -24
  479. package/plugins/table/components/row/row.component.d.ts +14 -14
  480. package/plugins/table/components/table.component.d.ts +79 -79
  481. package/plugins/table/components/td/td.component.d.ts +95 -95
  482. package/plugins/table/components/toolbar/table-options.component.d.ts +20 -20
  483. package/plugins/table/components/toolbar/table-toolbar.component.d.ts +38 -38
  484. package/plugins/table/table.editor.d.ts +25 -25
  485. package/plugins/table/table.plugin.d.ts +3 -3
  486. package/plugins/table/table.service.d.ts +30 -30
  487. package/plugins/table/table.store.d.ts +71 -71
  488. package/plugins/table/table.types.d.ts +67 -67
  489. package/plugins/table/toolbar-item.component.d.ts +17 -17
  490. package/plugins/table/transforms/clear-cell.d.ts +6 -6
  491. package/plugins/table/transforms/clear-table-node.d.ts +6 -6
  492. package/plugins/table/transforms/insert-column.d.ts +12 -12
  493. package/plugins/table/transforms/insert-row.d.ts +6 -6
  494. package/plugins/table/transforms/insert-table.d.ts +6 -6
  495. package/plugins/table/transforms/remove-column.d.ts +3 -3
  496. package/plugins/table/transforms/remove-row.d.ts +3 -3
  497. package/plugins/table/transforms/remove-table.d.ts +3 -3
  498. package/plugins/table/utils/add-columns.d.ts +2 -2
  499. package/plugins/table/utils/calc-anchor-position.d.ts +6 -6
  500. package/plugins/table/utils/calc-span.d.ts +11 -11
  501. package/plugins/table/utils/create-cell.d.ts +16 -16
  502. package/plugins/table/utils/create-row.d.ts +7 -7
  503. package/plugins/table/utils/create-table.d.ts +7 -7
  504. package/plugins/table/utils/get-base-height.d.ts +9 -9
  505. package/plugins/table/utils/get-select-cell-node.d.ts +7 -7
  506. package/plugins/table/utils/index.d.ts +7 -7
  507. package/plugins/table/utils/is-range-in-table.d.ts +6 -6
  508. package/plugins/table/utils/is-selection-in-table.d.ts +6 -6
  509. package/plugins/table/utils/is-virtual-key.d.ts +1 -1
  510. package/plugins/table/utils/merge-cell.d.ts +21 -21
  511. package/plugins/table/utils/next-path.d.ts +2 -2
  512. package/plugins/table/utils/normalize-table.d.ts +2 -2
  513. package/plugins/table/utils/remove-columns.d.ts +2 -2
  514. package/plugins/table/utils/set-menu-cell-invisibility.d.ts +3 -3
  515. package/plugins/table/utils/split-cell.d.ts +4 -4
  516. package/plugins/table/utils/table-position.d.ts +97 -97
  517. package/plugins/todo-item/todo-item.component.d.ts +21 -21
  518. package/plugins/todo-item/todo-item.editor.d.ts +5 -5
  519. package/plugins/todo-item/todo-item.plugin.d.ts +5 -5
  520. package/plugins/vertical-align/toolbar-item.component.d.ts +25 -25
  521. package/plugins/vertical-align/vertical-align.editor.d.ts +7 -7
  522. package/public-api.d.ts +20 -20
  523. package/queries/anchor-block-entry.d.ts +2 -2
  524. package/queries/anchor-block.d.ts +2 -2
  525. package/queries/anchor-inline-entry.d.ts +2 -2
  526. package/queries/find-descendant.d.ts +10 -10
  527. package/queries/find-node.d.ts +15 -15
  528. package/queries/find-path.d.ts +6 -6
  529. package/queries/get-above-by-type.d.ts +6 -6
  530. package/queries/get-above.d.ts +6 -6
  531. package/queries/get-anchor-block-entry.d.ts +2 -2
  532. package/queries/get-block-above.d.ts +7 -7
  533. package/queries/get-block-card-above.d.ts +7 -7
  534. package/queries/get-block-card-cursor.d.ts +2 -2
  535. package/queries/get-container-blocks.d.ts +2 -2
  536. package/queries/get-directly-parent.d.ts +2 -2
  537. package/queries/get-insert-elements-path.d.ts +7 -7
  538. package/queries/get-last-child-path.d.ts +6 -6
  539. package/queries/get-last-node.d.ts +2 -2
  540. package/queries/get-next-sibling-nodes.d.ts +7 -7
  541. package/queries/get-node.d.ts +2 -2
  542. package/queries/get-nodes-by-type.d.ts +6 -6
  543. package/queries/get-nodes.d.ts +4 -4
  544. package/queries/get-parent.d.ts +7 -7
  545. package/queries/get-plain-text.d.ts +6 -6
  546. package/queries/get-plugin-by-toolbar.d.ts +3 -3
  547. package/queries/get-point-before.d.ts +38 -38
  548. package/queries/get-point-from-location.d.ts +5 -5
  549. package/queries/get-previous-path.d.ts +2 -2
  550. package/queries/get-rang-from-block-start.d.ts +9 -9
  551. package/queries/get-range-before.d.ts +7 -7
  552. package/queries/get-selection-marks.d.ts +12 -12
  553. package/queries/get-selection-nodes-by-type.d.ts +3 -3
  554. package/queries/get-text.d.ts +6 -6
  555. package/queries/get-toolbar-disabled.d.ts +4 -4
  556. package/queries/index.d.ts +58 -58
  557. package/queries/is-across-blocks.d.ts +2 -2
  558. package/queries/is-ancestor-empty.d.ts +5 -5
  559. package/queries/is-ancestor.d.ts +2 -2
  560. package/queries/is-block-above-empty.d.ts +5 -5
  561. package/queries/is-block-active.d.ts +3 -3
  562. package/queries/is-block-card-cursor.d.ts +2 -2
  563. package/queries/is-block-text-empty-after-selection.d.ts +7 -7
  564. package/queries/is-collapsed.d.ts +6 -6
  565. package/queries/is-contain-nested-type.d.ts +2 -2
  566. package/queries/is-container-type.d.ts +2 -2
  567. package/queries/is-descendant.d.ts +2 -2
  568. package/queries/is-empty-content.d.ts +2 -2
  569. package/queries/is-empty-paragraph-by-path.d.ts +2 -2
  570. package/queries/is-empty-paragraph.d.ts +2 -2
  571. package/queries/is-first-child.d.ts +5 -5
  572. package/queries/is-include-types.d.ts +3 -3
  573. package/queries/is-node-type-in.d.ts +6 -6
  574. package/queries/is-node-type.d.ts +6 -6
  575. package/queries/is-paragraph.d.ts +2 -2
  576. package/queries/is-point-at-root.d.ts +2 -2
  577. package/queries/is-range-across-blocks.d.ts +8 -8
  578. package/queries/is-range-at-root.d.ts +2 -2
  579. package/queries/is-start.d.ts +5 -5
  580. package/queries/some-node.d.ts +7 -7
  581. package/services/color-select.service.d.ts +20 -20
  582. package/services/context.service.d.ts +49 -49
  583. package/services/table-contextmenu.service.d.ts +25 -25
  584. package/services/toolbar.service.d.ts +9 -9
  585. package/shortcuts/index.d.ts +2 -2
  586. package/shortcuts/mark.d.ts +2 -2
  587. package/transforms/apply-deep-to-nodes.d.ts +12 -12
  588. package/transforms/clear-marks.d.ts +2 -2
  589. package/transforms/close-conversion-hint.d.ts +2 -2
  590. package/transforms/delete-element.d.ts +2 -2
  591. package/transforms/handle-continual-delete-backward.d.ts +3 -3
  592. package/transforms/handle-continual-insert-break.d.ts +3 -3
  593. package/transforms/index.d.ts +18 -18
  594. package/transforms/insert-elements.d.ts +2 -2
  595. package/transforms/insert-paragraph.d.ts +2 -2
  596. package/transforms/merge-deep-to-nodes.d.ts +5 -5
  597. package/transforms/move-children.d.ts +24 -24
  598. package/transforms/on-keydown-reset-block-type.d.ts +3 -3
  599. package/transforms/set-end-selection.d.ts +2 -2
  600. package/transforms/set-marks.d.ts +12 -12
  601. package/transforms/set-node.d.ts +2 -2
  602. package/transforms/split-node.d.ts +3 -3
  603. package/transforms/un-hang-range.d.ts +10 -10
  604. package/transforms/un-wrap.d.ts +3 -3
  605. package/transforms/unwrap-nodes-by-type.d.ts +6 -6
  606. package/utils/auto-focus.d.ts +2 -2
  607. package/utils/auto-scroll-view.d.ts +6 -6
  608. package/utils/cast-array.d.ts +1 -1
  609. package/utils/common.d.ts +2 -2
  610. package/utils/create-empty-paragraph.d.ts +2 -2
  611. package/utils/data-transform.d.ts +6 -6
  612. package/utils/dom.d.ts +10 -10
  613. package/utils/editor-uuid.d.ts +3 -3
  614. package/utils/fragment.d.ts +10 -10
  615. package/utils/get-all-nodes-by-type.d.ts +3 -0
  616. package/utils/get-editable-element-height.d.ts +2 -2
  617. package/utils/get-toolbar-class.d.ts +2 -2
  618. package/utils/id-creator.d.ts +1 -1
  619. package/utils/index.d.ts +13 -13
  620. package/utils/is-clean-empty-paragraph.d.ts +9 -9
  621. package/utils/is-inline.d.ts +2 -2
  622. package/utils/lodash.d.ts +2 -2
  623. package/utils/match.d.ts +18 -18
  624. package/utils/merge-element-options.d.ts +2 -2
  625. package/utils/weak-maps.d.ts +5 -5
  626. package/worktile-theia.d.ts +5 -5
@@ -1,15 +1,15 @@
1
- import { createTable } from '../utils';
2
- import * as TheTransforms from '../../../transforms';
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);
14
- }
1
+ import { createTable } from '../utils';
2
+ import * as TheTransforms from '../../../transforms';
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);
14
+ }
15
15
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9pbnNlcnQtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEtBQUssYUFBYSxNQUFNLHFCQUFxQixDQUFDO0FBRXJEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FDdkIsSUFBa0IsRUFDbEIsTUFBYyxFQUNkLE9BQWUsQ0FBQyxFQUNoQixVQUFrQixDQUFDLEVBQ25CLGNBQXdEO0lBRXhELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7UUFDcEIsT0FBTztLQUNWO0lBQ0Qsd0JBQXdCO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMvRCxhQUFhLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBOb2RlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGFibGUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgKiBhcyBUaGVUcmFuc2Zvcm1zIGZyb20gJy4uLy4uLy4uL3RyYW5zZm9ybXMnO1xuXG4vKipcbiAqIEluc2VydCBhIG5ldyB0YWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0VGFibGUoXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIHJvd3M6IG51bWJlciA9IDMsXG4gICAgY29sdW1uczogbnVtYmVyID0gMyxcbiAgICBnZXRDZWxsQ29udGVudD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IE5vZGVbXVxuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBpZiAoIXNlbGVjdGlvbj8uYW5jaG9yKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gQ3JlYXRlIHRoZSB0YWJsZSBub2RlXG4gICAgY29uc3QgdGFibGUgPSBjcmVhdGVUYWJsZShvcHRzLCBjb2x1bW5zLCByb3dzLCBnZXRDZWxsQ29udGVudCk7XG4gICAgVGhlVHJhbnNmb3Jtcy5pbnNlcnRFbGVtZW50cyhlZGl0b3IsIHRhYmxlKTtcbn1cbiJdfQ==
@@ -1,51 +1,51 @@
1
- import { Editor, Transforms } from 'slate';
2
- import { TablePosition } from '../utils';
3
- import { clearCell } from './clear-cell';
4
- import { removeColumns } from '../utils/remove-columns';
5
- export function removeColumn(opts, editor, selectColIndex) {
6
- const { selection } = editor;
7
- const { anchor: { path } } = selection;
8
- const tablePosition = TablePosition.create(opts, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXhELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsY0FBdUI7SUFDcEYsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QixNQUFNLEVBQ0YsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ25CLEdBQUcsU0FBUyxDQUFDO0lBRWQsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELE1BQU0sRUFDRixVQUFVLEVBQ1YsS0FBSyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQ2xDLEdBQUcsYUFBYSxDQUFDO0lBRWxCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFxQixDQUFDO0lBRWpELGNBQWMsR0FBRyxjQUFjLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztJQUVyRixNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMs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QUE4QztZQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUMzQixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRTtvQkFDckMsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO29CQUN2RCxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNuRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XHJcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscyc7XHJcbmltcG9ydCB7IGNsZWFyQ2VsbCB9IGZyb20gJy4vY2xlYXItY2VsbCc7XHJcbmltcG9ydCB7IHJlbW92ZUNvbHVtbnMgfSBmcm9tICcuLi91dGlscy9yZW1vdmUtY29sdW1ucyc7XHJcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcclxuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10eXBlcyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ29sdW1uKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIHNlbGVjdENvbEluZGV4PzogbnVtYmVyKSB7XHJcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cclxuICAgIH0gPSBzZWxlY3Rpb247XHJcblxyXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgICAgdGFibGVFbnRyeSxcclxuICAgICAgICB0YWJsZSxcclxuICAgICAgICByb3csXHJcbiAgICAgICAgY2VsbEVudHJ5OiBbY2VsbE5vZGUsIGNlbGxQYXRoXVxyXG4gICAgfSA9IHRhYmxlUG9zaXRpb247XHJcblxyXG4gICAgY29uc3Qgcm93cyA9IHRhYmxlRW50cnlbMF0uY2hpbGRyZW4gYXMgRWxlbWVudFtdO1xyXG5cclxuICAgIHNlbGVjdENvbEluZGV4ID0gc2VsZWN0Q29sSW5kZXggPT09IHVuZGVmaW5lZCA/IFsuLi5jZWxsUGF0aF0ucG9wKCkgOiBzZWxlY3RDb2xJbmRleDtcclxuXHJcbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xyXG4gICAgICAgIHRhYmxlLmNoaWxkcmVuLm1hcCgocm93LCByb3dJbmRleCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGwgPSByb3cuY2hpbGRyZW4uZmluZChcclxuICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICFjZWxsLmhpZGRlbiAmJiBjb2x1bW5JbmRleCA8IHNlbGVjdENvbEluZGV4ICYmIGNlbGwuY29sc3BhbiAmJiBjZWxsLmNvbHNwYW4gKyBjb2x1bW5JbmRleCA+IHNlbGVjdENvbEluZGV4XHJcbiAgICAgICAgICAgICkgYXMgVGFibGVDZWxsRWxlbWVudDtcclxuICAgICAgICAgICAgaWYgKGRpcnR5Q2VsbCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29sc3BhbiA9IGRpcnR5Q2VsbC5jb2xzcGFuIC0gMSA+IDEgPyBkaXJ0eUNlbGwuY29sc3BhbiAtIDEgOiBudWxsO1xyXG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcclxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXHJcbiAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuIH0sXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCByZW1vdmVDZWxsID0gcm93LmNoaWxkcmVuW3NlbGVjdENvbEluZGV4XSBhcyBUYWJsZUNlbGxFbGVtZW50O1xyXG4gICAgICAgICAgICBjb25zdCBuZXh0Q2VsbCA9IHJvdy5jaGlsZHJlbltzZWxlY3RDb2xJbmRleCArIDFdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XHJcbiAgICAgICAgICAgIGlmIChuZXh0Q2VsbCAmJiBuZXh0Q2VsbC5oaWRkZW4gJiYgcmVtb3ZlQ2VsbC5jb2xzcGFuID4gMSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29sc3BhbiA9IHJlbW92ZUNlbGwuY29sc3BhbiAtIDEgPiAxID8gcmVtb3ZlQ2VsbC5jb2xzcGFuIC0gMSA6IG51bGw7XHJcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxyXG4gICAgICAgICAgICAgICAgICAgIGVkaXRvcixcclxuICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW4sIHJvd3NwYW46IHJlbW92ZUNlbGwucm93c3BhbiB8fCBudWxsLCBoaWRkZW46IG51bGwgfSxcclxuICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQocm93LmNoaWxkcmVuLmluZGV4T2YobmV4dENlbGwpKSB9XHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBSZW1vdmUgdGhlIGNlbGwgZnJvbSBldmVyeSByb3dcclxuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRhYmxlUG9zaXRpb24uZ2V0V2lkdGgoKSA+IDEpIHtcclxuICAgICAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIHJvd0luZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBhdCA9IHRhYmxlRW50cnlbMV0uY29uY2F0KFtyb3dJbmRleCwgc2VsZWN0Q29sSW5kZXhdKTtcclxuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0IH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgaWYgKHRhYmxlLmNvbHVtbnMpIHtcclxuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXHJcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxyXG4gICAgICAgICAgICAgICAgICAgIHsgY29sdW1uczogcmVtb3ZlQ29sdW1ucyh0YWJsZSwgdGFibGUuY29sdW1ucy5sZW5ndGggLSAxLCBzZWxlY3RDb2xJbmRleCkgfSxcclxuICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZUVudHJ5WzFdIH1cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBJZiBsYXN0IGNvbHVtbiwgY2xlYXIgdGV4dCBpbiBjZWxscyBpbnN0ZWFkXHJcbiAgICAgICAgICAgIHJvd3MuZm9yRWFjaCgocm93LCByb3dJbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcm93LmNoaWxkcmVuLmZvckVhY2goKGNlbGwsIGNlbGxJbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF0ID0gdGFibGVFbnRyeVsxXS5jb25jYXQoW3Jvd0luZGV4LCBjZWxsSW5kZXhdKTtcclxuICAgICAgICAgICAgICAgICAgICBjbGVhckNlbGwob3B0cywgZWRpdG9yLCBbY2VsbCBhcyBFbGVtZW50LCBhdF0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG59XHJcbiJdfQ==
1
+ import { Editor, Transforms } from 'slate';
2
+ import { TablePosition } from '../utils';
3
+ import { clearCell } from './clear-cell';
4
+ import { removeColumns } from '../utils/remove-columns';
5
+ export function removeColumn(opts, editor, selectColIndex) {
6
+ const { selection } = editor;
7
+ const { anchor: { path } } = selection;
8
+ const tablePosition = TablePosition.create(opts, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXhELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsY0FBdUI7SUFDcEYsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QixNQUFNLEVBQ0YsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ25CLEdBQUcsU0FBUyxDQUFDO0lBRWQsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELE1BQU0sRUFDRixVQUFVLEVBQ1YsS0FBSyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQ2xDLEdBQUcsYUFBYSxDQUFDO0lBRWxCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFxQixDQUFDO0lBRWpELGNBQWMsR0FBRyxjQUFjLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztJQUVyRixNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMs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QUE4QztZQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUMzQixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRTtvQkFDckMsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO29CQUN2RCxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNuRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2xlYXJDZWxsIH0gZnJvbSAnLi9jbGVhci1jZWxsJztcbmltcG9ydCB7IHJlbW92ZUNvbHVtbnMgfSBmcm9tICcuLi91dGlscy9yZW1vdmUtY29sdW1ucyc7XG5pbXBvcnQgeyBUYWJsZU9wdGlvbnMgfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XG5pbXBvcnQgeyBUYWJsZUNlbGxFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNvbHVtbihvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBzZWxlY3RDb2xJbmRleD86IG51bWJlcikge1xuICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3I7XG4gICAgY29uc3Qge1xuICAgICAgICBhbmNob3I6IHsgcGF0aCB9XG4gICAgfSA9IHNlbGVjdGlvbjtcblxuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBUYWJsZVBvc2l0aW9uLmNyZWF0ZShvcHRzLCBlZGl0b3IsIHBhdGgpO1xuICAgIGNvbnN0IHtcbiAgICAgICAgdGFibGVFbnRyeSxcbiAgICAgICAgdGFibGUsXG4gICAgICAgIHJvdyxcbiAgICAgICAgY2VsbEVudHJ5OiBbY2VsbE5vZGUsIGNlbGxQYXRoXVxuICAgIH0gPSB0YWJsZVBvc2l0aW9uO1xuXG4gICAgY29uc3Qgcm93cyA9IHRhYmxlRW50cnlbMF0uY2hpbGRyZW4gYXMgRWxlbWVudFtdO1xuXG4gICAgc2VsZWN0Q29sSW5kZXggPSBzZWxlY3RDb2xJbmRleCA9PT0gdW5kZWZpbmVkID8gWy4uLmNlbGxQYXRoXS5wb3AoKSA6IHNlbGVjdENvbEluZGV4O1xuXG4gICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgdGFibGUuY2hpbGRyZW4ubWFwKChyb3csIHJvd0luZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGwgPSByb3cuY2hpbGRyZW4uZmluZChcbiAgICAgICAgICAgICAgICAoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY29sdW1uSW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNvbHVtbkluZGV4IDwgc2VsZWN0Q29sSW5kZXggJiYgY2VsbC5jb2xzcGFuICYmIGNlbGwuY29sc3BhbiArIGNvbHVtbkluZGV4ID4gc2VsZWN0Q29sSW5kZXhcbiAgICAgICAgICAgICkgYXMgVGFibGVDZWxsRWxlbWVudDtcbiAgICAgICAgICAgIGlmIChkaXJ0eUNlbGwpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2xzcGFuID0gZGlydHlDZWxsLmNvbHNwYW4gLSAxID4gMSA/IGRpcnR5Q2VsbC5jb2xzcGFuIC0gMSA6IG51bGw7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW4gfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChyb3cuY2hpbGRyZW4uaW5kZXhPZihkaXJ0eUNlbGwpKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHJlbW92ZUNlbGwgPSByb3cuY2hpbGRyZW5bc2VsZWN0Q29sSW5kZXhdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBuZXh0Q2VsbCA9IHJvdy5jaGlsZHJlbltzZWxlY3RDb2xJbmRleCArIDFdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAobmV4dENlbGwgJiYgbmV4dENlbGwuaGlkZGVuICYmIHJlbW92ZUNlbGwuY29sc3BhbiA+IDEpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2xzcGFuID0gcmVtb3ZlQ2VsbC5jb2xzcGFuIC0gMSA+IDEgPyByZW1vdmVDZWxsLmNvbHNwYW4gLSAxIDogbnVsbDtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHsgY29sc3Bhbiwgcm93c3BhbjogcmVtb3ZlQ2VsbC5yb3dzcGFuIHx8IG51bGwsIGhpZGRlbjogbnVsbCB9LFxuICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQocm93LmNoaWxkcmVuLmluZGV4T2YobmV4dENlbGwpKSB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBSZW1vdmUgdGhlIGNlbGwgZnJvbSBldmVyeSByb3dcbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICBpZiAodGFibGVQb3NpdGlvbi5nZXRXaWR0aCgpID4gMSkge1xuICAgICAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIHJvd0luZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChbcm93SW5kZXgsIHNlbGVjdENvbEluZGV4XSk7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmICh0YWJsZS5jb2x1bW5zKSB7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICB7IGNvbHVtbnM6IHJlbW92ZUNvbHVtbnModGFibGUsIHRhYmxlLmNvbHVtbnMubGVuZ3RoIC0gMSwgc2VsZWN0Q29sSW5kZXgpIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgYXQ6IHRhYmxlRW50cnlbMV0gfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBJZiBsYXN0IGNvbHVtbiwgY2xlYXIgdGV4dCBpbiBjZWxscyBpbnN0ZWFkXG4gICAgICAgICAgICByb3dzLmZvckVhY2goKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICByb3cuY2hpbGRyZW4uZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF0ID0gdGFibGVFbnRyeVsxXS5jb25jYXQoW3Jvd0luZGV4LCBjZWxsSW5kZXhdKTtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJDZWxsKG9wdHMsIGVkaXRvciwgW2NlbGwgYXMgRWxlbWVudCwgYXRdKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4iXX0=
@@ -1,50 +1,50 @@
1
- import { Editor, Transforms } from 'slate';
2
- import { TablePosition } from '../utils';
3
- import { clearCell } from './clear-cell';
4
- export function removeRow(opts, editor, selectRowIndex) {
5
- const { selection } = editor;
6
- const { anchor: { path } } = selection;
7
- const tablePosition = TablePosition.create(opts, editor, path);
8
- const { tableEntry, table, rowEntry: [rowNode, rowPath] } = tablePosition;
9
- selectRowIndex = selectRowIndex === undefined ? [...rowPath].pop() : selectRowIndex;
10
- const at = tableEntry[1].concat(selectRowIndex);
11
- Editor.withoutNormalizing(editor, () => {
12
- table.children.map((row, rowIndex) => {
13
- if (rowIndex < selectRowIndex) {
14
- const dirtyCells = row.children.filter((cell, columnIndex) => !cell.hidden && cell.rowspan && cell.rowspan + rowIndex > selectRowIndex);
15
- if (dirtyCells.length) {
16
- dirtyCells.map((dirtyCell) => {
17
- const rowspan = dirtyCell.rowspan - 1 > 1 ? dirtyCell.rowspan - 1 : null;
18
- Transforms.setNodes(editor, { rowspan }, {
19
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
20
- });
21
- });
22
- }
23
- }
24
- });
25
- const removeRow = table.children[selectRowIndex];
26
- const nextRow = table.children[selectRowIndex + 1];
27
- if (nextRow) {
28
- removeRow.children.map((cell, cellIndex) => {
29
- const nextCell = nextRow.children[cellIndex];
30
- if (nextCell && cell.rowspan > 1 && nextCell.hidden) {
31
- const rowspan = cell.rowspan - 1 > 1 ? cell.rowspan - 1 : null;
32
- Transforms.setNodes(editor, { colspan: cell.colspan || null, rowspan, hidden: null }, { at: tablePosition.tableEntry[1].concat(selectRowIndex + 1).concat(cellIndex) });
33
- }
34
- });
35
- }
36
- });
37
- // Update table by removing the row
38
- if (tablePosition.getHeight() > 1) {
39
- Transforms.removeNodes(editor, { at });
40
- }
41
- else {
42
- // If last remaining row, clear it instead
43
- Editor.withoutNormalizing(editor, () => {
44
- rowNode.children.forEach((cell, cellIndex) => {
45
- clearCell(opts, editor, [cell, at.concat(cellIndex)]);
46
- });
47
- });
48
- }
49
- }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFrQixFQUFFLE1BQWMsRUFBRSxjQUF1QjtJQUNqRixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFFZCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsTUFBTSxFQUNGLFVBQVUsRUFDVixLQUFLLEVBQ0wsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUMvQixHQUFHLGFBQWEsQ0FBQztJQUVsQixjQUFjLEdBQUcsY0FBYyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDcEYsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVoRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNqQyxJQUFJLFFBQVEsR0FBRyxjQUFjLEVBQUU7Z0JBQzNCLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUNsQyxDQUFDLElBQXNCLEVBQUUsV0FBbUIsRUFBRSxFQUFFLENBQzVDLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLGNBQWMsQ0FDL0UsQ0FBQztnQkFDRixJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7b0JBQ25CLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUEyQixFQUFFLEVBQUU7d0JBQzNDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzt3QkFDekUsVUFBVSxDQUFDLFFBQVEsQ0FDZixNQUFNLEVBQ04sRUFBRSxPQUFPLEVBQUUsRUFDWDs0QkFDSSxFQUFFLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO3lCQUMzRixDQUNKLENBQUM7b0JBQ04sQ0FBQyxDQUFDLENBQUM7aUJBQ047YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQW9CLENBQUM7UUFDcEUsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFvQixDQUFDO1FBQ3RFLElBQUksT0FBTyxFQUFFO1lBQ1QsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFzQixFQUFFLFNBQVMsRUFBRSxFQUFFO2dCQUN6RCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUM3QyxJQUFJLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFO29CQUNqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQy9ELFVBQVUsQ0FBQyxRQUFRLENBQ2YsTUFBTSxFQUNOLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQ3hELEVBQUUsRUFBRSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FDbkYsQ0FBQztpQkFDTDtZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILG1DQUFtQztJQUNuQyxJQUFJLGFBQWEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUU7UUFDL0IsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzFDO1NBQU07UUFDSCwwQ0FBMEM7UUFDMUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDbEMsT0FBTyxDQUFDLFFBQXNCLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUFFO2dCQUN4RCxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxRCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0tBQ047QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xyXG5pbXBvcnQgeyBUYWJsZUNlbGxFbGVtZW50LCBUYWJsZVJvd0VsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdHlwZXMnO1xyXG5pbXBvcnQgeyBUYWJsZU9wdGlvbnMgfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XHJcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscyc7XHJcbmltcG9ydCB7IGNsZWFyQ2VsbCB9IGZyb20gJy4vY2xlYXItY2VsbCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUm93KG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIHNlbGVjdFJvd0luZGV4PzogbnVtYmVyKSB7XHJcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cclxuICAgIH0gPSBzZWxlY3Rpb247XHJcblxyXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgICAgdGFibGVFbnRyeSxcclxuICAgICAgICB0YWJsZSxcclxuICAgICAgICByb3dFbnRyeTogW3Jvd05vZGUsIHJvd1BhdGhdXHJcbiAgICB9ID0gdGFibGVQb3NpdGlvbjtcclxuXHJcbiAgICBzZWxlY3RSb3dJbmRleCA9IHNlbGVjdFJvd0luZGV4ID09PSB1bmRlZmluZWQgPyBbLi4ucm93UGF0aF0ucG9wKCkgOiBzZWxlY3RSb3dJbmRleDtcclxuICAgIGNvbnN0IGF0ID0gdGFibGVFbnRyeVsxXS5jb25jYXQoc2VsZWN0Um93SW5kZXgpO1xyXG5cclxuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XHJcbiAgICAgICAgdGFibGUuY2hpbGRyZW4ubWFwKChyb3csIHJvd0luZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyb3dJbmRleCA8IHNlbGVjdFJvd0luZGV4KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGxzID0gcm93LmNoaWxkcmVuLmZpbHRlcihcclxuICAgICAgICAgICAgICAgICAgICAoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY29sdW1uSW5kZXg6IG51bWJlcikgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNlbGwucm93c3BhbiAmJiBjZWxsLnJvd3NwYW4gKyByb3dJbmRleCA+IHNlbGVjdFJvd0luZGV4XHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgaWYgKGRpcnR5Q2VsbHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlydHlDZWxscy5tYXAoKGRpcnR5Q2VsbDogVGFibGVDZWxsRWxlbWVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByb3dzcGFuID0gZGlydHlDZWxsLnJvd3NwYW4gLSAxID4gMSA/IGRpcnR5Q2VsbC5yb3dzcGFuIC0gMSA6IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHJvd3NwYW4gfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBjb25zdCByZW1vdmVSb3cgPSB0YWJsZS5jaGlsZHJlbltzZWxlY3RSb3dJbmRleF0gYXMgVGFibGVSb3dFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IG5leHRSb3cgPSB0YWJsZS5jaGlsZHJlbltzZWxlY3RSb3dJbmRleCArIDFdIGFzIFRhYmxlUm93RWxlbWVudDtcclxuICAgICAgICBpZiAobmV4dFJvdykge1xyXG4gICAgICAgICAgICByZW1vdmVSb3cuY2hpbGRyZW4ubWFwKChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjZWxsSW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5leHRDZWxsID0gbmV4dFJvdy5jaGlsZHJlbltjZWxsSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgaWYgKG5leHRDZWxsICYmIGNlbGwucm93c3BhbiA+IDEgJiYgbmV4dENlbGwuaGlkZGVuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c3BhbiA9IGNlbGwucm93c3BhbiAtIDEgPiAxID8gY2VsbC5yb3dzcGFuIC0gMSA6IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW46IGNlbGwuY29sc3BhbiB8fCBudWxsLCByb3dzcGFuLCBoaWRkZW46IG51bGwgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChzZWxlY3RSb3dJbmRleCArIDEpLmNvbmNhdChjZWxsSW5kZXgpIH1cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBVcGRhdGUgdGFibGUgYnkgcmVtb3ZpbmcgdGhlIHJvd1xyXG4gICAgaWYgKHRhYmxlUG9zaXRpb24uZ2V0SGVpZ2h0KCkgPiAxKSB7XHJcbiAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIElmIGxhc3QgcmVtYWluaW5nIHJvdywgY2xlYXIgaXQgaW5zdGVhZFxyXG4gICAgICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIChyb3dOb2RlLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkuZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjbGVhckNlbGwob3B0cywgZWRpdG9yLCBbY2VsbCwgYXQuY29uY2F0KGNlbGxJbmRleCldKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
1
+ import { Editor, Transforms } from 'slate';
2
+ import { TablePosition } from '../utils';
3
+ import { clearCell } from './clear-cell';
4
+ export function removeRow(opts, editor, selectRowIndex) {
5
+ const { selection } = editor;
6
+ const { anchor: { path } } = selection;
7
+ const tablePosition = TablePosition.create(opts, editor, path);
8
+ const { tableEntry, table, rowEntry: [rowNode, rowPath] } = tablePosition;
9
+ selectRowIndex = selectRowIndex === undefined ? [...rowPath].pop() : selectRowIndex;
10
+ const at = tableEntry[1].concat(selectRowIndex);
11
+ Editor.withoutNormalizing(editor, () => {
12
+ table.children.map((row, rowIndex) => {
13
+ if (rowIndex < selectRowIndex) {
14
+ const dirtyCells = row.children.filter((cell, columnIndex) => !cell.hidden && cell.rowspan && cell.rowspan + rowIndex > selectRowIndex);
15
+ if (dirtyCells.length) {
16
+ dirtyCells.map((dirtyCell) => {
17
+ const rowspan = dirtyCell.rowspan - 1 > 1 ? dirtyCell.rowspan - 1 : null;
18
+ Transforms.setNodes(editor, { rowspan }, {
19
+ at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
20
+ });
21
+ });
22
+ }
23
+ }
24
+ });
25
+ const removeRow = table.children[selectRowIndex];
26
+ const nextRow = table.children[selectRowIndex + 1];
27
+ if (nextRow) {
28
+ removeRow.children.map((cell, cellIndex) => {
29
+ const nextCell = nextRow.children[cellIndex];
30
+ if (nextCell && cell.rowspan > 1 && nextCell.hidden) {
31
+ const rowspan = cell.rowspan - 1 > 1 ? cell.rowspan - 1 : null;
32
+ Transforms.setNodes(editor, { colspan: cell.colspan || null, rowspan, hidden: null }, { at: tablePosition.tableEntry[1].concat(selectRowIndex + 1).concat(cellIndex) });
33
+ }
34
+ });
35
+ }
36
+ });
37
+ // Update table by removing the row
38
+ if (tablePosition.getHeight() > 1) {
39
+ Transforms.removeNodes(editor, { at });
40
+ }
41
+ else {
42
+ // If last remaining row, clear it instead
43
+ Editor.withoutNormalizing(editor, () => {
44
+ rowNode.children.forEach((cell, cellIndex) => {
45
+ clearCell(opts, editor, [cell, at.concat(cellIndex)]);
46
+ });
47
+ });
48
+ }
49
+ }
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFrQixFQUFFLE1BQWMsRUFBRSxjQUF1QjtJQUNqRixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFFZCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsTUFBTSxFQUNGLFVBQVUsRUFDVixLQUFLLEVBQ0wsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUMvQixHQUFHLGFBQWEsQ0FBQztJQUVsQixjQUFjLEdBQUcsY0FBYyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDcEYsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVoRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUs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QztRQUNQLENBQUMsQ0FBQyxDQUFDO0tBQ047QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCwgVGFibGVSb3dFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBjbGVhckNlbGwgfSBmcm9tICcuL2NsZWFyLWNlbGwnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUm93KG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIHNlbGVjdFJvd0luZGV4PzogbnVtYmVyKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCB7XG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cbiAgICB9ID0gc2VsZWN0aW9uO1xuXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XG4gICAgY29uc3Qge1xuICAgICAgICB0YWJsZUVudHJ5LFxuICAgICAgICB0YWJsZSxcbiAgICAgICAgcm93RW50cnk6IFtyb3dOb2RlLCByb3dQYXRoXVxuICAgIH0gPSB0YWJsZVBvc2l0aW9uO1xuXG4gICAgc2VsZWN0Um93SW5kZXggPSBzZWxlY3RSb3dJbmRleCA9PT0gdW5kZWZpbmVkID8gWy4uLnJvd1BhdGhdLnBvcCgpIDogc2VsZWN0Um93SW5kZXg7XG4gICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChzZWxlY3RSb3dJbmRleCk7XG5cbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICB0YWJsZS5jaGlsZHJlbi5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChyb3dJbmRleCA8IHNlbGVjdFJvd0luZGV4KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGlydHlDZWxscyA9IHJvdy5jaGlsZHJlbi5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNlbGwucm93c3BhbiAmJiBjZWxsLnJvd3NwYW4gKyByb3dJbmRleCA+IHNlbGVjdFJvd0luZGV4XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAoZGlydHlDZWxscy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlydHlDZWxscy5tYXAoKGRpcnR5Q2VsbDogVGFibGVDZWxsRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c3BhbiA9IGRpcnR5Q2VsbC5yb3dzcGFuIC0gMSA+IDEgPyBkaXJ0eUNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyByb3dzcGFuIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcmVtb3ZlUm93ID0gdGFibGUuY2hpbGRyZW5bc2VsZWN0Um93SW5kZXhdIGFzIFRhYmxlUm93RWxlbWVudDtcbiAgICAgICAgY29uc3QgbmV4dFJvdyA9IHRhYmxlLmNoaWxkcmVuW3NlbGVjdFJvd0luZGV4ICsgMV0gYXMgVGFibGVSb3dFbGVtZW50O1xuICAgICAgICBpZiAobmV4dFJvdykge1xuICAgICAgICAgICAgcmVtb3ZlUm93LmNoaWxkcmVuLm1hcCgoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dENlbGwgPSBuZXh0Um93LmNoaWxkcmVuW2NlbGxJbmRleF07XG4gICAgICAgICAgICAgICAgaWYgKG5leHRDZWxsICYmIGNlbGwucm93c3BhbiA+IDEgJiYgbmV4dENlbGwuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvd3NwYW4gPSBjZWxsLnJvd3NwYW4gLSAxID4gMSA/IGNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuOiBjZWxsLmNvbHNwYW4gfHwgbnVsbCwgcm93c3BhbiwgaGlkZGVuOiBudWxsIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHNlbGVjdFJvd0luZGV4ICsgMSkuY29uY2F0KGNlbGxJbmRleCkgfVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBVcGRhdGUgdGFibGUgYnkgcmVtb3ZpbmcgdGhlIHJvd1xuICAgIGlmICh0YWJsZVBvc2l0aW9uLmdldEhlaWdodCgpID4gMSkge1xuICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBJZiBsYXN0IHJlbWFpbmluZyByb3csIGNsZWFyIGl0IGluc3RlYWRcbiAgICAgICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgICAgIChyb3dOb2RlLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkuZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJDZWxsKG9wdHMsIGVkaXRvciwgW2NlbGwsIGF0LmNvbmNhdChjZWxsSW5kZXgpXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -1,49 +1,49 @@
1
- import { Editor, Path, Transforms } from 'slate';
2
- import { createEmptyParagraph } from '../../../utils/create-empty-paragraph';
3
- import { TablePosition } from '../utils';
4
- import { NextPath } from '../utils/next-path';
5
- export function removeTable(opts, editor) {
6
- const { selection } = editor;
7
- const { anchor: { path } } = selection;
8
- const pos = TablePosition.create(opts, editor, path);
9
- const { table, tableEntry: [, tablePath] } = pos;
10
- let nextFocusEntry = null;
11
- let shouldCollapseToEnd = false;
12
- const nextEntry = Editor.next(editor, { at: tablePath });
13
- if (nextEntry) {
14
- nextFocusEntry = nextEntry;
15
- }
16
- else {
17
- const prevEntry = Editor.previous(editor, { at: tablePath });
18
- if (prevEntry) {
19
- nextFocusEntry = prevEntry;
20
- shouldCollapseToEnd = true;
21
- }
22
- else if (opts.exitBlockType) {
23
- nextFocusEntry = [
24
- {
25
- type: opts.exitBlockType,
26
- children: [{ text: '' }]
27
- },
28
- null
29
- ];
30
- nextFocusEntry[1] = NextPath(tablePath);
31
- Transforms.insertNodes(editor, nextFocusEntry[0], { at: nextFocusEntry[1] });
32
- }
33
- }
34
- Transforms.removeNodes(editor, { at: tablePath });
35
- Transforms.insertNodes(editor, createEmptyParagraph(), { at: tablePath });
36
- if (!nextFocusEntry) {
37
- return;
38
- }
39
- if (shouldCollapseToEnd) {
40
- const endPoint = Editor.end(editor, nextFocusEntry[1]);
41
- Transforms.select(editor, endPoint);
42
- }
43
- else {
44
- const previousPath = Path.previous(nextFocusEntry[1]);
45
- const startPoint = Editor.start(editor, previousPath);
46
- Transforms.select(editor, startPoint);
47
- }
48
- }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9yZW1vdmUtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBVyxJQUFJLEVBQUUsVUFBVSxFQUF5QixNQUFNLE9BQU8sQ0FBQztBQUNqRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQWtCLEVBQUUsTUFBYztJQUMxRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFDZCxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsTUFBTSxFQUNGLEtBQUssRUFDTCxVQUFVLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUM1QixHQUFHLEdBQUcsQ0FBQztJQUNSLElBQUksY0FBYyxHQUF1QixJQUFJLENBQUM7SUFDOUMsSUFBSSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFaEMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBVSxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRSxJQUFJLFNBQVMsRUFBRTtRQUNYLGNBQWMsR0FBRyxTQUFTLENBQUM7S0FDOUI7U0FBTTtRQUNILE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQVUsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDdEUsSUFBSSxTQUFTLEVBQUU7WUFDWCxjQUFjLEdBQUcsU0FBUyxDQUFDO1lBQzNCLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUM5QjthQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUMzQixjQUFjLEdBQUc7Z0JBQ2I7b0JBQ0ksSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhO29CQUN4QixRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztpQkFDaEI7Z0JBQ1osSUFBSTthQUNQLENBQUM7WUFDRixjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO0tBQ0o7SUFFRCxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUUxRSxJQUFJLENBQUMsY0FBYyxFQUFFO1FBQ2pCLE9BQU87S0FDVjtJQUVELElBQUksbUJBQW1CLEVBQUU7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7S0FDdkM7U0FBTTtRQUNILE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDekM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBQYXRoLCBUcmFuc2Zvcm1zLCBOb2RlRW50cnksIERlc2NlbmRhbnQgfSBmcm9tICdzbGF0ZSc7XHJcbmltcG9ydCB7IGNyZWF0ZUVtcHR5UGFyYWdyYXBoIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY3JlYXRlLWVtcHR5LXBhcmFncmFwaCc7XHJcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcclxuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHsgTmV4dFBhdGggfSBmcm9tICcuLi91dGlscy9uZXh0LXBhdGgnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVRhYmxlKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3I7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgICAgYW5jaG9yOiB7IHBhdGggfVxyXG4gICAgfSA9IHNlbGVjdGlvbjtcclxuICAgIGNvbnN0IHBvcyA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgICAgdGFibGUsXHJcbiAgICAgICAgdGFibGVFbnRyeTogWywgdGFibGVQYXRoXVxyXG4gICAgfSA9IHBvcztcclxuICAgIGxldCBuZXh0Rm9jdXNFbnRyeTogTm9kZUVudHJ5PEVsZW1lbnQ+ID0gbnVsbDtcclxuICAgIGxldCBzaG91bGRDb2xsYXBzZVRvRW5kID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3QgbmV4dEVudHJ5ID0gRWRpdG9yLm5leHQ8RWxlbWVudD4oZWRpdG9yLCB7IGF0OiB0YWJsZVBhdGggfSk7XHJcbiAgICBpZiAobmV4dEVudHJ5KSB7XHJcbiAgICAgICAgbmV4dEZvY3VzRW50cnkgPSBuZXh0RW50cnk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IHByZXZFbnRyeSA9IEVkaXRvci5wcmV2aW91czxFbGVtZW50PihlZGl0b3IsIHsgYXQ6IHRhYmxlUGF0aCB9KTtcclxuICAgICAgICBpZiAocHJldkVudHJ5KSB7XHJcbiAgICAgICAgICAgIG5leHRGb2N1c0VudHJ5ID0gcHJldkVudHJ5O1xyXG4gICAgICAgICAgICBzaG91bGRDb2xsYXBzZVRvRW5kID0gdHJ1ZTtcclxuICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZXhpdEJsb2NrVHlwZSkge1xyXG4gICAgICAgICAgICBuZXh0Rm9jdXNFbnRyeSA9IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBvcHRzLmV4aXRCbG9ja1R5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW46IFt7IHRleHQ6ICcnIH1dXHJcbiAgICAgICAgICAgICAgICB9IGFzIEVsZW1lbnQsXHJcbiAgICAgICAgICAgICAgICBudWxsXHJcbiAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgIG5leHRGb2N1c0VudHJ5WzFdID0gTmV4dFBhdGgodGFibGVQYXRoKTtcclxuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzBdLCB7IGF0OiBuZXh0Rm9jdXNFbnRyeVsxXSB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQ6IHRhYmxlUGF0aCB9KTtcclxuICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBjcmVhdGVFbXB0eVBhcmFncmFwaCgpLCB7IGF0OiB0YWJsZVBhdGggfSk7XHJcblxyXG4gICAgaWYgKCFuZXh0Rm9jdXNFbnRyeSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0VuZCkge1xyXG4gICAgICAgIGNvbnN0IGVuZFBvaW50ID0gRWRpdG9yLmVuZChlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzFdKTtcclxuICAgICAgICBUcmFuc2Zvcm1zLnNlbGVjdChlZGl0b3IsIGVuZFBvaW50KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgcHJldmlvdXNQYXRoID0gUGF0aC5wcmV2aW91cyhuZXh0Rm9jdXNFbnRyeVsxXSk7XHJcbiAgICAgICAgY29uc3Qgc3RhcnRQb2ludCA9IEVkaXRvci5zdGFydChlZGl0b3IsIHByZXZpb3VzUGF0aCk7XHJcbiAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QoZWRpdG9yLCBzdGFydFBvaW50KTtcclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { Editor, Path, Transforms } from 'slate';
2
+ import { createEmptyParagraph } from '../../../utils/create-empty-paragraph';
3
+ import { TablePosition } from '../utils';
4
+ import { NextPath } from '../utils/next-path';
5
+ export function removeTable(opts, editor) {
6
+ const { selection } = editor;
7
+ const { anchor: { path } } = selection;
8
+ const pos = TablePosition.create(opts, editor, path);
9
+ const { table, tableEntry: [, tablePath] } = pos;
10
+ let nextFocusEntry = null;
11
+ let shouldCollapseToEnd = false;
12
+ const nextEntry = Editor.next(editor, { at: tablePath });
13
+ if (nextEntry) {
14
+ nextFocusEntry = nextEntry;
15
+ }
16
+ else {
17
+ const prevEntry = Editor.previous(editor, { at: tablePath });
18
+ if (prevEntry) {
19
+ nextFocusEntry = prevEntry;
20
+ shouldCollapseToEnd = true;
21
+ }
22
+ else if (opts.exitBlockType) {
23
+ nextFocusEntry = [
24
+ {
25
+ type: opts.exitBlockType,
26
+ children: [{ text: '' }]
27
+ },
28
+ null
29
+ ];
30
+ nextFocusEntry[1] = NextPath(tablePath);
31
+ Transforms.insertNodes(editor, nextFocusEntry[0], { at: nextFocusEntry[1] });
32
+ }
33
+ }
34
+ Transforms.removeNodes(editor, { at: tablePath });
35
+ Transforms.insertNodes(editor, createEmptyParagraph(), { at: tablePath });
36
+ if (!nextFocusEntry) {
37
+ return;
38
+ }
39
+ if (shouldCollapseToEnd) {
40
+ const endPoint = Editor.end(editor, nextFocusEntry[1]);
41
+ Transforms.select(editor, endPoint);
42
+ }
43
+ else {
44
+ const previousPath = Path.previous(nextFocusEntry[1]);
45
+ const startPoint = Editor.start(editor, previousPath);
46
+ Transforms.select(editor, startPoint);
47
+ }
48
+ }
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9yZW1vdmUtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBVyxJQUFJLEVBQUUsVUFBVSxFQUF5QixNQUFNLE9BQU8sQ0FBQztBQUNqRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQWtCLEVBQUUsTUFBYztJQUMxRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFDZCxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsTUFBTSxFQUNGLEtBQUssRUFDTCxVQUFVLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUM1QixHQUFHLEdBQUcsQ0FBQztJQUNSLElBQUksY0FBYyxHQUF1QixJQUFJLENBQUM7SUFDOUMsSUFBSSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFaEMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBVSxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRSxJQUFJLFNBQVMsRUFBRTtRQUNYLGNBQWMsR0FBRyxTQUFTLENBQUM7S0FDOUI7U0FBTTtRQUNILE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQVUsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDdEUsSUFBSSxTQUFTLEVBQUU7WUFDWCxjQUFjLEdBQUcsU0FBUyxDQUFDO1lBQzNCLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUM5QjthQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUMzQixjQUFjLEdBQUc7Z0JBQ2I7b0JBQ0ksSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhO29CQUN4QixRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztpQkFDaEI7Z0JBQ1osSUFBSTthQUNQLENBQUM7WUFDRixjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO0tBQ0o7SUFFRCxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUUxRSxJQUFJLENBQUMsY0FBYyxFQUFFO1FBQ2pCLE9BQU87S0FDVjtJQUVELElBQUksbUJBQW1CLEVBQUU7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7S0FDdkM7U0FBTTtRQUNILE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDekM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBQYXRoLCBUcmFuc2Zvcm1zLCBOb2RlRW50cnksIERlc2NlbmRhbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBjcmVhdGVFbXB0eVBhcmFncmFwaCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2NyZWF0ZS1lbXB0eS1wYXJhZ3JhcGgnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IE5leHRQYXRoIH0gZnJvbSAnLi4vdXRpbHMvbmV4dC1wYXRoJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVRhYmxlKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IpIHtcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xuICAgIGNvbnN0IHtcbiAgICAgICAgYW5jaG9yOiB7IHBhdGggfVxuICAgIH0gPSBzZWxlY3Rpb247XG4gICAgY29uc3QgcG9zID0gVGFibGVQb3NpdGlvbi5jcmVhdGUob3B0cywgZWRpdG9yLCBwYXRoKTtcbiAgICBjb25zdCB7XG4gICAgICAgIHRhYmxlLFxuICAgICAgICB0YWJsZUVudHJ5OiBbLCB0YWJsZVBhdGhdXG4gICAgfSA9IHBvcztcbiAgICBsZXQgbmV4dEZvY3VzRW50cnk6IE5vZGVFbnRyeTxFbGVtZW50PiA9IG51bGw7XG4gICAgbGV0IHNob3VsZENvbGxhcHNlVG9FbmQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5leHRFbnRyeSA9IEVkaXRvci5uZXh0PEVsZW1lbnQ+KGVkaXRvciwgeyBhdDogdGFibGVQYXRoIH0pO1xuICAgIGlmIChuZXh0RW50cnkpIHtcbiAgICAgICAgbmV4dEZvY3VzRW50cnkgPSBuZXh0RW50cnk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcHJldkVudHJ5ID0gRWRpdG9yLnByZXZpb3VzPEVsZW1lbnQ+KGVkaXRvciwgeyBhdDogdGFibGVQYXRoIH0pO1xuICAgICAgICBpZiAocHJldkVudHJ5KSB7XG4gICAgICAgICAgICBuZXh0Rm9jdXNFbnRyeSA9IHByZXZFbnRyeTtcbiAgICAgICAgICAgIHNob3VsZENvbGxhcHNlVG9FbmQgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZXhpdEJsb2NrVHlwZSkge1xuICAgICAgICAgICAgbmV4dEZvY3VzRW50cnkgPSBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBvcHRzLmV4aXRCbG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOiBbeyB0ZXh0OiAnJyB9XVxuICAgICAgICAgICAgICAgIH0gYXMgRWxlbWVudCxcbiAgICAgICAgICAgICAgICBudWxsXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgbmV4dEZvY3VzRW50cnlbMV0gPSBOZXh0UGF0aCh0YWJsZVBhdGgpO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzBdLCB7IGF0OiBuZXh0Rm9jdXNFbnRyeVsxXSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiB0YWJsZVBhdGggfSk7XG4gICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIGNyZWF0ZUVtcHR5UGFyYWdyYXBoKCksIHsgYXQ6IHRhYmxlUGF0aCB9KTtcblxuICAgIGlmICghbmV4dEZvY3VzRW50cnkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChzaG91bGRDb2xsYXBzZVRvRW5kKSB7XG4gICAgICAgIGNvbnN0IGVuZFBvaW50ID0gRWRpdG9yLmVuZChlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzFdKTtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QoZWRpdG9yLCBlbmRQb2ludCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcHJldmlvdXNQYXRoID0gUGF0aC5wcmV2aW91cyhuZXh0Rm9jdXNFbnRyeVsxXSk7XG4gICAgICAgIGNvbnN0IHN0YXJ0UG9pbnQgPSBFZGl0b3Iuc3RhcnQoZWRpdG9yLCBwcmV2aW91c1BhdGgpO1xuICAgICAgICBUcmFuc2Zvcm1zLnNlbGVjdChlZGl0b3IsIHN0YXJ0UG9pbnQpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,28 +1,28 @@
1
- import { TableOptions } from '../table.types';
2
- export function addColumns(table, columnsCount, insertIndex) {
3
- if (table.columns.length < columnsCount) {
4
- if (!insertIndex && insertIndex !== 0) {
5
- insertIndex = table.columns.length;
6
- }
7
- const opts = new TableOptions();
8
- let columns = table.columns.slice(0, columnsCount).map(item => {
9
- return { width: item.width };
10
- });
11
- const preTotalWidth = table.columns.reduce((prevValue, column) => {
12
- return prevValue + column.width;
13
- }, 0);
14
- for (let i = 0; i < columnsCount - table.columns.length; i++) {
15
- columns.splice(insertIndex, 0, { width: opts.defaultWidth });
16
- }
17
- const currentTotalWidth = columns.reduce((prevValue, column) => {
18
- return prevValue + column.width;
19
- }, 0);
20
- const percentage = preTotalWidth / currentTotalWidth;
21
- return columns.map((column, index) => {
22
- const width = Math.round(column.width * percentage > opts.minWidthPx ? column.width * percentage : opts.minWidthPx);
23
- return { width };
24
- });
25
- }
26
- return table.columns;
27
- }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbHVtbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9hZGQtY29sdW1ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFtQixFQUFFLFlBQW9CLEVBQUUsV0FBb0I7SUFDdEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxZQUFZLEVBQUU7UUFDckMsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLEtBQUssQ0FBQyxFQUFFO1lBQ25DLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUN0QztRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEMsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzdELE9BQU8sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDcEMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRU4sS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxRCxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7U0FDaEU7UUFDRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDM0QsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFTixNQUFNLFVBQVUsR0FBRyxhQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFDckQsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2pDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwSCxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7S0FDTjtJQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcclxuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZENvbHVtbnModGFibGU6IFRhYmxlRWxlbWVudCwgY29sdW1uc0NvdW50OiBudW1iZXIsIGluc2VydEluZGV4PzogbnVtYmVyKSB7XHJcbiAgICBpZiAodGFibGUuY29sdW1ucy5sZW5ndGggPCBjb2x1bW5zQ291bnQpIHtcclxuICAgICAgICBpZiAoIWluc2VydEluZGV4ICYmIGluc2VydEluZGV4ICE9PSAwKSB7XHJcbiAgICAgICAgICAgIGluc2VydEluZGV4ID0gdGFibGUuY29sdW1ucy5sZW5ndGg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IG9wdHMgPSBuZXcgVGFibGVPcHRpb25zKCk7XHJcbiAgICAgICAgbGV0IGNvbHVtbnMgPSB0YWJsZS5jb2x1bW5zLnNsaWNlKDAsIGNvbHVtbnNDb3VudCkubWFwKGl0ZW0gPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4geyB3aWR0aDogaXRlbS53aWR0aCB9O1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGNvbnN0IHByZVRvdGFsV2lkdGggPSB0YWJsZS5jb2x1bW5zLnJlZHVjZSgocHJldlZhbHVlLCBjb2x1bW4pID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHByZXZWYWx1ZSArIGNvbHVtbi53aWR0aDtcclxuICAgICAgICB9LCAwKTtcclxuXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2x1bW5zQ291bnQgLSB0YWJsZS5jb2x1bW5zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbHVtbnMuc3BsaWNlKGluc2VydEluZGV4LCAwLCB7IHdpZHRoOiBvcHRzLmRlZmF1bHRXaWR0aCB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgY3VycmVudFRvdGFsV2lkdGggPSBjb2x1bW5zLnJlZHVjZSgocHJldlZhbHVlLCBjb2x1bW4pID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHByZXZWYWx1ZSArIGNvbHVtbi53aWR0aDtcclxuICAgICAgICB9LCAwKTtcclxuXHJcbiAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IHByZVRvdGFsV2lkdGggLyBjdXJyZW50VG90YWxXaWR0aDtcclxuICAgICAgICByZXR1cm4gY29sdW1ucy5tYXAoKGNvbHVtbiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBNYXRoLnJvdW5kKGNvbHVtbi53aWR0aCAqIHBlcmNlbnRhZ2UgPiBvcHRzLm1pbldpZHRoUHggPyBjb2x1bW4ud2lkdGggKiBwZXJjZW50YWdlIDogb3B0cy5taW5XaWR0aFB4KTtcclxuICAgICAgICAgICAgcmV0dXJuIHsgd2lkdGggfTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiB0YWJsZS5jb2x1bW5zO1xyXG59XHJcbiJdfQ==
1
+ import { TableOptions } from '../table.types';
2
+ export function addColumns(table, columnsCount, insertIndex) {
3
+ if (table.columns.length < columnsCount) {
4
+ if (!insertIndex && insertIndex !== 0) {
5
+ insertIndex = table.columns.length;
6
+ }
7
+ const opts = new TableOptions();
8
+ let columns = table.columns.slice(0, columnsCount).map(item => {
9
+ return { width: item.width };
10
+ });
11
+ const preTotalWidth = table.columns.reduce((prevValue, column) => {
12
+ return prevValue + column.width;
13
+ }, 0);
14
+ for (let i = 0; i < columnsCount - table.columns.length; i++) {
15
+ columns.splice(insertIndex, 0, { width: opts.defaultWidth });
16
+ }
17
+ const currentTotalWidth = columns.reduce((prevValue, column) => {
18
+ return prevValue + column.width;
19
+ }, 0);
20
+ const percentage = preTotalWidth / currentTotalWidth;
21
+ return columns.map((column, index) => {
22
+ const width = Math.round(column.width * percentage > opts.minWidthPx ? column.width * percentage : opts.minWidthPx);
23
+ return { width };
24
+ });
25
+ }
26
+ return table.columns;
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbHVtbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9hZGQtY29sdW1ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFtQixFQUFFLFlBQW9CLEVBQUUsV0FBb0I7SUFDdEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxZQUFZLEVBQUU7UUFDckMsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLEtBQUssQ0FBQyxFQUFFO1lBQ25DLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUN0QztRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEMsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzdELE9BQU8sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDcEMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRU4sS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxRCxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7U0FDaEU7UUFDRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDM0QsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFTixNQUFNLFVBQVUsR0FBRyxhQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFDckQsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2pDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwSCxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7S0FDTjtJQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZENvbHVtbnModGFibGU6IFRhYmxlRWxlbWVudCwgY29sdW1uc0NvdW50OiBudW1iZXIsIGluc2VydEluZGV4PzogbnVtYmVyKSB7XG4gICAgaWYgKHRhYmxlLmNvbHVtbnMubGVuZ3RoIDwgY29sdW1uc0NvdW50KSB7XG4gICAgICAgIGlmICghaW5zZXJ0SW5kZXggJiYgaW5zZXJ0SW5kZXggIT09IDApIHtcbiAgICAgICAgICAgIGluc2VydEluZGV4ID0gdGFibGUuY29sdW1ucy5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3B0cyA9IG5ldyBUYWJsZU9wdGlvbnMoKTtcbiAgICAgICAgbGV0IGNvbHVtbnMgPSB0YWJsZS5jb2x1bW5zLnNsaWNlKDAsIGNvbHVtbnNDb3VudCkubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHsgd2lkdGg6IGl0ZW0ud2lkdGggfTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHByZVRvdGFsV2lkdGggPSB0YWJsZS5jb2x1bW5zLnJlZHVjZSgocHJldlZhbHVlLCBjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBwcmV2VmFsdWUgKyBjb2x1bW4ud2lkdGg7XG4gICAgICAgIH0sIDApO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29sdW1uc0NvdW50IC0gdGFibGUuY29sdW1ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29sdW1ucy5zcGxpY2UoaW5zZXJ0SW5kZXgsIDAsIHsgd2lkdGg6IG9wdHMuZGVmYXVsdFdpZHRoIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGN1cnJlbnRUb3RhbFdpZHRoID0gY29sdW1ucy5yZWR1Y2UoKHByZXZWYWx1ZSwgY29sdW1uKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gcHJldlZhbHVlICsgY29sdW1uLndpZHRoO1xuICAgICAgICB9LCAwKTtcblxuICAgICAgICBjb25zdCBwZXJjZW50YWdlID0gcHJlVG90YWxXaWR0aCAvIGN1cnJlbnRUb3RhbFdpZHRoO1xuICAgICAgICByZXR1cm4gY29sdW1ucy5tYXAoKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gTWF0aC5yb3VuZChjb2x1bW4ud2lkdGggKiBwZXJjZW50YWdlID4gb3B0cy5taW5XaWR0aFB4ID8gY29sdW1uLndpZHRoICogcGVyY2VudGFnZSA6IG9wdHMubWluV2lkdGhQeCk7XG4gICAgICAgICAgICByZXR1cm4geyB3aWR0aCB9O1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRhYmxlLmNvbHVtbnM7XG59XG4iXX0=
@@ -1,25 +1,25 @@
1
- import { AngularEditor } from 'slate-angular';
2
- import * as TheQueries from '../../../queries';
3
- export function calculateAnchorPositionInCell(editor) {
4
- let isFirstLine = false;
5
- let isLastLine = false;
6
- const anchorBlock = TheQueries.anchorBlock(editor);
7
- const anchorBlockPath = TheQueries.findPath(editor, anchorBlock);
8
- const anchorBlockDom = AngularEditor.toDOMNode(editor, anchorBlock);
9
- const valueRangeRect = anchorBlockDom.getBoundingClientRect();
10
- const anchorBlockHeight = window.getComputedStyle(anchorBlockDom).lineHeight;
11
- const nativeSelection = window.getSelection();
12
- const nativeRange = nativeSelection && nativeSelection.getRangeAt(0);
13
- const nativeRangeRect = nativeRange && nativeRange.getBoundingClientRect();
14
- if (valueRangeRect && nativeRangeRect && anchorBlockHeight) {
15
- const lineHeight = parseInt(anchorBlockHeight, 10);
16
- isFirstLine = nativeRangeRect.top - valueRangeRect.top < lineHeight;
17
- isLastLine = valueRangeRect.bottom - nativeRangeRect.bottom < lineHeight;
18
- }
19
- return {
20
- isFirstLine,
21
- isLastLine,
22
- anchorBlockPath
23
- };
24
- }
1
+ import { AngularEditor } from 'slate-angular';
2
+ import * as TheQueries from '../../../queries';
3
+ export function calculateAnchorPositionInCell(editor) {
4
+ let isFirstLine = false;
5
+ let isLastLine = false;
6
+ const anchorBlock = TheQueries.anchorBlock(editor);
7
+ const anchorBlockPath = TheQueries.findPath(editor, anchorBlock);
8
+ const anchorBlockDom = AngularEditor.toDOMNode(editor, anchorBlock);
9
+ const valueRangeRect = anchorBlockDom.getBoundingClientRect();
10
+ const anchorBlockHeight = window.getComputedStyle(anchorBlockDom).lineHeight;
11
+ const nativeSelection = window.getSelection();
12
+ const nativeRange = nativeSelection && nativeSelection.getRangeAt(0);
13
+ const nativeRangeRect = nativeRange && nativeRange.getBoundingClientRect();
14
+ if (valueRangeRect && nativeRangeRect && anchorBlockHeight) {
15
+ const lineHeight = parseInt(anchorBlockHeight, 10);
16
+ isFirstLine = nativeRangeRect.top - valueRangeRect.top < lineHeight;
17
+ isLastLine = valueRangeRect.bottom - nativeRangeRect.bottom < lineHeight;
18
+ }
19
+ return {
20
+ isFirstLine,
21
+ isLastLine,
22
+ anchorBlockPath
23
+ };
24
+ }
25
25
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsYy1hbmNob3ItcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9jYWxjLWFuY2hvci1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sS0FBSyxVQUFVLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsTUFBTSxVQUFVLDZCQUE2QixDQUFDLE1BQWM7SUFDeEQsSUFBSSxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQztJQUN2QixNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25ELE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sY0FBYyxHQUFHLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQzlELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUM3RSxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUMsTUFBTSxXQUFXLEdBQUcsZUFBZSxJQUFJLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckUsTUFBTSxlQUFlLEdBQUcsV0FBVyxJQUFJLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQzNFLElBQUksY0FBYyxJQUFJLGVBQWUsSUFBSSxpQkFBaUIsRUFBRTtRQUN4RCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkQsV0FBVyxHQUFHLGVBQWUsQ0FBQyxHQUFHLEdBQUcsY0FBYyxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUM7UUFDcEUsVUFBVSxHQUFHLGNBQWMsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUM7S0FDNUU7SUFDRCxPQUFPO1FBQ0gsV0FBVztRQUNYLFVBQVU7UUFDVixlQUFlO0tBQ2xCLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgQW5ndWxhckVkaXRvciB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi8uLi8uLi9xdWVyaWVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUFuY2hvclBvc2l0aW9uSW5DZWxsKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgbGV0IGlzRmlyc3RMaW5lID0gZmFsc2U7XG4gICAgbGV0IGlzTGFzdExpbmUgPSBmYWxzZTtcbiAgICBjb25zdCBhbmNob3JCbG9jayA9IFRoZVF1ZXJpZXMuYW5jaG9yQmxvY2soZWRpdG9yKTtcbiAgICBjb25zdCBhbmNob3JCbG9ja1BhdGggPSBUaGVRdWVyaWVzLmZpbmRQYXRoKGVkaXRvciwgYW5jaG9yQmxvY2spO1xuICAgIGNvbnN0IGFuY2hvckJsb2NrRG9tID0gQW5ndWxhckVkaXRvci50b0RPTU5vZGUoZWRpdG9yLCBhbmNob3JCbG9jayk7XG4gICAgY29uc3QgdmFsdWVSYW5nZVJlY3QgPSBhbmNob3JCbG9ja0RvbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBhbmNob3JCbG9ja0hlaWdodCA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGFuY2hvckJsb2NrRG9tKS5saW5lSGVpZ2h0O1xuICAgIGNvbnN0IG5hdGl2ZVNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICBjb25zdCBuYXRpdmVSYW5nZSA9IG5hdGl2ZVNlbGVjdGlvbiAmJiBuYXRpdmVTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKTtcbiAgICBjb25zdCBuYXRpdmVSYW5nZVJlY3QgPSBuYXRpdmVSYW5nZSAmJiBuYXRpdmVSYW5nZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBpZiAodmFsdWVSYW5nZVJlY3QgJiYgbmF0aXZlUmFuZ2VSZWN0ICYmIGFuY2hvckJsb2NrSGVpZ2h0KSB7XG4gICAgICAgIGNvbnN0IGxpbmVIZWlnaHQgPSBwYXJzZUludChhbmNob3JCbG9ja0hlaWdodCwgMTApO1xuICAgICAgICBpc0ZpcnN0TGluZSA9IG5hdGl2ZVJhbmdlUmVjdC50b3AgLSB2YWx1ZVJhbmdlUmVjdC50b3AgPCBsaW5lSGVpZ2h0O1xuICAgICAgICBpc0xhc3RMaW5lID0gdmFsdWVSYW5nZVJlY3QuYm90dG9tIC0gbmF0aXZlUmFuZ2VSZWN0LmJvdHRvbSA8IGxpbmVIZWlnaHQ7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGlzRmlyc3RMaW5lLFxuICAgICAgICBpc0xhc3RMaW5lLFxuICAgICAgICBhbmNob3JCbG9ja1BhdGhcbiAgICB9O1xufVxuIl19