@atlaskit/editor-core 172.1.1 → 172.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (541) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/cjs/analytics-api/api.js +38 -0
  3. package/dist/cjs/analytics-api/attach-payload-into-transaction.js +36 -0
  4. package/dist/cjs/analytics-api/editor-state-context.js +96 -0
  5. package/dist/cjs/analytics-api/map-attributes.js +30 -0
  6. package/dist/cjs/create-editor/ReactEditorView.js +47 -6
  7. package/dist/cjs/create-editor/ReactEditorViewContext.js +2 -6
  8. package/dist/cjs/create-editor/create-plugins-list.js +12 -3
  9. package/dist/cjs/event-dispatcher/index.js +12 -81
  10. package/dist/cjs/insert-api/api.js +48 -0
  11. package/dist/cjs/insert-api/insert-content-handlers.js +101 -0
  12. package/dist/cjs/insert-api/insert-node-helpers.js +157 -0
  13. package/dist/cjs/{plugins/analytics/types/avatar.js → insert-api/types.js} +0 -0
  14. package/dist/cjs/keymaps/index.js +437 -288
  15. package/dist/cjs/messages.js +8 -125
  16. package/dist/cjs/plugins/analytics/index.js +26 -26
  17. package/dist/cjs/plugins/analytics/types/enums.js +49 -344
  18. package/dist/cjs/plugins/analytics/types/extension-events.js +19 -26
  19. package/dist/cjs/plugins/analytics/types/general-events.js +25 -34
  20. package/dist/cjs/plugins/analytics/types/index.js +10 -56
  21. package/dist/cjs/plugins/analytics/types/inline-comment-events.js +7 -8
  22. package/dist/cjs/plugins/analytics/types/node-events.js +13 -20
  23. package/dist/cjs/plugins/analytics/types/smart-links.js +8 -14
  24. package/dist/cjs/plugins/analytics/types/toolbar-button.js +7 -20
  25. package/dist/cjs/plugins/analytics/utils.js +37 -127
  26. package/dist/cjs/plugins/expand/utils.js +18 -45
  27. package/dist/cjs/plugins/extension/actions.js +10 -30
  28. package/dist/cjs/plugins/extension/ui/Extension/styles.js +18 -8
  29. package/dist/cjs/plugins/insert-block/index.js +1 -0
  30. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +31 -22
  31. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/messages.js +6 -170
  32. package/dist/cjs/plugins/layout/styles.js +14 -6
  33. package/dist/cjs/plugins/layout/utils.js +25 -66
  34. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +10 -0
  35. package/dist/cjs/plugins/paste/handlers.js +19 -15
  36. package/dist/cjs/plugins/paste/util/index.js +30 -1
  37. package/dist/cjs/plugins/selection/gap-cursor/selection.js +23 -188
  38. package/dist/cjs/plugins/selection/gap-cursor/utils/is-ignored.js +7 -8
  39. package/dist/cjs/plugins/selection/gap-cursor/utils/is-valid-target-node.js +7 -8
  40. package/dist/cjs/plugins/selection/gap-cursor/utils.js +6 -6
  41. package/dist/cjs/plugins/selection/gap-cursor-selection.js +1 -1
  42. package/dist/cjs/plugins/selection/types.js +9 -11
  43. package/dist/cjs/plugins/selection/utils.js +2 -2
  44. package/dist/cjs/plugins/table/commands/go-to-next-cell.js +40 -38
  45. package/dist/cjs/plugins/table/commands/insert.js +57 -49
  46. package/dist/cjs/plugins/table/commands/selection.js +302 -218
  47. package/dist/cjs/plugins/table/commands-with-analytics.js +241 -219
  48. package/dist/cjs/plugins/table/event-handlers.js +60 -60
  49. package/dist/cjs/plugins/table/index.js +64 -20
  50. package/dist/cjs/plugins/table/nodeviews/TableComponent.js +20 -22
  51. package/dist/cjs/plugins/table/nodeviews/table.js +19 -11
  52. package/dist/cjs/plugins/table/nodeviews/tableCell.js +11 -13
  53. package/dist/cjs/plugins/table/nodeviews/update-overflow-shadows.js +25 -25
  54. package/dist/cjs/plugins/table/pm-plugins/keymap.js +15 -13
  55. package/dist/cjs/plugins/table/pm-plugins/main.js +8 -8
  56. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -8
  57. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -1
  58. package/dist/cjs/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -10
  59. package/dist/cjs/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  60. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/dom.js +30 -28
  61. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -7
  62. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  63. package/dist/cjs/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  64. package/dist/cjs/plugins/table/toolbar.js +74 -72
  65. package/dist/cjs/plugins/table/transforms/column-width.js +41 -38
  66. package/dist/cjs/plugins/table/transforms/replace-table.js +4 -4
  67. package/dist/cjs/plugins/table/ui/FloatingContextualButton/index.js +2 -4
  68. package/dist/cjs/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +25 -21
  69. package/dist/cjs/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  70. package/dist/cjs/plugins/table/ui/FloatingDeleteButton/index.js +7 -4
  71. package/dist/cjs/plugins/table/ui/FloatingInsertButton/index.js +12 -11
  72. package/dist/cjs/plugins/table/ui/LayoutButton/index.js +2 -2
  73. package/dist/cjs/plugins/table/ui/TableFloatingControls/index.js +4 -6
  74. package/dist/cjs/plugins/table/ui/common-styles.js +3 -3
  75. package/dist/cjs/plugins/table/utils/analytics.js +26 -1
  76. package/dist/cjs/plugins/table/utils/index.js +0 -6
  77. package/dist/cjs/selection-api/api.js +34 -0
  78. package/dist/cjs/types/browser.js +1 -2
  79. package/dist/cjs/ui/ColorPalette/Color/index.js +2 -106
  80. package/dist/cjs/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +2 -21
  81. package/dist/cjs/ui/ColorPalette/Palettes/common.js +7 -25
  82. package/dist/cjs/ui/ColorPalette/Palettes/paletteMessages.js +2 -114
  83. package/dist/cjs/ui/ColorPalette/Palettes/panelBackgroundPalette.js +12 -152
  84. package/dist/cjs/ui/ColorPalette/Palettes/statusColorPalette.js +13 -61
  85. package/dist/cjs/ui/ColorPalette/Palettes/textColorPalette.js +12 -34
  86. package/dist/cjs/ui/ColorPalette/index.js +2 -76
  87. package/dist/cjs/ui/Dropdown/index.js +3 -119
  88. package/dist/cjs/ui/DropdownMenu/index.js +3 -286
  89. package/dist/cjs/ui/Toolbar/types.js +19 -33
  90. package/dist/cjs/ui/ToolbarButton/index.js +8 -120
  91. package/dist/cjs/ui/WithPluginState/index.js +1 -3
  92. package/dist/cjs/ui/styles.js +35 -27
  93. package/dist/cjs/ui/with-outer-listeners.js +4 -152
  94. package/dist/cjs/utils/dom.js +46 -123
  95. package/dist/cjs/utils/index.js +40 -42
  96. package/dist/cjs/utils/node-width.js +7 -79
  97. package/dist/cjs/utils/nodes.js +57 -124
  98. package/dist/cjs/utils/plugin-state-factory.js +7 -107
  99. package/dist/cjs/utils/selection.js +11 -62
  100. package/dist/cjs/utils/slice.js +28 -68
  101. package/dist/cjs/utils/step.js +18 -46
  102. package/dist/cjs/version-wrapper.js +1 -1
  103. package/dist/cjs/version.json +1 -1
  104. package/dist/es2019/analytics-api/api.js +30 -0
  105. package/dist/es2019/analytics-api/attach-payload-into-transaction.js +25 -0
  106. package/dist/es2019/analytics-api/editor-state-context.js +85 -0
  107. package/dist/es2019/analytics-api/map-attributes.js +14 -0
  108. package/dist/es2019/create-editor/ReactEditorView.js +33 -4
  109. package/dist/es2019/create-editor/ReactEditorViewContext.js +1 -2
  110. package/dist/es2019/create-editor/create-plugins-list.js +13 -4
  111. package/dist/es2019/event-dispatcher/index.js +1 -60
  112. package/dist/es2019/insert-api/api.js +43 -0
  113. package/dist/es2019/insert-api/insert-content-handlers.js +85 -0
  114. package/dist/es2019/insert-api/insert-node-helpers.js +149 -0
  115. package/dist/es2019/{plugins/analytics/types/avatar.js → insert-api/types.js} +0 -0
  116. package/dist/es2019/keymaps/index.js +1 -186
  117. package/dist/es2019/messages.js +2 -123
  118. package/dist/es2019/plugins/analytics/index.js +1 -1
  119. package/dist/es2019/plugins/analytics/types/enums.js +1 -336
  120. package/dist/es2019/plugins/analytics/types/extension-events.js +1 -22
  121. package/dist/es2019/plugins/analytics/types/general-events.js +1 -30
  122. package/dist/es2019/plugins/analytics/types/index.js +1 -6
  123. package/dist/es2019/plugins/analytics/types/inline-comment-events.js +1 -7
  124. package/dist/es2019/plugins/analytics/types/node-events.js +1 -18
  125. package/dist/es2019/plugins/analytics/types/smart-links.js +1 -12
  126. package/dist/es2019/plugins/analytics/types/toolbar-button.js +1 -19
  127. package/dist/es2019/plugins/analytics/utils.js +12 -113
  128. package/dist/es2019/plugins/expand/utils.js +1 -36
  129. package/dist/es2019/plugins/extension/actions.js +1 -26
  130. package/dist/es2019/plugins/extension/ui/Extension/styles.js +2 -3
  131. package/dist/es2019/plugins/insert-block/index.js +1 -0
  132. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -12
  133. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/messages.js +1 -168
  134. package/dist/es2019/plugins/layout/styles.js +2 -3
  135. package/dist/es2019/plugins/layout/utils.js +1 -54
  136. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +10 -0
  137. package/dist/es2019/plugins/paste/handlers.js +8 -4
  138. package/dist/es2019/plugins/paste/util/index.js +23 -0
  139. package/dist/es2019/plugins/selection/gap-cursor/selection.js +1 -136
  140. package/dist/es2019/plugins/selection/gap-cursor/utils/is-ignored.js +1 -5
  141. package/dist/es2019/plugins/selection/gap-cursor/utils/is-valid-target-node.js +1 -4
  142. package/dist/es2019/plugins/selection/gap-cursor/utils.js +4 -4
  143. package/dist/es2019/plugins/selection/gap-cursor-selection.js +1 -1
  144. package/dist/es2019/plugins/selection/types.js +2 -9
  145. package/dist/es2019/plugins/selection/utils.js +1 -1
  146. package/dist/es2019/plugins/table/commands/go-to-next-cell.js +4 -4
  147. package/dist/es2019/plugins/table/commands/insert.js +26 -24
  148. package/dist/es2019/plugins/table/commands/selection.js +109 -51
  149. package/dist/es2019/plugins/table/commands-with-analytics.js +39 -38
  150. package/dist/es2019/plugins/table/event-handlers.js +6 -7
  151. package/dist/es2019/plugins/table/index.js +56 -16
  152. package/dist/es2019/plugins/table/nodeviews/TableComponent.js +11 -12
  153. package/dist/es2019/plugins/table/nodeviews/table.js +18 -8
  154. package/dist/es2019/plugins/table/nodeviews/tableCell.js +2 -3
  155. package/dist/es2019/plugins/table/nodeviews/update-overflow-shadows.js +3 -4
  156. package/dist/es2019/plugins/table/pm-plugins/keymap.js +13 -12
  157. package/dist/es2019/plugins/table/pm-plugins/main.js +8 -8
  158. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -6
  159. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -2
  160. package/dist/es2019/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -8
  161. package/dist/es2019/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  162. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/dom.js +2 -2
  163. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -4
  164. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  165. package/dist/es2019/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  166. package/dist/es2019/plugins/table/toolbar.js +24 -24
  167. package/dist/es2019/plugins/table/transforms/column-width.js +3 -2
  168. package/dist/es2019/plugins/table/transforms/replace-table.js +4 -4
  169. package/dist/es2019/plugins/table/ui/FloatingContextualButton/index.js +2 -2
  170. package/dist/es2019/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +19 -16
  171. package/dist/es2019/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  172. package/dist/es2019/plugins/table/ui/FloatingDeleteButton/index.js +8 -4
  173. package/dist/es2019/plugins/table/ui/FloatingInsertButton/index.js +9 -6
  174. package/dist/es2019/plugins/table/ui/LayoutButton/index.js +2 -2
  175. package/dist/es2019/plugins/table/ui/TableFloatingControls/index.js +2 -3
  176. package/dist/es2019/plugins/table/ui/common-styles.js +1 -1
  177. package/dist/es2019/plugins/table/utils/analytics.js +16 -1
  178. package/dist/es2019/plugins/table/utils/index.js +1 -1
  179. package/dist/es2019/selection-api/api.js +22 -0
  180. package/dist/es2019/types/browser.js +0 -1
  181. package/dist/es2019/ui/ColorPalette/Color/index.js +1 -66
  182. package/dist/es2019/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +1 -14
  183. package/dist/es2019/ui/ColorPalette/Palettes/common.js +1 -20
  184. package/dist/es2019/ui/ColorPalette/Palettes/paletteMessages.js +2 -113
  185. package/dist/es2019/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -137
  186. package/dist/es2019/ui/ColorPalette/Palettes/statusColorPalette.js +1 -51
  187. package/dist/es2019/ui/ColorPalette/Palettes/textColorPalette.js +1 -25
  188. package/dist/es2019/ui/ColorPalette/index.js +2 -62
  189. package/dist/es2019/ui/Dropdown/index.js +2 -84
  190. package/dist/es2019/ui/DropdownMenu/index.js +2 -244
  191. package/dist/es2019/ui/Toolbar/types.js +1 -30
  192. package/dist/es2019/ui/ToolbarButton/index.js +2 -94
  193. package/dist/es2019/ui/WithPluginState/index.js +1 -1
  194. package/dist/es2019/ui/styles.js +9 -47
  195. package/dist/es2019/ui/with-outer-listeners.js +2 -104
  196. package/dist/es2019/utils/dom.js +1 -113
  197. package/dist/es2019/utils/index.js +2 -21
  198. package/dist/es2019/utils/node-width.js +1 -75
  199. package/dist/es2019/utils/nodes.js +1 -88
  200. package/dist/es2019/utils/plugin-state-factory.js +1 -107
  201. package/dist/es2019/utils/selection.js +2 -52
  202. package/dist/es2019/utils/slice.js +1 -56
  203. package/dist/es2019/utils/step.js +1 -35
  204. package/dist/es2019/version-wrapper.js +1 -1
  205. package/dist/es2019/version.json +1 -1
  206. package/dist/esm/analytics-api/api.js +27 -0
  207. package/dist/esm/analytics-api/attach-payload-into-transaction.js +22 -0
  208. package/dist/esm/analytics-api/editor-state-context.js +81 -0
  209. package/dist/esm/analytics-api/map-attributes.js +20 -0
  210. package/dist/esm/create-editor/ReactEditorView.js +44 -6
  211. package/dist/esm/create-editor/ReactEditorViewContext.js +1 -2
  212. package/dist/esm/create-editor/create-plugins-list.js +15 -4
  213. package/dist/esm/event-dispatcher/index.js +1 -74
  214. package/dist/esm/insert-api/api.js +37 -0
  215. package/dist/esm/insert-api/insert-content-handlers.js +88 -0
  216. package/dist/esm/insert-api/insert-node-helpers.js +138 -0
  217. package/dist/{es2019/plugins/analytics/types/config-panel-events.js → esm/insert-api/types.js} +0 -0
  218. package/dist/esm/keymaps/index.js +1 -184
  219. package/dist/esm/messages.js +2 -123
  220. package/dist/esm/plugins/analytics/index.js +1 -1
  221. package/dist/esm/plugins/analytics/types/enums.js +1 -336
  222. package/dist/esm/plugins/analytics/types/extension-events.js +1 -22
  223. package/dist/esm/plugins/analytics/types/general-events.js +1 -30
  224. package/dist/esm/plugins/analytics/types/index.js +1 -6
  225. package/dist/esm/plugins/analytics/types/inline-comment-events.js +1 -7
  226. package/dist/esm/plugins/analytics/types/node-events.js +1 -18
  227. package/dist/esm/plugins/analytics/types/smart-links.js +1 -12
  228. package/dist/esm/plugins/analytics/types/toolbar-button.js +1 -19
  229. package/dist/esm/plugins/analytics/utils.js +12 -113
  230. package/dist/esm/plugins/expand/utils.js +1 -34
  231. package/dist/esm/plugins/extension/actions.js +1 -24
  232. package/dist/esm/plugins/extension/ui/Extension/styles.js +2 -3
  233. package/dist/esm/plugins/insert-block/index.js +1 -0
  234. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -12
  235. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/messages.js +1 -168
  236. package/dist/esm/plugins/layout/styles.js +2 -3
  237. package/dist/esm/plugins/layout/utils.js +1 -58
  238. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +10 -0
  239. package/dist/esm/plugins/paste/handlers.js +8 -4
  240. package/dist/esm/plugins/paste/util/index.js +23 -0
  241. package/dist/esm/plugins/selection/gap-cursor/selection.js +1 -176
  242. package/dist/esm/plugins/selection/gap-cursor/utils/is-ignored.js +1 -5
  243. package/dist/esm/plugins/selection/gap-cursor/utils/is-valid-target-node.js +1 -4
  244. package/dist/esm/plugins/selection/gap-cursor/utils.js +4 -4
  245. package/dist/esm/plugins/selection/gap-cursor-selection.js +1 -1
  246. package/dist/esm/plugins/selection/types.js +2 -9
  247. package/dist/esm/plugins/selection/utils.js +1 -1
  248. package/dist/esm/plugins/table/commands/go-to-next-cell.js +34 -32
  249. package/dist/esm/plugins/table/commands/insert.js +57 -49
  250. package/dist/esm/plugins/table/commands/selection.js +303 -215
  251. package/dist/esm/plugins/table/commands-with-analytics.js +241 -220
  252. package/dist/esm/plugins/table/event-handlers.js +60 -59
  253. package/dist/esm/plugins/table/index.js +62 -18
  254. package/dist/esm/plugins/table/nodeviews/TableComponent.js +20 -21
  255. package/dist/esm/plugins/table/nodeviews/table.js +19 -9
  256. package/dist/esm/plugins/table/nodeviews/tableCell.js +11 -12
  257. package/dist/esm/plugins/table/nodeviews/update-overflow-shadows.js +25 -24
  258. package/dist/esm/plugins/table/pm-plugins/keymap.js +14 -13
  259. package/dist/esm/plugins/table/pm-plugins/main.js +8 -8
  260. package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -6
  261. package/dist/esm/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -1
  262. package/dist/esm/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -8
  263. package/dist/esm/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  264. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/dom.js +30 -28
  265. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -4
  266. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  267. package/dist/esm/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  268. package/dist/esm/plugins/table/toolbar.js +75 -73
  269. package/dist/esm/plugins/table/transforms/column-width.js +41 -38
  270. package/dist/esm/plugins/table/transforms/replace-table.js +4 -4
  271. package/dist/esm/plugins/table/ui/FloatingContextualButton/index.js +2 -2
  272. package/dist/esm/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +25 -21
  273. package/dist/esm/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  274. package/dist/esm/plugins/table/ui/FloatingDeleteButton/index.js +6 -4
  275. package/dist/esm/plugins/table/ui/FloatingInsertButton/index.js +9 -6
  276. package/dist/esm/plugins/table/ui/LayoutButton/index.js +2 -2
  277. package/dist/esm/plugins/table/ui/TableFloatingControls/index.js +4 -5
  278. package/dist/esm/plugins/table/ui/common-styles.js +1 -1
  279. package/dist/esm/plugins/table/utils/analytics.js +22 -1
  280. package/dist/esm/plugins/table/utils/index.js +1 -1
  281. package/dist/esm/selection-api/api.js +23 -0
  282. package/dist/esm/types/browser.js +0 -1
  283. package/dist/esm/ui/ColorPalette/Color/index.js +1 -93
  284. package/dist/esm/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +1 -14
  285. package/dist/esm/ui/ColorPalette/Palettes/common.js +1 -19
  286. package/dist/esm/ui/ColorPalette/Palettes/paletteMessages.js +2 -113
  287. package/dist/esm/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -147
  288. package/dist/esm/ui/ColorPalette/Palettes/statusColorPalette.js +1 -51
  289. package/dist/esm/ui/ColorPalette/Palettes/textColorPalette.js +1 -25
  290. package/dist/esm/ui/ColorPalette/index.js +2 -64
  291. package/dist/esm/ui/Dropdown/index.js +2 -106
  292. package/dist/esm/ui/DropdownMenu/index.js +2 -265
  293. package/dist/esm/ui/Toolbar/types.js +1 -30
  294. package/dist/esm/ui/ToolbarButton/index.js +2 -102
  295. package/dist/esm/ui/WithPluginState/index.js +1 -1
  296. package/dist/esm/ui/styles.js +17 -20
  297. package/dist/esm/ui/with-outer-listeners.js +2 -139
  298. package/dist/esm/utils/dom.js +1 -113
  299. package/dist/esm/utils/index.js +5 -23
  300. package/dist/esm/utils/node-width.js +1 -73
  301. package/dist/esm/utils/nodes.js +1 -100
  302. package/dist/esm/utils/plugin-state-factory.js +1 -106
  303. package/dist/esm/utils/selection.js +2 -50
  304. package/dist/esm/utils/slice.js +1 -59
  305. package/dist/esm/utils/step.js +1 -37
  306. package/dist/esm/version-wrapper.js +1 -1
  307. package/dist/esm/version.json +1 -1
  308. package/dist/types/actions/index.d.ts +2 -16
  309. package/dist/types/analytics-api/api.d.ts +9 -0
  310. package/dist/types/analytics-api/attach-payload-into-transaction.d.ts +10 -0
  311. package/dist/types/analytics-api/editor-state-context.d.ts +9 -0
  312. package/dist/types/analytics-api/map-attributes.d.ts +2 -0
  313. package/dist/types/create-editor/ReactEditorView.d.ts +1 -0
  314. package/dist/types/create-editor/ReactEditorViewContext.d.ts +1 -7
  315. package/dist/types/create-editor/create-plugins-list.d.ts +5 -1
  316. package/dist/types/event-dispatcher/index.d.ts +2 -19
  317. package/dist/types/insert-api/api.d.ts +9 -0
  318. package/dist/types/insert-api/insert-content-handlers.d.ts +9 -0
  319. package/dist/types/insert-api/insert-node-helpers.d.ts +30 -0
  320. package/dist/types/insert-api/types.d.ts +16 -0
  321. package/dist/types/keymaps/index.d.ts +2 -89
  322. package/dist/types/labs/next/presets/cxhtml.d.ts +1 -1
  323. package/dist/types/labs/next/presets/mobile.d.ts +1 -1
  324. package/dist/types/messages.d.ts +2 -124
  325. package/dist/types/plugins/analytics/index.d.ts +2 -2
  326. package/dist/types/plugins/analytics/types/dispatch-analytics-event.d.ts +1 -2
  327. package/dist/types/plugins/analytics/types/enums.d.ts +1 -313
  328. package/dist/types/plugins/analytics/types/events.d.ts +1 -111
  329. package/dist/types/plugins/analytics/types/experimental-events.d.ts +1 -17
  330. package/dist/types/plugins/analytics/types/extension-events.d.ts +2 -43
  331. package/dist/types/plugins/analytics/types/general-events.d.ts +2 -179
  332. package/dist/types/plugins/analytics/types/index.d.ts +4 -14
  333. package/dist/types/plugins/analytics/types/inline-comment-events.d.ts +2 -17
  334. package/dist/types/plugins/analytics/types/link-tool-bar-events.d.ts +1 -76
  335. package/dist/types/plugins/analytics/types/media-events.d.ts +1 -16
  336. package/dist/types/plugins/analytics/types/node-events.d.ts +2 -56
  337. package/dist/types/plugins/analytics/types/selection-events.d.ts +1 -18
  338. package/dist/types/plugins/analytics/types/smart-links.d.ts +2 -13
  339. package/dist/types/plugins/analytics/types/toolbar-button.d.ts +2 -22
  340. package/dist/types/plugins/analytics/types/type-ahead.d.ts +1 -27
  341. package/dist/types/plugins/analytics/utils.d.ts +3 -8
  342. package/dist/types/plugins/annotation/pm-plugins/plugin-factory.d.ts +1 -1
  343. package/dist/types/plugins/card/pm-plugins/util/state.d.ts +1 -1
  344. package/dist/types/plugins/code-bidi-warning/pm-plugins/plugin-factory.d.ts +1 -1
  345. package/dist/types/plugins/context-panel/types.d.ts +1 -3
  346. package/dist/types/plugins/expand/pm-plugins/plugin-factory.d.ts +1 -1
  347. package/dist/types/plugins/expand/utils.d.ts +1 -5
  348. package/dist/types/plugins/extension/actions.d.ts +2 -6
  349. package/dist/types/plugins/extension/commands.d.ts +7 -7
  350. package/dist/types/plugins/extension/plugin-factory.d.ts +2 -2
  351. package/dist/types/plugins/extension/ui/Extension/styles.d.ts +2 -2
  352. package/dist/types/plugins/find-replace/commands.d.ts +7 -7
  353. package/dist/types/plugins/find-replace/plugin.d.ts +1 -1
  354. package/dist/types/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin-factory.d.ts +1 -1
  355. package/dist/types/plugins/floating-toolbar/types.d.ts +1 -153
  356. package/dist/types/plugins/floating-toolbar/ui/Button.d.ts +2 -1
  357. package/dist/types/plugins/floating-toolbar/ui/Select.d.ts +2 -12
  358. package/dist/types/plugins/floating-toolbar/ui/types.d.ts +1 -20
  359. package/dist/types/plugins/insert-block/index.d.ts +2 -0
  360. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/messages.d.ts +1 -167
  361. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +3 -1
  362. package/dist/types/plugins/layout/styles.d.ts +2 -2
  363. package/dist/types/plugins/layout/utils.d.ts +1 -15
  364. package/dist/types/plugins/media/commands/linking.d.ts +3 -3
  365. package/dist/types/plugins/media/nodeviews/mediaNodeView/index.d.ts +1 -1
  366. package/dist/types/plugins/media/nodeviews/mediaSingle.d.ts +1 -1
  367. package/dist/types/plugins/media/pm-plugins/alt-text/commands.d.ts +2 -2
  368. package/dist/types/plugins/media/pm-plugins/alt-text/index.d.ts +1 -1
  369. package/dist/types/plugins/media/pm-plugins/linking/index.d.ts +1 -1
  370. package/dist/types/plugins/mobile-dimensions/commands.d.ts +4 -4
  371. package/dist/types/plugins/mobile-dimensions/plugin-factory.d.ts +1 -1
  372. package/dist/types/plugins/paste/util/index.d.ts +2 -1
  373. package/dist/types/plugins/selection/commands.d.ts +1 -1
  374. package/dist/types/plugins/selection/gap-cursor/selection.d.ts +1 -40
  375. package/dist/types/plugins/selection/gap-cursor/utils/is-ignored.d.ts +1 -2
  376. package/dist/types/plugins/selection/gap-cursor/utils/is-valid-target-node.d.ts +1 -2
  377. package/dist/types/plugins/selection/gap-cursor-selection.d.ts +1 -1
  378. package/dist/types/plugins/selection/plugin-factory.d.ts +1 -1
  379. package/dist/types/plugins/selection/types.d.ts +4 -19
  380. package/dist/types/plugins/table/commands/go-to-next-cell.d.ts +3 -2
  381. package/dist/types/plugins/table/commands/hover.d.ts +7 -7
  382. package/dist/types/plugins/table/commands/insert.d.ts +5 -4
  383. package/dist/types/plugins/table/commands/misc.d.ts +8 -8
  384. package/dist/types/plugins/table/commands/selection.d.ts +4 -3
  385. package/dist/types/plugins/table/commands/toggle.d.ts +1 -1
  386. package/dist/types/plugins/table/commands-with-analytics.d.ts +21 -19
  387. package/dist/types/plugins/table/event-handlers.d.ts +4 -2
  388. package/dist/types/plugins/table/index.d.ts +7 -0
  389. package/dist/types/plugins/table/nodeviews/TableComponent.d.ts +4 -2
  390. package/dist/types/plugins/table/nodeviews/table.d.ts +2 -1
  391. package/dist/types/plugins/table/nodeviews/tableCell.d.ts +2 -1
  392. package/dist/types/plugins/table/nodeviews/types.d.ts +3 -0
  393. package/dist/types/plugins/table/nodeviews/update-overflow-shadows.d.ts +2 -1
  394. package/dist/types/plugins/table/pm-plugins/keymap.d.ts +3 -1
  395. package/dist/types/plugins/table/pm-plugins/main.d.ts +4 -2
  396. package/dist/types/plugins/table/pm-plugins/plugin-factory.d.ts +1 -1
  397. package/dist/types/plugins/table/pm-plugins/sticky-headers/commands.d.ts +2 -2
  398. package/dist/types/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.d.ts +2 -1
  399. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin-state.d.ts +1 -1
  400. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin.d.ts +2 -1
  401. package/dist/types/plugins/table/pm-plugins/table-resizing/commands.d.ts +4 -4
  402. package/dist/types/plugins/table/pm-plugins/table-resizing/event-handlers.d.ts +3 -1
  403. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin-factory.d.ts +2 -2
  404. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin.d.ts +3 -1
  405. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/dom.d.ts +2 -1
  406. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/misc.d.ts +3 -1
  407. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/resize-state.d.ts +2 -1
  408. package/dist/types/plugins/table/pm-plugins/table-selection-keymap.d.ts +2 -1
  409. package/dist/types/plugins/table/toolbar.d.ts +5 -3
  410. package/dist/types/plugins/table/transforms/column-width.d.ts +2 -1
  411. package/dist/types/plugins/table/transforms/replace-table.d.ts +3 -2
  412. package/dist/types/plugins/table/types.d.ts +3 -1
  413. package/dist/types/plugins/table/ui/FloatingContextualButton/index.d.ts +1 -1
  414. package/dist/types/plugins/table/ui/FloatingContextualMenu/ContextualMenu.d.ts +4 -0
  415. package/dist/types/plugins/table/ui/FloatingContextualMenu/index.d.ts +5 -1
  416. package/dist/types/plugins/table/ui/FloatingDeleteButton/index.d.ts +2 -0
  417. package/dist/types/plugins/table/ui/FloatingInsertButton/index.d.ts +5 -1
  418. package/dist/types/plugins/table/ui/LayoutButton/index.d.ts +2 -0
  419. package/dist/types/plugins/table/ui/TableFloatingControls/index.d.ts +2 -0
  420. package/dist/types/plugins/table/utils/analytics.d.ts +3 -0
  421. package/dist/types/plugins/table/utils/index.d.ts +1 -1
  422. package/dist/types/plugins/type-ahead/types.d.ts +2 -50
  423. package/dist/types/plugins/width/index.d.ts +3 -6
  424. package/dist/types/selection-api/api.d.ts +11 -0
  425. package/dist/types/types/browser.d.ts +1 -10
  426. package/dist/types/types/editor-appearance.d.ts +1 -1
  427. package/dist/types/types/editor-plugin.d.ts +1 -59
  428. package/dist/types/types/editor-react-context.d.ts +1 -6
  429. package/dist/types/types/empty-state-handler.d.ts +1 -7
  430. package/dist/types/types/feature-flags.d.ts +1 -343
  431. package/dist/types/types/pm-config.d.ts +1 -14
  432. package/dist/types/types/pm-plugin.d.ts +1 -27
  433. package/dist/types/types/ui-components.d.ts +1 -22
  434. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +118 -118
  435. package/dist/types/ui/ColorPalette/Color/index.d.ts +1 -19
  436. package/dist/types/ui/ColorPalette/Palettes/cellBackgroundColorPalette.d.ts +1 -2
  437. package/dist/types/ui/ColorPalette/Palettes/common.d.ts +1 -1
  438. package/dist/types/ui/ColorPalette/Palettes/paletteMessages.d.ts +2 -113
  439. package/dist/types/ui/ColorPalette/Palettes/panelBackgroundPalette.d.ts +1 -3
  440. package/dist/types/ui/ColorPalette/Palettes/statusColorPalette.d.ts +1 -3
  441. package/dist/types/ui/ColorPalette/Palettes/textColorPalette.d.ts +1 -3
  442. package/dist/types/ui/ColorPalette/Palettes/type.d.ts +1 -8
  443. package/dist/types/ui/ColorPalette/index.d.ts +2 -23
  444. package/dist/types/ui/ColorPickerButton/index.d.ts +1 -1
  445. package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
  446. package/dist/types/ui/ContentStyles/index.d.ts +2 -2
  447. package/dist/types/ui/Dropdown/index.d.ts +2 -33
  448. package/dist/types/ui/DropdownMenu/index.d.ts +2 -18
  449. package/dist/types/ui/DropdownMenu/types.d.ts +1 -43
  450. package/dist/types/ui/Toolbar/types.d.ts +2 -30
  451. package/dist/types/ui/ToolbarButton/index.d.ts +3 -52
  452. package/dist/types/ui/styles.d.ts +3 -3
  453. package/dist/types/ui/with-outer-listeners.d.ts +2 -10
  454. package/dist/types/utils/document-logger.d.ts +2 -7
  455. package/dist/types/utils/dom.d.ts +2 -26
  456. package/dist/types/utils/index.d.ts +3 -6
  457. package/dist/types/utils/node-width.d.ts +1 -7
  458. package/dist/types/utils/nodes.d.ts +1 -35
  459. package/dist/types/utils/performance/plugin-performance-report.d.ts +2 -25
  460. package/dist/types/utils/plugin-state-factory.d.ts +2 -16
  461. package/dist/types/utils/selection.d.ts +3 -6
  462. package/dist/types/utils/slice.d.ts +2 -11
  463. package/dist/types/utils/step.d.ts +1 -15
  464. package/package.json +8 -9
  465. package/dist/cjs/plugins/analytics/types/config-panel-events.js +0 -5
  466. package/dist/cjs/plugins/analytics/types/cut-copy-events.js +0 -5
  467. package/dist/cjs/plugins/analytics/types/date-events.js +0 -5
  468. package/dist/cjs/plugins/analytics/types/element-browser-events.js +0 -5
  469. package/dist/cjs/plugins/analytics/types/find-replace-events.js +0 -5
  470. package/dist/cjs/plugins/analytics/types/format-events.js +0 -24
  471. package/dist/cjs/plugins/analytics/types/insert-events.js +0 -51
  472. package/dist/cjs/plugins/analytics/types/list-events.js +0 -25
  473. package/dist/cjs/plugins/analytics/types/paste-events.js +0 -55
  474. package/dist/cjs/plugins/analytics/types/substitute-events.js +0 -24
  475. package/dist/cjs/plugins/analytics/types/table-events.js +0 -43
  476. package/dist/cjs/plugins/analytics/types/utils.js +0 -27
  477. package/dist/cjs/ui/ColorPalette/Color/styles.js +0 -21
  478. package/dist/cjs/ui/ColorPalette/Palettes/getColorMessage.js +0 -17
  479. package/dist/cjs/ui/ColorPalette/styles.js +0 -19
  480. package/dist/cjs/ui/DropList/index.js +0 -215
  481. package/dist/cjs/ui/Layer/index.js +0 -245
  482. package/dist/cjs/ui/Layer/internal/helpers.js +0 -70
  483. package/dist/cjs/ui/ToolbarButton/styles.js +0 -26
  484. package/dist/es2019/plugins/analytics/types/cut-copy-events.js +0 -1
  485. package/dist/es2019/plugins/analytics/types/date-events.js +0 -1
  486. package/dist/es2019/plugins/analytics/types/element-browser-events.js +0 -1
  487. package/dist/es2019/plugins/analytics/types/find-replace-events.js +0 -1
  488. package/dist/es2019/plugins/analytics/types/format-events.js +0 -16
  489. package/dist/es2019/plugins/analytics/types/insert-events.js +0 -41
  490. package/dist/es2019/plugins/analytics/types/list-events.js +0 -17
  491. package/dist/es2019/plugins/analytics/types/paste-events.js +0 -46
  492. package/dist/es2019/plugins/analytics/types/substitute-events.js +0 -16
  493. package/dist/es2019/plugins/analytics/types/table-events.js +0 -34
  494. package/dist/es2019/plugins/analytics/types/utils.js +0 -19
  495. package/dist/es2019/ui/ColorPalette/Color/styles.js +0 -24
  496. package/dist/es2019/ui/ColorPalette/Palettes/getColorMessage.js +0 -14
  497. package/dist/es2019/ui/ColorPalette/styles.js +0 -7
  498. package/dist/es2019/ui/DropList/index.js +0 -186
  499. package/dist/es2019/ui/Layer/index.js +0 -195
  500. package/dist/es2019/ui/Layer/internal/helpers.js +0 -62
  501. package/dist/es2019/ui/ToolbarButton/styles.js +0 -12
  502. package/dist/esm/plugins/analytics/types/avatar.js +0 -1
  503. package/dist/esm/plugins/analytics/types/config-panel-events.js +0 -1
  504. package/dist/esm/plugins/analytics/types/cut-copy-events.js +0 -1
  505. package/dist/esm/plugins/analytics/types/date-events.js +0 -1
  506. package/dist/esm/plugins/analytics/types/element-browser-events.js +0 -1
  507. package/dist/esm/plugins/analytics/types/find-replace-events.js +0 -1
  508. package/dist/esm/plugins/analytics/types/format-events.js +0 -16
  509. package/dist/esm/plugins/analytics/types/insert-events.js +0 -41
  510. package/dist/esm/plugins/analytics/types/list-events.js +0 -17
  511. package/dist/esm/plugins/analytics/types/paste-events.js +0 -46
  512. package/dist/esm/plugins/analytics/types/substitute-events.js +0 -16
  513. package/dist/esm/plugins/analytics/types/table-events.js +0 -34
  514. package/dist/esm/plugins/analytics/types/utils.js +0 -19
  515. package/dist/esm/ui/ColorPalette/Color/styles.js +0 -8
  516. package/dist/esm/ui/ColorPalette/Palettes/getColorMessage.js +0 -10
  517. package/dist/esm/ui/ColorPalette/styles.js +0 -7
  518. package/dist/esm/ui/DropList/index.js +0 -203
  519. package/dist/esm/ui/Layer/index.js +0 -228
  520. package/dist/esm/ui/Layer/internal/helpers.js +0 -62
  521. package/dist/esm/ui/ToolbarButton/styles.js +0 -12
  522. package/dist/types/plugins/analytics/types/avatar.d.ts +0 -5
  523. package/dist/types/plugins/analytics/types/config-panel-events.d.ts +0 -17
  524. package/dist/types/plugins/analytics/types/cut-copy-events.d.ts +0 -12
  525. package/dist/types/plugins/analytics/types/date-events.d.ts +0 -17
  526. package/dist/types/plugins/analytics/types/element-browser-events.d.ts +0 -11
  527. package/dist/types/plugins/analytics/types/find-replace-events.d.ts +0 -23
  528. package/dist/types/plugins/analytics/types/format-events.d.ts +0 -49
  529. package/dist/types/plugins/analytics/types/insert-events.d.ts +0 -128
  530. package/dist/types/plugins/analytics/types/list-events.d.ts +0 -52
  531. package/dist/types/plugins/analytics/types/paste-events.d.ts +0 -39
  532. package/dist/types/plugins/analytics/types/substitute-events.d.ts +0 -26
  533. package/dist/types/plugins/analytics/types/table-events.d.ts +0 -94
  534. package/dist/types/plugins/analytics/types/utils.d.ts +0 -45
  535. package/dist/types/ui/ColorPalette/Color/styles.d.ts +0 -2
  536. package/dist/types/ui/ColorPalette/Palettes/getColorMessage.d.ts +0 -2
  537. package/dist/types/ui/ColorPalette/styles.d.ts +0 -1
  538. package/dist/types/ui/DropList/index.d.ts +0 -22
  539. package/dist/types/ui/Layer/index.d.ts +0 -47
  540. package/dist/types/ui/Layer/internal/helpers.d.ts +0 -5
  541. package/dist/types/ui/ToolbarButton/styles.d.ts +0 -4
@@ -25,7 +25,7 @@ var _utils3 = require("../../utils");
25
25
 
26
26
  var _dom = require("../../utils/dom");
27
27
 
28
- var _analytics = require("../analytics");
28
+ var _analytics = require("@atlaskit/editor-common/analytics");
29
29
 
30
30
  var _commands = require("./commands");
31
31
 
@@ -41,8 +41,6 @@ var _utils4 = require("./utils");
41
41
 
42
42
  var _getAllowAddColumnCustomStep = require("./utils/get-allow-add-column-custom-step");
43
43
 
44
- var _featureFlagsContext = require("../feature-flags-context");
45
-
46
44
  var isFocusingCalendar = function isFocusingCalendar(event) {
47
45
  return event instanceof FocusEvent && event.relatedTarget instanceof HTMLElement && event.relatedTarget.getAttribute('aria-label') === 'calendar';
48
46
  };
@@ -250,86 +248,88 @@ var handleMouseLeave = function handleMouseLeave(view, event) {
250
248
 
251
249
  exports.handleMouseLeave = handleMouseLeave;
252
250
 
253
- var handleMouseMove = function handleMouseMove(view, event, tableCellOptimization, elementContentRects) {
254
- if (!(event.target instanceof HTMLElement)) {
255
- return false;
256
- }
251
+ var handleMouseMove = function handleMouseMove(getEditorFeatureFlags) {
252
+ return function (view, event, tableCellOptimization, elementContentRects) {
253
+ if (!(event.target instanceof HTMLElement)) {
254
+ return false;
255
+ }
257
256
 
258
- var element = event.target;
257
+ var element = event.target;
259
258
 
260
- if ((0, _utils4.isColumnControlsDecorations)(element)) {
261
- var state = view.state,
262
- dispatch = view.dispatch;
259
+ if ((0, _utils4.isColumnControlsDecorations)(element)) {
260
+ var state = view.state,
261
+ dispatch = view.dispatch;
263
262
 
264
- var _getPluginState3 = (0, _pluginFactory.getPluginState)(state),
265
- insertColumnButtonIndex = _getPluginState3.insertColumnButtonIndex;
263
+ var _getPluginState3 = (0, _pluginFactory.getPluginState)(state),
264
+ insertColumnButtonIndex = _getPluginState3.insertColumnButtonIndex;
266
265
 
267
- var _getColumnOrRowIndex9 = (0, _utils4.getColumnOrRowIndex)(element),
268
- _getColumnOrRowIndex10 = (0, _slicedToArray2.default)(_getColumnOrRowIndex9, 2),
269
- startIndex = _getColumnOrRowIndex10[0],
270
- endIndex = _getColumnOrRowIndex10[1];
266
+ var _getColumnOrRowIndex9 = (0, _utils4.getColumnOrRowIndex)(element),
267
+ _getColumnOrRowIndex10 = (0, _slicedToArray2.default)(_getColumnOrRowIndex9, 2),
268
+ startIndex = _getColumnOrRowIndex10[0],
269
+ endIndex = _getColumnOrRowIndex10[1];
271
270
 
272
- var positionColumn = (0, _utils4.getMousePositionHorizontalRelativeByElement)(event, tableCellOptimization, elementContentRects) === 'right' ? endIndex : startIndex;
271
+ var positionColumn = (0, _utils4.getMousePositionHorizontalRelativeByElement)(event, tableCellOptimization, elementContentRects) === 'right' ? endIndex : startIndex;
273
272
 
274
- if (positionColumn !== insertColumnButtonIndex) {
275
- return (0, _commands.showInsertColumnButton)(positionColumn)(state, dispatch);
273
+ if (positionColumn !== insertColumnButtonIndex) {
274
+ return (0, _commands.showInsertColumnButton)(positionColumn)(state, dispatch);
275
+ }
276
276
  }
277
- }
278
277
 
279
- if ((0, _utils4.isRowControlsButton)(element)) {
280
- var _state3 = view.state,
281
- _dispatch4 = view.dispatch;
278
+ if ((0, _utils4.isRowControlsButton)(element)) {
279
+ var _state3 = view.state,
280
+ _dispatch4 = view.dispatch;
282
281
 
283
- var _getPluginState4 = (0, _pluginFactory.getPluginState)(_state3),
284
- insertRowButtonIndex = _getPluginState4.insertRowButtonIndex;
282
+ var _getPluginState4 = (0, _pluginFactory.getPluginState)(_state3),
283
+ insertRowButtonIndex = _getPluginState4.insertRowButtonIndex;
285
284
 
286
- var _getColumnOrRowIndex11 = (0, _utils4.getColumnOrRowIndex)(element),
287
- _getColumnOrRowIndex12 = (0, _slicedToArray2.default)(_getColumnOrRowIndex11, 2),
288
- _startIndex3 = _getColumnOrRowIndex12[0],
289
- _endIndex2 = _getColumnOrRowIndex12[1];
285
+ var _getColumnOrRowIndex11 = (0, _utils4.getColumnOrRowIndex)(element),
286
+ _getColumnOrRowIndex12 = (0, _slicedToArray2.default)(_getColumnOrRowIndex11, 2),
287
+ _startIndex3 = _getColumnOrRowIndex12[0],
288
+ _endIndex2 = _getColumnOrRowIndex12[1];
290
289
 
291
- var positionRow = (0, _utils4.getMousePositionVerticalRelativeByElement)(event) === 'bottom' ? _endIndex2 : _startIndex3;
290
+ var positionRow = (0, _utils4.getMousePositionVerticalRelativeByElement)(event) === 'bottom' ? _endIndex2 : _startIndex3;
292
291
 
293
- if (positionRow !== insertRowButtonIndex) {
294
- return (0, _commands.showInsertRowButton)(positionRow)(_state3, _dispatch4);
292
+ if (positionRow !== insertRowButtonIndex) {
293
+ return (0, _commands.showInsertRowButton)(positionRow)(_state3, _dispatch4);
294
+ }
295
295
  }
296
- }
297
296
 
298
- var _ref = (0, _featureFlagsContext.getFeatureFlags)(view.state) || {},
299
- mouseMoveOptimization = _ref.mouseMoveOptimization; // we only want to allow mouseMoveOptimisation when tableCellOptimization is enabled
300
- // because it relies on tableCell node view that is added via tableCellOptimization
297
+ var _getEditorFeatureFlag = getEditorFeatureFlags(),
298
+ mouseMoveOptimization = _getEditorFeatureFlag.mouseMoveOptimization; // we only want to allow mouseMoveOptimisation when tableCellOptimization is enabled
299
+ // because it relies on tableCell node view that is added via tableCellOptimization
301
300
 
302
301
 
303
- var useMouseMoveOptimisation = tableCellOptimization && mouseMoveOptimization;
302
+ var useMouseMoveOptimisation = tableCellOptimization && mouseMoveOptimization;
304
303
 
305
- if (!(0, _utils4.isResizeHandleDecoration)(element) && (0, _utils4.isCell)(element)) {
306
- var positionColumn = (0, _utils4.getMousePositionHorizontalRelativeByElement)(event, useMouseMoveOptimisation, elementContentRects, _types.RESIZE_HANDLE_AREA_DECORATION_GAP);
304
+ if (!(0, _utils4.isResizeHandleDecoration)(element) && (0, _utils4.isCell)(element)) {
305
+ var positionColumn = (0, _utils4.getMousePositionHorizontalRelativeByElement)(event, useMouseMoveOptimisation, elementContentRects, _types.RESIZE_HANDLE_AREA_DECORATION_GAP);
307
306
 
308
- if (positionColumn !== null) {
309
- var _state4 = view.state,
310
- _dispatch5 = view.dispatch;
307
+ if (positionColumn !== null) {
308
+ var _state4 = view.state,
309
+ _dispatch5 = view.dispatch;
311
310
 
312
- var _getPluginState5 = (0, _pluginFactory.getPluginState)(_state4),
313
- resizeHandleColumnIndex = _getPluginState5.resizeHandleColumnIndex;
311
+ var _getPluginState5 = (0, _pluginFactory.getPluginState)(_state4),
312
+ resizeHandleColumnIndex = _getPluginState5.resizeHandleColumnIndex;
314
313
 
315
- var tableCell = (0, _dom.closestElement)(element, 'td, th');
316
- var cellStartPosition = view.posAtDOM(tableCell, 0);
317
- var rect = (0, _utils.findCellRectClosestToPos)(_state4.doc.resolve(cellStartPosition));
314
+ var tableCell = (0, _dom.closestElement)(element, 'td, th');
315
+ var cellStartPosition = view.posAtDOM(tableCell, 0);
316
+ var rect = (0, _utils.findCellRectClosestToPos)(_state4.doc.resolve(cellStartPosition));
318
317
 
319
- if (rect) {
320
- var columnEndIndexTarget = positionColumn === 'left' ? rect.left : rect.right;
318
+ if (rect) {
319
+ var columnEndIndexTarget = positionColumn === 'left' ? rect.left : rect.right;
321
320
 
322
- if (columnEndIndexTarget !== resizeHandleColumnIndex || !(0, _utils4.hasResizeHandler)({
323
- target: element,
324
- columnEndIndexTarget: columnEndIndexTarget
325
- })) {
326
- return (0, _commands.addResizeHandleDecorations)(columnEndIndexTarget)(_state4, _dispatch5);
321
+ if (columnEndIndexTarget !== resizeHandleColumnIndex || !(0, _utils4.hasResizeHandler)({
322
+ target: element,
323
+ columnEndIndexTarget: columnEndIndexTarget
324
+ })) {
325
+ return (0, _commands.addResizeHandleDecorations)(columnEndIndexTarget)(_state4, _dispatch5);
326
+ }
327
327
  }
328
328
  }
329
329
  }
330
- }
331
330
 
332
- return false;
331
+ return false;
332
+ };
333
333
  };
334
334
 
335
335
  exports.handleMouseMove = handleMouseMove;
@@ -359,7 +359,7 @@ function handleTripleClick(view, pos) {
359
359
  return false;
360
360
  }
361
361
 
362
- var handleCut = function handleCut(oldTr, oldState, newState) {
362
+ var handleCut = function handleCut(oldTr, oldState, newState, editorAnalyticsAPI) {
363
363
  var oldSelection = oldState.tr.selection;
364
364
  var tr = newState.tr;
365
365
 
@@ -381,7 +381,7 @@ var handleCut = function handleCut(oldTr, oldState, newState) {
381
381
  totalColumnCount = _getSelectedCellInfo.totalColumnCount; // Reassigning to make it more obvious and consistent
382
382
 
383
383
 
384
- tr = (0, _analytics.addAnalytics)(newState, tr, {
384
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 ? void 0 : editorAnalyticsAPI.attachAnalyticsEvent({
385
385
  action: _analytics.TABLE_ACTION.CUT,
386
386
  actionSubject: _analytics.ACTION_SUBJECT.TABLE,
387
387
  actionSubjectId: null,
@@ -393,7 +393,7 @@ var handleCut = function handleCut(oldTr, oldState, newState) {
393
393
  totalColumnCount: totalColumnCount
394
394
  },
395
395
  eventType: _analytics.EVENT_TYPE.TRACK
396
- }); // Need this check again since we are overriding the tr in previous statement
396
+ })(tr); // Need this check again since we are overriding the tr in previous statement
397
397
 
398
398
  if (tr.selection instanceof _cellSelection.CellSelection) {
399
399
  var isTableSelected = tr.selection.isRowSelection() && tr.selection.isColSelection();
@@ -21,9 +21,9 @@ var _keymaps = require("../../keymaps");
21
21
 
22
22
  var _WithPluginState = _interopRequireDefault(require("../../ui/WithPluginState"));
23
23
 
24
- var _analytics = require("../analytics");
24
+ var _analytics = require("@atlaskit/editor-common/analytics");
25
25
 
26
- var _messages = require("../insert-block/ui/ToolbarInsertBlock/messages");
26
+ var _messages = require("@atlaskit/editor-common/messages");
27
27
 
28
28
  var _assets = require("../quick-insert/assets");
29
29
 
@@ -65,6 +65,18 @@ var _utils3 = require("./utils");
65
65
 
66
66
  var _ErrorBoundary = require("../../ui/ErrorBoundary");
67
67
 
68
+ var defaultGetEditorContainerWidth = function defaultGetEditorContainerWidth() {
69
+ var _document, _document$body;
70
+
71
+ return {
72
+ width: ((_document = document) === null || _document === void 0 ? void 0 : (_document$body = _document.body) === null || _document$body === void 0 ? void 0 : _document$body.offsetWidth) || 500
73
+ };
74
+ };
75
+
76
+ var defaultGetEditorFeatureFlags = function defaultGetEditorFeatureFlags() {
77
+ return {};
78
+ };
79
+
68
80
  var tablesPlugin = function tablesPlugin(options) {
69
81
  return {
70
82
  name: 'table',
@@ -96,9 +108,11 @@ var tablesPlugin = function tablesPlugin(options) {
96
108
  fullWidthEnabled = _ref2.fullWidthEnabled,
97
109
  wasFullWidthEnabled = _ref2.wasFullWidthEnabled,
98
110
  breakoutEnabled = _ref2.breakoutEnabled,
99
- tableOptions = _ref2.tableOptions;
111
+ tableOptions = _ref2.tableOptions,
112
+ editorAnalyticsAPI = _ref2.editorAnalyticsAPI,
113
+ getEditorFeatureFlags = _ref2.getEditorFeatureFlags;
100
114
 
101
- return (0, _main.createPlugin)(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, (0, _createPluginConfig.pluginConfig)(tableOptions), breakoutEnabled, fullWidthEnabled, wasFullWidthEnabled);
115
+ return (0, _main.createPlugin)(dispatchAnalyticsEvent, dispatch, portalProviderAPI, eventDispatcher, (0, _createPluginConfig.pluginConfig)(tableOptions), (options === null || options === void 0 ? void 0 : options.getEditorContainerWidth) || defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, breakoutEnabled, fullWidthEnabled, wasFullWidthEnabled, editorAnalyticsAPI);
102
116
  }
103
117
  }, {
104
118
  name: 'tablePMColResizing',
@@ -107,14 +121,17 @@ var tablesPlugin = function tablesPlugin(options) {
107
121
 
108
122
  var _ref4 = options || {},
109
123
  fullWidthEnabled = _ref4.fullWidthEnabled,
110
- tableOptions = _ref4.tableOptions;
124
+ tableOptions = _ref4.tableOptions,
125
+ editorAnalyticsAPI = _ref4.editorAnalyticsAPI,
126
+ getEditorFeatureFlags = _ref4.getEditorFeatureFlags,
127
+ getEditorContainerWidth = _ref4.getEditorContainerWidth;
111
128
 
112
129
  var _pluginConfig = (0, _createPluginConfig.pluginConfig)(tableOptions),
113
130
  allowColumnResizing = _pluginConfig.allowColumnResizing;
114
131
 
115
132
  return allowColumnResizing ? (0, _tableResizing.createPlugin)(dispatch, {
116
133
  lastColumnResizable: !fullWidthEnabled
117
- }) : undefined;
134
+ }, getEditorContainerWidth || defaultGetEditorContainerWidth, getEditorFeatureFlags || defaultGetEditorFeatureFlags, editorAnalyticsAPI) : undefined;
118
135
  }
119
136
  }, {
120
137
  name: 'tableEditing',
@@ -126,12 +143,12 @@ var tablesPlugin = function tablesPlugin(options) {
126
143
  {
127
144
  name: 'tableKeymap',
128
145
  plugin: function plugin() {
129
- return (0, _keymap.keymapPlugin)();
146
+ return (0, _keymap.keymapPlugin)((options === null || options === void 0 ? void 0 : options.getEditorContainerWidth) || defaultGetEditorContainerWidth, options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI);
130
147
  }
131
148
  }, {
132
149
  name: 'tableSelectionKeymap',
133
150
  plugin: function plugin() {
134
- return (0, _tableSelectionKeymap.tableSelectionKeymapPlugin)();
151
+ return (0, _tableSelectionKeymap.tableSelectionKeymapPlugin)(options === null || options === void 0 ? void 0 : options.editorSelectionAPI);
135
152
  }
136
153
  }, {
137
154
  name: 'tableEditing',
@@ -143,7 +160,9 @@ var tablesPlugin = function tablesPlugin(options) {
143
160
  plugin: function plugin(_ref5) {
144
161
  var dispatch = _ref5.dispatch,
145
162
  eventDispatcher = _ref5.eventDispatcher;
146
- return options && options.tableOptions.stickyHeaders ? (0, _stickyHeaders.createPlugin)(dispatch, eventDispatcher) : undefined;
163
+ return options && options.tableOptions.stickyHeaders ? (0, _stickyHeaders.createPlugin)(dispatch, eventDispatcher, function () {
164
+ return [];
165
+ }, (options === null || options === void 0 ? void 0 : options.getEditorFeatureFlags) || defaultGetEditorFeatureFlags) : undefined;
147
166
  }
148
167
  }, {
149
168
  name: 'tableLocalId',
@@ -239,14 +258,18 @@ var tablesPlugin = function tablesPlugin(options) {
239
258
  boundariesElement: popupsBoundariesElement,
240
259
  scrollableElement: popupsScrollableElement,
241
260
  hasStickyHeaders: stickyHeader && stickyHeader.sticky,
242
- dispatchAnalyticsEvent: dispatchAnalyticsEvent
261
+ dispatchAnalyticsEvent: dispatchAnalyticsEvent,
262
+ editorAnalyticsAPI: options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI,
263
+ getEditorContainerWidth: (options === null || options === void 0 ? void 0 : options.getEditorContainerWidth) || defaultGetEditorContainerWidth
243
264
  }), /*#__PURE__*/_react.default.createElement(_FloatingContextualMenu.default, {
244
265
  editorView: editorView,
245
266
  mountPoint: popupsMountPoint,
246
267
  boundariesElement: popupsBoundariesElement,
247
268
  targetCellPosition: targetCellPosition,
248
269
  isOpen: Boolean(isContextualMenuOpen),
249
- pluginConfig: pluginConfig
270
+ pluginConfig: pluginConfig,
271
+ editorAnalyticsAPI: options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI,
272
+ getEditorContainerWidth: (options === null || options === void 0 ? void 0 : options.getEditorContainerWidth) || defaultGetEditorContainerWidth
250
273
  }), allowControls && /*#__PURE__*/_react.default.createElement(_FloatingDeleteButton.default, {
251
274
  editorView: editorView,
252
275
  selection: editorView.state.selection,
@@ -255,7 +278,8 @@ var tablesPlugin = function tablesPlugin(options) {
255
278
  boundariesElement: popupsBoundariesElement,
256
279
  scrollableElement: popupsScrollableElement,
257
280
  stickyHeaders: stickyHeader,
258
- isNumberColumnEnabled: tableNode && tableNode.attrs.isNumberColumnEnabled
281
+ isNumberColumnEnabled: tableNode && tableNode.attrs.isNumberColumnEnabled,
282
+ editorAnalyticsAPI: options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI
259
283
  }), (0, _utils3.isLayoutSupported)(state) && options && options.breakoutEnabled && /*#__PURE__*/_react.default.createElement(_LayoutButton.default, {
260
284
  editorView: editorView,
261
285
  mountPoint: popupsMountPoint,
@@ -264,18 +288,35 @@ var tablesPlugin = function tablesPlugin(options) {
264
288
  targetRef: tableWrapperTarget,
265
289
  layout: layout,
266
290
  isResizing: !!resizingPluginState && !!resizingPluginState.dragging,
267
- stickyHeader: stickyHeader
291
+ stickyHeader: stickyHeader,
292
+ editorAnalyticsAPI: options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI
268
293
  }));
269
294
  }
270
295
  }));
271
296
  },
272
297
  pluginsOptions: {
273
- quickInsert: function quickInsert(_ref10) {
274
- var formatMessage = _ref10.formatMessage;
298
+ // TODO: ED-14676 This is not the final API design
299
+ // For now, we are using this on (insert-api/api.ts) but we may create a proper place for it
300
+ createNodeHandler: function createNodeHandler(_ref10) {
301
+ var nodeName = _ref10.nodeName,
302
+ schema = _ref10.schema;
303
+
304
+ // An EditorPlugin may manage more than one node.
305
+ if (nodeName !== 'table') {
306
+ return null;
307
+ }
308
+
309
+ var table = (0, _utils2.createTable)({
310
+ schema: schema
311
+ });
312
+ return table;
313
+ },
314
+ quickInsert: function quickInsert(_ref11) {
315
+ var formatMessage = _ref11.formatMessage;
275
316
  return [{
276
317
  id: 'table',
277
- title: formatMessage(_messages.messages.table),
278
- description: formatMessage(_messages.messages.tableDescription),
318
+ title: formatMessage(_messages.toolbarInsertBlockMessages.table),
319
+ description: formatMessage(_messages.toolbarInsertBlockMessages.tableDescription),
279
320
  keywords: ['cell', 'table'],
280
321
  priority: 600,
281
322
  keyshortcut: (0, _keymaps.tooltip)(_keymaps.toggleTable),
@@ -283,10 +324,12 @@ var tablesPlugin = function tablesPlugin(options) {
283
324
  return /*#__PURE__*/_react.default.createElement(_assets.IconTable, null);
284
325
  },
285
326
  action: function action(insert, state) {
327
+ var _options$editorAnalyt;
328
+
286
329
  var tr = insert((0, _utils2.createTable)({
287
330
  schema: state.schema
288
331
  }));
289
- return (0, _analytics.addAnalytics)(state, tr, {
332
+ options === null || options === void 0 ? void 0 : (_options$editorAnalyt = options.editorAnalyticsAPI) === null || _options$editorAnalyt === void 0 ? void 0 : _options$editorAnalyt.attachAnalyticsEvent({
290
333
  action: _analytics.ACTION.INSERTED,
291
334
  actionSubject: _analytics.ACTION_SUBJECT.DOCUMENT,
292
335
  actionSubjectId: _analytics.ACTION_SUBJECT_ID.TABLE,
@@ -294,11 +337,12 @@ var tablesPlugin = function tablesPlugin(options) {
294
337
  inputMethod: _analytics.INPUT_METHOD.QUICK_INSERT
295
338
  },
296
339
  eventType: _analytics.EVENT_TYPE.TRACK
297
- });
340
+ })(tr);
341
+ return tr;
298
342
  }
299
343
  }];
300
344
  },
301
- floatingToolbar: (0, _toolbar.getToolbarConfig)((0, _createPluginConfig.pluginConfig)(options === null || options === void 0 ? void 0 : options.tableOptions))
345
+ floatingToolbar: (0, _toolbar.getToolbarConfig)((options === null || options === void 0 ? void 0 : options.getEditorContainerWidth) || defaultGetEditorContainerWidth, options === null || options === void 0 ? void 0 : options.editorAnalyticsAPI)((0, _createPluginConfig.pluginConfig)(options === null || options === void 0 ? void 0 : options.tableOptions))
302
346
  }
303
347
  };
304
348
  };
@@ -37,7 +37,7 @@ var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
37
37
 
38
38
  var _utils3 = require("../../../utils");
39
39
 
40
- var _nodeWidth = require("../../../utils/node-width");
40
+ var _nodeWidth = require("@atlaskit/editor-common/node-width");
41
41
 
42
42
  var _dom = require("../../../utils/dom");
43
43
 
@@ -61,8 +61,6 @@ var _utils5 = require("../utils");
61
61
 
62
62
  var _updateOverflowShadows = require("./update-overflow-shadows");
63
63
 
64
- var _featureFlagsContext = require("../../feature-flags-context");
65
-
66
64
  var _memoizeOne = _interopRequireDefault(require("memoize-one"));
67
65
 
68
66
  var _OverflowShadowsObserver = require("./OverflowShadowsObserver");
@@ -112,8 +110,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
112
110
  _this.setState((0, _defineProperty3.default)({}, shadowKey, value));
113
111
  });
114
112
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "onStickyState", function (state) {
115
- var _ref = (0, _featureFlagsContext.getFeatureFlags)(_this.props.view.state) || {},
116
- tableOverflowShadowsOptimization = _ref.tableOverflowShadowsOptimization;
113
+ var _this$props$getEditor = _this.props.getEditorFeatureFlags(),
114
+ tableOverflowShadowsOptimization = _this$props$getEditor.tableOverflowShadowsOptimization;
117
115
 
118
116
  var pos = _this.props.getPos();
119
117
 
@@ -165,8 +163,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
165
163
  }
166
164
  }
167
165
 
168
- var _ref2 = (0, _featureFlagsContext.getFeatureFlags)(_this.props.view.state) || {},
169
- tableOverflowShadowsOptimization = _ref2.tableOverflowShadowsOptimization;
166
+ var _this$props$getEditor2 = _this.props.getEditorFeatureFlags(),
167
+ tableOverflowShadowsOptimization = _this$props$getEditor2.tableOverflowShadowsOptimization;
170
168
 
171
169
  if (!tableOverflowShadowsOptimization) {
172
170
  _this.updateShadows();
@@ -338,7 +336,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
338
336
  var _options = props.options,
339
337
  _containerWidth = props.containerWidth,
340
338
  _getNode = props.getNode,
341
- _view = props.view;
339
+ getEditorFeatureFlags = props.getEditorFeatureFlags;
342
340
  _this.node = _getNode();
343
341
  _this.containerWidth = _containerWidth; // store table size using previous full-width mode so can detect if it has changed
344
342
 
@@ -356,8 +354,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
356
354
  });
357
355
  }
358
356
 
359
- var _ref3 = (0, _featureFlagsContext.getFeatureFlags)(_view.state) || {},
360
- initialRenderOptimization = _ref3.initialRenderOptimization;
357
+ var _getEditorFeatureFlag = getEditorFeatureFlags(),
358
+ initialRenderOptimization = _getEditorFeatureFlag.initialRenderOptimization;
361
359
 
362
360
  if (!initialRenderOptimization) {
363
361
  // @see ED-7945
@@ -427,13 +425,12 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
427
425
  key: "componentDidUpdate",
428
426
  value: function componentDidUpdate(prevProps) {
429
427
  var _this$props8 = this.props,
430
- view = _this$props8.view,
431
428
  getNode = _this$props8.getNode,
432
429
  isMediaFullscreen = _this$props8.isMediaFullscreen,
433
430
  allowColumnResizing = _this$props8.allowColumnResizing;
434
431
 
435
- var _ref4 = (0, _featureFlagsContext.getFeatureFlags)(view.state) || {},
436
- tableOverflowShadowsOptimization = _ref4.tableOverflowShadowsOptimization;
432
+ var _this$props$getEditor3 = this.props.getEditorFeatureFlags(),
433
+ tableOverflowShadowsOptimization = _this$props$getEditor3.tableOverflowShadowsOptimization;
437
434
 
438
435
  if (!tableOverflowShadowsOptimization) {
439
436
  this.updateShadows();
@@ -464,9 +461,9 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
464
461
  var previousTable = this.node;
465
462
 
466
463
  if ((0, _utils5.tablesHaveDifferentColumnWidths)(currentTable, previousTable) || (0, _utils5.tablesHaveDifferentNoOfColumns)(currentTable, previousTable)) {
467
- var _view2 = this.props.view;
464
+ var view = this.props.view;
468
465
  (0, _utils4.insertColgroupFromNode)(this.table, currentTable);
469
- (0, _dom2.updateControls)(_view2.state);
466
+ (0, _dom2.updateControls)(this.props.getEditorFeatureFlags)(view.state);
470
467
  }
471
468
 
472
469
  this.handleTableResizingDebounced();
@@ -482,7 +479,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
482
479
  if (this.wrapper && parent) {
483
480
  var rightShadows = parent.querySelectorAll(".".concat(_types.TableCssClassName.TABLE_RIGHT_SHADOW));
484
481
  var leftShadows = parent.querySelectorAll(".".concat(_types.TableCssClassName.TABLE_LEFT_SHADOW));
485
- (0, _updateOverflowShadows.updateOverflowShadows)(this.props.view.state, this.wrapper, this.table, rightShadows, leftShadows);
482
+ (0, _updateOverflowShadows.updateOverflowShadows)(this.props.getEditorFeatureFlags)(this.props.view.state, this.wrapper, this.table, rightShadows, leftShadows);
486
483
  }
487
484
  }
488
485
  }, {
@@ -513,11 +510,11 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
513
510
  isInDanger = _getPluginState.isInDanger,
514
511
  hoveredRows = _getPluginState.hoveredRows;
515
512
 
516
- var _ref5 = (0, _featureFlagsContext.getFeatureFlags)(view.state) || {},
517
- stickyHeadersOptimization = _ref5.stickyHeadersOptimization,
518
- initialRenderOptimization = _ref5.initialRenderOptimization,
519
- tableRenderOptimization = _ref5.tableRenderOptimization,
520
- tableOverflowShadowsOptimization = _ref5.tableOverflowShadowsOptimization;
513
+ var _this$props$getEditor4 = this.props.getEditorFeatureFlags(),
514
+ stickyHeadersOptimization = _this$props$getEditor4.stickyHeadersOptimization,
515
+ initialRenderOptimization = _this$props$getEditor4.initialRenderOptimization,
516
+ tableRenderOptimization = _this$props$getEditor4.tableRenderOptimization,
517
+ tableOverflowShadowsOptimization = _this$props$getEditor4.tableOverflowShadowsOptimization;
521
518
 
522
519
  var tableRef = this.table || undefined;
523
520
  var isResizing = !!tableResizingPluginState && !!tableResizingPluginState.dragging;
@@ -544,7 +541,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
544
541
  selection: view.state.selection,
545
542
  tableHeight: tableHeight,
546
543
  headerRowHeight: headerRow ? headerRow.offsetHeight : undefined,
547
- stickyHeader: this.state.stickyHeader
544
+ stickyHeader: this.state.stickyHeader,
545
+ getEditorFeatureFlags: this.props.getEditorFeatureFlags
548
546
  }));
549
547
 
550
548
  var shadowPadding = allowControls && (!isLoading || initialRenderOptimization) && tableActive ? -_editorSharedStyles.akEditorTableToolbarSize : _styles.tableMarginSides;
@@ -37,8 +37,6 @@ var _ReactNodeView2 = _interopRequireDefault(require("../../../nodeviews/ReactNo
37
37
 
38
38
  var _WithPluginState = _interopRequireDefault(require("../../../ui/WithPluginState"));
39
39
 
40
- var _width = require("../../width");
41
-
42
40
  var _createPluginConfig = require("../create-plugin-config");
43
41
 
44
42
  var _pluginFactory = require("../pm-plugins/plugin-factory");
@@ -53,8 +51,6 @@ var _tableMap = require("@atlaskit/editor-tables/table-map");
53
51
 
54
52
  var _TableComponent = _interopRequireDefault(require("./TableComponent"));
55
53
 
56
- var _featureFlagsContext = require("../../feature-flags-context");
57
-
58
54
  var _extensibility = require("../../../extensibility");
59
55
 
60
56
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
@@ -130,10 +126,19 @@ var TableView = /*#__PURE__*/function (_ReactNodeView) {
130
126
  value: function render(props, forwardRef) {
131
127
  var _this3 = this;
132
128
 
129
+ // TODO: ED-15663
130
+ // Please, do not copy or use this kind of code below
131
+ // @ts-ignore
132
+ var fakePluginKey = {
133
+ key: 'widthPlugin$',
134
+ getState: function getState(state) {
135
+ return state['widthPlugin$'];
136
+ }
137
+ };
133
138
  return /*#__PURE__*/_react.default.createElement(_WithPluginState.default, {
134
139
  plugins: {
135
- containerWidth: _width.pluginKey,
136
140
  pluginState: _pluginKey2.pluginKey,
141
+ widthPlugin: fakePluginKey,
137
142
  tableResizingPluginState: _tableResizing.pluginKey,
138
143
  mediaState: _pluginKey.stateKey
139
144
  },
@@ -141,9 +146,9 @@ var TableView = /*#__PURE__*/function (_ReactNodeView) {
141
146
  render: function render(pluginStates) {
142
147
  var tableResizingPluginState = pluginStates.tableResizingPluginState,
143
148
  pluginState = pluginStates.pluginState,
144
- containerWidth = pluginStates.containerWidth,
145
149
  mediaState = pluginStates.mediaState;
146
150
  var tableActive = props.getPos() === pluginState.tablePos;
151
+ var containerWidth = props.getEditorContainerWidth();
147
152
  return /*#__PURE__*/_react.default.createElement(_TableComponent.default, {
148
153
  view: props.view,
149
154
  allowColumnResizing: props.allowColumnResizing,
@@ -159,7 +164,8 @@ var TableView = /*#__PURE__*/function (_ReactNodeView) {
159
164
  tableResizingPluginState: tableResizingPluginState,
160
165
  getNode: _this3.getNode,
161
166
  containerWidth: containerWidth,
162
- contentDOM: forwardRef
167
+ contentDOM: forwardRef,
168
+ getEditorFeatureFlags: props.getEditorFeatureFlags
163
169
  });
164
170
  }
165
171
  });
@@ -229,15 +235,15 @@ var TableView = /*#__PURE__*/function (_ReactNodeView) {
229
235
 
230
236
  exports.default = TableView;
231
237
 
232
- var createTableView = function createTableView(node, view, getPos, portalProviderAPI, eventDispatcher, options) {
238
+ var createTableView = function createTableView(node, view, getPos, portalProviderAPI, eventDispatcher, options, getEditorContainerWidth, getEditorFeatureFlags) {
233
239
  var _getPluginState2 = (0, _pluginFactory.getPluginState)(view.state),
234
240
  pluginConfig = _getPluginState2.pluginConfig;
235
241
 
236
242
  var _getPluginConfig = (0, _createPluginConfig.pluginConfig)(pluginConfig),
237
243
  allowColumnResizing = _getPluginConfig.allowColumnResizing;
238
244
 
239
- var _ref = (0, _featureFlagsContext.getFeatureFlags)(view.state) || {},
240
- tableRenderOptimization = _ref.tableRenderOptimization;
245
+ var _getEditorFeatureFlag = getEditorFeatureFlags(),
246
+ tableRenderOptimization = _getEditorFeatureFlag.tableRenderOptimization;
241
247
 
242
248
  return new TableView({
243
249
  node: node,
@@ -247,7 +253,9 @@ var createTableView = function createTableView(node, view, getPos, portalProvide
247
253
  eventDispatcher: eventDispatcher,
248
254
  getPos: getPos,
249
255
  options: options,
250
- tableRenderOptimization: tableRenderOptimization
256
+ tableRenderOptimization: tableRenderOptimization,
257
+ getEditorContainerWidth: getEditorContainerWidth,
258
+ getEditorFeatureFlags: getEditorFeatureFlags
251
259
  }).init();
252
260
  };
253
261
 
@@ -19,10 +19,8 @@ var _prosemirrorModel = require("prosemirror-model");
19
19
 
20
20
  var _adfSchema = require("@atlaskit/adf-schema");
21
21
 
22
- var _featureFlagsContext = require("../../feature-flags-context");
23
-
24
22
  var TableCellNodeView = /*#__PURE__*/function () {
25
- function TableCellNodeView(node, view, getPos, observer) {
23
+ function TableCellNodeView(node, view, getPos, getEditorFeatureFlags, observer) {
26
24
  (0, _classCallCheck2.default)(this, TableCellNodeView);
27
25
  this.view = view;
28
26
  this.node = node;
@@ -35,8 +33,8 @@ var TableCellNodeView = /*#__PURE__*/function () {
35
33
  this.dom = dom;
36
34
  this.contentDOM = contentDOM;
37
35
 
38
- var _ref = (0, _featureFlagsContext.getFeatureFlags)(view.state) || {},
39
- mouseMoveOptimization = _ref.mouseMoveOptimization;
36
+ var _getEditorFeatureFlag = getEditorFeatureFlags(),
37
+ mouseMoveOptimization = _getEditorFeatureFlag.mouseMoveOptimization;
40
38
 
41
39
  if (mouseMoveOptimization && observer) {
42
40
  this.contentDOM.id = (0, _uuid.default)();
@@ -72,10 +70,10 @@ var TableCellNodeView = /*#__PURE__*/function () {
72
70
  } // added + changed attributes
73
71
 
74
72
 
75
- var addedAttrs = Object.entries(nextAttrs).filter(function (_ref2) {
76
- var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
77
- key = _ref3[0],
78
- value = _ref3[1];
73
+ var addedAttrs = Object.entries(nextAttrs).filter(function (_ref) {
74
+ var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
75
+ key = _ref2[0],
76
+ value = _ref2[1];
79
77
 
80
78
  return attrs[key] !== value;
81
79
  });
@@ -84,10 +82,10 @@ var TableCellNodeView = /*#__PURE__*/function () {
84
82
  });
85
83
 
86
84
  if (addedAttrs.length || removedAttrs.length) {
87
- addedAttrs.forEach(function (_ref4) {
88
- var _ref5 = (0, _slicedToArray2.default)(_ref4, 2),
89
- key = _ref5[0],
90
- value = _ref5[1];
85
+ addedAttrs.forEach(function (_ref3) {
86
+ var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
87
+ key = _ref4[0],
88
+ value = _ref4[1];
91
89
 
92
90
  return _this.dom.setAttribute(key, value || '');
93
91
  });