@worktile/theia 3.0.9 → 3.1.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (705) hide show
  1. package/README.md +11 -11
  2. package/components/color-select/color-select.component.d.ts +32 -32
  3. package/components/color-select/color-select.component.scss +107 -107
  4. package/components/column-resize/column-resize-notifier.d.ts +35 -35
  5. package/components/column-resize/column-resize.directive.d.ts +26 -26
  6. package/components/column-resize/column-resize.module.d.ts +14 -14
  7. package/components/column-resize/event-dispatcher.d.ts +31 -31
  8. package/components/column-resize/overlay-handle.component.d.ts +33 -33
  9. package/components/column-resize/resize-ref.d.ts +25 -25
  10. package/components/column-resize/resizing.store.d.ts +28 -28
  11. package/components/column-resize/selectors.d.ts +3 -3
  12. package/components/contextmenu/contextmenu.component.d.ts +22 -22
  13. package/components/conversion-hint/conversion-hint.component.d.ts +18 -18
  14. package/components/conversion-hint/conversion-hint.component.scss +11 -11
  15. package/components/element/element.component.d.ts +7 -7
  16. package/components/inline-toolbar/inline-toolbar.component.d.ts +26 -26
  17. package/components/nav-split-line/nav-split-line.component.d.ts +13 -13
  18. package/components/table-select/table-select.component.d.ts +20 -20
  19. package/components/table-select/table-select.component.scss +35 -35
  20. package/components/template/template.component.d.ts +15 -15
  21. package/components/text/text.component.d.ts +14 -14
  22. package/components/toolbar/toolbar.component.d.ts +64 -65
  23. package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +33 -33
  24. package/components/toolbar-group/toolbar-group.component.d.ts +33 -33
  25. package/components/toolbar-group/toolbar-group.component.scss +17 -17
  26. package/components/toolbar-item/toolbar-item.component.d.ts +17 -18
  27. package/constants/auto-format-rules.d.ts +2 -2
  28. package/constants/code.d.ts +9 -9
  29. package/constants/color-select.d.ts +14 -14
  30. package/constants/default.d.ts +9 -9
  31. package/constants/error.d.ts +5 -5
  32. package/constants/index.d.ts +5 -5
  33. package/constants/node-types.d.ts +99 -99
  34. package/constants/selector.d.ts +2 -2
  35. package/constants/toolbar.d.ts +17 -17
  36. package/core/create-plugin.d.ts +2 -2
  37. package/core/create-toolbar.d.ts +5 -5
  38. package/core/index.d.ts +4 -4
  39. package/core/toolbar-item/base-toolbar-item.d.ts +29 -29
  40. package/core/utils/combine-plugins.d.ts +2 -2
  41. package/core/utils/flatten-deep-plugins.d.ts +6 -6
  42. package/core/utils/get-plugin-options.d.ts +2 -2
  43. package/core/utils/get-plugin.d.ts +2 -2
  44. package/core/utils/get-plugins.d.ts +2 -2
  45. package/core/utils/index.d.ts +10 -10
  46. package/core/utils/merge-array.d.ts +1 -1
  47. package/core/utils/merge-deep-plugins.d.ts +2 -2
  48. package/core/utils/merge-options.d.ts +2 -2
  49. package/core/utils/nested-structure-by-key.d.ts +2 -2
  50. package/core/utils/plugins-by-key.d.ts +2 -2
  51. package/core/with-theia.d.ts +4 -4
  52. package/custom-types.d.ts +131 -131
  53. package/editor.component.d.ts +92 -92
  54. package/editor.module.d.ts +98 -98
  55. package/esm2020/components/color-select/color-select.component.mjs +109 -0
  56. package/esm2020/components/column-resize/column-resize-notifier.mjs +31 -0
  57. package/{esm2015/components/column-resize/column-resize.directive.js → esm2020/components/column-resize/column-resize.directive.mjs} +99 -99
  58. package/esm2020/components/column-resize/column-resize.module.mjs +33 -0
  59. package/{esm2015/components/column-resize/event-dispatcher.js → esm2020/components/column-resize/event-dispatcher.mjs} +56 -56
  60. package/{esm2015/components/column-resize/overlay-handle.component.js → esm2020/components/column-resize/overlay-handle.component.mjs} +140 -140
  61. package/{esm2015/components/column-resize/resize-ref.js → esm2020/components/column-resize/resize-ref.mjs} +25 -25
  62. package/{esm2015/components/column-resize/resizing.store.js → esm2020/components/column-resize/resizing.store.mjs} +155 -155
  63. package/{esm2015/components/column-resize/selectors.js → esm2020/components/column-resize/selectors.mjs} +4 -4
  64. package/esm2020/components/contextmenu/contextmenu.component.mjs +61 -0
  65. package/esm2020/components/conversion-hint/conversion-hint.component.mjs +54 -0
  66. package/esm2020/components/element/element.component.mjs +23 -0
  67. package/esm2020/components/inline-toolbar/inline-toolbar.component.mjs +138 -0
  68. package/{esm2015/components/nav-split-line/nav-split-line.component.js → esm2020/components/nav-split-line/nav-split-line.component.mjs} +37 -37
  69. package/esm2020/components/table-select/table-select.component.mjs +50 -0
  70. package/esm2020/components/template/template.component.mjs +62 -0
  71. package/{esm2015/components/text/text.component.js → esm2020/components/text/text.component.mjs} +58 -58
  72. package/esm2020/components/toolbar/toolbar.component.mjs +241 -0
  73. package/esm2020/components/toolbar-dropdown/toolbar-dropdown.component.mjs +129 -0
  74. package/esm2020/components/toolbar-group/toolbar-group.component.mjs +110 -0
  75. package/esm2020/components/toolbar-item/toolbar-item.component.mjs +101 -0
  76. package/{esm2015/constants/auto-format-rules.js → esm2020/constants/auto-format-rules.mjs} +166 -166
  77. package/{esm2015/constants/code.js → esm2020/constants/code.mjs} +88 -88
  78. package/{esm2015/constants/color-select.js → esm2020/constants/color-select.mjs} +61 -61
  79. package/{esm2015/constants/default.js → esm2020/constants/default.mjs} +9 -9
  80. package/{esm2015/constants/error.js → esm2020/constants/error.mjs} +7 -7
  81. package/{esm2015/constants/index.js → esm2020/constants/index.mjs} +5 -5
  82. package/{esm2015/constants/node-types.js → esm2020/constants/node-types.mjs} +132 -132
  83. package/{esm2015/constants/selector.js → esm2020/constants/selector.mjs} +3 -3
  84. package/{esm2015/constants/toolbar.js → esm2020/constants/toolbar.mjs} +69 -69
  85. package/{esm2015/core/create-plugin.js → esm2020/core/create-plugin.mjs} +4 -4
  86. package/esm2020/core/create-toolbar.mjs +56 -0
  87. package/{esm2015/core/index.js → esm2020/core/index.mjs} +4 -4
  88. package/esm2020/core/toolbar-item/base-toolbar-item.mjs +90 -0
  89. package/{esm2015/core/utils/combine-plugins.js → esm2020/core/utils/combine-plugins.mjs} +9 -9
  90. package/{esm2015/core/utils/flatten-deep-plugins.js → esm2020/core/utils/flatten-deep-plugins.mjs} +18 -18
  91. package/esm2020/core/utils/get-plugin-options.mjs +3 -0
  92. package/{esm2015/core/utils/get-plugin.js → esm2020/core/utils/get-plugin.mjs} +1 -1
  93. package/esm2020/core/utils/get-plugins.mjs +4 -0
  94. package/{esm2015/core/utils/index.js → esm2020/core/utils/index.mjs} +10 -10
  95. package/esm2020/core/utils/merge-array.mjs +18 -0
  96. package/{esm2015/core/utils/merge-deep-plugins.js → esm2020/core/utils/merge-deep-plugins.mjs} +13 -13
  97. package/{esm2015/core/utils/merge-options.js → esm2020/core/utils/merge-options.mjs} +19 -19
  98. package/{esm2015/core/utils/nested-structure-by-key.js → esm2020/core/utils/nested-structure-by-key.mjs} +10 -10
  99. package/{esm2015/core/utils/plugins-by-key.js → esm2020/core/utils/plugins-by-key.mjs} +9 -9
  100. package/{esm2015/core/with-theia.js → esm2020/core/with-theia.mjs} +22 -22
  101. package/{esm2015/custom-types.js → esm2020/custom-types.mjs} +1 -1
  102. package/esm2020/editor.component.mjs +431 -0
  103. package/{esm2015/editor.module.js → esm2020/editor.module.mjs} +201 -202
  104. package/{esm2015/interfaces/auto-format.js → esm2020/interfaces/auto-format.mjs} +1 -1
  105. package/esm2020/interfaces/editor.mjs +25 -0
  106. package/{esm2015/interfaces/element.js → esm2020/interfaces/element.mjs} +1 -1
  107. package/{esm2015/interfaces/image.js → esm2020/interfaces/image.mjs} +2 -2
  108. package/{esm2015/interfaces/index.js → esm2020/interfaces/index.mjs} +8 -8
  109. package/{esm2015/interfaces/plugins/index.js → esm2020/interfaces/plugins/index.mjs} +4 -4
  110. package/{esm2015/interfaces/plugins/no-infer.js → esm2020/interfaces/plugins/no-infer.mjs} +1 -1
  111. package/{esm2015/interfaces/plugins/plugin-key.js → esm2020/interfaces/plugins/plugin-key.mjs} +39 -39
  112. package/{esm2015/interfaces/plugins/plugins.js → esm2020/interfaces/plugins/plugins.mjs} +1 -1
  113. package/{esm2015/interfaces/plugins/with-override.js → esm2020/interfaces/plugins/with-override.mjs} +1 -1
  114. package/esm2020/interfaces/reset-block-type-plugin-options.mjs +2 -0
  115. package/{esm2015/interfaces/toolbar.js → esm2020/interfaces/toolbar.mjs} +11 -11
  116. package/esm2020/interfaces/upload.mjs +2 -0
  117. package/{esm2015/interfaces/utility/index.js → esm2020/interfaces/utility/index.mjs} +3 -3
  118. package/{esm2015/interfaces/utility/nested-structure-by-key.js → esm2020/interfaces/utility/nested-structure-by-key.mjs} +1 -1
  119. package/{esm2015/interfaces/utility/override-by-key.js → esm2020/interfaces/utility/override-by-key.mjs} +1 -1
  120. package/{esm2015/interfaces/utility/types.js → esm2020/interfaces/utility/types.mjs} +1 -1
  121. package/{esm2015/interfaces/valid-children-types.js → esm2020/interfaces/valid-children-types.mjs} +35 -35
  122. package/{esm2015/interfaces/view-base.js → esm2020/interfaces/view-base.mjs} +21 -21
  123. package/{esm2015/pipes.js → esm2020/pipes.mjs} +42 -42
  124. package/esm2020/plugins/align/align.editor.mjs +47 -0
  125. package/{esm2015/plugins/align/align.plugin.js → esm2020/plugins/align/align.plugin.mjs} +63 -63
  126. package/esm2020/plugins/autoformat/autoformat.plugin.mjs +109 -0
  127. package/{esm2015/plugins/autoformat/transforms/auto-format-block.js → esm2020/plugins/autoformat/transforms/auto-format-block.mjs} +14 -14
  128. package/{esm2015/plugins/autoformat/transforms/auto-format-inline.js → esm2020/plugins/autoformat/transforms/auto-format-inline.mjs} +77 -77
  129. package/{esm2015/plugins/blockquote/blockquote.component.js → esm2020/plugins/blockquote/blockquote.component.mjs} +21 -21
  130. package/esm2020/plugins/blockquote/blockquote.editor.mjs +20 -0
  131. package/{esm2015/plugins/blockquote/blockquote.plugin.js → esm2020/plugins/blockquote/blockquote.plugin.mjs} +70 -70
  132. package/esm2020/plugins/code/code.component.mjs +241 -0
  133. package/{esm2015/plugins/code/code.editor.js → esm2020/plugins/code/code.editor.mjs} +47 -47
  134. package/{esm2015/plugins/code/code.plugin.js → esm2020/plugins/code/code.plugin.mjs} +41 -41
  135. package/esm2020/plugins/color/color.editor.mjs +44 -0
  136. package/{esm2015/plugins/color/color.plugin.js → esm2020/plugins/color/color.plugin.mjs} +27 -27
  137. package/esm2020/plugins/color/toolbar-item.component.mjs +123 -0
  138. package/esm2020/plugins/common/auto-insert-data..mjs +77 -0
  139. package/{esm2015/plugins/common/block-card.plugin.js → esm2020/plugins/common/block-card.plugin.mjs} +287 -287
  140. package/esm2020/plugins/common/get-fragment.plugin.mjs +24 -0
  141. package/{esm2015/plugins/common/history.plugin.js → esm2020/plugins/common/history.plugin.mjs} +30 -30
  142. package/{esm2015/plugins/common/move-selection.plugin.js → esm2020/plugins/common/move-selection.plugin.mjs} +89 -89
  143. package/{esm2015/plugins/common/remove-empty.plugin.js → esm2020/plugins/common/remove-empty.plugin.mjs} +59 -59
  144. package/{esm2015/plugins/common/remove-void.plugin.js → esm2020/plugins/common/remove-void.plugin.mjs} +56 -56
  145. package/{esm2015/plugins/common/reset-type.plugin.js → esm2020/plugins/common/reset-type.plugin.mjs} +34 -34
  146. package/{esm2015/plugins/common/transforms.plugin.js → esm2020/plugins/common/transforms.plugin.mjs} +17 -17
  147. package/{esm2015/plugins/deserializers/deserialize-html.plugin.js → esm2020/plugins/deserializers/deserialize-html.plugin.mjs} +38 -38
  148. package/{esm2015/plugins/deserializers/deserialize-md.plugin.js → esm2020/plugins/deserializers/deserialize-md.plugin.mjs} +121 -121
  149. package/esm2020/plugins/font-size/font-size.editor.mjs +98 -0
  150. package/{esm2015/plugins/heading/heading.editor.js → esm2020/plugins/heading/heading.editor.mjs} +53 -53
  151. package/{esm2015/plugins/heading/heading.plugin.js → esm2020/plugins/heading/heading.plugin.mjs} +84 -84
  152. package/{esm2015/plugins/hr/hr.component.js → esm2020/plugins/hr/hr.component.mjs} +40 -40
  153. package/{esm2015/plugins/hr/hr.editor.js → esm2020/plugins/hr/hr.editor.mjs} +7 -7
  154. package/{esm2015/plugins/hr/hr.plugin.js → esm2020/plugins/hr/hr.plugin.mjs} +41 -41
  155. package/esm2020/plugins/image/image.component.mjs +365 -0
  156. package/{esm2015/plugins/image/image.editor.js → esm2020/plugins/image/image.editor.mjs} +57 -57
  157. package/esm2020/plugins/image/image.plugin.mjs +57 -0
  158. package/esm2020/plugins/indent/indent.editor.mjs +71 -0
  159. package/esm2020/plugins/indent/indent.plugin.mjs +58 -0
  160. package/{esm2015/plugins/indent/on-keydown-indent.js → esm2020/plugins/indent/on-keydown-indent.mjs} +53 -53
  161. package/{esm2015/plugins/index.js → esm2020/plugins/index.mjs} +70 -70
  162. package/{esm2015/plugins/inline-code/inline-code.component.js → esm2020/plugins/inline-code/inline-code.component.mjs} +23 -23
  163. package/{esm2015/plugins/inline-code/inline-code.editor.js → esm2020/plugins/inline-code/inline-code.editor.mjs} +48 -49
  164. package/{esm2015/plugins/inline-code/inline-code.plugin.js → esm2020/plugins/inline-code/inline-code.plugin.mjs} +65 -65
  165. package/esm2020/plugins/link/edit/link-edit.component.mjs +105 -0
  166. package/esm2020/plugins/link/hover/link-hover.component.mjs +36 -0
  167. package/{esm2015/plugins/link/link.component.js → esm2020/plugins/link/link.component.mjs} +164 -164
  168. package/{esm2015/plugins/link/link.editor.js → esm2020/plugins/link/link.editor.mjs} +66 -66
  169. package/{esm2015/plugins/link/link.plugin.js → esm2020/plugins/link/link.plugin.mjs} +58 -58
  170. package/{esm2015/plugins/link/link.types.js → esm2020/plugins/link/link.types.mjs} +12 -12
  171. package/esm2020/plugins/list/components/bulleted-list.component.mjs +33 -0
  172. package/esm2020/plugins/list/components/list-item.component.mjs +93 -0
  173. package/esm2020/plugins/list/components/numbered-list.component.mjs +39 -0
  174. package/{esm2015/plugins/list/list.editor.js → esm2020/plugins/list/list.editor.mjs} +125 -125
  175. package/esm2020/plugins/list/list.plugin.mjs +286 -0
  176. package/{esm2015/plugins/list/normalizers/get-list-normalizer.js → esm2020/plugins/list/normalizers/get-list-normalizer.mjs} +39 -39
  177. package/esm2020/plugins/list/normalizers/normalize-list-item.mjs +18 -0
  178. package/{esm2015/plugins/list/normalizers/normalize-no.js → esm2020/plugins/list/normalizers/normalize-no.mjs} +42 -42
  179. package/{esm2015/plugins/list/on-key-down-list.js → esm2020/plugins/list/on-key-down-list.mjs} +32 -32
  180. package/{esm2015/plugins/list/queries/get-list-item-entry.js → esm2020/plugins/list/queries/get-list-item-entry.mjs} +27 -27
  181. package/{esm2015/plugins/list/queries/get-list-item-sublist.js → esm2020/plugins/list/queries/get-list-item-sublist.mjs} +12 -12
  182. package/{esm2015/plugins/list/queries/get-list-types.js → esm2020/plugins/list/queries/get-list-types.mjs} +5 -5
  183. package/{esm2015/plugins/list/queries/get-start-list-item.js → esm2020/plugins/list/queries/get-start-list-item.mjs} +26 -26
  184. package/{esm2015/plugins/list/queries/has-list-in-list-item.js → esm2020/plugins/list/queries/has-list-in-list-item.mjs} +27 -27
  185. package/{esm2015/plugins/list/queries/is-in-list.js → esm2020/plugins/list/queries/is-in-list.mjs} +5 -5
  186. package/{esm2015/plugins/list/queries/is-list-nested.js → esm2020/plugins/list/queries/is-list-nested.mjs} +10 -10
  187. package/{esm2015/plugins/list/queries/is-list.js → esm2020/plugins/list/queries/is-list.mjs} +5 -5
  188. package/{esm2015/plugins/list/queries/is-node-type-list.js → esm2020/plugins/list/queries/is-node-type-list.mjs} +4 -4
  189. package/{esm2015/plugins/list/queries/is-selection-at-list-item-start.js → esm2020/plugins/list/queries/is-selection-at-list-item-start.mjs} +12 -12
  190. package/{esm2015/plugins/list/queries/is-selection-in-same-list-item.js → esm2020/plugins/list/queries/is-selection-in-same-list-item.mjs} +16 -16
  191. package/{esm2015/plugins/list/queries/is-single-list-item.js → esm2020/plugins/list/queries/is-single-list-item.mjs} +9 -9
  192. package/{esm2015/plugins/list/transforms/insert-list-data.js → esm2020/plugins/list/transforms/insert-list-data.mjs} +71 -71
  193. package/{esm2015/plugins/list/transforms/insert-list-item.js → esm2020/plugins/list/transforms/insert-list-item.mjs} +72 -72
  194. package/{esm2015/plugins/list/transforms/move-list-item-down.js → esm2020/plugins/list/transforms/move-list-item-down.mjs} +41 -41
  195. package/{esm2015/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.js → esm2020/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.mjs} +42 -42
  196. package/{esm2015/plugins/list/transforms/move-list-item-sublist-items-to-list.js → esm2020/plugins/list/transforms/move-list-item-sublist-items-to-list.mjs} +29 -29
  197. package/{esm2015/plugins/list/transforms/move-list-item-up.js → esm2020/plugins/list/transforms/move-list-item-up.mjs} +77 -77
  198. package/{esm2015/plugins/list/transforms/unwrap-list.js → esm2020/plugins/list/transforms/unwrap-list.mjs} +9 -9
  199. package/esm2020/plugins/list/types.mjs +2 -0
  200. package/esm2020/plugins/mark/mark.editor.mjs +28 -0
  201. package/esm2020/plugins/mark/mark.plugin.mjs +105 -0
  202. package/esm2020/plugins/node-id/node-id.plugin.mjs +78 -0
  203. package/esm2020/plugins/normalizers/insert-paragraph-nodes.mjs +28 -0
  204. package/{esm2015/plugins/normalizers/remove-empty-nodes.js → esm2020/plugins/normalizers/remove-empty-nodes.mjs} +17 -17
  205. package/esm2020/plugins/normalizers/trailing-node.plugin.mjs +33 -0
  206. package/{esm2015/plugins/paint-format/paint-format.editor.js → esm2020/plugins/paint-format/paint-format.editor.mjs} +122 -122
  207. package/{esm2015/plugins/public-api.js → esm2020/plugins/public-api.mjs} +15 -15
  208. package/esm2020/plugins/quick-insert/components/quick-insert.component.mjs +96 -0
  209. package/esm2020/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.mjs +80 -0
  210. package/{esm2015/plugins/quick-insert/quick-insert.editor.js → esm2020/plugins/quick-insert/quick-insert.editor.mjs} +52 -52
  211. package/esm2020/plugins/quick-insert/quick-insert.plugin.mjs +74 -0
  212. package/esm2020/plugins/soft-break/soft-break.plugin.mjs +36 -0
  213. package/{esm2015/plugins/soft-break/soft-break.types.js → esm2020/plugins/soft-break/soft-break.types.mjs} +1 -1
  214. package/esm2020/plugins/table/components/insert-mark/insert-mark.component.mjs +100 -0
  215. package/{esm2015/plugins/table/components/row/row.component.js → esm2020/plugins/table/components/row/row.component.mjs} +47 -47
  216. package/esm2020/plugins/table/components/table.component.mjs +461 -0
  217. package/esm2020/plugins/table/components/td/td.component.mjs +696 -0
  218. package/{esm2015/plugins/table/components/toolbar/table-options.component.js → esm2020/plugins/table/components/toolbar/table-options.component.mjs} +72 -69
  219. package/esm2020/plugins/table/components/toolbar/table-toolbar.component.mjs +159 -0
  220. package/{esm2015/plugins/table/table.editor.js → esm2020/plugins/table/table.editor.mjs} +182 -182
  221. package/esm2020/plugins/table/table.plugin.mjs +427 -0
  222. package/{esm2015/plugins/table/table.service.js → esm2020/plugins/table/table.service.mjs} +103 -103
  223. package/esm2020/plugins/table/table.store.mjs +484 -0
  224. package/{esm2015/plugins/table/table.types.js → esm2020/plugins/table/table.types.mjs} +33 -33
  225. package/esm2020/plugins/table/toolbar-item.component.mjs +85 -0
  226. package/esm2020/plugins/table/transforms/clear-cell.mjs +14 -0
  227. package/{esm2015/plugins/table/transforms/clear-table-node.js → esm2020/plugins/table/transforms/clear-table-node.mjs} +27 -27
  228. package/{esm2015/plugins/table/transforms/insert-column.js → esm2020/plugins/table/transforms/insert-column.mjs} +57 -57
  229. package/{esm2015/plugins/table/transforms/insert-row.js → esm2020/plugins/table/transforms/insert-row.mjs} +42 -42
  230. package/esm2020/plugins/table/transforms/insert-table.mjs +15 -0
  231. package/{esm2015/plugins/table/transforms/remove-column.js → esm2020/plugins/table/transforms/remove-column.mjs} +51 -51
  232. package/{esm2015/plugins/table/transforms/remove-row.js → esm2020/plugins/table/transforms/remove-row.mjs} +50 -50
  233. package/{esm2015/plugins/table/transforms/remove-table.js → esm2020/plugins/table/transforms/remove-table.mjs} +49 -49
  234. package/{esm2015/plugins/table/utils/add-columns.js → esm2020/plugins/table/utils/add-columns.mjs} +28 -28
  235. package/{esm2015/plugins/table/utils/calc-anchor-position.js → esm2020/plugins/table/utils/calc-anchor-position.mjs} +24 -24
  236. package/{esm2015/plugins/table/utils/calc-span.js → esm2020/plugins/table/utils/calc-span.mjs} +72 -72
  237. package/{esm2015/plugins/table/utils/create-cell.js → esm2020/plugins/table/utils/create-cell.mjs} +19 -19
  238. package/{esm2015/plugins/table/utils/create-row.js → esm2020/plugins/table/utils/create-row.mjs} +12 -12
  239. package/{esm2015/plugins/table/utils/create-table.js → esm2020/plugins/table/utils/create-table.mjs} +13 -13
  240. package/{esm2015/plugins/table/utils/get-base-height.js → esm2020/plugins/table/utils/get-base-height.mjs} +22 -22
  241. package/{esm2015/plugins/table/utils/get-select-cell-node.js → esm2020/plugins/table/utils/get-select-cell-node.mjs} +19 -16
  242. package/{esm2015/plugins/table/utils/index.js → esm2020/plugins/table/utils/index.mjs} +8 -8
  243. package/{esm2015/plugins/table/utils/is-range-in-table.js → esm2020/plugins/table/utils/is-range-in-table.mjs} +16 -16
  244. package/{esm2015/plugins/table/utils/is-selection-in-table.js → esm2020/plugins/table/utils/is-selection-in-table.mjs} +11 -11
  245. package/{esm2015/plugins/table/utils/is-virtual-key.js → esm2020/plugins/table/utils/is-virtual-key.mjs} +13 -13
  246. package/{esm2015/plugins/table/utils/merge-cell.js → esm2020/plugins/table/utils/merge-cell.mjs} +90 -90
  247. package/{esm2015/plugins/table/utils/next-path.js → esm2020/plugins/table/utils/next-path.mjs} +5 -5
  248. package/{esm2015/plugins/table/utils/normalize-table.js → esm2020/plugins/table/utils/normalize-table.mjs} +30 -30
  249. package/{esm2015/plugins/table/utils/remove-columns.js → esm2020/plugins/table/utils/remove-columns.mjs} +23 -23
  250. package/{esm2015/plugins/table/utils/set-menu-cell-invisibility.js → esm2020/plugins/table/utils/set-menu-cell-invisibility.mjs} +15 -15
  251. package/{esm2015/plugins/table/utils/split-cell.js → esm2020/plugins/table/utils/split-cell.mjs} +31 -31
  252. package/{esm2015/plugins/table/utils/table-position.js → esm2020/plugins/table/utils/table-position.mjs} +242 -242
  253. package/esm2020/plugins/todo-item/todo-item.component.mjs +64 -0
  254. package/{esm2015/plugins/todo-item/todo-item.editor.js → esm2020/plugins/todo-item/todo-item.editor.mjs} +31 -31
  255. package/{esm2015/plugins/todo-item/todo-item.plugin.js → esm2020/plugins/todo-item/todo-item.plugin.mjs} +78 -78
  256. package/esm2020/plugins/vertical-align/toolbar-item.component.mjs +83 -0
  257. package/{esm2015/plugins/vertical-align/vertical-align.editor.js → esm2020/plugins/vertical-align/vertical-align.editor.mjs} +54 -54
  258. package/{esm2015/public-api.js → esm2020/public-api.mjs} +23 -23
  259. package/{esm2015/queries/anchor-block-entry.js → esm2020/queries/anchor-block-entry.mjs} +13 -13
  260. package/{esm2015/queries/anchor-block.js → esm2020/queries/anchor-block.mjs} +6 -6
  261. package/{esm2015/queries/anchor-inline-entry.js → esm2020/queries/anchor-inline-entry.mjs} +10 -10
  262. package/{esm2015/queries/find-descendant.js → esm2020/queries/find-descendant.mjs} +47 -47
  263. package/{esm2015/queries/find-node.js → esm2020/queries/find-node.mjs} +45 -45
  264. package/{esm2015/queries/find-path.js → esm2020/queries/find-path.mjs} +28 -28
  265. package/esm2020/queries/get-above-by-type.mjs +14 -0
  266. package/{esm2015/queries/get-above.js → esm2020/queries/get-above.mjs} +9 -9
  267. package/{esm2015/queries/get-anchor-block-entry.js → esm2020/queries/get-anchor-block-entry.mjs} +8 -8
  268. package/esm2020/queries/get-block-above.mjs +10 -0
  269. package/esm2020/queries/get-block-card-above.mjs +10 -0
  270. package/{esm2015/queries/get-block-card-cursor.js → esm2020/queries/get-block-card-cursor.mjs} +5 -5
  271. package/{esm2015/queries/get-container-blocks.js → esm2020/queries/get-container-blocks.mjs} +11 -11
  272. package/{esm2015/queries/get-directly-parent.js → esm2020/queries/get-directly-parent.mjs} +11 -11
  273. package/{esm2015/queries/get-insert-elements-path.js → esm2020/queries/get-insert-elements-path.mjs} +43 -43
  274. package/{esm2015/queries/get-last-child-path.js → esm2020/queries/get-last-child-path.mjs} +9 -9
  275. package/{esm2015/queries/get-last-node.js → esm2020/queries/get-last-node.mjs} +17 -17
  276. package/{esm2015/queries/get-next-sibling-nodes.js → esm2020/queries/get-next-sibling-nodes.mjs} +17 -17
  277. package/{esm2015/queries/get-node.js → esm2020/queries/get-node.mjs} +10 -10
  278. package/esm2020/queries/get-nodes-by-type.mjs +15 -0
  279. package/{esm2015/queries/get-nodes.js → esm2020/queries/get-nodes.mjs} +7 -7
  280. package/{esm2015/queries/get-parent.js → esm2020/queries/get-parent.mjs} +12 -12
  281. package/esm2020/queries/get-plain-text.mjs +16 -0
  282. package/{esm2015/queries/get-plugin-by-toolbar.js → esm2020/queries/get-plugin-by-toolbar.mjs} +12 -12
  283. package/{esm2015/queries/get-point-before.js → esm2020/queries/get-point-before.mjs} +62 -62
  284. package/{esm2015/queries/get-point-from-location.js → esm2020/queries/get-point-from-location.mjs} +15 -15
  285. package/{esm2015/queries/get-previous-path.js → esm2020/queries/get-previous-path.mjs} +9 -9
  286. package/{esm2015/queries/get-rang-from-block-start.js → esm2020/queries/get-rang-from-block-start.mjs} +16 -16
  287. package/{esm2015/queries/get-range-before.js → esm2020/queries/get-range-before.mjs} +17 -17
  288. package/esm2020/queries/get-selection-marks.mjs +18 -0
  289. package/{esm2015/queries/get-selection-nodes-by-type.js → esm2020/queries/get-selection-nodes-by-type.mjs} +29 -29
  290. package/{esm2015/queries/get-text.js → esm2020/queries/get-text.mjs} +9 -9
  291. package/esm2020/queries/get-toolbar-disabled.mjs +13 -0
  292. package/{esm2015/queries/index.js → esm2020/queries/index.mjs} +58 -58
  293. package/{esm2015/queries/is-across-blocks.js → esm2020/queries/is-across-blocks.mjs} +7 -7
  294. package/{esm2015/queries/is-ancestor-empty.js → esm2020/queries/is-ancestor-empty.mjs} +6 -6
  295. package/{esm2015/queries/is-ancestor.js → esm2020/queries/is-ancestor.mjs} +3 -3
  296. package/{esm2015/queries/is-block-above-empty.js → esm2020/queries/is-block-above-empty.mjs} +11 -11
  297. package/{esm2015/queries/is-block-active.js → esm2020/queries/is-block-active.mjs} +7 -7
  298. package/{esm2015/queries/is-block-card-cursor.js → esm2020/queries/is-block-card-cursor.mjs} +4 -4
  299. package/{esm2015/queries/is-block-text-empty-after-selection.js → esm2020/queries/is-block-text-empty-after-selection.mjs} +31 -31
  300. package/{esm2015/queries/is-collapsed.js → esm2020/queries/is-collapsed.mjs} +7 -7
  301. package/{esm2015/queries/is-contain-nested-type.js → esm2020/queries/is-contain-nested-type.mjs} +28 -28
  302. package/{esm2015/queries/is-container-type.js → esm2020/queries/is-container-type.mjs} +2 -2
  303. package/{esm2015/queries/is-descendant.js → esm2020/queries/is-descendant.mjs} +3 -3
  304. package/{esm2015/queries/is-empty-content.js → esm2020/queries/is-empty-content.mjs} +14 -14
  305. package/{esm2015/queries/is-empty-paragraph-by-path.js → esm2020/queries/is-empty-paragraph-by-path.mjs} +7 -7
  306. package/{esm2015/queries/is-empty-paragraph.js → esm2020/queries/is-empty-paragraph.mjs} +11 -11
  307. package/{esm2015/queries/is-first-child.js → esm2020/queries/is-first-child.mjs} +5 -5
  308. package/{esm2015/queries/is-include-types.js → esm2020/queries/is-include-types.mjs} +11 -11
  309. package/{esm2015/queries/is-node-type-in.js → esm2020/queries/is-node-type-in.mjs} +9 -9
  310. package/{esm2015/queries/is-node-type.js → esm2020/queries/is-node-type.mjs} +15 -15
  311. package/{esm2015/queries/is-paragraph.js → esm2020/queries/is-paragraph.mjs} +9 -9
  312. package/{esm2015/queries/is-point-at-root.js → esm2020/queries/is-point-at-root.mjs} +2 -2
  313. package/esm2020/queries/is-range-across-blocks.mjs +22 -0
  314. package/{esm2015/queries/is-range-at-root.js → esm2020/queries/is-range-at-root.mjs} +3 -3
  315. package/{esm2015/queries/is-start.js → esm2020/queries/is-start.mjs} +6 -6
  316. package/{esm2015/queries/some-node.js → esm2020/queries/some-node.mjs} +9 -9
  317. package/{esm2015/services/color-select.service.js → esm2020/services/color-select.service.mjs} +50 -50
  318. package/esm2020/services/context.service.mjs +59 -0
  319. package/{esm2015/services/table-contextmenu.service.js → esm2020/services/table-contextmenu.service.mjs} +190 -190
  320. package/esm2020/services/toolbar.service.mjs +48 -0
  321. package/{esm2015/shortcuts/index.js → esm2020/shortcuts/index.mjs} +5 -5
  322. package/{esm2015/shortcuts/mark.js → esm2020/shortcuts/mark.mjs} +24 -24
  323. package/{esm2015/transforms/apply-deep-to-nodes.js → esm2020/transforms/apply-deep-to-nodes.mjs} +21 -21
  324. package/{esm2015/transforms/clear-marks.js → esm2020/transforms/clear-marks.mjs} +23 -23
  325. package/{esm2015/transforms/close-conversion-hint.js → esm2020/transforms/close-conversion-hint.mjs} +8 -8
  326. package/{esm2015/transforms/delete-element.js → esm2020/transforms/delete-element.mjs} +11 -11
  327. package/{esm2015/transforms/handle-continual-delete-backward.js → esm2020/transforms/handle-continual-delete-backward.mjs} +17 -17
  328. package/{esm2015/transforms/handle-continual-insert-break.js → esm2020/transforms/handle-continual-insert-break.mjs} +19 -19
  329. package/{esm2015/transforms/index.js → esm2020/transforms/index.mjs} +18 -18
  330. package/esm2020/transforms/insert-elements.mjs +34 -0
  331. package/{esm2015/transforms/insert-paragraph.js → esm2020/transforms/insert-paragraph.mjs} +6 -6
  332. package/esm2020/transforms/merge-deep-to-nodes.mjs +9 -0
  333. package/{esm2015/transforms/move-children.js → esm2020/transforms/move-children.mjs} +21 -21
  334. package/{esm2015/transforms/on-keydown-reset-block-type.js → esm2020/transforms/on-keydown-reset-block-type.mjs} +22 -22
  335. package/{esm2015/transforms/set-end-selection.js → esm2020/transforms/set-end-selection.mjs} +10 -10
  336. package/{esm2015/transforms/set-marks.js → esm2020/transforms/set-marks.mjs} +9 -9
  337. package/{esm2015/transforms/set-node.js → esm2020/transforms/set-node.mjs} +5 -5
  338. package/{esm2015/transforms/split-node.js → esm2020/transforms/split-node.mjs} +31 -31
  339. package/{esm2015/transforms/un-hang-range.js → esm2020/transforms/un-hang-range.mjs} +11 -11
  340. package/{esm2015/transforms/un-wrap.js → esm2020/transforms/un-wrap.mjs} +11 -11
  341. package/esm2020/transforms/unwrap-nodes-by-type.mjs +14 -0
  342. package/{esm2015/utils/auto-focus.js → esm2020/utils/auto-focus.mjs} +13 -13
  343. package/{esm2015/utils/auto-scroll-view.js → esm2020/utils/auto-scroll-view.mjs} +24 -24
  344. package/{esm2015/utils/cast-array.js → esm2020/utils/cast-array.mjs} +7 -7
  345. package/{esm2015/utils/common.js → esm2020/utils/common.mjs} +2 -2
  346. package/{esm2015/utils/create-empty-paragraph.js → esm2020/utils/create-empty-paragraph.mjs} +14 -14
  347. package/{esm2015/utils/data-transform.js → esm2020/utils/data-transform.mjs} +48 -48
  348. package/{esm2015/utils/dom.js → esm2020/utils/dom.mjs} +46 -46
  349. package/{esm2015/utils/editor-uuid.js → esm2020/utils/editor-uuid.mjs} +8 -8
  350. package/{esm2015/utils/fragment.js → esm2020/utils/fragment.mjs} +65 -65
  351. package/{esm2015/utils/get-editable-element-height.js → esm2020/utils/get-editable-element-height.mjs} +6 -6
  352. package/{esm2015/utils/get-toolbar-class.js → esm2020/utils/get-toolbar-class.mjs} +6 -6
  353. package/{esm2015/utils/id-creator.js → esm2020/utils/id-creator.mjs} +11 -11
  354. package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +13 -13
  355. package/{esm2015/utils/is-clean-empty-paragraph.js → esm2020/utils/is-clean-empty-paragraph.mjs} +36 -36
  356. package/esm2020/utils/is-inline.mjs +9 -0
  357. package/{esm2015/utils/lodash.js → esm2020/utils/lodash.mjs} +3 -3
  358. package/esm2020/utils/match.mjs +32 -0
  359. package/{esm2015/utils/merge-element-options.js → esm2020/utils/merge-element-options.mjs} +19 -19
  360. package/{esm2015/utils/weak-maps.js → esm2020/utils/weak-maps.mjs} +3 -3
  361. package/{esm2015/worktile-theia.js → esm2020/worktile-theia.mjs} +4 -4
  362. package/fesm2015/{worktile-theia.js → worktile-theia.mjs} +13096 -13169
  363. package/fesm2015/worktile-theia.mjs.map +1 -0
  364. package/fesm2020/worktile-theia.mjs +13739 -0
  365. package/fesm2020/worktile-theia.mjs.map +1 -0
  366. package/interfaces/auto-format.d.ts +64 -64
  367. package/interfaces/editor.d.ts +146 -146
  368. package/interfaces/element.d.ts +9 -9
  369. package/interfaces/image.d.ts +25 -25
  370. package/interfaces/index.d.ts +8 -8
  371. package/interfaces/plugins/index.d.ts +4 -4
  372. package/interfaces/plugins/no-infer.d.ts +1 -1
  373. package/interfaces/plugins/plugin-key.d.ts +48 -48
  374. package/interfaces/plugins/plugins.d.ts +45 -45
  375. package/interfaces/plugins/with-override.d.ts +7 -7
  376. package/interfaces/reset-block-type-plugin-options.d.ts +23 -23
  377. package/interfaces/toolbar.d.ts +64 -64
  378. package/interfaces/upload.d.ts +11 -11
  379. package/interfaces/utility/index.d.ts +3 -3
  380. package/interfaces/utility/nested-structure-by-key.d.ts +3 -3
  381. package/interfaces/utility/override-by-key.d.ts +3 -3
  382. package/interfaces/utility/types.d.ts +1 -1
  383. package/interfaces/valid-children-types.d.ts +9 -9
  384. package/interfaces/view-base.d.ts +9 -9
  385. package/package.json +20 -6
  386. package/pipes.d.ts +16 -16
  387. package/plugins/align/align.editor.d.ts +7 -7
  388. package/plugins/align/align.plugin.d.ts +2 -2
  389. package/plugins/autoformat/autoformat.plugin.d.ts +6 -6
  390. package/plugins/autoformat/transforms/auto-format-block.d.ts +5 -5
  391. package/plugins/autoformat/transforms/auto-format-inline.d.ts +9 -9
  392. package/plugins/blockquote/blockquote.component.d.ts +11 -11
  393. package/plugins/blockquote/blockquote.editor.d.ts +4 -4
  394. package/plugins/blockquote/blockquote.plugin.d.ts +2 -2
  395. package/plugins/code/code.component.d.ts +65 -65
  396. package/plugins/code/code.editor.d.ts +8 -8
  397. package/plugins/code/code.plugin.d.ts +2 -2
  398. package/plugins/color/color.editor.d.ts +8 -8
  399. package/plugins/color/color.plugin.d.ts +1 -1
  400. package/plugins/color/toolbar-item.component.d.ts +16 -16
  401. package/plugins/common/auto-insert-data..d.ts +2 -2
  402. package/plugins/common/block-card.plugin.d.ts +2 -2
  403. package/plugins/common/get-fragment.plugin.d.ts +6 -6
  404. package/plugins/common/history.plugin.d.ts +9 -9
  405. package/plugins/common/move-selection.plugin.d.ts +2 -2
  406. package/plugins/common/remove-empty.plugin.d.ts +2 -2
  407. package/plugins/common/remove-void.plugin.d.ts +2 -2
  408. package/plugins/common/reset-type.plugin.d.ts +2 -2
  409. package/plugins/common/transforms.plugin.d.ts +8 -8
  410. package/plugins/deserializers/deserialize-html.plugin.d.ts +2 -2
  411. package/plugins/deserializers/deserialize-md.plugin.d.ts +2 -2
  412. package/plugins/font-size/font-size.editor.d.ts +10 -10
  413. package/plugins/heading/heading.editor.d.ts +9 -9
  414. package/plugins/heading/heading.plugin.d.ts +7 -7
  415. package/plugins/hr/hr.component.d.ts +12 -12
  416. package/plugins/hr/hr.editor.d.ts +4 -4
  417. package/plugins/hr/hr.plugin.d.ts +2 -2
  418. package/plugins/image/image.component.d.ts +74 -74
  419. package/plugins/image/image.editor.d.ts +12 -12
  420. package/plugins/image/image.plugin.d.ts +7 -7
  421. package/plugins/indent/indent.editor.d.ts +10 -10
  422. package/plugins/indent/indent.plugin.d.ts +8 -8
  423. package/plugins/indent/on-keydown-indent.d.ts +3 -3
  424. package/plugins/index.d.ts +1 -1
  425. package/plugins/inline-code/inline-code.component.d.ts +9 -9
  426. package/plugins/inline-code/inline-code.editor.d.ts +7 -7
  427. package/plugins/inline-code/inline-code.plugin.d.ts +2 -2
  428. package/plugins/link/edit/link-edit.component.d.ts +36 -36
  429. package/plugins/link/hover/link-hover.component.d.ts +15 -15
  430. package/plugins/link/link.component.d.ts +39 -39
  431. package/plugins/link/link.editor.d.ts +7 -7
  432. package/plugins/link/link.plugin.d.ts +2 -2
  433. package/plugins/link/link.types.d.ts +9 -9
  434. package/plugins/list/components/bulleted-list.component.d.ts +15 -15
  435. package/plugins/list/components/list-item.component.d.ts +20 -20
  436. package/plugins/list/components/numbered-list.component.d.ts +16 -16
  437. package/plugins/list/list.editor.d.ts +12 -12
  438. package/plugins/list/list.plugin.d.ts +3 -3
  439. package/plugins/list/normalizers/get-list-normalizer.d.ts +6 -6
  440. package/plugins/list/normalizers/normalize-list-item.d.ts +5 -5
  441. package/plugins/list/normalizers/normalize-no.d.ts +2 -2
  442. package/plugins/list/on-key-down-list.d.ts +2 -2
  443. package/plugins/list/queries/get-list-item-entry.d.ts +10 -10
  444. package/plugins/list/queries/get-list-item-sublist.d.ts +6 -6
  445. package/plugins/list/queries/get-list-types.d.ts +2 -2
  446. package/plugins/list/queries/get-start-list-item.d.ts +8 -8
  447. package/plugins/list/queries/has-list-in-list-item.d.ts +15 -15
  448. package/plugins/list/queries/is-in-list.d.ts +2 -2
  449. package/plugins/list/queries/is-list-nested.d.ts +5 -5
  450. package/plugins/list/queries/is-list.d.ts +2 -2
  451. package/plugins/list/queries/is-node-type-list.d.ts +2 -2
  452. package/plugins/list/queries/is-selection-at-list-item-start.d.ts +5 -5
  453. package/plugins/list/queries/is-selection-in-same-list-item.d.ts +5 -5
  454. package/plugins/list/queries/is-single-list-item.d.ts +5 -5
  455. package/plugins/list/transforms/insert-list-data.d.ts +12 -12
  456. package/plugins/list/transforms/insert-list-item.d.ts +5 -5
  457. package/plugins/list/transforms/move-list-item-down.d.ts +6 -6
  458. package/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.d.ts +20 -20
  459. package/plugins/list/transforms/move-list-item-sublist-items-to-list.d.ts +19 -19
  460. package/plugins/list/transforms/move-list-item-up.d.ts +10 -10
  461. package/plugins/list/transforms/unwrap-list.d.ts +2 -2
  462. package/plugins/list/types.d.ts +7 -7
  463. package/plugins/mark/mark.editor.d.ts +8 -8
  464. package/plugins/mark/mark.plugin.d.ts +3 -3
  465. package/plugins/node-id/node-id.plugin.d.ts +8 -8
  466. package/plugins/normalizers/insert-paragraph-nodes.d.ts +7 -7
  467. package/plugins/normalizers/remove-empty-nodes.d.ts +7 -7
  468. package/plugins/normalizers/trailing-node.plugin.d.ts +9 -9
  469. package/plugins/paint-format/paint-format.editor.d.ts +8 -8
  470. package/plugins/public-api.d.ts +15 -15
  471. package/plugins/quick-insert/components/quick-insert.component.d.ts +28 -28
  472. package/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.d.ts +28 -28
  473. package/plugins/quick-insert/quick-insert.editor.d.ts +7 -7
  474. package/plugins/quick-insert/quick-insert.plugin.d.ts +10 -10
  475. package/plugins/soft-break/soft-break.plugin.d.ts +5 -5
  476. package/plugins/soft-break/soft-break.types.d.ts +8 -8
  477. package/plugins/table/components/insert-mark/insert-mark.component.d.ts +24 -24
  478. package/plugins/table/components/row/row.component.d.ts +14 -14
  479. package/plugins/table/components/table.component.d.ts +79 -79
  480. package/plugins/table/components/td/td.component.d.ts +95 -95
  481. package/plugins/table/components/toolbar/table-options.component.d.ts +20 -20
  482. package/plugins/table/components/toolbar/table-toolbar.component.d.ts +38 -38
  483. package/plugins/table/table.editor.d.ts +25 -25
  484. package/plugins/table/table.plugin.d.ts +3 -3
  485. package/plugins/table/table.service.d.ts +30 -30
  486. package/plugins/table/table.store.d.ts +71 -71
  487. package/plugins/table/table.types.d.ts +67 -67
  488. package/plugins/table/toolbar-item.component.d.ts +17 -17
  489. package/plugins/table/transforms/clear-cell.d.ts +6 -6
  490. package/plugins/table/transforms/clear-table-node.d.ts +6 -6
  491. package/plugins/table/transforms/insert-column.d.ts +12 -12
  492. package/plugins/table/transforms/insert-row.d.ts +6 -6
  493. package/plugins/table/transforms/insert-table.d.ts +6 -6
  494. package/plugins/table/transforms/remove-column.d.ts +3 -3
  495. package/plugins/table/transforms/remove-row.d.ts +3 -3
  496. package/plugins/table/transforms/remove-table.d.ts +3 -3
  497. package/plugins/table/utils/add-columns.d.ts +2 -2
  498. package/plugins/table/utils/calc-anchor-position.d.ts +6 -6
  499. package/plugins/table/utils/calc-span.d.ts +11 -11
  500. package/plugins/table/utils/create-cell.d.ts +16 -16
  501. package/plugins/table/utils/create-row.d.ts +7 -7
  502. package/plugins/table/utils/create-table.d.ts +7 -7
  503. package/plugins/table/utils/get-base-height.d.ts +9 -9
  504. package/plugins/table/utils/get-select-cell-node.d.ts +7 -7
  505. package/plugins/table/utils/index.d.ts +7 -7
  506. package/plugins/table/utils/is-range-in-table.d.ts +6 -6
  507. package/plugins/table/utils/is-selection-in-table.d.ts +6 -6
  508. package/plugins/table/utils/is-virtual-key.d.ts +1 -1
  509. package/plugins/table/utils/merge-cell.d.ts +21 -21
  510. package/plugins/table/utils/next-path.d.ts +2 -2
  511. package/plugins/table/utils/normalize-table.d.ts +2 -2
  512. package/plugins/table/utils/remove-columns.d.ts +2 -2
  513. package/plugins/table/utils/set-menu-cell-invisibility.d.ts +3 -3
  514. package/plugins/table/utils/split-cell.d.ts +4 -4
  515. package/plugins/table/utils/table-position.d.ts +97 -97
  516. package/plugins/todo-item/todo-item.component.d.ts +21 -21
  517. package/plugins/todo-item/todo-item.editor.d.ts +5 -5
  518. package/plugins/todo-item/todo-item.plugin.d.ts +5 -5
  519. package/plugins/vertical-align/toolbar-item.component.d.ts +25 -25
  520. package/plugins/vertical-align/vertical-align.editor.d.ts +7 -7
  521. package/public-api.d.ts +20 -20
  522. package/queries/anchor-block-entry.d.ts +2 -2
  523. package/queries/anchor-block.d.ts +2 -2
  524. package/queries/anchor-inline-entry.d.ts +2 -2
  525. package/queries/find-descendant.d.ts +10 -10
  526. package/queries/find-node.d.ts +15 -15
  527. package/queries/find-path.d.ts +6 -6
  528. package/queries/get-above-by-type.d.ts +6 -6
  529. package/queries/get-above.d.ts +6 -6
  530. package/queries/get-anchor-block-entry.d.ts +2 -2
  531. package/queries/get-block-above.d.ts +7 -7
  532. package/queries/get-block-card-above.d.ts +7 -7
  533. package/queries/get-block-card-cursor.d.ts +2 -2
  534. package/queries/get-container-blocks.d.ts +2 -2
  535. package/queries/get-directly-parent.d.ts +2 -2
  536. package/queries/get-insert-elements-path.d.ts +7 -7
  537. package/queries/get-last-child-path.d.ts +6 -6
  538. package/queries/get-last-node.d.ts +2 -2
  539. package/queries/get-next-sibling-nodes.d.ts +7 -7
  540. package/queries/get-node.d.ts +2 -2
  541. package/queries/get-nodes-by-type.d.ts +6 -6
  542. package/queries/get-nodes.d.ts +4 -4
  543. package/queries/get-parent.d.ts +7 -7
  544. package/queries/get-plain-text.d.ts +6 -6
  545. package/queries/get-plugin-by-toolbar.d.ts +3 -3
  546. package/queries/get-point-before.d.ts +38 -38
  547. package/queries/get-point-from-location.d.ts +5 -5
  548. package/queries/get-previous-path.d.ts +2 -2
  549. package/queries/get-rang-from-block-start.d.ts +9 -9
  550. package/queries/get-range-before.d.ts +7 -7
  551. package/queries/get-selection-marks.d.ts +12 -12
  552. package/queries/get-selection-nodes-by-type.d.ts +3 -3
  553. package/queries/get-text.d.ts +6 -6
  554. package/queries/get-toolbar-disabled.d.ts +4 -4
  555. package/queries/index.d.ts +58 -58
  556. package/queries/is-across-blocks.d.ts +2 -2
  557. package/queries/is-ancestor-empty.d.ts +5 -5
  558. package/queries/is-ancestor.d.ts +2 -2
  559. package/queries/is-block-above-empty.d.ts +5 -5
  560. package/queries/is-block-active.d.ts +3 -3
  561. package/queries/is-block-card-cursor.d.ts +2 -2
  562. package/queries/is-block-text-empty-after-selection.d.ts +7 -7
  563. package/queries/is-collapsed.d.ts +6 -6
  564. package/queries/is-contain-nested-type.d.ts +2 -2
  565. package/queries/is-container-type.d.ts +2 -2
  566. package/queries/is-descendant.d.ts +2 -2
  567. package/queries/is-empty-content.d.ts +2 -2
  568. package/queries/is-empty-paragraph-by-path.d.ts +2 -2
  569. package/queries/is-empty-paragraph.d.ts +2 -2
  570. package/queries/is-first-child.d.ts +5 -5
  571. package/queries/is-include-types.d.ts +3 -3
  572. package/queries/is-node-type-in.d.ts +6 -6
  573. package/queries/is-node-type.d.ts +6 -6
  574. package/queries/is-paragraph.d.ts +2 -2
  575. package/queries/is-point-at-root.d.ts +2 -2
  576. package/queries/is-range-across-blocks.d.ts +8 -8
  577. package/queries/is-range-at-root.d.ts +2 -2
  578. package/queries/is-start.d.ts +5 -5
  579. package/queries/some-node.d.ts +7 -7
  580. package/services/color-select.service.d.ts +20 -20
  581. package/services/context.service.d.ts +49 -49
  582. package/services/table-contextmenu.service.d.ts +25 -25
  583. package/services/toolbar.service.d.ts +9 -9
  584. package/shortcuts/index.d.ts +2 -2
  585. package/shortcuts/mark.d.ts +2 -2
  586. package/transforms/apply-deep-to-nodes.d.ts +12 -12
  587. package/transforms/clear-marks.d.ts +2 -2
  588. package/transforms/close-conversion-hint.d.ts +2 -2
  589. package/transforms/delete-element.d.ts +2 -2
  590. package/transforms/handle-continual-delete-backward.d.ts +3 -3
  591. package/transforms/handle-continual-insert-break.d.ts +3 -3
  592. package/transforms/index.d.ts +18 -18
  593. package/transforms/insert-elements.d.ts +2 -2
  594. package/transforms/insert-paragraph.d.ts +2 -2
  595. package/transforms/merge-deep-to-nodes.d.ts +5 -5
  596. package/transforms/move-children.d.ts +24 -24
  597. package/transforms/on-keydown-reset-block-type.d.ts +3 -3
  598. package/transforms/set-end-selection.d.ts +2 -2
  599. package/transforms/set-marks.d.ts +12 -12
  600. package/transforms/set-node.d.ts +2 -2
  601. package/transforms/split-node.d.ts +3 -3
  602. package/transforms/un-hang-range.d.ts +10 -10
  603. package/transforms/un-wrap.d.ts +3 -3
  604. package/transforms/unwrap-nodes-by-type.d.ts +6 -6
  605. package/utils/auto-focus.d.ts +2 -2
  606. package/utils/auto-scroll-view.d.ts +6 -6
  607. package/utils/cast-array.d.ts +1 -1
  608. package/utils/common.d.ts +2 -2
  609. package/utils/create-empty-paragraph.d.ts +2 -2
  610. package/utils/data-transform.d.ts +6 -6
  611. package/utils/dom.d.ts +10 -10
  612. package/utils/editor-uuid.d.ts +3 -3
  613. package/utils/fragment.d.ts +10 -10
  614. package/utils/get-editable-element-height.d.ts +2 -2
  615. package/utils/get-toolbar-class.d.ts +2 -2
  616. package/utils/id-creator.d.ts +1 -1
  617. package/utils/index.d.ts +13 -13
  618. package/utils/is-clean-empty-paragraph.d.ts +9 -9
  619. package/utils/is-inline.d.ts +2 -2
  620. package/utils/lodash.d.ts +1 -1
  621. package/utils/match.d.ts +18 -18
  622. package/utils/merge-element-options.d.ts +2 -2
  623. package/utils/weak-maps.d.ts +5 -5
  624. package/worktile-theia.d.ts +5 -5
  625. package/bundles/worktile-theia.umd.js +0 -14919
  626. package/bundles/worktile-theia.umd.js.map +0 -1
  627. package/esm2015/components/color-select/color-select.component.js +0 -113
  628. package/esm2015/components/column-resize/column-resize-notifier.js +0 -31
  629. package/esm2015/components/column-resize/column-resize.module.js +0 -34
  630. package/esm2015/components/contextmenu/contextmenu.component.js +0 -64
  631. package/esm2015/components/conversion-hint/conversion-hint.component.js +0 -59
  632. package/esm2015/components/element/element.component.js +0 -24
  633. package/esm2015/components/inline-toolbar/inline-toolbar.component.js +0 -139
  634. package/esm2015/components/table-select/table-select.component.js +0 -53
  635. package/esm2015/components/template/template.component.js +0 -66
  636. package/esm2015/components/toolbar/toolbar.component.js +0 -250
  637. package/esm2015/components/toolbar-dropdown/toolbar-dropdown.component.js +0 -133
  638. package/esm2015/components/toolbar-group/toolbar-group.component.js +0 -116
  639. package/esm2015/components/toolbar-item/toolbar-item.component.js +0 -105
  640. package/esm2015/core/create-toolbar.js +0 -57
  641. package/esm2015/core/toolbar-item/base-toolbar-item.js +0 -92
  642. package/esm2015/core/utils/get-plugin-options.js +0 -3
  643. package/esm2015/core/utils/get-plugins.js +0 -5
  644. package/esm2015/core/utils/merge-array.js +0 -18
  645. package/esm2015/editor.component.js +0 -440
  646. package/esm2015/interfaces/editor.js +0 -23
  647. package/esm2015/interfaces/reset-block-type-plugin-options.js +0 -2
  648. package/esm2015/interfaces/upload.js +0 -2
  649. package/esm2015/plugins/align/align.editor.js +0 -48
  650. package/esm2015/plugins/autoformat/autoformat.plugin.js +0 -110
  651. package/esm2015/plugins/blockquote/blockquote.editor.js +0 -21
  652. package/esm2015/plugins/code/code.component.js +0 -245
  653. package/esm2015/plugins/color/color.editor.js +0 -45
  654. package/esm2015/plugins/color/toolbar-item.component.js +0 -124
  655. package/esm2015/plugins/common/auto-insert-data..js +0 -78
  656. package/esm2015/plugins/common/get-fragment.plugin.js +0 -25
  657. package/esm2015/plugins/font-size/font-size.editor.js +0 -98
  658. package/esm2015/plugins/image/image.component.js +0 -370
  659. package/esm2015/plugins/image/image.plugin.js +0 -58
  660. package/esm2015/plugins/indent/indent.editor.js +0 -73
  661. package/esm2015/plugins/indent/indent.plugin.js +0 -60
  662. package/esm2015/plugins/link/edit/link-edit.component.js +0 -108
  663. package/esm2015/plugins/link/hover/link-hover.component.js +0 -39
  664. package/esm2015/plugins/list/components/bulleted-list.component.js +0 -34
  665. package/esm2015/plugins/list/components/list-item.component.js +0 -95
  666. package/esm2015/plugins/list/components/numbered-list.component.js +0 -40
  667. package/esm2015/plugins/list/list.plugin.js +0 -281
  668. package/esm2015/plugins/list/normalizers/normalize-list-item.js +0 -19
  669. package/esm2015/plugins/list/types.js +0 -2
  670. package/esm2015/plugins/mark/mark.editor.js +0 -29
  671. package/esm2015/plugins/mark/mark.plugin.js +0 -102
  672. package/esm2015/plugins/node-id/node-id.plugin.js +0 -69
  673. package/esm2015/plugins/normalizers/insert-paragraph-nodes.js +0 -29
  674. package/esm2015/plugins/normalizers/trailing-node.plugin.js +0 -34
  675. package/esm2015/plugins/quick-insert/components/quick-insert.component.js +0 -102
  676. package/esm2015/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.js +0 -84
  677. package/esm2015/plugins/quick-insert/quick-insert.plugin.js +0 -75
  678. package/esm2015/plugins/soft-break/soft-break.plugin.js +0 -37
  679. package/esm2015/plugins/table/components/insert-mark/insert-mark.component.js +0 -103
  680. package/esm2015/plugins/table/components/table.component.js +0 -470
  681. package/esm2015/plugins/table/components/td/td.component.js +0 -698
  682. package/esm2015/plugins/table/components/toolbar/table-toolbar.component.js +0 -162
  683. package/esm2015/plugins/table/table.plugin.js +0 -424
  684. package/esm2015/plugins/table/table.store.js +0 -480
  685. package/esm2015/plugins/table/toolbar-item.component.js +0 -86
  686. package/esm2015/plugins/table/transforms/clear-cell.js +0 -11
  687. package/esm2015/plugins/table/transforms/insert-table.js +0 -15
  688. package/esm2015/plugins/todo-item/todo-item.component.js +0 -66
  689. package/esm2015/plugins/vertical-align/toolbar-item.component.js +0 -90
  690. package/esm2015/queries/get-above-by-type.js +0 -11
  691. package/esm2015/queries/get-block-above.js +0 -7
  692. package/esm2015/queries/get-block-card-above.js +0 -7
  693. package/esm2015/queries/get-nodes-by-type.js +0 -12
  694. package/esm2015/queries/get-plain-text.js +0 -16
  695. package/esm2015/queries/get-selection-marks.js +0 -19
  696. package/esm2015/queries/get-toolbar-disabled.js +0 -14
  697. package/esm2015/queries/is-range-across-blocks.js +0 -18
  698. package/esm2015/services/context.service.js +0 -60
  699. package/esm2015/services/toolbar.service.js +0 -48
  700. package/esm2015/transforms/insert-elements.js +0 -35
  701. package/esm2015/transforms/merge-deep-to-nodes.js +0 -9
  702. package/esm2015/transforms/unwrap-nodes-by-type.js +0 -11
  703. package/esm2015/utils/is-inline.js +0 -10
  704. package/esm2015/utils/match.js +0 -29
  705. package/fesm2015/worktile-theia.js.map +0 -1
@@ -1,34 +1,34 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { ElementKinds } from '../../constants/node-types';
3
- export const TheTableToken = new InjectionToken('the-Table-token');
4
- export const BASE_CELL_HEIGHT = 41; // min height
5
- export const BASE_FILL_HEIGHT = 2 * 8 + 1; // padding * 2 + border 1
6
- export const BASE_CELL_INNER_HEIGHT = BASE_CELL_HEIGHT - BASE_FILL_HEIGHT; // 24
7
- export class TableOptions {
8
- constructor(options) {
9
- // The type of table blocks
10
- this.typeTable = ElementKinds.table;
11
- // The type of row blocks
12
- this.typeRow = ElementKinds.tableRow;
13
- // The type of cell blocks
14
- this.typeCell = ElementKinds.tableCell;
15
- // The default type for blocks in cells
16
- this.typeContent = ElementKinds.tableContent;
17
- // The type of block inserted when exiting
18
- this.exitBlockType = ElementKinds.paragraph;
19
- this.defaultWidth = 200;
20
- this.minWidthPx = 41;
21
- this.maxWidthPx = 1000;
22
- this.minHeightPx = 41;
23
- this.maxHeightPx = 1000;
24
- if (!options) {
25
- return;
26
- }
27
- const { typeTable, typeRow, typeCell, typeContent } = options;
28
- this.typeTable = typeTable;
29
- this.typeRow = typeRow;
30
- this.typeCell = typeCell;
31
- this.typeContent = typeContent;
32
- }
33
- }
1
+ import { InjectionToken } from '@angular/core';
2
+ import { ElementKinds } from '../../constants/node-types';
3
+ export const TheTableToken = new InjectionToken('the-Table-token');
4
+ export const BASE_CELL_HEIGHT = 41; // min height
5
+ export const BASE_FILL_HEIGHT = 2 * 8 + 1; // padding * 2 + border 1
6
+ export const BASE_CELL_INNER_HEIGHT = BASE_CELL_HEIGHT - BASE_FILL_HEIGHT; // 24
7
+ export class TableOptions {
8
+ constructor(options) {
9
+ // The type of table blocks
10
+ this.typeTable = ElementKinds.table;
11
+ // The type of row blocks
12
+ this.typeRow = ElementKinds.tableRow;
13
+ // The type of cell blocks
14
+ this.typeCell = ElementKinds.tableCell;
15
+ // The default type for blocks in cells
16
+ this.typeContent = ElementKinds.tableContent;
17
+ // The type of block inserted when exiting
18
+ this.exitBlockType = ElementKinds.paragraph;
19
+ this.defaultWidth = 200;
20
+ this.minWidthPx = 41;
21
+ this.maxWidthPx = 1000;
22
+ this.minHeightPx = 41;
23
+ this.maxHeightPx = 1000;
24
+ if (!options) {
25
+ return;
26
+ }
27
+ const { typeTable, typeRow, typeCell, typeContent } = options;
28
+ this.typeTable = typeTable;
29
+ this.typeRow = typeRow;
30
+ this.typeCell = typeCell;
31
+ this.typeContent = typeContent;
32
+ }
33
+ }
34
34
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS90YWJsZS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUcxRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQW1DLGlCQUFpQixDQUFDLENBQUM7QUFTckcsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDLENBQUMsYUFBYTtBQUNqRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLHlCQUF5QjtBQUNwRSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUs7QUErQ2hGLE1BQU0sT0FBTyxZQUFZO0lBc0JyQixZQUFZLE9BQTRCO1FBckJ4QywyQkFBMkI7UUFDM0IsY0FBUyxHQUF1QixZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ25ELHlCQUF5QjtRQUN6QixZQUFPLEdBQTBCLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDdkQsMEJBQTBCO1FBQzFCLGFBQVEsR0FBMkIsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUMxRCx1Q0FBdUM7UUFDdkMsZ0JBQVcsR0FBOEIsWUFBWSxDQUFDLFlBQVksQ0FBQztRQUNuRSwwQ0FBMEM7UUFDMUMsa0JBQWEsR0FBMkIsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUUvRCxpQkFBWSxHQUFHLEdBQUcsQ0FBQztRQUVuQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBRWhCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFFbEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFakIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFHZixJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTztTQUNWO1FBQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUM5RCxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNuQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgVGhlQmFzZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3ZpZXctYmFzZSc7XG5pbXBvcnQgeyBFbGVtZW50S2luZHMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5pbXBvcnQgdHlwZSB7IFRoZVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBUaGVUYWJsZVRva2VuID0gbmV3IEluamVjdGlvblRva2VuPENvbXBvbmVudFR5cGU8VGhlVGFibGVDb21wb25lbnQ+PigndGhlLVRhYmxlLXRva2VuJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlVGFibGVDb21wb25lbnRCYXNlIGV4dGVuZHMgVGhlQmFzZUVsZW1lbnRDb21wb25lbnQge1xuICAgIGluaXRpYWxpemVDb2x1bW5zOiAoKSA9PiB2b2lkO1xuICAgIHRyYW5zZm9ybUNvbHVtbnNXaWR0aDogKCkgPT4gdm9pZDtcbiAgICBpbml0aWFsaXplUm93czogKCkgPT4gdm9pZDtcbiAgICB0cmFuc2Zvcm1Sb3dIZWlnaHQ6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBCQVNFX0NFTExfSEVJR0hUID0gNDE7IC8vIG1pbiBoZWlnaHRcbmV4cG9ydCBjb25zdCBCQVNFX0ZJTExfSEVJR0hUID0gMiAqIDggKyAxOyAvLyBwYWRkaW5nICogMiArIGJvcmRlciAxXG5leHBvcnQgY29uc3QgQkFTRV9DRUxMX0lOTkVSX0hFSUdIVCA9IEJBU0VfQ0VMTF9IRUlHSFQgLSBCQVNFX0ZJTExfSEVJR0hUOyAvLyAyNFxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVRhYmxlQ29sdW1uIHtcbiAgICB3aWR0aDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVRhYmxlT3B0aW9ucyB7XG4gICAgaGVhZGVyUm93PzogYm9vbGVhbjtcbiAgICBoZWFkZXJDb2x1bW4/OiBib29sZWFuO1xuICAgIG51bWJlcmVkQ29sdW1uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZW51RW50aXR5IHtcbiAgICBpY29uOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGtleTogc3RyaW5nO1xuICAgIGRpdmlkZXI/OiBib29sZWFuO1xuICAgIGV4dGVuZEljb24/OiBzdHJpbmc7XG4gICAgaW52aXNpYmlsaXR5PzogYm9vbGVhbjtcbiAgICBiYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG4gICAgYWN0aW9uSGFuZGxlOiAoZW50aXR5OiBNZW51RW50aXR5KSA9PiB2b2lkO1xuICAgIGFjdGl2ZUhhbmRsZT86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgICBkZWFjdGl2ZUhhbmRsZT86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RlZENlbGwge1xuICAgIHJvdzogbnVtYmVyO1xuICAgIGNvbDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlRHJvcGRvd25PcHRpb24ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBrZXk6IHN0cmluZztcbiAgICBpc0FjdGl2ZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVPcHRpb25zRm9ybWF0IHtcbiAgICB0eXBlVGFibGU/OiBFbGVtZW50S2luZHMudGFibGU7XG4gICAgdHlwZVJvdz86IEVsZW1lbnRLaW5kcy50YWJsZVJvdztcbiAgICB0eXBlQ2VsbD86IEVsZW1lbnRLaW5kcy50YWJsZUNlbGw7XG4gICAgdHlwZUNvbnRlbnQ/OiBFbGVtZW50S2luZHMudGFibGVDb250ZW50O1xuICAgIGV4aXRCbG9ja1R5cGU/OiBzdHJpbmc7XG4gICAgZGVmYXVsdFdpZHRoPzogbnVtYmVyO1xuICAgIG1pbldpZHRoPzogbnVtYmVyO1xuICAgIG1heFdpZHRoPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgVGFibGVPcHRpb25zIHtcbiAgICAvLyBUaGUgdHlwZSBvZiB0YWJsZSBibG9ja3NcbiAgICB0eXBlVGFibGU6IEVsZW1lbnRLaW5kcy50YWJsZSA9IEVsZW1lbnRLaW5kcy50YWJsZTtcbiAgICAvLyBUaGUgdHlwZSBvZiByb3cgYmxvY2tzXG4gICAgdHlwZVJvdzogRWxlbWVudEtpbmRzLnRhYmxlUm93ID0gRWxlbWVudEtpbmRzLnRhYmxlUm93O1xuICAgIC8vIFRoZSB0eXBlIG9mIGNlbGwgYmxvY2tzXG4gICAgdHlwZUNlbGw6IEVsZW1lbnRLaW5kcy50YWJsZUNlbGwgPSBFbGVtZW50S2luZHMudGFibGVDZWxsO1xuICAgIC8vIFRoZSBkZWZhdWx0IHR5cGUgZm9yIGJsb2NrcyBpbiBjZWxsc1xuICAgIHR5cGVDb250ZW50OiBFbGVtZW50S2luZHMudGFibGVDb250ZW50ID0gRWxlbWVudEtpbmRzLnRhYmxlQ29udGVudDtcbiAgICAvLyBUaGUgdHlwZSBvZiBibG9jayBpbnNlcnRlZCB3aGVuIGV4aXRpbmdcbiAgICBleGl0QmxvY2tUeXBlOiBFbGVtZW50S2luZHMucGFyYWdyYXBoID0gRWxlbWVudEtpbmRzLnBhcmFncmFwaDtcblxuICAgIGRlZmF1bHRXaWR0aCA9IDIwMDtcblxuICAgIG1pbldpZHRoUHggPSA0MTtcblxuICAgIG1heFdpZHRoUHggPSAxMDAwO1xuXG4gICAgbWluSGVpZ2h0UHggPSA0MTtcblxuICAgIG1heEhlaWdodFB4ID0gMTAwMDtcblxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnM/OiBUYWJsZU9wdGlvbnNGb3JtYXQpIHtcbiAgICAgICAgaWYgKCFvcHRpb25zKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgeyB0eXBlVGFibGUsIHR5cGVSb3csIHR5cGVDZWxsLCB0eXBlQ29udGVudCB9ID0gb3B0aW9ucztcbiAgICAgICAgdGhpcy50eXBlVGFibGUgPSB0eXBlVGFibGU7XG4gICAgICAgIHRoaXMudHlwZVJvdyA9IHR5cGVSb3c7XG4gICAgICAgIHRoaXMudHlwZUNlbGwgPSB0eXBlQ2VsbDtcbiAgICAgICAgdGhpcy50eXBlQ29udGVudCA9IHR5cGVDb250ZW50O1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,85 @@
1
+ import { Component } from '@angular/core';
2
+ import { TheBaseToolbarItem } from '../../core/toolbar-item/base-toolbar-item';
3
+ import { TheTableSelectComponent } from '../../components/table-select/table-select.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "ngx-tethys";
6
+ import * as i2 from "@angular/cdk/overlay";
7
+ import * as i3 from "ngx-tethys/nav";
8
+ import * as i4 from "ngx-tethys/icon";
9
+ import * as i5 from "ngx-tethys/tooltip";
10
+ export class TheTableToolbarItemComponent extends TheBaseToolbarItem {
11
+ constructor(thyPopover, overlay) {
12
+ super();
13
+ this.thyPopover = thyPopover;
14
+ this.overlay = overlay;
15
+ }
16
+ get isOpenTableSelect() {
17
+ return this.tableSelectRef && this.tableSelectRef.componentInstance;
18
+ }
19
+ execute(event) {
20
+ super.execute(event);
21
+ if (this.editor?.disabled) {
22
+ return;
23
+ }
24
+ this.toggleTableSelect(event);
25
+ }
26
+ toggleTableSelect(event, optionsParam) {
27
+ if (this.isOpenTableSelect) {
28
+ this.tableSelectRef.close();
29
+ return;
30
+ }
31
+ this.tableSelectRef = this.thyPopover.open(TheTableSelectComponent, {
32
+ origin: event.currentTarget,
33
+ initialState: {
34
+ editor: this.editor,
35
+ optionsParam
36
+ },
37
+ minWidth: 0,
38
+ backdropClosable: false,
39
+ hasBackdrop: false,
40
+ insideClosable: false,
41
+ placement: 'bottomLeft',
42
+ offset: 10,
43
+ panelClass: 'the-table-selector-pannel',
44
+ scrollStrategy: this.overlay.scrollStrategies.reposition()
45
+ });
46
+ return this.tableSelectRef;
47
+ }
48
+ }
49
+ TheTableToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TheTableToolbarItemComponent, deps: [{ token: i1.ThyPopover }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
50
+ TheTableToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: TheTableToolbarItemComponent, selector: "the-table-toolbar-item", host: { classAttribute: "the-toolbar-dropdown-container" }, usesInheritance: true, ngImport: i0, template: `
51
+ <a
52
+ thyIconNavLink
53
+ class="link-with-down"
54
+ [thyTooltip]="toolbarItem?.name"
55
+ thyTooltipPlacement="top"
56
+ [thyIconNavLinkActive]="active"
57
+ (mousedown)="execute($event)"
58
+ >
59
+ <thy-icon [thyIconName]="toolbarItem.icon"></thy-icon>
60
+ <thy-icon class="link-down-icon font-size-sm text-desc table-down-icon" thyIconName="caret-down"> </thy-icon>
61
+ </a>
62
+ `, isInline: true, components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], directives: [{ type: i5.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TheTableToolbarItemComponent, decorators: [{
64
+ type: Component,
65
+ args: [{
66
+ selector: 'the-table-toolbar-item',
67
+ template: `
68
+ <a
69
+ thyIconNavLink
70
+ class="link-with-down"
71
+ [thyTooltip]="toolbarItem?.name"
72
+ thyTooltipPlacement="top"
73
+ [thyIconNavLinkActive]="active"
74
+ (mousedown)="execute($event)"
75
+ >
76
+ <thy-icon [thyIconName]="toolbarItem.icon"></thy-icon>
77
+ <thy-icon class="link-down-icon font-size-sm text-desc table-down-icon" thyIconName="caret-down"> </thy-icon>
78
+ </a>
79
+ `,
80
+ host: {
81
+ class: 'the-toolbar-dropdown-container'
82
+ }
83
+ }]
84
+ }], ctorParameters: function () { return [{ type: i1.ThyPopover }, { type: i2.Overlay }]; } });
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3Rvb2xiYXItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7OztBQXNCL0YsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGtCQUFrQjtJQU9oRSxZQUFvQixVQUFzQixFQUFVLE9BQWdCO1FBQ2hFLEtBQUssRUFBRSxDQUFDO1FBRFEsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFFcEUsQ0FBQztJQU5ELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDO0lBQ3hFLENBQUM7SUFNRCxPQUFPLENBQUMsS0FBaUI7UUFDckIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFO1lBQ3ZCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBaUIsRUFBRSxZQUEyQjtRQUM1RCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzVCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDaEUsTUFBTSxFQUFFLEtBQUssQ0FBQyxhQUE0QjtZQUMxQyxZQUFZLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixZQUFZO2FBQ2Y7WUFDRCxRQUFRLEVBQUUsQ0FBQztZQUNYLGdCQUFnQixFQUFFLEtBQUs7WUFDdkIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsY0FBYyxFQUFFLEtBQUs7WUFDckIsU0FBUyxFQUFFLFlBQVk7WUFDdkIsTUFBTSxFQUFFLEVBQUU7WUFDVixVQUFVLEVBQUUsMkJBQTJCO1lBQ3ZDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRTtTQUM3RCxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQzs7eUhBekNRLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLGlKQWpCM0I7Ozs7Ozs7Ozs7OztLQVlUOzJGQUtRLDRCQUE0QjtrQkFuQnhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7S0FZVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGdDQUFnQztxQkFDMUM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cyc7XG5pbXBvcnQgeyBUaGVCYXNlVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9jb3JlL3Rvb2xiYXItaXRlbS9iYXNlLXRvb2xiYXItaXRlbSc7XG5pbXBvcnQgeyBUaGVUYWJsZVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdGFibGUtc2VsZWN0L3RhYmxlLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi90YWJsZS50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRhYmxlLXRvb2xiYXItaXRlbScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGFcbiAgICAgICAgICAgIHRoeUljb25OYXZMaW5rXG4gICAgICAgICAgICBjbGFzcz1cImxpbmstd2l0aC1kb3duXCJcbiAgICAgICAgICAgIFt0aHlUb29sdGlwXT1cInRvb2xiYXJJdGVtPy5uYW1lXCJcbiAgICAgICAgICAgIHRoeVRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgICAgICAgW3RoeUljb25OYXZMaW5rQWN0aXZlXT1cImFjdGl2ZVwiXG4gICAgICAgICAgICAobW91c2Vkb3duKT1cImV4ZWN1dGUoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwidG9vbGJhckl0ZW0uaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJsaW5rLWRvd24taWNvbiBmb250LXNpemUtc20gdGV4dC1kZXNjIHRhYmxlLWRvd24taWNvblwiIHRoeUljb25OYW1lPVwiY2FyZXQtZG93blwiPiA8L3RoeS1pY29uPlxuICAgICAgICA8L2E+XG4gICAgYCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGhlLXRvb2xiYXItZHJvcGRvd24tY29udGFpbmVyJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgVGhlVGFibGVUb29sYmFySXRlbUNvbXBvbmVudCBleHRlbmRzIFRoZUJhc2VUb29sYmFySXRlbSB7XG4gICAgdGFibGVTZWxlY3RSZWY6IFRoeVBvcG92ZXJSZWY8VGhlVGFibGVTZWxlY3RDb21wb25lbnQ+O1xuXG4gICAgZ2V0IGlzT3BlblRhYmxlU2VsZWN0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZVNlbGVjdFJlZiAmJiB0aGlzLnRhYmxlU2VsZWN0UmVmLmNvbXBvbmVudEluc3RhbmNlO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlciwgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5KSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgZXhlY3V0ZShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5lZGl0b3I/LmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50b2dnbGVUYWJsZVNlbGVjdChldmVudCk7XG4gICAgfVxuXG4gICAgdG9nZ2xlVGFibGVTZWxlY3QoZXZlbnQ6IE1vdXNlRXZlbnQsIG9wdGlvbnNQYXJhbT86IFRhYmxlT3B0aW9ucykge1xuICAgICAgICBpZiAodGhpcy5pc09wZW5UYWJsZVNlbGVjdCkge1xuICAgICAgICAgICAgdGhpcy50YWJsZVNlbGVjdFJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudGFibGVTZWxlY3RSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3BlbihUaGVUYWJsZVNlbGVjdENvbXBvbmVudCwge1xuICAgICAgICAgICAgb3JpZ2luOiBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaW5pdGlhbFN0YXRlOiB7XG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLmVkaXRvcixcbiAgICAgICAgICAgICAgICBvcHRpb25zUGFyYW1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtaW5XaWR0aDogMCxcbiAgICAgICAgICAgIGJhY2tkcm9wQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tTGVmdCcsXG4gICAgICAgICAgICBvZmZzZXQ6IDEwLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogJ3RoZS10YWJsZS1zZWxlY3Rvci1wYW5uZWwnLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGVTZWxlY3RSZWY7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,14 @@
1
+ import { Transforms } from 'slate';
2
+ import { createCell } from '../utils/create-cell';
3
+ /**
4
+ * Clear the content of the given cell
5
+ */
6
+ export function clearCell(opts, editor, cellEntry) {
7
+ Transforms.removeNodes(editor, { at: cellEntry[1] });
8
+ const cellNode = {
9
+ ...cellEntry[0],
10
+ ...createCell(opts)
11
+ };
12
+ Transforms.insertNodes(editor, { ...cellNode }, { at: cellEntry[1] });
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvY2xlYXItY2VsbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUE4QixNQUFNLE9BQU8sQ0FBQztBQUUvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUFDLElBQWtCLEVBQUUsTUFBYyxFQUFFLFNBQTZCO0lBQ3ZGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckQsTUFBTSxRQUFRLEdBQUc7UUFDYixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDZixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7S0FDdEIsQ0FBQztJQUNGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1zLCBOb2RlRW50cnksIEVkaXRvciwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUNlbGwgfSBmcm9tICcuLi91dGlscy9jcmVhdGUtY2VsbCc7XG5cbi8qKlxuICogQ2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIGNlbGxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyQ2VsbChvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBjZWxsRW50cnk6IE5vZGVFbnRyeTxFbGVtZW50Pikge1xuICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiBjZWxsRW50cnlbMV0gfSk7XG4gICAgY29uc3QgY2VsbE5vZGUgPSB7XG4gICAgICAgIC4uLmNlbGxFbnRyeVswXSxcbiAgICAgICAgLi4uY3JlYXRlQ2VsbChvcHRzKVxuICAgIH07XG4gICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIHsgLi4uY2VsbE5vZGUgfSwgeyBhdDogY2VsbEVudHJ5WzFdIH0pO1xufVxuIl19
@@ -1,27 +1,27 @@
1
- import { Transforms, Range } from 'slate';
2
- import { createCell } from '../utils/create-cell';
3
- import { TablePosition } from '../utils';
4
- /**
5
- * Clear the content of the given node
6
- */
7
- export function clearTableNode(opts, editor, isTopToBot) {
8
- const { selection } = editor;
9
- const element = TablePosition.create(opts, editor, selection.focus.path);
10
- const rowIndex = element.getRowIndex();
11
- const colIndex = element.getColumnIndex();
12
- const removeRow = isTopToBot ? 0 : rowIndex + 1;
13
- for (let i = 0; i < element.getWidth(); i++) {
14
- const inColRange = Range.includes(selection, [...element.tableEntry[1], rowIndex, i]);
15
- if (inColRange && i !== colIndex) {
16
- Transforms.removeNodes(editor, { at: [...element.tableEntry[1], rowIndex, i] });
17
- Transforms.insertNodes(editor, createCell(opts), { at: [...element.tableEntry[1], rowIndex, i] });
18
- }
19
- }
20
- for (let i = 0; i < element.getHeight(); i++) {
21
- const inRowRange = Range.includes(selection, [...element.tableEntry[1], i]);
22
- if (inRowRange && i !== rowIndex) {
23
- Transforms.removeNodes(editor, { at: [...element.tableEntry[1], removeRow] });
24
- }
25
- }
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItdGFibGUtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvY2xlYXItdGFibGUtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUd6Qzs7R0FFRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsVUFBb0I7SUFDbkYsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6RSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDekMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEYsSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUM5QixVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3JHO0tBQ0o7SUFDRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzFDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUM5QixVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakY7S0FDSjtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFRyYW5zZm9ybXMsIFJhbmdlIH0gZnJvbSAnc2xhdGUnO1xyXG5pbXBvcnQgeyBjcmVhdGVDZWxsIH0gZnJvbSAnLi4vdXRpbHMvY3JlYXRlLWNlbGwnO1xyXG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMnO1xyXG5pbXBvcnQgeyBUYWJsZU9wdGlvbnMgfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XHJcblxyXG4vKipcclxuICogQ2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIG5vZGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjbGVhclRhYmxlTm9kZShvcHRzOiBUYWJsZU9wdGlvbnMsIGVkaXRvcjogRWRpdG9yLCBpc1RvcFRvQm90PzogYm9vbGVhbikge1xyXG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSBUYWJsZVBvc2l0aW9uLmNyZWF0ZShvcHRzLCBlZGl0b3IsIHNlbGVjdGlvbi5mb2N1cy5wYXRoKTtcclxuICAgIGNvbnN0IHJvd0luZGV4ID0gZWxlbWVudC5nZXRSb3dJbmRleCgpO1xyXG4gICAgY29uc3QgY29sSW5kZXggPSBlbGVtZW50LmdldENvbHVtbkluZGV4KCk7XHJcbiAgICBjb25zdCByZW1vdmVSb3cgPSBpc1RvcFRvQm90ID8gMCA6IHJvd0luZGV4ICsgMTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZWxlbWVudC5nZXRXaWR0aCgpOyBpKyspIHtcclxuICAgICAgICBjb25zdCBpbkNvbFJhbmdlID0gUmFuZ2UuaW5jbHVkZXMoc2VsZWN0aW9uLCBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCByb3dJbmRleCwgaV0pO1xyXG4gICAgICAgIGlmIChpbkNvbFJhbmdlICYmIGkgIT09IGNvbEluZGV4KSB7XHJcbiAgICAgICAgICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCByb3dJbmRleCwgaV0gfSk7XHJcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBjcmVhdGVDZWxsKG9wdHMpLCB7IGF0OiBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCByb3dJbmRleCwgaV0gfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbGVtZW50LmdldEhlaWdodCgpOyBpKyspIHtcclxuICAgICAgICBjb25zdCBpblJvd1JhbmdlID0gUmFuZ2UuaW5jbHVkZXMoc2VsZWN0aW9uLCBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCBpXSk7XHJcbiAgICAgICAgaWYgKGluUm93UmFuZ2UgJiYgaSAhPT0gcm93SW5kZXgpIHtcclxuICAgICAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQ6IFsuLi5lbGVtZW50LnRhYmxlRW50cnlbMV0sIHJlbW92ZVJvd10gfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
1
+ import { Transforms, Range } from 'slate';
2
+ import { createCell } from '../utils/create-cell';
3
+ import { TablePosition } from '../utils';
4
+ /**
5
+ * Clear the content of the given node
6
+ */
7
+ export function clearTableNode(opts, editor, isTopToBot) {
8
+ const { selection } = editor;
9
+ const element = TablePosition.create(opts, editor, selection.focus.path);
10
+ const rowIndex = element.getRowIndex();
11
+ const colIndex = element.getColumnIndex();
12
+ const removeRow = isTopToBot ? 0 : rowIndex + 1;
13
+ for (let i = 0; i < element.getWidth(); i++) {
14
+ const inColRange = Range.includes(selection, [...element.tableEntry[1], rowIndex, i]);
15
+ if (inColRange && i !== colIndex) {
16
+ Transforms.removeNodes(editor, { at: [...element.tableEntry[1], rowIndex, i] });
17
+ Transforms.insertNodes(editor, createCell(opts), { at: [...element.tableEntry[1], rowIndex, i] });
18
+ }
19
+ }
20
+ for (let i = 0; i < element.getHeight(); i++) {
21
+ const inRowRange = Range.includes(selection, [...element.tableEntry[1], i]);
22
+ if (inRowRange && i !== rowIndex) {
23
+ Transforms.removeNodes(editor, { at: [...element.tableEntry[1], removeRow] });
24
+ }
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItdGFibGUtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvY2xlYXItdGFibGUtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUd6Qzs7R0FFRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsSUFBa0IsRUFBRSxNQUFjLEVBQUUsVUFBb0I7SUFDbkYsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6RSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDekMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEYsSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUM5QixVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hGLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3JHO0tBQ0o7SUFDRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzFDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUM5QixVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakY7S0FDSjtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFRyYW5zZm9ybXMsIFJhbmdlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgY3JlYXRlQ2VsbCB9IGZyb20gJy4uL3V0aWxzL2NyZWF0ZS1jZWxsJztcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBUYWJsZU9wdGlvbnMgfSBmcm9tICcuLi90YWJsZS50eXBlcyc7XG5cbi8qKlxuICogQ2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIG5vZGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyVGFibGVOb2RlKG9wdHM6IFRhYmxlT3B0aW9ucywgZWRpdG9yOiBFZGl0b3IsIGlzVG9wVG9Cb3Q/OiBib29sZWFuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCBlbGVtZW50ID0gVGFibGVQb3NpdGlvbi5jcmVhdGUob3B0cywgZWRpdG9yLCBzZWxlY3Rpb24uZm9jdXMucGF0aCk7XG4gICAgY29uc3Qgcm93SW5kZXggPSBlbGVtZW50LmdldFJvd0luZGV4KCk7XG4gICAgY29uc3QgY29sSW5kZXggPSBlbGVtZW50LmdldENvbHVtbkluZGV4KCk7XG4gICAgY29uc3QgcmVtb3ZlUm93ID0gaXNUb3BUb0JvdCA/IDAgOiByb3dJbmRleCArIDE7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbGVtZW50LmdldFdpZHRoKCk7IGkrKykge1xuICAgICAgICBjb25zdCBpbkNvbFJhbmdlID0gUmFuZ2UuaW5jbHVkZXMoc2VsZWN0aW9uLCBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCByb3dJbmRleCwgaV0pO1xuICAgICAgICBpZiAoaW5Db2xSYW5nZSAmJiBpICE9PSBjb2xJbmRleCkge1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQ6IFsuLi5lbGVtZW50LnRhYmxlRW50cnlbMV0sIHJvd0luZGV4LCBpXSB9KTtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBjcmVhdGVDZWxsKG9wdHMpLCB7IGF0OiBbLi4uZWxlbWVudC50YWJsZUVudHJ5WzFdLCByb3dJbmRleCwgaV0gfSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbGVtZW50LmdldEhlaWdodCgpOyBpKyspIHtcbiAgICAgICAgY29uc3QgaW5Sb3dSYW5nZSA9IFJhbmdlLmluY2x1ZGVzKHNlbGVjdGlvbiwgWy4uLmVsZW1lbnQudGFibGVFbnRyeVsxXSwgaV0pO1xuICAgICAgICBpZiAoaW5Sb3dSYW5nZSAmJiBpICE9PSByb3dJbmRleCkge1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5yZW1vdmVOb2RlcyhlZGl0b3IsIHsgYXQ6IFsuLi5lbGVtZW50LnRhYmxlRW50cnlbMV0sIHJlbW92ZVJvd10gfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,57 +1,57 @@
1
- import { Transforms, Editor } from 'slate';
2
- import { TablePosition, createCell } from '../utils';
3
- import { calcSpanForColumn } from '../utils/calc-span';
4
- import { addColumns } from '../utils/add-columns';
5
- /**
6
- * Insert a new column in current table
7
- */
8
- export function insertColumn(opts, editor, count = 1, at, // Column index
9
- getCell) {
10
- const { selection } = editor;
11
- const { anchor: { path } } = selection;
12
- const tablePosition = TablePosition.create(opts, editor, path);
13
- const { table, tableEntry } = tablePosition;
14
- const insertColumnIndex = typeof at === 'undefined' ? tablePosition.getColumnIndex() + 1 : at;
15
- // Insert the new cell
16
- Editor.withoutNormalizing(editor, () => {
17
- const colspan = calcSpanForColumn(table, insertColumnIndex);
18
- for (let i = 0; i < count; i++) {
19
- table.children.forEach((row, rowIndex) => {
20
- const isInside = colspan[rowIndex];
21
- const newCell = getCell ? getCell(insertColumnIndex, rowIndex) : createCell(opts);
22
- if (isInside) {
23
- newCell.hidden = true;
24
- const dirtyCell = row.children.find((cell, columnIndex) => !cell.hidden &&
25
- columnIndex < insertColumnIndex &&
26
- cell.colspan &&
27
- cell.colspan + columnIndex > insertColumnIndex);
28
- if (dirtyCell) {
29
- Transforms.setNodes(editor, { colspan: dirtyCell.colspan + 1 }, {
30
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
31
- });
32
- }
33
- }
34
- Transforms.insertNodes(editor, [newCell], {
35
- at: tablePosition.tableEntry[1].concat(rowIndex).concat(insertColumnIndex)
36
- });
37
- });
38
- }
39
- if (table.columns) {
40
- Transforms.setNodes(editor, { columns: addColumns(table, table.columns.length + 1, insertColumnIndex) }, { at: tableEntry[1] });
41
- }
42
- });
43
- }
44
- /**
45
- * Insert new column in the row
46
- */
47
- export function insertColumnAtRow(opts, editor, count = 1, tableEntry, rowIndex, columnIndex, getCell) {
48
- Editor.withoutNormalizing(editor, () => {
49
- for (let i = 0; i < count; i++) {
50
- const newCell = getCell ? getCell(columnIndex, rowIndex) : createCell(opts);
51
- Transforms.insertNodes(editor, [newCell], {
52
- at: tableEntry[1].concat([rowIndex, columnIndex])
53
- });
54
- }
55
- });
56
- }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBYSxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJbEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUN4QixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxFQUFXLEVBQUUsZUFBZTtBQUM1QixPQUEyRDtJQUUzRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFFZCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxhQUFhLENBQUM7SUFFNUMsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUU5RixzQkFBc0I7SUFFdEIsTUFBTSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7UUFDbkMsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM1QixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDckMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsRixJQUFJLFFBQVEsRUFBRTtvQkFDVixPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztvQkFDdEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQy9CLENBQUMsSUFBc0IsRUFBRSxXQUFtQixFQUFFLEVBQUUsQ0FDNUMsQ0FBQyxJQUFJLENBQUMsTUFBTTt3QkFDWixXQUFXLEdBQUcsaUJBQWlCO3dCQUMvQixJQUFJLENBQUMsT0FBTzt3QkFDWixJQUFJLENBQUMsT0FBTyxHQUFHLFdBQVcsR0FBRyxpQkFBaUIsQ0FDakMsQ0FBQztvQkFDdEIsSUFBSSxTQUFTLEVBQUU7d0JBQ1gsVUFBVSxDQUFDLFFBQVEsQ0FDZixNQUFNLEVBQ04sRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsRUFDbEM7NEJBQ0ksRUFBRSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQzt5QkFDM0YsQ0FDSixDQUFDO3FCQUNMO2lCQUNKO2dCQUNELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ3RDLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUM7aUJBQzdFLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDZixVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuSTtJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUM3QixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxVQUFtQyxFQUNuQyxRQUFnQixFQUNoQixXQUFtQixFQUNuQixPQUEyRDtJQUUzRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzVCLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVFLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ3RDLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQ3BELENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtcywgRWRpdG9yLCBOb2RlRW50cnkgfSBmcm9tICdzbGF0ZSc7XHJcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24sIGNyZWF0ZUNlbGwgfSBmcm9tICcuLi91dGlscyc7XHJcbmltcG9ydCB7IGNhbGNTcGFuRm9yQ29sdW1uIH0gZnJvbSAnLi4vdXRpbHMvY2FsYy1zcGFuJztcclxuaW1wb3J0IHsgYWRkQ29sdW1ucyB9IGZyb20gJy4uL3V0aWxzL2FkZC1jb2x1bW5zJztcclxuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xyXG5pbXBvcnQgeyBUYWJsZUNlbGxFbGVtZW50LCBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdHlwZXMnO1xyXG5cclxuLyoqXHJcbiAqIEluc2VydCBhIG5ldyBjb2x1bW4gaW4gY3VycmVudCB0YWJsZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGluc2VydENvbHVtbihcclxuICAgIG9wdHM6IFRhYmxlT3B0aW9ucyxcclxuICAgIGVkaXRvcjogRWRpdG9yLFxyXG4gICAgY291bnQgPSAxLFxyXG4gICAgYXQ/OiBudW1iZXIsIC8vIENvbHVtbiBpbmRleFxyXG4gICAgZ2V0Q2VsbD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IFRhYmxlQ2VsbEVsZW1lbnRcclxuKSB7XHJcbiAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gZWRpdG9yO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cclxuICAgIH0gPSBzZWxlY3Rpb247XHJcblxyXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XHJcbiAgICBjb25zdCB7IHRhYmxlLCB0YWJsZUVudHJ5IH0gPSB0YWJsZVBvc2l0aW9uO1xyXG5cclxuICAgIGNvbnN0IGluc2VydENvbHVtbkluZGV4ID0gdHlwZW9mIGF0ID09PSAndW5kZWZpbmVkJyA/IHRhYmxlUG9zaXRpb24uZ2V0Q29sdW1uSW5kZXgoKSArIDEgOiBhdDtcclxuXHJcbiAgICAvLyBJbnNlcnQgdGhlIG5ldyBjZWxsXHJcblxyXG4gICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcclxuICAgICAgICBjb25zdCBjb2xzcGFuID0gY2FsY1NwYW5Gb3JDb2x1bW4odGFibGUsIGluc2VydENvbHVtbkluZGV4KTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcclxuICAgICAgICAgICAgdGFibGUuY2hpbGRyZW4uZm9yRWFjaCgocm93LCByb3dJbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXNJbnNpZGUgPSBjb2xzcGFuW3Jvd0luZGV4XTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0NlbGwgPSBnZXRDZWxsID8gZ2V0Q2VsbChpbnNlcnRDb2x1bW5JbmRleCwgcm93SW5kZXgpIDogY3JlYXRlQ2VsbChvcHRzKTtcclxuICAgICAgICAgICAgICAgIGlmIChpc0luc2lkZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG5ld0NlbGwuaGlkZGVuID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGwgPSByb3cuY2hpbGRyZW4uZmluZChcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNlbGw6IFRhYmxlQ2VsbEVsZW1lbnQsIGNvbHVtbkluZGV4OiBudW1iZXIpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2VsbC5oaWRkZW4gJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbkluZGV4IDwgaW5zZXJ0Q29sdW1uSW5kZXggJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGwuY29sc3BhbiAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VsbC5jb2xzcGFuICsgY29sdW1uSW5kZXggPiBpbnNlcnRDb2x1bW5JbmRleFxyXG4gICAgICAgICAgICAgICAgICAgICkgYXMgVGFibGVDZWxsRWxlbWVudDtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZGlydHlDZWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGNvbHNwYW46IGRpcnR5Q2VsbC5jb2xzcGFuICsgMSB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQocm93LmNoaWxkcmVuLmluZGV4T2YoZGlydHlDZWxsKSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgW25ld0NlbGxdLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChpbnNlcnRDb2x1bW5JbmRleClcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRhYmxlLmNvbHVtbnMpIHtcclxuICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhlZGl0b3IsIHsgY29sdW1uczogYWRkQ29sdW1ucyh0YWJsZSwgdGFibGUuY29sdW1ucy5sZW5ndGggKyAxLCBpbnNlcnRDb2x1bW5JbmRleCkgfSwgeyBhdDogdGFibGVFbnRyeVsxXSB9KTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEluc2VydCBuZXcgY29sdW1uIGluIHRoZSByb3dcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRDb2x1bW5BdFJvdyhcclxuICAgIG9wdHM6IFRhYmxlT3B0aW9ucyxcclxuICAgIGVkaXRvcjogRWRpdG9yLFxyXG4gICAgY291bnQgPSAxLFxyXG4gICAgdGFibGVFbnRyeTogTm9kZUVudHJ5PFRhYmxlRWxlbWVudD4sXHJcbiAgICByb3dJbmRleDogbnVtYmVyLFxyXG4gICAgY29sdW1uSW5kZXg6IG51bWJlcixcclxuICAgIGdldENlbGw/OiAoY29sdW1uOiBudW1iZXIsIHJvdzogbnVtYmVyKSA9PiBUYWJsZUNlbGxFbGVtZW50XHJcbikge1xyXG4gICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2VsbCA9IGdldENlbGwgPyBnZXRDZWxsKGNvbHVtbkluZGV4LCByb3dJbmRleCkgOiBjcmVhdGVDZWxsKG9wdHMpO1xyXG4gICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgW25ld0NlbGxdLCB7XHJcbiAgICAgICAgICAgICAgICBhdDogdGFibGVFbnRyeVsxXS5jb25jYXQoW3Jvd0luZGV4LCBjb2x1bW5JbmRleF0pXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG59XHJcbiJdfQ==
1
+ import { Transforms, Editor } from 'slate';
2
+ import { TablePosition, createCell } from '../utils';
3
+ import { calcSpanForColumn } from '../utils/calc-span';
4
+ import { addColumns } from '../utils/add-columns';
5
+ /**
6
+ * Insert a new column in current table
7
+ */
8
+ export function insertColumn(opts, editor, count = 1, at, // Column index
9
+ getCell) {
10
+ const { selection } = editor;
11
+ const { anchor: { path } } = selection;
12
+ const tablePosition = TablePosition.create(opts, editor, path);
13
+ const { table, tableEntry } = tablePosition;
14
+ const insertColumnIndex = typeof at === 'undefined' ? tablePosition.getColumnIndex() + 1 : at;
15
+ // Insert the new cell
16
+ Editor.withoutNormalizing(editor, () => {
17
+ const colspan = calcSpanForColumn(table, insertColumnIndex);
18
+ for (let i = 0; i < count; i++) {
19
+ table.children.forEach((row, rowIndex) => {
20
+ const isInside = colspan[rowIndex];
21
+ const newCell = getCell ? getCell(insertColumnIndex, rowIndex) : createCell(opts);
22
+ if (isInside) {
23
+ newCell.hidden = true;
24
+ const dirtyCell = row.children.find((cell, columnIndex) => !cell.hidden &&
25
+ columnIndex < insertColumnIndex &&
26
+ cell.colspan &&
27
+ cell.colspan + columnIndex > insertColumnIndex);
28
+ if (dirtyCell) {
29
+ Transforms.setNodes(editor, { colspan: dirtyCell.colspan + 1 }, {
30
+ at: tablePosition.tableEntry[1].concat(rowIndex).concat(row.children.indexOf(dirtyCell))
31
+ });
32
+ }
33
+ }
34
+ Transforms.insertNodes(editor, [newCell], {
35
+ at: tablePosition.tableEntry[1].concat(rowIndex).concat(insertColumnIndex)
36
+ });
37
+ });
38
+ }
39
+ if (table.columns) {
40
+ Transforms.setNodes(editor, { columns: addColumns(table, table.columns.length + 1, insertColumnIndex) }, { at: tableEntry[1] });
41
+ }
42
+ });
43
+ }
44
+ /**
45
+ * Insert new column in the row
46
+ */
47
+ export function insertColumnAtRow(opts, editor, count = 1, tableEntry, rowIndex, columnIndex, getCell) {
48
+ Editor.withoutNormalizing(editor, () => {
49
+ for (let i = 0; i < count; i++) {
50
+ const newCell = getCell ? getCell(columnIndex, rowIndex) : createCell(opts);
51
+ Transforms.insertNodes(editor, [newCell], {
52
+ at: tableEntry[1].concat([rowIndex, columnIndex])
53
+ });
54
+ }
55
+ });
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBYSxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJbEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUN4QixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxFQUFXLEVBQUUsZUFBZTtBQUM1QixPQUEyRDtJQUUzRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE1BQU0sRUFDRixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDbkIsR0FBRyxTQUFTLENBQUM7SUFFZCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxhQUFhLENBQUM7SUFFNUMsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUU5RixzQkFBc0I7SUFFdEIsTUFBTSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7UUFDbkMsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM1QixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDckMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsRixJQUFJLFFBQVEsRUFBRTtvQkFDVixPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztvQkFDdEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQy9CLENBQUMsSUFBc0IsRUFBRSxXQUFtQixFQUFFLEVBQUUsQ0FDNUMsQ0FBQyxJQUFJLENBQUMsTUFBTTt3QkFDWixXQUFXLEdBQUcsaUJBQWlCO3dCQUMvQixJQUFJLENBQUMsT0FBTzt3QkFDWixJQUFJLENBQUMsT0FBTyxHQUFHLFdBQVcsR0FBRyxpQkFBaUIsQ0FDakMsQ0FBQztvQkFDdEIsSUFBSSxTQUFTLEVBQUU7d0JBQ1gsVUFBVSxDQUFDLFFBQVEsQ0FDZixNQUFNLEVBQ04sRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsRUFDbEM7NEJBQ0ksRUFBRSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQzt5QkFDM0YsQ0FDSixDQUFDO3FCQUNMO2lCQUNKO2dCQUNELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ3RDLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUM7aUJBQzdFLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDZixVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuSTtJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUM3QixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxVQUFtQyxFQUNuQyxRQUFnQixFQUNoQixXQUFtQixFQUNuQixPQUEyRDtJQUUzRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtRQUNuQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzVCLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVFLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ3RDLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQ3BELENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtcywgRWRpdG9yLCBOb2RlRW50cnkgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uLCBjcmVhdGVDZWxsIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2FsY1NwYW5Gb3JDb2x1bW4gfSBmcm9tICcuLi91dGlscy9jYWxjLXNwYW4nO1xuaW1wb3J0IHsgYWRkQ29sdW1ucyB9IGZyb20gJy4uL3V0aWxzL2FkZC1jb2x1bW5zJztcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlQ2VsbEVsZW1lbnQsIFRhYmxlRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10eXBlcyc7XG5cbi8qKlxuICogSW5zZXJ0IGEgbmV3IGNvbHVtbiBpbiBjdXJyZW50IHRhYmxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRDb2x1bW4oXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIGNvdW50ID0gMSxcbiAgICBhdD86IG51bWJlciwgLy8gQ29sdW1uIGluZGV4XG4gICAgZ2V0Q2VsbD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IFRhYmxlQ2VsbEVsZW1lbnRcbikge1xuICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3I7XG4gICAgY29uc3Qge1xuICAgICAgICBhbmNob3I6IHsgcGF0aCB9XG4gICAgfSA9IHNlbGVjdGlvbjtcblxuICAgIGNvbnN0IHRhYmxlUG9zaXRpb24gPSBUYWJsZVBvc2l0aW9uLmNyZWF0ZShvcHRzLCBlZGl0b3IsIHBhdGgpO1xuICAgIGNvbnN0IHsgdGFibGUsIHRhYmxlRW50cnkgfSA9IHRhYmxlUG9zaXRpb247XG5cbiAgICBjb25zdCBpbnNlcnRDb2x1bW5JbmRleCA9IHR5cGVvZiBhdCA9PT0gJ3VuZGVmaW5lZCcgPyB0YWJsZVBvc2l0aW9uLmdldENvbHVtbkluZGV4KCkgKyAxIDogYXQ7XG5cbiAgICAvLyBJbnNlcnQgdGhlIG5ldyBjZWxsXG5cbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICBjb25zdCBjb2xzcGFuID0gY2FsY1NwYW5Gb3JDb2x1bW4odGFibGUsIGluc2VydENvbHVtbkluZGV4KTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgICAgICAgICB0YWJsZS5jaGlsZHJlbi5mb3JFYWNoKChyb3csIHJvd0luZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXNJbnNpZGUgPSBjb2xzcGFuW3Jvd0luZGV4XTtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdDZWxsID0gZ2V0Q2VsbCA/IGdldENlbGwoaW5zZXJ0Q29sdW1uSW5kZXgsIHJvd0luZGV4KSA6IGNyZWF0ZUNlbGwob3B0cyk7XG4gICAgICAgICAgICAgICAgaWYgKGlzSW5zaWRlKSB7XG4gICAgICAgICAgICAgICAgICAgIG5ld0NlbGwuaGlkZGVuID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlydHlDZWxsID0gcm93LmNoaWxkcmVuLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2VsbDogVGFibGVDZWxsRWxlbWVudCwgY29sdW1uSW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2VsbC5oaWRkZW4gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5JbmRleCA8IGluc2VydENvbHVtbkluZGV4ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VsbC5jb2xzcGFuICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VsbC5jb2xzcGFuICsgY29sdW1uSW5kZXggPiBpbnNlcnRDb2x1bW5JbmRleFxuICAgICAgICAgICAgICAgICAgICApIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkaXJ0eUNlbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgY29sc3BhbjogZGlydHlDZWxsLmNvbHNwYW4gKyAxIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChyb3dJbmRleCkuY29uY2F0KHJvdy5jaGlsZHJlbi5pbmRleE9mKGRpcnR5Q2VsbCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgW25ld0NlbGxdLCB7XG4gICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQoaW5zZXJ0Q29sdW1uSW5kZXgpXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGFibGUuY29sdW1ucykge1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhlZGl0b3IsIHsgY29sdW1uczogYWRkQ29sdW1ucyh0YWJsZSwgdGFibGUuY29sdW1ucy5sZW5ndGggKyAxLCBpbnNlcnRDb2x1bW5JbmRleCkgfSwgeyBhdDogdGFibGVFbnRyeVsxXSB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuXG4vKipcbiAqIEluc2VydCBuZXcgY29sdW1uIGluIHRoZSByb3dcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc2VydENvbHVtbkF0Um93KFxuICAgIG9wdHM6IFRhYmxlT3B0aW9ucyxcbiAgICBlZGl0b3I6IEVkaXRvcixcbiAgICBjb3VudCA9IDEsXG4gICAgdGFibGVFbnRyeTogTm9kZUVudHJ5PFRhYmxlRWxlbWVudD4sXG4gICAgcm93SW5kZXg6IG51bWJlcixcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyLFxuICAgIGdldENlbGw/OiAoY29sdW1uOiBudW1iZXIsIHJvdzogbnVtYmVyKSA9PiBUYWJsZUNlbGxFbGVtZW50XG4pIHtcbiAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0NlbGwgPSBnZXRDZWxsID8gZ2V0Q2VsbChjb2x1bW5JbmRleCwgcm93SW5kZXgpIDogY3JlYXRlQ2VsbChvcHRzKTtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBbbmV3Q2VsbF0sIHtcbiAgICAgICAgICAgICAgICBhdDogdGFibGVFbnRyeVsxXS5jb25jYXQoW3Jvd0luZGV4LCBjb2x1bW5JbmRleF0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuIl19
@@ -1,42 +1,42 @@
1
- import { Transforms } from 'slate';
2
- import { TablePosition, createRow } from '../utils';
3
- import { calcSpanForRow } from '../utils/calc-span';
4
- /**
5
- * Insert a new row in current table
6
- */
7
- export function insertRow(opts, editor, count = 1, at // row index
8
- ) {
9
- const tablePosition = TablePosition.create(opts, editor, editor.selection.anchor.path);
10
- const { table, row } = tablePosition;
11
- // Create a new row with the right count of cells
12
- const columns = table.children[0].children.length;
13
- const newRows = [];
14
- const rowIndex = tablePosition.getRowIndex();
15
- const insertRowIndex = typeof at === 'undefined' ? rowIndex + 1 : at;
16
- for (let i = 0; i < count; i++) {
17
- const newRow = createRow(opts, columns);
18
- newRows.push(newRow);
19
- }
20
- if (newRows.length === 1) {
21
- const rowspan = calcSpanForRow(table, insertRowIndex);
22
- newRows[0].children.forEach((cell, columnIndex) => {
23
- const isInside = rowspan[columnIndex];
24
- if (isInside) {
25
- cell.hidden = true;
26
- const dirtyRow = table.children.find((row, rowIndex) => !row.children[columnIndex].hidden &&
27
- rowIndex < insertRowIndex &&
28
- row.children[columnIndex].rowspan &&
29
- row.children[columnIndex].rowspan + rowIndex > insertRowIndex);
30
- if (dirtyRow) {
31
- Transforms.setNodes(editor, { rowspan: dirtyRow.children[columnIndex].rowspan + 1 }, {
32
- at: tablePosition.tableEntry[1].concat(table.children.indexOf(dirtyRow)).concat(columnIndex)
33
- });
34
- }
35
- }
36
- });
37
- }
38
- Transforms.insertNodes(editor, newRows, {
39
- at: tablePosition.tableEntry[1].concat(insertRowIndex)
40
- });
41
- }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUNyQixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxFQUFXLENBQUMsWUFBWTs7SUFFeEIsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZGLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsYUFBYSxDQUFDO0lBRXJDLGlEQUFpRDtJQUNqRCxNQUFNLE9BQU8sR0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQXNCLENBQUMsTUFBTSxDQUFDO0lBQ2pFLE1BQU0sT0FBTyxHQUFzQixFQUFFLENBQUM7SUFFdEMsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdDLE1BQU0sY0FBYyxHQUFHLE9BQU8sRUFBRSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRXJFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDNUIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQ3hCO0lBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN0QixNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0QyxJQUFJLFFBQVEsRUFBRTtnQkFDVixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDbkIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hDLENBQUMsR0FBb0IsRUFBRSxRQUFnQixFQUFFLEVBQUUsQ0FDdkMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU07b0JBQ2pDLFFBQVEsR0FBRyxjQUFjO29CQUN6QixHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU87b0JBQ2pDLEdBQUcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsR0FBRyxjQUFjLENBQ3BFLENBQUM7Z0JBQ0YsSUFBSSxRQUFRLEVBQUU7b0JBQ1YsVUFBVSxDQUFDLFFBQVEsQ0FDZixNQUFNLEVBQ04sRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFLEVBQ3ZEO3dCQUNJLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7cUJBQy9GLENBQ0osQ0FBQztpQkFDTDthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7S0FDTjtJQUVELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRTtRQUNwQyxFQUFFLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDO0tBQ3pELENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XHJcbmltcG9ydCB7IFRhYmxlUm93RWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10eXBlcyc7XHJcbmltcG9ydCB7IFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcclxuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiwgY3JlYXRlUm93IH0gZnJvbSAnLi4vdXRpbHMnO1xyXG5pbXBvcnQgeyBjYWxjU3BhbkZvclJvdyB9IGZyb20gJy4uL3V0aWxzL2NhbGMtc3Bhbic7XHJcblxyXG4vKipcclxuICogSW5zZXJ0IGEgbmV3IHJvdyBpbiBjdXJyZW50IHRhYmxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0Um93KFxyXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxyXG4gICAgZWRpdG9yOiBFZGl0b3IsXHJcbiAgICBjb3VudCA9IDEsXHJcbiAgICBhdD86IG51bWJlciAvLyByb3cgaW5kZXhcclxuKSB7XHJcbiAgICBjb25zdCB0YWJsZVBvc2l0aW9uID0gVGFibGVQb3NpdGlvbi5jcmVhdGUob3B0cywgZWRpdG9yLCBlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoKTtcclxuICAgIGNvbnN0IHsgdGFibGUsIHJvdyB9ID0gdGFibGVQb3NpdGlvbjtcclxuXHJcbiAgICAvLyBDcmVhdGUgYSBuZXcgcm93IHdpdGggdGhlIHJpZ2h0IGNvdW50IG9mIGNlbGxzXHJcbiAgICBjb25zdCBjb2x1bW5zID0gKHRhYmxlLmNoaWxkcmVuWzBdLmNoaWxkcmVuIGFzIEVsZW1lbnRbXSkubGVuZ3RoO1xyXG4gICAgY29uc3QgbmV3Um93czogVGFibGVSb3dFbGVtZW50W10gPSBbXTtcclxuXHJcbiAgICBjb25zdCByb3dJbmRleCA9IHRhYmxlUG9zaXRpb24uZ2V0Um93SW5kZXgoKTtcclxuICAgIGNvbnN0IGluc2VydFJvd0luZGV4ID0gdHlwZW9mIGF0ID09PSAndW5kZWZpbmVkJyA/IHJvd0luZGV4ICsgMSA6IGF0O1xyXG5cclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xyXG4gICAgICAgIGNvbnN0IG5ld1JvdyA9IGNyZWF0ZVJvdyhvcHRzLCBjb2x1bW5zKTtcclxuICAgICAgICBuZXdSb3dzLnB1c2gobmV3Um93KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAobmV3Um93cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCByb3dzcGFuID0gY2FsY1NwYW5Gb3JSb3codGFibGUsIGluc2VydFJvd0luZGV4KTtcclxuICAgICAgICBuZXdSb3dzWzBdLmNoaWxkcmVuLmZvckVhY2goKGNlbGwsIGNvbHVtbkluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzSW5zaWRlID0gcm93c3Bhbltjb2x1bW5JbmRleF07XHJcbiAgICAgICAgICAgIGlmIChpc0luc2lkZSkge1xyXG4gICAgICAgICAgICAgICAgY2VsbC5oaWRkZW4gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZGlydHlSb3cgPSB0YWJsZS5jaGlsZHJlbi5maW5kKFxyXG4gICAgICAgICAgICAgICAgICAgIChyb3c6IFRhYmxlUm93RWxlbWVudCwgcm93SW5kZXg6IG51bWJlcikgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIXJvdy5jaGlsZHJlbltjb2x1bW5JbmRleF0uaGlkZGVuICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvd0luZGV4IDwgaW5zZXJ0Um93SW5kZXggJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm93LmNoaWxkcmVuW2NvbHVtbkluZGV4XS5yb3dzcGFuICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdy5jaGlsZHJlbltjb2x1bW5JbmRleF0ucm93c3BhbiArIHJvd0luZGV4ID4gaW5zZXJ0Um93SW5kZXhcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICBpZiAoZGlydHlSb3cpIHtcclxuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgcm93c3BhbjogZGlydHlSb3cuY2hpbGRyZW5bY29sdW1uSW5kZXhdLnJvd3NwYW4gKyAxIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHRhYmxlLmNoaWxkcmVuLmluZGV4T2YoZGlydHlSb3cpKS5jb25jYXQoY29sdW1uSW5kZXgpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIG5ld1Jvd3MsIHtcclxuICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChpbnNlcnRSb3dJbmRleClcclxuICAgIH0pO1xyXG59XHJcbiJdfQ==
1
+ import { Transforms } from 'slate';
2
+ import { TablePosition, createRow } from '../utils';
3
+ import { calcSpanForRow } from '../utils/calc-span';
4
+ /**
5
+ * Insert a new row in current table
6
+ */
7
+ export function insertRow(opts, editor, count = 1, at // row index
8
+ ) {
9
+ const tablePosition = TablePosition.create(opts, editor, editor.selection.anchor.path);
10
+ const { table, row } = tablePosition;
11
+ // Create a new row with the right count of cells
12
+ const columns = table.children[0].children.length;
13
+ const newRows = [];
14
+ const rowIndex = tablePosition.getRowIndex();
15
+ const insertRowIndex = typeof at === 'undefined' ? rowIndex + 1 : at;
16
+ for (let i = 0; i < count; i++) {
17
+ const newRow = createRow(opts, columns);
18
+ newRows.push(newRow);
19
+ }
20
+ if (newRows.length === 1) {
21
+ const rowspan = calcSpanForRow(table, insertRowIndex);
22
+ newRows[0].children.forEach((cell, columnIndex) => {
23
+ const isInside = rowspan[columnIndex];
24
+ if (isInside) {
25
+ cell.hidden = true;
26
+ const dirtyRow = table.children.find((row, rowIndex) => !row.children[columnIndex].hidden &&
27
+ rowIndex < insertRowIndex &&
28
+ row.children[columnIndex].rowspan &&
29
+ row.children[columnIndex].rowspan + rowIndex > insertRowIndex);
30
+ if (dirtyRow) {
31
+ Transforms.setNodes(editor, { rowspan: dirtyRow.children[columnIndex].rowspan + 1 }, {
32
+ at: tablePosition.tableEntry[1].concat(table.children.indexOf(dirtyRow)).concat(columnIndex)
33
+ });
34
+ }
35
+ }
36
+ });
37
+ }
38
+ Transforms.insertNodes(editor, newRows, {
39
+ at: tablePosition.tableEntry[1].concat(insertRowIndex)
40
+ });
41
+ }
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXJvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LXJvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUNyQixJQUFrQixFQUNsQixNQUFjLEVBQ2QsS0FBSyxHQUFHLENBQUMsRUFDVCxFQUFXLENBQUMsWUFBWTs7SUFFeEIsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZGLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsYUFBYSxDQUFDO0lBRXJDLGlEQUFpRDtJQUNqRCxNQUFNLE9BQU8sR0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQXNCLENBQUMsTUFBTSxDQUFDO0lBQ2pFLE1BQU0sT0FBTyxHQUFzQixFQUFFLENBQUM7SUFFdEMsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdDLE1BQU0sY0FBYyxHQUFHLE9BQU8sRUFBRSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRXJFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDNUIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQ3hCO0lBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN0QixNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0QyxJQUFJLFFBQVEsRUFBRTtnQkFDVixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDbkIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hDLENBQUMsR0FBb0IsRUFBRSxRQUFnQixFQUFFLEVBQUUsQ0FDdkMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU07b0JBQ2pDLFFBQVEsR0FBRyxjQUFjO29CQUN6QixHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU87b0JBQ2pDLEdBQUcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsR0FBRyxjQUFjLENBQ3BFLENBQUM7Z0JBQ0YsSUFBSSxRQUFRLEVBQUU7b0JBQ1YsVUFBVSxDQUFDLFFBQVEsQ0FDZixNQUFNLEVBQ04sRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFLEVBQ3ZEO3dCQUNJLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7cUJBQy9GLENBQ0osQ0FBQztpQkFDTDthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7S0FDTjtJQUVELFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRTtRQUNwQyxFQUFFLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDO0tBQ3pELENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVJvd0VsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVQb3NpdGlvbiwgY3JlYXRlUm93IH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2FsY1NwYW5Gb3JSb3cgfSBmcm9tICcuLi91dGlscy9jYWxjLXNwYW4nO1xuXG4vKipcbiAqIEluc2VydCBhIG5ldyByb3cgaW4gY3VycmVudCB0YWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0Um93KFxuICAgIG9wdHM6IFRhYmxlT3B0aW9ucyxcbiAgICBlZGl0b3I6IEVkaXRvcixcbiAgICBjb3VudCA9IDEsXG4gICAgYXQ/OiBudW1iZXIgLy8gcm93IGluZGV4XG4pIHtcbiAgICBjb25zdCB0YWJsZVBvc2l0aW9uID0gVGFibGVQb3NpdGlvbi5jcmVhdGUob3B0cywgZWRpdG9yLCBlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoKTtcbiAgICBjb25zdCB7IHRhYmxlLCByb3cgfSA9IHRhYmxlUG9zaXRpb247XG5cbiAgICAvLyBDcmVhdGUgYSBuZXcgcm93IHdpdGggdGhlIHJpZ2h0IGNvdW50IG9mIGNlbGxzXG4gICAgY29uc3QgY29sdW1ucyA9ICh0YWJsZS5jaGlsZHJlblswXS5jaGlsZHJlbiBhcyBFbGVtZW50W10pLmxlbmd0aDtcbiAgICBjb25zdCBuZXdSb3dzOiBUYWJsZVJvd0VsZW1lbnRbXSA9IFtdO1xuXG4gICAgY29uc3Qgcm93SW5kZXggPSB0YWJsZVBvc2l0aW9uLmdldFJvd0luZGV4KCk7XG4gICAgY29uc3QgaW5zZXJ0Um93SW5kZXggPSB0eXBlb2YgYXQgPT09ICd1bmRlZmluZWQnID8gcm93SW5kZXggKyAxIDogYXQ7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcbiAgICAgICAgY29uc3QgbmV3Um93ID0gY3JlYXRlUm93KG9wdHMsIGNvbHVtbnMpO1xuICAgICAgICBuZXdSb3dzLnB1c2gobmV3Um93KTtcbiAgICB9XG5cbiAgICBpZiAobmV3Um93cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgY29uc3Qgcm93c3BhbiA9IGNhbGNTcGFuRm9yUm93KHRhYmxlLCBpbnNlcnRSb3dJbmRleCk7XG4gICAgICAgIG5ld1Jvd3NbMF0uY2hpbGRyZW4uZm9yRWFjaCgoY2VsbCwgY29sdW1uSW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzSW5zaWRlID0gcm93c3Bhbltjb2x1bW5JbmRleF07XG4gICAgICAgICAgICBpZiAoaXNJbnNpZGUpIHtcbiAgICAgICAgICAgICAgICBjZWxsLmhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgZGlydHlSb3cgPSB0YWJsZS5jaGlsZHJlbi5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocm93OiBUYWJsZVJvd0VsZW1lbnQsIHJvd0luZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAhcm93LmNoaWxkcmVuW2NvbHVtbkluZGV4XS5oaWRkZW4gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvd0luZGV4IDwgaW5zZXJ0Um93SW5kZXggJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdy5jaGlsZHJlbltjb2x1bW5JbmRleF0ucm93c3BhbiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgcm93LmNoaWxkcmVuW2NvbHVtbkluZGV4XS5yb3dzcGFuICsgcm93SW5kZXggPiBpbnNlcnRSb3dJbmRleFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgaWYgKGRpcnR5Um93KSB7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZXMoXG4gICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHJvd3NwYW46IGRpcnR5Um93LmNoaWxkcmVuW2NvbHVtbkluZGV4XS5yb3dzcGFuICsgMSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHRhYmxlLmNoaWxkcmVuLmluZGV4T2YoZGlydHlSb3cpKS5jb25jYXQoY29sdW1uSW5kZXgpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgbmV3Um93cywge1xuICAgICAgICBhdDogdGFibGVQb3NpdGlvbi50YWJsZUVudHJ5WzFdLmNvbmNhdChpbnNlcnRSb3dJbmRleClcbiAgICB9KTtcbn1cbiJdfQ==
@@ -0,0 +1,15 @@
1
+ import { createTable } from '../utils';
2
+ import * as TheTransforms from '../../../transforms';
3
+ /**
4
+ * Insert a new table
5
+ */
6
+ export function insertTable(opts, editor, rows = 3, columns = 3, getCellContent) {
7
+ const { selection } = editor;
8
+ if (!selection?.anchor) {
9
+ return;
10
+ }
11
+ // Create the table node
12
+ const table = createTable(opts, columns, rows, getCellContent);
13
+ TheTransforms.insertElements(editor, table);
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdHJhbnNmb3Jtcy9pbnNlcnQtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEtBQUssYUFBYSxNQUFNLHFCQUFxQixDQUFDO0FBRXJEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FDdkIsSUFBa0IsRUFDbEIsTUFBYyxFQUNkLE9BQWUsQ0FBQyxFQUNoQixVQUFrQixDQUFDLEVBQ25CLGNBQXdEO0lBRXhELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7UUFDcEIsT0FBTztLQUNWO0lBQ0Qsd0JBQXdCO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMvRCxhQUFhLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBOb2RlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGFibGUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgKiBhcyBUaGVUcmFuc2Zvcm1zIGZyb20gJy4uLy4uLy4uL3RyYW5zZm9ybXMnO1xuXG4vKipcbiAqIEluc2VydCBhIG5ldyB0YWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0VGFibGUoXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIHJvd3M6IG51bWJlciA9IDMsXG4gICAgY29sdW1uczogbnVtYmVyID0gMyxcbiAgICBnZXRDZWxsQ29udGVudD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IE5vZGVbXVxuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBpZiAoIXNlbGVjdGlvbj8uYW5jaG9yKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gQ3JlYXRlIHRoZSB0YWJsZSBub2RlXG4gICAgY29uc3QgdGFibGUgPSBjcmVhdGVUYWJsZShvcHRzLCBjb2x1bW5zLCByb3dzLCBnZXRDZWxsQ29udGVudCk7XG4gICAgVGhlVHJhbnNmb3Jtcy5pbnNlcnRFbGVtZW50cyhlZGl0b3IsIHRhYmxlKTtcbn1cbiJdfQ==