@atlaskit/editor-core 154.0.0 → 155.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (847) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/dist/cjs/actions/index.js +34 -0
  3. package/dist/cjs/create-editor/ReactEditorView.js +33 -15
  4. package/dist/cjs/create-editor/create-editor.js +8 -3
  5. package/dist/cjs/create-editor/create-plugins-list.js +7 -7
  6. package/dist/cjs/labs/next/presets/cxhtml.js +3 -1
  7. package/dist/cjs/labs/next/presets/mobile.js +6 -9
  8. package/dist/cjs/plugins/alignment/pm-plugins/main.js +3 -1
  9. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/icon-map.js +30 -12
  10. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/index.js +4 -2
  11. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/messages.js +15 -0
  12. package/dist/cjs/plugins/analytics/plugin.js +2 -2
  13. package/dist/cjs/plugins/analytics/types/enums.js +3 -0
  14. package/dist/cjs/plugins/annotation/pm-plugins/inline-comment.js +2 -2
  15. package/dist/cjs/plugins/avatar-group/index.js +2 -2
  16. package/dist/cjs/plugins/avatar-group/messages.js +17 -0
  17. package/dist/cjs/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +9 -3
  18. package/dist/cjs/plugins/base/pm-plugins/better-type-history.js +3 -1
  19. package/dist/cjs/plugins/base/pm-plugins/context-identifier.js +3 -1
  20. package/dist/cjs/plugins/base/pm-plugins/decoration.js +3 -1
  21. package/dist/cjs/plugins/base/pm-plugins/filter-steps.js +2 -2
  22. package/dist/cjs/plugins/base/pm-plugins/fix-chrome-88-selection.js +3 -1
  23. package/dist/cjs/plugins/base/pm-plugins/fix-chrome-spell-checking.js +3 -1
  24. package/dist/cjs/plugins/base/pm-plugins/focus-handler.js +3 -1
  25. package/dist/cjs/plugins/base/pm-plugins/frozen-editor.js +3 -1
  26. package/dist/cjs/plugins/base/pm-plugins/inline-cursor-target.js +3 -1
  27. package/dist/cjs/plugins/base/pm-plugins/newline-preserve-marks.js +3 -1
  28. package/dist/cjs/plugins/base/pm-plugins/react-nodeview.js +3 -1
  29. package/dist/cjs/plugins/base/pm-plugins/scroll-gutter.js +2 -2
  30. package/dist/cjs/plugins/block-type/pm-plugins/main.js +3 -1
  31. package/dist/cjs/plugins/breakout/index.js +2 -2
  32. package/dist/cjs/plugins/caption/pm-plugins/main.js +2 -2
  33. package/dist/cjs/plugins/card/index.js +13 -3
  34. package/dist/cjs/plugins/card/messages.js +40 -0
  35. package/dist/cjs/plugins/card/nodeviews/blockCard.js +3 -5
  36. package/dist/cjs/plugins/card/nodeviews/embedCard.js +10 -0
  37. package/dist/cjs/plugins/card/nodeviews/genericCard.js +32 -2
  38. package/dist/cjs/plugins/card/nodeviews/inlineCard.js +5 -23
  39. package/dist/cjs/plugins/card/pm-plugins/doc.js +55 -6
  40. package/dist/cjs/plugins/card/pm-plugins/keymap.js +89 -0
  41. package/dist/cjs/plugins/card/pm-plugins/main.js +3 -4
  42. package/dist/cjs/plugins/card/ui/LinkToolbarAppearance.js +21 -0
  43. package/dist/cjs/plugins/card/ui/LinkToolbarButtonGroup.js +20 -0
  44. package/dist/cjs/plugins/card/ui/LinkToolbarIconDropdown.js +20 -0
  45. package/dist/cjs/plugins/card/ui/ResizableEmbedCard.js +6 -2
  46. package/dist/cjs/plugins/card/ui/assets/card.js +37 -0
  47. package/dist/cjs/plugins/card/ui/assets/embed.js +37 -0
  48. package/dist/cjs/plugins/card/ui/assets/inline.js +37 -0
  49. package/dist/cjs/plugins/card/ui/assets/url.js +39 -0
  50. package/dist/cjs/plugins/card/ui/styled.js +14 -4
  51. package/dist/cjs/plugins/clear-marks-on-change-to-empty-document/index.js +3 -1
  52. package/dist/cjs/plugins/clipboard/pm-plugins/main.js +3 -1
  53. package/dist/cjs/plugins/code-bidi-warning/pm-plugins/main.js +2 -2
  54. package/dist/cjs/plugins/code-block/pm-plugins/ide-ux.js +3 -1
  55. package/dist/cjs/plugins/code-block/pm-plugins/keymaps.js +1 -1
  56. package/dist/cjs/plugins/code-block/pm-plugins/main.js +3 -1
  57. package/dist/cjs/plugins/code-block/toolbar.js +4 -2
  58. package/dist/cjs/plugins/collab-edit/actions.js +10 -0
  59. package/dist/cjs/plugins/collab-edit/events/initialize.js +16 -5
  60. package/dist/cjs/plugins/collab-edit/index.js +9 -8
  61. package/dist/cjs/plugins/collab-edit/native-collab-provider-plugin.js +46 -0
  62. package/dist/cjs/plugins/collab-edit/plugin.js +20 -2
  63. package/dist/cjs/plugins/collab-edit/provider/index.js +1 -9
  64. package/dist/cjs/plugins/context-panel/index.js +3 -1
  65. package/dist/cjs/plugins/custom-autoformat/index.js +2 -2
  66. package/dist/cjs/plugins/date/pm-plugins/main.js +2 -2
  67. package/dist/cjs/plugins/editor-disabled/index.js +3 -1
  68. package/dist/cjs/plugins/emoji/index.js +3 -1
  69. package/dist/cjs/plugins/emoji/nodeviews/emoji-next.js +3 -14
  70. package/dist/cjs/plugins/emoji/nodeviews/emoji.js +1 -15
  71. package/dist/cjs/plugins/expand/index.js +1 -1
  72. package/dist/cjs/plugins/expand/nodeviews/index.js +13 -3
  73. package/dist/cjs/plugins/expand/pm-plugins/keymap.js +13 -1
  74. package/dist/cjs/plugins/expand/pm-plugins/main.js +13 -5
  75. package/dist/cjs/plugins/expand/toolbar.js +2 -1
  76. package/dist/cjs/plugins/extension/pm-plugins/main.js +2 -2
  77. package/dist/cjs/plugins/extension/pm-plugins/unique-id.js +3 -1
  78. package/dist/cjs/plugins/extension/toolbar.js +10 -5
  79. package/dist/cjs/plugins/fake-text-cursor/index.js +3 -1
  80. package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +11 -6
  81. package/dist/cjs/plugins/feature-flags-context/get-feature-flags.js +14 -0
  82. package/dist/cjs/plugins/feature-flags-context/index.js +8 -9
  83. package/dist/cjs/plugins/feature-flags-context/plugin-key.js +11 -0
  84. package/dist/cjs/plugins/find-replace/plugin.js +2 -2
  85. package/dist/cjs/plugins/find-replace/ui/Find.js +16 -12
  86. package/dist/cjs/plugins/floating-toolbar/index.js +3 -1
  87. package/dist/cjs/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin.js +2 -2
  88. package/dist/cjs/plugins/floating-toolbar/ui/Button.js +8 -2
  89. package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +12 -5
  90. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +13 -5
  91. package/dist/cjs/plugins/floating-toolbar/ui/messages.js +10 -0
  92. package/dist/cjs/plugins/fragment/index.js +2 -2
  93. package/dist/cjs/plugins/fragment/pm-plugins/fragment-consistency.js +3 -1
  94. package/dist/cjs/plugins/help-dialog/index.js +2 -2
  95. package/dist/cjs/plugins/help-dialog/ui/index.js +2 -1
  96. package/dist/cjs/plugins/history/index.js +3 -1
  97. package/dist/cjs/plugins/hyperlink/Toolbar.js +6 -3
  98. package/dist/cjs/plugins/hyperlink/pm-plugins/fake-cursor-for-toolbar.js +2 -2
  99. package/dist/cjs/plugins/hyperlink/pm-plugins/main.js +49 -5
  100. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +6 -1
  101. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/messages.js +42 -0
  102. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/utils.js +58 -18
  103. package/dist/cjs/plugins/hyperlink/utils.js +4 -0
  104. package/dist/cjs/plugins/image-upload/pm-plugins/main.js +2 -2
  105. package/dist/cjs/plugins/jira-issue/index.js +3 -1
  106. package/dist/cjs/plugins/layout/pm-plugins/main.js +3 -1
  107. package/dist/cjs/plugins/layout/toolbar.js +4 -2
  108. package/dist/cjs/plugins/list/commands/indent-list.js +1 -7
  109. package/dist/cjs/plugins/list/commands/index.js +1 -1
  110. package/dist/cjs/plugins/list/commands/outdent-list.js +2 -1
  111. package/dist/cjs/plugins/list/pm-plugins/main.js +3 -1
  112. package/dist/cjs/plugins/list/utils/node.js +11 -3
  113. package/dist/cjs/plugins/list/utils/selection.js +10 -1
  114. package/dist/cjs/plugins/macro/index.js +2 -2
  115. package/dist/cjs/plugins/max-content-size/index.js +3 -1
  116. package/dist/cjs/plugins/media/index.js +2 -1
  117. package/dist/cjs/plugins/media/nodeviews/mediaGroup.js +9 -3
  118. package/dist/cjs/plugins/media/nodeviews/messages.js +17 -0
  119. package/dist/cjs/plugins/media/pm-plugins/alt-text/index.js +3 -1
  120. package/dist/cjs/plugins/media/pm-plugins/linking/index.js +3 -1
  121. package/dist/cjs/plugins/media/pm-plugins/main.js +17 -7
  122. package/dist/cjs/plugins/media/pm-plugins/media-editor.js +2 -2
  123. package/dist/cjs/plugins/media/toolbar/commands.js +58 -1
  124. package/dist/cjs/plugins/media/toolbar/index.js +8 -41
  125. package/dist/cjs/plugins/media/ui/Media/DropPlaceholder.js +16 -4
  126. package/dist/cjs/plugins/media/ui/Media/drop-placeholder-messages.js +17 -0
  127. package/dist/cjs/plugins/media/ui/ToolbarMedia/index.js +11 -4
  128. package/dist/cjs/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +17 -0
  129. package/dist/cjs/plugins/media/utils/media-common.js +5 -4
  130. package/dist/cjs/plugins/mentions/messages.js +10 -0
  131. package/dist/cjs/plugins/mentions/nodeviews/mention.js +3 -16
  132. package/dist/cjs/plugins/mentions/pm-plugins/main.js +2 -2
  133. package/dist/cjs/plugins/mentions/ui/InviteItem/index.js +5 -3
  134. package/dist/cjs/plugins/mentions/ui/ToolbarMention/index.js +10 -3
  135. package/dist/cjs/plugins/mobile-dimensions/index.js +16 -2
  136. package/dist/cjs/plugins/mobile-selection/content-in-selection.js +4 -4
  137. package/dist/cjs/plugins/mobile-selection/mobile-selection-plugin.js +3 -1
  138. package/dist/cjs/plugins/panel/pm-plugins/main.js +2 -2
  139. package/dist/cjs/plugins/panel/toolbar.js +13 -6
  140. package/dist/cjs/plugins/paste/handlers.js +31 -12
  141. package/dist/cjs/plugins/paste/index.js +3 -2
  142. package/dist/cjs/plugins/paste/pm-plugins/analytics.js +22 -20
  143. package/dist/cjs/plugins/paste/pm-plugins/clipboard-text-serializer.js +44 -0
  144. package/dist/cjs/plugins/paste/pm-plugins/main.js +32 -3
  145. package/dist/cjs/plugins/paste/{util.js → util/index.js} +0 -0
  146. package/dist/cjs/plugins/paste/util/tinyMCE.js +218 -0
  147. package/dist/cjs/plugins/placeholder/index.js +3 -1
  148. package/dist/cjs/plugins/placeholder-text/index.js +3 -1
  149. package/dist/cjs/plugins/quick-insert/index.js +2 -2
  150. package/dist/cjs/plugins/rank.js +1 -1
  151. package/dist/cjs/plugins/scroll-into-view/index.js +3 -1
  152. package/dist/cjs/plugins/selection/pm-plugins/gap-cursor-main.js +3 -1
  153. package/dist/cjs/plugins/selection/pm-plugins/selection-main.js +3 -1
  154. package/dist/cjs/plugins/status/nodeviews/status.js +1 -15
  155. package/dist/cjs/plugins/status/plugin.js +3 -1
  156. package/dist/cjs/plugins/status/ui/statusPicker.js +2 -4
  157. package/dist/cjs/plugins/table/commands/misc.js +12 -1
  158. package/dist/cjs/plugins/table/index.js +2 -1
  159. package/dist/cjs/plugins/table/nodeviews/TableComponent.js +1 -19
  160. package/dist/cjs/plugins/table/pm-plugins/decorations/plugin.js +3 -1
  161. package/dist/cjs/plugins/table/pm-plugins/main.js +2 -2
  162. package/dist/cjs/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +3 -1
  163. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +69 -32
  164. package/dist/cjs/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -2
  165. package/dist/cjs/plugins/table/pm-plugins/table-local-id.js +3 -1
  166. package/dist/cjs/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  167. package/dist/cjs/plugins/table/toolbar.js +1 -0
  168. package/dist/cjs/plugins/table/ui/LayoutButton/index.js +86 -28
  169. package/dist/cjs/plugins/table/ui/common-styles.css.js +3 -2
  170. package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/main.js +3 -1
  171. package/dist/cjs/plugins/text-color/index.js +0 -3
  172. package/dist/cjs/plugins/text-color/pm-plugins/main.js +5 -22
  173. package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/index.js +9 -79
  174. package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/styles.js +4 -8
  175. package/dist/cjs/plugins/text-formatting/pm-plugins/clear-formatting.js +3 -1
  176. package/dist/cjs/plugins/text-formatting/pm-plugins/cursor.js +3 -1
  177. package/dist/cjs/plugins/text-formatting/pm-plugins/main.js +2 -2
  178. package/dist/cjs/plugins/type-ahead/index.js +17 -0
  179. package/dist/cjs/plugins/type-ahead/messages.js +17 -0
  180. package/dist/cjs/plugins/type-ahead/pm-plugins/insert-item-plugin.js +2 -2
  181. package/dist/cjs/plugins/type-ahead/pm-plugins/main.js +10 -9
  182. package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +12 -4
  183. package/dist/cjs/plugins/type-ahead/ui/TypeAheadList.js +9 -3
  184. package/dist/cjs/plugins/undo-redo/pm-plugins/main.js +2 -2
  185. package/dist/cjs/plugins/unsupported-content/index.js +3 -1
  186. package/dist/cjs/plugins/view-update-subscription/index.js +3 -1
  187. package/dist/cjs/plugins/width/index.js +3 -1
  188. package/dist/cjs/ui/Alignment/index.js +3 -1
  189. package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +8 -1
  190. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +14 -4
  191. package/dist/cjs/ui/Appearance/FullPage/messages.js +28 -0
  192. package/dist/cjs/ui/ChromeCollapsed/index.js +8 -2
  193. package/dist/cjs/ui/ChromeCollapsed/messages.js +17 -0
  194. package/dist/cjs/ui/ColorPalette/index.js +1 -3
  195. package/dist/cjs/ui/ConfigPanel/Header.js +5 -2
  196. package/dist/cjs/ui/ContentStyles/index.js +1 -1
  197. package/dist/cjs/ui/ContextPanel/index.js +3 -1
  198. package/dist/cjs/ui/ElementBrowser/ModalElementBrowser.js +2 -3
  199. package/dist/cjs/ui/ToolbarHelp/index.js +18 -4
  200. package/dist/cjs/ui/ToolbarHelp/messages.js +17 -0
  201. package/dist/cjs/utils/document.js +17 -3
  202. package/dist/cjs/utils/keymap.js +2 -2
  203. package/dist/cjs/utils/performance/instrumented-plugin.js +20 -10
  204. package/dist/cjs/utils/performance/safer-transactions.js +59 -0
  205. package/dist/cjs/utils/plugin-state-factory.js +1 -1
  206. package/dist/cjs/version-wrapper.js +1 -1
  207. package/dist/cjs/version.json +1 -1
  208. package/dist/es2019/actions/index.js +33 -0
  209. package/dist/es2019/create-editor/ReactEditorView.js +34 -17
  210. package/dist/es2019/create-editor/create-editor.js +8 -3
  211. package/dist/es2019/create-editor/create-plugins-list.js +7 -7
  212. package/dist/es2019/labs/next/presets/cxhtml.js +3 -1
  213. package/dist/es2019/labs/next/presets/mobile.js +6 -9
  214. package/dist/es2019/plugins/alignment/pm-plugins/main.js +3 -2
  215. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/icon-map.js +25 -10
  216. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/index.js +5 -3
  217. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/messages.js +15 -0
  218. package/dist/es2019/plugins/analytics/plugin.js +2 -2
  219. package/dist/es2019/plugins/analytics/types/enums.js +3 -0
  220. package/dist/es2019/plugins/annotation/pm-plugins/inline-comment.js +2 -2
  221. package/dist/es2019/plugins/avatar-group/index.js +1 -1
  222. package/dist/es2019/plugins/avatar-group/messages.js +8 -0
  223. package/dist/es2019/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +9 -3
  224. package/dist/es2019/plugins/base/pm-plugins/better-type-history.js +3 -2
  225. package/dist/es2019/plugins/base/pm-plugins/context-identifier.js +3 -2
  226. package/dist/es2019/plugins/base/pm-plugins/decoration.js +3 -2
  227. package/dist/es2019/plugins/base/pm-plugins/filter-steps.js +2 -2
  228. package/dist/es2019/plugins/base/pm-plugins/fix-chrome-88-selection.js +3 -2
  229. package/dist/es2019/plugins/base/pm-plugins/fix-chrome-spell-checking.js +3 -2
  230. package/dist/es2019/plugins/base/pm-plugins/focus-handler.js +3 -2
  231. package/dist/es2019/plugins/base/pm-plugins/frozen-editor.js +3 -2
  232. package/dist/es2019/plugins/base/pm-plugins/inline-cursor-target.js +3 -2
  233. package/dist/es2019/plugins/base/pm-plugins/newline-preserve-marks.js +3 -2
  234. package/dist/es2019/plugins/base/pm-plugins/react-nodeview.js +3 -2
  235. package/dist/es2019/plugins/base/pm-plugins/scroll-gutter.js +2 -2
  236. package/dist/es2019/plugins/block-type/pm-plugins/main.js +3 -2
  237. package/dist/es2019/plugins/breakout/index.js +2 -2
  238. package/dist/es2019/plugins/caption/pm-plugins/main.js +2 -2
  239. package/dist/es2019/plugins/card/index.js +11 -1
  240. package/dist/es2019/plugins/card/messages.js +40 -0
  241. package/dist/es2019/plugins/card/nodeviews/blockCard.js +2 -3
  242. package/dist/es2019/plugins/card/nodeviews/embedCard.js +8 -0
  243. package/dist/es2019/plugins/card/nodeviews/genericCard.js +14 -2
  244. package/dist/es2019/plugins/card/nodeviews/inlineCard.js +3 -12
  245. package/dist/es2019/plugins/card/pm-plugins/doc.js +46 -4
  246. package/dist/es2019/plugins/card/pm-plugins/keymap.js +72 -0
  247. package/dist/es2019/plugins/card/pm-plugins/main.js +3 -4
  248. package/dist/es2019/plugins/card/ui/LinkToolbarAppearance.js +19 -0
  249. package/dist/es2019/plugins/card/ui/LinkToolbarButtonGroup.js +7 -0
  250. package/dist/es2019/plugins/card/ui/LinkToolbarIconDropdown.js +7 -0
  251. package/dist/es2019/plugins/card/ui/ResizableEmbedCard.js +5 -2
  252. package/dist/es2019/plugins/card/ui/assets/card.js +24 -0
  253. package/dist/es2019/plugins/card/ui/assets/embed.js +24 -0
  254. package/dist/es2019/plugins/card/ui/assets/inline.js +24 -0
  255. package/dist/es2019/plugins/card/ui/assets/url.js +26 -0
  256. package/dist/es2019/plugins/card/ui/styled.js +4 -1
  257. package/dist/es2019/plugins/clear-marks-on-change-to-empty-document/index.js +3 -2
  258. package/dist/es2019/plugins/clipboard/pm-plugins/main.js +3 -2
  259. package/dist/es2019/plugins/code-bidi-warning/pm-plugins/main.js +2 -2
  260. package/dist/es2019/plugins/code-block/pm-plugins/ide-ux.js +3 -2
  261. package/dist/es2019/plugins/code-block/pm-plugins/keymaps.js +1 -1
  262. package/dist/es2019/plugins/code-block/pm-plugins/main.js +3 -2
  263. package/dist/es2019/plugins/code-block/toolbar.js +4 -2
  264. package/dist/es2019/plugins/collab-edit/actions.js +10 -0
  265. package/dist/es2019/plugins/collab-edit/events/initialize.js +11 -2
  266. package/dist/es2019/plugins/collab-edit/index.js +6 -1
  267. package/dist/es2019/plugins/collab-edit/native-collab-provider-plugin.js +32 -0
  268. package/dist/es2019/plugins/collab-edit/plugin.js +18 -2
  269. package/dist/es2019/plugins/collab-edit/provider/index.js +1 -2
  270. package/dist/es2019/plugins/context-panel/index.js +3 -2
  271. package/dist/es2019/plugins/custom-autoformat/index.js +2 -2
  272. package/dist/es2019/plugins/date/pm-plugins/main.js +2 -2
  273. package/dist/es2019/plugins/editor-disabled/index.js +3 -2
  274. package/dist/es2019/plugins/emoji/index.js +3 -2
  275. package/dist/es2019/plugins/emoji/nodeviews/emoji-next.js +3 -11
  276. package/dist/es2019/plugins/emoji/nodeviews/emoji.js +1 -8
  277. package/dist/es2019/plugins/expand/index.js +1 -1
  278. package/dist/es2019/plugins/expand/nodeviews/index.js +15 -3
  279. package/dist/es2019/plugins/expand/pm-plugins/keymap.js +15 -1
  280. package/dist/es2019/plugins/expand/pm-plugins/main.js +12 -5
  281. package/dist/es2019/plugins/expand/toolbar.js +2 -1
  282. package/dist/es2019/plugins/extension/pm-plugins/main.js +2 -2
  283. package/dist/es2019/plugins/extension/pm-plugins/unique-id.js +3 -2
  284. package/dist/es2019/plugins/extension/toolbar.js +10 -5
  285. package/dist/es2019/plugins/fake-text-cursor/index.js +2 -2
  286. package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +11 -6
  287. package/dist/es2019/plugins/feature-flags-context/get-feature-flags.js +2 -0
  288. package/dist/es2019/plugins/feature-flags-context/index.js +3 -3
  289. package/dist/es2019/plugins/feature-flags-context/plugin-key.js +2 -0
  290. package/dist/es2019/plugins/find-replace/plugin.js +2 -2
  291. package/dist/es2019/plugins/find-replace/ui/Find.js +17 -12
  292. package/dist/es2019/plugins/floating-toolbar/index.js +3 -2
  293. package/dist/es2019/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin.js +2 -2
  294. package/dist/es2019/plugins/floating-toolbar/ui/Button.js +8 -2
  295. package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +12 -6
  296. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +13 -6
  297. package/dist/es2019/plugins/floating-toolbar/ui/messages.js +10 -0
  298. package/dist/es2019/plugins/fragment/index.js +2 -2
  299. package/dist/es2019/plugins/fragment/pm-plugins/fragment-consistency.js +3 -2
  300. package/dist/es2019/plugins/help-dialog/index.js +2 -2
  301. package/dist/es2019/plugins/help-dialog/ui/index.js +2 -1
  302. package/dist/es2019/plugins/history/index.js +3 -2
  303. package/dist/es2019/plugins/hyperlink/Toolbar.js +6 -3
  304. package/dist/es2019/plugins/hyperlink/pm-plugins/fake-cursor-for-toolbar.js +2 -2
  305. package/dist/es2019/plugins/hyperlink/pm-plugins/main.js +55 -6
  306. package/dist/es2019/plugins/hyperlink/styles.js +1 -0
  307. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +6 -1
  308. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/messages.js +33 -0
  309. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/utils.js +69 -18
  310. package/dist/es2019/plugins/hyperlink/utils.js +4 -0
  311. package/dist/es2019/plugins/image-upload/pm-plugins/main.js +2 -2
  312. package/dist/es2019/plugins/jira-issue/index.js +3 -2
  313. package/dist/es2019/plugins/layout/pm-plugins/main.js +3 -2
  314. package/dist/es2019/plugins/layout/toolbar.js +4 -2
  315. package/dist/es2019/plugins/list/commands/indent-list.js +2 -9
  316. package/dist/es2019/plugins/list/commands/index.js +1 -1
  317. package/dist/es2019/plugins/list/commands/outdent-list.js +3 -2
  318. package/dist/es2019/plugins/list/pm-plugins/main.js +3 -2
  319. package/dist/es2019/plugins/list/utils/node.js +11 -3
  320. package/dist/es2019/plugins/list/utils/selection.js +8 -1
  321. package/dist/es2019/plugins/macro/index.js +2 -2
  322. package/dist/es2019/plugins/max-content-size/index.js +3 -2
  323. package/dist/es2019/plugins/media/index.js +2 -1
  324. package/dist/es2019/plugins/media/nodeviews/mediaGroup.js +8 -3
  325. package/dist/es2019/plugins/media/nodeviews/messages.js +8 -0
  326. package/dist/es2019/plugins/media/pm-plugins/alt-text/index.js +3 -2
  327. package/dist/es2019/plugins/media/pm-plugins/linking/index.js +3 -2
  328. package/dist/es2019/plugins/media/pm-plugins/main.js +16 -8
  329. package/dist/es2019/plugins/media/pm-plugins/media-editor.js +2 -2
  330. package/dist/es2019/plugins/media/toolbar/commands.js +50 -0
  331. package/dist/es2019/plugins/media/toolbar/index.js +4 -35
  332. package/dist/es2019/plugins/media/ui/Media/DropPlaceholder.js +18 -4
  333. package/dist/es2019/plugins/media/ui/Media/drop-placeholder-messages.js +8 -0
  334. package/dist/es2019/plugins/media/ui/ToolbarMedia/index.js +10 -4
  335. package/dist/es2019/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
  336. package/dist/es2019/plugins/media/utils/media-common.js +6 -5
  337. package/dist/es2019/plugins/mentions/messages.js +10 -0
  338. package/dist/es2019/plugins/mentions/nodeviews/mention.js +8 -12
  339. package/dist/es2019/plugins/mentions/pm-plugins/main.js +2 -2
  340. package/dist/es2019/plugins/mentions/ui/InviteItem/index.js +5 -4
  341. package/dist/es2019/plugins/mentions/ui/ToolbarMention/index.js +10 -4
  342. package/dist/es2019/plugins/mobile-dimensions/index.js +16 -2
  343. package/dist/es2019/plugins/mobile-selection/content-in-selection.js +4 -4
  344. package/dist/es2019/plugins/mobile-selection/mobile-selection-plugin.js +3 -2
  345. package/dist/es2019/plugins/panel/pm-plugins/main.js +2 -2
  346. package/dist/es2019/plugins/panel/toolbar.js +13 -6
  347. package/dist/es2019/plugins/paste/handlers.js +34 -13
  348. package/dist/es2019/plugins/paste/index.js +3 -2
  349. package/dist/es2019/plugins/paste/pm-plugins/analytics.js +22 -20
  350. package/dist/es2019/plugins/paste/pm-plugins/clipboard-text-serializer.js +37 -0
  351. package/dist/es2019/plugins/paste/pm-plugins/main.js +31 -4
  352. package/dist/es2019/plugins/paste/{util.js → util/index.js} +0 -0
  353. package/dist/es2019/plugins/paste/util/tinyMCE.js +185 -0
  354. package/dist/es2019/plugins/placeholder/index.js +3 -2
  355. package/dist/es2019/plugins/placeholder-text/index.js +3 -2
  356. package/dist/es2019/plugins/quick-insert/index.js +2 -2
  357. package/dist/es2019/plugins/rank.js +1 -1
  358. package/dist/es2019/plugins/scroll-into-view/index.js +3 -2
  359. package/dist/es2019/plugins/selection/pm-plugins/gap-cursor-main.js +3 -2
  360. package/dist/es2019/plugins/selection/pm-plugins/selection-main.js +3 -2
  361. package/dist/es2019/plugins/status/nodeviews/status.js +1 -8
  362. package/dist/es2019/plugins/status/plugin.js +3 -2
  363. package/dist/es2019/plugins/status/ui/statusPicker.js +2 -4
  364. package/dist/es2019/plugins/table/commands/misc.js +12 -1
  365. package/dist/es2019/plugins/table/index.js +2 -1
  366. package/dist/es2019/plugins/table/nodeviews/TableComponent.js +1 -17
  367. package/dist/es2019/plugins/table/pm-plugins/decorations/plugin.js +3 -2
  368. package/dist/es2019/plugins/table/pm-plugins/main.js +2 -2
  369. package/dist/es2019/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +3 -2
  370. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +64 -30
  371. package/dist/es2019/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -2
  372. package/dist/es2019/plugins/table/pm-plugins/table-local-id.js +3 -2
  373. package/dist/es2019/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  374. package/dist/es2019/plugins/table/toolbar.js +2 -1
  375. package/dist/es2019/plugins/table/ui/LayoutButton/index.js +80 -23
  376. package/dist/es2019/plugins/table/ui/common-styles.css.js +18 -5
  377. package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/main.js +3 -2
  378. package/dist/es2019/plugins/text-color/index.js +0 -3
  379. package/dist/es2019/plugins/text-color/pm-plugins/main.js +6 -24
  380. package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/index.js +10 -83
  381. package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/styles.js +1 -12
  382. package/dist/es2019/plugins/text-formatting/pm-plugins/clear-formatting.js +3 -2
  383. package/dist/es2019/plugins/text-formatting/pm-plugins/cursor.js +3 -2
  384. package/dist/es2019/plugins/text-formatting/pm-plugins/main.js +2 -2
  385. package/dist/es2019/plugins/type-ahead/index.js +16 -0
  386. package/dist/es2019/plugins/type-ahead/messages.js +8 -0
  387. package/dist/es2019/plugins/type-ahead/pm-plugins/insert-item-plugin.js +2 -2
  388. package/dist/es2019/plugins/type-ahead/pm-plugins/main.js +9 -8
  389. package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +12 -4
  390. package/dist/es2019/plugins/type-ahead/ui/TypeAheadList.js +7 -3
  391. package/dist/es2019/plugins/undo-redo/pm-plugins/main.js +2 -2
  392. package/dist/es2019/plugins/unsupported-content/index.js +3 -2
  393. package/dist/es2019/plugins/view-update-subscription/index.js +3 -2
  394. package/dist/es2019/plugins/width/index.js +3 -2
  395. package/dist/es2019/ui/Alignment/index.js +4 -2
  396. package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +7 -2
  397. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +11 -4
  398. package/dist/es2019/ui/Appearance/FullPage/messages.js +18 -0
  399. package/dist/es2019/ui/ChromeCollapsed/index.js +8 -3
  400. package/dist/es2019/ui/ChromeCollapsed/messages.js +8 -0
  401. package/dist/es2019/ui/ColorPalette/index.js +1 -3
  402. package/dist/es2019/ui/ConfigPanel/Header.js +5 -2
  403. package/dist/es2019/ui/ContentStyles/index.js +2 -3
  404. package/dist/es2019/ui/ContextPanel/index.js +3 -1
  405. package/dist/es2019/ui/ElementBrowser/ModalElementBrowser.js +2 -3
  406. package/dist/es2019/ui/ToolbarHelp/index.js +26 -11
  407. package/dist/es2019/ui/ToolbarHelp/messages.js +8 -0
  408. package/dist/es2019/utils/document.js +19 -5
  409. package/dist/es2019/utils/keymap.js +2 -2
  410. package/dist/es2019/utils/performance/instrumented-plugin.js +16 -8
  411. package/dist/es2019/utils/performance/safer-transactions.js +43 -0
  412. package/dist/es2019/utils/plugin-state-factory.js +1 -1
  413. package/dist/es2019/version-wrapper.js +1 -1
  414. package/dist/es2019/version.json +1 -1
  415. package/dist/esm/actions/index.js +33 -0
  416. package/dist/esm/create-editor/ReactEditorView.js +32 -15
  417. package/dist/esm/create-editor/create-editor.js +8 -3
  418. package/dist/esm/create-editor/create-plugins-list.js +7 -7
  419. package/dist/esm/labs/next/presets/cxhtml.js +3 -1
  420. package/dist/esm/labs/next/presets/mobile.js +6 -9
  421. package/dist/esm/plugins/alignment/pm-plugins/main.js +3 -2
  422. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/icon-map.js +24 -10
  423. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/index.js +5 -3
  424. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/messages.js +15 -0
  425. package/dist/esm/plugins/analytics/plugin.js +2 -2
  426. package/dist/esm/plugins/analytics/types/enums.js +3 -0
  427. package/dist/esm/plugins/annotation/pm-plugins/inline-comment.js +2 -2
  428. package/dist/esm/plugins/avatar-group/index.js +1 -1
  429. package/dist/esm/plugins/avatar-group/messages.js +8 -0
  430. package/dist/esm/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +9 -3
  431. package/dist/esm/plugins/base/pm-plugins/better-type-history.js +3 -2
  432. package/dist/esm/plugins/base/pm-plugins/context-identifier.js +3 -2
  433. package/dist/esm/plugins/base/pm-plugins/decoration.js +3 -2
  434. package/dist/esm/plugins/base/pm-plugins/filter-steps.js +2 -2
  435. package/dist/esm/plugins/base/pm-plugins/fix-chrome-88-selection.js +3 -2
  436. package/dist/esm/plugins/base/pm-plugins/fix-chrome-spell-checking.js +3 -2
  437. package/dist/esm/plugins/base/pm-plugins/focus-handler.js +3 -2
  438. package/dist/esm/plugins/base/pm-plugins/frozen-editor.js +3 -2
  439. package/dist/esm/plugins/base/pm-plugins/inline-cursor-target.js +3 -2
  440. package/dist/esm/plugins/base/pm-plugins/newline-preserve-marks.js +3 -2
  441. package/dist/esm/plugins/base/pm-plugins/react-nodeview.js +3 -2
  442. package/dist/esm/plugins/base/pm-plugins/scroll-gutter.js +2 -2
  443. package/dist/esm/plugins/block-type/pm-plugins/main.js +3 -2
  444. package/dist/esm/plugins/breakout/index.js +2 -2
  445. package/dist/esm/plugins/caption/pm-plugins/main.js +2 -2
  446. package/dist/esm/plugins/card/index.js +12 -3
  447. package/dist/esm/plugins/card/messages.js +40 -0
  448. package/dist/esm/plugins/card/nodeviews/blockCard.js +4 -5
  449. package/dist/esm/plugins/card/nodeviews/embedCard.js +10 -0
  450. package/dist/esm/plugins/card/nodeviews/genericCard.js +31 -3
  451. package/dist/esm/plugins/card/nodeviews/inlineCard.js +6 -16
  452. package/dist/esm/plugins/card/pm-plugins/doc.js +49 -4
  453. package/dist/esm/plugins/card/pm-plugins/keymap.js +71 -0
  454. package/dist/esm/plugins/card/pm-plugins/main.js +3 -4
  455. package/dist/esm/plugins/card/ui/LinkToolbarAppearance.js +18 -0
  456. package/dist/esm/plugins/card/ui/LinkToolbarButtonGroup.js +10 -0
  457. package/dist/esm/plugins/card/ui/LinkToolbarIconDropdown.js +10 -0
  458. package/dist/esm/plugins/card/ui/ResizableEmbedCard.js +5 -2
  459. package/dist/esm/plugins/card/ui/assets/card.js +24 -0
  460. package/dist/esm/plugins/card/ui/assets/embed.js +24 -0
  461. package/dist/esm/plugins/card/ui/assets/inline.js +24 -0
  462. package/dist/esm/plugins/card/ui/assets/url.js +26 -0
  463. package/dist/esm/plugins/card/ui/styled.js +4 -3
  464. package/dist/esm/plugins/clear-marks-on-change-to-empty-document/index.js +3 -2
  465. package/dist/esm/plugins/clipboard/pm-plugins/main.js +3 -2
  466. package/dist/esm/plugins/code-bidi-warning/pm-plugins/main.js +2 -2
  467. package/dist/esm/plugins/code-block/pm-plugins/ide-ux.js +3 -2
  468. package/dist/esm/plugins/code-block/pm-plugins/keymaps.js +1 -1
  469. package/dist/esm/plugins/code-block/pm-plugins/main.js +3 -2
  470. package/dist/esm/plugins/code-block/toolbar.js +4 -2
  471. package/dist/esm/plugins/collab-edit/actions.js +10 -0
  472. package/dist/esm/plugins/collab-edit/events/initialize.js +16 -5
  473. package/dist/esm/plugins/collab-edit/index.js +8 -1
  474. package/dist/esm/plugins/collab-edit/native-collab-provider-plugin.js +31 -0
  475. package/dist/esm/plugins/collab-edit/plugin.js +18 -2
  476. package/dist/esm/plugins/collab-edit/provider/index.js +1 -2
  477. package/dist/esm/plugins/context-panel/index.js +3 -2
  478. package/dist/esm/plugins/custom-autoformat/index.js +2 -2
  479. package/dist/esm/plugins/date/pm-plugins/main.js +2 -2
  480. package/dist/esm/plugins/editor-disabled/index.js +3 -2
  481. package/dist/esm/plugins/emoji/index.js +3 -2
  482. package/dist/esm/plugins/emoji/nodeviews/emoji-next.js +3 -13
  483. package/dist/esm/plugins/emoji/nodeviews/emoji.js +1 -8
  484. package/dist/esm/plugins/expand/index.js +1 -1
  485. package/dist/esm/plugins/expand/nodeviews/index.js +14 -3
  486. package/dist/esm/plugins/expand/pm-plugins/keymap.js +13 -1
  487. package/dist/esm/plugins/expand/pm-plugins/main.js +13 -5
  488. package/dist/esm/plugins/expand/toolbar.js +2 -1
  489. package/dist/esm/plugins/extension/pm-plugins/main.js +2 -2
  490. package/dist/esm/plugins/extension/pm-plugins/unique-id.js +3 -2
  491. package/dist/esm/plugins/extension/toolbar.js +10 -5
  492. package/dist/esm/plugins/fake-text-cursor/index.js +2 -2
  493. package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +11 -6
  494. package/dist/esm/plugins/feature-flags-context/get-feature-flags.js +4 -0
  495. package/dist/esm/plugins/feature-flags-context/index.js +3 -3
  496. package/dist/esm/plugins/feature-flags-context/plugin-key.js +2 -0
  497. package/dist/esm/plugins/find-replace/plugin.js +2 -2
  498. package/dist/esm/plugins/find-replace/ui/Find.js +17 -12
  499. package/dist/esm/plugins/floating-toolbar/index.js +3 -2
  500. package/dist/esm/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin.js +2 -2
  501. package/dist/esm/plugins/floating-toolbar/ui/Button.js +8 -2
  502. package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +8 -5
  503. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +9 -5
  504. package/dist/esm/plugins/floating-toolbar/ui/messages.js +10 -0
  505. package/dist/esm/plugins/fragment/index.js +2 -2
  506. package/dist/esm/plugins/fragment/pm-plugins/fragment-consistency.js +3 -2
  507. package/dist/esm/plugins/help-dialog/index.js +2 -2
  508. package/dist/esm/plugins/help-dialog/ui/index.js +2 -1
  509. package/dist/esm/plugins/history/index.js +3 -2
  510. package/dist/esm/plugins/hyperlink/Toolbar.js +6 -3
  511. package/dist/esm/plugins/hyperlink/pm-plugins/fake-cursor-for-toolbar.js +2 -2
  512. package/dist/esm/plugins/hyperlink/pm-plugins/main.js +49 -6
  513. package/dist/esm/plugins/hyperlink/styles.js +1 -0
  514. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +6 -1
  515. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/messages.js +33 -0
  516. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/utils.js +57 -18
  517. package/dist/esm/plugins/hyperlink/utils.js +4 -0
  518. package/dist/esm/plugins/image-upload/pm-plugins/main.js +2 -2
  519. package/dist/esm/plugins/jira-issue/index.js +3 -2
  520. package/dist/esm/plugins/layout/pm-plugins/main.js +3 -2
  521. package/dist/esm/plugins/layout/toolbar.js +4 -2
  522. package/dist/esm/plugins/list/commands/indent-list.js +2 -8
  523. package/dist/esm/plugins/list/commands/index.js +1 -1
  524. package/dist/esm/plugins/list/commands/outdent-list.js +3 -2
  525. package/dist/esm/plugins/list/pm-plugins/main.js +3 -2
  526. package/dist/esm/plugins/list/utils/node.js +11 -3
  527. package/dist/esm/plugins/list/utils/selection.js +7 -1
  528. package/dist/esm/plugins/macro/index.js +2 -2
  529. package/dist/esm/plugins/max-content-size/index.js +3 -2
  530. package/dist/esm/plugins/media/index.js +2 -1
  531. package/dist/esm/plugins/media/nodeviews/mediaGroup.js +6 -3
  532. package/dist/esm/plugins/media/nodeviews/messages.js +8 -0
  533. package/dist/esm/plugins/media/pm-plugins/alt-text/index.js +3 -2
  534. package/dist/esm/plugins/media/pm-plugins/linking/index.js +3 -2
  535. package/dist/esm/plugins/media/pm-plugins/main.js +16 -8
  536. package/dist/esm/plugins/media/pm-plugins/media-editor.js +2 -2
  537. package/dist/esm/plugins/media/toolbar/commands.js +49 -0
  538. package/dist/esm/plugins/media/toolbar/index.js +9 -39
  539. package/dist/esm/plugins/media/ui/Media/DropPlaceholder.js +14 -4
  540. package/dist/esm/plugins/media/ui/Media/drop-placeholder-messages.js +8 -0
  541. package/dist/esm/plugins/media/ui/ToolbarMedia/index.js +8 -4
  542. package/dist/esm/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
  543. package/dist/esm/plugins/media/utils/media-common.js +5 -4
  544. package/dist/esm/plugins/mentions/messages.js +10 -0
  545. package/dist/esm/plugins/mentions/nodeviews/mention.js +3 -9
  546. package/dist/esm/plugins/mentions/pm-plugins/main.js +2 -2
  547. package/dist/esm/plugins/mentions/ui/InviteItem/index.js +5 -4
  548. package/dist/esm/plugins/mentions/ui/ToolbarMention/index.js +6 -3
  549. package/dist/esm/plugins/mobile-dimensions/index.js +16 -2
  550. package/dist/esm/plugins/mobile-selection/content-in-selection.js +4 -4
  551. package/dist/esm/plugins/mobile-selection/mobile-selection-plugin.js +3 -2
  552. package/dist/esm/plugins/panel/pm-plugins/main.js +2 -2
  553. package/dist/esm/plugins/panel/toolbar.js +13 -6
  554. package/dist/esm/plugins/paste/handlers.js +31 -12
  555. package/dist/esm/plugins/paste/index.js +3 -2
  556. package/dist/esm/plugins/paste/pm-plugins/analytics.js +22 -20
  557. package/dist/esm/plugins/paste/pm-plugins/clipboard-text-serializer.js +37 -0
  558. package/dist/esm/plugins/paste/pm-plugins/main.js +30 -4
  559. package/dist/esm/plugins/paste/{util.js → util/index.js} +0 -0
  560. package/dist/esm/plugins/paste/util/tinyMCE.js +195 -0
  561. package/dist/esm/plugins/placeholder/index.js +3 -2
  562. package/dist/esm/plugins/placeholder-text/index.js +3 -2
  563. package/dist/esm/plugins/quick-insert/index.js +2 -2
  564. package/dist/esm/plugins/rank.js +1 -1
  565. package/dist/esm/plugins/scroll-into-view/index.js +3 -2
  566. package/dist/esm/plugins/selection/pm-plugins/gap-cursor-main.js +3 -2
  567. package/dist/esm/plugins/selection/pm-plugins/selection-main.js +3 -2
  568. package/dist/esm/plugins/status/nodeviews/status.js +1 -8
  569. package/dist/esm/plugins/status/plugin.js +3 -2
  570. package/dist/esm/plugins/status/ui/statusPicker.js +2 -4
  571. package/dist/esm/plugins/table/commands/misc.js +12 -1
  572. package/dist/esm/plugins/table/index.js +2 -1
  573. package/dist/esm/plugins/table/nodeviews/TableComponent.js +1 -19
  574. package/dist/esm/plugins/table/pm-plugins/decorations/plugin.js +3 -2
  575. package/dist/esm/plugins/table/pm-plugins/main.js +2 -2
  576. package/dist/esm/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +3 -2
  577. package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +73 -37
  578. package/dist/esm/plugins/table/pm-plugins/sticky-headers/plugin.js +2 -2
  579. package/dist/esm/plugins/table/pm-plugins/table-local-id.js +3 -2
  580. package/dist/esm/plugins/table/pm-plugins/table-resizing/plugin.js +2 -2
  581. package/dist/esm/plugins/table/toolbar.js +2 -1
  582. package/dist/esm/plugins/table/ui/LayoutButton/index.js +85 -28
  583. package/dist/esm/plugins/table/ui/common-styles.css.js +3 -2
  584. package/dist/esm/plugins/tasks-and-decisions/pm-plugins/main.js +3 -2
  585. package/dist/esm/plugins/text-color/index.js +0 -3
  586. package/dist/esm/plugins/text-color/pm-plugins/main.js +6 -24
  587. package/dist/esm/plugins/text-color/ui/ToolbarTextColor/index.js +10 -79
  588. package/dist/esm/plugins/text-color/ui/ToolbarTextColor/styles.js +4 -5
  589. package/dist/esm/plugins/text-formatting/pm-plugins/clear-formatting.js +3 -2
  590. package/dist/esm/plugins/text-formatting/pm-plugins/cursor.js +3 -2
  591. package/dist/esm/plugins/text-formatting/pm-plugins/main.js +2 -2
  592. package/dist/esm/plugins/type-ahead/index.js +17 -0
  593. package/dist/esm/plugins/type-ahead/messages.js +8 -0
  594. package/dist/esm/plugins/type-ahead/pm-plugins/insert-item-plugin.js +2 -2
  595. package/dist/esm/plugins/type-ahead/pm-plugins/main.js +10 -9
  596. package/dist/esm/plugins/type-ahead/ui/InputQuery.js +12 -4
  597. package/dist/esm/plugins/type-ahead/ui/TypeAheadList.js +7 -3
  598. package/dist/esm/plugins/undo-redo/pm-plugins/main.js +2 -2
  599. package/dist/esm/plugins/unsupported-content/index.js +3 -2
  600. package/dist/esm/plugins/view-update-subscription/index.js +3 -2
  601. package/dist/esm/plugins/width/index.js +3 -2
  602. package/dist/esm/ui/Alignment/index.js +4 -2
  603. package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +7 -2
  604. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +11 -4
  605. package/dist/esm/ui/Appearance/FullPage/messages.js +18 -0
  606. package/dist/esm/ui/ChromeCollapsed/index.js +4 -2
  607. package/dist/esm/ui/ChromeCollapsed/messages.js +8 -0
  608. package/dist/esm/ui/ColorPalette/index.js +1 -3
  609. package/dist/esm/ui/ConfigPanel/Header.js +5 -2
  610. package/dist/esm/ui/ContentStyles/index.js +2 -2
  611. package/dist/esm/ui/ContextPanel/index.js +3 -1
  612. package/dist/esm/ui/ElementBrowser/ModalElementBrowser.js +2 -3
  613. package/dist/esm/ui/ToolbarHelp/index.js +18 -5
  614. package/dist/esm/ui/ToolbarHelp/messages.js +8 -0
  615. package/dist/esm/utils/document.js +18 -4
  616. package/dist/esm/utils/keymap.js +2 -2
  617. package/dist/esm/utils/performance/instrumented-plugin.js +20 -11
  618. package/dist/esm/utils/performance/safer-transactions.js +47 -0
  619. package/dist/esm/utils/plugin-state-factory.js +1 -1
  620. package/dist/esm/version-wrapper.js +1 -1
  621. package/dist/esm/version.json +1 -1
  622. package/dist/types/actions/index.d.ts +11 -0
  623. package/dist/types/create-editor/create-editor.d.ts +2 -2
  624. package/dist/types/create-editor/get-plugins.d.ts +3 -2
  625. package/dist/types/plugins/alignment/pm-plugins/keymap.d.ts +2 -2
  626. package/dist/types/plugins/alignment/pm-plugins/main.d.ts +3 -2
  627. package/dist/types/plugins/alignment/ui/ToolbarAlignment/icon-map.d.ts +4 -4
  628. package/dist/types/plugins/alignment/ui/ToolbarAlignment/messages.d.ts +15 -0
  629. package/dist/types/plugins/analytics/types/enums.d.ts +3 -0
  630. package/dist/types/plugins/analytics/types/events.d.ts +8 -2
  631. package/dist/types/plugins/analytics/types/experimental-events.d.ts +1 -8
  632. package/dist/types/plugins/analytics/types/general-events.d.ts +5 -1
  633. package/dist/types/plugins/analytics/types/media-events.d.ts +6 -1
  634. package/dist/types/plugins/analytics/types/paste-events.d.ts +1 -0
  635. package/dist/types/plugins/analytics/utils.d.ts +2 -2
  636. package/dist/types/plugins/annotation/pm-plugins/inline-comment.d.ts +2 -2
  637. package/dist/types/plugins/annotation/pm-plugins/keymap.d.ts +2 -2
  638. package/dist/types/plugins/annotation/pm-plugins/plugin-factory.d.ts +1 -2
  639. package/dist/types/plugins/avatar-group/messages.d.ts +7 -0
  640. package/dist/types/plugins/avatar-group/ui/AvatarGroupPluginWrapper.d.ts +2 -1
  641. package/dist/types/plugins/base/pm-plugins/better-type-history.d.ts +2 -2
  642. package/dist/types/plugins/base/pm-plugins/context-identifier.d.ts +3 -2
  643. package/dist/types/plugins/base/pm-plugins/decoration.d.ts +3 -2
  644. package/dist/types/plugins/base/pm-plugins/filter-steps.d.ts +2 -2
  645. package/dist/types/plugins/base/pm-plugins/fix-chrome-88-selection.d.ts +3 -2
  646. package/dist/types/plugins/base/pm-plugins/fix-chrome-spell-checking.d.ts +2 -2
  647. package/dist/types/plugins/base/pm-plugins/focus-handler.d.ts +3 -2
  648. package/dist/types/plugins/base/pm-plugins/frozen-editor.d.ts +3 -2
  649. package/dist/types/plugins/base/pm-plugins/inline-cursor-target.d.ts +5 -4
  650. package/dist/types/plugins/base/pm-plugins/newline-preserve-marks.d.ts +3 -2
  651. package/dist/types/plugins/base/pm-plugins/react-nodeview.d.ts +4 -3
  652. package/dist/types/plugins/base/pm-plugins/scroll-gutter.d.ts +2 -2
  653. package/dist/types/plugins/block-type/pm-plugins/input-rule.d.ts +2 -2
  654. package/dist/types/plugins/block-type/pm-plugins/keymap.d.ts +2 -2
  655. package/dist/types/plugins/block-type/pm-plugins/main.d.ts +3 -7
  656. package/dist/types/plugins/caption/pm-plugins/keymap.d.ts +2 -2
  657. package/dist/types/plugins/caption/pm-plugins/main.d.ts +2 -2
  658. package/dist/types/plugins/card/messages.d.ts +40 -0
  659. package/dist/types/plugins/card/nodeviews/blockCard.d.ts +3 -3
  660. package/dist/types/plugins/card/nodeviews/embedCard.d.ts +1 -0
  661. package/dist/types/plugins/card/nodeviews/genericCard.d.ts +4 -0
  662. package/dist/types/plugins/card/nodeviews/inlineCard.d.ts +3 -6
  663. package/dist/types/plugins/card/pm-plugins/doc.d.ts +1 -0
  664. package/dist/types/plugins/card/pm-plugins/keymap.d.ts +3 -0
  665. package/dist/types/plugins/card/pm-plugins/main.d.ts +3 -3
  666. package/dist/types/plugins/card/pm-plugins/util/state.d.ts +2 -2
  667. package/dist/types/plugins/card/ui/LinkToolbarButtonGroup.d.ts +5 -0
  668. package/dist/types/plugins/card/ui/LinkToolbarIconDropdown.d.ts +5 -0
  669. package/dist/types/plugins/card/ui/assets/card.d.ts +3 -0
  670. package/dist/types/plugins/card/ui/assets/embed.d.ts +3 -0
  671. package/dist/types/plugins/card/ui/assets/inline.d.ts +3 -0
  672. package/dist/types/plugins/card/ui/assets/url.d.ts +3 -0
  673. package/dist/types/plugins/card/ui/styled.d.ts +2 -0
  674. package/dist/types/plugins/clear-marks-on-change-to-empty-document/index.d.ts +3 -2
  675. package/dist/types/plugins/clipboard/pm-plugins/main.d.ts +2 -2
  676. package/dist/types/plugins/code-bidi-warning/pm-plugins/main.d.ts +2 -2
  677. package/dist/types/plugins/code-bidi-warning/pm-plugins/plugin-factory.d.ts +1 -1
  678. package/dist/types/plugins/code-block/pm-plugins/ide-ux.d.ts +2 -2
  679. package/dist/types/plugins/code-block/pm-plugins/keymaps.d.ts +2 -2
  680. package/dist/types/plugins/code-block/pm-plugins/main.d.ts +2 -2
  681. package/dist/types/plugins/collab-edit/index.d.ts +0 -1
  682. package/dist/types/plugins/collab-edit/native-collab-provider-plugin.d.ts +7 -0
  683. package/dist/types/plugins/collab-edit/plugin-state.d.ts +2 -2
  684. package/dist/types/plugins/collab-edit/plugin.d.ts +2 -2
  685. package/dist/types/plugins/collab-edit/provider/index.d.ts +0 -1
  686. package/dist/types/plugins/collab-edit/types.d.ts +4 -0
  687. package/dist/types/plugins/custom-autoformat/index.d.ts +3 -2
  688. package/dist/types/plugins/date/pm-plugins/keymap.d.ts +2 -2
  689. package/dist/types/plugins/date/pm-plugins/utils.d.ts +3 -3
  690. package/dist/types/plugins/editor-disabled/index.d.ts +3 -2
  691. package/dist/types/plugins/emoji/index.d.ts +3 -2
  692. package/dist/types/plugins/emoji/pm-plugins/ascii-input-rules.d.ts +4 -3
  693. package/dist/types/plugins/emoji/types.d.ts +0 -1
  694. package/dist/types/plugins/expand/index.d.ts +1 -0
  695. package/dist/types/plugins/expand/nodeviews/index.d.ts +6 -2
  696. package/dist/types/plugins/expand/pm-plugins/keymap.d.ts +2 -2
  697. package/dist/types/plugins/expand/pm-plugins/main.d.ts +3 -2
  698. package/dist/types/plugins/expand/pm-plugins/plugin-factory.d.ts +1 -1
  699. package/dist/types/plugins/extension/plugin-factory.d.ts +1 -1
  700. package/dist/types/plugins/extension/pm-plugins/keymap.d.ts +2 -2
  701. package/dist/types/plugins/extension/pm-plugins/main.d.ts +2 -2
  702. package/dist/types/plugins/extension/pm-plugins/unique-id.d.ts +2 -2
  703. package/dist/types/plugins/fake-text-cursor/index.d.ts +2 -2
  704. package/dist/types/plugins/feature-flags-context/get-enabled-feature-flag-keys.d.ts +1 -1
  705. package/dist/types/plugins/feature-flags-context/get-feature-flags.d.ts +3 -0
  706. package/dist/types/plugins/feature-flags-context/index.d.ts +1 -2
  707. package/dist/types/plugins/feature-flags-context/plugin-key.d.ts +2 -0
  708. package/dist/types/plugins/find-replace/keymap.d.ts +2 -1
  709. package/dist/types/plugins/find-replace/plugin.d.ts +3 -3
  710. package/dist/types/plugins/find-replace/utils/index.d.ts +2 -2
  711. package/dist/types/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin-factory.d.ts +1 -1
  712. package/dist/types/plugins/floating-toolbar/pm-plugins/toolbar-data/plugin.d.ts +2 -2
  713. package/dist/types/plugins/floating-toolbar/types.d.ts +1 -0
  714. package/dist/types/plugins/floating-toolbar/ui/Button.d.ts +2 -1
  715. package/dist/types/plugins/floating-toolbar/ui/DropdownMenu.d.ts +6 -5
  716. package/dist/types/plugins/floating-toolbar/ui/Toolbar.d.ts +6 -5
  717. package/dist/types/plugins/floating-toolbar/ui/messages.d.ts +10 -0
  718. package/dist/types/plugins/fragment/index.d.ts +2 -2
  719. package/dist/types/plugins/fragment/pm-plugins/fragment-consistency.d.ts +2 -2
  720. package/dist/types/plugins/help-dialog/index.d.ts +2 -2
  721. package/dist/types/plugins/hyperlink/pm-plugins/fake-cursor-for-toolbar.d.ts +2 -2
  722. package/dist/types/plugins/hyperlink/pm-plugins/input-rule.d.ts +2 -2
  723. package/dist/types/plugins/hyperlink/pm-plugins/keymap.d.ts +2 -2
  724. package/dist/types/plugins/hyperlink/pm-plugins/main.d.ts +3 -2
  725. package/dist/types/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.d.ts +5 -0
  726. package/dist/types/plugins/hyperlink/ui/HyperlinkAddToolbar/messages.d.ts +32 -0
  727. package/dist/types/plugins/image-upload/pm-plugins/input-rule.d.ts +2 -2
  728. package/dist/types/plugins/image-upload/pm-plugins/main.d.ts +2 -3
  729. package/dist/types/plugins/indentation/pm-plugins/keymap.d.ts +2 -2
  730. package/dist/types/plugins/layout/pm-plugins/main.d.ts +2 -3
  731. package/dist/types/plugins/list/pm-plugins/input-rules/index.d.ts +2 -2
  732. package/dist/types/plugins/list/pm-plugins/keymap.d.ts +2 -2
  733. package/dist/types/plugins/list/pm-plugins/main.d.ts +3 -2
  734. package/dist/types/plugins/list/utils/selection.d.ts +1 -0
  735. package/dist/types/plugins/macro/index.d.ts +2 -2
  736. package/dist/types/plugins/max-content-size/index.d.ts +3 -2
  737. package/dist/types/plugins/media/nodeviews/mediaGroup.d.ts +6 -19
  738. package/dist/types/plugins/media/nodeviews/messages.d.ts +7 -0
  739. package/dist/types/plugins/media/pm-plugins/alt-text/index.d.ts +3 -2
  740. package/dist/types/plugins/media/pm-plugins/alt-text/keymap.d.ts +2 -2
  741. package/dist/types/plugins/media/pm-plugins/keymap-media-single.d.ts +2 -2
  742. package/dist/types/plugins/media/pm-plugins/keymap.d.ts +2 -2
  743. package/dist/types/plugins/media/pm-plugins/linking/index.d.ts +4 -3
  744. package/dist/types/plugins/media/pm-plugins/linking/keymap.d.ts +2 -2
  745. package/dist/types/plugins/media/pm-plugins/main.d.ts +4 -2
  746. package/dist/types/plugins/media/pm-plugins/media-editor-plugin-factory.d.ts +1 -1
  747. package/dist/types/plugins/media/pm-plugins/media-editor.d.ts +2 -2
  748. package/dist/types/plugins/media/toolbar/commands.d.ts +1 -0
  749. package/dist/types/plugins/media/ui/Media/drop-placeholder-messages.d.ts +7 -0
  750. package/dist/types/plugins/media/ui/ToolbarMedia/index.d.ts +6 -3
  751. package/dist/types/plugins/media/ui/ToolbarMedia/toolbar-media-messages.d.ts +7 -0
  752. package/dist/types/plugins/media/utils/media-common.d.ts +2 -1
  753. package/dist/types/plugins/mentions/messages.d.ts +10 -0
  754. package/dist/types/plugins/mentions/pm-plugins/main.d.ts +2 -2
  755. package/dist/types/plugins/mentions/types.d.ts +0 -1
  756. package/dist/types/plugins/mentions/ui/InviteItem/index.d.ts +6 -3
  757. package/dist/types/plugins/mentions/ui/ToolbarMention/index.d.ts +6 -5
  758. package/dist/types/plugins/mobile-dimensions/plugin-factory.d.ts +1 -1
  759. package/dist/types/plugins/mobile-selection/mobile-selection-plugin.d.ts +3 -2
  760. package/dist/types/plugins/panel/pm-plugins/keymaps.d.ts +2 -2
  761. package/dist/types/plugins/panel/pm-plugins/main.d.ts +2 -2
  762. package/dist/types/plugins/paste/index.d.ts +2 -1
  763. package/dist/types/plugins/paste/pm-plugins/clipboard-text-serializer.d.ts +13 -0
  764. package/dist/types/plugins/paste/pm-plugins/main.d.ts +3 -2
  765. package/dist/types/plugins/paste/{util.d.ts → util/index.d.ts} +1 -1
  766. package/dist/types/plugins/paste/util/tinyMCE.d.ts +32 -0
  767. package/dist/types/plugins/placeholder/index.d.ts +3 -2
  768. package/dist/types/plugins/placeholder-text/index.d.ts +2 -2
  769. package/dist/types/plugins/rule/pm-plugins/input-rule.d.ts +3 -2
  770. package/dist/types/plugins/rule/pm-plugins/keymap.d.ts +2 -2
  771. package/dist/types/plugins/save-on-enter/index.d.ts +2 -2
  772. package/dist/types/plugins/selection/plugin-factory.d.ts +1 -2
  773. package/dist/types/plugins/selection/pm-plugins/gap-cursor-keymap.d.ts +2 -2
  774. package/dist/types/plugins/selection/pm-plugins/gap-cursor-main.d.ts +2 -2
  775. package/dist/types/plugins/selection/pm-plugins/keymap.d.ts +2 -1
  776. package/dist/types/plugins/selection/pm-plugins/selection-main.d.ts +3 -2
  777. package/dist/types/plugins/selection/utils.d.ts +2 -2
  778. package/dist/types/plugins/status/keymap.d.ts +2 -2
  779. package/dist/types/plugins/status/plugin.d.ts +2 -2
  780. package/dist/types/plugins/status/types.d.ts +0 -1
  781. package/dist/types/plugins/submit-editor/index.d.ts +2 -2
  782. package/dist/types/plugins/table/handlers.d.ts +2 -2
  783. package/dist/types/plugins/table/pm-plugins/decorations/plugin.d.ts +4 -3
  784. package/dist/types/plugins/table/pm-plugins/decorations/utils/types.d.ts +2 -2
  785. package/dist/types/plugins/table/pm-plugins/keymap.d.ts +2 -2
  786. package/dist/types/plugins/table/pm-plugins/main.d.ts +2 -2
  787. package/dist/types/plugins/table/pm-plugins/plugin-factory.d.ts +1 -1
  788. package/dist/types/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.d.ts +3 -2
  789. package/dist/types/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.d.ts +5 -3
  790. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin-state.d.ts +1 -1
  791. package/dist/types/plugins/table/pm-plugins/sticky-headers/plugin.d.ts +2 -2
  792. package/dist/types/plugins/table/pm-plugins/table-local-id.d.ts +2 -2
  793. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin-factory.d.ts +2 -3
  794. package/dist/types/plugins/table/pm-plugins/table-resizing/plugin.d.ts +2 -2
  795. package/dist/types/plugins/table/pm-plugins/table-selection-keymap.d.ts +2 -2
  796. package/dist/types/plugins/table/ui/LayoutButton/index.d.ts +2 -0
  797. package/dist/types/plugins/table/utils/collapse.d.ts +2 -2
  798. package/dist/types/plugins/table/utils/decoration.d.ts +3 -3
  799. package/dist/types/plugins/tasks-and-decisions/pm-plugins/input-rules.d.ts +2 -2
  800. package/dist/types/plugins/tasks-and-decisions/pm-plugins/keymaps.d.ts +2 -2
  801. package/dist/types/plugins/tasks-and-decisions/pm-plugins/main.d.ts +2 -2
  802. package/dist/types/plugins/text-color/pm-plugins/main.d.ts +3 -2
  803. package/dist/types/plugins/text-color/ui/ToolbarTextColor/index.d.ts +0 -14
  804. package/dist/types/plugins/text-color/ui/ToolbarTextColor/styles.d.ts +4 -5
  805. package/dist/types/plugins/text-formatting/pm-plugins/clear-formatting-keymap.d.ts +2 -2
  806. package/dist/types/plugins/text-formatting/pm-plugins/clear-formatting.d.ts +3 -2
  807. package/dist/types/plugins/text-formatting/pm-plugins/cursor.d.ts +2 -2
  808. package/dist/types/plugins/text-formatting/pm-plugins/input-rule.d.ts +2 -2
  809. package/dist/types/plugins/text-formatting/pm-plugins/keymap.d.ts +2 -2
  810. package/dist/types/plugins/text-formatting/pm-plugins/main.d.ts +2 -2
  811. package/dist/types/plugins/text-formatting/pm-plugins/smart-input-rule.d.ts +1 -1
  812. package/dist/types/plugins/type-ahead/index.d.ts +9 -1
  813. package/dist/types/plugins/type-ahead/messages.d.ts +7 -0
  814. package/dist/types/plugins/type-ahead/pm-plugins/input-rules.d.ts +2 -2
  815. package/dist/types/plugins/type-ahead/pm-plugins/insert-item-plugin.d.ts +2 -2
  816. package/dist/types/plugins/type-ahead/pm-plugins/main.d.ts +2 -2
  817. package/dist/types/plugins/type-ahead/pm-plugins/reducer.d.ts +2 -2
  818. package/dist/types/plugins/type-ahead/types.d.ts +2 -2
  819. package/dist/types/plugins/type-ahead/ui/TypeAheadList.d.ts +4 -1
  820. package/dist/types/plugins/undo-redo/pm-plugins/keymaps.d.ts +2 -2
  821. package/dist/types/plugins/width/index.d.ts +3 -2
  822. package/dist/types/types/feature-flags.d.ts +35 -0
  823. package/dist/types/types/pm-plugin.d.ts +2 -2
  824. package/dist/types/ui/Appearance/FullPage/FullPageContentArea.d.ts +4 -1
  825. package/dist/types/ui/Appearance/FullPage/FullPageToolbar.d.ts +5 -1
  826. package/dist/types/ui/Appearance/FullPage/messages.d.ts +18 -0
  827. package/dist/types/ui/ChromeCollapsed/index.d.ts +5 -7
  828. package/dist/types/ui/ChromeCollapsed/messages.d.ts +7 -0
  829. package/dist/types/ui/ColorPalette/index.d.ts +0 -1
  830. package/dist/types/ui/ToolbarHelp/index.d.ts +5 -2
  831. package/dist/types/ui/ToolbarHelp/messages.d.ts +7 -0
  832. package/dist/types/utils/document.d.ts +5 -5
  833. package/dist/types/utils/input-rules.d.ts +3 -2
  834. package/dist/types/utils/is-text-input.d.ts +2 -2
  835. package/dist/types/utils/keymap.d.ts +2 -2
  836. package/dist/types/utils/performance/instrumented-plugin.d.ts +12 -4
  837. package/dist/types/utils/performance/safer-transactions.d.ts +8 -0
  838. package/dist/types/utils/plugin-state-factory.d.ts +5 -5
  839. package/package.json +26 -26
  840. package/dist/cjs/plugins/collab-edit/provider/collab-provider.js +0 -376
  841. package/dist/cjs/ui/InlineNodeWrapper/index.js +0 -47
  842. package/dist/es2019/plugins/collab-edit/provider/collab-provider.js +0 -293
  843. package/dist/es2019/ui/InlineNodeWrapper/index.js +0 -28
  844. package/dist/esm/plugins/collab-edit/provider/collab-provider.js +0 -364
  845. package/dist/esm/ui/InlineNodeWrapper/index.js +0 -31
  846. package/dist/types/plugins/collab-edit/provider/collab-provider.d.ts +0 -45
  847. package/dist/types/ui/InlineNodeWrapper/index.d.ts +0 -15
@@ -1,4 +1,5 @@
1
- import { Plugin, TextSelection, Selection } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ import { TextSelection, Selection } from 'prosemirror-state';
2
3
  import { Decoration, DecorationSet } from 'prosemirror-view';
3
4
  import { keydownHandler } from 'prosemirror-keymap';
4
5
  import { findParentNodeOfType, findSelectedNodeOfType } from 'prosemirror-utils';
@@ -68,7 +69,7 @@ const getInitialPluginState = (options, state) => {
68
69
  };
69
70
  };
70
71
 
71
- export default (options => new Plugin({
72
+ export default (options => new SafePlugin({
72
73
  key: pluginKey,
73
74
  state: {
74
75
  init: (_, state) => getInitialPluginState(options, state),
@@ -51,7 +51,8 @@ const buildLayoutButton = (intl, item, currentLayout) => ({
51
51
  testId: item.title.id,
52
52
  title: intl.formatMessage(item.title),
53
53
  onClick: setPresetLayout(item.type),
54
- selected: !!currentLayout && currentLayout === item.type
54
+ selected: !!currentLayout && currentLayout === item.type,
55
+ tabIndex: null
55
56
  });
56
57
 
57
58
  export const layoutToolbarTitle = 'Layout floating controls';
@@ -75,7 +76,8 @@ export const buildToolbar = (state, intl, pos, _allowBreakout, addSidebarLayouts
75
76
  onMouseEnter: hoverDecoration(nodeType, true),
76
77
  onMouseLeave: hoverDecoration(nodeType, false),
77
78
  onFocus: hoverDecoration(nodeType, true),
78
- onBlur: hoverDecoration(nodeType, false)
79
+ onBlur: hoverDecoration(nodeType, false),
80
+ tabIndex: null
79
81
  };
80
82
  const layoutTypes = allowSingleColumnLayout ? LAYOUT_TYPES_WITH_SINGLE_COL : LAYOUT_TYPES;
81
83
  return {
@@ -1,12 +1,10 @@
1
- import { findParentNodeOfType } from 'prosemirror-utils';
2
1
  import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD, addAnalytics } from '../../analytics';
3
2
  import { hasValidListIndentationLevel } from '../utils/indentation';
4
3
  import { indentListItemsSelected as indentListAction } from '../actions/indent-list-items-selected';
5
4
  import { isBulletList } from '../utils/node';
6
5
  import { findFirstParentListNode } from '../utils/find';
7
6
  import { MAX_NESTED_LIST_INDENTATION } from '../types';
8
- import { isInsideListItem } from '../utils/selection';
9
- import { getListItemAttributes } from '../utils/selection';
7
+ import { isInsideListItem, isInsideTableCell, getListItemAttributes } from '../utils/selection';
10
8
  import { getCommonListAnalyticsAttributes } from '../utils/analytics';
11
9
  export function indentList(inputMethod = INPUT_METHOD.KEYBOARD) {
12
10
  return function (state, dispatch) {
@@ -21,16 +19,11 @@ export function indentList(inputMethod = INPUT_METHOD.KEYBOARD) {
21
19
  return false;
22
20
  }
23
21
 
24
- const {
25
- tableCell,
26
- tableHeader
27
- } = state.schema.nodes;
28
- const cell = findParentNodeOfType([tableCell, tableHeader])(state.selection);
29
22
  const firstListItemSelectedAttributes = getListItemAttributes($from);
30
23
  const parentListNode = findFirstParentListNode($from);
31
24
 
32
25
  if (!parentListNode || firstListItemSelectedAttributes && firstListItemSelectedAttributes.indentLevel === 0 && firstListItemSelectedAttributes.itemIndex === 0) {
33
- if (cell) {
26
+ if (isInsideTableCell(state)) {
34
27
  // dont consume tab, as table-keymap should move cursor to next cell
35
28
  return false;
36
29
  } else {
@@ -104,7 +104,7 @@ export function toggleList(inputMethod, listType) {
104
104
  const toNode = selection.$to.node(selection.$to.depth - 2);
105
105
  const transformedFrom = listInsideSelection.type.name === 'bulletList' ? ACTION_SUBJECT_ID.FORMAT_LIST_BULLET : ACTION_SUBJECT_ID.FORMAT_LIST_NUMBER;
106
106
 
107
- if (fromNode.type.name === listType && toNode.type.name === listType) {
107
+ if ((fromNode === null || fromNode === void 0 ? void 0 : fromNode.type.name) === listType && (toNode === null || toNode === void 0 ? void 0 : toNode.type.name) === listType) {
108
108
  let tr = state.tr;
109
109
  untoggleSelectedList(tr);
110
110
  addAnalytics(state, tr, {
@@ -1,5 +1,5 @@
1
1
  import { addAnalytics, ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD } from '../../analytics';
2
- import { isInsideListItem } from '../utils/selection';
2
+ import { isInsideListItem, isInsideTableCell } from '../utils/selection';
3
3
  import { isBulletList } from '../utils/node';
4
4
  import { findFirstParentListNode } from '../utils/find';
5
5
  import { getCommonListAnalyticsAttributes } from '../utils/analytics';
@@ -26,7 +26,8 @@ export function outdentList(inputMethod = INPUT_METHOD.KEYBOARD) {
26
26
 
27
27
  if (!customTr || !customTr.docChanged) {
28
28
  // Even though this is a non-operation, we don't want to send this event to the browser. Because if we return false, the browser will move the focus to another place
29
- return true;
29
+ // If inside table cell and can't outdent list, then let it handle by table keymap
30
+ return !isInsideTableCell(state);
30
31
  }
31
32
 
32
33
  addAnalytics(state, customTr, {
@@ -1,4 +1,5 @@
1
- import { Plugin, PluginKey } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ import { PluginKey } from 'prosemirror-state';
2
3
  import { DecorationSet, Decoration } from 'prosemirror-view';
3
4
  import { findParentNodeOfType } from 'prosemirror-utils';
4
5
  import { isWrappingPossible } from '../utils/selection';
@@ -99,7 +100,7 @@ const createInitialState = state => {
99
100
  };
100
101
  };
101
102
 
102
- export const createPlugin = eventDispatch => new Plugin({
103
+ export const createPlugin = eventDispatch => new SafePlugin({
103
104
  state: createPluginState(eventDispatch, createInitialState),
104
105
  key: listPluginKey,
105
106
  props: {
@@ -79,10 +79,16 @@ export const joinSiblingLists = ({
79
79
 
80
80
  const index = resolvedPos.index();
81
81
  const positionPreviousNode = resolvedPos.posAtIndex(index - 1);
82
- const positionCurrentNode = resolvedPos.posAtIndex(index);
82
+ const positionCurrentNode = resolvedPos.posAtIndex(index); // If the previous node is part of the selection, OR
83
+ // If the previous node is not part of the selection and the previous node has the same list type that we’re converting to
84
+
85
+ const joinBefore = positionPreviousNode >= from || nodeBefore.type === forceListType;
83
86
 
84
87
  if (forceListType) {
85
- tr.setNodeMarkup(positionPreviousNode, forceListType);
88
+ if (joinBefore) {
89
+ tr.setNodeMarkup(positionPreviousNode, forceListType);
90
+ }
91
+
86
92
  tr.setNodeMarkup(positionCurrentNode, forceListType);
87
93
  }
88
94
 
@@ -91,7 +97,9 @@ export const joinSiblingLists = ({
91
97
  tr.setNodeMarkup(positionPreviousNode, nodeType);
92
98
  }
93
99
 
94
- joins.push(pos);
100
+ if (joinBefore) {
101
+ joins.push(pos);
102
+ }
95
103
  });
96
104
 
97
105
  if (selection.empty && rootListNode && isListNode(rootListNode)) {
@@ -1,6 +1,6 @@
1
1
  import { findWrapping } from 'prosemirror-transform';
2
2
  import { Selection, TextSelection, NodeSelection } from 'prosemirror-state';
3
- import { findParentNodeClosestToPos, hasParentNodeOfType } from 'prosemirror-utils';
3
+ import { findParentNodeClosestToPos, findParentNodeOfType, hasParentNodeOfType } from 'prosemirror-utils';
4
4
  import { GapCursorSelection } from '../../selection/gap-cursor-selection';
5
5
  import { isListItemNode, isListNode, isParagraphNode } from './node';
6
6
  export const isPosInsideParagraph = $pos => {
@@ -44,6 +44,13 @@ export const isInsideListItem = state => {
44
44
 
45
45
  return hasParentNodeOfType(listItem)(state.selection) && isParagraphNode(parent);
46
46
  };
47
+ export const isInsideTableCell = state => {
48
+ const {
49
+ tableCell,
50
+ tableHeader
51
+ } = state.schema.nodes;
52
+ return !!findParentNodeOfType([tableCell, tableHeader])(state.selection);
53
+ };
47
54
  export const canJoinToPreviousListItem = state => {
48
55
  const {
49
56
  $from
@@ -1,8 +1,8 @@
1
- import { Plugin } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
2
  import { setMacroProvider } from './actions';
3
3
  import { pluginKey } from './plugin-key';
4
4
  export { insertMacroFromMacroBrowser, resolveMacro, runMacroAutoConvert, setMacroProvider } from './actions';
5
- export const createPlugin = (dispatch, providerFactory) => new Plugin({
5
+ export const createPlugin = (dispatch, providerFactory) => new SafePlugin({
6
6
  state: {
7
7
  init: () => ({
8
8
  macroProvider: null
@@ -1,4 +1,5 @@
1
- import { Plugin, PluginKey } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ import { PluginKey } from 'prosemirror-state';
2
3
  export const pluginKey = new PluginKey('maxContentSizePlugin');
3
4
  export function createPlugin(dispatch, maxContentSize) {
4
5
  if (!maxContentSize) {
@@ -6,7 +7,7 @@ export function createPlugin(dispatch, maxContentSize) {
6
7
  }
7
8
 
8
9
  let maxContentSizeReached = false;
9
- return new Plugin({
10
+ return new SafePlugin({
10
11
  filterTransaction(tr) {
11
12
  const result = tr.doc && tr.doc.nodeSize > maxContentSize;
12
13
 
@@ -71,6 +71,7 @@ const mediaPlugin = options => ({
71
71
  plugin: ({
72
72
  schema,
73
73
  dispatch,
74
+ getIntl,
74
75
  eventDispatcher,
75
76
  providerFactory,
76
77
  errorReporter,
@@ -92,7 +93,7 @@ const mediaPlugin = options => ({
92
93
  customDropzoneContainer: options && options.customDropzoneContainer,
93
94
  customMediaPicker: options && options.customMediaPicker,
94
95
  allowResizing: !!(options && options.allowResizing)
95
- }, reactContext, dispatch, options);
96
+ }, reactContext, getIntl, dispatch, options);
96
97
  }
97
98
  }, {
98
99
  name: 'mediaKeymap',
@@ -12,6 +12,8 @@ import { pluginKey as editorDisabledPluginKey } from '../../editor-disabled';
12
12
  import { stateKey as mediaStateKey } from '../pm-plugins/plugin-key';
13
13
  import { MediaNodeUpdater } from './mediaNodeUpdater';
14
14
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
15
+ import { injectIntl } from 'react-intl-next';
16
+ import { messages } from './messages';
15
17
 
16
18
  const isMediaGroupSelectedFromProps = props => {
17
19
  return isNodeSelectedOrInRange(props.anchorPos, props.headPos, props.getPos(), props.node.nodeSize);
@@ -29,7 +31,7 @@ const hasSelectionChanged = (oldProps, newProps) => {
29
31
  return false;
30
32
  };
31
33
 
32
- export default class MediaGroup extends React.Component {
34
+ class MediaGroup extends React.Component {
33
35
  constructor(_props) {
34
36
  super(_props);
35
37
 
@@ -122,7 +124,7 @@ export default class MediaGroup extends React.Component {
122
124
  actions: [{
123
125
  handler: disabled ? () => {} : this.mediaPluginState.handleMediaNodeRemoval.bind(null, undefined, getNodePos),
124
126
  icon: /*#__PURE__*/React.createElement(EditorCloseIcon, {
125
- label: "delete"
127
+ label: this.props.intl.formatMessage(messages.mediaGroupDeleteLabel)
126
128
  })
127
129
  }]
128
130
  };
@@ -227,6 +229,9 @@ export default class MediaGroup extends React.Component {
227
229
 
228
230
  _defineProperty(MediaGroup, "displayName", 'MediaGroup');
229
231
 
232
+ const IntlMediaGroup = injectIntl(MediaGroup);
233
+ export default IntlMediaGroup;
234
+
230
235
  class MediaGroupNodeView extends ReactNodeView {
231
236
  render(props, forwardRef) {
232
237
  const {
@@ -248,7 +253,7 @@ class MediaGroupNodeView extends ReactNodeView {
248
253
  return null;
249
254
  }
250
255
 
251
- return /*#__PURE__*/React.createElement(MediaGroup, {
256
+ return /*#__PURE__*/React.createElement(IntlMediaGroup, {
252
257
  node: this.node,
253
258
  getPos: getPos,
254
259
  view: this.view,
@@ -0,0 +1,8 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export const messages = defineMessages({
3
+ mediaGroupDeleteLabel: {
4
+ id: 'fabric.editor.mediaGroupDeleteLabel',
5
+ defaultMessage: 'delete',
6
+ description: 'a label for an icon that deletes media'
7
+ }
8
+ });
@@ -1,4 +1,5 @@
1
- import { Plugin, PluginKey } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ import { PluginKey } from 'prosemirror-state';
2
3
  import { pluginFactory } from '../../../../utils/plugin-state-factory';
3
4
  import reducer from './reducer';
4
5
  import { pmHistoryPluginKey } from '../../../history/pm-history-types';
@@ -23,7 +24,7 @@ export const createPlugin = ({
23
24
  dispatch,
24
25
  providerFactory
25
26
  }) => {
26
- return new Plugin({
27
+ return new SafePlugin({
27
28
  state: createPluginState(dispatch, {
28
29
  isAltTextEditorOpen: false
29
30
  }),
@@ -1,5 +1,6 @@
1
1
  import { pluginFactory } from '../../../../utils/plugin-state-factory';
2
- import { PluginKey, Plugin, NodeSelection } from 'prosemirror-state';
2
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
3
+ import { PluginKey, NodeSelection } from 'prosemirror-state';
3
4
  import reducer from './reducer';
4
5
  export const mediaLinkingPluginKey = new PluginKey('mediaLinking');
5
6
  const initialState = {
@@ -56,7 +57,7 @@ export const {
56
57
  createCommand: createMediaLinkingCommand,
57
58
  getPluginState: getMediaLinkingState
58
59
  } = mediaLinkingPluginFactory;
59
- export default (dispatch => new Plugin({
60
+ export default (dispatch => new SafePlugin({
60
61
  key: mediaLinkingPluginKey,
61
62
  state: mediaLinkingPluginFactory.createPluginState(dispatch, initialState)
62
63
  }));
@@ -1,7 +1,8 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import React from 'react';
3
3
  import ReactDOM from 'react-dom';
4
- import { NodeSelection, Plugin } from 'prosemirror-state';
4
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
5
+ import { NodeSelection } from 'prosemirror-state';
5
6
  import { insertPoint } from 'prosemirror-transform';
6
7
  import { Decoration, DecorationSet } from 'prosemirror-view';
7
8
  import { ErrorReporter, browser } from '@atlaskit/editor-common/utils';
@@ -21,17 +22,23 @@ import { isInEmptyLine } from '../../../utils/document';
21
22
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
22
23
  import { isInListItem } from '../../../utils';
23
24
  import { CAPTION_PLACEHOLDER_ID } from '../ui/CaptionPlaceholder';
25
+ import { RawIntlProvider } from 'react-intl-next';
24
26
  export { stateKey } from './plugin-key';
25
27
 
26
- const createDropPlaceholder = allowDropLine => {
28
+ const createDropPlaceholder = (intl, allowDropLine) => {
27
29
  const dropPlaceholder = document.createElement('div');
30
+ const createElement = React.createElement;
28
31
 
29
32
  if (allowDropLine) {
30
- ReactDOM.render( /*#__PURE__*/React.createElement(DropPlaceholder, {
33
+ ReactDOM.render(createElement(RawIntlProvider, {
34
+ value: intl
35
+ }, createElement(DropPlaceholder, {
31
36
  type: 'single'
32
- }), dropPlaceholder);
37
+ })), dropPlaceholder);
33
38
  } else {
34
- ReactDOM.render( /*#__PURE__*/React.createElement(DropPlaceholder), dropPlaceholder);
39
+ ReactDOM.render(createElement(RawIntlProvider, {
40
+ value: intl
41
+ }, createElement(DropPlaceholder)), dropPlaceholder);
35
42
  }
36
43
 
37
44
  return dropPlaceholder;
@@ -614,9 +621,10 @@ export class MediaPluginStateImplementation {
614
621
 
615
622
  }
616
623
  export const getMediaPluginState = state => stateKey.getState(state);
617
- export const createPlugin = (_schema, options, reactContext, dispatch, mediaOptions) => {
618
- const dropPlaceholder = createDropPlaceholder(mediaOptions && mediaOptions.allowDropzoneDropLine);
619
- return new Plugin({
624
+ export const createPlugin = (_schema, options, reactContext, getIntl, dispatch, mediaOptions) => {
625
+ const intl = getIntl();
626
+ const dropPlaceholder = createDropPlaceholder(intl, mediaOptions && mediaOptions.allowDropzoneDropLine);
627
+ return new SafePlugin({
620
628
  state: {
621
629
  init(_config, state) {
622
630
  return new MediaPluginStateImplementation(state, options, reactContext, mediaOptions, dispatch);
@@ -1,4 +1,4 @@
1
- import { Plugin } from 'prosemirror-state';
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
2
  import { setMediaClientConfig } from '../commands/media-editor';
3
3
  import { createPluginState, pluginKey } from './media-editor-plugin-factory'; // handle mapping changes to providers -> plugin state
4
4
 
@@ -35,7 +35,7 @@ export const createPlugin = ({
35
35
  dispatch,
36
36
  providerFactory
37
37
  }) => {
38
- return new Plugin({
38
+ return new SafePlugin({
39
39
  state: createPluginState(dispatch, {}),
40
40
  key: pluginKey,
41
41
  view: pluginView(providerFactory)
@@ -1,5 +1,8 @@
1
+ import { Fragment } from 'prosemirror-model';
1
2
  import { NodeSelection } from 'prosemirror-state';
2
3
  import { isNodeSelection, removeSelectedNode, safeInsert } from 'prosemirror-utils';
4
+ import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, addAnalytics, EVENT_TYPE } from '../../analytics';
5
+ import { removeMediaGroupNode } from './utils';
3
6
  export const changeInlineToMediaCard = (state, dispatch) => {
4
7
  const {
5
8
  media,
@@ -29,6 +32,53 @@ export const changeInlineToMediaCard = (state, dispatch) => {
29
32
  tr = safeInsert(group, nodePos, true)(tr);
30
33
 
31
34
  if (dispatch) {
35
+ addAnalytics(state, tr, {
36
+ action: ACTION.CHANGED_TYPE,
37
+ actionSubject: ACTION_SUBJECT.MEDIA,
38
+ eventType: EVENT_TYPE.TRACK,
39
+ attributes: {
40
+ newType: ACTION_SUBJECT_ID.MEDIA_GROUP,
41
+ previousType: ACTION_SUBJECT_ID.MEDIA_INLINE
42
+ }
43
+ });
44
+ dispatch(tr);
45
+ }
46
+
47
+ return true;
48
+ };
49
+ export const changeMediaCardToInline = (state, dispatch) => {
50
+ const {
51
+ media,
52
+ mediaInline,
53
+ paragraph
54
+ } = state.schema.nodes;
55
+ const selectedNode = state.selection instanceof NodeSelection && state.selection.node;
56
+
57
+ if (!selectedNode || !selectedNode.type === media) {
58
+ return false;
59
+ }
60
+
61
+ const mediaInlineNode = mediaInline.create({
62
+ id: selectedNode.attrs.id,
63
+ collection: selectedNode.attrs.collection
64
+ });
65
+ const space = state.schema.text(' ');
66
+ let content = Fragment.from([mediaInlineNode, space]);
67
+ const node = paragraph.createChecked({}, content);
68
+ const nodePos = state.tr.doc.resolve(state.selection.from).start() - 1;
69
+ let tr = removeMediaGroupNode(state);
70
+ tr = safeInsert(node, nodePos, true)(tr);
71
+
72
+ if (dispatch) {
73
+ addAnalytics(state, tr, {
74
+ action: ACTION.CHANGED_TYPE,
75
+ actionSubject: ACTION_SUBJECT.MEDIA,
76
+ eventType: EVENT_TYPE.TRACK,
77
+ attributes: {
78
+ newType: ACTION_SUBJECT_ID.MEDIA_INLINE,
79
+ previousType: ACTION_SUBJECT_ID.MEDIA_GROUP
80
+ }
81
+ });
32
82
  dispatch(tr);
33
83
  }
34
84
 
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { NodeSelection } from 'prosemirror-state';
3
- import { findParentNodeOfType, removeSelectedNode, safeInsert } from 'prosemirror-utils';
3
+ import { findParentNodeOfType, removeSelectedNode } from 'prosemirror-utils';
4
4
  import RemoveIcon from '@atlaskit/icon/glyph/editor/remove';
5
5
  import DownloadIcon from '@atlaskit/icon/glyph/download';
6
6
  import { mediaFilmstripItemDOMSelector } from '@atlaskit/media-filmstrip';
@@ -20,8 +20,7 @@ import { messages } from '@atlaskit/media-ui';
20
20
  import { messages as cardMessages } from '../../card/messages';
21
21
  import { FilePreviewItem } from './filePreviewItem';
22
22
  import { downloadMedia, removeMediaGroupNode } from './utils';
23
- import { Fragment } from 'prosemirror-model';
24
- import { changeInlineToMediaCard, removeInlineCard } from './commands';
23
+ import { changeInlineToMediaCard, changeMediaCardToInline, removeInlineCard } from './commands';
25
24
  import { MediaInlineNodeSelector, MediaSingleNodeSelector } from '../nodeviews/styles';
26
25
 
27
26
  const remove = (state, dispatch) => {
@@ -42,36 +41,6 @@ const handleRemoveMediaGroup = (state, dispatch) => {
42
41
  return true;
43
42
  };
44
43
 
45
- const changeMediaCardToInline = (state, dispatch) => {
46
- const {
47
- media,
48
- mediaInline,
49
- paragraph
50
- } = state.schema.nodes;
51
- const selectedNode = state.selection instanceof NodeSelection && state.selection.node;
52
-
53
- if (!selectedNode || !selectedNode.type === media) {
54
- return false;
55
- }
56
-
57
- const mediaInlineNode = mediaInline.create({
58
- id: selectedNode.attrs.id,
59
- collection: selectedNode.attrs.collection
60
- });
61
- const space = state.schema.text(' ');
62
- let content = Fragment.from([mediaInlineNode, space]);
63
- const node = paragraph.createChecked({}, content);
64
- const nodePos = state.tr.doc.resolve(state.selection.from).start() - 1;
65
- let tr = removeMediaGroupNode(state);
66
- tr = safeInsert(node, nodePos, true)(tr);
67
-
68
- if (dispatch) {
69
- dispatch(tr);
70
- }
71
-
72
- return true;
73
- };
74
-
75
44
  const generateMediaCardFloatingToolbar = (state, intl, mediaPluginState) => {
76
45
  const {
77
46
  mediaGroup
@@ -79,7 +48,7 @@ const generateMediaCardFloatingToolbar = (state, intl, mediaPluginState) => {
79
48
  const items = [{
80
49
  id: 'editor.media.view.switcher',
81
50
  type: 'dropdown',
82
- title: intl.formatMessage(messages.displayThumbnail),
51
+ title: intl.formatMessage(messages.changeView),
83
52
  options: [{
84
53
  id: 'editor.media.view.switcher.inline',
85
54
  title: intl.formatMessage(cardMessages.inline),
@@ -145,7 +114,7 @@ const generateMediaInlineFloatingToolbar = (state, intl, mediaPluginState) => {
145
114
  const items = [{
146
115
  id: 'editor.media.view.switcher',
147
116
  type: 'dropdown',
148
- title: intl.formatMessage(cardMessages.inline),
117
+ title: intl.formatMessage(messages.changeView),
149
118
  options: [{
150
119
  id: 'editor.media.view.switcher.inline',
151
120
  title: intl.formatMessage(cardMessages.inline),
@@ -4,6 +4,8 @@ import { borderRadius } from '@atlaskit/theme/constants';
4
4
  import { B400, B300, B200 } from '@atlaskit/theme/colors';
5
5
  import DocumentFilledIcon from '@atlaskit/icon/glyph/document-filled';
6
6
  import { hexToRgba } from '@atlaskit/adf-schema';
7
+ import { injectIntl } from 'react-intl-next';
8
+ import { dropPlaceholderMessages } from './drop-placeholder-messages';
7
9
  import { MEDIA_HEIGHT, FILE_WIDTH } from '../../nodeviews/mediaNodeView/media';
8
10
  const IconWrapper = styled.div`
9
11
  color: ${hexToRgba(B400, 0.4) || B400};
@@ -23,9 +25,21 @@ const DropLine = styled.div`
23
25
  width: 100%;
24
26
  height: 2px;
25
27
  `;
28
+
29
+ const IconWrapperComponent = props => {
30
+ const {
31
+ intl
32
+ } = props;
33
+ const {
34
+ dropPlaceholderLabel
35
+ } = dropPlaceholderMessages;
36
+ return /*#__PURE__*/React.createElement(IconWrapper, null, /*#__PURE__*/React.createElement(DocumentFilledIcon, {
37
+ label: intl.formatMessage(dropPlaceholderLabel),
38
+ size: "medium"
39
+ }));
40
+ };
41
+
42
+ const IntlIconWrapper = injectIntl(IconWrapperComponent);
26
43
  export default (({
27
44
  type = 'group'
28
- }) => type === 'single' ? /*#__PURE__*/React.createElement(DropLine, null) : /*#__PURE__*/React.createElement(IconWrapper, null, /*#__PURE__*/React.createElement(DocumentFilledIcon, {
29
- label: "Document",
30
- size: "medium"
31
- })));
45
+ }) => type === 'single' ? /*#__PURE__*/React.createElement(DropLine, null) : /*#__PURE__*/React.createElement(IntlIconWrapper, null));
@@ -0,0 +1,8 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export const dropPlaceholderMessages = defineMessages({
3
+ dropPlaceholderLabel: {
4
+ id: 'fabric.editor.dropPlaceholderLabel',
5
+ defaultMessage: 'Document',
6
+ description: 'document label for an media icon'
7
+ }
8
+ });
@@ -2,6 +2,8 @@ import React from 'react';
2
2
  import AttachmentIcon from '@atlaskit/icon/glyph/editor/attachment';
3
3
  import ToolbarButton, { TOOLBAR_BUTTON } from '../../../../ui/ToolbarButton';
4
4
  import WithPluginState from '../../../../ui/WithPluginState';
5
+ import { toolbarMediaMessages } from './toolbar-media-messages';
6
+ import { injectIntl } from 'react-intl-next';
5
7
 
6
8
  const onClickMediaButton = pluginState => () => {
7
9
  pluginState.showMediaPicker();
@@ -13,7 +15,8 @@ const ToolbarMedia = ({
13
15
  eventDispatcher,
14
16
  pluginKey,
15
17
  isDisabled,
16
- isReducedSpacing
18
+ isReducedSpacing,
19
+ intl
17
20
  }) => /*#__PURE__*/React.createElement(WithPluginState, {
18
21
  editorView: editorView,
19
22
  eventDispatcher: eventDispatcher,
@@ -27,17 +30,20 @@ const ToolbarMedia = ({
27
30
  return null;
28
31
  }
29
32
 
33
+ const {
34
+ toolbarMediaTitle
35
+ } = toolbarMediaMessages;
30
36
  return /*#__PURE__*/React.createElement(ToolbarButton, {
31
37
  buttonId: TOOLBAR_BUTTON.MEDIA,
32
38
  onClick: onClickMediaButton(mediaPlugin),
33
39
  disabled: isDisabled,
34
- title: "Files & images",
40
+ title: intl.formatMessage(toolbarMediaTitle),
35
41
  spacing: isReducedSpacing ? 'none' : 'default',
36
42
  iconBefore: /*#__PURE__*/React.createElement(AttachmentIcon, {
37
- label: "Files & images"
43
+ label: intl.formatMessage(toolbarMediaTitle)
38
44
  })
39
45
  });
40
46
  }
41
47
  });
42
48
 
43
- export default ToolbarMedia;
49
+ export default injectIntl(ToolbarMedia);
@@ -0,0 +1,8 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export const toolbarMediaMessages = defineMessages({
3
+ toolbarMediaTitle: {
4
+ id: 'fabric.editor.toolbarMediaTitle',
5
+ defaultMessage: 'Files & images',
6
+ description: 'a label for an icon that describes files and images'
7
+ }
8
+ });
@@ -257,14 +257,15 @@ function canContainImage(element) {
257
257
  }
258
258
  /**
259
259
  * Given a html string, we attempt to hoist any nested `<img>` tags,
260
- * not wrapped by a `<div>` as ProseMirror no-op's on those scenarios.
260
+ * not directly wrapped by a `<div>` as ProseMirror no-op's
261
+ * on those scenarios.
261
262
  * @param html
262
263
  */
263
264
 
264
265
 
265
266
  export const unwrapNestedMediaElements = html => {
266
267
  const parser = new DOMParser();
267
- const doc = parser.parseFromString(html, 'text/html');
268
+ let doc = parser.parseFromString(html, 'text/html');
268
269
  const wrapper = doc.body; // Remove Google Doc's wrapper <b> el
269
270
 
270
271
  const docsWrapper = wrapper.querySelector('b[id^="docs-internal-guid-"]');
@@ -292,11 +293,11 @@ export const unwrapNestedMediaElements = html => {
292
293
  if (isElementInvisible(mediaParent) || isElementInvisible(imageTag)) {
293
294
  mediaParent.removeChild(imageTag);
294
295
  return;
295
- } // If its wrapped by a div we assume its safe to bypass.
296
- // ProseMirror should handle this case properly.
296
+ } // If its wrapped by a valid container we assume its safe to bypass.
297
+ // ProseMirror should handle these cases properly.
297
298
 
298
299
 
299
- if (mediaParent instanceof HTMLDivElement || mediaParent instanceof HTMLSpanElement && mediaParent.closest('[class*="emoji-common"]')) {
300
+ if (canContainImage(mediaParent) || mediaParent instanceof HTMLSpanElement && mediaParent.closest('[class*="emoji-common"]')) {
300
301
  return;
301
302
  } // Find the top most element that the parent has a valid container for the image.
302
303
  // Stop just before found the wrapper
@@ -4,5 +4,15 @@ export const messages = defineMessages({
4
4
  id: 'fabric.editor.inviteItem.title',
5
5
  defaultMessage: '{userRole, select, admin {Invite} trusted {Invite} other {Add}} teammate to {productName}',
6
6
  description: 'Title of the invite teammate item in typeahead plugin'
7
+ },
8
+ mentionsAddLabel: {
9
+ id: 'fabric.editor.mentionsAddLabel',
10
+ defaultMessage: 'add-icon',
11
+ description: 'icon label to describe adding a new mention'
12
+ },
13
+ mentionsIconLabel: {
14
+ id: 'fabric.editor.mentionsIconLabel',
15
+ defaultMessage: 'Mention',
16
+ description: 'icon label to describe the mention icon'
7
17
  }
8
18
  });