@atlaskit/editor-core 180.0.0 → 181.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 (750) hide show
  1. package/CHANGELOG.md +117 -0
  2. package/codemods/180.1.0-update-to-editor-migration-component.ts +8 -0
  3. package/codemods/__tests__/rename-editor-to-editor-migration-component.ts +156 -0
  4. package/codemods/migrates/rename-editor-to-editor-migration-component.ts +34 -0
  5. package/dist/cjs/actions/index.js +26 -11
  6. package/dist/cjs/analytics-api/attach-payload-into-transaction.js +1 -1
  7. package/dist/cjs/create-editor/ReactEditorView.js +9 -764
  8. package/dist/cjs/create-editor/ReactEditorViewInternal.js +753 -0
  9. package/dist/cjs/create-editor/ReactEditorViewNext.js +16 -0
  10. package/dist/cjs/create-editor/create-plugins-list.js +31 -3
  11. package/dist/cjs/create-editor/feature-flags-from-props.js +3 -2
  12. package/dist/cjs/create-editor/preset-utils.js +27 -0
  13. package/dist/cjs/editor-next/editor-internal.js +147 -0
  14. package/dist/cjs/editor-next/editor-migration-component.js +51 -0
  15. package/dist/cjs/editor-next/hooks/useEditorMeasuresConstructor.js +36 -0
  16. package/dist/cjs/editor-next/hooks/useMeasureEditorMountTime.js +42 -0
  17. package/dist/cjs/editor-next/hooks/useProviderFactory.js +73 -0
  18. package/dist/cjs/editor-next/index.js +143 -0
  19. package/dist/cjs/editor-next/utils/deprecationWarnings.js +45 -0
  20. package/dist/cjs/editor-next/utils/editorMeasureTTICallback.js +44 -0
  21. package/dist/cjs/editor-next/utils/editorPropTypes.js +36 -0
  22. package/dist/cjs/editor-next/utils/getBaseFontSize.js +17 -0
  23. package/dist/cjs/editor-next/utils/getProvidersFromEditorProps.js +41 -0
  24. package/dist/cjs/editor-next/utils/handleProviders.js +51 -0
  25. package/dist/cjs/editor-next/utils/onEditorCreated.js +28 -0
  26. package/dist/cjs/editor-next/utils/sendDurationAnalytics.js +68 -0
  27. package/dist/cjs/editor-next/utils/trackEditorActions.js +101 -0
  28. package/dist/cjs/editor.js +139 -445
  29. package/dist/cjs/index.js +7 -0
  30. package/dist/cjs/keymaps/consts.js +1 -16
  31. package/dist/cjs/labs/next/internal/hooks/use-analytics/index.js +4 -4
  32. package/dist/cjs/labs/next/internal/hooks/use-editor/create-dispatch-transaction.js +6 -6
  33. package/dist/cjs/labs/next/presets/create-stub-internal-apis.js +117 -0
  34. package/dist/cjs/labs/next/presets/cxhtml.js +56 -55
  35. package/dist/cjs/labs/next/presets/default.js +15 -42
  36. package/dist/cjs/labs/next/presets/mobile.js +76 -89
  37. package/dist/cjs/labs/next/presets/universal.js +337 -255
  38. package/dist/cjs/labs/next/presets/useUniversalPreset.js +36 -0
  39. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/index.js +48 -13
  40. package/dist/cjs/plugins/analytics/index.js +2 -3
  41. package/dist/cjs/plugins/analytics/plugin.js +11 -6
  42. package/dist/cjs/plugins/analytics/utils.js +0 -11
  43. package/dist/cjs/plugins/annotation/utils.js +2 -36
  44. package/dist/cjs/plugins/base/pm-plugins/filter-steps.js +1 -1
  45. package/dist/cjs/plugins/base/pm-plugins/frozen-editor.js +98 -56
  46. package/dist/cjs/plugins/base/pm-plugins/react-nodeview.js +2 -7
  47. package/dist/cjs/plugins/base/utils/input-latency-tracking.js +24 -25
  48. package/dist/cjs/plugins/block-type/pm-plugins/input-rule.js +0 -10
  49. package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -0
  50. package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/index.js +36 -9
  51. package/dist/cjs/plugins/caption/index.js +0 -7
  52. package/dist/cjs/plugins/card/nodeviews/blockCard.js +9 -3
  53. package/dist/cjs/plugins/card/nodeviews/genericCard.js +16 -2
  54. package/dist/cjs/plugins/card/nodeviews/inlineCard.js +6 -2
  55. package/dist/cjs/plugins/card/pm-plugins/main.js +10 -5
  56. package/dist/cjs/plugins/card/pm-plugins/util/resolve.js +4 -0
  57. package/dist/cjs/plugins/clipboard/pm-plugins/main.js +4 -1
  58. package/dist/cjs/plugins/code-block/pm-plugins/main-state.js +2 -14
  59. package/dist/cjs/plugins/collab-edit/plugin.js +2 -3
  60. package/dist/cjs/plugins/collab-edit/provider/index.js +1 -8
  61. package/dist/cjs/plugins/collab-edit/provider/types.js +1 -12
  62. package/dist/cjs/plugins/context-panel/index.js +1 -6
  63. package/dist/cjs/plugins/data-consumer/index.js +0 -8
  64. package/dist/cjs/plugins/date/utils/internal.js +0 -4
  65. package/dist/cjs/plugins/extension/commands.js +1 -8
  66. package/dist/cjs/plugins/extension/toolbar.js +7 -1
  67. package/dist/cjs/plugins/extension/ui/Extension/Extension/index.js +9 -2
  68. package/dist/cjs/plugins/extension/ui/Extension/Extension/styles.js +2 -2
  69. package/dist/cjs/plugins/extension/ui/Extension/Lozenge.js +1 -0
  70. package/dist/cjs/plugins/feedback-dialog/index.js +1 -4
  71. package/dist/cjs/plugins/find-replace/ui/FindReplaceToolbarButton.js +5 -1
  72. package/dist/cjs/plugins/floating-toolbar/ui/Button.js +9 -3
  73. package/dist/cjs/plugins/floating-toolbar/ui/CheckboxModal.js +5 -3
  74. package/dist/cjs/plugins/floating-toolbar/ui/Dropdown.js +48 -14
  75. package/dist/cjs/plugins/floating-toolbar/ui/EmojiPickerButton.js +2 -9
  76. package/dist/cjs/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +24 -21
  77. package/dist/cjs/plugins/floating-toolbar/ui/ScrollButtons.js +12 -7
  78. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +32 -5
  79. package/dist/cjs/plugins/floating-toolbar/utils.js +0 -12
  80. package/dist/cjs/plugins/fragment/index.js +0 -8
  81. package/dist/cjs/plugins/fragment/pm-plugins/fragment-consistency.js +1 -0
  82. package/dist/cjs/plugins/help-dialog/commands.js +2 -6
  83. package/dist/cjs/plugins/hyperlink/analytics.js +5 -5
  84. package/dist/cjs/plugins/hyperlink/index.js +1 -1
  85. package/dist/cjs/plugins/hyperlink/pm-plugins/main.js +9 -5
  86. package/dist/cjs/plugins/hyperlink/ui/EditorLinkPicker/index.js +10 -4
  87. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  88. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +4 -3
  89. package/dist/cjs/plugins/image-upload/pm-plugins/main.js +50 -12
  90. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-element-browser.js +1 -0
  91. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu-legacy.js +1 -0
  92. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu.js +3 -0
  93. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +1 -0
  94. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -0
  95. package/dist/cjs/plugins/layout/styles.js +10 -1
  96. package/dist/cjs/plugins/list/utils/find.js +0 -28
  97. package/dist/cjs/plugins/list/utils/indentation.js +1 -25
  98. package/dist/cjs/plugins/list/utils/node.js +0 -5
  99. package/dist/cjs/plugins/list/utils/selection.js +2 -15
  100. package/dist/cjs/plugins/media/commands/helpers.js +12 -40
  101. package/dist/cjs/plugins/media/commands/index.js +4 -4
  102. package/dist/cjs/plugins/media/nodeviews/mediaGroup.js +14 -12
  103. package/dist/cjs/plugins/media/nodeviews/mediaInline.js +1 -1
  104. package/dist/cjs/plugins/media/nodeviews/mediaNodeUpdater.js +310 -205
  105. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +1 -1
  106. package/dist/cjs/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +1 -1
  107. package/dist/cjs/plugins/media/pm-plugins/main.js +2 -27
  108. package/dist/cjs/plugins/media/toolbar/filePreviewItem.js +1 -4
  109. package/dist/cjs/plugins/media/utils/media-common.js +1 -20
  110. package/dist/cjs/plugins/mentions/nodeviews/mention.js +100 -16
  111. package/dist/cjs/plugins/mentions/type-ahead/index.js +1 -18
  112. package/dist/cjs/plugins/mentions/ui/InviteItem/index.js +1 -3
  113. package/dist/cjs/plugins/mobile-dimensions/index.js +1 -4
  114. package/dist/cjs/plugins/panel/utils.js +4 -1
  115. package/dist/cjs/plugins/paste/handlers.js +128 -13
  116. package/dist/cjs/plugins/paste/index.js +1 -2
  117. package/dist/cjs/plugins/paste/pm-plugins/analytics.js +133 -88
  118. package/dist/cjs/plugins/paste/pm-plugins/main.js +12 -3
  119. package/dist/cjs/plugins/paste/util/index.js +0 -46
  120. package/dist/cjs/plugins/placeholder-text/index.js +2 -2
  121. package/dist/cjs/plugins/quick-insert/assets/index.js +1 -27
  122. package/dist/cjs/plugins/selection/gap-cursor/actions.js +49 -44
  123. package/dist/cjs/plugins/status/index.js +9 -3
  124. package/dist/cjs/plugins/status/ui/statusPicker.js +8 -2
  125. package/dist/cjs/plugins/status/utils.js +1 -15
  126. package/dist/cjs/plugins/text-color/pm-plugins/main.js +0 -1
  127. package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/index.js +48 -12
  128. package/dist/cjs/plugins/text-formatting/pm-plugins/smart-input-rule.js +8 -2
  129. package/dist/cjs/plugins/text-formatting/ui/Toolbar/dropdown-menu.js +22 -2
  130. package/dist/cjs/plugins/text-formatting/ui/Toolbar/index.js +3 -1
  131. package/dist/cjs/plugins/text-formatting/ui/Toolbar/more-button.js +3 -1
  132. package/dist/cjs/plugins/text-formatting/utils.js +1 -35
  133. package/dist/cjs/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +19 -1
  134. package/dist/cjs/plugins/type-ahead/constants.js +1 -7
  135. package/dist/cjs/plugins/type-ahead/index.js +1 -1
  136. package/dist/cjs/plugins/type-ahead/pm-plugins/decorations.js +2 -35
  137. package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +79 -106
  138. package/dist/cjs/plugins/type-ahead/utils.js +3 -22
  139. package/dist/cjs/test-utils.js +4 -12
  140. package/dist/cjs/ui/Appearance/Comment/Toolbar.js +43 -8
  141. package/dist/cjs/ui/ChromeCollapsed/index.js +1 -0
  142. package/dist/cjs/ui/CollapsedEditor/index.js +7 -13
  143. package/dist/cjs/ui/ColorPalette/index.js +18 -0
  144. package/dist/cjs/ui/ColorPickerButton/index.js +73 -7
  145. package/dist/cjs/ui/ConfigPanel/ConfigPanel.js +1 -1
  146. package/dist/cjs/ui/ConfigPanel/Fields/Expand.js +1 -0
  147. package/dist/cjs/ui/ConfigPanel/utils.js +4 -17
  148. package/dist/cjs/ui/ContentStyles/index.js +1 -1
  149. package/dist/cjs/ui/ContextPanel/context.js +13 -12
  150. package/dist/cjs/ui/Dropdown/index.js +7 -2
  151. package/dist/cjs/ui/DropdownMenu/index.js +7 -2
  152. package/dist/cjs/ui/ElementBrowser/ModalElementBrowser.js +1 -1
  153. package/dist/cjs/ui/ElementBrowser/components/CategoryList.js +1 -1
  154. package/dist/cjs/ui/ElementBrowser/components/ElementList/ElementList.js +1 -1
  155. package/dist/cjs/ui/ElementBrowser/components/StatelessElementBrowser.js +1 -1
  156. package/dist/cjs/ui/ElementBrowser/constants.js +1 -3
  157. package/dist/cjs/ui/PanelTextInput/index.js +4 -4
  158. package/dist/cjs/ui/PortalProvider/index.js +5 -5
  159. package/dist/cjs/ui/Resizer/utils.js +1 -3
  160. package/dist/cjs/ui/WidthEmitter/index.js +29 -35
  161. package/dist/cjs/ui/styles.js +3 -7
  162. package/dist/cjs/utils/document.js +15 -0
  163. package/dist/cjs/utils/extensions.js +6 -7
  164. package/dist/cjs/utils/get-editor-plugins.js +30 -0
  165. package/dist/cjs/utils/index.js +9 -269
  166. package/dist/cjs/utils/input-rules.js +1 -15
  167. package/dist/cjs/utils/linking-utils.js +1 -1
  168. package/dist/cjs/utils/performance/components/RenderTracking.js +1 -1
  169. package/dist/cjs/utils/performance/safer-transactions.js +1 -1
  170. package/dist/cjs/utils/prepare-extension-provider.js +25 -0
  171. package/dist/cjs/version-wrapper.js +1 -1
  172. package/dist/cjs/version.json +1 -1
  173. package/dist/es2019/actions/index.js +24 -10
  174. package/dist/es2019/analytics-api/attach-payload-into-transaction.js +1 -1
  175. package/dist/es2019/create-editor/ReactEditorView.js +3 -710
  176. package/dist/es2019/create-editor/ReactEditorViewInternal.js +697 -0
  177. package/dist/es2019/create-editor/ReactEditorViewNext.js +7 -0
  178. package/dist/es2019/create-editor/create-plugins-list.js +26 -3
  179. package/dist/es2019/create-editor/feature-flags-from-props.js +3 -2
  180. package/dist/es2019/create-editor/preset-utils.js +15 -0
  181. package/dist/es2019/editor-next/editor-internal.js +142 -0
  182. package/dist/es2019/editor-next/editor-migration-component.js +27 -0
  183. package/dist/es2019/editor-next/hooks/useEditorMeasuresConstructor.js +30 -0
  184. package/dist/es2019/editor-next/hooks/useMeasureEditorMountTime.js +35 -0
  185. package/dist/es2019/editor-next/hooks/useProviderFactory.js +62 -0
  186. package/dist/es2019/editor-next/index.js +96 -0
  187. package/dist/es2019/editor-next/utils/deprecationWarnings.js +39 -0
  188. package/dist/es2019/editor-next/utils/editorMeasureTTICallback.js +40 -0
  189. package/dist/es2019/editor-next/utils/editorPropTypes.js +29 -0
  190. package/dist/es2019/editor-next/utils/getBaseFontSize.js +11 -0
  191. package/dist/es2019/editor-next/utils/getProvidersFromEditorProps.js +36 -0
  192. package/dist/es2019/editor-next/utils/handleProviders.js +46 -0
  193. package/dist/es2019/editor-next/utils/onEditorCreated.js +21 -0
  194. package/dist/es2019/editor-next/utils/sendDurationAnalytics.js +40 -0
  195. package/dist/es2019/editor-next/utils/trackEditorActions.js +78 -0
  196. package/dist/es2019/editor.js +122 -398
  197. package/dist/es2019/index.js +2 -1
  198. package/dist/es2019/keymaps/consts.js +7 -11
  199. package/dist/es2019/labs/next/internal/hooks/use-analytics/index.js +2 -2
  200. package/dist/es2019/labs/next/internal/hooks/use-editor/create-dispatch-transaction.js +2 -3
  201. package/dist/es2019/labs/next/presets/create-stub-internal-apis.js +105 -0
  202. package/dist/es2019/labs/next/presets/cxhtml.js +56 -53
  203. package/dist/es2019/labs/next/presets/default.js +18 -38
  204. package/dist/es2019/labs/next/presets/mobile.js +88 -88
  205. package/dist/es2019/labs/next/presets/universal.js +347 -263
  206. package/dist/es2019/labs/next/presets/useUniversalPreset.js +25 -0
  207. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/index.js +41 -12
  208. package/dist/es2019/plugins/analytics/index.js +3 -4
  209. package/dist/es2019/plugins/analytics/plugin.js +8 -2
  210. package/dist/es2019/plugins/analytics/utils.js +0 -4
  211. package/dist/es2019/plugins/annotation/utils.js +2 -30
  212. package/dist/es2019/plugins/base/pm-plugins/filter-steps.js +1 -1
  213. package/dist/es2019/plugins/base/pm-plugins/frozen-editor.js +96 -58
  214. package/dist/es2019/plugins/base/pm-plugins/react-nodeview.js +1 -3
  215. package/dist/es2019/plugins/base/utils/input-latency-tracking.js +23 -23
  216. package/dist/es2019/plugins/block-type/pm-plugins/input-rule.js +3 -9
  217. package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -0
  218. package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/index.js +31 -5
  219. package/dist/es2019/plugins/caption/index.js +0 -2
  220. package/dist/es2019/plugins/card/nodeviews/blockCard.js +10 -3
  221. package/dist/es2019/plugins/card/nodeviews/genericCard.js +16 -2
  222. package/dist/es2019/plugins/card/nodeviews/inlineCard.js +6 -2
  223. package/dist/es2019/plugins/card/pm-plugins/main.js +9 -4
  224. package/dist/es2019/plugins/card/pm-plugins/util/resolve.js +4 -0
  225. package/dist/es2019/plugins/clipboard/pm-plugins/main.js +3 -1
  226. package/dist/es2019/plugins/code-block/pm-plugins/main-state.js +1 -9
  227. package/dist/es2019/plugins/collab-edit/plugin.js +1 -2
  228. package/dist/es2019/plugins/collab-edit/provider/index.js +1 -1
  229. package/dist/es2019/plugins/collab-edit/provider/types.js +1 -10
  230. package/dist/es2019/plugins/context-panel/index.js +0 -3
  231. package/dist/es2019/plugins/data-consumer/index.js +0 -7
  232. package/dist/es2019/plugins/date/utils/internal.js +0 -3
  233. package/dist/es2019/plugins/extension/commands.js +0 -6
  234. package/dist/es2019/plugins/extension/toolbar.js +7 -1
  235. package/dist/es2019/plugins/extension/ui/Extension/Extension/index.js +12 -2
  236. package/dist/es2019/plugins/extension/ui/Extension/Extension/styles.js +3 -0
  237. package/dist/es2019/plugins/extension/ui/Extension/Lozenge.js +1 -0
  238. package/dist/es2019/plugins/feedback-dialog/index.js +0 -2
  239. package/dist/es2019/plugins/find-replace/ui/FindReplaceToolbarButton.js +5 -1
  240. package/dist/es2019/plugins/floating-toolbar/ui/Button.js +9 -3
  241. package/dist/es2019/plugins/floating-toolbar/ui/CheckboxModal.js +5 -3
  242. package/dist/es2019/plugins/floating-toolbar/ui/Dropdown.js +45 -12
  243. package/dist/es2019/plugins/floating-toolbar/ui/EmojiPickerButton.js +1 -11
  244. package/dist/es2019/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +3 -2
  245. package/dist/es2019/plugins/floating-toolbar/ui/ScrollButtons.js +12 -7
  246. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +29 -1
  247. package/dist/es2019/plugins/floating-toolbar/utils.js +0 -10
  248. package/dist/es2019/plugins/fragment/index.js +0 -7
  249. package/dist/es2019/plugins/fragment/pm-plugins/fragment-consistency.js +1 -0
  250. package/dist/es2019/plugins/help-dialog/commands.js +1 -2
  251. package/dist/es2019/plugins/hyperlink/analytics.js +1 -1
  252. package/dist/es2019/plugins/hyperlink/index.js +1 -1
  253. package/dist/es2019/plugins/hyperlink/pm-plugins/main.js +8 -4
  254. package/dist/es2019/plugins/hyperlink/ui/EditorLinkPicker/index.js +9 -3
  255. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  256. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +3 -2
  257. package/dist/es2019/plugins/image-upload/pm-plugins/main.js +47 -5
  258. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-element-browser.js +1 -0
  259. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu-legacy.js +1 -0
  260. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu.js +3 -0
  261. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +1 -0
  262. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +24 -0
  263. package/dist/es2019/plugins/layout/styles.js +12 -4
  264. package/dist/es2019/plugins/list/utils/find.js +0 -27
  265. package/dist/es2019/plugins/list/utils/indentation.js +0 -23
  266. package/dist/es2019/plugins/list/utils/node.js +1 -4
  267. package/dist/es2019/plugins/list/utils/selection.js +2 -15
  268. package/dist/es2019/plugins/media/commands/helpers.js +9 -35
  269. package/dist/es2019/plugins/media/commands/index.js +1 -1
  270. package/dist/es2019/plugins/media/nodeviews/mediaGroup.js +3 -3
  271. package/dist/es2019/plugins/media/nodeviews/mediaInline.js +1 -1
  272. package/dist/es2019/plugins/media/nodeviews/mediaNodeUpdater.js +70 -37
  273. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +1 -1
  274. package/dist/es2019/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +1 -1
  275. package/dist/es2019/plugins/media/pm-plugins/main.js +3 -30
  276. package/dist/es2019/plugins/media/toolbar/filePreviewItem.js +1 -4
  277. package/dist/es2019/plugins/media/utils/media-common.js +1 -19
  278. package/dist/es2019/plugins/mentions/nodeviews/mention.js +64 -16
  279. package/dist/es2019/plugins/mentions/type-ahead/index.js +1 -14
  280. package/dist/es2019/plugins/mentions/ui/InviteItem/index.js +1 -2
  281. package/dist/es2019/plugins/mobile-dimensions/index.js +0 -3
  282. package/dist/es2019/plugins/panel/utils.js +4 -1
  283. package/dist/es2019/plugins/paste/handlers.js +127 -5
  284. package/dist/es2019/plugins/paste/index.js +1 -2
  285. package/dist/es2019/plugins/paste/pm-plugins/analytics.js +131 -93
  286. package/dist/es2019/plugins/paste/pm-plugins/main.js +13 -4
  287. package/dist/es2019/plugins/paste/util/index.js +5 -45
  288. package/dist/es2019/plugins/placeholder-text/index.js +1 -1
  289. package/dist/es2019/plugins/quick-insert/assets/index.js +0 -8
  290. package/dist/es2019/plugins/selection/gap-cursor/actions.js +56 -56
  291. package/dist/es2019/plugins/status/index.js +8 -2
  292. package/dist/es2019/plugins/status/ui/statusPicker.js +8 -2
  293. package/dist/es2019/plugins/status/utils.js +1 -11
  294. package/dist/es2019/plugins/text-color/pm-plugins/main.js +1 -1
  295. package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/index.js +48 -12
  296. package/dist/es2019/plugins/text-formatting/pm-plugins/smart-input-rule.js +8 -2
  297. package/dist/es2019/plugins/text-formatting/ui/Toolbar/dropdown-menu.js +20 -3
  298. package/dist/es2019/plugins/text-formatting/ui/Toolbar/index.js +4 -2
  299. package/dist/es2019/plugins/text-formatting/ui/Toolbar/more-button.js +3 -1
  300. package/dist/es2019/plugins/text-formatting/utils.js +0 -27
  301. package/dist/es2019/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +16 -1
  302. package/dist/es2019/plugins/type-ahead/constants.js +0 -5
  303. package/dist/es2019/plugins/type-ahead/index.js +1 -1
  304. package/dist/es2019/plugins/type-ahead/pm-plugins/decorations.js +0 -35
  305. package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +73 -92
  306. package/dist/es2019/plugins/type-ahead/utils.js +0 -23
  307. package/dist/es2019/test-utils.js +4 -7
  308. package/dist/es2019/ui/Appearance/Comment/Toolbar.js +40 -6
  309. package/dist/es2019/ui/ChromeCollapsed/index.js +1 -0
  310. package/dist/es2019/ui/CollapsedEditor/index.js +7 -11
  311. package/dist/es2019/ui/ColorPalette/index.js +2 -1
  312. package/dist/es2019/ui/ColorPickerButton/index.js +66 -9
  313. package/dist/es2019/ui/ConfigPanel/ConfigPanel.js +1 -1
  314. package/dist/es2019/ui/ConfigPanel/Fields/Expand.js +1 -0
  315. package/dist/es2019/ui/ConfigPanel/utils.js +0 -6
  316. package/dist/es2019/ui/ContentStyles/index.js +1 -1
  317. package/dist/es2019/ui/ContextPanel/context.js +5 -4
  318. package/dist/es2019/ui/Dropdown/index.js +5 -2
  319. package/dist/es2019/ui/DropdownMenu/index.js +5 -2
  320. package/dist/es2019/ui/ElementBrowser/ModalElementBrowser.js +1 -1
  321. package/dist/es2019/ui/ElementBrowser/components/CategoryList.js +1 -1
  322. package/dist/es2019/ui/ElementBrowser/components/ElementList/ElementList.js +1 -1
  323. package/dist/es2019/ui/ElementBrowser/components/StatelessElementBrowser.js +1 -1
  324. package/dist/es2019/ui/ElementBrowser/constants.js +0 -1
  325. package/dist/es2019/ui/PanelTextInput/index.js +3 -3
  326. package/dist/es2019/ui/PortalProvider/index.js +1 -1
  327. package/dist/es2019/ui/Resizer/utils.js +0 -1
  328. package/dist/es2019/ui/WidthEmitter/index.js +25 -29
  329. package/dist/es2019/ui/styles.js +0 -6
  330. package/dist/es2019/utils/document.js +11 -1
  331. package/dist/es2019/utils/extensions.js +1 -3
  332. package/dist/es2019/utils/get-editor-plugins.js +23 -0
  333. package/dist/es2019/utils/index.js +13 -199
  334. package/dist/es2019/utils/input-rules.js +0 -14
  335. package/dist/es2019/utils/linking-utils.js +1 -1
  336. package/dist/es2019/utils/performance/components/RenderTracking.js +1 -1
  337. package/dist/es2019/utils/performance/safer-transactions.js +1 -1
  338. package/dist/es2019/utils/prepare-extension-provider.js +13 -0
  339. package/dist/es2019/version-wrapper.js +1 -1
  340. package/dist/es2019/version.json +1 -1
  341. package/dist/esm/actions/index.js +24 -10
  342. package/dist/esm/analytics-api/attach-payload-into-transaction.js +1 -1
  343. package/dist/esm/create-editor/ReactEditorView.js +9 -765
  344. package/dist/esm/create-editor/ReactEditorViewInternal.js +747 -0
  345. package/dist/esm/create-editor/ReactEditorViewNext.js +7 -0
  346. package/dist/esm/create-editor/create-plugins-list.js +30 -3
  347. package/dist/esm/create-editor/feature-flags-from-props.js +3 -2
  348. package/dist/esm/create-editor/preset-utils.js +21 -0
  349. package/dist/esm/editor-next/editor-internal.js +141 -0
  350. package/dist/esm/editor-next/editor-migration-component.js +44 -0
  351. package/dist/esm/editor-next/hooks/useEditorMeasuresConstructor.js +30 -0
  352. package/dist/esm/editor-next/hooks/useMeasureEditorMountTime.js +35 -0
  353. package/dist/esm/editor-next/hooks/useProviderFactory.js +66 -0
  354. package/dist/esm/editor-next/index.js +138 -0
  355. package/dist/esm/editor-next/utils/deprecationWarnings.js +39 -0
  356. package/dist/esm/editor-next/utils/editorMeasureTTICallback.js +38 -0
  357. package/dist/esm/editor-next/utils/editorPropTypes.js +28 -0
  358. package/dist/esm/editor-next/utils/getBaseFontSize.js +11 -0
  359. package/dist/esm/editor-next/utils/getProvidersFromEditorProps.js +35 -0
  360. package/dist/esm/editor-next/utils/handleProviders.js +45 -0
  361. package/dist/esm/editor-next/utils/onEditorCreated.js +21 -0
  362. package/dist/esm/editor-next/utils/sendDurationAnalytics.js +61 -0
  363. package/dist/esm/editor-next/utils/trackEditorActions.js +94 -0
  364. package/dist/esm/editor.js +139 -442
  365. package/dist/esm/index.js +2 -1
  366. package/dist/esm/keymaps/consts.js +7 -11
  367. package/dist/esm/labs/next/internal/hooks/use-analytics/index.js +2 -2
  368. package/dist/esm/labs/next/internal/hooks/use-editor/create-dispatch-transaction.js +2 -3
  369. package/dist/esm/labs/next/presets/create-stub-internal-apis.js +110 -0
  370. package/dist/esm/labs/next/presets/cxhtml.js +56 -55
  371. package/dist/esm/labs/next/presets/default.js +18 -41
  372. package/dist/esm/labs/next/presets/mobile.js +88 -90
  373. package/dist/esm/labs/next/presets/universal.js +337 -255
  374. package/dist/esm/labs/next/presets/useUniversalPreset.js +29 -0
  375. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/index.js +48 -13
  376. package/dist/esm/plugins/analytics/index.js +3 -4
  377. package/dist/esm/plugins/analytics/plugin.js +7 -2
  378. package/dist/esm/plugins/analytics/utils.js +0 -9
  379. package/dist/esm/plugins/annotation/utils.js +2 -32
  380. package/dist/esm/plugins/base/pm-plugins/filter-steps.js +1 -1
  381. package/dist/esm/plugins/base/pm-plugins/frozen-editor.js +98 -56
  382. package/dist/esm/plugins/base/pm-plugins/react-nodeview.js +1 -5
  383. package/dist/esm/plugins/base/utils/input-latency-tracking.js +24 -25
  384. package/dist/esm/plugins/block-type/pm-plugins/input-rule.js +3 -9
  385. package/dist/esm/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -0
  386. package/dist/esm/plugins/block-type/ui/ToolbarBlockType/index.js +36 -9
  387. package/dist/esm/plugins/caption/index.js +0 -2
  388. package/dist/esm/plugins/card/nodeviews/blockCard.js +9 -3
  389. package/dist/esm/plugins/card/nodeviews/genericCard.js +16 -2
  390. package/dist/esm/plugins/card/nodeviews/inlineCard.js +6 -2
  391. package/dist/esm/plugins/card/pm-plugins/main.js +10 -5
  392. package/dist/esm/plugins/card/pm-plugins/util/resolve.js +4 -0
  393. package/dist/esm/plugins/clipboard/pm-plugins/main.js +4 -1
  394. package/dist/esm/plugins/code-block/pm-plugins/main-state.js +0 -10
  395. package/dist/esm/plugins/collab-edit/plugin.js +1 -2
  396. package/dist/esm/plugins/collab-edit/provider/index.js +1 -1
  397. package/dist/esm/plugins/collab-edit/provider/types.js +1 -10
  398. package/dist/esm/plugins/context-panel/index.js +0 -3
  399. package/dist/esm/plugins/data-consumer/index.js +0 -7
  400. package/dist/esm/plugins/date/utils/internal.js +0 -3
  401. package/dist/esm/plugins/extension/commands.js +0 -6
  402. package/dist/esm/plugins/extension/toolbar.js +7 -1
  403. package/dist/esm/plugins/extension/ui/Extension/Extension/index.js +9 -2
  404. package/dist/esm/plugins/extension/ui/Extension/Extension/styles.js +2 -2
  405. package/dist/esm/plugins/extension/ui/Extension/Lozenge.js +1 -0
  406. package/dist/esm/plugins/feedback-dialog/index.js +0 -2
  407. package/dist/esm/plugins/find-replace/ui/FindReplaceToolbarButton.js +5 -1
  408. package/dist/esm/plugins/floating-toolbar/ui/Button.js +9 -3
  409. package/dist/esm/plugins/floating-toolbar/ui/CheckboxModal.js +5 -3
  410. package/dist/esm/plugins/floating-toolbar/ui/Dropdown.js +48 -14
  411. package/dist/esm/plugins/floating-toolbar/ui/EmojiPickerButton.js +2 -9
  412. package/dist/esm/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +24 -21
  413. package/dist/esm/plugins/floating-toolbar/ui/ScrollButtons.js +12 -7
  414. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +32 -5
  415. package/dist/esm/plugins/floating-toolbar/utils.js +0 -10
  416. package/dist/esm/plugins/fragment/index.js +0 -7
  417. package/dist/esm/plugins/fragment/pm-plugins/fragment-consistency.js +1 -0
  418. package/dist/esm/plugins/help-dialog/commands.js +0 -3
  419. package/dist/esm/plugins/hyperlink/analytics.js +1 -1
  420. package/dist/esm/plugins/hyperlink/index.js +1 -1
  421. package/dist/esm/plugins/hyperlink/pm-plugins/main.js +9 -5
  422. package/dist/esm/plugins/hyperlink/ui/EditorLinkPicker/index.js +10 -4
  423. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  424. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +3 -2
  425. package/dist/esm/plugins/image-upload/pm-plugins/main.js +51 -12
  426. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-element-browser.js +1 -0
  427. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu-legacy.js +1 -0
  428. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu.js +3 -0
  429. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +1 -0
  430. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -0
  431. package/dist/esm/plugins/layout/styles.js +11 -2
  432. package/dist/esm/plugins/list/utils/find.js +0 -27
  433. package/dist/esm/plugins/list/utils/indentation.js +0 -23
  434. package/dist/esm/plugins/list/utils/node.js +1 -4
  435. package/dist/esm/plugins/list/utils/selection.js +2 -12
  436. package/dist/esm/plugins/media/commands/helpers.js +9 -35
  437. package/dist/esm/plugins/media/commands/index.js +1 -1
  438. package/dist/esm/plugins/media/nodeviews/mediaGroup.js +14 -12
  439. package/dist/esm/plugins/media/nodeviews/mediaInline.js +1 -1
  440. package/dist/esm/plugins/media/nodeviews/mediaNodeUpdater.js +311 -206
  441. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +1 -1
  442. package/dist/esm/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +1 -1
  443. package/dist/esm/plugins/media/pm-plugins/main.js +3 -28
  444. package/dist/esm/plugins/media/toolbar/filePreviewItem.js +1 -4
  445. package/dist/esm/plugins/media/utils/media-common.js +1 -17
  446. package/dist/esm/plugins/mentions/nodeviews/mention.js +97 -16
  447. package/dist/esm/plugins/mentions/type-ahead/index.js +1 -18
  448. package/dist/esm/plugins/mentions/ui/InviteItem/index.js +1 -2
  449. package/dist/esm/plugins/mobile-dimensions/index.js +0 -3
  450. package/dist/esm/plugins/panel/utils.js +4 -1
  451. package/dist/esm/plugins/paste/handlers.js +127 -13
  452. package/dist/esm/plugins/paste/index.js +1 -2
  453. package/dist/esm/plugins/paste/pm-plugins/analytics.js +130 -86
  454. package/dist/esm/plugins/paste/pm-plugins/main.js +13 -4
  455. package/dist/esm/plugins/paste/util/index.js +5 -45
  456. package/dist/esm/plugins/placeholder-text/index.js +2 -2
  457. package/dist/esm/plugins/quick-insert/assets/index.js +0 -20
  458. package/dist/esm/plugins/selection/gap-cursor/actions.js +52 -45
  459. package/dist/esm/plugins/status/index.js +9 -3
  460. package/dist/esm/plugins/status/ui/statusPicker.js +8 -2
  461. package/dist/esm/plugins/status/utils.js +1 -13
  462. package/dist/esm/plugins/text-color/pm-plugins/main.js +1 -1
  463. package/dist/esm/plugins/text-color/ui/ToolbarTextColor/index.js +48 -12
  464. package/dist/esm/plugins/text-formatting/pm-plugins/smart-input-rule.js +8 -2
  465. package/dist/esm/plugins/text-formatting/ui/Toolbar/dropdown-menu.js +23 -3
  466. package/dist/esm/plugins/text-formatting/ui/Toolbar/index.js +4 -2
  467. package/dist/esm/plugins/text-formatting/ui/Toolbar/more-button.js +3 -1
  468. package/dist/esm/plugins/text-formatting/utils.js +0 -29
  469. package/dist/esm/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +19 -1
  470. package/dist/esm/plugins/type-ahead/constants.js +0 -5
  471. package/dist/esm/plugins/type-ahead/index.js +1 -1
  472. package/dist/esm/plugins/type-ahead/pm-plugins/decorations.js +0 -31
  473. package/dist/esm/plugins/type-ahead/ui/InputQuery.js +79 -106
  474. package/dist/esm/plugins/type-ahead/utils.js +2 -20
  475. package/dist/esm/test-utils.js +4 -7
  476. package/dist/esm/ui/Appearance/Comment/Toolbar.js +41 -6
  477. package/dist/esm/ui/ChromeCollapsed/index.js +1 -0
  478. package/dist/esm/ui/CollapsedEditor/index.js +7 -13
  479. package/dist/esm/ui/ColorPalette/index.js +2 -1
  480. package/dist/esm/ui/ColorPickerButton/index.js +74 -8
  481. package/dist/esm/ui/ConfigPanel/ConfigPanel.js +1 -1
  482. package/dist/esm/ui/ConfigPanel/Fields/Expand.js +1 -0
  483. package/dist/esm/ui/ConfigPanel/utils.js +3 -14
  484. package/dist/esm/ui/ContentStyles/index.js +1 -1
  485. package/dist/esm/ui/ContextPanel/context.js +8 -8
  486. package/dist/esm/ui/Dropdown/index.js +7 -2
  487. package/dist/esm/ui/DropdownMenu/index.js +7 -2
  488. package/dist/esm/ui/ElementBrowser/ModalElementBrowser.js +1 -1
  489. package/dist/esm/ui/ElementBrowser/components/CategoryList.js +1 -1
  490. package/dist/esm/ui/ElementBrowser/components/ElementList/ElementList.js +1 -1
  491. package/dist/esm/ui/ElementBrowser/components/StatelessElementBrowser.js +1 -1
  492. package/dist/esm/ui/ElementBrowser/constants.js +0 -1
  493. package/dist/esm/ui/PanelTextInput/index.js +4 -4
  494. package/dist/esm/ui/PortalProvider/index.js +1 -1
  495. package/dist/esm/ui/Resizer/utils.js +0 -1
  496. package/dist/esm/ui/WidthEmitter/index.js +28 -37
  497. package/dist/esm/ui/styles.js +2 -5
  498. package/dist/esm/utils/document.js +15 -1
  499. package/dist/esm/utils/extensions.js +1 -3
  500. package/dist/esm/utils/get-editor-plugins.js +23 -0
  501. package/dist/esm/utils/index.js +13 -196
  502. package/dist/esm/utils/input-rules.js +0 -13
  503. package/dist/esm/utils/linking-utils.js +1 -1
  504. package/dist/esm/utils/performance/components/RenderTracking.js +1 -1
  505. package/dist/esm/utils/performance/safer-transactions.js +1 -1
  506. package/dist/esm/utils/prepare-extension-provider.js +17 -0
  507. package/dist/esm/version-wrapper.js +1 -1
  508. package/dist/esm/version.json +1 -1
  509. package/dist/types/actions/index.d.ts +5 -5
  510. package/dist/types/create-editor/ReactEditorView.d.ts +5 -110
  511. package/dist/types/create-editor/ReactEditorViewInternal.d.ts +114 -0
  512. package/dist/types/create-editor/ReactEditorViewNext.d.ts +8 -0
  513. package/dist/types/create-editor/create-plugins-list.d.ts +3 -5
  514. package/dist/types/create-editor/preset-utils.d.ts +2 -0
  515. package/dist/types/editor-next/editor-internal.d.ts +44 -0
  516. package/dist/types/editor-next/editor-migration-component.d.ts +5 -0
  517. package/dist/types/editor-next/hooks/useEditorMeasuresConstructor.d.ts +17 -0
  518. package/dist/types/editor-next/hooks/useMeasureEditorMountTime.d.ts +13 -0
  519. package/dist/types/editor-next/hooks/useProviderFactory.d.ts +21 -0
  520. package/dist/types/editor-next/index.d.ts +34 -0
  521. package/dist/types/editor-next/utils/deprecationWarnings.d.ts +2 -0
  522. package/dist/types/editor-next/utils/editorMeasureTTICallback.d.ts +5 -0
  523. package/dist/types/editor-next/utils/editorPropTypes.d.ts +19 -0
  524. package/dist/types/editor-next/utils/getBaseFontSize.d.ts +6 -0
  525. package/dist/types/editor-next/utils/getProvidersFromEditorProps.d.ts +9 -0
  526. package/dist/types/editor-next/utils/handleProviders.d.ts +14 -0
  527. package/dist/types/editor-next/utils/onEditorCreated.d.ts +12 -0
  528. package/dist/types/editor-next/utils/sendDurationAnalytics.d.ts +15 -0
  529. package/dist/types/editor-next/utils/trackEditorActions.d.ts +29 -0
  530. package/dist/types/editor.d.ts +50 -25
  531. package/dist/types/index.d.ts +1 -0
  532. package/dist/types/keymaps/consts.d.ts +0 -11
  533. package/dist/types/labs/next/internal/hooks/use-analytics/index.d.ts +1 -1
  534. package/dist/types/labs/next/presets/create-stub-internal-apis.d.ts +16 -0
  535. package/dist/types/labs/next/presets/cxhtml.d.ts +33 -1
  536. package/dist/types/labs/next/presets/default.d.ts +67 -10
  537. package/dist/types/labs/next/presets/mobile.d.ts +33 -1
  538. package/dist/types/labs/next/presets/universal.d.ts +5 -13
  539. package/dist/types/labs/next/presets/useUniversalPreset.d.ts +7 -0
  540. package/dist/types/nodeviews/context-adapter.d.ts +0 -1
  541. package/dist/types/nodeviews/index.d.ts +0 -1
  542. package/dist/types/plugins/alignment/index.d.ts +1 -1
  543. package/dist/types/plugins/alignment/pm-plugins/types.d.ts +0 -11
  544. package/dist/types/plugins/alignment/ui/ToolbarAlignment/index.d.ts +3 -1
  545. package/dist/types/plugins/analytics/index.d.ts +3 -6
  546. package/dist/types/plugins/analytics/plugin.d.ts +3 -1
  547. package/dist/types/plugins/analytics/utils.d.ts +2 -3
  548. package/dist/types/plugins/annotation/index.d.ts +3 -1
  549. package/dist/types/plugins/annotation/utils.d.ts +0 -17
  550. package/dist/types/plugins/avatar-group/index.d.ts +3 -1
  551. package/dist/types/plugins/base/index.d.ts +3 -1
  552. package/dist/types/plugins/base/pm-plugins/filter-steps.d.ts +1 -1
  553. package/dist/types/plugins/base/pm-plugins/react-nodeview.d.ts +2 -3
  554. package/dist/types/plugins/base/utils/input-latency-tracking.d.ts +1 -3
  555. package/dist/types/plugins/before-primaryToolbar/index.d.ts +3 -1
  556. package/dist/types/plugins/block-type/index.d.ts +3 -1
  557. package/dist/types/plugins/block-type/pm-plugins/input-rule.d.ts +2 -6
  558. package/dist/types/plugins/block-type/ui/ToolbarBlockType/blocktype-button.d.ts +1 -0
  559. package/dist/types/plugins/block-type/ui/ToolbarBlockType/index.d.ts +1 -0
  560. package/dist/types/plugins/breakout/index.d.ts +3 -1
  561. package/dist/types/plugins/caption/index.d.ts +0 -2
  562. package/dist/types/plugins/card/index.d.ts +3 -1
  563. package/dist/types/plugins/card/nodeviews/blockCard.d.ts +2 -10
  564. package/dist/types/plugins/card/nodeviews/genericCard.d.ts +2 -1
  565. package/dist/types/plugins/card/nodeviews/inlineCard.d.ts +1 -1
  566. package/dist/types/plugins/card/pm-plugins/util/state.d.ts +1 -0
  567. package/dist/types/plugins/card/types.d.ts +3 -0
  568. package/dist/types/plugins/code-bidi-warning/index.d.ts +3 -1
  569. package/dist/types/plugins/code-block/actions.d.ts +0 -4
  570. package/dist/types/plugins/code-block/index.d.ts +3 -1
  571. package/dist/types/plugins/code-block/pm-plugins/main-state.d.ts +0 -3
  572. package/dist/types/plugins/collab-edit/index.d.ts +3 -1
  573. package/dist/types/plugins/collab-edit/provider/index.d.ts +1 -2
  574. package/dist/types/plugins/collab-edit/provider/types.d.ts +1 -36
  575. package/dist/types/plugins/context-panel/index.d.ts +3 -4
  576. package/dist/types/plugins/data-consumer/index.d.ts +0 -2
  577. package/dist/types/plugins/date/utils/internal.d.ts +0 -1
  578. package/dist/types/plugins/emoji/index.d.ts +3 -1
  579. package/dist/types/plugins/expand/index.d.ts +3 -1
  580. package/dist/types/plugins/extension/commands.d.ts +0 -1
  581. package/dist/types/plugins/extension/index.d.ts +3 -1
  582. package/dist/types/plugins/extension/nodeviews/extension.d.ts +0 -5
  583. package/dist/types/plugins/extension/toolbar.d.ts +5 -0
  584. package/dist/types/plugins/feature-flags-context/index.d.ts +3 -1
  585. package/dist/types/plugins/feedback-dialog/index.d.ts +3 -3
  586. package/dist/types/plugins/find-replace/index.d.ts +3 -1
  587. package/dist/types/plugins/floating-toolbar/ui/Button.d.ts +4 -1
  588. package/dist/types/plugins/floating-toolbar/ui/Dropdown.d.ts +6 -2
  589. package/dist/types/plugins/floating-toolbar/utils.d.ts +0 -2
  590. package/dist/types/plugins/fragment/index.d.ts +0 -2
  591. package/dist/types/plugins/grid/index.d.ts +3 -1
  592. package/dist/types/plugins/help-dialog/commands.d.ts +0 -1
  593. package/dist/types/plugins/help-dialog/index.d.ts +3 -1
  594. package/dist/types/plugins/history/actions.d.ts +1 -2
  595. package/dist/types/plugins/hyperlink/analytics.d.ts +1 -1
  596. package/dist/types/plugins/hyperlink/index.d.ts +3 -1
  597. package/dist/types/plugins/hyperlink/pm-plugins/main.d.ts +4 -2
  598. package/dist/types/plugins/hyperlink/types.d.ts +3 -1
  599. package/dist/types/plugins/hyperlink/ui/EditorLinkPicker/index.d.ts +3 -1
  600. package/dist/types/plugins/insert-block/index.d.ts +3 -1
  601. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-element-browser.d.ts +1 -0
  602. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu-legacy.d.ts +1 -0
  603. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-menu.d.ts +1 -0
  604. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.d.ts +1 -0
  605. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/index.d.ts +1 -0
  606. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +1 -0
  607. package/dist/types/plugins/layout/index.d.ts +3 -1
  608. package/dist/types/plugins/layout/styles.d.ts +2 -1
  609. package/dist/types/plugins/list/index.d.ts +3 -1
  610. package/dist/types/plugins/list/utils/find.d.ts +0 -1
  611. package/dist/types/plugins/list/utils/indentation.d.ts +0 -1
  612. package/dist/types/plugins/list/utils/node.d.ts +0 -2
  613. package/dist/types/plugins/list/utils/selection.d.ts +0 -3
  614. package/dist/types/plugins/max-content-size/index.d.ts +3 -1
  615. package/dist/types/plugins/media/commands/helpers.d.ts +5 -12
  616. package/dist/types/plugins/media/commands/index.d.ts +1 -1
  617. package/dist/types/plugins/media/index.d.ts +3 -1
  618. package/dist/types/plugins/media/nodeviews/__mocks__/mediaNodeUpdater.d.ts +3 -1
  619. package/dist/types/plugins/media/nodeviews/mediaNodeUpdater.d.ts +4 -1
  620. package/dist/types/plugins/media/pm-plugins/main.d.ts +1 -4
  621. package/dist/types/plugins/media/pm-plugins/types.d.ts +1 -4
  622. package/dist/types/plugins/media/utils/media-common.d.ts +0 -5
  623. package/dist/types/plugins/mentions/index.d.ts +3 -1
  624. package/dist/types/plugins/mentions/types.d.ts +1 -2
  625. package/dist/types/plugins/mentions/ui/InviteItem/index.d.ts +2 -3
  626. package/dist/types/plugins/mentions/ui/InviteItem/styles.d.ts +0 -6
  627. package/dist/types/plugins/mentions/ui/ToolbarMention/index.d.ts +1 -4
  628. package/dist/types/plugins/mobile-dimensions/index.d.ts +0 -1
  629. package/dist/types/plugins/panel/index.d.ts +3 -1
  630. package/dist/types/plugins/paste/handlers.d.ts +2 -1
  631. package/dist/types/plugins/paste/index.d.ts +3 -2
  632. package/dist/types/plugins/paste/pm-plugins/analytics.d.ts +10 -4
  633. package/dist/types/plugins/paste/util/index.d.ts +0 -6
  634. package/dist/types/plugins/placeholder/index.d.ts +3 -1
  635. package/dist/types/plugins/placeholder-text/index.d.ts +3 -1
  636. package/dist/types/plugins/quick-insert/assets/index.d.ts +0 -2
  637. package/dist/types/plugins/quick-insert/index.d.ts +3 -1
  638. package/dist/types/plugins/save-on-enter/index.d.ts +3 -1
  639. package/dist/types/plugins/selection/index.d.ts +3 -1
  640. package/dist/types/plugins/status/index.d.ts +3 -1
  641. package/dist/types/plugins/status/ui/statusPicker.d.ts +3 -0
  642. package/dist/types/plugins/status/utils.d.ts +0 -3
  643. package/dist/types/plugins/submit-editor/index.d.ts +3 -1
  644. package/dist/types/plugins/tasks-and-decisions/index.d.ts +3 -1
  645. package/dist/types/plugins/tasks-and-decisions/pm-plugins/main.d.ts +0 -6
  646. package/dist/types/plugins/text-color/index.d.ts +3 -1
  647. package/dist/types/plugins/text-color/pm-plugins/main.d.ts +2 -12
  648. package/dist/types/plugins/text-color/ui/ToolbarTextColor/index.d.ts +2 -0
  649. package/dist/types/plugins/text-formatting/index.d.ts +3 -1
  650. package/dist/types/plugins/text-formatting/pm-plugins/clear-formatting.d.ts +0 -1
  651. package/dist/types/plugins/text-formatting/ui/Toolbar/more-button.d.ts +2 -1
  652. package/dist/types/plugins/text-formatting/utils.d.ts +0 -5
  653. package/dist/types/plugins/toolbar-lists-indentation/index.d.ts +3 -1
  654. package/dist/types/plugins/type-ahead/constants.d.ts +0 -4
  655. package/dist/types/plugins/type-ahead/index.d.ts +3 -1
  656. package/dist/types/plugins/type-ahead/pm-plugins/decorations.d.ts +0 -10
  657. package/dist/types/plugins/type-ahead/utils.d.ts +1 -2
  658. package/dist/types/test-utils.d.ts +4 -5
  659. package/dist/types/types/editor-appearance-component.d.ts +2 -2
  660. package/dist/types/types/editor-props.d.ts +55 -42
  661. package/dist/types/types/get-editor-props.d.ts +12 -0
  662. package/dist/types/types/performance-tracking.d.ts +10 -0
  663. package/dist/types/ui/Appearance/Chromeless.d.ts +0 -5
  664. package/dist/types/ui/Appearance/Comment/Comment.d.ts +0 -7
  665. package/dist/types/ui/Appearance/Comment/Toolbar.d.ts +3 -2
  666. package/dist/types/ui/Appearance/FullPage/MainToolbar.d.ts +0 -4
  667. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +29 -29
  668. package/dist/types/ui/AppearanceComponents/Mobile.d.ts +2 -5
  669. package/dist/types/ui/CollapsedEditor/index.d.ts +4 -3
  670. package/dist/types/ui/ColorPalette/Palettes/index.d.ts +1 -1
  671. package/dist/types/ui/ColorPalette/Palettes/type.d.ts +1 -1
  672. package/dist/types/ui/ColorPalette/index.d.ts +2 -1
  673. package/dist/types/ui/ColorPickerButton/index.d.ts +5 -2
  674. package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
  675. package/dist/types/ui/ConfigPanel/types.d.ts +0 -3
  676. package/dist/types/ui/ConfigPanel/utils.d.ts +2 -3
  677. package/dist/types/ui/ContentStyles/index.d.ts +2 -2
  678. package/dist/types/ui/ContextPanel/context.d.ts +2 -1
  679. package/dist/types/ui/ElementBrowser/ModalElementBrowser.d.ts +0 -3
  680. package/dist/types/ui/ElementBrowser/constants.d.ts +0 -1
  681. package/dist/types/ui/ElementBrowser/types.d.ts +0 -5
  682. package/dist/types/ui/PanelTextInput/index.d.ts +1 -1
  683. package/dist/types/ui/PortalProvider/index.d.ts +1 -1
  684. package/dist/types/ui/Resizer/utils.d.ts +0 -1
  685. package/dist/types/ui/styles.d.ts +0 -1
  686. package/dist/types/utils/document.d.ts +4 -3
  687. package/dist/types/utils/get-editor-plugins.d.ts +10 -0
  688. package/dist/types/utils/index.d.ts +6 -65
  689. package/dist/types/utils/input-rules.d.ts +1 -2
  690. package/dist/types/utils/linking-utils.d.ts +1 -1
  691. package/dist/types/utils/performance/components/RenderTracking.d.ts +1 -1
  692. package/dist/types/utils/performance/instrumented-plugin.d.ts +1 -1
  693. package/dist/types/utils/performance/safer-transactions.d.ts +1 -1
  694. package/dist/types/utils/prepare-extension-provider.d.ts +5 -0
  695. package/dist/types/utils/table.d.ts +0 -1
  696. package/docs/0-intro.tsx +0 -1
  697. package/package.json +37 -37
  698. package/report.api.md +307 -244
  699. package/dist/cjs/labs/next/presets/preset.js +0 -106
  700. package/dist/cjs/plugins/analytics/analytics-queue.js +0 -79
  701. package/dist/cjs/plugins/analytics/fire-analytics-event.js +0 -35
  702. package/dist/cjs/plugins/collab-edit/provider/channel.js +0 -313
  703. package/dist/cjs/plugins/collab-edit/provider/logger.js +0 -17
  704. package/dist/cjs/plugins/collab-edit/provider/mock-users.js +0 -19
  705. package/dist/cjs/plugins/data-consumer/plugin-key.js +0 -9
  706. package/dist/cjs/plugins/media/toolbar/toolbar-messages.js +0 -15
  707. package/dist/cjs/profiler/render-count.js +0 -60
  708. package/dist/cjs/ui/ColorPalette/Color/index.js +0 -9
  709. package/dist/cjs/ui/ConfigPanel/FieldDescription.js +0 -19
  710. package/dist/cjs/ui/WithPluginState/types.js +0 -5
  711. package/dist/es2019/labs/next/presets/preset.js +0 -71
  712. package/dist/es2019/plugins/analytics/analytics-queue.js +0 -53
  713. package/dist/es2019/plugins/analytics/fire-analytics-event.js +0 -26
  714. package/dist/es2019/plugins/collab-edit/provider/channel.js +0 -179
  715. package/dist/es2019/plugins/collab-edit/provider/logger.js +0 -8
  716. package/dist/es2019/plugins/collab-edit/provider/mock-users.js +0 -12
  717. package/dist/es2019/plugins/data-consumer/plugin-key.js +0 -2
  718. package/dist/es2019/plugins/media/toolbar/toolbar-messages.js +0 -8
  719. package/dist/es2019/profiler/render-count.js +0 -53
  720. package/dist/es2019/ui/ColorPalette/Color/index.js +0 -2
  721. package/dist/es2019/ui/ConfigPanel/FieldDescription.js +0 -12
  722. package/dist/esm/labs/next/presets/preset.js +0 -98
  723. package/dist/esm/plugins/analytics/analytics-queue.js +0 -71
  724. package/dist/esm/plugins/analytics/fire-analytics-event.js +0 -28
  725. package/dist/esm/plugins/analytics/types/type-ahead.js +0 -1
  726. package/dist/esm/plugins/collab-edit/provider/channel.js +0 -305
  727. package/dist/esm/plugins/collab-edit/provider/logger.js +0 -10
  728. package/dist/esm/plugins/collab-edit/provider/mock-users.js +0 -12
  729. package/dist/esm/plugins/data-consumer/plugin-key.js +0 -2
  730. package/dist/esm/plugins/media/toolbar/toolbar-messages.js +0 -8
  731. package/dist/esm/profiler/render-count.js +0 -49
  732. package/dist/esm/ui/ColorPalette/Color/index.js +0 -2
  733. package/dist/esm/ui/ConfigPanel/FieldDescription.js +0 -11
  734. package/dist/esm/ui/WithPluginState/types.js +0 -1
  735. package/dist/types/labs/next/presets/preset.d.ts +0 -46
  736. package/dist/types/plugins/analytics/analytics-queue.d.ts +0 -10
  737. package/dist/types/plugins/analytics/fire-analytics-event.d.ts +0 -9
  738. package/dist/types/plugins/analytics/types/type-ahead.d.ts +0 -1
  739. package/dist/types/plugins/collab-edit/provider/channel.d.ts +0 -48
  740. package/dist/types/plugins/collab-edit/provider/logger.d.ts +0 -1
  741. package/dist/types/plugins/collab-edit/provider/mock-users.d.ts +0 -6
  742. package/dist/types/plugins/data-consumer/plugin-key.d.ts +0 -2
  743. package/dist/types/plugins/media/toolbar/toolbar-messages.d.ts +0 -7
  744. package/dist/types/profiler/render-count.d.ts +0 -14
  745. package/dist/types/ui/ColorPalette/Color/index.d.ts +0 -2
  746. package/dist/types/ui/ConfigPanel/FieldDescription.d.ts +0 -6
  747. package/dist/types/ui/WithPluginState/types.d.ts +0 -10
  748. /package/dist/cjs/{plugins/analytics/types/type-ahead.js → types/get-editor-props.js} +0 -0
  749. /package/dist/es2019/{plugins/analytics/types/type-ahead.js → types/get-editor-props.js} +0 -0
  750. /package/dist/{es2019/ui/WithPluginState/types.js → esm/types/get-editor-props.js} +0 -0
@@ -4,8 +4,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
4
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
5
  import { ACTION, INPUT_METHOD, EVENT_TYPE, ACTION_SUBJECT, ACTION_SUBJECT_ID, addAnalytics, PasteTypes, PasteContents, withAnalytics } from '../../analytics';
6
6
  import { getPasteSource } from '../util';
7
- import { handlePasteAsPlainText, handlePasteIntoTaskOrDecisionOrPanel, handleCodeBlock, handleMediaSingle, handlePastePreservingMarks, handleMarkdown, handleRichText, handleExpandPasteInTable, handleSelectedTable, handlePasteLinkOnSelectedText, handlePasteIntoCaption, handlePastePanelIntoList } from '../handlers';
8
- import { pipe } from '../../../utils';
7
+ import { handlePasteAsPlainText, handlePasteIntoTaskOrDecisionOrPanel, handleCodeBlock, handleMediaSingle, handlePastePreservingMarks, handleMarkdown, handleRichText, handleExpandPasteInTable, handleSelectedTable, handlePasteLinkOnSelectedText, handlePasteIntoCaption, handlePastePanelOrDecisionContentIntoList, handlePasteNonNestableBlockNodesIntoList } from '../handlers';
9
8
  import { findParentNode } from 'prosemirror-utils';
10
9
  import { mapSlice } from '../../../utils/slice';
11
10
  import { getLinkDomain } from '../../hyperlink/utils';
@@ -54,10 +53,11 @@ var nodeToActionSubjectId = {
54
53
  tableRow: ACTION_SUBJECT_ID.PASTE_TABLE_ROW,
55
54
  taskList: ACTION_SUBJECT_ID.PASTE_TASK_LIST
56
55
  };
57
- export function getContent(state, slice) {
58
- var _state$schema = state.schema,
59
- paragraph = _state$schema.nodes.paragraph,
60
- link = _state$schema.marks.link;
56
+ export function getContent(_ref) {
57
+ var schema = _ref.schema,
58
+ slice = _ref.slice;
59
+ var paragraph = schema.nodes.paragraph,
60
+ link = schema.marks.link;
61
61
  var nodeOrMarkName = new Set();
62
62
  slice.content.forEach(function (node) {
63
63
  if (node.type === paragraph && node.content.size === 0) {
@@ -96,14 +96,14 @@ export function getMediaTraceId(slice) {
96
96
  });
97
97
  return traceId;
98
98
  }
99
- function getActionSubjectId(view) {
100
- var _view$state = view.state,
101
- selection = _view$state.selection,
102
- _view$state$schema$no = _view$state.schema.nodes,
103
- paragraph = _view$state$schema$no.paragraph,
104
- listItem = _view$state$schema$no.listItem,
105
- taskItem = _view$state$schema$no.taskItem,
106
- decisionItem = _view$state$schema$no.decisionItem;
99
+ function getActionSubjectId(_ref2) {
100
+ var selection = _ref2.selection,
101
+ schema = _ref2.schema;
102
+ var _schema$nodes = schema.nodes,
103
+ paragraph = _schema$nodes.paragraph,
104
+ listItem = _schema$nodes.listItem,
105
+ taskItem = _schema$nodes.taskItem,
106
+ decisionItem = _schema$nodes.decisionItem;
107
107
  var parent = findParentNode(function (node) {
108
108
  if (node.type !== paragraph && node.type !== listItem && node.type !== taskItem && node.type !== decisionItem) {
109
109
  return true;
@@ -145,51 +145,64 @@ function createPastePayload(actionSubjectId, attributes, linkDomain) {
145
145
  }
146
146
  } : {});
147
147
  }
148
- export function createPasteAnalyticsPayload(view, event, slice, pasteContext) {
149
- var text = event.clipboardData ? event.clipboardData.getData('text/plain') || event.clipboardData.getData('text/uri-list') : '';
150
- var actionSubjectId = getActionSubjectId(view);
151
- var pasteSize = slice.size;
152
- var content = getContent(view.state, slice);
153
- var linkUrls = [];
154
- var mediaTraceId = getMediaTraceId(slice);
148
+ function createPasteAnalyticsPayloadBySelection(event, slice, pasteContext) {
149
+ return function (selection) {
150
+ var text = event.clipboardData ? event.clipboardData.getData('text/plain') || event.clipboardData.getData('text/uri-list') : '';
151
+ var actionSubjectId = getActionSubjectId({
152
+ selection: selection,
153
+ schema: selection.$from.doc.type.schema
154
+ });
155
+ var pasteSize = slice.size;
156
+ var content = getContent({
157
+ schema: selection.$from.doc.type.schema,
158
+ slice: slice
159
+ });
160
+ var linkUrls = [];
161
+ var mediaTraceId = getMediaTraceId(slice);
155
162
 
156
- // If we have a link among the pasted content, grab the
157
- // domain and send it up with the analytics event
158
- if (content === PasteContents.url || content === PasteContents.mixed) {
159
- mapSlice(slice, function (node) {
160
- var linkMark = node.marks.find(function (mark) {
161
- return mark.type.name === 'link';
163
+ // If we have a link among the pasted content, grab the
164
+ // domain and send it up with the analytics event
165
+ if (content === PasteContents.url || content === PasteContents.mixed) {
166
+ mapSlice(slice, function (node) {
167
+ var linkMark = node.marks.find(function (mark) {
168
+ return mark.type.name === 'link';
169
+ });
170
+ if (linkMark) {
171
+ linkUrls.push(linkMark.attrs.href);
172
+ }
173
+ return node;
162
174
  });
163
- if (linkMark) {
164
- linkUrls.push(linkMark.attrs.href);
165
- }
166
- return node;
167
- });
168
- }
169
- if (pasteContext.asPlain) {
170
- return createPasteAsPlainPayload(actionSubjectId, text, linkUrls.length);
171
- }
172
- var source = getPasteSource(event);
173
- if (pasteContext.type === PasteTypes.plain) {
175
+ }
176
+ if (pasteContext.asPlain) {
177
+ return createPasteAsPlainPayload(actionSubjectId, text, linkUrls.length);
178
+ }
179
+ var source = getPasteSource(event);
180
+ if (pasteContext.type === PasteTypes.plain) {
181
+ return createPastePayload(actionSubjectId, {
182
+ pasteSize: text.length,
183
+ type: pasteContext.type,
184
+ content: PasteContents.text,
185
+ source: source,
186
+ hyperlinkPasteOnText: false,
187
+ linksInPasteCount: linkUrls.length,
188
+ pasteSplitList: pasteContext.pasteSplitList
189
+ });
190
+ }
191
+ var linkDomains = linkUrls.map(getLinkDomain);
174
192
  return createPastePayload(actionSubjectId, {
175
- pasteSize: text.length,
176
193
  type: pasteContext.type,
177
- content: PasteContents.text,
194
+ pasteSize: pasteSize,
195
+ content: content,
178
196
  source: source,
179
- hyperlinkPasteOnText: false,
180
- linksInPasteCount: linkUrls.length
181
- });
182
- }
183
- var linkDomains = linkUrls.map(getLinkDomain);
184
- return createPastePayload(actionSubjectId, {
185
- type: pasteContext.type,
186
- pasteSize: pasteSize,
187
- content: content,
188
- source: source,
189
- hyperlinkPasteOnText: !!pasteContext.hyperlinkPasteOnText,
190
- linksInPasteCount: linkUrls.length,
191
- mediaTraceId: mediaTraceId
192
- }, linkDomains);
197
+ hyperlinkPasteOnText: !!pasteContext.hyperlinkPasteOnText,
198
+ linksInPasteCount: linkUrls.length,
199
+ mediaTraceId: mediaTraceId,
200
+ pasteSplitList: pasteContext.pasteSplitList
201
+ }, linkDomains);
202
+ };
203
+ }
204
+ export function createPasteAnalyticsPayload(view, event, slice, pasteContext) {
205
+ return createPasteAnalyticsPayloadBySelection(event, slice, pasteContext)(view.state.selection);
193
206
  }
194
207
 
195
208
  // TODO: ED-6612 We should not dispatch only analytics, it's preferred to wrap each command with his own analytics.
@@ -205,73 +218,104 @@ export function pasteCommandWithAnalytics(view, event, slice, pasteContext) {
205
218
  });
206
219
  }
207
220
  export var handlePasteAsPlainTextWithAnalytics = function handlePasteAsPlainTextWithAnalytics(view, event, slice) {
208
- return pipe(handlePasteAsPlainText, pasteCommandWithAnalytics(view, event, slice, {
221
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
209
222
  type: PasteTypes.plain,
210
223
  asPlain: true
211
- }))(slice, event);
224
+ }))(handlePasteAsPlainText(slice, event));
212
225
  };
213
226
  export var handlePasteIntoTaskAndDecisionWithAnalytics = function handlePasteIntoTaskAndDecisionWithAnalytics(view, event, slice, type) {
214
- return pipe(handlePasteIntoTaskOrDecisionOrPanel, pasteCommandWithAnalytics(view, event, slice, {
227
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
215
228
  type: type
216
- }))(slice);
229
+ }))(handlePasteIntoTaskOrDecisionOrPanel(slice));
217
230
  };
218
231
  export var handlePasteIntoCaptionWithAnalytics = function handlePasteIntoCaptionWithAnalytics(view, event, slice, type) {
219
- return pipe(handlePasteIntoCaption, pasteCommandWithAnalytics(view, event, slice, {
232
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
220
233
  type: type
221
- }))(slice);
234
+ }))(handlePasteIntoCaption(slice));
222
235
  };
223
236
  export var handleCodeBlockWithAnalytics = function handleCodeBlockWithAnalytics(view, event, slice, text) {
224
- return pipe(handleCodeBlock, pasteCommandWithAnalytics(view, event, slice, {
237
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
225
238
  type: PasteTypes.plain
226
- }))(text);
239
+ }))(handleCodeBlock(text));
227
240
  };
228
241
  export var handleMediaSingleWithAnalytics = function handleMediaSingleWithAnalytics(view, event, slice, type) {
229
- return pipe(handleMediaSingle(INPUT_METHOD.CLIPBOARD), pasteCommandWithAnalytics(view, event, slice, {
242
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
230
243
  type: type
231
- }))(slice);
244
+ }))(handleMediaSingle(INPUT_METHOD.CLIPBOARD)(slice));
232
245
  };
233
246
  export var handlePastePreservingMarksWithAnalytics = function handlePastePreservingMarksWithAnalytics(view, event, slice, type) {
234
- return pipe(handlePastePreservingMarks, pasteCommandWithAnalytics(view, event, slice, {
247
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
235
248
  type: type
236
- }))(slice);
249
+ }))(handlePastePreservingMarks(slice));
237
250
  };
238
251
  export var handleMarkdownWithAnalytics = function handleMarkdownWithAnalytics(view, event, slice) {
239
- return pipe(handleMarkdown, pasteCommandWithAnalytics(view, event, slice, {
252
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
240
253
  type: PasteTypes.markdown
241
- }))(slice);
254
+ }))(handleMarkdown(slice));
242
255
  };
243
256
  export var handleRichTextWithAnalytics = function handleRichTextWithAnalytics(view, event, slice) {
244
- return pipe(handleRichText, pasteCommandWithAnalytics(view, event, slice, {
257
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
245
258
  type: PasteTypes.richText
246
- }))(slice);
259
+ }))(handleRichText(slice));
247
260
  };
248
- export var handlePastePanelIntoListWithAnalytics = function handlePastePanelIntoListWithAnalytics(view, event, slice) {
249
- return pipe(handlePastePanelIntoList, pasteCommandWithAnalytics(view, event, slice, {
261
+ function injectAnalyticsPayloadBeforeCommand(createPayloadByTransaction) {
262
+ return function (mainCommand) {
263
+ return function (state, dispatch, view) {
264
+ var originalTransaction = state.tr;
265
+ var fakeDispatch = function fakeDispatch(tr) {
266
+ originalTransaction = tr;
267
+ };
268
+ var result = mainCommand(state, fakeDispatch, view);
269
+ if (!result) {
270
+ return false;
271
+ }
272
+ if (dispatch && originalTransaction.docChanged) {
273
+ // it needs to know the selection before the changes
274
+ var payload = createPayloadByTransaction(state.selection);
275
+ addAnalytics(state, originalTransaction, payload);
276
+ dispatch(originalTransaction);
277
+ }
278
+ return true;
279
+ };
280
+ };
281
+ }
282
+ export var handlePastePanelOrDecisionIntoListWithAnalytics = function handlePastePanelOrDecisionIntoListWithAnalytics(view, event, slice) {
283
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
250
284
  type: PasteTypes.richText
251
- }))(slice);
285
+ }))(handlePastePanelOrDecisionContentIntoList(slice));
286
+ };
287
+ export var handlePasteNonNestableBlockNodesIntoListWithAnalytics = function handlePasteNonNestableBlockNodesIntoListWithAnalytics(view, event, slice) {
288
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
289
+ type: PasteTypes.richText,
290
+ pasteSplitList: true
291
+ }))(handlePasteNonNestableBlockNodesIntoList(slice));
252
292
  };
253
293
  export var handleExpandWithAnalytics = function handleExpandWithAnalytics(view, event, slice) {
254
- return pipe(handleExpandPasteInTable, pasteCommandWithAnalytics(view, event, slice, {
255
- type: PasteTypes.richText
256
- }))(slice);
294
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
295
+ type: PasteTypes.richText,
296
+ pasteSplitList: true
297
+ }))(handleExpandPasteInTable(slice));
257
298
  };
258
299
  export var handleSelectedTableWithAnalytics = function handleSelectedTableWithAnalytics(view, event, slice) {
259
- return pipe(handleSelectedTable, pasteCommandWithAnalytics(view, event, slice, {
300
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
260
301
  type: PasteTypes.richText
261
- }))(slice);
302
+ }))(handleSelectedTable(slice));
262
303
  };
263
304
  export var handlePasteLinkOnSelectedTextWithAnalytics = function handlePasteLinkOnSelectedTextWithAnalytics(view, event, slice, type) {
264
- return pipe(handlePasteLinkOnSelectedText, pasteCommandWithAnalytics(view, event, slice, {
305
+ return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
265
306
  type: type,
266
307
  hyperlinkPasteOnText: true
267
- }))(slice);
308
+ }))(handlePasteLinkOnSelectedText(slice));
268
309
  };
269
- export var createPasteMeasurePayload = function createPasteMeasurePayload(_ref) {
270
- var view = _ref.view,
271
- duration = _ref.duration,
272
- content = _ref.content,
273
- distortedDuration = _ref.distortedDuration;
274
- var pasteIntoNode = getActionSubjectId(view);
310
+ export var createPasteMeasurePayload = function createPasteMeasurePayload(_ref3) {
311
+ var view = _ref3.view,
312
+ duration = _ref3.duration,
313
+ content = _ref3.content,
314
+ distortedDuration = _ref3.distortedDuration;
315
+ var pasteIntoNode = getActionSubjectId({
316
+ selection: view.state.selection,
317
+ schema: view.state.schema
318
+ });
275
319
  return {
276
320
  action: ACTION.PASTED_TIMED,
277
321
  actionSubject: ACTION_SUBJECT.EDITOR,
@@ -14,7 +14,7 @@ import { linkifyContent } from '../../hyperlink/utils';
14
14
  import { transformSliceNestedExpandToExpand } from '../../expand/utils';
15
15
  import { handleMacroAutoConvert, handleMention, handleParagraphBlockMarks } from '../handlers';
16
16
  import { transformSliceToJoinAdjacentCodeBlocks, transformSingleLineCodeBlockToCodeMark } from '../../code-block/utils';
17
- import { createPasteMeasurePayload, getContentNodeTypes, handlePasteAsPlainTextWithAnalytics, handlePasteIntoTaskAndDecisionWithAnalytics, handleCodeBlockWithAnalytics, handleMediaSingleWithAnalytics, handlePastePreservingMarksWithAnalytics, handleMarkdownWithAnalytics, handleRichTextWithAnalytics, handleExpandWithAnalytics, handleSelectedTableWithAnalytics, handlePasteLinkOnSelectedTextWithAnalytics, sendPasteAnalyticsEvent, handlePasteIntoCaptionWithAnalytics, handlePastePanelIntoListWithAnalytics } from './analytics';
17
+ import { createPasteMeasurePayload, getContentNodeTypes, handlePasteAsPlainTextWithAnalytics, handlePasteIntoTaskAndDecisionWithAnalytics, handleCodeBlockWithAnalytics, handleMediaSingleWithAnalytics, handlePastePreservingMarksWithAnalytics, handleMarkdownWithAnalytics, handleRichTextWithAnalytics, handleExpandWithAnalytics, handleSelectedTableWithAnalytics, handlePasteLinkOnSelectedTextWithAnalytics, sendPasteAnalyticsEvent, handlePasteIntoCaptionWithAnalytics, handlePastePanelOrDecisionIntoListWithAnalytics, handlePasteNonNestableBlockNodesIntoListWithAnalytics } from './analytics';
18
18
  import { analyticsPluginKey, PasteTypes } from '../../analytics';
19
19
  import { isInsideBlockQuote, insideTable, measurements } from '../../../utils';
20
20
  import { measureRender } from '@atlaskit/editor-common/utils';
@@ -32,13 +32,18 @@ import { extractSliceFromStep } from '../../../utils/step';
32
32
  import { pluginKey as stateKey, createPluginState } from './plugin-factory';
33
33
  export { pluginKey as stateKey } from './plugin-factory';
34
34
  export { md } from '../md';
35
+ import { getFeatureFlags } from '../../feature-flags-context';
35
36
  export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, cardOptions, sanitizePrivateContent, providerFactory) {
36
37
  var atlassianMarkDownParser = new MarkdownTransformer(schema, md);
37
38
  function getMarkdownSlice(text, openStart, openEnd) {
38
39
  var textInput = text;
39
- if (textInput.includes('\\')) {
40
- textInput = textInput.replace(/\\/g, '\\\\');
40
+ var textSplitByCodeBlock = textInput.split(/```/);
41
+ for (var i = 0; i < textSplitByCodeBlock.length; i++) {
42
+ if (i % 2 === 0) {
43
+ textSplitByCodeBlock[i] = textSplitByCodeBlock[i].replace(/\\/g, '\\\\');
44
+ }
41
45
  }
46
+ textInput = textSplitByCodeBlock.join('```');
42
47
  var doc = atlassianMarkDownParser.parse(escapeLinks(textInput));
43
48
  if (doc && doc.content) {
44
49
  return new Slice(doc.content, openStart, openEnd);
@@ -350,7 +355,11 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, cardOptio
350
355
  if (handlePasteIntoCaptionWithAnalytics(view, event, slice, PasteTypes.richText)(state, dispatch)) {
351
356
  return true;
352
357
  }
353
- if (handlePastePanelIntoListWithAnalytics(view, event, slice)(state, dispatch)) {
358
+ var featureFlags = getFeatureFlags(state);
359
+ if (handlePastePanelOrDecisionIntoListWithAnalytics(view, event, slice)(state, dispatch)) {
360
+ return true;
361
+ }
362
+ if (featureFlags !== null && featureFlags !== void 0 && featureFlags.restartNumberedLists && handlePasteNonNestableBlockNodesIntoListWithAnalytics(view, event, slice)(state, dispatch)) {
354
363
  return true;
355
364
  }
356
365
  return handleRichTextWithAnalytics(view, event, slice)(state, dispatch);
@@ -11,19 +11,19 @@ export function isPastedFromWord(html) {
11
11
  export function isPastedFromExcel(html) {
12
12
  return !!html && html.indexOf('urn:schemas-microsoft-com:office:excel') >= 0;
13
13
  }
14
- export function isPastedFromDropboxPaper(html) {
14
+ function isPastedFromDropboxPaper(html) {
15
15
  return !!html && !!html.match(/class=\"\s?author-d-.+"/gim);
16
16
  }
17
- export function isPastedFromGoogleDocs(html) {
17
+ function isPastedFromGoogleDocs(html) {
18
18
  return !!html && !!html.match(/id=\"docs-internal-guid-.+"/gim);
19
19
  }
20
- export function isPastedFromGoogleSpreadSheets(html) {
20
+ function isPastedFromGoogleSpreadSheets(html) {
21
21
  return !!html && !!html.match(/data-sheets-.+=/gim);
22
22
  }
23
- export function isPastedFromPages(html) {
23
+ function isPastedFromPages(html) {
24
24
  return !!html && html.indexOf('content="Cocoa HTML Writer"') >= 0;
25
25
  }
26
- export function isPastedFromFabricEditor(html) {
26
+ function isPastedFromFabricEditor(html) {
27
27
  return !!html && html.indexOf('data-pm-slice="') >= 0;
28
28
  }
29
29
  export var isSingleLine = function isSingleLine(text) {
@@ -52,46 +52,6 @@ export function getPasteSource(event) {
52
52
  return 'uncategorized';
53
53
  }
54
54
 
55
- // TODO: Write JEST tests for this part
56
- export function isCode(str) {
57
- var lines = str.split(/\r?\n|\r/);
58
- if (3 > lines.length) {
59
- return false;
60
- }
61
- var weight = 0;
62
- lines.forEach(function (line) {
63
- // Ends with : or ;
64
- if (/[:;]$/.test(line)) {
65
- weight++;
66
- }
67
- // Contains second and third braces
68
- if (/[{}\[\]]/.test(line)) {
69
- weight++;
70
- }
71
- // Contains <tag> or </
72
- if (/<\w+>/.test(line) || /<\//.test(line)) {
73
- weight++;
74
- }
75
- // Contains () <- function calls
76
- if (/\(\)/.test(line)) {
77
- weight++;
78
- }
79
- // Contains a link
80
- if (/(^|[^!])\[(.*?)\]\((\S+)\)$/.test(line)) {
81
- weight--;
82
- }
83
- // New line starts with less than two chars. e.g- if, {, <, etc
84
- var token = /^(\s+)[a-zA-Z<{]{2,}/.exec(line);
85
- if (token && 2 <= token[1].length) {
86
- weight++;
87
- }
88
- if (/&&/.test(line)) {
89
- weight++;
90
- }
91
- });
92
- return 4 <= weight && weight >= 0.5 * lines.length;
93
- }
94
-
95
55
  // @see https://product-fabric.atlassian.net/browse/ED-3159
96
56
  // @see https://github.com/markdown-it/markdown-it/issues/38
97
57
  export function escapeLinks(text) {
@@ -224,7 +224,7 @@ var decorateWithPluginOptions = function decorateWithPluginOptions(plugin, optio
224
224
  };
225
225
  return plugin;
226
226
  };
227
- var placeholderTextPlugin = function placeholderTextPlugin(options) {
228
- return decorateWithPluginOptions(basePlaceholderTextPlugin(options), options);
227
+ var placeholderTextPlugin = function placeholderTextPlugin(options, api) {
228
+ return decorateWithPluginOptions(basePlaceholderTextPlugin(options, api), options);
229
229
  };
230
230
  export default placeholderTextPlugin;
@@ -172,16 +172,6 @@ export var IconPanel = Loadable({
172
172
  return null;
173
173
  }
174
174
  });
175
- export var IconCustomPanel = Loadable({
176
- loader: function loader() {
177
- return import( /* webpackChunkName: "@atlaskit-internal_editor-icon-custon-panel" */'./custom-panel').then(function (module) {
178
- return module.default;
179
- });
180
- },
181
- loading: function loading() {
182
- return null;
183
- }
184
- });
185
175
  export var IconQuote = Loadable({
186
176
  loader: function loader() {
187
177
  return import( /* webpackChunkName: "@atlaskit-internal_editor-icon-quote" */'./quote').then(function (module) {
@@ -202,16 +192,6 @@ export var IconStatus = Loadable({
202
192
  return null;
203
193
  }
204
194
  });
205
- export var IconFallback = Loadable({
206
- loader: function loader() {
207
- return import( /* webpackChunkName: "@atlaskit-internal_editor-icon-fallback" */'./fallback').then(function (module) {
208
- return module.default;
209
- });
210
- },
211
- loading: function loading() {
212
- return null;
213
- }
214
- });
215
195
  function importHeading(level) {
216
196
  switch (level) {
217
197
  case 1:
@@ -1,52 +1,16 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- var _mapDirection;
3
1
  import { NodeSelection, Selection, TextSelection } from 'prosemirror-state';
4
- import { findDomRefAtPos, removeNodeBefore } from 'prosemirror-utils';
2
+ import { findDomRefAtPos, findPositionOfNodeBefore, removeNodeBefore } from 'prosemirror-utils';
5
3
  import { ZERO_WIDTH_SPACE } from '@atlaskit/editor-common/utils';
6
4
  import { Direction, isBackward, isForward } from './direction';
7
5
  import { GapCursorSelection, Side } from './selection';
8
- import { getMediaNearPos, isTextBlockNearPos } from './utils';
6
+ import { isTextBlockNearPos } from './utils';
9
7
  import { isValidTargetNode } from './utils/is-valid-target-node';
10
8
  import { atTheBeginningOfDoc, atTheEndOfDoc } from '../../../utils/prosemirror/position';
11
9
  import { gapCursorPluginKey } from '../pm-plugins/gap-cursor-plugin-key';
12
10
  import { isPositionNearTableRow } from '../../../utils/table';
13
- var mapDirection = (_mapDirection = {}, _defineProperty(_mapDirection, Direction.LEFT, -1), _defineProperty(_mapDirection, Direction.RIGHT, 1), _defineProperty(_mapDirection, Direction.UP, -1), _defineProperty(_mapDirection, Direction.DOWN, 1), _defineProperty(_mapDirection, Direction.BACKWARD, -1), _defineProperty(_mapDirection, Direction.FORWARD, 1), _mapDirection);
14
- function shouldHandleMediaGapCursor(dir, state) {
15
- var doc = state.doc,
16
- schema = state.schema,
17
- selection = state.selection;
18
- var $pos = isBackward(dir) ? selection.$from : selection.$to;
19
- if (selection instanceof TextSelection) {
20
- // Should not use gap cursor if I am moving from a text selection into a media node
21
- if (dir === Direction.UP && !atTheBeginningOfDoc(state) || dir === Direction.DOWN && !atTheEndOfDoc(state)) {
22
- var media = getMediaNearPos(doc, $pos, schema, mapDirection[dir]);
23
- if (media) {
24
- return false;
25
- }
26
- }
27
-
28
- // Should not use gap cursor if I am moving from a text selection into a media node with layout wrap-right or wrap-left
29
- if (dir === Direction.LEFT || dir === Direction.RIGHT) {
30
- var _media = getMediaNearPos(doc, $pos, schema, mapDirection[dir]);
31
- var mediaSingle = schema.nodes.mediaSingle;
32
- if (_media && _media.type === mediaSingle && (_media.attrs.layout === 'wrap-right' || _media.attrs.layout === 'wrap-left')) {
33
- return false;
34
- }
35
- }
36
- }
37
- if (selection instanceof NodeSelection) {
38
- // Should not use gap cursor if I am moving left/right from media node with layout wrap right or wrap-left
39
- if (dir === Direction.LEFT || dir === Direction.RIGHT) {
40
- var maybeMedia = doc.nodeAt(selection.$from.pos);
41
- var _mediaSingle = schema.nodes.mediaSingle;
42
- if (maybeMedia && maybeMedia.type === _mediaSingle && (maybeMedia.attrs.layout === 'wrap-right' || maybeMedia.attrs.layout === 'wrap-left')) {
43
- return false;
44
- }
45
- }
46
- }
47
- return true;
48
- }
11
+ import { isMediaNode, isNodeBeforeMediaNode } from '@atlaskit/editor-common/utils';
49
12
  export var shouldSkipGapCursor = function shouldSkipGapCursor(direction, state, $pos) {
13
+ var _$pos$nodeBefore;
50
14
  var doc = state.doc,
51
15
  schema = state.schema;
52
16
  switch (direction) {
@@ -54,13 +18,48 @@ export var shouldSkipGapCursor = function shouldSkipGapCursor(direction, state,
54
18
  if (atTheBeginningOfDoc(state)) {
55
19
  return false;
56
20
  }
57
- return isPositionNearTableRow($pos, schema, 'before') || isTextBlockNearPos(doc, schema, $pos, -1);
21
+ return isPositionNearTableRow($pos, schema, 'before') || isTextBlockNearPos(doc, schema, $pos, -1) || isNodeBeforeMediaNode($pos, state);
58
22
  case Direction.DOWN:
59
- return atTheEndOfDoc(state) || isTextBlockNearPos(doc, schema, $pos, 1) || isPositionNearTableRow($pos, schema, 'after');
23
+ return atTheEndOfDoc(state) || isTextBlockNearPos(doc, schema, $pos, 1) || isPositionNearTableRow($pos, schema, 'after') || ((_$pos$nodeBefore = $pos.nodeBefore) === null || _$pos$nodeBefore === void 0 ? void 0 : _$pos$nodeBefore.type.name) === 'text' && !$pos.nodeAfter // end of a paragraph
24
+ ;
25
+
60
26
  default:
61
27
  return false;
62
28
  }
63
29
  };
30
+
31
+ // These cases should be handled using the handleMediaGapCursor function
32
+ function shouldHandleMediaGapCursor(dir, state) {
33
+ var _selection$$from$node;
34
+ var selection = state.selection;
35
+ var upArrowFromGapCursorIntoMedia = selection instanceof GapCursorSelection && dir === Direction.UP && selection.$from.nodeBefore && isMediaNode(selection.$from.nodeBefore);
36
+ var downArrowFromGapCursorIntoMediaGroup = selection instanceof GapCursorSelection && dir === Direction.DOWN && ((_selection$$from$node = selection.$from.nodeAfter) === null || _selection$$from$node === void 0 ? void 0 : _selection$$from$node.type.name) === 'mediaGroup';
37
+ return upArrowFromGapCursorIntoMedia || downArrowFromGapCursorIntoMediaGroup;
38
+ }
39
+
40
+ // Handle media gap cursor for up/down arrow into media nodes
41
+ // Should check this case by using shouldHandleMediaGapCursor first
42
+ function handleMediaGapCursor(dir, state) {
43
+ var selection = state.selection,
44
+ tr = state.tr;
45
+ var $pos = isBackward(dir) ? selection.$from : selection.$to;
46
+ if (dir === Direction.UP && selection.$from.nodeBefore && isMediaNode(selection.$from.nodeBefore)) {
47
+ var _tr$doc$nodeAt;
48
+ var nodeBeforePos = findPositionOfNodeBefore(tr.selection);
49
+ if (nodeBeforePos && selection.side === 'right' && ((_tr$doc$nodeAt = tr.doc.nodeAt(nodeBeforePos)) === null || _tr$doc$nodeAt === void 0 ? void 0 : _tr$doc$nodeAt.type.name) === 'mediaSingle') {
50
+ tr.setSelection(new NodeSelection(tr.doc.resolve(nodeBeforePos))).scrollIntoView();
51
+ } else if (nodeBeforePos || nodeBeforePos === 0) {
52
+ tr.setSelection(new GapCursorSelection(tr.doc.resolve(nodeBeforePos), Side.LEFT)).scrollIntoView();
53
+ }
54
+ }
55
+ if (dir === Direction.DOWN && selection.$from.nodeAfter) {
56
+ var nodeAfterPos = selection.side === 'right' ? $pos.pos : $pos.pos + selection.$from.nodeAfter.nodeSize;
57
+ if (nodeAfterPos) {
58
+ tr.setSelection(new GapCursorSelection(tr.doc.resolve(nodeAfterPos), Side.LEFT)).scrollIntoView();
59
+ }
60
+ }
61
+ return tr;
62
+ }
64
63
  export var arrow = function arrow(dir, endOfTextblock) {
65
64
  return function (state, dispatch, view) {
66
65
  var doc = state.doc,
@@ -89,13 +88,21 @@ export var arrow = function arrow(dir, endOfTextblock) {
89
88
  if (selection.node.isInline) {
90
89
  return false;
91
90
  }
92
- if (dir === Direction.UP || dir === Direction.DOWN) {
91
+ if (dir === Direction.UP && !atTheBeginningOfDoc(state) && !isNodeBeforeMediaNode($pos, state) || dir === Direction.DOWN) {
93
92
  // We dont add gap cursor on node selections going up and down
93
+ // Except we do if we're going up for a block node which is the
94
+ // first node in the document OR the node before is a media node
94
95
  return false;
95
96
  }
96
97
  }
97
- if (!shouldHandleMediaGapCursor(dir, state)) {
98
- return false;
98
+
99
+ // Handle media gap cursor for up/down arrow into media nodes
100
+ if (shouldHandleMediaGapCursor(dir, state)) {
101
+ var updatedTr = handleMediaGapCursor(dir, state);
102
+ if (dispatch) {
103
+ dispatch(updatedTr);
104
+ }
105
+ return true;
99
106
  }
100
107
 
101
108
  // when jumping between block nodes at the same depth, we need to reverse cursor without changing ProseMirror position
@@ -31,7 +31,10 @@ var baseStatusPlugin = function baseStatusPlugin(options) {
31
31
  }];
32
32
  },
33
33
  contentComponent: function contentComponent(_ref) {
34
- var editorView = _ref.editorView;
34
+ var editorView = _ref.editorView,
35
+ popupsMountPoint = _ref.popupsMountPoint,
36
+ popupsBoundariesElement = _ref.popupsBoundariesElement,
37
+ popupsScrollableElement = _ref.popupsScrollableElement;
35
38
  var domAtPos = editorView.domAtPos.bind(editorView);
36
39
  return /*#__PURE__*/React.createElement(WithPluginState, {
37
40
  plugins: {
@@ -59,6 +62,9 @@ var baseStatusPlugin = function baseStatusPlugin(options) {
59
62
  defaultText: text,
60
63
  defaultColor: color,
61
64
  defaultLocalId: localId,
65
+ mountTo: popupsMountPoint,
66
+ boundariesElement: popupsBoundariesElement,
67
+ scrollableElement: popupsScrollableElement,
62
68
  onSelect: function onSelect(status) {
63
69
  updateStatus(status)(editorView.state, editorView.dispatch);
64
70
  },
@@ -109,7 +115,7 @@ var decorateWithPluginOptions = function decorateWithPluginOptions(plugin, optio
109
115
  };
110
116
  return plugin;
111
117
  };
112
- var statusPlugin = function statusPlugin(options) {
113
- return decorateWithPluginOptions(baseStatusPlugin(options), options);
118
+ var statusPlugin = function statusPlugin(options, api) {
119
+ return decorateWithPluginOptions(baseStatusPlugin(options, api), options);
114
120
  };
115
121
  export default statusPlugin;
@@ -199,7 +199,10 @@ export var StatusPickerWithoutAnalytcs = /*#__PURE__*/function (_React$Component
199
199
  value: function render() {
200
200
  var _this$props = this.props,
201
201
  isNew = _this$props.isNew,
202
- target = _this$props.target;
202
+ target = _this$props.target,
203
+ mountTo = _this$props.mountTo,
204
+ boundariesElement = _this$props.boundariesElement,
205
+ scrollableElement = _this$props.scrollableElement;
203
206
  var _this$state3 = this.state,
204
207
  color = _this$state3.color,
205
208
  text = _this$state3.text;
@@ -209,7 +212,10 @@ export var StatusPickerWithoutAnalytcs = /*#__PURE__*/function (_React$Component
209
212
  handleClickOutside: this.handleClickOutside,
210
213
  handleEscapeKeydown: this.handleEscapeKeydown,
211
214
  zIndex: akEditorFloatingDialogZIndex,
212
- fitHeight: 40
215
+ fitHeight: 40,
216
+ mountTo: mountTo,
217
+ boundariesElement: boundariesElement,
218
+ scrollableElement: scrollableElement
213
219
  }, jsx("div", {
214
220
  css: pickerContainer,
215
221
  onClick: this.handlePopupClick