@atlaskit/editor-core 183.0.12 → 183.1.1

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 (546) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/cjs/actions/index.js +1 -16
  3. package/dist/cjs/create-editor/ErrorBoundary.js +19 -8
  4. package/dist/cjs/create-editor/ReactEditorViewInternal.js +40 -21
  5. package/dist/cjs/editor-next/editor-internal.js +6 -1
  6. package/dist/cjs/labs/next/presets/create-stub-internal-apis.js +1 -41
  7. package/dist/cjs/labs/next/presets/default.js +23 -1
  8. package/dist/cjs/labs/next/presets/universal.js +9 -18
  9. package/dist/cjs/plugins/analytics/index.js +0 -24
  10. package/dist/cjs/plugins/analytics/plugin-key.js +7 -1
  11. package/dist/cjs/plugins/analytics/plugin.js +17 -45
  12. package/dist/cjs/plugins/analytics/utils.js +24 -34
  13. package/dist/cjs/plugins/base/index.js +7 -1
  14. package/dist/cjs/plugins/base/pm-plugins/decoration.js +8 -0
  15. package/dist/cjs/plugins/block-type/commands/block-type.js +1 -1
  16. package/dist/cjs/plugins/caption/index.js +3 -2
  17. package/dist/cjs/plugins/caption/pm-plugins/main.js +8 -7
  18. package/dist/cjs/plugins/card/index.js +2 -2
  19. package/dist/cjs/plugins/card/nodeviews/embedCard.js +103 -70
  20. package/dist/cjs/plugins/card/nodeviews/genericCard.js +3 -2
  21. package/dist/cjs/plugins/card/pm-plugins/analytics/events-from-tr.js +36 -20
  22. package/dist/cjs/plugins/card/pm-plugins/analytics/utils.js +48 -9
  23. package/dist/cjs/plugins/card/pm-plugins/doc.js +19 -19
  24. package/dist/cjs/plugins/card/pm-plugins/main.js +5 -3
  25. package/dist/cjs/plugins/card/pm-plugins/shouldReplaceLink.js +4 -4
  26. package/dist/cjs/plugins/card/pm-plugins/util/resolve.js +6 -6
  27. package/dist/cjs/plugins/card/toolbar.js +86 -68
  28. package/dist/cjs/plugins/card/ui/EditLinkToolbar.js +19 -13
  29. package/dist/cjs/plugins/card/ui/EditorSmartCardEventsNext.js +9 -3
  30. package/dist/cjs/plugins/card/ui/LinkToolbarAppearance.js +6 -5
  31. package/dist/cjs/plugins/card/ui/LinkToolbarButtonGroup.js +2 -2
  32. package/dist/cjs/plugins/card/ui/ResizableEmbedCard.js +1 -2
  33. package/dist/cjs/plugins/collab-edit/ui/styles.js +2 -3
  34. package/dist/cjs/plugins/date/index.js +4 -3
  35. package/dist/cjs/plugins/expand/ui/styles.js +4 -5
  36. package/dist/cjs/plugins/floating-toolbar/ui/Dropdown.js +3 -3
  37. package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +5 -1
  38. package/dist/cjs/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +2 -2
  39. package/dist/cjs/plugins/floating-toolbar/ui/ScrollButtons.js +4 -6
  40. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +5 -5
  41. package/dist/cjs/plugins/grid/index.js +73 -39
  42. package/dist/cjs/plugins/history/pm-history-types.js +1 -5
  43. package/dist/cjs/plugins/history/utils.js +2 -2
  44. package/dist/cjs/plugins/hyperlink/HyperlinkToolbarAppearance.js +4 -2
  45. package/dist/cjs/plugins/hyperlink/Toolbar.js +4 -3
  46. package/dist/cjs/plugins/hyperlink/commands.js +14 -14
  47. package/dist/cjs/plugins/hyperlink/index.js +7 -5
  48. package/dist/cjs/plugins/hyperlink/pm-plugins/input-rule.js +5 -5
  49. package/dist/cjs/plugins/hyperlink/pm-plugins/keymap.js +2 -3
  50. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +2 -3
  51. package/dist/cjs/plugins/insert-block/index.js +1 -1
  52. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +40 -44
  53. package/dist/cjs/plugins/layout/styles.js +2 -2
  54. package/dist/cjs/plugins/list/actions/conversions.js +1 -1
  55. package/dist/cjs/plugins/list/commands/listBackspace.js +5 -5
  56. package/dist/cjs/plugins/list/pm-plugins/main.js +2 -2
  57. package/dist/cjs/plugins/list/transforms.js +2 -2
  58. package/dist/cjs/plugins/list/utils/analytics.js +2 -2
  59. package/dist/cjs/plugins/list/utils/find.js +6 -6
  60. package/dist/cjs/plugins/list/utils/indentation.js +3 -3
  61. package/dist/cjs/plugins/list/utils/node.js +32 -23
  62. package/dist/cjs/plugins/list/utils/selection.js +11 -11
  63. package/dist/cjs/plugins/macro/actions.js +2 -2
  64. package/dist/cjs/plugins/media/commands/linking.js +1 -1
  65. package/dist/cjs/plugins/media/index.js +1 -1
  66. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +31 -17
  67. package/dist/cjs/plugins/media/pm-plugins/alt-text/index.js +2 -2
  68. package/dist/cjs/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +3 -4
  69. package/dist/cjs/plugins/media/toolbar/filePreviewItem.js +2 -2
  70. package/dist/cjs/plugins/media/toolbar/linking-toolbar-appearance.js +4 -4
  71. package/dist/cjs/plugins/media/ui/ImageBorder/styles.js +4 -1
  72. package/dist/cjs/plugins/media/ui/MediaLinkingToolbar.js +3 -4
  73. package/dist/cjs/plugins/media/ui/ResizableMediaSingle/index.js +13 -4
  74. package/dist/cjs/plugins/media/utils/media-single.js +10 -57
  75. package/dist/cjs/plugins/paste/edge-cases/index.js +3 -3
  76. package/dist/cjs/plugins/paste/edge-cases/lists.js +1 -1
  77. package/dist/cjs/plugins/paste/handlers.js +16 -10
  78. package/dist/cjs/plugins/paste/pm-plugins/analytics.js +1 -1
  79. package/dist/cjs/plugins/paste/pm-plugins/main.js +13 -20
  80. package/dist/cjs/plugins/quick-insert/commands.js +1 -1
  81. package/dist/cjs/plugins/rule/pm-plugins/input-rule.js +1 -1
  82. package/dist/cjs/plugins/selection/commands.js +24 -23
  83. package/dist/cjs/plugins/selection/utils.js +2 -2
  84. package/dist/cjs/plugins/status/plugin.js +13 -7
  85. package/dist/cjs/plugins/status/ui/statusPicker.js +1 -1
  86. package/dist/cjs/plugins/type-ahead/insert-utils.js +2 -3
  87. package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +1 -1
  88. package/dist/cjs/plugins/width/index.js +12 -0
  89. package/dist/cjs/ui/Alignment/styles.js +1 -2
  90. package/dist/cjs/ui/Appearance/Comment/Toolbar.js +2 -3
  91. package/dist/cjs/ui/Appearance/FullPage/MainToolbar.js +1 -2
  92. package/dist/cjs/ui/ColorPickerButton/index.js +16 -9
  93. package/dist/cjs/ui/ConfigPanel/ErrorMessage/ErrorImage.js +1 -2
  94. package/dist/cjs/ui/ConfigPanel/Fields/ColorPicker.js +6 -3
  95. package/dist/cjs/ui/ConfigPanel/Fields/Expand.js +3 -4
  96. package/dist/cjs/ui/ConfigPanel/Fields/Fieldset.js +1 -2
  97. package/dist/cjs/ui/ConfigPanel/Fields/SelectItem.js +1 -2
  98. package/dist/cjs/ui/ConfigPanel/NestedForms/RemovableField.js +1 -2
  99. package/dist/cjs/ui/ContentStyles/index.js +2 -2
  100. package/dist/cjs/ui/ElementBrowser/InsertMenu.js +1 -1
  101. package/dist/cjs/ui/ElementBrowser/constants.js +4 -0
  102. package/dist/cjs/ui/ErrorBoundary/index.js +7 -0
  103. package/dist/cjs/ui/Resizer/index.js +4 -4
  104. package/dist/cjs/utils/commands.js +2 -2
  105. package/dist/cjs/utils/document.js +4 -12
  106. package/dist/cjs/utils/index.js +1 -14
  107. package/dist/cjs/utils/selection.js +1 -26
  108. package/dist/cjs/version-wrapper.js +1 -1
  109. package/dist/cjs/version.json +1 -1
  110. package/dist/es2019/actions/index.js +1 -16
  111. package/dist/es2019/create-editor/ErrorBoundary.js +18 -7
  112. package/dist/es2019/create-editor/ReactEditorViewInternal.js +44 -27
  113. package/dist/es2019/editor-next/editor-internal.js +6 -1
  114. package/dist/es2019/labs/next/presets/create-stub-internal-apis.js +1 -39
  115. package/dist/es2019/labs/next/presets/default.js +27 -1
  116. package/dist/es2019/labs/next/presets/universal.js +9 -19
  117. package/dist/es2019/plugins/analytics/index.js +1 -1
  118. package/dist/es2019/plugins/analytics/plugin-key.js +8 -1
  119. package/dist/es2019/plugins/analytics/plugin.js +15 -38
  120. package/dist/es2019/plugins/analytics/utils.js +24 -11
  121. package/dist/es2019/plugins/base/index.js +4 -1
  122. package/dist/es2019/plugins/base/pm-plugins/decoration.js +9 -0
  123. package/dist/es2019/plugins/block-type/commands/block-type.js +1 -1
  124. package/dist/es2019/plugins/caption/index.js +3 -2
  125. package/dist/es2019/plugins/caption/pm-plugins/main.js +8 -7
  126. package/dist/es2019/plugins/card/index.js +2 -2
  127. package/dist/es2019/plugins/card/nodeviews/embedCard.js +105 -70
  128. package/dist/es2019/plugins/card/nodeviews/genericCard.js +3 -2
  129. package/dist/es2019/plugins/card/pm-plugins/analytics/events-from-tr.js +33 -16
  130. package/dist/es2019/plugins/card/pm-plugins/analytics/utils.js +43 -7
  131. package/dist/es2019/plugins/card/pm-plugins/doc.js +19 -19
  132. package/dist/es2019/plugins/card/pm-plugins/main.js +7 -3
  133. package/dist/es2019/plugins/card/pm-plugins/shouldReplaceLink.js +1 -1
  134. package/dist/es2019/plugins/card/pm-plugins/util/resolve.js +6 -6
  135. package/dist/es2019/plugins/card/toolbar.js +51 -30
  136. package/dist/es2019/plugins/card/ui/EditLinkToolbar.js +11 -5
  137. package/dist/es2019/plugins/card/ui/EditorSmartCardEventsNext.js +6 -0
  138. package/dist/es2019/plugins/card/ui/LinkToolbarAppearance.js +6 -5
  139. package/dist/es2019/plugins/card/ui/LinkToolbarButtonGroup.js +1 -1
  140. package/dist/es2019/plugins/card/ui/ResizableEmbedCard.js +1 -1
  141. package/dist/es2019/plugins/collab-edit/ui/styles.js +3 -4
  142. package/dist/es2019/plugins/date/index.js +4 -3
  143. package/dist/es2019/plugins/expand/ui/styles.js +1 -2
  144. package/dist/es2019/plugins/floating-toolbar/ui/Dropdown.js +1 -1
  145. package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +6 -2
  146. package/dist/es2019/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +1 -1
  147. package/dist/es2019/plugins/floating-toolbar/ui/ScrollButtons.js +3 -5
  148. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +9 -9
  149. package/dist/es2019/plugins/grid/index.js +76 -39
  150. package/dist/es2019/plugins/history/pm-history-types.js +1 -2
  151. package/dist/es2019/plugins/history/utils.js +1 -1
  152. package/dist/es2019/plugins/hyperlink/HyperlinkToolbarAppearance.js +4 -2
  153. package/dist/es2019/plugins/hyperlink/Toolbar.js +4 -3
  154. package/dist/es2019/plugins/hyperlink/commands.js +3 -3
  155. package/dist/es2019/plugins/hyperlink/index.js +7 -5
  156. package/dist/es2019/plugins/hyperlink/pm-plugins/input-rule.js +3 -3
  157. package/dist/es2019/plugins/hyperlink/pm-plugins/keymap.js +1 -2
  158. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  159. package/dist/es2019/plugins/insert-block/index.js +1 -1
  160. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +16 -19
  161. package/dist/es2019/plugins/layout/styles.js +4 -0
  162. package/dist/es2019/plugins/list/actions/conversions.js +1 -1
  163. package/dist/es2019/plugins/list/commands/listBackspace.js +1 -1
  164. package/dist/es2019/plugins/list/pm-plugins/main.js +1 -1
  165. package/dist/es2019/plugins/list/transforms.js +1 -1
  166. package/dist/es2019/plugins/list/utils/analytics.js +1 -1
  167. package/dist/es2019/plugins/list/utils/find.js +1 -1
  168. package/dist/es2019/plugins/list/utils/indentation.js +1 -1
  169. package/dist/es2019/plugins/list/utils/node.js +2 -12
  170. package/dist/es2019/plugins/list/utils/selection.js +1 -1
  171. package/dist/es2019/plugins/macro/actions.js +1 -1
  172. package/dist/es2019/plugins/media/commands/linking.js +1 -1
  173. package/dist/es2019/plugins/media/index.js +1 -1
  174. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +20 -6
  175. package/dist/es2019/plugins/media/pm-plugins/alt-text/index.js +1 -1
  176. package/dist/es2019/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +1 -1
  177. package/dist/es2019/plugins/media/toolbar/filePreviewItem.js +1 -1
  178. package/dist/es2019/plugins/media/toolbar/linking-toolbar-appearance.js +1 -1
  179. package/dist/es2019/plugins/media/ui/ImageBorder/styles.js +4 -0
  180. package/dist/es2019/plugins/media/ui/MediaLinkingToolbar.js +2 -2
  181. package/dist/es2019/plugins/media/ui/ResizableMediaSingle/index.js +15 -3
  182. package/dist/es2019/plugins/media/utils/media-single.js +5 -53
  183. package/dist/es2019/plugins/paste/edge-cases/index.js +1 -1
  184. package/dist/es2019/plugins/paste/edge-cases/lists.js +1 -1
  185. package/dist/es2019/plugins/paste/handlers.js +11 -4
  186. package/dist/es2019/plugins/paste/pm-plugins/analytics.js +1 -1
  187. package/dist/es2019/plugins/paste/pm-plugins/main.js +2 -3
  188. package/dist/es2019/plugins/quick-insert/commands.js +1 -1
  189. package/dist/es2019/plugins/rule/pm-plugins/input-rule.js +1 -1
  190. package/dist/es2019/plugins/selection/commands.js +2 -1
  191. package/dist/es2019/plugins/selection/utils.js +1 -1
  192. package/dist/es2019/plugins/status/plugin.js +9 -3
  193. package/dist/es2019/plugins/status/ui/statusPicker.js +2 -2
  194. package/dist/es2019/plugins/type-ahead/insert-utils.js +1 -2
  195. package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +2 -2
  196. package/dist/es2019/plugins/width/index.js +12 -0
  197. package/dist/es2019/ui/Alignment/styles.js +1 -2
  198. package/dist/es2019/ui/Appearance/Comment/Toolbar.js +2 -3
  199. package/dist/es2019/ui/Appearance/FullPage/MainToolbar.js +3 -4
  200. package/dist/es2019/ui/ColorPickerButton/index.js +18 -9
  201. package/dist/es2019/ui/ConfigPanel/ErrorMessage/ErrorImage.js +1 -2
  202. package/dist/es2019/ui/ConfigPanel/Fields/ColorPicker.js +7 -3
  203. package/dist/es2019/ui/ConfigPanel/Fields/Expand.js +5 -6
  204. package/dist/es2019/ui/ConfigPanel/Fields/Fieldset.js +2 -3
  205. package/dist/es2019/ui/ConfigPanel/Fields/SelectItem.js +1 -2
  206. package/dist/es2019/ui/ConfigPanel/NestedForms/RemovableField.js +1 -2
  207. package/dist/es2019/ui/ContentStyles/index.js +2 -1
  208. package/dist/es2019/ui/ElementBrowser/InsertMenu.js +2 -2
  209. package/dist/es2019/ui/ElementBrowser/constants.js +3 -0
  210. package/dist/es2019/ui/ErrorBoundary/index.js +7 -0
  211. package/dist/es2019/ui/Resizer/index.js +4 -4
  212. package/dist/es2019/utils/commands.js +1 -1
  213. package/dist/es2019/utils/document.js +1 -8
  214. package/dist/es2019/utils/index.js +2 -2
  215. package/dist/es2019/utils/selection.js +0 -22
  216. package/dist/es2019/version-wrapper.js +1 -1
  217. package/dist/es2019/version.json +1 -1
  218. package/dist/esm/actions/index.js +1 -16
  219. package/dist/esm/create-editor/ErrorBoundary.js +19 -8
  220. package/dist/esm/create-editor/ReactEditorViewInternal.js +40 -21
  221. package/dist/esm/editor-next/editor-internal.js +6 -1
  222. package/dist/esm/labs/next/presets/create-stub-internal-apis.js +1 -41
  223. package/dist/esm/labs/next/presets/default.js +23 -1
  224. package/dist/esm/labs/next/presets/universal.js +9 -18
  225. package/dist/esm/plugins/analytics/index.js +1 -1
  226. package/dist/esm/plugins/analytics/plugin-key.js +8 -1
  227. package/dist/esm/plugins/analytics/plugin.js +17 -45
  228. package/dist/esm/plugins/analytics/utils.js +24 -11
  229. package/dist/esm/plugins/base/index.js +4 -1
  230. package/dist/esm/plugins/base/pm-plugins/decoration.js +9 -0
  231. package/dist/esm/plugins/block-type/commands/block-type.js +1 -1
  232. package/dist/esm/plugins/caption/index.js +3 -2
  233. package/dist/esm/plugins/caption/pm-plugins/main.js +8 -7
  234. package/dist/esm/plugins/card/index.js +2 -2
  235. package/dist/esm/plugins/card/nodeviews/embedCard.js +103 -70
  236. package/dist/esm/plugins/card/nodeviews/genericCard.js +3 -2
  237. package/dist/esm/plugins/card/pm-plugins/analytics/events-from-tr.js +36 -20
  238. package/dist/esm/plugins/card/pm-plugins/analytics/utils.js +43 -7
  239. package/dist/esm/plugins/card/pm-plugins/doc.js +19 -19
  240. package/dist/esm/plugins/card/pm-plugins/main.js +5 -3
  241. package/dist/esm/plugins/card/pm-plugins/shouldReplaceLink.js +1 -1
  242. package/dist/esm/plugins/card/pm-plugins/util/resolve.js +6 -6
  243. package/dist/esm/plugins/card/toolbar.js +86 -68
  244. package/dist/esm/plugins/card/ui/EditLinkToolbar.js +19 -13
  245. package/dist/esm/plugins/card/ui/EditorSmartCardEventsNext.js +9 -3
  246. package/dist/esm/plugins/card/ui/LinkToolbarAppearance.js +6 -5
  247. package/dist/esm/plugins/card/ui/LinkToolbarButtonGroup.js +1 -1
  248. package/dist/esm/plugins/card/ui/ResizableEmbedCard.js +1 -1
  249. package/dist/esm/plugins/collab-edit/ui/styles.js +2 -3
  250. package/dist/esm/plugins/date/index.js +4 -3
  251. package/dist/esm/plugins/expand/ui/styles.js +2 -3
  252. package/dist/esm/plugins/floating-toolbar/ui/Dropdown.js +1 -1
  253. package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +5 -1
  254. package/dist/esm/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +1 -1
  255. package/dist/esm/plugins/floating-toolbar/ui/ScrollButtons.js +2 -4
  256. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +5 -5
  257. package/dist/esm/plugins/grid/index.js +72 -36
  258. package/dist/esm/plugins/history/pm-history-types.js +1 -2
  259. package/dist/esm/plugins/history/utils.js +1 -1
  260. package/dist/esm/plugins/hyperlink/HyperlinkToolbarAppearance.js +4 -2
  261. package/dist/esm/plugins/hyperlink/Toolbar.js +4 -3
  262. package/dist/esm/plugins/hyperlink/commands.js +3 -3
  263. package/dist/esm/plugins/hyperlink/index.js +7 -5
  264. package/dist/esm/plugins/hyperlink/pm-plugins/input-rule.js +3 -3
  265. package/dist/esm/plugins/hyperlink/pm-plugins/keymap.js +1 -2
  266. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  267. package/dist/esm/plugins/insert-block/index.js +1 -1
  268. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +40 -44
  269. package/dist/esm/plugins/layout/styles.js +3 -1
  270. package/dist/esm/plugins/list/actions/conversions.js +1 -1
  271. package/dist/esm/plugins/list/commands/listBackspace.js +1 -1
  272. package/dist/esm/plugins/list/pm-plugins/main.js +1 -1
  273. package/dist/esm/plugins/list/transforms.js +1 -1
  274. package/dist/esm/plugins/list/utils/analytics.js +1 -1
  275. package/dist/esm/plugins/list/utils/find.js +1 -1
  276. package/dist/esm/plugins/list/utils/indentation.js +1 -1
  277. package/dist/esm/plugins/list/utils/node.js +2 -12
  278. package/dist/esm/plugins/list/utils/selection.js +1 -1
  279. package/dist/esm/plugins/macro/actions.js +1 -1
  280. package/dist/esm/plugins/media/commands/linking.js +1 -1
  281. package/dist/esm/plugins/media/index.js +1 -1
  282. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +31 -17
  283. package/dist/esm/plugins/media/pm-plugins/alt-text/index.js +1 -1
  284. package/dist/esm/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +1 -1
  285. package/dist/esm/plugins/media/toolbar/filePreviewItem.js +1 -1
  286. package/dist/esm/plugins/media/toolbar/linking-toolbar-appearance.js +1 -1
  287. package/dist/esm/plugins/media/ui/ImageBorder/styles.js +4 -0
  288. package/dist/esm/plugins/media/ui/MediaLinkingToolbar.js +2 -2
  289. package/dist/esm/plugins/media/ui/ResizableMediaSingle/index.js +13 -3
  290. package/dist/esm/plugins/media/utils/media-single.js +5 -51
  291. package/dist/esm/plugins/paste/edge-cases/index.js +1 -1
  292. package/dist/esm/plugins/paste/edge-cases/lists.js +1 -1
  293. package/dist/esm/plugins/paste/handlers.js +11 -4
  294. package/dist/esm/plugins/paste/pm-plugins/analytics.js +1 -1
  295. package/dist/esm/plugins/paste/pm-plugins/main.js +2 -3
  296. package/dist/esm/plugins/quick-insert/commands.js +1 -1
  297. package/dist/esm/plugins/rule/pm-plugins/input-rule.js +1 -1
  298. package/dist/esm/plugins/selection/commands.js +2 -1
  299. package/dist/esm/plugins/selection/utils.js +1 -1
  300. package/dist/esm/plugins/status/plugin.js +9 -3
  301. package/dist/esm/plugins/status/ui/statusPicker.js +2 -2
  302. package/dist/esm/plugins/type-ahead/insert-utils.js +1 -2
  303. package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +2 -2
  304. package/dist/esm/plugins/width/index.js +12 -0
  305. package/dist/esm/ui/Alignment/styles.js +1 -2
  306. package/dist/esm/ui/Appearance/Comment/Toolbar.js +2 -3
  307. package/dist/esm/ui/Appearance/FullPage/MainToolbar.js +1 -2
  308. package/dist/esm/ui/ColorPickerButton/index.js +16 -9
  309. package/dist/esm/ui/ConfigPanel/ErrorMessage/ErrorImage.js +1 -2
  310. package/dist/esm/ui/ConfigPanel/Fields/ColorPicker.js +6 -2
  311. package/dist/esm/ui/ConfigPanel/Fields/Expand.js +3 -4
  312. package/dist/esm/ui/ConfigPanel/Fields/Fieldset.js +1 -2
  313. package/dist/esm/ui/ConfigPanel/Fields/SelectItem.js +1 -2
  314. package/dist/esm/ui/ConfigPanel/NestedForms/RemovableField.js +1 -2
  315. package/dist/esm/ui/ContentStyles/index.js +3 -3
  316. package/dist/esm/ui/ElementBrowser/InsertMenu.js +2 -2
  317. package/dist/esm/ui/ElementBrowser/constants.js +3 -0
  318. package/dist/esm/ui/ErrorBoundary/index.js +7 -0
  319. package/dist/esm/ui/Resizer/index.js +4 -4
  320. package/dist/esm/utils/commands.js +1 -1
  321. package/dist/esm/utils/document.js +1 -8
  322. package/dist/esm/utils/index.js +2 -2
  323. package/dist/esm/utils/selection.js +0 -23
  324. package/dist/esm/version-wrapper.js +1 -1
  325. package/dist/esm/version.json +1 -1
  326. package/dist/types/create-editor/ErrorBoundary.d.ts +2 -0
  327. package/dist/types/create-editor/ReactEditorViewInternal.d.ts +2 -1
  328. package/dist/types/labs/next/presets/create-stub-internal-apis.d.ts +0 -3
  329. package/dist/types/labs/next/presets/cxhtml.d.ts +63 -3
  330. package/dist/types/labs/next/presets/default.d.ts +129 -6
  331. package/dist/types/labs/next/presets/mobile.d.ts +63 -3
  332. package/dist/types/plugins/analytics/index.d.ts +1 -1
  333. package/dist/types/plugins/analytics/plugin-key.d.ts +6 -0
  334. package/dist/types/plugins/analytics/plugin.d.ts +9 -2
  335. package/dist/types/plugins/analytics/utils.d.ts +16 -3
  336. package/dist/types/plugins/base/index.d.ts +4 -0
  337. package/dist/types/plugins/base/pm-plugins/decoration.d.ts +8 -0
  338. package/dist/types/plugins/caption/index.d.ts +4 -1
  339. package/dist/types/plugins/caption/pm-plugins/main.d.ts +2 -1
  340. package/dist/types/plugins/card/index.d.ts +11 -1
  341. package/dist/types/plugins/card/nodeviews/embedCard.d.ts +1 -1
  342. package/dist/types/plugins/card/nodeviews/genericCard.d.ts +3 -0
  343. package/dist/types/plugins/card/pm-plugins/analytics/types.d.ts +2 -0
  344. package/dist/types/plugins/card/pm-plugins/analytics/utils.d.ts +8 -2
  345. package/dist/types/plugins/card/pm-plugins/doc.d.ts +7 -7
  346. package/dist/types/plugins/card/pm-plugins/main.d.ts +3 -1
  347. package/dist/types/plugins/card/pm-plugins/util/resolve.d.ts +2 -1
  348. package/dist/types/plugins/card/toolbar.d.ts +7 -4
  349. package/dist/types/plugins/card/types.d.ts +1 -0
  350. package/dist/types/plugins/card/ui/EditLinkToolbar.d.ts +4 -2
  351. package/dist/types/plugins/card/ui/LinkToolbarAppearance.d.ts +2 -0
  352. package/dist/types/plugins/date/index.d.ts +3 -2
  353. package/dist/types/plugins/date/ui/DatePicker/date-picker-input.d.ts +1 -1
  354. package/dist/types/plugins/date/ui/DatePicker/index.d.ts +1 -1
  355. package/dist/types/plugins/grid/index.d.ts +14 -7
  356. package/dist/types/plugins/grid/types.d.ts +3 -2
  357. package/dist/types/plugins/history/pm-history-types.d.ts +0 -1
  358. package/dist/types/plugins/hyperlink/HyperlinkToolbarAppearance.d.ts +2 -0
  359. package/dist/types/plugins/hyperlink/Toolbar.d.ts +2 -1
  360. package/dist/types/plugins/hyperlink/commands.d.ts +1 -1
  361. package/dist/types/plugins/hyperlink/index.d.ts +6 -2
  362. package/dist/types/plugins/insert-block/index.d.ts +6 -4
  363. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +3 -3
  364. package/dist/types/plugins/list/utils/node.d.ts +2 -6
  365. package/dist/types/plugins/media/index.d.ts +2 -1
  366. package/dist/types/plugins/media/nodeviews/mediaSingle.d.ts +4 -1
  367. package/dist/types/plugins/media/nodeviews/types.d.ts +4 -0
  368. package/dist/types/plugins/media/ui/ResizableMediaSingle/index.d.ts +1 -1
  369. package/dist/types/plugins/media/ui/ResizableMediaSingle/types.d.ts +1 -1
  370. package/dist/types/plugins/media/utils/media-single.d.ts +2 -15
  371. package/dist/types/plugins/paste/pm-plugins/main.d.ts +0 -1
  372. package/dist/types/plugins/width/index.d.ts +9 -1
  373. package/dist/types/types/performance-tracking.d.ts +1 -323
  374. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +5 -5
  375. package/dist/types/ui/ColorPickerButton/index.d.ts +6 -1
  376. package/dist/types/ui/ContentStyles/index.d.ts +2 -2
  377. package/dist/types/ui/ElementBrowser/components/CategoryList.d.ts +1 -1
  378. package/dist/types/ui/ElementBrowser/components/ElementList/ElementList.d.ts +1 -1
  379. package/dist/types/ui/Resizer/types.d.ts +1 -1
  380. package/dist/types/utils/document.d.ts +0 -4
  381. package/dist/types/utils/index.d.ts +2 -2
  382. package/dist/types/utils/selection.d.ts +1 -2
  383. package/dist/types-ts4.5/create-editor/ErrorBoundary.d.ts +2 -0
  384. package/dist/types-ts4.5/create-editor/ReactEditorViewInternal.d.ts +2 -1
  385. package/dist/types-ts4.5/labs/next/presets/create-stub-internal-apis.d.ts +0 -3
  386. package/dist/types-ts4.5/labs/next/presets/cxhtml.d.ts +73 -3
  387. package/dist/types-ts4.5/labs/next/presets/default.d.ts +149 -6
  388. package/dist/types-ts4.5/labs/next/presets/mobile.d.ts +73 -3
  389. package/dist/types-ts4.5/plugins/analytics/index.d.ts +1 -1
  390. package/dist/types-ts4.5/plugins/analytics/plugin-key.d.ts +6 -0
  391. package/dist/types-ts4.5/plugins/analytics/plugin.d.ts +10 -2
  392. package/dist/types-ts4.5/plugins/analytics/utils.d.ts +16 -3
  393. package/dist/types-ts4.5/plugins/base/index.d.ts +4 -0
  394. package/dist/types-ts4.5/plugins/base/pm-plugins/decoration.d.ts +8 -0
  395. package/dist/types-ts4.5/plugins/caption/index.d.ts +6 -1
  396. package/dist/types-ts4.5/plugins/caption/pm-plugins/main.d.ts +2 -1
  397. package/dist/types-ts4.5/plugins/card/index.d.ts +9 -1
  398. package/dist/types-ts4.5/plugins/card/nodeviews/embedCard.d.ts +1 -1
  399. package/dist/types-ts4.5/plugins/card/nodeviews/genericCard.d.ts +3 -0
  400. package/dist/types-ts4.5/plugins/card/pm-plugins/analytics/types.d.ts +2 -0
  401. package/dist/types-ts4.5/plugins/card/pm-plugins/analytics/utils.d.ts +8 -2
  402. package/dist/types-ts4.5/plugins/card/pm-plugins/doc.d.ts +7 -7
  403. package/dist/types-ts4.5/plugins/card/pm-plugins/main.d.ts +3 -1
  404. package/dist/types-ts4.5/plugins/card/pm-plugins/util/resolve.d.ts +2 -1
  405. package/dist/types-ts4.5/plugins/card/toolbar.d.ts +7 -4
  406. package/dist/types-ts4.5/plugins/card/types.d.ts +1 -0
  407. package/dist/types-ts4.5/plugins/card/ui/EditLinkToolbar.d.ts +4 -2
  408. package/dist/types-ts4.5/plugins/card/ui/LinkToolbarAppearance.d.ts +2 -0
  409. package/dist/types-ts4.5/plugins/date/index.d.ts +3 -1
  410. package/dist/types-ts4.5/plugins/date/ui/DatePicker/date-picker-input.d.ts +1 -1
  411. package/dist/types-ts4.5/plugins/date/ui/DatePicker/index.d.ts +1 -1
  412. package/dist/types-ts4.5/plugins/grid/index.d.ts +16 -7
  413. package/dist/types-ts4.5/plugins/grid/types.d.ts +3 -2
  414. package/dist/types-ts4.5/plugins/history/pm-history-types.d.ts +0 -1
  415. package/dist/types-ts4.5/plugins/hyperlink/HyperlinkToolbarAppearance.d.ts +2 -0
  416. package/dist/types-ts4.5/plugins/hyperlink/Toolbar.d.ts +2 -1
  417. package/dist/types-ts4.5/plugins/hyperlink/commands.d.ts +1 -1
  418. package/dist/types-ts4.5/plugins/hyperlink/index.d.ts +4 -2
  419. package/dist/types-ts4.5/plugins/insert-block/index.d.ts +4 -4
  420. package/dist/types-ts4.5/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +3 -3
  421. package/dist/types-ts4.5/plugins/list/utils/node.d.ts +2 -6
  422. package/dist/types-ts4.5/plugins/media/index.d.ts +3 -1
  423. package/dist/types-ts4.5/plugins/media/nodeviews/mediaSingle.d.ts +4 -1
  424. package/dist/types-ts4.5/plugins/media/nodeviews/types.d.ts +4 -0
  425. package/dist/types-ts4.5/plugins/media/ui/ResizableMediaSingle/index.d.ts +1 -1
  426. package/dist/types-ts4.5/plugins/media/ui/ResizableMediaSingle/types.d.ts +1 -1
  427. package/dist/types-ts4.5/plugins/media/utils/media-single.d.ts +2 -15
  428. package/dist/types-ts4.5/plugins/paste/pm-plugins/main.d.ts +0 -1
  429. package/dist/types-ts4.5/plugins/width/index.d.ts +9 -1
  430. package/dist/types-ts4.5/types/performance-tracking.d.ts +1 -323
  431. package/dist/types-ts4.5/ui/Appearance/FullPage/StyledComponents.d.ts +5 -5
  432. package/dist/types-ts4.5/ui/ColorPickerButton/index.d.ts +6 -1
  433. package/dist/types-ts4.5/ui/ContentStyles/index.d.ts +2 -2
  434. package/dist/types-ts4.5/ui/ElementBrowser/components/CategoryList.d.ts +1 -1
  435. package/dist/types-ts4.5/ui/ElementBrowser/components/ElementList/ElementList.d.ts +1 -1
  436. package/dist/types-ts4.5/ui/Resizer/types.d.ts +1 -1
  437. package/dist/types-ts4.5/utils/document.d.ts +0 -4
  438. package/dist/types-ts4.5/utils/index.d.ts +2 -2
  439. package/dist/types-ts4.5/utils/selection.d.ts +1 -2
  440. package/package.json +30 -23
  441. package/report.api.md +80 -151
  442. package/dist/cjs/analytics-api/api.js +0 -32
  443. package/dist/cjs/analytics-api/attach-payload-into-transaction.js +0 -36
  444. package/dist/cjs/analytics-api/editor-state-context.js +0 -77
  445. package/dist/cjs/analytics-api/map-attributes.js +0 -23
  446. package/dist/cjs/insert-api/api.js +0 -43
  447. package/dist/cjs/insert-api/insert-content-handlers.js +0 -94
  448. package/dist/cjs/insert-api/insert-node-helpers.js +0 -133
  449. package/dist/cjs/insert-api/types.js +0 -5
  450. package/dist/cjs/plugins/floating-toolbar/ui/Button.js +0 -93
  451. package/dist/cjs/plugins/hyperlink/analytics.js +0 -23
  452. package/dist/cjs/plugins/hyperlink/utils.js +0 -183
  453. package/dist/cjs/plugins/paste/md-plugins/ignore-list-heading-md-plugin.js +0 -47
  454. package/dist/cjs/plugins/paste/md-plugins/linkify-md-plugin.js +0 -135
  455. package/dist/cjs/plugins/paste/md-plugins/newline-md-plugin.js +0 -67
  456. package/dist/cjs/plugins/paste/md-plugins/paragraph-md-plugin.js +0 -73
  457. package/dist/cjs/plugins/paste/md.js +0 -31
  458. package/dist/cjs/plugins/undo-redo/undo-redo-input-source.js +0 -26
  459. package/dist/cjs/types/get-editor-props.js +0 -5
  460. package/dist/cjs/utils/get-editor-plugins.js +0 -30
  461. package/dist/cjs/utils/insert.js +0 -251
  462. package/dist/cjs/utils/sendLogs.js +0 -12
  463. package/dist/es2019/analytics-api/api.js +0 -28
  464. package/dist/es2019/analytics-api/attach-payload-into-transaction.js +0 -32
  465. package/dist/es2019/analytics-api/editor-state-context.js +0 -74
  466. package/dist/es2019/analytics-api/map-attributes.js +0 -14
  467. package/dist/es2019/insert-api/api.js +0 -42
  468. package/dist/es2019/insert-api/insert-content-handlers.js +0 -84
  469. package/dist/es2019/insert-api/insert-node-helpers.js +0 -137
  470. package/dist/es2019/insert-api/types.js +0 -1
  471. package/dist/es2019/plugins/floating-toolbar/ui/Button.js +0 -85
  472. package/dist/es2019/plugins/hyperlink/analytics.js +0 -17
  473. package/dist/es2019/plugins/hyperlink/utils.js +0 -149
  474. package/dist/es2019/plugins/paste/md-plugins/ignore-list-heading-md-plugin.js +0 -43
  475. package/dist/es2019/plugins/paste/md-plugins/linkify-md-plugin.js +0 -128
  476. package/dist/es2019/plugins/paste/md-plugins/newline-md-plugin.js +0 -58
  477. package/dist/es2019/plugins/paste/md-plugins/paragraph-md-plugin.js +0 -64
  478. package/dist/es2019/plugins/paste/md.js +0 -23
  479. package/dist/es2019/plugins/undo-redo/undo-redo-input-source.js +0 -17
  480. package/dist/es2019/types/get-editor-props.js +0 -1
  481. package/dist/es2019/utils/get-editor-plugins.js +0 -23
  482. package/dist/es2019/utils/insert.js +0 -244
  483. package/dist/es2019/utils/sendLogs.js +0 -1
  484. package/dist/esm/analytics-api/api.js +0 -25
  485. package/dist/esm/analytics-api/attach-payload-into-transaction.js +0 -29
  486. package/dist/esm/analytics-api/editor-state-context.js +0 -69
  487. package/dist/esm/analytics-api/map-attributes.js +0 -16
  488. package/dist/esm/insert-api/api.js +0 -36
  489. package/dist/esm/insert-api/insert-content-handlers.js +0 -86
  490. package/dist/esm/insert-api/insert-node-helpers.js +0 -123
  491. package/dist/esm/insert-api/types.js +0 -1
  492. package/dist/esm/plugins/floating-toolbar/ui/Button.js +0 -85
  493. package/dist/esm/plugins/hyperlink/analytics.js +0 -17
  494. package/dist/esm/plugins/hyperlink/utils.js +0 -168
  495. package/dist/esm/plugins/paste/md-plugins/ignore-list-heading-md-plugin.js +0 -41
  496. package/dist/esm/plugins/paste/md-plugins/linkify-md-plugin.js +0 -128
  497. package/dist/esm/plugins/paste/md-plugins/newline-md-plugin.js +0 -60
  498. package/dist/esm/plugins/paste/md-plugins/paragraph-md-plugin.js +0 -66
  499. package/dist/esm/plugins/paste/md.js +0 -23
  500. package/dist/esm/plugins/undo-redo/undo-redo-input-source.js +0 -18
  501. package/dist/esm/types/get-editor-props.js +0 -1
  502. package/dist/esm/utils/get-editor-plugins.js +0 -23
  503. package/dist/esm/utils/insert.js +0 -241
  504. package/dist/esm/utils/sendLogs.js +0 -1
  505. package/dist/types/analytics-api/api.d.ts +0 -9
  506. package/dist/types/analytics-api/attach-payload-into-transaction.d.ts +0 -10
  507. package/dist/types/analytics-api/editor-state-context.d.ts +0 -9
  508. package/dist/types/analytics-api/map-attributes.d.ts +0 -2
  509. package/dist/types/insert-api/api.d.ts +0 -9
  510. package/dist/types/insert-api/insert-content-handlers.d.ts +0 -9
  511. package/dist/types/insert-api/insert-node-helpers.d.ts +0 -30
  512. package/dist/types/insert-api/types.d.ts +0 -16
  513. package/dist/types/plugins/floating-toolbar/ui/Button.d.ts +0 -30
  514. package/dist/types/plugins/hyperlink/analytics.d.ts +0 -2
  515. package/dist/types/plugins/hyperlink/utils.d.ts +0 -25
  516. package/dist/types/plugins/paste/md-plugins/ignore-list-heading-md-plugin.d.ts +0 -2
  517. package/dist/types/plugins/paste/md-plugins/linkify-md-plugin.d.ts +0 -2
  518. package/dist/types/plugins/paste/md-plugins/newline-md-plugin.d.ts +0 -2
  519. package/dist/types/plugins/paste/md-plugins/paragraph-md-plugin.d.ts +0 -2
  520. package/dist/types/plugins/paste/md.d.ts +0 -2
  521. package/dist/types/plugins/undo-redo/undo-redo-input-source.d.ts +0 -3
  522. package/dist/types/types/get-editor-props.d.ts +0 -12
  523. package/dist/types/utils/get-editor-plugins.d.ts +0 -10
  524. package/dist/types/utils/insert.d.ts +0 -24
  525. package/dist/types/utils/sendLogs.d.ts +0 -1
  526. package/dist/types-ts4.5/analytics-api/api.d.ts +0 -9
  527. package/dist/types-ts4.5/analytics-api/attach-payload-into-transaction.d.ts +0 -10
  528. package/dist/types-ts4.5/analytics-api/editor-state-context.d.ts +0 -9
  529. package/dist/types-ts4.5/analytics-api/map-attributes.d.ts +0 -2
  530. package/dist/types-ts4.5/insert-api/api.d.ts +0 -9
  531. package/dist/types-ts4.5/insert-api/insert-content-handlers.d.ts +0 -9
  532. package/dist/types-ts4.5/insert-api/insert-node-helpers.d.ts +0 -30
  533. package/dist/types-ts4.5/insert-api/types.d.ts +0 -16
  534. package/dist/types-ts4.5/plugins/floating-toolbar/ui/Button.d.ts +0 -30
  535. package/dist/types-ts4.5/plugins/hyperlink/analytics.d.ts +0 -2
  536. package/dist/types-ts4.5/plugins/hyperlink/utils.d.ts +0 -25
  537. package/dist/types-ts4.5/plugins/paste/md-plugins/ignore-list-heading-md-plugin.d.ts +0 -2
  538. package/dist/types-ts4.5/plugins/paste/md-plugins/linkify-md-plugin.d.ts +0 -2
  539. package/dist/types-ts4.5/plugins/paste/md-plugins/newline-md-plugin.d.ts +0 -2
  540. package/dist/types-ts4.5/plugins/paste/md-plugins/paragraph-md-plugin.d.ts +0 -2
  541. package/dist/types-ts4.5/plugins/paste/md.d.ts +0 -2
  542. package/dist/types-ts4.5/plugins/undo-redo/undo-redo-input-source.d.ts +0 -3
  543. package/dist/types-ts4.5/types/get-editor-props.d.ts +0 -12
  544. package/dist/types-ts4.5/utils/get-editor-plugins.d.ts +0 -10
  545. package/dist/types-ts4.5/utils/insert.d.ts +0 -24
  546. package/dist/types-ts4.5/utils/sendLogs.d.ts +0 -1
@@ -4,11 +4,13 @@ import uuid from 'uuid';
4
4
  import { ExperienceStore } from '@atlaskit/editor-common/ufo';
5
5
  import { IntlErrorBoundary } from '@atlaskit/editor-common/ui';
6
6
  import { sniffUserBrowserExtensions } from '@atlaskit/editor-common/utils';
7
+ import { getBooleanFF } from '@atlaskit/platform-feature-flags';
7
8
  import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../plugins/analytics';
8
9
  import { editorAnalyticsChannel } from '../plugins/analytics/consts';
9
10
  import { getDocStructure } from '../utils/document-logger';
10
11
  import { WithEditorView } from './WithEditorView';
11
12
  import { isOutdatedBrowser } from '@atlaskit/editor-common/utils';
13
+ import { logException } from '@atlaskit/editor-common/monitoring';
12
14
  export class ErrorBoundaryWithEditorView extends React.Component {
13
15
  constructor(props) {
14
16
  super(props);
@@ -29,7 +31,7 @@ export class ErrorBoundaryWithEditorView extends React.Component {
29
31
  const attributes = {
30
32
  product,
31
33
  browserInfo,
32
- error: error,
34
+ error: error.toString(),
33
35
  errorInfo,
34
36
  errorId: sharedId,
35
37
  browserExtensions: this.browserExtensions,
@@ -62,6 +64,12 @@ export class ErrorBoundaryWithEditorView extends React.Component {
62
64
  errorStack
63
65
  });
64
66
  }
67
+ if (getBooleanFF('platform.editor.sentry-error-monitoring_6bksu')) {
68
+ logException(error, {
69
+ location: 'editor-core/create-editor',
70
+ product
71
+ });
72
+ }
65
73
  });
66
74
  _defineProperty(this, "getProductName", async () => {
67
75
  const {
@@ -98,11 +106,13 @@ export class ErrorBoundaryWithEditorView extends React.Component {
98
106
  }
99
107
  }
100
108
  componentDidCatch(error, errorInfo) {
101
- this.sendErrorData({
102
- error: error.toString(),
103
- errorInfo,
104
- errorStack: error.stack
105
- });
109
+ if (this.props.errorTracking) {
110
+ this.sendErrorData({
111
+ error,
112
+ errorInfo,
113
+ errorStack: error.stack
114
+ });
115
+ }
106
116
 
107
117
  // // Update state to allow a re-render to attempt graceful recovery (in the event that
108
118
  // // the error was caused by a race condition or is intermittent)
@@ -132,6 +142,7 @@ export class ErrorBoundaryWithEditorView extends React.Component {
132
142
  }
133
143
  }
134
144
  _defineProperty(ErrorBoundaryWithEditorView, "defaultProps", {
135
- rethrow: true
145
+ rethrow: true,
146
+ errorTracking: true
136
147
  });
137
148
  export default WithEditorView(ErrorBoundaryWithEditorView);
@@ -52,7 +52,15 @@ export class ReactEditorView extends React.Component {
52
52
  countNodes() {
53
53
  return countNodes(this.editorState);
54
54
  }
55
+ isTransactionTrackingExplicitlyDisabled() {
56
+ var _this$props$editorPro3, _this$props$editorPro4, _this$props$editorPro5;
57
+ // ED-16320: Check for explicit disable so that by default
58
+ // it will still be enabled as it currently is. Then we can
59
+ // progressively opt out synthetic tenants.
60
+ return ((_this$props$editorPro3 = this.props.editorProps) === null || _this$props$editorPro3 === void 0 ? void 0 : (_this$props$editorPro4 = _this$props$editorPro3.performanceTracking) === null || _this$props$editorPro4 === void 0 ? void 0 : (_this$props$editorPro5 = _this$props$editorPro4.transactionTracking) === null || _this$props$editorPro5 === void 0 ? void 0 : _this$props$editorPro5.enabled) === false;
61
+ }
55
62
  constructor(props, context) {
63
+ var _props$editorProps, _props$editorProps$pe, _props$editorProps$pe2;
56
64
  super(props, context);
57
65
  _defineProperty(this, "editorRef", /*#__PURE__*/React.createRef());
58
66
  // ProseMirror is instantiated prior to the initial React render cycle,
@@ -83,7 +91,7 @@ export class ReactEditorView extends React.Component {
83
91
  doc,
84
92
  shouldScrollToBottom
85
93
  }) => {
86
- var _this$props$editorPro3, _this$props$editorPro4;
94
+ var _this$props$editorPro6, _this$props$editorPro7;
87
95
  if (!this.view) {
88
96
  return;
89
97
  }
@@ -101,7 +109,7 @@ export class ReactEditorView extends React.Component {
101
109
  selectionAtStart: !shouldScrollToBottom
102
110
  });
103
111
  this.view.updateState(this.editorState);
104
- (_this$props$editorPro3 = (_this$props$editorPro4 = this.props.editorProps).onChange) === null || _this$props$editorPro3 === void 0 ? void 0 : _this$props$editorPro3.call(_this$props$editorPro4, this.view, {
112
+ (_this$props$editorPro6 = (_this$props$editorPro7 = this.props.editorProps).onChange) === null || _this$props$editorPro6 === void 0 ? void 0 : _this$props$editorPro6.call(_this$props$editorPro7, this.view, {
105
113
  source: 'local'
106
114
  });
107
115
  });
@@ -214,7 +222,7 @@ export class ReactEditorView extends React.Component {
214
222
  const {
215
223
  editorProps
216
224
  } = this.props;
217
- if (editorProps !== null && editorProps !== void 0 && editorProps.trackValidTransactions) {
225
+ if (!this.isTransactionTrackingExplicitlyDisabled() && editorProps !== null && editorProps !== void 0 && editorProps.trackValidTransactions) {
218
226
  this.validTransactionCount++;
219
227
  const samplingRate = typeof editorProps.trackValidTransactions === 'object' && editorProps.trackValidTransactions.samplingRate || DEFAULT_SAMPLING_RATE_VALID_TRANSACTIONS;
220
228
  if (this.validTransactionCount >= samplingRate) {
@@ -293,9 +301,9 @@ export class ReactEditorView extends React.Component {
293
301
  source
294
302
  });
295
303
  stopMeasure(EVENT_NAME_ON_CHANGE, (duration, startTime) => {
296
- var _this$experienceStore5, _this$props$editorPro5, _this$props$editorPro6;
304
+ var _this$experienceStore5, _this$props$editorPro8, _this$props$editorPro9;
297
305
  (_this$experienceStore5 = this.experienceStore) === null || _this$experienceStore5 === void 0 ? void 0 : _this$experienceStore5.mark(EditorExperience.interaction, 'onChange', startTime + duration);
298
- if (((_this$props$editorPro5 = this.props.editorProps.performanceTracking) === null || _this$props$editorPro5 === void 0 ? void 0 : (_this$props$editorPro6 = _this$props$editorPro5.onChangeCallbackTracking) === null || _this$props$editorPro6 === void 0 ? void 0 : _this$props$editorPro6.enabled) !== true) {
306
+ if (((_this$props$editorPro8 = this.props.editorProps.performanceTracking) === null || _this$props$editorPro8 === void 0 ? void 0 : (_this$props$editorPro9 = _this$props$editorPro8.onChangeCallbackTracking) === null || _this$props$editorPro9 === void 0 ? void 0 : _this$props$editorPro9.enabled) !== true) {
299
307
  return;
300
308
  }
301
309
  this.dispatchAnalyticsEvent({
@@ -320,15 +328,17 @@ export class ReactEditorView extends React.Component {
320
328
  const invalidNodes = nodes.filter(node => !validNode(node)).map(node => getDocStructure(node, {
321
329
  compact: true
322
330
  }));
323
- this.dispatchAnalyticsEvent({
324
- action: ACTION.DISPATCHED_INVALID_TRANSACTION,
325
- actionSubject: ACTION_SUBJECT.EDITOR,
326
- eventType: EVENT_TYPE.OPERATIONAL,
327
- attributes: {
328
- analyticsEventPayloads: getAnalyticsEventsFromTransaction(transaction),
329
- invalidNodes
330
- }
331
- });
331
+ if (!this.isTransactionTrackingExplicitlyDisabled()) {
332
+ this.dispatchAnalyticsEvent({
333
+ action: ACTION.DISPATCHED_INVALID_TRANSACTION,
334
+ actionSubject: ACTION_SUBJECT.EDITOR,
335
+ eventType: EVENT_TYPE.OPERATIONAL,
336
+ attributes: {
337
+ analyticsEventPayloads: getAnalyticsEventsFromTransaction(transaction),
338
+ invalidNodes
339
+ }
340
+ });
341
+ }
332
342
  (_this$experienceStore8 = this.experienceStore) === null || _this$experienceStore8 === void 0 ? void 0 : _this$experienceStore8.fail(EditorExperience.interaction, {
333
343
  reason: 'invalid transaction',
334
344
  invalidNodes: invalidNodes.toString()
@@ -359,8 +369,8 @@ export class ReactEditorView extends React.Component {
359
369
  startTime,
360
370
  distortedDuration
361
371
  }) => {
362
- var _this$props$editorPro7, _this$props$editorPro8, _proseMirrorRenderedT, _proseMirrorRenderedT2;
363
- const proseMirrorRenderedTracking = (_this$props$editorPro7 = this.props.editorProps) === null || _this$props$editorPro7 === void 0 ? void 0 : (_this$props$editorPro8 = _this$props$editorPro7.performanceTracking) === null || _this$props$editorPro8 === void 0 ? void 0 : _this$props$editorPro8.proseMirrorRenderedTracking;
372
+ var _this$props$editorPro10, _this$props$editorPro11, _proseMirrorRenderedT, _proseMirrorRenderedT2;
373
+ const proseMirrorRenderedTracking = (_this$props$editorPro10 = this.props.editorProps) === null || _this$props$editorPro10 === void 0 ? void 0 : (_this$props$editorPro11 = _this$props$editorPro10.performanceTracking) === null || _this$props$editorPro11 === void 0 ? void 0 : _this$props$editorPro11.proseMirrorRenderedTracking;
364
374
  const forceSeverityTracking = typeof proseMirrorRenderedTracking === 'undefined' && shouldForceTracking();
365
375
  this.proseMirrorRenderedSeverity = !!forceSeverityTracking || proseMirrorRenderedTracking !== null && proseMirrorRenderedTracking !== void 0 && proseMirrorRenderedTracking.trackSeverity ? getAnalyticsEventSeverity(duration, (_proseMirrorRenderedT = proseMirrorRenderedTracking === null || proseMirrorRenderedTracking === void 0 ? void 0 : proseMirrorRenderedTracking.severityNormalThreshold) !== null && _proseMirrorRenderedT !== void 0 ? _proseMirrorRenderedT : PROSEMIRROR_RENDERED_NORMAL_SEVERITY_THRESHOLD, (_proseMirrorRenderedT2 = proseMirrorRenderedTracking === null || proseMirrorRenderedTracking === void 0 ? void 0 : proseMirrorRenderedTracking.severityDegradedThreshold) !== null && _proseMirrorRenderedT2 !== void 0 ? _proseMirrorRenderedT2 : PROSEMIRROR_RENDERED_DEGRADED_SEVERITY_THRESHOLD) : undefined;
366
376
  if (this.view) {
@@ -513,15 +523,22 @@ export class ReactEditorView extends React.Component {
513
523
  // ED-4759: Don't set selection at end for full-page editor - should be at start.
514
524
  selectionAtStart: isFullPage(props.editorProps.appearance)
515
525
  });
516
- this.dispatchAnalyticsEvent({
517
- action: ACTION.STARTED,
518
- actionSubject: ACTION_SUBJECT.EDITOR,
519
- attributes: {
520
- platform: PLATFORMS.WEB,
521
- featureFlags: featureFlagsEnabled
522
- },
523
- eventType: EVENT_TYPE.UI
524
- });
526
+
527
+ // ED-16320: Check for explicit disable so that by default
528
+ // it will still be enabled as it currently is. Then we can
529
+ // progressively opt out synthetic tenants.
530
+ const isEditorStartedExplicitlyDisabled = ((_props$editorProps = props.editorProps) === null || _props$editorProps === void 0 ? void 0 : (_props$editorProps$pe = _props$editorProps.performanceTracking) === null || _props$editorProps$pe === void 0 ? void 0 : (_props$editorProps$pe2 = _props$editorProps$pe.startedTracking) === null || _props$editorProps$pe2 === void 0 ? void 0 : _props$editorProps$pe2.enabled) === false;
531
+ if (!isEditorStartedExplicitlyDisabled) {
532
+ this.dispatchAnalyticsEvent({
533
+ action: ACTION.STARTED,
534
+ actionSubject: ACTION_SUBJECT.EDITOR,
535
+ attributes: {
536
+ platform: PLATFORMS.WEB,
537
+ featureFlags: featureFlagsEnabled
538
+ },
539
+ eventType: EVENT_TYPE.UI
540
+ });
541
+ }
525
542
  }
526
543
  UNSAFE_componentWillReceiveProps(nextProps) {
527
544
  // START TEMPORARY CODE ED-10584
@@ -655,8 +672,8 @@ export class ReactEditorView extends React.Component {
655
672
  return this.editorPlugins;
656
673
  }
657
674
  render() {
658
- var _this$props$editorPro9, _this$props$editorPro10;
659
- const renderTracking = (_this$props$editorPro9 = this.props.editorProps.performanceTracking) === null || _this$props$editorPro9 === void 0 ? void 0 : (_this$props$editorPro10 = _this$props$editorPro9.renderTracking) === null || _this$props$editorPro10 === void 0 ? void 0 : _this$props$editorPro10.reactEditorView;
675
+ var _this$props$editorPro12, _this$props$editorPro13;
676
+ const renderTracking = (_this$props$editorPro12 = this.props.editorProps.performanceTracking) === null || _this$props$editorPro12 === void 0 ? void 0 : (_this$props$editorPro13 = _this$props$editorPro12.renderTracking) === null || _this$props$editorPro13 === void 0 ? void 0 : _this$props$editorPro13.reactEditorView;
660
677
  const renderTrackingEnabled = renderTracking === null || renderTracking === void 0 ? void 0 : renderTracking.enabled;
661
678
  const useShallow = renderTracking === null || renderTracking === void 0 ? void 0 : renderTracking.useShallow;
662
679
  return /*#__PURE__*/React.createElement(ReactEditorViewContext.Provider, {
@@ -50,7 +50,7 @@ export function EditorInternalWithoutHooks({
50
50
  onEditorDestroyed,
51
51
  preset
52
52
  }) {
53
- var _props$performanceTra, _props$performanceTra2;
53
+ var _props$performanceTra, _props$performanceTra2, _props$performanceTra3, _props$performanceTra4;
54
54
  const Component = getUiComponent(props.appearance);
55
55
  const overriddenEditorProps = {
56
56
  ...props,
@@ -62,6 +62,10 @@ export function EditorInternalWithoutHooks({
62
62
  const renderTracking = (_props$performanceTra = props.performanceTracking) === null || _props$performanceTra === void 0 ? void 0 : (_props$performanceTra2 = _props$performanceTra.renderTracking) === null || _props$performanceTra2 === void 0 ? void 0 : _props$performanceTra2.editor;
63
63
  const renderTrackingEnabled = renderTracking === null || renderTracking === void 0 ? void 0 : renderTracking.enabled;
64
64
  const useShallow = renderTracking === null || renderTracking === void 0 ? void 0 : renderTracking.useShallow;
65
+ // ED-16320: Check for explicit disable so that by default
66
+ // it will still be enabled as it currently is. Then we can
67
+ // progressively opt out synthetic tenants.
68
+ const isErrorTrackingExplicitlyDisabled = ((_props$performanceTra3 = props.performanceTracking) === null || _props$performanceTra3 === void 0 ? void 0 : (_props$performanceTra4 = _props$performanceTra3.errorTracking) === null || _props$performanceTra4 === void 0 ? void 0 : _props$performanceTra4.enabled) === false;
65
69
  return jsx(Fragment, null, renderTrackingEnabled && jsx(RenderTracking, {
66
70
  componentProps: props,
67
71
  action: ACTION.RE_RENDERED,
@@ -70,6 +74,7 @@ export function EditorInternalWithoutHooks({
70
74
  propsToIgnore: ['defaultValue'],
71
75
  useShallow: useShallow
72
76
  }), jsx(ErrorBoundary, {
77
+ errorTracking: !isErrorTrackingExplicitlyDisabled,
73
78
  createAnalyticsEvent: createAnalyticsEvent,
74
79
  contextIdentifierProvider: props.contextIdentifierProvider,
75
80
  featureFlags: featureFlags
@@ -1,11 +1,7 @@
1
1
  import React from 'react';
2
2
  import { useAnalyticsEvents } from '@atlaskit/analytics-next';
3
- import { tablesPlugin } from '@atlaskit/editor-plugin-table';
4
3
  import { createEditorSelectionAPI } from '../../../selection-api/api';
5
- import { createInsertNodeAPI } from '../../../insert-api/api';
6
4
  import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
7
- import { attachPayloadIntoTransaction } from '../../../analytics-api/attach-payload-into-transaction';
8
- import { FabricChannel } from '@atlaskit/analytics-listeners';
9
5
 
10
6
  /**
11
7
  * DO NOT USE THIS FUNCTION
@@ -13,9 +9,6 @@ import { FabricChannel } from '@atlaskit/analytics-listeners';
13
9
  * IT IS A TEMPORARY PLACEHOLDER UNTIL THOSE TICKETS XX-11111 XX-22222 are done
14
10
  **/
15
11
  export const createStubInternalApis = () => {
16
- const editorViewRef = {
17
- current: null
18
- };
19
12
  const createAnalyticsEventRef = {
20
13
  current: null
21
14
  };
@@ -37,33 +30,6 @@ export const createStubInternalApis = () => {
37
30
  };
38
31
  };
39
32
  const editorSelectionAPI = createEditorSelectionAPI();
40
- const editorAnalyticsAPI = {
41
- attachAnalyticsEvent: payload => tr => {
42
- const editorView = editorViewRef.current;
43
- if (!tr || !createAnalyticsEvent || !editorView) {
44
- return false;
45
- }
46
- attachPayloadIntoTransaction({
47
- tr,
48
- editorState: editorView.state,
49
- payload,
50
- channel: FabricChannel.editor
51
- });
52
- return true;
53
- }
54
- };
55
- const insertNodeAPI = createInsertNodeAPI({
56
- getEditorView: () => {
57
- return editorViewRef.current;
58
- },
59
- getEditorPlugins: () => {
60
- const fakeTablePlugin = tablesPlugin();
61
- if (!(fakeTablePlugin !== null && fakeTablePlugin !== void 0 && fakeTablePlugin.pluginsOptions)) {
62
- return [];
63
- }
64
- return [fakeTablePlugin];
65
- }
66
- });
67
33
  const MountCreateAnalyticsEventRef = () => {
68
34
  const {
69
35
  createAnalyticsEvent
@@ -79,11 +45,9 @@ export const createStubInternalApis = () => {
79
45
  return [{
80
46
  name: 'stubInternalApisPMPlugin',
81
47
  plugin: () => new SafePlugin({
82
- view: editorView => {
83
- editorViewRef.current = editorView;
48
+ view: () => {
84
49
  return {
85
50
  destroy() {
86
- editorViewRef.current = null;
87
51
  createAnalyticsEventRef.current = null;
88
52
  }
89
53
  };
@@ -97,8 +61,6 @@ export const createStubInternalApis = () => {
97
61
  });
98
62
  return {
99
63
  editorSelectionAPI,
100
- insertNodeAPI,
101
- editorAnalyticsAPI,
102
64
  createAnalyticsEvent,
103
65
  stubInternalApisPlugin
104
66
  };
@@ -15,6 +15,8 @@ import fakeTextCursorPlugin from '../../../plugins/fake-text-cursor';
15
15
  import featureFlagsPlugin from '@atlaskit/editor-plugin-feature-flags';
16
16
  import floatingToolbarPlugin from '../../../plugins/floating-toolbar';
17
17
  import clipboardPlugin from '../../../plugins/clipboard';
18
+ import { analyticsPlugin as deprecatedAnalyticsPlugin } from '../../../plugins';
19
+ import { analyticsPlugin } from '@atlaskit/editor-plugin-analytics';
18
20
  import placeholderPlugin from '../../../plugins/placeholder';
19
21
  import annotationPlugin from '../../../plugins/annotation';
20
22
  import quickInsertPlugin from '../../../plugins/quick-insert';
@@ -29,7 +31,31 @@ import { EditorPresetBuilder } from '@atlaskit/editor-common/preset';
29
31
  * their placement in the editor toolbar
30
32
  */
31
33
  export function createDefaultPreset(options) {
32
- const preset = new EditorPresetBuilder().add([featureFlagsPlugin, options.featureFlags || {}]).add([pastePlugin, options.paste]).add(clipboardPlugin).add([basePlugin, options.base]).maybeAdd(undoRedoPlugin, (p, builder) => {
34
+ const preset = new EditorPresetBuilder().add([featureFlagsPlugin, options.featureFlags || {}]).maybeAdd(analyticsPlugin, (plugin, builder) => {
35
+ if (options.allowAnalyticsGASV3) {
36
+ const {
37
+ performanceTracking,
38
+ createAnalyticsEvent
39
+ } = options;
40
+ return builder.add([plugin, {
41
+ createAnalyticsEvent,
42
+ performanceTracking
43
+ }]);
44
+ }
45
+ return builder;
46
+ }).maybeAdd(deprecatedAnalyticsPlugin, (plugin, builder) => {
47
+ if (options.allowAnalyticsGASV3) {
48
+ const {
49
+ performanceTracking,
50
+ createAnalyticsEvent
51
+ } = options;
52
+ return builder.add([plugin, {
53
+ createAnalyticsEvent,
54
+ performanceTracking
55
+ }]);
56
+ }
57
+ return builder;
58
+ }).add([pastePlugin, options.paste]).add(clipboardPlugin).add([basePlugin, options.base]).maybeAdd(undoRedoPlugin, (p, builder) => {
33
59
  var _options$featureFlags;
34
60
  // The undo redo plugin needs to be add before the blockTypePlugin
35
61
  if ((_options$featureFlags = options.featureFlags) !== null && _options$featureFlags !== void 0 && _options$featureFlags.undoRedoButtons) {
@@ -1,5 +1,7 @@
1
- import { breakoutPlugin, collabEditPlugin, dataConsumerMarkPlugin, datePlugin, emojiPlugin, extensionPlugin, fragmentMarkPlugin, helpDialogPlugin, imageUploadPlugin, insertBlockPlugin, jiraIssuePlugin, layoutPlugin, listPlugin, toolbarListsIndentationPlugin, macroPlugin, maxContentSizePlugin, mediaPlugin, mentionsPlugin, panelPlugin, placeholderTextPlugin, rulePlugin, saveOnEnterPlugin, tasksAndDecisionsPlugin, textColorPlugin, cardPlugin, gridPlugin, statusPlugin, alignmentPlugin, indentationPlugin, analyticsPlugin, customAutoformatPlugin, feedbackDialogPlugin, historyPlugin, expandPlugin, isExpandInsertionEnabled, scrollIntoViewPlugin, mobileDimensionsPlugin, findReplacePlugin, contextPanelPlugin, mobileSelectionPlugin, annotationPlugin, captionPlugin, avatarGroupPlugin, viewUpdateSubscriptionPlugin, beforePrimaryToolbarPlugin, codeBidiWarningPlugin, copyButtonPlugin, borderPlugin } from '../../../plugins';
1
+ import { breakoutPlugin, collabEditPlugin, dataConsumerMarkPlugin, datePlugin, emojiPlugin, extensionPlugin, fragmentMarkPlugin, helpDialogPlugin, imageUploadPlugin, insertBlockPlugin, jiraIssuePlugin, layoutPlugin, listPlugin, toolbarListsIndentationPlugin, macroPlugin, maxContentSizePlugin, mediaPlugin, mentionsPlugin, panelPlugin, placeholderTextPlugin, rulePlugin, saveOnEnterPlugin, tasksAndDecisionsPlugin, textColorPlugin, gridPlugin, statusPlugin, alignmentPlugin, indentationPlugin, customAutoformatPlugin, feedbackDialogPlugin, historyPlugin, expandPlugin, isExpandInsertionEnabled, scrollIntoViewPlugin, mobileDimensionsPlugin, findReplacePlugin, contextPanelPlugin, mobileSelectionPlugin, annotationPlugin, captionPlugin, avatarGroupPlugin, viewUpdateSubscriptionPlugin, beforePrimaryToolbarPlugin, codeBidiWarningPlugin, copyButtonPlugin, borderPlugin } from '../../../plugins';
2
+ import cardPlugin from '../../../plugins/card';
2
3
  import { tablesPlugin } from '@atlaskit/editor-plugin-table';
4
+ import { contentInsertionPlugin } from '@atlaskit/editor-plugin-content-insertion';
3
5
  import { isFullPage as fullPageCheck } from '../../../utils/is-full-page';
4
6
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
5
7
  import { createDefaultPreset } from './default';
@@ -20,16 +22,17 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
20
22
  const isMobile = appearance === 'mobile';
21
23
  const isComment = appearance === 'comment';
22
24
  const isFullPage = fullPageCheck(appearance);
23
- const defaultPreset = createDefaultPreset(props);
24
25
  const getEditorFeatureFlags = () => featureFlags;
25
26
  const stubs = createStubInternalApis();
26
27
  const {
27
28
  editorSelectionAPI,
28
- insertNodeAPI,
29
- editorAnalyticsAPI,
30
29
  stubInternalApisPlugin
31
30
  } = stubs;
32
31
  const createAnalyticsEvent = maybeCreateAnalyticsEvent ? maybeCreateAnalyticsEvent : stubs.createAnalyticsEvent;
32
+ const defaultPreset = createDefaultPreset({
33
+ ...props,
34
+ createAnalyticsEvent
35
+ });
33
36
  const statusMenuDisabled = !props.allowStatus ? true : typeof props.allowStatus === 'object' ? Boolean(props.allowStatus.menuDisabled) : false;
34
37
  const hasBeforePrimaryToolbar = components => {
35
38
  if (components && 'before' in components) {
@@ -37,18 +40,7 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
37
40
  }
38
41
  return false;
39
42
  };
40
- const finalPreset = defaultPreset.add(stubInternalApisPlugin).add(dataConsumerMarkPlugin).maybeAdd(analyticsPlugin, (plugin, builder) => {
41
- if (props.allowAnalyticsGASV3) {
42
- const {
43
- performanceTracking
44
- } = props;
45
- return builder.add([plugin, {
46
- createAnalyticsEvent,
47
- performanceTracking
48
- }]);
49
- }
50
- return builder;
51
- }).maybeAdd(breakoutPlugin, (plugin, builder) => {
43
+ const finalPreset = defaultPreset.add(stubInternalApisPlugin).add(dataConsumerMarkPlugin).add(contentInsertionPlugin).maybeAdd(breakoutPlugin, (plugin, builder) => {
52
44
  if (props.allowBreakout && isFullPage) {
53
45
  return builder.add([plugin, {
54
46
  allowBreakoutButton: appearance === 'full-page'
@@ -149,7 +141,6 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
149
141
  allowContextualMenu: !isMobile,
150
142
  fullWidthEnabled: appearance === 'full-width',
151
143
  wasFullWidthEnabled: prevAppearance && prevAppearance === 'full-width',
152
- editorAnalyticsAPI,
153
144
  editorSelectionAPI,
154
145
  getEditorFeatureFlags
155
146
  }]);
@@ -349,8 +340,7 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
349
340
  horizontalRuleEnabled: props.allowRule,
350
341
  nativeStatusSupported: !statusMenuDisabled,
351
342
  showElementBrowserLink: props.elementBrowser && props.elementBrowser.showModal || false,
352
- replacePlusMenuWithElementBrowser: props.elementBrowser && props.elementBrowser.replacePlusMenu || false,
353
- insertNodeAPI
343
+ replacePlusMenuWithElementBrowser: props.elementBrowser && props.elementBrowser.replacePlusMenu || false
354
344
  }]).maybeAdd(beforePrimaryToolbarPlugin, (plugin, builder) => {
355
345
  if (hasBeforePrimaryToolbar(props.primaryToolbarComponents) && !featureFlags.twoLineEditorToolbar) {
356
346
  return builder.add([plugin, {
@@ -1,6 +1,6 @@
1
1
  import analyticsPlugin from './plugin';
2
2
  import { analyticsPluginKey as pluginKey } from './plugin-key';
3
3
  export { ACTION_SUBJECT_ID, ACTION_SUBJECT, ACTION, BROWSER_FREEZE_INTERACTION_TYPE, EVENT_TYPE, FULL_WIDTH_MODE, INDENT_DIRECTION, INDENT_TYPE, INPUT_METHOD, LINK_REPRESENTATION, LINK_RESOURCE, LINK_STATUS, MODE, PasteContents, PasteSources, PasteTypes, PLATFORMS, PUNC, SYMBOL, TABLE_ACTION, TABLE_BREAKOUT, TRIGGER_METHOD, USER_CONTEXT, DELETE_DIRECTION, LIST_TEXT_SCENARIOS, fireAnalyticsEvent, getAnalyticsEventsFromTransaction } from '@atlaskit/editor-common/analytics';
4
- export { withAnalytics, addAnalytics, findInsertLocation, getSelectionType, getStateContext, mapActionSubjectIdToAttributes } from './utils';
4
+ export { withAnalytics, addAnalytics } from './utils';
5
5
  export const analyticsPluginKey = pluginKey;
6
6
  export default analyticsPlugin;
@@ -1,2 +1,9 @@
1
1
  import { PluginKey } from 'prosemirror-state';
2
- export const analyticsPluginKey = new PluginKey('analyticsPlugin');
2
+
3
+ /**
4
+ * @private
5
+ * @deprecated
6
+ * Do not use the analytics plugin key directly.
7
+ * This will be deprecated soon.
8
+ */
9
+ export const analyticsPluginKey = new PluginKey('deprecatedAnalyticsPlugin');
@@ -3,9 +3,7 @@ import { isPerformanceAPIAvailable, measureRender } from '@atlaskit/editor-commo
3
3
  import { ACTION, EVENT_TYPE } from './types';
4
4
  import { analyticsPluginKey } from './plugin-key';
5
5
  import { fireAnalyticsEvent, getAnalyticsEventsFromTransaction } from '@atlaskit/editor-common/analytics';
6
- import { AnalyticsStep } from '@atlaskit/adf-schema/steps';
7
- import { generateUndoRedoInputSoucePayload } from '../undo-redo/undo-redo-input-source';
8
- function createPlugin(options, featureFlags) {
6
+ function createPlugin(options, featureFlags, editorAnalyticsApi) {
9
7
  if (!options || !options.createAnalyticsEvent) {
10
8
  return;
11
9
  }
@@ -16,7 +14,8 @@ function createPlugin(options, featureFlags) {
16
14
  init: () => {
17
15
  return {
18
16
  ...options,
19
- fireAnalytics: fireAnalyticsEvent(options.createAnalyticsEvent)
17
+ fireAnalytics: fireAnalyticsEvent(options.createAnalyticsEvent),
18
+ editorAnalyticsApi
20
19
  };
21
20
  },
22
21
  apply: (tr, pluginState, _, state) => {
@@ -64,48 +63,26 @@ function createPlugin(options, featureFlags) {
64
63
  }
65
64
  });
66
65
  }
66
+
67
+ /**
68
+ * @private
69
+ * @deprecated
70
+ * Do not use this analytics plugin.
71
+ * This will be deprecated soon.
72
+ */
67
73
  const analyticsPlugin = (options, api) => {
68
74
  var _api$dependencies$fea;
69
75
  const featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies$fea = api.dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
70
76
  return {
71
- name: 'analytics',
77
+ name: 'deprecatedAnalytics',
72
78
  pmPlugins() {
73
79
  return [{
74
80
  name: 'analyticsPlugin',
75
- plugin: () => createPlugin(options, featureFlags)
81
+ plugin: () => {
82
+ var _api$dependencies, _api$dependencies$ana;
83
+ return createPlugin(options, featureFlags, api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$ana = _api$dependencies.analytics) === null || _api$dependencies$ana === void 0 ? void 0 : _api$dependencies$ana.actions);
84
+ }
76
85
  }];
77
- },
78
- onEditorViewStateUpdated({
79
- originalTransaction,
80
- transactions,
81
- newEditorState
82
- }) {
83
- const pluginState = analyticsPluginKey.getState(newEditorState);
84
- if (!pluginState || !pluginState.createAnalyticsEvent) {
85
- return;
86
- }
87
- const steps = transactions.reduce((acc, tr) => {
88
- const payloads = tr.steps.filter(step => step instanceof AnalyticsStep).map(x => x.analyticsEvents).reduce((acc, val) => acc.concat(val), []);
89
- acc.push(...payloads);
90
- return acc;
91
- }, []);
92
- if (steps.length === 0) {
93
- return;
94
- }
95
- const {
96
- createAnalyticsEvent
97
- } = pluginState;
98
- const undoAnaltyicsEventTransformer = generateUndoRedoInputSoucePayload(originalTransaction);
99
- steps.forEach(({
100
- payload,
101
- channel
102
- }) => {
103
- const nextPayload = undoAnaltyicsEventTransformer(payload);
104
- fireAnalyticsEvent(createAnalyticsEvent)({
105
- payload: nextPayload,
106
- channel
107
- });
108
- });
109
86
  }
110
87
  };
111
88
  };
@@ -4,25 +4,38 @@ function getCreateUIAnalyticsEvent(editorState) {
4
4
  var _analyticsPluginKey$g;
5
5
  return (_analyticsPluginKey$g = analyticsPluginKey.getState(editorState)) === null || _analyticsPluginKey$g === void 0 ? void 0 : _analyticsPluginKey$g.createAnalyticsEvent;
6
6
  }
7
- import { attachPayloadIntoTransaction } from '../../analytics-api/attach-payload-into-transaction';
8
- import { mapActionSubjectIdToAttributes } from '../../analytics-api/map-attributes';
9
- import { getStateContext, getSelectionType, findInsertLocation } from '../../analytics-api/editor-state-context';
10
- export { getStateContext, mapActionSubjectIdToAttributes, getSelectionType, findInsertLocation };
7
+ function getEditorAnalyticsAPI(editorState) {
8
+ var _analyticsPluginKey$g2;
9
+ return (_analyticsPluginKey$g2 = analyticsPluginKey.getState(editorState)) === null || _analyticsPluginKey$g2 === void 0 ? void 0 : _analyticsPluginKey$g2.editorAnalyticsApi;
10
+ }
11
+
12
+ /**
13
+ *
14
+ * @private
15
+ * @deprecated
16
+ *
17
+ * Do not use this anymore. Please use @atlaskit/editor-plugin-analytics
18
+ *
19
+ */
11
20
  export function addAnalytics(state, tr, payload, channel = editorAnalyticsChannel) {
12
21
  const createAnalyticsEvent = getCreateUIAnalyticsEvent(state);
13
- if (!createAnalyticsEvent) {
22
+ const editorAnalyticsApi = getEditorAnalyticsAPI(state);
23
+ if (!createAnalyticsEvent || !editorAnalyticsApi) {
14
24
  return tr;
15
25
  }
16
- attachPayloadIntoTransaction({
17
- tr,
18
- editorState: state,
19
- payload,
20
- channel
21
- });
26
+ editorAnalyticsApi === null || editorAnalyticsApi === void 0 ? void 0 : editorAnalyticsApi.attachAnalyticsEvent(payload, channel)(tr);
22
27
  return tr;
23
28
  }
24
29
  // Below function has been copied to packages/editor/editor-plugin-ai/src/utils/analytics.ts
25
30
  // If changes are made to this function, please make the same update in the linked file.
31
+ /**
32
+ *
33
+ * @private
34
+ * @deprecated
35
+ *
36
+ * Do not use this anymore. Please use @atlaskit/editor-plugin-analytics
37
+ *
38
+ */
26
39
  export function withAnalytics(payload, channel) {
27
40
  return command => (state, dispatch, view) => command(state, tr => {
28
41
  if (dispatch) {
@@ -11,7 +11,7 @@ import newlinePreserveMarksPlugin from './pm-plugins/newline-preserve-marks';
11
11
  import inlineCursorTargetPlugin from './pm-plugins/inline-cursor-target';
12
12
  import betterTypeHistoryPlugin from './pm-plugins/better-type-history';
13
13
  import { plugin as reactNodeView } from './pm-plugins/react-nodeview';
14
- import decorationPlugin from './pm-plugins/decoration';
14
+ import decorationPlugin, { hoverDecoration } from './pm-plugins/decoration';
15
15
  import scrollGutter from './pm-plugins/scroll-gutter';
16
16
  import { keymap } from '../../utils/keymap';
17
17
  import frozenEditor from './pm-plugins/frozen-editor';
@@ -123,6 +123,9 @@ const basePlugin = (options, api) => {
123
123
  name: 'text',
124
124
  node: text
125
125
  }];
126
+ },
127
+ actions: {
128
+ hoverDecoration
126
129
  }
127
130
  };
128
131
  };
@@ -8,6 +8,15 @@ export let ACTIONS = /*#__PURE__*/function (ACTIONS) {
8
8
  ACTIONS[ACTIONS["DECORATION_REMOVE"] = 1] = "DECORATION_REMOVE";
9
9
  return ACTIONS;
10
10
  }({});
11
+
12
+ /**
13
+ *
14
+ * @private
15
+ * @deprecated
16
+ *
17
+ * Please use the actions of the base plugin rather than this function
18
+ * directly
19
+ */
11
20
  export const hoverDecoration = (nodeType, add, className = 'danger') => (state, dispatch) => {
12
21
  let from;
13
22
  let parentNode;
@@ -2,7 +2,7 @@ import { findWrapping } from 'prosemirror-transform';
2
2
  import { safeInsert } from 'prosemirror-utils';
3
3
  import { CODE_BLOCK, BLOCK_QUOTE, PANEL, HEADINGS_BY_NAME, NORMAL_TEXT } from '../types';
4
4
  import { removeBlockMarks } from '../../../utils/mark';
5
- import { shouldSplitSelectedNodeOnNodeInsertion } from '../../../utils/insert';
5
+ import { shouldSplitSelectedNodeOnNodeInsertion } from '@atlaskit/editor-common/insert';
6
6
  import { withAnalytics, ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '../../analytics';
7
7
  import { filterChildrenBetween } from '../../../utils';
8
8
  import { PanelType } from '@atlaskit/adf-schema';
@@ -1,7 +1,7 @@
1
1
  import { caption } from '@atlaskit/adf-schema';
2
2
  import { default as createCaptionPlugin } from './pm-plugins/main';
3
3
  import { captionKeymap } from './pm-plugins/keymap';
4
- const captionPlugin = () => {
4
+ const captionPlugin = (_, api) => {
5
5
  return {
6
6
  name: 'caption',
7
7
  nodes() {
@@ -19,7 +19,8 @@ const captionPlugin = () => {
19
19
  eventDispatcher,
20
20
  dispatch
21
21
  }) => {
22
- return createCaptionPlugin(portalProviderAPI, eventDispatcher, providerFactory, dispatch);
22
+ var _api$dependencies$ana;
23
+ return createCaptionPlugin(portalProviderAPI, eventDispatcher, providerFactory, dispatch, api === null || api === void 0 ? void 0 : (_api$dependencies$ana = api.dependencies.analytics) === null || _api$dependencies$ana === void 0 ? void 0 : _api$dependencies$ana.actions);
23
24
  }
24
25
  }, {
25
26
  name: 'captionKeymap',