@atlaskit/editor-core 172.1.2 → 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 (538) hide show
  1. package/CHANGELOG.md +24 -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/paste/handlers.js +19 -15
  35. package/dist/cjs/plugins/paste/util/index.js +30 -1
  36. package/dist/cjs/plugins/selection/gap-cursor/selection.js +23 -188
  37. package/dist/cjs/plugins/selection/gap-cursor/utils/is-ignored.js +7 -8
  38. package/dist/cjs/plugins/selection/gap-cursor/utils/is-valid-target-node.js +7 -8
  39. package/dist/cjs/plugins/selection/gap-cursor/utils.js +6 -6
  40. package/dist/cjs/plugins/selection/gap-cursor-selection.js +1 -1
  41. package/dist/cjs/plugins/selection/types.js +9 -11
  42. package/dist/cjs/plugins/selection/utils.js +2 -2
  43. package/dist/cjs/plugins/table/commands/go-to-next-cell.js +40 -38
  44. package/dist/cjs/plugins/table/commands/insert.js +57 -49
  45. package/dist/cjs/plugins/table/commands/selection.js +302 -218
  46. package/dist/cjs/plugins/table/commands-with-analytics.js +241 -219
  47. package/dist/cjs/plugins/table/event-handlers.js +60 -60
  48. package/dist/cjs/plugins/table/index.js +64 -20
  49. package/dist/cjs/plugins/table/nodeviews/TableComponent.js +20 -22
  50. package/dist/cjs/plugins/table/nodeviews/table.js +19 -11
  51. package/dist/cjs/plugins/table/nodeviews/tableCell.js +11 -13
  52. package/dist/cjs/plugins/table/nodeviews/update-overflow-shadows.js +25 -25
  53. package/dist/cjs/plugins/table/pm-plugins/keymap.js +15 -13
  54. package/dist/cjs/plugins/table/pm-plugins/main.js +8 -8
  55. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -8
  56. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -1
  57. package/dist/cjs/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -10
  58. package/dist/cjs/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  59. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/dom.js +30 -28
  60. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -7
  61. package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  62. package/dist/cjs/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  63. package/dist/cjs/plugins/table/toolbar.js +74 -72
  64. package/dist/cjs/plugins/table/transforms/column-width.js +41 -38
  65. package/dist/cjs/plugins/table/transforms/replace-table.js +4 -4
  66. package/dist/cjs/plugins/table/ui/FloatingContextualButton/index.js +2 -4
  67. package/dist/cjs/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +25 -21
  68. package/dist/cjs/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  69. package/dist/cjs/plugins/table/ui/FloatingDeleteButton/index.js +7 -4
  70. package/dist/cjs/plugins/table/ui/FloatingInsertButton/index.js +12 -11
  71. package/dist/cjs/plugins/table/ui/LayoutButton/index.js +2 -2
  72. package/dist/cjs/plugins/table/ui/TableFloatingControls/index.js +4 -6
  73. package/dist/cjs/plugins/table/ui/common-styles.js +3 -3
  74. package/dist/cjs/plugins/table/utils/analytics.js +26 -1
  75. package/dist/cjs/plugins/table/utils/index.js +0 -6
  76. package/dist/cjs/selection-api/api.js +34 -0
  77. package/dist/cjs/types/browser.js +1 -2
  78. package/dist/cjs/ui/ColorPalette/Color/index.js +2 -106
  79. package/dist/cjs/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +2 -21
  80. package/dist/cjs/ui/ColorPalette/Palettes/common.js +7 -25
  81. package/dist/cjs/ui/ColorPalette/Palettes/paletteMessages.js +2 -114
  82. package/dist/cjs/ui/ColorPalette/Palettes/panelBackgroundPalette.js +12 -152
  83. package/dist/cjs/ui/ColorPalette/Palettes/statusColorPalette.js +13 -61
  84. package/dist/cjs/ui/ColorPalette/Palettes/textColorPalette.js +12 -34
  85. package/dist/cjs/ui/ColorPalette/index.js +2 -76
  86. package/dist/cjs/ui/Dropdown/index.js +3 -119
  87. package/dist/cjs/ui/DropdownMenu/index.js +3 -286
  88. package/dist/cjs/ui/Toolbar/types.js +19 -33
  89. package/dist/cjs/ui/ToolbarButton/index.js +8 -120
  90. package/dist/cjs/ui/WithPluginState/index.js +1 -3
  91. package/dist/cjs/ui/styles.js +35 -27
  92. package/dist/cjs/ui/with-outer-listeners.js +4 -152
  93. package/dist/cjs/utils/dom.js +46 -123
  94. package/dist/cjs/utils/index.js +40 -42
  95. package/dist/cjs/utils/node-width.js +7 -79
  96. package/dist/cjs/utils/nodes.js +57 -124
  97. package/dist/cjs/utils/plugin-state-factory.js +7 -107
  98. package/dist/cjs/utils/selection.js +11 -62
  99. package/dist/cjs/utils/slice.js +28 -68
  100. package/dist/cjs/utils/step.js +18 -46
  101. package/dist/cjs/version-wrapper.js +1 -1
  102. package/dist/cjs/version.json +1 -1
  103. package/dist/es2019/analytics-api/api.js +30 -0
  104. package/dist/es2019/analytics-api/attach-payload-into-transaction.js +25 -0
  105. package/dist/es2019/analytics-api/editor-state-context.js +85 -0
  106. package/dist/es2019/analytics-api/map-attributes.js +14 -0
  107. package/dist/es2019/create-editor/ReactEditorView.js +33 -4
  108. package/dist/es2019/create-editor/ReactEditorViewContext.js +1 -2
  109. package/dist/es2019/create-editor/create-plugins-list.js +13 -4
  110. package/dist/es2019/event-dispatcher/index.js +1 -60
  111. package/dist/es2019/insert-api/api.js +43 -0
  112. package/dist/es2019/insert-api/insert-content-handlers.js +85 -0
  113. package/dist/es2019/insert-api/insert-node-helpers.js +149 -0
  114. package/dist/es2019/{plugins/analytics/types/avatar.js → insert-api/types.js} +0 -0
  115. package/dist/es2019/keymaps/index.js +1 -186
  116. package/dist/es2019/messages.js +2 -123
  117. package/dist/es2019/plugins/analytics/index.js +1 -1
  118. package/dist/es2019/plugins/analytics/types/enums.js +1 -336
  119. package/dist/es2019/plugins/analytics/types/extension-events.js +1 -22
  120. package/dist/es2019/plugins/analytics/types/general-events.js +1 -30
  121. package/dist/es2019/plugins/analytics/types/index.js +1 -6
  122. package/dist/es2019/plugins/analytics/types/inline-comment-events.js +1 -7
  123. package/dist/es2019/plugins/analytics/types/node-events.js +1 -18
  124. package/dist/es2019/plugins/analytics/types/smart-links.js +1 -12
  125. package/dist/es2019/plugins/analytics/types/toolbar-button.js +1 -19
  126. package/dist/es2019/plugins/analytics/utils.js +12 -113
  127. package/dist/es2019/plugins/expand/utils.js +1 -36
  128. package/dist/es2019/plugins/extension/actions.js +1 -26
  129. package/dist/es2019/plugins/extension/ui/Extension/styles.js +2 -3
  130. package/dist/es2019/plugins/insert-block/index.js +1 -0
  131. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -12
  132. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/messages.js +1 -168
  133. package/dist/es2019/plugins/layout/styles.js +2 -3
  134. package/dist/es2019/plugins/layout/utils.js +1 -54
  135. package/dist/es2019/plugins/paste/handlers.js +8 -4
  136. package/dist/es2019/plugins/paste/util/index.js +23 -0
  137. package/dist/es2019/plugins/selection/gap-cursor/selection.js +1 -136
  138. package/dist/es2019/plugins/selection/gap-cursor/utils/is-ignored.js +1 -5
  139. package/dist/es2019/plugins/selection/gap-cursor/utils/is-valid-target-node.js +1 -4
  140. package/dist/es2019/plugins/selection/gap-cursor/utils.js +4 -4
  141. package/dist/es2019/plugins/selection/gap-cursor-selection.js +1 -1
  142. package/dist/es2019/plugins/selection/types.js +2 -9
  143. package/dist/es2019/plugins/selection/utils.js +1 -1
  144. package/dist/es2019/plugins/table/commands/go-to-next-cell.js +4 -4
  145. package/dist/es2019/plugins/table/commands/insert.js +26 -24
  146. package/dist/es2019/plugins/table/commands/selection.js +109 -51
  147. package/dist/es2019/plugins/table/commands-with-analytics.js +39 -38
  148. package/dist/es2019/plugins/table/event-handlers.js +6 -7
  149. package/dist/es2019/plugins/table/index.js +56 -16
  150. package/dist/es2019/plugins/table/nodeviews/TableComponent.js +11 -12
  151. package/dist/es2019/plugins/table/nodeviews/table.js +18 -8
  152. package/dist/es2019/plugins/table/nodeviews/tableCell.js +2 -3
  153. package/dist/es2019/plugins/table/nodeviews/update-overflow-shadows.js +3 -4
  154. package/dist/es2019/plugins/table/pm-plugins/keymap.js +13 -12
  155. package/dist/es2019/plugins/table/pm-plugins/main.js +8 -8
  156. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -6
  157. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -2
  158. package/dist/es2019/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -8
  159. package/dist/es2019/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  160. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/dom.js +2 -2
  161. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -4
  162. package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  163. package/dist/es2019/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  164. package/dist/es2019/plugins/table/toolbar.js +24 -24
  165. package/dist/es2019/plugins/table/transforms/column-width.js +3 -2
  166. package/dist/es2019/plugins/table/transforms/replace-table.js +4 -4
  167. package/dist/es2019/plugins/table/ui/FloatingContextualButton/index.js +2 -2
  168. package/dist/es2019/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +19 -16
  169. package/dist/es2019/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  170. package/dist/es2019/plugins/table/ui/FloatingDeleteButton/index.js +8 -4
  171. package/dist/es2019/plugins/table/ui/FloatingInsertButton/index.js +9 -6
  172. package/dist/es2019/plugins/table/ui/LayoutButton/index.js +2 -2
  173. package/dist/es2019/plugins/table/ui/TableFloatingControls/index.js +2 -3
  174. package/dist/es2019/plugins/table/ui/common-styles.js +1 -1
  175. package/dist/es2019/plugins/table/utils/analytics.js +16 -1
  176. package/dist/es2019/plugins/table/utils/index.js +1 -1
  177. package/dist/es2019/selection-api/api.js +22 -0
  178. package/dist/es2019/types/browser.js +0 -1
  179. package/dist/es2019/ui/ColorPalette/Color/index.js +1 -66
  180. package/dist/es2019/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +1 -14
  181. package/dist/es2019/ui/ColorPalette/Palettes/common.js +1 -20
  182. package/dist/es2019/ui/ColorPalette/Palettes/paletteMessages.js +2 -113
  183. package/dist/es2019/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -137
  184. package/dist/es2019/ui/ColorPalette/Palettes/statusColorPalette.js +1 -51
  185. package/dist/es2019/ui/ColorPalette/Palettes/textColorPalette.js +1 -25
  186. package/dist/es2019/ui/ColorPalette/index.js +2 -62
  187. package/dist/es2019/ui/Dropdown/index.js +2 -84
  188. package/dist/es2019/ui/DropdownMenu/index.js +2 -244
  189. package/dist/es2019/ui/Toolbar/types.js +1 -30
  190. package/dist/es2019/ui/ToolbarButton/index.js +2 -94
  191. package/dist/es2019/ui/WithPluginState/index.js +1 -1
  192. package/dist/es2019/ui/styles.js +9 -47
  193. package/dist/es2019/ui/with-outer-listeners.js +2 -104
  194. package/dist/es2019/utils/dom.js +1 -113
  195. package/dist/es2019/utils/index.js +2 -21
  196. package/dist/es2019/utils/node-width.js +1 -75
  197. package/dist/es2019/utils/nodes.js +1 -88
  198. package/dist/es2019/utils/plugin-state-factory.js +1 -107
  199. package/dist/es2019/utils/selection.js +2 -52
  200. package/dist/es2019/utils/slice.js +1 -56
  201. package/dist/es2019/utils/step.js +1 -35
  202. package/dist/es2019/version-wrapper.js +1 -1
  203. package/dist/es2019/version.json +1 -1
  204. package/dist/esm/analytics-api/api.js +27 -0
  205. package/dist/esm/analytics-api/attach-payload-into-transaction.js +22 -0
  206. package/dist/esm/analytics-api/editor-state-context.js +81 -0
  207. package/dist/esm/analytics-api/map-attributes.js +20 -0
  208. package/dist/esm/create-editor/ReactEditorView.js +44 -6
  209. package/dist/esm/create-editor/ReactEditorViewContext.js +1 -2
  210. package/dist/esm/create-editor/create-plugins-list.js +15 -4
  211. package/dist/esm/event-dispatcher/index.js +1 -74
  212. package/dist/esm/insert-api/api.js +37 -0
  213. package/dist/esm/insert-api/insert-content-handlers.js +88 -0
  214. package/dist/esm/insert-api/insert-node-helpers.js +138 -0
  215. package/dist/{es2019/plugins/analytics/types/config-panel-events.js → esm/insert-api/types.js} +0 -0
  216. package/dist/esm/keymaps/index.js +1 -184
  217. package/dist/esm/messages.js +2 -123
  218. package/dist/esm/plugins/analytics/index.js +1 -1
  219. package/dist/esm/plugins/analytics/types/enums.js +1 -336
  220. package/dist/esm/plugins/analytics/types/extension-events.js +1 -22
  221. package/dist/esm/plugins/analytics/types/general-events.js +1 -30
  222. package/dist/esm/plugins/analytics/types/index.js +1 -6
  223. package/dist/esm/plugins/analytics/types/inline-comment-events.js +1 -7
  224. package/dist/esm/plugins/analytics/types/node-events.js +1 -18
  225. package/dist/esm/plugins/analytics/types/smart-links.js +1 -12
  226. package/dist/esm/plugins/analytics/types/toolbar-button.js +1 -19
  227. package/dist/esm/plugins/analytics/utils.js +12 -113
  228. package/dist/esm/plugins/expand/utils.js +1 -34
  229. package/dist/esm/plugins/extension/actions.js +1 -24
  230. package/dist/esm/plugins/extension/ui/Extension/styles.js +2 -3
  231. package/dist/esm/plugins/insert-block/index.js +1 -0
  232. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -12
  233. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/messages.js +1 -168
  234. package/dist/esm/plugins/layout/styles.js +2 -3
  235. package/dist/esm/plugins/layout/utils.js +1 -58
  236. package/dist/esm/plugins/paste/handlers.js +8 -4
  237. package/dist/esm/plugins/paste/util/index.js +23 -0
  238. package/dist/esm/plugins/selection/gap-cursor/selection.js +1 -176
  239. package/dist/esm/plugins/selection/gap-cursor/utils/is-ignored.js +1 -5
  240. package/dist/esm/plugins/selection/gap-cursor/utils/is-valid-target-node.js +1 -4
  241. package/dist/esm/plugins/selection/gap-cursor/utils.js +4 -4
  242. package/dist/esm/plugins/selection/gap-cursor-selection.js +1 -1
  243. package/dist/esm/plugins/selection/types.js +2 -9
  244. package/dist/esm/plugins/selection/utils.js +1 -1
  245. package/dist/esm/plugins/table/commands/go-to-next-cell.js +34 -32
  246. package/dist/esm/plugins/table/commands/insert.js +57 -49
  247. package/dist/esm/plugins/table/commands/selection.js +303 -215
  248. package/dist/esm/plugins/table/commands-with-analytics.js +241 -220
  249. package/dist/esm/plugins/table/event-handlers.js +60 -59
  250. package/dist/esm/plugins/table/index.js +62 -18
  251. package/dist/esm/plugins/table/nodeviews/TableComponent.js +20 -21
  252. package/dist/esm/plugins/table/nodeviews/table.js +19 -9
  253. package/dist/esm/plugins/table/nodeviews/tableCell.js +11 -12
  254. package/dist/esm/plugins/table/nodeviews/update-overflow-shadows.js +25 -24
  255. package/dist/esm/plugins/table/pm-plugins/keymap.js +14 -13
  256. package/dist/esm/plugins/table/pm-plugins/main.js +8 -8
  257. package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +4 -6
  258. package/dist/esm/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -1
  259. package/dist/esm/plugins/table/pm-plugins/table-resizing/event-handlers.js +7 -8
  260. package/dist/esm/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  261. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/dom.js +30 -28
  262. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -4
  263. package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +3 -2
  264. package/dist/esm/plugins/table/pm-plugins/table-selection-keymap.js +3 -3
  265. package/dist/esm/plugins/table/toolbar.js +75 -73
  266. package/dist/esm/plugins/table/transforms/column-width.js +41 -38
  267. package/dist/esm/plugins/table/transforms/replace-table.js +4 -4
  268. package/dist/esm/plugins/table/ui/FloatingContextualButton/index.js +2 -2
  269. package/dist/esm/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +25 -21
  270. package/dist/esm/plugins/table/ui/FloatingContextualMenu/index.js +6 -2
  271. package/dist/esm/plugins/table/ui/FloatingDeleteButton/index.js +6 -4
  272. package/dist/esm/plugins/table/ui/FloatingInsertButton/index.js +9 -6
  273. package/dist/esm/plugins/table/ui/LayoutButton/index.js +2 -2
  274. package/dist/esm/plugins/table/ui/TableFloatingControls/index.js +4 -5
  275. package/dist/esm/plugins/table/ui/common-styles.js +1 -1
  276. package/dist/esm/plugins/table/utils/analytics.js +22 -1
  277. package/dist/esm/plugins/table/utils/index.js +1 -1
  278. package/dist/esm/selection-api/api.js +23 -0
  279. package/dist/esm/types/browser.js +0 -1
  280. package/dist/esm/ui/ColorPalette/Color/index.js +1 -93
  281. package/dist/esm/ui/ColorPalette/Palettes/cellBackgroundColorPalette.js +1 -14
  282. package/dist/esm/ui/ColorPalette/Palettes/common.js +1 -19
  283. package/dist/esm/ui/ColorPalette/Palettes/paletteMessages.js +2 -113
  284. package/dist/esm/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -147
  285. package/dist/esm/ui/ColorPalette/Palettes/statusColorPalette.js +1 -51
  286. package/dist/esm/ui/ColorPalette/Palettes/textColorPalette.js +1 -25
  287. package/dist/esm/ui/ColorPalette/index.js +2 -64
  288. package/dist/esm/ui/Dropdown/index.js +2 -106
  289. package/dist/esm/ui/DropdownMenu/index.js +2 -265
  290. package/dist/esm/ui/Toolbar/types.js +1 -30
  291. package/dist/esm/ui/ToolbarButton/index.js +2 -102
  292. package/dist/esm/ui/WithPluginState/index.js +1 -1
  293. package/dist/esm/ui/styles.js +17 -20
  294. package/dist/esm/ui/with-outer-listeners.js +2 -139
  295. package/dist/esm/utils/dom.js +1 -113
  296. package/dist/esm/utils/index.js +5 -23
  297. package/dist/esm/utils/node-width.js +1 -73
  298. package/dist/esm/utils/nodes.js +1 -100
  299. package/dist/esm/utils/plugin-state-factory.js +1 -106
  300. package/dist/esm/utils/selection.js +2 -50
  301. package/dist/esm/utils/slice.js +1 -59
  302. package/dist/esm/utils/step.js +1 -37
  303. package/dist/esm/version-wrapper.js +1 -1
  304. package/dist/esm/version.json +1 -1
  305. package/dist/types/actions/index.d.ts +2 -16
  306. package/dist/types/analytics-api/api.d.ts +9 -0
  307. package/dist/types/analytics-api/attach-payload-into-transaction.d.ts +10 -0
  308. package/dist/types/analytics-api/editor-state-context.d.ts +9 -0
  309. package/dist/types/analytics-api/map-attributes.d.ts +2 -0
  310. package/dist/types/create-editor/ReactEditorView.d.ts +1 -0
  311. package/dist/types/create-editor/ReactEditorViewContext.d.ts +1 -7
  312. package/dist/types/create-editor/create-plugins-list.d.ts +5 -1
  313. package/dist/types/event-dispatcher/index.d.ts +2 -19
  314. package/dist/types/insert-api/api.d.ts +9 -0
  315. package/dist/types/insert-api/insert-content-handlers.d.ts +9 -0
  316. package/dist/types/insert-api/insert-node-helpers.d.ts +30 -0
  317. package/dist/types/insert-api/types.d.ts +16 -0
  318. package/dist/types/keymaps/index.d.ts +2 -89
  319. package/dist/types/labs/next/presets/cxhtml.d.ts +1 -1
  320. package/dist/types/labs/next/presets/mobile.d.ts +1 -1
  321. package/dist/types/messages.d.ts +2 -124
  322. package/dist/types/plugins/analytics/index.d.ts +2 -2
  323. package/dist/types/plugins/analytics/types/dispatch-analytics-event.d.ts +1 -2
  324. package/dist/types/plugins/analytics/types/enums.d.ts +1 -313
  325. package/dist/types/plugins/analytics/types/events.d.ts +1 -111
  326. package/dist/types/plugins/analytics/types/experimental-events.d.ts +1 -17
  327. package/dist/types/plugins/analytics/types/extension-events.d.ts +2 -43
  328. package/dist/types/plugins/analytics/types/general-events.d.ts +2 -179
  329. package/dist/types/plugins/analytics/types/index.d.ts +4 -14
  330. package/dist/types/plugins/analytics/types/inline-comment-events.d.ts +2 -17
  331. package/dist/types/plugins/analytics/types/link-tool-bar-events.d.ts +1 -76
  332. package/dist/types/plugins/analytics/types/media-events.d.ts +1 -16
  333. package/dist/types/plugins/analytics/types/node-events.d.ts +2 -56
  334. package/dist/types/plugins/analytics/types/selection-events.d.ts +1 -18
  335. package/dist/types/plugins/analytics/types/smart-links.d.ts +2 -13
  336. package/dist/types/plugins/analytics/types/toolbar-button.d.ts +2 -22
  337. package/dist/types/plugins/analytics/types/type-ahead.d.ts +1 -27
  338. package/dist/types/plugins/analytics/utils.d.ts +3 -8
  339. package/dist/types/plugins/annotation/pm-plugins/plugin-factory.d.ts +1 -1
  340. package/dist/types/plugins/card/pm-plugins/util/state.d.ts +1 -1
  341. package/dist/types/plugins/code-bidi-warning/pm-plugins/plugin-factory.d.ts +1 -1
  342. package/dist/types/plugins/context-panel/types.d.ts +1 -3
  343. package/dist/types/plugins/expand/pm-plugins/plugin-factory.d.ts +1 -1
  344. package/dist/types/plugins/expand/utils.d.ts +1 -5
  345. package/dist/types/plugins/extension/actions.d.ts +2 -6
  346. package/dist/types/plugins/extension/commands.d.ts +7 -7
  347. package/dist/types/plugins/extension/plugin-factory.d.ts +2 -2
  348. package/dist/types/plugins/extension/ui/Extension/styles.d.ts +2 -2
  349. package/dist/types/plugins/find-replace/commands.d.ts +7 -7
  350. package/dist/types/plugins/find-replace/plugin.d.ts +1 -1
  351. package/dist/types/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin-factory.d.ts +1 -1
  352. package/dist/types/plugins/floating-toolbar/types.d.ts +1 -153
  353. package/dist/types/plugins/floating-toolbar/ui/Button.d.ts +2 -1
  354. package/dist/types/plugins/floating-toolbar/ui/Select.d.ts +2 -12
  355. package/dist/types/plugins/floating-toolbar/ui/types.d.ts +1 -20
  356. package/dist/types/plugins/insert-block/index.d.ts +2 -0
  357. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/messages.d.ts +1 -167
  358. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +3 -1
  359. package/dist/types/plugins/layout/styles.d.ts +2 -2
  360. package/dist/types/plugins/layout/utils.d.ts +1 -15
  361. package/dist/types/plugins/media/commands/linking.d.ts +3 -3
  362. package/dist/types/plugins/media/nodeviews/mediaNodeView/index.d.ts +1 -1
  363. package/dist/types/plugins/media/nodeviews/mediaSingle.d.ts +1 -1
  364. package/dist/types/plugins/media/pm-plugins/alt-text/commands.d.ts +2 -2
  365. package/dist/types/plugins/media/pm-plugins/alt-text/index.d.ts +1 -1
  366. package/dist/types/plugins/media/pm-plugins/linking/index.d.ts +1 -1
  367. package/dist/types/plugins/mobile-dimensions/commands.d.ts +4 -4
  368. package/dist/types/plugins/mobile-dimensions/plugin-factory.d.ts +1 -1
  369. package/dist/types/plugins/paste/util/index.d.ts +2 -1
  370. package/dist/types/plugins/selection/commands.d.ts +1 -1
  371. package/dist/types/plugins/selection/gap-cursor/selection.d.ts +1 -40
  372. package/dist/types/plugins/selection/gap-cursor/utils/is-ignored.d.ts +1 -2
  373. package/dist/types/plugins/selection/gap-cursor/utils/is-valid-target-node.d.ts +1 -2
  374. package/dist/types/plugins/selection/gap-cursor-selection.d.ts +1 -1
  375. package/dist/types/plugins/selection/plugin-factory.d.ts +1 -1
  376. package/dist/types/plugins/selection/types.d.ts +4 -19
  377. package/dist/types/plugins/table/commands/go-to-next-cell.d.ts +3 -2
  378. package/dist/types/plugins/table/commands/hover.d.ts +7 -7
  379. package/dist/types/plugins/table/commands/insert.d.ts +5 -4
  380. package/dist/types/plugins/table/commands/misc.d.ts +8 -8
  381. package/dist/types/plugins/table/commands/selection.d.ts +4 -3
  382. package/dist/types/plugins/table/commands/toggle.d.ts +1 -1
  383. package/dist/types/plugins/table/commands-with-analytics.d.ts +21 -19
  384. package/dist/types/plugins/table/event-handlers.d.ts +4 -2
  385. package/dist/types/plugins/table/index.d.ts +7 -0
  386. package/dist/types/plugins/table/nodeviews/TableComponent.d.ts +4 -2
  387. package/dist/types/plugins/table/nodeviews/table.d.ts +2 -1
  388. package/dist/types/plugins/table/nodeviews/tableCell.d.ts +2 -1
  389. package/dist/types/plugins/table/nodeviews/types.d.ts +3 -0
  390. package/dist/types/plugins/table/nodeviews/update-overflow-shadows.d.ts +2 -1
  391. package/dist/types/plugins/table/pm-plugins/keymap.d.ts +3 -1
  392. package/dist/types/plugins/table/pm-plugins/main.d.ts +4 -2
  393. package/dist/types/plugins/table/pm-plugins/plugin-factory.d.ts +1 -1
  394. package/dist/types/plugins/table/pm-plugins/sticky-headers/commands.d.ts +2 -2
  395. package/dist/types/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.d.ts +2 -1
  396. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin-state.d.ts +1 -1
  397. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin.d.ts +2 -1
  398. package/dist/types/plugins/table/pm-plugins/table-resizing/commands.d.ts +4 -4
  399. package/dist/types/plugins/table/pm-plugins/table-resizing/event-handlers.d.ts +3 -1
  400. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin-factory.d.ts +2 -2
  401. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin.d.ts +3 -1
  402. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/dom.d.ts +2 -1
  403. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/misc.d.ts +3 -1
  404. package/dist/types/plugins/table/pm-plugins/table-resizing/utils/resize-state.d.ts +2 -1
  405. package/dist/types/plugins/table/pm-plugins/table-selection-keymap.d.ts +2 -1
  406. package/dist/types/plugins/table/toolbar.d.ts +5 -3
  407. package/dist/types/plugins/table/transforms/column-width.d.ts +2 -1
  408. package/dist/types/plugins/table/transforms/replace-table.d.ts +3 -2
  409. package/dist/types/plugins/table/types.d.ts +3 -1
  410. package/dist/types/plugins/table/ui/FloatingContextualButton/index.d.ts +1 -1
  411. package/dist/types/plugins/table/ui/FloatingContextualMenu/ContextualMenu.d.ts +4 -0
  412. package/dist/types/plugins/table/ui/FloatingContextualMenu/index.d.ts +5 -1
  413. package/dist/types/plugins/table/ui/FloatingDeleteButton/index.d.ts +2 -0
  414. package/dist/types/plugins/table/ui/FloatingInsertButton/index.d.ts +5 -1
  415. package/dist/types/plugins/table/ui/LayoutButton/index.d.ts +2 -0
  416. package/dist/types/plugins/table/ui/TableFloatingControls/index.d.ts +2 -0
  417. package/dist/types/plugins/table/utils/analytics.d.ts +3 -0
  418. package/dist/types/plugins/table/utils/index.d.ts +1 -1
  419. package/dist/types/plugins/type-ahead/types.d.ts +2 -50
  420. package/dist/types/plugins/width/index.d.ts +3 -6
  421. package/dist/types/selection-api/api.d.ts +11 -0
  422. package/dist/types/types/browser.d.ts +1 -10
  423. package/dist/types/types/editor-appearance.d.ts +1 -1
  424. package/dist/types/types/editor-plugin.d.ts +1 -59
  425. package/dist/types/types/editor-react-context.d.ts +1 -6
  426. package/dist/types/types/empty-state-handler.d.ts +1 -7
  427. package/dist/types/types/feature-flags.d.ts +1 -343
  428. package/dist/types/types/pm-config.d.ts +1 -14
  429. package/dist/types/types/pm-plugin.d.ts +1 -27
  430. package/dist/types/types/ui-components.d.ts +1 -22
  431. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +118 -118
  432. package/dist/types/ui/ColorPalette/Color/index.d.ts +1 -19
  433. package/dist/types/ui/ColorPalette/Palettes/cellBackgroundColorPalette.d.ts +1 -2
  434. package/dist/types/ui/ColorPalette/Palettes/common.d.ts +1 -1
  435. package/dist/types/ui/ColorPalette/Palettes/paletteMessages.d.ts +2 -113
  436. package/dist/types/ui/ColorPalette/Palettes/panelBackgroundPalette.d.ts +1 -3
  437. package/dist/types/ui/ColorPalette/Palettes/statusColorPalette.d.ts +1 -3
  438. package/dist/types/ui/ColorPalette/Palettes/textColorPalette.d.ts +1 -3
  439. package/dist/types/ui/ColorPalette/Palettes/type.d.ts +1 -8
  440. package/dist/types/ui/ColorPalette/index.d.ts +2 -23
  441. package/dist/types/ui/ColorPickerButton/index.d.ts +1 -1
  442. package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
  443. package/dist/types/ui/ContentStyles/index.d.ts +2 -2
  444. package/dist/types/ui/Dropdown/index.d.ts +2 -33
  445. package/dist/types/ui/DropdownMenu/index.d.ts +2 -18
  446. package/dist/types/ui/DropdownMenu/types.d.ts +1 -43
  447. package/dist/types/ui/Toolbar/types.d.ts +2 -30
  448. package/dist/types/ui/ToolbarButton/index.d.ts +3 -52
  449. package/dist/types/ui/styles.d.ts +3 -3
  450. package/dist/types/ui/with-outer-listeners.d.ts +2 -10
  451. package/dist/types/utils/document-logger.d.ts +2 -7
  452. package/dist/types/utils/dom.d.ts +2 -26
  453. package/dist/types/utils/index.d.ts +3 -6
  454. package/dist/types/utils/node-width.d.ts +1 -7
  455. package/dist/types/utils/nodes.d.ts +1 -35
  456. package/dist/types/utils/performance/plugin-performance-report.d.ts +2 -25
  457. package/dist/types/utils/plugin-state-factory.d.ts +2 -16
  458. package/dist/types/utils/selection.d.ts +3 -6
  459. package/dist/types/utils/slice.d.ts +2 -11
  460. package/dist/types/utils/step.d.ts +1 -15
  461. package/package.json +5 -6
  462. package/dist/cjs/plugins/analytics/types/config-panel-events.js +0 -5
  463. package/dist/cjs/plugins/analytics/types/cut-copy-events.js +0 -5
  464. package/dist/cjs/plugins/analytics/types/date-events.js +0 -5
  465. package/dist/cjs/plugins/analytics/types/element-browser-events.js +0 -5
  466. package/dist/cjs/plugins/analytics/types/find-replace-events.js +0 -5
  467. package/dist/cjs/plugins/analytics/types/format-events.js +0 -24
  468. package/dist/cjs/plugins/analytics/types/insert-events.js +0 -51
  469. package/dist/cjs/plugins/analytics/types/list-events.js +0 -25
  470. package/dist/cjs/plugins/analytics/types/paste-events.js +0 -55
  471. package/dist/cjs/plugins/analytics/types/substitute-events.js +0 -24
  472. package/dist/cjs/plugins/analytics/types/table-events.js +0 -43
  473. package/dist/cjs/plugins/analytics/types/utils.js +0 -27
  474. package/dist/cjs/ui/ColorPalette/Color/styles.js +0 -21
  475. package/dist/cjs/ui/ColorPalette/Palettes/getColorMessage.js +0 -17
  476. package/dist/cjs/ui/ColorPalette/styles.js +0 -19
  477. package/dist/cjs/ui/DropList/index.js +0 -215
  478. package/dist/cjs/ui/Layer/index.js +0 -245
  479. package/dist/cjs/ui/Layer/internal/helpers.js +0 -70
  480. package/dist/cjs/ui/ToolbarButton/styles.js +0 -26
  481. package/dist/es2019/plugins/analytics/types/cut-copy-events.js +0 -1
  482. package/dist/es2019/plugins/analytics/types/date-events.js +0 -1
  483. package/dist/es2019/plugins/analytics/types/element-browser-events.js +0 -1
  484. package/dist/es2019/plugins/analytics/types/find-replace-events.js +0 -1
  485. package/dist/es2019/plugins/analytics/types/format-events.js +0 -16
  486. package/dist/es2019/plugins/analytics/types/insert-events.js +0 -41
  487. package/dist/es2019/plugins/analytics/types/list-events.js +0 -17
  488. package/dist/es2019/plugins/analytics/types/paste-events.js +0 -46
  489. package/dist/es2019/plugins/analytics/types/substitute-events.js +0 -16
  490. package/dist/es2019/plugins/analytics/types/table-events.js +0 -34
  491. package/dist/es2019/plugins/analytics/types/utils.js +0 -19
  492. package/dist/es2019/ui/ColorPalette/Color/styles.js +0 -24
  493. package/dist/es2019/ui/ColorPalette/Palettes/getColorMessage.js +0 -14
  494. package/dist/es2019/ui/ColorPalette/styles.js +0 -7
  495. package/dist/es2019/ui/DropList/index.js +0 -186
  496. package/dist/es2019/ui/Layer/index.js +0 -195
  497. package/dist/es2019/ui/Layer/internal/helpers.js +0 -62
  498. package/dist/es2019/ui/ToolbarButton/styles.js +0 -12
  499. package/dist/esm/plugins/analytics/types/avatar.js +0 -1
  500. package/dist/esm/plugins/analytics/types/config-panel-events.js +0 -1
  501. package/dist/esm/plugins/analytics/types/cut-copy-events.js +0 -1
  502. package/dist/esm/plugins/analytics/types/date-events.js +0 -1
  503. package/dist/esm/plugins/analytics/types/element-browser-events.js +0 -1
  504. package/dist/esm/plugins/analytics/types/find-replace-events.js +0 -1
  505. package/dist/esm/plugins/analytics/types/format-events.js +0 -16
  506. package/dist/esm/plugins/analytics/types/insert-events.js +0 -41
  507. package/dist/esm/plugins/analytics/types/list-events.js +0 -17
  508. package/dist/esm/plugins/analytics/types/paste-events.js +0 -46
  509. package/dist/esm/plugins/analytics/types/substitute-events.js +0 -16
  510. package/dist/esm/plugins/analytics/types/table-events.js +0 -34
  511. package/dist/esm/plugins/analytics/types/utils.js +0 -19
  512. package/dist/esm/ui/ColorPalette/Color/styles.js +0 -8
  513. package/dist/esm/ui/ColorPalette/Palettes/getColorMessage.js +0 -10
  514. package/dist/esm/ui/ColorPalette/styles.js +0 -7
  515. package/dist/esm/ui/DropList/index.js +0 -203
  516. package/dist/esm/ui/Layer/index.js +0 -228
  517. package/dist/esm/ui/Layer/internal/helpers.js +0 -62
  518. package/dist/esm/ui/ToolbarButton/styles.js +0 -12
  519. package/dist/types/plugins/analytics/types/avatar.d.ts +0 -5
  520. package/dist/types/plugins/analytics/types/config-panel-events.d.ts +0 -17
  521. package/dist/types/plugins/analytics/types/cut-copy-events.d.ts +0 -12
  522. package/dist/types/plugins/analytics/types/date-events.d.ts +0 -17
  523. package/dist/types/plugins/analytics/types/element-browser-events.d.ts +0 -11
  524. package/dist/types/plugins/analytics/types/find-replace-events.d.ts +0 -23
  525. package/dist/types/plugins/analytics/types/format-events.d.ts +0 -49
  526. package/dist/types/plugins/analytics/types/insert-events.d.ts +0 -128
  527. package/dist/types/plugins/analytics/types/list-events.d.ts +0 -52
  528. package/dist/types/plugins/analytics/types/paste-events.d.ts +0 -39
  529. package/dist/types/plugins/analytics/types/substitute-events.d.ts +0 -26
  530. package/dist/types/plugins/analytics/types/table-events.d.ts +0 -94
  531. package/dist/types/plugins/analytics/types/utils.d.ts +0 -45
  532. package/dist/types/ui/ColorPalette/Color/styles.d.ts +0 -2
  533. package/dist/types/ui/ColorPalette/Palettes/getColorMessage.d.ts +0 -2
  534. package/dist/types/ui/ColorPalette/styles.d.ts +0 -1
  535. package/dist/types/ui/DropList/index.d.ts +0 -22
  536. package/dist/types/ui/Layer/index.d.ts +0 -47
  537. package/dist/types/ui/Layer/internal/helpers.d.ts +0 -5
  538. package/dist/types/ui/ToolbarButton/styles.d.ts +0 -4
@@ -1,139 +1,2 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/createClass";
4
- import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
5
- import _inherits from "@babel/runtime/helpers/inherits";
6
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
7
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
8
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- var _excluded = ["handleClickOutside", "handleEnterKeydown", "handleEscapeKeydown"];
10
-
11
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
12
-
13
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
14
-
15
- import React from 'react';
16
- import { PureComponent } from 'react';
17
- import ReactDOM from 'react-dom';
18
- import ReactEditorViewContext from '../create-editor/ReactEditorViewContext';
19
-
20
- var WithOutsideClick = /*#__PURE__*/function (_PureComponent) {
21
- _inherits(WithOutsideClick, _PureComponent);
22
-
23
- var _super = _createSuper(WithOutsideClick);
24
-
25
- function WithOutsideClick() {
26
- var _this;
27
-
28
- _classCallCheck(this, WithOutsideClick);
29
-
30
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
31
- args[_key] = arguments[_key];
32
- }
33
-
34
- _this = _super.call.apply(_super, [this].concat(args));
35
-
36
- _defineProperty(_assertThisInitialized(_this), "handleClick", function (evt) {
37
- if (!_this.props.isActiveComponent) {
38
- return;
39
- }
40
-
41
- var domNode = ReactDOM.findDOMNode(_assertThisInitialized(_this)); // eslint-disable-line react/no-find-dom-node
42
-
43
- if (!domNode || evt.target instanceof Node && !domNode.contains(evt.target)) {
44
- if (_this.props.handleClickOutside) {
45
- _this.props.handleClickOutside(evt);
46
- }
47
- }
48
- });
49
-
50
- _defineProperty(_assertThisInitialized(_this), "handleKeydown", function (evt) {
51
- if (!_this.props.isActiveComponent) {
52
- return;
53
- }
54
-
55
- if (evt.code === 'Escape' && _this.props.handleEscapeKeydown) {
56
- var _this$props$editorVie;
57
-
58
- evt.preventDefault();
59
- evt.stopPropagation();
60
-
61
- _this.props.handleEscapeKeydown(evt);
62
-
63
- if (!((_this$props$editorVie = _this.props.editorView) !== null && _this$props$editorVie !== void 0 && _this$props$editorVie.hasFocus())) {
64
- var _this$props$editorVie2;
65
-
66
- (_this$props$editorVie2 = _this.props.editorView) === null || _this$props$editorVie2 === void 0 ? void 0 : _this$props$editorVie2.focus();
67
- }
68
-
69
- return false;
70
- } else if (evt.code === 'Enter' && _this.props.handleEnterKeydown) {
71
- _this.props.handleEnterKeydown(evt);
72
- }
73
- });
74
-
75
- return _this;
76
- }
77
-
78
- _createClass(WithOutsideClick, [{
79
- key: "componentDidMount",
80
- value: function componentDidMount() {
81
- if (this.props.handleClickOutside) {
82
- document.addEventListener('click', this.handleClick, false);
83
- }
84
-
85
- if (this.props.handleEscapeKeydown) {
86
- var _this$props$editorRef;
87
-
88
- (((_this$props$editorRef = this.props.editorRef) === null || _this$props$editorRef === void 0 ? void 0 : _this$props$editorRef.current) || document).addEventListener('keydown', this.handleKeydown, false);
89
- }
90
- }
91
- }, {
92
- key: "componentWillUnmount",
93
- value: function componentWillUnmount() {
94
- if (this.props.handleClickOutside) {
95
- document.removeEventListener('click', this.handleClick, false);
96
- }
97
-
98
- if (this.props.handleEscapeKeydown) {
99
- var _this$props$editorRef2;
100
-
101
- (((_this$props$editorRef2 = this.props.editorRef) === null || _this$props$editorRef2 === void 0 ? void 0 : _this$props$editorRef2.current) || document).removeEventListener('keydown', this.handleKeydown, false);
102
- }
103
- }
104
- }, {
105
- key: "render",
106
- value: function render() {
107
- return this.props.children;
108
- }
109
- }]);
110
-
111
- return WithOutsideClick;
112
- }(PureComponent);
113
-
114
- function hasIsOpen(props) {
115
- return 'isOpen' in props;
116
- }
117
-
118
- export default function withOuterListeners(Component) {
119
- return function (_ref) {
120
- var handleClickOutside = _ref.handleClickOutside,
121
- handleEnterKeydown = _ref.handleEnterKeydown,
122
- handleEscapeKeydown = _ref.handleEscapeKeydown,
123
- props = _objectWithoutProperties(_ref, _excluded);
124
-
125
- var isActiveComponent = hasIsOpen(props) ? props.isOpen : true;
126
- return /*#__PURE__*/React.createElement(ReactEditorViewContext.Consumer, null, function (_ref2) {
127
- var editorView = _ref2.editorView,
128
- editorRef = _ref2.editorRef;
129
- return /*#__PURE__*/React.createElement(WithOutsideClick, {
130
- editorView: editorView,
131
- editorRef: editorRef,
132
- isActiveComponent: isActiveComponent,
133
- handleClickOutside: handleClickOutside,
134
- handleEnterKeydown: handleEnterKeydown,
135
- handleEscapeKeydown: handleEscapeKeydown
136
- }, /*#__PURE__*/React.createElement(Component, props));
137
- });
138
- };
139
- }
1
+ import { withReactEditorViewOuterListeners } from '@atlaskit/editor-common/ui-react';
2
+ export default withReactEditorViewOuterListeners;
@@ -1,113 +1 @@
1
- /**
2
- * Walks a DOM tree up to the provided `stopElement`, or if falsy before.
3
- * @param element
4
- * @param stopElement
5
- */
6
- export function walkUpTreeUntil(element, shouldStop) {
7
- var rootElement = element;
8
-
9
- while (rootElement && rootElement.parentElement && !shouldStop(rootElement)) {
10
- rootElement = rootElement.parentElement;
11
- }
12
-
13
- return rootElement;
14
- }
15
- /**
16
- * Takes all children out from wrapped el and puts them directly inside
17
- * the parent el, at the wrapped el's position
18
- */
19
-
20
- export function unwrap(parent, wrapped) {
21
- var docsFragment = document.createDocumentFragment();
22
- Array.from(wrapped.children).forEach(function (child) {
23
- docsFragment.appendChild(child);
24
- });
25
- parent.replaceChild(docsFragment, wrapped);
26
- }
27
- /**
28
- * Walks up DOM removing elements if they are empty until it finds
29
- * one that is not
30
- */
31
-
32
- export function removeNestedEmptyEls(el) {
33
- while (el.parentElement && el.childElementCount === 0 && el.textContent === '') {
34
- var parentEl = el.parentElement;
35
- parentEl.removeChild(el);
36
- el = parentEl;
37
- }
38
- }
39
- /**
40
- * IE11 doesn't support classList to SVGElements
41
- **/
42
-
43
- export var containsClassName = function containsClassName(node, className) {
44
- if (!node) {
45
- return false;
46
- }
47
-
48
- if (node.classList && node.classList.contains) {
49
- return node.classList.contains(className);
50
- }
51
-
52
- if (!node.className) {
53
- return false;
54
- }
55
-
56
- var classNames = typeof node.className.baseVal === 'string' ? node.className.baseVal : node.className;
57
- return classNames.split(' ').indexOf(className) !== -1;
58
- };
59
- export function closest(node, s) {
60
- if (!node) {
61
- return null;
62
- }
63
-
64
- var el = node;
65
-
66
- if (!document.documentElement || !document.documentElement.contains(el)) {
67
- return null;
68
- }
69
-
70
- if (el.closest) {
71
- return el.closest(s);
72
- }
73
-
74
- do {
75
- var matchfn = el.matches ? el.matches : el.msMatchesSelector;
76
-
77
- if (matchfn && matchfn.call(el, s)) {
78
- return el;
79
- }
80
-
81
- el = el.parentElement || el.parentNode;
82
- } while (el !== null && el.nodeType === 1);
83
-
84
- return null;
85
- }
86
- /*
87
- * @deprecated - Use HTMLElement.protoype.closest instead
88
- */
89
-
90
- export function closestElement(node, s) {
91
- return closest(node, s);
92
- }
93
- export function parsePx(pxStr) {
94
- if (!pxStr.endsWith('px')) {
95
- return undefined;
96
- }
97
-
98
- var maybeNumber = parseInt(pxStr, 10);
99
- return !Number.isNaN(maybeNumber) ? maybeNumber : undefined;
100
- }
101
- // does typescript have function templates yet?
102
- export function mapElem(elem, callback) {
103
- var array = [];
104
-
105
- for (var i = 0; i < elem.childElementCount; i++) {
106
- array.push(callback(elem.children[i], i, elem));
107
- }
108
-
109
- return array;
110
- }
111
- export function maphElem(elem, callback) {
112
- return mapElem(elem, callback);
113
- }
1
+ export { walkUpTreeUntil, unwrap, removeNestedEmptyEls, containsClassName, closest, closestElement, parsePx, mapElem, maphElem } from '@atlaskit/editor-common/utils';
@@ -7,7 +7,7 @@ import { FakeTextCursorSelection } from '../plugins/fake-text-cursor/cursor';
7
7
  import { hasParentNodeOfType } from 'prosemirror-utils';
8
8
  import { isNodeEmpty } from './document';
9
9
  import { atTheBeginningOfDoc, atTheEndOfDoc } from './prosemirror/position';
10
- import { closest } from './dom';
10
+ export { insideTable } from '@atlaskit/editor-common/core-utils';
11
11
  export { isEmptyParagraph, hasVisibleContent, isNodeEmpty, isEmptyDocument, processRawValue, getStepRange, findFarthestParentNode, isSelectionEndOfParagraph, nodesBetweenChanged, getNodesCount } from './document';
12
12
  export { cascadeCommands, getEditorValueWithMedia } from './action';
13
13
  export { isMarkAllowedInRange, isMarkExcluded, removeBlockMarks, sanitiseSelectionMarksForWrapping, sanitiseMarksInSelection } from './mark';
@@ -500,25 +500,12 @@ export var isEmptyNode = function isEmptyNode(schema) {
500
500
 
501
501
  return innerIsEmptyNode;
502
502
  };
503
- export var insideTable = function insideTable(state) {
504
- var _state$schema$nodes2 = state.schema.nodes,
505
- table = _state$schema$nodes2.table,
506
- tableCell = _state$schema$nodes2.tableCell;
507
- return hasParentNodeOfType([table, tableCell])(state.selection);
508
- };
509
503
  export var insideTableCell = function insideTableCell(state) {
510
- var _state$schema$nodes3 = state.schema.nodes,
511
- tableCell = _state$schema$nodes3.tableCell,
512
- tableHeader = _state$schema$nodes3.tableHeader;
504
+ var _state$schema$nodes2 = state.schema.nodes,
505
+ tableCell = _state$schema$nodes2.tableCell,
506
+ tableHeader = _state$schema$nodes2.tableHeader;
513
507
  return hasParentNodeOfType([tableCell, tableHeader])(state.selection);
514
508
  };
515
- export var isElementInTableCell = function isElementInTableCell(element) {
516
- return closest(element, 'td') || closest(element, 'th');
517
- };
518
- export var isLastItemMediaGroup = function isLastItemMediaGroup(node) {
519
- var content = node.content;
520
- return !!content.lastChild && content.lastChild.type.name === 'mediaGroup';
521
- };
522
509
  export var isInLayoutColumn = function isInLayoutColumn(state) {
523
510
  return hasParentNodeOfType(state.schema.nodes.layoutSection)(state.selection);
524
511
  };
@@ -573,9 +560,7 @@ export function dedupe() {
573
560
  return false;
574
561
  });
575
562
  }
576
- export var isTextSelection = function isTextSelection(selection) {
577
- return selection instanceof TextSelection;
578
- };
563
+ export { isTextSelection, isElementInTableCell, isLastItemMediaGroup, nonNullable } from '@atlaskit/editor-common/utils';
579
564
  /** Helper type for single arg function */
580
565
 
581
566
  /**
@@ -631,7 +616,4 @@ export function sum(arr, f) {
631
616
  return val + f(x);
632
617
  }, 0);
633
618
  }
634
- export function nonNullable(value) {
635
- return value !== null && value !== undefined;
636
- }
637
619
  export { SetAttrsStep } from '@atlaskit/adf-schema/steps';
@@ -1,80 +1,8 @@
1
- import { findParentNodeOfTypeClosestToPos } from 'prosemirror-utils';
2
- import { absoluteBreakoutWidth } from '@atlaskit/editor-common/utils';
3
- import { akEditorFullWidthLayoutWidth, akLayoutGutterOffset, gridMediumMaxWidth } from '@atlaskit/editor-shared-styles';
4
- import { LAYOUT_SECTION_MARGIN, LAYOUT_COLUMN_PADDING } from '../plugins/layout/styles';
5
- import { BODIED_EXT_PADDING } from '../plugins/extension/ui/Extension/styles';
6
-
7
- /**
8
- * Calculates width of parent node of a nested node (inside layouts, extension)
9
- * If current node selection is not nested will return undefined
10
- */
11
- export var getParentNodeWidth = function getParentNodeWidth(pos, state, containerWidth, isFullWidthModeEnabled) {
12
- if (!pos) {
13
- return;
14
- }
15
-
16
- var node = getNestedParentNode(pos, state);
17
-
18
- if (!node) {
19
- return;
20
- }
21
-
22
- var layout = node.attrs.layout || 'default';
23
- var schema = state.schema;
24
- var breakoutMark = schema.marks.breakout && schema.marks.breakout.isInSet(node.marks);
25
-
26
- if (breakoutMark && breakoutMark.attrs.mode) {
27
- layout = breakoutMark.attrs.mode;
28
- }
29
-
30
- var parentWidth = calcBreakoutNodeWidth(layout, containerWidth, isFullWidthModeEnabled);
31
-
32
- if (node.type === schema.nodes.layoutSection) {
33
- parentWidth += akLayoutGutterOffset * 2; // extra width that gets added to layout
34
-
35
- if (containerWidth.width > gridMediumMaxWidth) {
36
- parentWidth -= (LAYOUT_SECTION_MARGIN + 2) * (node.childCount - 1); // margin between sections
37
-
38
- var $pos = state.doc.resolve(pos);
39
- var column = findParentNodeOfTypeClosestToPos($pos, [state.schema.nodes.layoutColumn]);
40
-
41
- if (column && column.node && !isNaN(column.node.attrs.width)) {
42
- // get exact width of parent layout column using node attrs
43
- parentWidth = Math.round(parentWidth * column.node.attrs.width * 0.01);
44
- }
45
- }
46
- } // account for the padding of the parent node
47
-
48
-
49
- if (node.type === schema.nodes.layoutSection) {
50
- parentWidth -= LAYOUT_COLUMN_PADDING * 2;
51
- } else if (node.type === schema.nodes.bodiedExtension) {
52
- parentWidth -= BODIED_EXT_PADDING * 2;
53
- }
54
-
55
- parentWidth -= 2; // border
56
-
57
- return parentWidth;
58
- };
59
-
60
- var getNestedParentNode = function getNestedParentNode(tablePos, state) {
61
- if (tablePos === undefined) {
62
- return null;
63
- }
64
-
65
- var $pos = state.doc.resolve(tablePos);
66
- var parent = findParentNodeOfTypeClosestToPos($pos, [state.schema.nodes.bodiedExtension, state.schema.nodes.layoutSection, state.schema.nodes.expand]);
67
- return parent ? parent.node : null;
68
- };
69
-
70
- var calcBreakoutNodeWidth = function calcBreakoutNodeWidth(layout, containerWidth, isFullWidthModeEnabled) {
71
- return isFullWidthModeEnabled ? Math.min(containerWidth.lineLength, akEditorFullWidthLayoutWidth) : absoluteBreakoutWidth(layout, containerWidth.width);
72
- };
1
+ export { getParentNodeWidth } from '@atlaskit/editor-common/node-width';
73
2
  /**
74
3
  * Returns the breakout mode of a given node
75
4
  */
76
5
 
77
-
78
6
  export var getBreakoutMode = function getBreakoutMode(node, breakout) {
79
7
  var breakoutMark = breakout && breakout.isInSet(node.marks);
80
8
  return breakoutMark ? breakoutMark.attrs.mode : node.attrs.layout;
@@ -1,100 +1 @@
1
- /**
2
- * Finds all top level nodes affected by the transaction
3
- * Uses from/to positions in transaction's steps to work out which nodes will
4
- * be changed by the transaction
5
- */
6
- export var findChangedNodesFromTransaction = function findChangedNodesFromTransaction(tr) {
7
- var nodes = [];
8
- var steps = tr.steps || [];
9
- steps.forEach(function (step) {
10
- var to = step.to,
11
- from = step.from,
12
- slice = step.slice;
13
- var size = slice && slice.content ? slice.content.size : 0;
14
-
15
- for (var i = from; i <= to + size; i++) {
16
- if (i <= tr.doc.content.size) {
17
- (function () {
18
- var topLevelNode = tr.doc.resolve(i).node(1);
19
-
20
- if (topLevelNode && !nodes.find(function (n) {
21
- return n === topLevelNode;
22
- })) {
23
- nodes.push(topLevelNode);
24
- }
25
- })();
26
- }
27
- }
28
- });
29
- return nodes;
30
- };
31
- export var validNode = function validNode(node) {
32
- try {
33
- node.check(); // this will throw an error if the node is invalid
34
- } catch (error) {
35
- return false;
36
- }
37
-
38
- return true;
39
- };
40
- /** Validates prosemirror nodes, and returns true only if all nodes are valid */
41
-
42
- export var validateNodes = function validateNodes(nodes) {
43
- return nodes.every(validNode);
44
- };
45
- export var isType = function isType(node, type) {
46
- return type && node && node.type === type;
47
- };
48
- export var isParagraph = function isParagraph(node, schema) {
49
- return isType(node, schema.nodes.paragraph);
50
- };
51
- export var isText = function isText(node, schema) {
52
- return isType(node, schema.nodes.text);
53
- };
54
- export var isLinkMark = function isLinkMark(node, schema) {
55
- return isType(node, schema.marks.link);
56
- };
57
- export var SelectedState;
58
- /**
59
- * Returns if the current selection from achor-head is selecting the node.
60
- * If the node is not selected then null is returned.
61
- * If the node is selected then an enum is returned that describes weather the node
62
- * is fully selected by a range or if the "inside" of the node has been selected or clicked.
63
- */
64
-
65
- (function (SelectedState) {
66
- SelectedState[SelectedState["selectedInRange"] = 0] = "selectedInRange";
67
- SelectedState[SelectedState["selectedInside"] = 1] = "selectedInside";
68
- })(SelectedState || (SelectedState = {}));
69
-
70
- export var isNodeSelectedOrInRange = function isNodeSelectedOrInRange(anchorPosition, headPosition, nodePosition, nodeSize) {
71
- var rangeStart = Math.min(anchorPosition, headPosition);
72
- var rangeEnd = Math.max(anchorPosition, headPosition);
73
- var nodeStart = nodePosition;
74
- var nodeEnd = nodePosition + nodeSize;
75
-
76
- if (anchorPosition === headPosition) {
77
- return null;
78
- }
79
-
80
- if (rangeStart <= nodeStart && nodeEnd < rangeEnd || rangeStart < nodeStart && nodeEnd <= rangeEnd) {
81
- return SelectedState.selectedInRange;
82
- }
83
-
84
- if (nodeStart <= anchorPosition && headPosition <= nodeEnd) {
85
- return SelectedState.selectedInside;
86
- }
87
-
88
- return null;
89
- };
90
- /**
91
- * Checks if a particular node fragment is supported in the parent
92
- * @param state EditorState
93
- * @param fragment The fragment to be checked for
94
- */
95
-
96
- export var isSupportedInParent = function isSupportedInParent(state, fragment, currentAppearance) {
97
- var depth = currentAppearance === 'embed' || currentAppearance === 'block' ? undefined : -1;
98
- var parent = state.selection.$from.node(depth);
99
- return parent && parent.type.validContent(fragment);
100
- };
1
+ export { findChangedNodesFromTransaction, validNode, validateNodes, isType, isParagraph, isText, isLinkMark, SelectedState, isNodeSelectedOrInRange, isSupportedInParent } from '@atlaskit/editor-common/utils';
@@ -1,106 +1 @@
1
- /**
2
- * Creates a ProseMirror plugin's state and handles UI updates.
3
- *
4
- * Here's a few things to keep in mind:
5
- * - plugin's state is stored as a single object
6
- * - `Reducer` specifies how plugin's state changes in response to commands
7
- * - `Command` describes only what happen, but not how state changes
8
- * - `mapping` could be used to map ProseMirror positions stored in plugin's state
9
- *
10
- * Example:
11
- * const { createPluginState, createCommand, getPluginState } = pluginFactory(
12
- * reducer,
13
- * pluginKey
14
- * );
15
- *
16
- * export const createPlugin = (dispatch: Dispatch, initialState) =>
17
- * new SafePlugin({
18
- * state: createPluginState(dispatch, initialState),
19
- * key: pluginKey
20
- * });
21
- *
22
- * Example of a reducer:
23
- *
24
- * export const reducer = (
25
- * state: TablePluginState,
26
- * action: TableAction,
27
- * ): TablePluginState => {
28
- * switch (action.type) {
29
- * case 'TOGGLE_CONTEXTUAL_MENU':
30
- * return {
31
- * ...state,
32
- * isContextualMenuOpen: !state.isContextualMenuOpen,
33
- * };
34
- * default:
35
- * return state;
36
- * }
37
- * };
38
- *
39
- *
40
- * Example of a command:
41
- *
42
- * export const toggleContextualMenu = createCommand({
43
- * type: 'TOGGLE_CONTEXTUAL_MENU',
44
- * }, tr => tr.setMeta('addToHistory', false));
45
- *
46
- */
47
- function isFunction(x) {
48
- return typeof x === 'function';
49
- }
50
-
51
- export function pluginFactory(pluginKey, reducer) {
52
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
53
- var mapping = options.mapping,
54
- onDocChanged = options.onDocChanged,
55
- onSelectionChanged = options.onSelectionChanged;
56
- return {
57
- createPluginState: function createPluginState(dispatch, initialState) {
58
- return {
59
- init: function init(_, state) {
60
- return isFunction(initialState) ? initialState(state) : initialState;
61
- },
62
- apply: function apply(tr, _pluginState) {
63
- var oldState = mapping ? mapping(tr, _pluginState) : _pluginState;
64
- var newState = oldState;
65
- var meta = tr.getMeta(pluginKey);
66
-
67
- if (meta) {
68
- newState = reducer(oldState, meta);
69
- }
70
-
71
- if (onDocChanged && tr.docChanged) {
72
- newState = onDocChanged(tr, newState);
73
- } else if (onSelectionChanged && tr.selectionSet) {
74
- newState = onSelectionChanged(tr, newState);
75
- }
76
-
77
- if (newState !== oldState) {
78
- dispatch(pluginKey, newState);
79
- }
80
-
81
- return newState;
82
- }
83
- };
84
- },
85
- createCommand: function createCommand(action, transform) {
86
- return function (state, dispatch) {
87
- if (dispatch) {
88
- var _tr = transform ? transform(state.tr, state) : state.tr;
89
-
90
- var resolvedAction = isFunction(action) ? action(state) : action;
91
-
92
- if (_tr && resolvedAction) {
93
- dispatch(_tr.setMeta(pluginKey, resolvedAction));
94
- } else {
95
- return false;
96
- }
97
- }
98
-
99
- return true;
100
- };
101
- },
102
- getPluginState: function getPluginState(state) {
103
- return pluginKey.getState(state);
104
- }
105
- };
106
- }
1
+ export { pluginFactory } from '@atlaskit/editor-common/utils';
@@ -6,18 +6,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6
6
 
7
7
  import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
8
8
  import { NodeSelection, TextSelection, AllSelection } from 'prosemirror-state';
9
- import { GapCursorSelection } from '../plugins/selection/gap-cursor/selection';
10
- export var setNodeSelection = function setNodeSelection(view, pos) {
11
- var state = view.state,
12
- dispatch = view.dispatch;
13
-
14
- if (!isFinite(pos)) {
15
- return;
16
- }
17
-
18
- var tr = state.tr.setSelection(NodeSelection.create(state.doc, pos));
19
- dispatch(tr);
20
- };
9
+ import { GapCursorSelection } from '@atlaskit/editor-common/selection';
10
+ export { setNodeSelection } from '@atlaskit/editor-common/utils';
21
11
  export function setTextSelection(view, anchor, head) {
22
12
  var state = view.state,
23
13
  dispatch = view.dispatch;
@@ -61,44 +51,6 @@ export var normaliseNestedLayout = function normaliseNestedLayout(_ref, node) {
61
51
  }
62
52
 
63
53
  return node;
64
- };
65
- export var isSelectionAtStartOfNode = function isSelectionAtStartOfNode($pos, parentNode) {
66
- if (!parentNode) {
67
- return false;
68
- }
69
-
70
- for (var i = $pos.depth + 1; i > 0; i--) {
71
- var node = $pos.node(i);
72
-
73
- if (node && node.eq(parentNode.node)) {
74
- break;
75
- }
76
-
77
- if (i > 1 && $pos.before(i) !== $pos.before(i - 1) + 1) {
78
- return false;
79
- }
80
- }
81
-
82
- return true;
83
- };
84
- export var isSelectionAtEndOfNode = function isSelectionAtEndOfNode($pos, parentNode) {
85
- if (!parentNode) {
86
- return false;
87
- }
88
-
89
- for (var i = $pos.depth + 1; i > 0; i--) {
90
- var node = $pos.node(i);
91
-
92
- if (node && node.eq(parentNode.node)) {
93
- break;
94
- }
95
-
96
- if (i > 1 && $pos.after(i) !== $pos.after(i - 1) - 1) {
97
- return false;
98
- }
99
- }
100
-
101
- return true;
102
54
  }; // checks if the given position is within the ProseMirror document
103
55
 
104
56
  export var isValidPosition = function isValidPosition(pos, state) {