@worktile/theia 3.0.8 → 3.0.9

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 (625) hide show
  1. package/README.md +11 -11
  2. package/bundles/worktile-theia.umd.js +14357 -14343
  3. package/bundles/worktile-theia.umd.js.map +1 -1
  4. package/components/color-select/color-select.component.d.ts +32 -32
  5. package/components/color-select/color-select.component.scss +107 -107
  6. package/components/column-resize/column-resize-notifier.d.ts +35 -35
  7. package/components/column-resize/column-resize.directive.d.ts +26 -26
  8. package/components/column-resize/column-resize.module.d.ts +14 -14
  9. package/components/column-resize/event-dispatcher.d.ts +31 -31
  10. package/components/column-resize/overlay-handle.component.d.ts +33 -33
  11. package/components/column-resize/resize-ref.d.ts +25 -25
  12. package/components/column-resize/resizing.store.d.ts +28 -28
  13. package/components/column-resize/selectors.d.ts +3 -3
  14. package/components/contextmenu/contextmenu.component.d.ts +22 -22
  15. package/components/conversion-hint/conversion-hint.component.d.ts +18 -18
  16. package/components/conversion-hint/conversion-hint.component.scss +11 -11
  17. package/components/element/element.component.d.ts +7 -7
  18. package/components/inline-toolbar/inline-toolbar.component.d.ts +26 -26
  19. package/components/nav-split-line/nav-split-line.component.d.ts +13 -13
  20. package/components/table-select/table-select.component.d.ts +20 -20
  21. package/components/table-select/table-select.component.scss +35 -35
  22. package/components/template/template.component.d.ts +15 -15
  23. package/components/text/text.component.d.ts +14 -14
  24. package/components/toolbar/toolbar.component.d.ts +65 -65
  25. package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +33 -33
  26. package/components/toolbar-dropdown/toolbar-dropdown.component.scss +0 -1
  27. package/components/toolbar-group/toolbar-group.component.d.ts +33 -33
  28. package/components/toolbar-group/toolbar-group.component.scss +17 -17
  29. package/components/toolbar-item/toolbar-item.component.d.ts +18 -18
  30. package/constants/auto-format-rules.d.ts +2 -2
  31. package/constants/code.d.ts +9 -9
  32. package/constants/color-select.d.ts +14 -14
  33. package/constants/default.d.ts +9 -9
  34. package/constants/error.d.ts +5 -5
  35. package/constants/index.d.ts +5 -5
  36. package/constants/node-types.d.ts +99 -99
  37. package/constants/selector.d.ts +2 -2
  38. package/constants/toolbar.d.ts +17 -17
  39. package/core/create-plugin.d.ts +2 -2
  40. package/core/create-toolbar.d.ts +5 -5
  41. package/core/index.d.ts +4 -4
  42. package/core/toolbar-item/base-toolbar-item.d.ts +29 -29
  43. package/core/utils/combine-plugins.d.ts +2 -2
  44. package/core/utils/flatten-deep-plugins.d.ts +6 -6
  45. package/core/utils/get-plugin-options.d.ts +2 -2
  46. package/core/utils/get-plugin.d.ts +2 -2
  47. package/core/utils/get-plugins.d.ts +2 -2
  48. package/core/utils/index.d.ts +10 -10
  49. package/core/utils/merge-array.d.ts +1 -1
  50. package/core/utils/merge-deep-plugins.d.ts +2 -2
  51. package/core/utils/merge-options.d.ts +2 -2
  52. package/core/utils/nested-structure-by-key.d.ts +2 -2
  53. package/core/utils/plugins-by-key.d.ts +2 -2
  54. package/core/with-theia.d.ts +4 -4
  55. package/custom-types.d.ts +131 -131
  56. package/editor.component.d.ts +92 -92
  57. package/editor.module.d.ts +98 -98
  58. package/esm2015/components/color-select/color-select.component.js +112 -112
  59. package/esm2015/components/column-resize/column-resize-notifier.js +31 -31
  60. package/esm2015/components/column-resize/column-resize.directive.js +98 -98
  61. package/esm2015/components/column-resize/column-resize.module.js +34 -34
  62. package/esm2015/components/column-resize/event-dispatcher.js +55 -55
  63. package/esm2015/components/column-resize/overlay-handle.component.js +139 -139
  64. package/esm2015/components/column-resize/resize-ref.js +25 -25
  65. package/esm2015/components/column-resize/resizing.store.js +154 -154
  66. package/esm2015/components/column-resize/selectors.js +4 -4
  67. package/esm2015/components/contextmenu/contextmenu.component.js +64 -64
  68. package/esm2015/components/conversion-hint/conversion-hint.component.js +59 -59
  69. package/esm2015/components/element/element.component.js +23 -23
  70. package/esm2015/components/inline-toolbar/inline-toolbar.component.js +126 -126
  71. package/esm2015/components/nav-split-line/nav-split-line.component.js +36 -36
  72. package/esm2015/components/table-select/table-select.component.js +53 -53
  73. package/esm2015/components/template/template.component.js +66 -66
  74. package/esm2015/components/text/text.component.js +57 -57
  75. package/esm2015/components/toolbar/toolbar.component.js +250 -250
  76. package/esm2015/components/toolbar-dropdown/toolbar-dropdown.component.js +132 -132
  77. package/esm2015/components/toolbar-group/toolbar-group.component.js +116 -116
  78. package/esm2015/components/toolbar-item/toolbar-item.component.js +64 -64
  79. package/esm2015/constants/auto-format-rules.js +166 -166
  80. package/esm2015/constants/code.js +88 -88
  81. package/esm2015/constants/color-select.js +61 -61
  82. package/esm2015/constants/default.js +9 -9
  83. package/esm2015/constants/error.js +7 -7
  84. package/esm2015/constants/index.js +5 -5
  85. package/esm2015/constants/node-types.js +132 -132
  86. package/esm2015/constants/selector.js +3 -3
  87. package/esm2015/constants/toolbar.js +69 -69
  88. package/esm2015/core/create-plugin.js +4 -4
  89. package/esm2015/core/create-toolbar.js +56 -56
  90. package/esm2015/core/index.js +4 -4
  91. package/esm2015/core/toolbar-item/base-toolbar-item.js +91 -91
  92. package/esm2015/core/utils/combine-plugins.js +9 -9
  93. package/esm2015/core/utils/flatten-deep-plugins.js +18 -18
  94. package/esm2015/core/utils/get-plugin-options.js +2 -2
  95. package/esm2015/core/utils/get-plugin.js +1 -1
  96. package/esm2015/core/utils/get-plugins.js +4 -4
  97. package/esm2015/core/utils/index.js +10 -10
  98. package/esm2015/core/utils/merge-array.js +17 -17
  99. package/esm2015/core/utils/merge-deep-plugins.js +13 -13
  100. package/esm2015/core/utils/merge-options.js +19 -19
  101. package/esm2015/core/utils/nested-structure-by-key.js +10 -10
  102. package/esm2015/core/utils/plugins-by-key.js +9 -9
  103. package/esm2015/core/with-theia.js +22 -22
  104. package/esm2015/custom-types.js +1 -1
  105. package/esm2015/editor.component.js +439 -439
  106. package/esm2015/editor.module.js +201 -201
  107. package/esm2015/interfaces/auto-format.js +1 -1
  108. package/esm2015/interfaces/editor.js +22 -22
  109. package/esm2015/interfaces/element.js +1 -1
  110. package/esm2015/interfaces/image.js +2 -2
  111. package/esm2015/interfaces/index.js +8 -8
  112. package/esm2015/interfaces/plugins/index.js +4 -4
  113. package/esm2015/interfaces/plugins/no-infer.js +1 -1
  114. package/esm2015/interfaces/plugins/plugin-key.js +39 -39
  115. package/esm2015/interfaces/plugins/plugins.js +1 -1
  116. package/esm2015/interfaces/plugins/with-override.js +1 -1
  117. package/esm2015/interfaces/reset-block-type-plugin-options.js +2 -2
  118. package/esm2015/interfaces/toolbar.js +11 -11
  119. package/esm2015/interfaces/upload.js +2 -2
  120. package/esm2015/interfaces/utility/index.js +3 -3
  121. package/esm2015/interfaces/utility/nested-structure-by-key.js +1 -1
  122. package/esm2015/interfaces/utility/override-by-key.js +1 -1
  123. package/esm2015/interfaces/utility/types.js +1 -1
  124. package/esm2015/interfaces/valid-children-types.js +35 -35
  125. package/esm2015/interfaces/view-base.js +21 -21
  126. package/esm2015/pipes.js +42 -42
  127. package/esm2015/plugins/align/align.editor.js +47 -47
  128. package/esm2015/plugins/align/align.plugin.js +63 -63
  129. package/esm2015/plugins/autoformat/autoformat.plugin.js +109 -109
  130. package/esm2015/plugins/autoformat/transforms/auto-format-block.js +14 -14
  131. package/esm2015/plugins/autoformat/transforms/auto-format-inline.js +77 -77
  132. package/esm2015/plugins/blockquote/blockquote.component.js +21 -21
  133. package/esm2015/plugins/blockquote/blockquote.editor.js +20 -20
  134. package/esm2015/plugins/blockquote/blockquote.plugin.js +70 -70
  135. package/esm2015/plugins/code/code.component.js +244 -244
  136. package/esm2015/plugins/code/code.editor.js +47 -47
  137. package/esm2015/plugins/code/code.plugin.js +41 -41
  138. package/esm2015/plugins/color/color.editor.js +44 -44
  139. package/esm2015/plugins/color/color.plugin.js +27 -27
  140. package/esm2015/plugins/color/toolbar-item.component.js +79 -79
  141. package/esm2015/plugins/common/auto-insert-data..js +77 -77
  142. package/esm2015/plugins/common/block-card.plugin.js +286 -286
  143. package/esm2015/plugins/common/get-fragment.plugin.js +24 -24
  144. package/esm2015/plugins/common/history.plugin.js +30 -30
  145. package/esm2015/plugins/common/move-selection.plugin.js +89 -89
  146. package/esm2015/plugins/common/remove-empty.plugin.js +59 -59
  147. package/esm2015/plugins/common/remove-void.plugin.js +56 -56
  148. package/esm2015/plugins/common/reset-type.plugin.js +34 -34
  149. package/esm2015/plugins/common/transforms.plugin.js +17 -17
  150. package/esm2015/plugins/deserializers/deserialize-html.plugin.js +38 -38
  151. package/esm2015/plugins/deserializers/deserialize-md.plugin.js +121 -121
  152. package/esm2015/plugins/font-size/font-size.editor.js +97 -97
  153. package/esm2015/plugins/heading/heading.editor.js +53 -53
  154. package/esm2015/plugins/heading/heading.plugin.js +84 -84
  155. package/esm2015/plugins/hr/hr.component.js +40 -40
  156. package/esm2015/plugins/hr/hr.editor.js +7 -7
  157. package/esm2015/plugins/hr/hr.plugin.js +41 -41
  158. package/esm2015/plugins/image/image.component.js +369 -369
  159. package/esm2015/plugins/image/image.editor.js +57 -57
  160. package/esm2015/plugins/image/image.plugin.js +57 -57
  161. package/esm2015/plugins/indent/indent.editor.js +72 -72
  162. package/esm2015/plugins/indent/indent.plugin.js +59 -59
  163. package/esm2015/plugins/indent/on-keydown-indent.js +53 -53
  164. package/esm2015/plugins/index.js +70 -70
  165. package/esm2015/plugins/inline-code/inline-code.component.js +21 -21
  166. package/esm2015/plugins/inline-code/inline-code.editor.js +48 -48
  167. package/esm2015/plugins/inline-code/inline-code.plugin.js +65 -65
  168. package/esm2015/plugins/link/edit/link-edit.component.js +108 -108
  169. package/esm2015/plugins/link/hover/link-hover.component.js +39 -39
  170. package/esm2015/plugins/link/link.component.js +162 -162
  171. package/esm2015/plugins/link/link.editor.js +66 -66
  172. package/esm2015/plugins/link/link.plugin.js +58 -58
  173. package/esm2015/plugins/link/link.types.js +12 -12
  174. package/esm2015/plugins/list/components/bulleted-list.component.js +33 -33
  175. package/esm2015/plugins/list/components/list-item.component.js +94 -94
  176. package/esm2015/plugins/list/components/numbered-list.component.js +39 -39
  177. package/esm2015/plugins/list/list.editor.js +125 -125
  178. package/esm2015/plugins/list/list.plugin.js +280 -280
  179. package/esm2015/plugins/list/normalizers/get-list-normalizer.js +39 -39
  180. package/esm2015/plugins/list/normalizers/normalize-list-item.js +19 -19
  181. package/esm2015/plugins/list/normalizers/normalize-no.js +42 -42
  182. package/esm2015/plugins/list/on-key-down-list.js +32 -32
  183. package/esm2015/plugins/list/queries/get-list-item-entry.js +27 -27
  184. package/esm2015/plugins/list/queries/get-list-item-sublist.js +12 -12
  185. package/esm2015/plugins/list/queries/get-list-types.js +5 -5
  186. package/esm2015/plugins/list/queries/get-start-list-item.js +26 -26
  187. package/esm2015/plugins/list/queries/has-list-in-list-item.js +27 -27
  188. package/esm2015/plugins/list/queries/is-in-list.js +5 -5
  189. package/esm2015/plugins/list/queries/is-list-nested.js +10 -10
  190. package/esm2015/plugins/list/queries/is-list.js +5 -5
  191. package/esm2015/plugins/list/queries/is-node-type-list.js +4 -4
  192. package/esm2015/plugins/list/queries/is-selection-at-list-item-start.js +12 -12
  193. package/esm2015/plugins/list/queries/is-selection-in-same-list-item.js +16 -16
  194. package/esm2015/plugins/list/queries/is-single-list-item.js +9 -9
  195. package/esm2015/plugins/list/transforms/insert-list-data.js +71 -71
  196. package/esm2015/plugins/list/transforms/insert-list-item.js +72 -72
  197. package/esm2015/plugins/list/transforms/move-list-item-down.js +41 -41
  198. package/esm2015/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.js +42 -42
  199. package/esm2015/plugins/list/transforms/move-list-item-sublist-items-to-list.js +29 -29
  200. package/esm2015/plugins/list/transforms/move-list-item-up.js +77 -77
  201. package/esm2015/plugins/list/transforms/unwrap-list.js +9 -9
  202. package/esm2015/plugins/list/types.js +2 -2
  203. package/esm2015/plugins/mark/mark.editor.js +28 -28
  204. package/esm2015/plugins/mark/mark.plugin.js +101 -101
  205. package/esm2015/plugins/node-id/node-id.plugin.js +68 -68
  206. package/esm2015/plugins/normalizers/insert-paragraph-nodes.js +28 -28
  207. package/esm2015/plugins/normalizers/remove-empty-nodes.js +17 -17
  208. package/esm2015/plugins/normalizers/trailing-node.plugin.js +33 -33
  209. package/esm2015/plugins/paint-format/paint-format.editor.js +122 -122
  210. package/esm2015/plugins/public-api.js +15 -15
  211. package/esm2015/plugins/quick-insert/components/quick-insert.component.js +101 -101
  212. package/esm2015/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.js +83 -83
  213. package/esm2015/plugins/quick-insert/quick-insert.editor.js +52 -52
  214. package/esm2015/plugins/quick-insert/quick-insert.plugin.js +74 -74
  215. package/esm2015/plugins/soft-break/soft-break.plugin.js +36 -36
  216. package/esm2015/plugins/soft-break/soft-break.types.js +1 -1
  217. package/esm2015/plugins/table/components/insert-mark/insert-mark.component.js +102 -102
  218. package/esm2015/plugins/table/components/row/row.component.js +46 -46
  219. package/esm2015/plugins/table/components/table.component.js +469 -469
  220. package/esm2015/plugins/table/components/td/td.component.js +698 -698
  221. package/esm2015/plugins/table/components/toolbar/table-options.component.js +67 -67
  222. package/esm2015/plugins/table/components/toolbar/table-toolbar.component.js +161 -161
  223. package/esm2015/plugins/table/table.editor.js +182 -182
  224. package/esm2015/plugins/table/table.plugin.js +423 -423
  225. package/esm2015/plugins/table/table.service.js +102 -102
  226. package/esm2015/plugins/table/table.store.js +479 -479
  227. package/esm2015/plugins/table/table.types.js +33 -33
  228. package/esm2015/plugins/table/toolbar-item.component.js +61 -61
  229. package/esm2015/plugins/table/transforms/clear-cell.js +11 -11
  230. package/esm2015/plugins/table/transforms/clear-table-node.js +27 -27
  231. package/esm2015/plugins/table/transforms/insert-column.js +57 -57
  232. package/esm2015/plugins/table/transforms/insert-row.js +42 -42
  233. package/esm2015/plugins/table/transforms/insert-table.js +14 -14
  234. package/esm2015/plugins/table/transforms/remove-column.js +51 -51
  235. package/esm2015/plugins/table/transforms/remove-row.js +50 -50
  236. package/esm2015/plugins/table/transforms/remove-table.js +49 -49
  237. package/esm2015/plugins/table/utils/add-columns.js +28 -28
  238. package/esm2015/plugins/table/utils/calc-anchor-position.js +24 -24
  239. package/esm2015/plugins/table/utils/calc-span.js +72 -72
  240. package/esm2015/plugins/table/utils/create-cell.js +19 -19
  241. package/esm2015/plugins/table/utils/create-row.js +12 -12
  242. package/esm2015/plugins/table/utils/create-table.js +13 -13
  243. package/esm2015/plugins/table/utils/get-base-height.js +22 -22
  244. package/esm2015/plugins/table/utils/get-select-cell-node.js +16 -16
  245. package/esm2015/plugins/table/utils/index.js +8 -8
  246. package/esm2015/plugins/table/utils/is-range-in-table.js +16 -16
  247. package/esm2015/plugins/table/utils/is-selection-in-table.js +11 -11
  248. package/esm2015/plugins/table/utils/is-virtual-key.js +13 -13
  249. package/esm2015/plugins/table/utils/merge-cell.js +90 -90
  250. package/esm2015/plugins/table/utils/next-path.js +5 -5
  251. package/esm2015/plugins/table/utils/normalize-table.js +30 -30
  252. package/esm2015/plugins/table/utils/remove-columns.js +23 -23
  253. package/esm2015/plugins/table/utils/set-menu-cell-invisibility.js +15 -15
  254. package/esm2015/plugins/table/utils/split-cell.js +31 -31
  255. package/esm2015/plugins/table/utils/table-position.js +242 -242
  256. package/esm2015/plugins/todo-item/todo-item.component.js +55 -55
  257. package/esm2015/plugins/todo-item/todo-item.editor.js +31 -31
  258. package/esm2015/plugins/todo-item/todo-item.plugin.js +78 -78
  259. package/esm2015/plugins/vertical-align/toolbar-item.component.js +89 -89
  260. package/esm2015/plugins/vertical-align/vertical-align.editor.js +54 -54
  261. package/esm2015/public-api.js +23 -23
  262. package/esm2015/queries/anchor-block-entry.js +13 -13
  263. package/esm2015/queries/anchor-block.js +6 -6
  264. package/esm2015/queries/anchor-inline-entry.js +10 -10
  265. package/esm2015/queries/find-descendant.js +47 -47
  266. package/esm2015/queries/find-node.js +45 -45
  267. package/esm2015/queries/find-path.js +28 -28
  268. package/esm2015/queries/get-above-by-type.js +10 -10
  269. package/esm2015/queries/get-above.js +9 -9
  270. package/esm2015/queries/get-anchor-block-entry.js +8 -8
  271. package/esm2015/queries/get-block-above.js +7 -7
  272. package/esm2015/queries/get-block-card-above.js +7 -7
  273. package/esm2015/queries/get-block-card-cursor.js +5 -5
  274. package/esm2015/queries/get-container-blocks.js +11 -11
  275. package/esm2015/queries/get-directly-parent.js +11 -11
  276. package/esm2015/queries/get-insert-elements-path.js +43 -43
  277. package/esm2015/queries/get-last-child-path.js +9 -9
  278. package/esm2015/queries/get-last-node.js +17 -17
  279. package/esm2015/queries/get-next-sibling-nodes.js +17 -17
  280. package/esm2015/queries/get-node.js +10 -10
  281. package/esm2015/queries/get-nodes-by-type.js +12 -12
  282. package/esm2015/queries/get-nodes.js +7 -7
  283. package/esm2015/queries/get-parent.js +12 -12
  284. package/esm2015/queries/get-plain-text.js +16 -16
  285. package/esm2015/queries/get-plugin-by-toolbar.js +12 -12
  286. package/esm2015/queries/get-point-before.js +62 -62
  287. package/esm2015/queries/get-point-from-location.js +15 -15
  288. package/esm2015/queries/get-previous-path.js +9 -9
  289. package/esm2015/queries/get-rang-from-block-start.js +16 -16
  290. package/esm2015/queries/get-range-before.js +17 -17
  291. package/esm2015/queries/get-selection-marks.js +19 -19
  292. package/esm2015/queries/get-selection-nodes-by-type.js +29 -29
  293. package/esm2015/queries/get-text.js +9 -9
  294. package/esm2015/queries/get-toolbar-disabled.js +13 -13
  295. package/esm2015/queries/index.js +59 -58
  296. package/esm2015/queries/is-across-blocks.js +7 -7
  297. package/esm2015/queries/is-ancestor-empty.js +6 -6
  298. package/esm2015/queries/is-ancestor.js +3 -3
  299. package/esm2015/queries/is-block-above-empty.js +11 -11
  300. package/esm2015/queries/is-block-active.js +7 -7
  301. package/esm2015/queries/is-block-card-cursor.js +4 -4
  302. package/esm2015/queries/is-block-text-empty-after-selection.js +31 -31
  303. package/esm2015/queries/is-collapsed.js +7 -7
  304. package/esm2015/queries/is-contain-nested-type.js +28 -28
  305. package/esm2015/queries/is-container-type.js +2 -2
  306. package/esm2015/queries/is-descendant.js +3 -3
  307. package/esm2015/queries/is-empty-content.js +15 -0
  308. package/esm2015/queries/is-empty-paragraph-by-path.js +7 -7
  309. package/esm2015/queries/is-empty-paragraph.js +11 -11
  310. package/esm2015/queries/is-first-child.js +5 -5
  311. package/esm2015/queries/is-include-types.js +11 -11
  312. package/esm2015/queries/is-node-type-in.js +9 -9
  313. package/esm2015/queries/is-node-type.js +15 -15
  314. package/esm2015/queries/is-paragraph.js +9 -9
  315. package/esm2015/queries/is-point-at-root.js +2 -2
  316. package/esm2015/queries/is-range-across-blocks.js +18 -18
  317. package/esm2015/queries/is-range-at-root.js +3 -3
  318. package/esm2015/queries/is-start.js +6 -6
  319. package/esm2015/queries/some-node.js +9 -9
  320. package/esm2015/services/color-select.service.js +49 -49
  321. package/esm2015/services/context.service.js +59 -59
  322. package/esm2015/services/table-contextmenu.service.js +189 -189
  323. package/esm2015/services/toolbar.service.js +47 -47
  324. package/esm2015/shortcuts/index.js +5 -5
  325. package/esm2015/shortcuts/mark.js +24 -24
  326. package/esm2015/transforms/apply-deep-to-nodes.js +21 -21
  327. package/esm2015/transforms/clear-marks.js +23 -23
  328. package/esm2015/transforms/close-conversion-hint.js +8 -8
  329. package/esm2015/transforms/delete-element.js +11 -11
  330. package/esm2015/transforms/handle-continual-delete-backward.js +17 -17
  331. package/esm2015/transforms/handle-continual-insert-break.js +19 -19
  332. package/esm2015/transforms/index.js +18 -18
  333. package/esm2015/transforms/insert-elements.js +34 -34
  334. package/esm2015/transforms/insert-paragraph.js +6 -6
  335. package/esm2015/transforms/merge-deep-to-nodes.js +8 -8
  336. package/esm2015/transforms/move-children.js +21 -21
  337. package/esm2015/transforms/on-keydown-reset-block-type.js +22 -22
  338. package/esm2015/transforms/set-end-selection.js +10 -10
  339. package/esm2015/transforms/set-marks.js +9 -9
  340. package/esm2015/transforms/set-node.js +5 -5
  341. package/esm2015/transforms/split-node.js +31 -31
  342. package/esm2015/transforms/un-hang-range.js +11 -11
  343. package/esm2015/transforms/un-wrap.js +11 -11
  344. package/esm2015/transforms/unwrap-nodes-by-type.js +11 -11
  345. package/esm2015/utils/auto-focus.js +13 -13
  346. package/esm2015/utils/auto-scroll-view.js +24 -24
  347. package/esm2015/utils/cast-array.js +7 -7
  348. package/esm2015/utils/common.js +2 -2
  349. package/esm2015/utils/create-empty-paragraph.js +14 -14
  350. package/esm2015/utils/data-transform.js +48 -48
  351. package/esm2015/utils/dom.js +46 -46
  352. package/esm2015/utils/editor-uuid.js +8 -8
  353. package/esm2015/utils/fragment.js +65 -65
  354. package/esm2015/utils/get-editable-element-height.js +6 -6
  355. package/esm2015/utils/get-toolbar-class.js +6 -6
  356. package/esm2015/utils/id-creator.js +11 -11
  357. package/esm2015/utils/index.js +13 -13
  358. package/esm2015/utils/is-clean-empty-paragraph.js +36 -36
  359. package/esm2015/utils/is-inline.js +9 -9
  360. package/esm2015/utils/lodash.js +3 -3
  361. package/esm2015/utils/match.js +29 -29
  362. package/esm2015/utils/merge-element-options.js +19 -19
  363. package/esm2015/utils/weak-maps.js +3 -3
  364. package/esm2015/worktile-theia.js +4 -4
  365. package/fesm2015/worktile-theia.js +13156 -13142
  366. package/fesm2015/worktile-theia.js.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 +1 -1
  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 +74 -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 -57
  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 -0
  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-editable-element-height.d.ts +2 -2
  616. package/utils/get-toolbar-class.d.ts +2 -2
  617. package/utils/id-creator.d.ts +1 -1
  618. package/utils/index.d.ts +13 -13
  619. package/utils/is-clean-empty-paragraph.d.ts +9 -9
  620. package/utils/is-inline.d.ts +2 -2
  621. package/utils/lodash.d.ts +1 -1
  622. package/utils/match.d.ts +18 -18
  623. package/utils/merge-element-options.d.ts +2 -2
  624. package/utils/weak-maps.d.ts +5 -5
  625. package/worktile-theia.d.ts +5 -5
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXhELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsY0FBdUI7SUFDcEYsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QixNQUFNLEVBQ0YsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ25CLEdBQUcsU0FBUyxDQUFDO0lBRWQsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELE1BQU0sRUFDRixVQUFVLEVBQ1YsS0FBSyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQ2xDLEdBQUcsYUFBYSxDQUFDO0lBRWxCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFxQixDQUFDO0lBRWpELGNBQWMsR0FBRyxjQUFjLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztJQUVyRixNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNqQyxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDL0IsQ0FBQyxJQUFzQixFQUFFLFdBQW1CLEVBQUUsRUFBRSxDQUM1QyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksV0FBVyxHQUFHLGNBQWMsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxHQUFHLGNBQWMsQ0FDOUYsQ0FBQztZQUN0QixJQUFJLFNBQVMsRUFBRTtnQkFDWCxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3pFLFVBQVUsQ0FBQyxRQUFRLENBQ2YsTUFBTSxFQUNOLEVBQUUsT0FBTyxFQUFFLEVBQ1g7b0JBQ0ksRUFBRSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDM0YsQ0FDSixDQUFDO2FBQ0w7WUFDRCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBcUIsQ0FBQztZQUNwRSxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQXFCLENBQUM7WUFDdEUsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRTtnQkFDdkQsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUMzRSxVQUFVLENBQUMsUUFBUSxDQUNmLE1BQU0sRUFDTixFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sSUFBSSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUM5RCxFQUFFLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUM5RixDQUFDO2FBQ0w7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBRUgsaUNBQWlDO0lBQ2pDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1FBQ25DLElBQUksYUFBYSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUMzQixNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7Z0JBQzVELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztZQUNILElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDZixVQUFVLENBQUMsUUFBUSxDQUNmLE1BQU0sRUFDTixFQUFFLE9BQU8sRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxjQUFjLENBQUMsRUFBRSxFQUMzRSxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDeEIsQ0FBQzthQUNMO1NBQ0o7YUFBTTtZQUNILDhDQUE4QztZQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUMzQixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRTtvQkFDckMsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO29CQUN2RCxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNuRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2xlYXJDZWxsIH0gZnJvbSAnLi9jbGVhci1jZWxsJztcbmltcG9ydCB7IHJlbW92ZUNvbHVtbnMgfSBmcm9tICcuLi91dGlscy9yZW1vdmUtY29sdW1ucyc7XG5pbXBvcnQgeyBUYWJsZU9wdGlvbnMgfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XG5pbXBvcnQgeyBUYWJsZUNlbGxFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNvbHVtbihvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBzZWxlY3RDb2xJbmRleD86IG51bWJlcikge1xuICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3I7XG4gICAgY29uc3Qge1xuICAgICAgICBhbmNob3I6IHsgcGF0aCB9XG4gICAgfSA9IHNlbGVjdGlvbjtcblxuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBUYWJsZVBvc2l0aW9uLmNyZWF0ZShvcHRzLCBlZGl0b3IsIHBhdGgpO1xuICAgIGNvbnN0IHtcbiAgICAgICAgdGFibGVFbnRyeSxcbiAgICAgICAgdGFibGUsXG4gICAgICAgIHJvdyxcbiAgICAgICAgY2VsbEVudHJ5OiBbY2VsbE5vZGUsIGNlbGxQYXRoXVxuICAgIH0gPSB0YWJsZVBvc2l0aW9uO1xuXG4gICAgY29uc3Qgcm93cyA9IHRhYmxlRW50cnlbMF0uY2hpbGRyZW4gYXMgRWxlbWVudFtdO1xuXG4gICAgc2VsZWN0Q29sSW5kZXggPSBzZWxlY3RDb2xJbmRleCA9PT0gdW5kZWZpbmVkID8gWy4uLmNlbGxQYXRoXS5wb3AoKSA6IHNlbGVjdENvbEluZGV4O1xuXG4gICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgdGFibGUuY2hpbGRyZW4ubWFwKChyb3csIHJvd0luZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGwgPSByb3cuY2hpbGRyZW4uZmluZChcbiAgICAgICAgICAgICAgICAoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY29sdW1uSW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNvbHVtbkluZGV4IDwgc2VsZWN0Q29sSW5kZXggJiYgY2VsbC5jb2xzcGFuICYmIGNlbGwuY29sc3BhbiArIGNvbHVtbkluZGV4ID4gc2VsZWN0Q29sSW5kZXhcbiAgICAgICAgICAgICkgYXMgVGFibGVDZWxsRWxlbWVudDtcbiAgICAgICAgICAgIGlmIChkaXJ0eUNlbGwpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2xzcGFuID0gZGlydHlDZWxsLmNvbHNwYW4gLSAxID4gMSA/IGRpcnR5Q2VsbC5jb2xzcGFuIC0gMSA6IG51bGw7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW4gfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChyb3cuY2hpbGRyZW4uaW5kZXhPZihkaXJ0eUNlbGwpKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHJlbW92ZUNlbGwgPSByb3cuY2hpbGRyZW5bc2VsZWN0Q29sSW5kZXhdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBuZXh0Q2VsbCA9IHJvdy5jaGlsZHJlbltzZWxlY3RDb2xJbmRleCArIDFdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAobmV4dENlbGwgJiYgbmV4dENlbGwuaGlkZGVuICYmIHJlbW92ZUNlbGwuY29sc3BhbiA+IDEpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2xzcGFuID0gcmVtb3ZlQ2VsbC5jb2xzcGFuIC0gMSA+IDEgPyByZW1vdmVDZWxsLmNvbHNwYW4gLSAxIDogbnVsbDtcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHsgY29sc3Bhbiwgcm93c3BhbjogcmVtb3ZlQ2VsbC5yb3dzcGFuIHx8IG51bGwsIGhpZGRlbjogbnVsbCB9LFxuICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQocm93LmNoaWxkcmVuLmluZGV4T2YobmV4dENlbGwpKSB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBSZW1vdmUgdGhlIGNlbGwgZnJvbSBldmVyeSByb3dcbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICBpZiAodGFibGVQb3NpdGlvbi5nZXRXaWR0aCgpID4gMSkge1xuICAgICAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIHJvd0luZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChbcm93SW5kZXgsIHNlbGVjdENvbEluZGV4XSk7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmICh0YWJsZS5jb2x1bW5zKSB7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICB7IGNvbHVtbnM6IHJlbW92ZUNvbHVtbnModGFibGUsIHRhYmxlLmNvbHVtbnMubGVuZ3RoIC0gMSwgc2VsZWN0Q29sSW5kZXgpIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgYXQ6IHRhYmxlRW50cnlbMV0gfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBJZiBsYXN0IGNvbHVtbiwgY2xlYXIgdGV4dCBpbiBjZWxscyBpbnN0ZWFkXG4gICAgICAgICAgICByb3dzLmZvckVhY2goKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICByb3cuY2hpbGRyZW4uZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF0ID0gdGFibGVFbnRyeVsxXS5jb25jYXQoW3Jvd0luZGV4LCBjZWxsSW5kZXhdKTtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJDZWxsKG9wdHMsIGVkaXRvciwgW2NlbGwgYXMgRWxlbWVudCwgYXRdKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4iXX0=
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,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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvcmVtb3ZlLXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFXLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFrQixFQUFFLE1BQWMsRUFBRSxjQUF1QjtJQUNqRixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFFZCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsTUFBTSxFQUNGLFVBQVUsRUFDVixLQUFLLEVBQ0wsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUMvQixHQUFHLGFBQWEsQ0FBQztJQUVsQixjQUFjLEdBQUcsY0FBYyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDcEYsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVoRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUs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QztRQUNQLENBQUMsQ0FBQyxDQUFDO0tBQ047QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCwgVGFibGVSb3dFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBjbGVhckNlbGwgfSBmcm9tICcuL2NsZWFyLWNlbGwnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUm93KG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIHNlbGVjdFJvd0luZGV4PzogbnVtYmVyKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCB7XG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cbiAgICB9ID0gc2VsZWN0aW9uO1xuXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XG4gICAgY29uc3Qge1xuICAgICAgICB0YWJsZUVudHJ5LFxuICAgICAgICB0YWJsZSxcbiAgICAgICAgcm93RW50cnk6IFtyb3dOb2RlLCByb3dQYXRoXVxuICAgIH0gPSB0YWJsZVBvc2l0aW9uO1xuXG4gICAgc2VsZWN0Um93SW5kZXggPSBzZWxlY3RSb3dJbmRleCA9PT0gdW5kZWZpbmVkID8gWy4uLnJvd1BhdGhdLnBvcCgpIDogc2VsZWN0Um93SW5kZXg7XG4gICAgY29uc3QgYXQgPSB0YWJsZUVudHJ5WzFdLmNvbmNhdChzZWxlY3RSb3dJbmRleCk7XG5cbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICB0YWJsZS5jaGlsZHJlbi5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChyb3dJbmRleCA8IHNlbGVjdFJvd0luZGV4KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGlydHlDZWxscyA9IHJvdy5jaGlsZHJlbi5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNlbGwuaGlkZGVuICYmIGNlbGwucm93c3BhbiAmJiBjZWxsLnJvd3NwYW4gKyByb3dJbmRleCA+IHNlbGVjdFJvd0luZGV4XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAoZGlydHlDZWxscy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlydHlDZWxscy5tYXAoKGRpcnR5Q2VsbDogVGFibGVDZWxsRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c3BhbiA9IGRpcnR5Q2VsbC5yb3dzcGFuIC0gMSA+IDEgPyBkaXJ0eUNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyByb3dzcGFuIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcmVtb3ZlUm93ID0gdGFibGUuY2hpbGRyZW5bc2VsZWN0Um93SW5kZXhdIGFzIFRhYmxlUm93RWxlbWVudDtcbiAgICAgICAgY29uc3QgbmV4dFJvdyA9IHRhYmxlLmNoaWxkcmVuW3NlbGVjdFJvd0luZGV4ICsgMV0gYXMgVGFibGVSb3dFbGVtZW50O1xuICAgICAgICBpZiAobmV4dFJvdykge1xuICAgICAgICAgICAgcmVtb3ZlUm93LmNoaWxkcmVuLm1hcCgoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dENlbGwgPSBuZXh0Um93LmNoaWxkcmVuW2NlbGxJbmRleF07XG4gICAgICAgICAgICAgICAgaWYgKG5leHRDZWxsICYmIGNlbGwucm93c3BhbiA+IDEgJiYgbmV4dENlbGwuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvd3NwYW4gPSBjZWxsLnJvd3NwYW4gLSAxID4gMSA/IGNlbGwucm93c3BhbiAtIDEgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuOiBjZWxsLmNvbHNwYW4gfHwgbnVsbCwgcm93c3BhbiwgaGlkZGVuOiBudWxsIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHNlbGVjdFJvd0luZGV4ICsgMSkuY29uY2F0KGNlbGxJbmRleCkgfVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBVcGRhdGUgdGFibGUgYnkgcmVtb3ZpbmcgdGhlIHJvd1xuICAgIGlmICh0YWJsZVBvc2l0aW9uLmdldEhlaWdodCgpID4gMSkge1xuICAgICAgICBUcmFuc2Zvcm1zLnJlbW92ZU5vZGVzKGVkaXRvciwgeyBhdCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBJZiBsYXN0IHJlbWFpbmluZyByb3csIGNsZWFyIGl0IGluc3RlYWRcbiAgICAgICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgICAgIChyb3dOb2RlLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkuZm9yRWFjaCgoY2VsbCwgY2VsbEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJDZWxsKG9wdHMsIGVkaXRvciwgW2NlbGwsIGF0LmNvbmNhdChjZWxsSW5kZXgpXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
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,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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9yZW1vdmUtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBVyxJQUFJLEVBQUUsVUFBVSxFQUF5QixNQUFNLE9BQU8sQ0FBQztBQUNqRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQWtCLEVBQUUsTUFBYztJQUMxRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFDZCxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsTUFBTSxFQUNGLEtBQUssRUFDTCxVQUFVLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUM1QixHQUFHLEdBQUcsQ0FBQztJQUNSLElBQUksY0FBYyxHQUF1QixJQUFJLENBQUM7SUFDOUMsSUFBSSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFaEMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBVSxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRSxJQUFJLFNBQVMsRUFBRTtRQUNYLGNBQWMsR0FBRyxTQUFTLENBQUM7S0FDOUI7U0FBTTtRQUNILE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQVUsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDdEUsSUFBSSxTQUFTLEVBQUU7WUFDWCxjQUFjLEdBQUcsU0FBUyxDQUFDO1lBQzNCLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUM5QjthQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUMzQixjQUFjLEdBQUc7Z0JBQ2I7b0JBQ0ksSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhO29CQUN4QixRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztpQkFDaEI7Z0JBQ1osSUFBSTthQUNQLENBQUM7WUFDRixjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO0tBQ0o7SUFFRCxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUUxRSxJQUFJLENBQUMsY0FBYyxFQUFFO1FBQ2pCLE9BQU87S0FDVjtJQUVELElBQUksbUJBQW1CLEVBQUU7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7S0FDdkM7U0FBTTtRQUNILE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDekM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBQYXRoLCBUcmFuc2Zvcm1zLCBOb2RlRW50cnksIERlc2NlbmRhbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBjcmVhdGVFbXB0eVBhcmFncmFwaCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2NyZWF0ZS1lbXB0eS1wYXJhZ3JhcGgnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IE5leHRQYXRoIH0gZnJvbSAnLi4vdXRpbHMvbmV4dC1wYXRoJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVRhYmxlKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IpIHtcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xuICAgIGNvbnN0IHtcbiAgICAgICAgYW5jaG9yOiB7IHBhdGggfVxuICAgIH0gPSBzZWxlY3Rpb247XG4gICAgY29uc3QgcG9zID0gVGFibGVQb3NpdGlvbi5jcmVhdGUob3B0cywgZWRpdG9yLCBwYXRoKTtcbiAgICBjb25zdCB7XG4gICAgICAgIHRhYmxlLFxuICAgICAgICB0YWJsZUVudHJ5OiBbLCB0YWJsZVBhdGhdXG4gICAgfSA9IHBvcztcbiAgICBsZXQgbmV4dEZvY3VzRW50cnk6IE5vZGVFbnRyeTxFbGVtZW50PiA9IG51bGw7XG4gICAgbGV0IHNob3VsZENvbGxhcHNlVG9FbmQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5leHRFbnRyeSA9IEVkaXRvci5uZXh0PEVsZW1lbnQ+KGVkaXRvciwgeyBhdDogdGFibGVQYXRoIH0pO1xuICAgIGlmIChuZXh0RW50cnkpIHtcbiAgICAgICAgbmV4dEZvY3VzRW50cnkgPSBuZXh0RW50cnk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcHJldkVudHJ5ID0gRWRpdG9yLnByZXZpb3VzPEVsZW1lbnQ+KGVkaXRvciwgeyBhdDogdGFibGVQYXRoIH0pO1xuICAgICAgICBpZiAocHJldkVudHJ5KSB7XG4gICAgICAgICAgICBuZXh0Rm9jdXNFbnRyeSA9IHByZXZFbnRyeTtcbiAgICAgICAgICAgIHNob3VsZENvbGxhcHNlVG9FbmQgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZXhpdEJsb2NrVHlwZSkge1xuICAgICAgICAgICAgbmV4dEZvY3VzRW50cnkgPSBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBvcHRzLmV4aXRCbG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOiBbeyB0ZXh0OiAnJyB9XVxuICAgICAgICAgICAgICAgIH0gYXMgRWxlbWVudCxcbiAgICAgICAgICAgICAgICBudWxsXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgbmV4dEZvY3VzRW50cnlbMV0gPSBOZXh0UGF0aCh0YWJsZVBhdGgpO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzBdLCB7IGF0OiBuZXh0Rm9jdXNFbnRyeVsxXSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiB0YWJsZVBhdGggfSk7XG4gICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIGNyZWF0ZUVtcHR5UGFyYWdyYXBoKCksIHsgYXQ6IHRhYmxlUGF0aCB9KTtcblxuICAgIGlmICghbmV4dEZvY3VzRW50cnkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChzaG91bGRDb2xsYXBzZVRvRW5kKSB7XG4gICAgICAgIGNvbnN0IGVuZFBvaW50ID0gRWRpdG9yLmVuZChlZGl0b3IsIG5leHRGb2N1c0VudHJ5WzFdKTtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QoZWRpdG9yLCBlbmRQb2ludCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcHJldmlvdXNQYXRoID0gUGF0aC5wcmV2aW91cyhuZXh0Rm9jdXNFbnRyeVsxXSk7XG4gICAgICAgIGNvbnN0IHN0YXJ0UG9pbnQgPSBFZGl0b3Iuc3RhcnQoZWRpdG9yLCBwcmV2aW91c1BhdGgpO1xuICAgICAgICBUcmFuc2Zvcm1zLnNlbGVjdChlZGl0b3IsIHN0YXJ0UG9pbnQpO1xuICAgIH1cbn1cbiJdfQ==
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,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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbHVtbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9hZGQtY29sdW1ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFtQixFQUFFLFlBQW9CLEVBQUUsV0FBb0I7SUFDdEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxZQUFZLEVBQUU7UUFDckMsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLEtBQUssQ0FBQyxFQUFFO1lBQ25DLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUN0QztRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEMsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzdELE9BQU8sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDcEMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRU4sS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxRCxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7U0FDaEU7UUFDRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDM0QsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFTixNQUFNLFVBQVUsR0FBRyxhQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFDckQsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2pDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwSCxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7S0FDTjtJQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZENvbHVtbnModGFibGU6IFRhYmxlRWxlbWVudCwgY29sdW1uc0NvdW50OiBudW1iZXIsIGluc2VydEluZGV4PzogbnVtYmVyKSB7XG4gICAgaWYgKHRhYmxlLmNvbHVtbnMubGVuZ3RoIDwgY29sdW1uc0NvdW50KSB7XG4gICAgICAgIGlmICghaW5zZXJ0SW5kZXggJiYgaW5zZXJ0SW5kZXggIT09IDApIHtcbiAgICAgICAgICAgIGluc2VydEluZGV4ID0gdGFibGUuY29sdW1ucy5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3B0cyA9IG5ldyBUYWJsZU9wdGlvbnMoKTtcbiAgICAgICAgbGV0IGNvbHVtbnMgPSB0YWJsZS5jb2x1bW5zLnNsaWNlKDAsIGNvbHVtbnNDb3VudCkubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHsgd2lkdGg6IGl0ZW0ud2lkdGggfTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHByZVRvdGFsV2lkdGggPSB0YWJsZS5jb2x1bW5zLnJlZHVjZSgocHJldlZhbHVlLCBjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBwcmV2VmFsdWUgKyBjb2x1bW4ud2lkdGg7XG4gICAgICAgIH0sIDApO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29sdW1uc0NvdW50IC0gdGFibGUuY29sdW1ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29sdW1ucy5zcGxpY2UoaW5zZXJ0SW5kZXgsIDAsIHsgd2lkdGg6IG9wdHMuZGVmYXVsdFdpZHRoIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGN1cnJlbnRUb3RhbFdpZHRoID0gY29sdW1ucy5yZWR1Y2UoKHByZXZWYWx1ZSwgY29sdW1uKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gcHJldlZhbHVlICsgY29sdW1uLndpZHRoO1xuICAgICAgICB9LCAwKTtcblxuICAgICAgICBjb25zdCBwZXJjZW50YWdlID0gcHJlVG90YWxXaWR0aCAvIGN1cnJlbnRUb3RhbFdpZHRoO1xuICAgICAgICByZXR1cm4gY29sdW1ucy5tYXAoKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gTWF0aC5yb3VuZChjb2x1bW4ud2lkdGggKiBwZXJjZW50YWdlID4gb3B0cy5taW5XaWR0aFB4ID8gY29sdW1uLndpZHRoICogcGVyY2VudGFnZSA6IG9wdHMubWluV2lkdGhQeCk7XG4gICAgICAgICAgICByZXR1cm4geyB3aWR0aCB9O1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRhYmxlLmNvbHVtbnM7XG59XG4iXX0=
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,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