@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
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "sendLogs", {
7
- enumerable: true,
8
- get: function get() {
9
- return _utils.sendLogs;
10
- }
11
- });
12
- var _utils = require("@atlaskit/editor-common/utils");
@@ -1,28 +0,0 @@
1
- import { FabricChannel } from '@atlaskit/analytics-listeners';
2
- import { attachPayloadIntoTransaction } from './attach-payload-into-transaction';
3
- export const createEditorAnalyticsAPI = ({
4
- getEditorView,
5
- getCreateUIAnalyticsEvent
6
- }) => {
7
- return {
8
- attachAnalyticsEvent: payload => {
9
- return tr => {
10
- const createAnalyticsEvent = getCreateUIAnalyticsEvent();
11
- const editorView = getEditorView();
12
- if (!tr || !createAnalyticsEvent || !editorView) {
13
- return false;
14
- }
15
- const {
16
- state: editorState
17
- } = editorView;
18
- attachPayloadIntoTransaction({
19
- tr,
20
- editorState,
21
- payload,
22
- channel: FabricChannel.editor
23
- });
24
- return true;
25
- };
26
- }
27
- };
28
- };
@@ -1,32 +0,0 @@
1
- import { getStateContext } from './editor-state-context';
2
- import { mapActionSubjectIdToAttributes } from './map-attributes';
3
- import { AnalyticsStep } from '@atlaskit/adf-schema/steps';
4
- import { ACTION } from '@atlaskit/editor-common/analytics';
5
- const actionsToIgnore = [ACTION.INVOKED, ACTION.OPENED];
6
- // This utils was taken as reference in packages/editor/editor-plugin-ai/src/analytics/utils.ts
7
- // to create new util attachPayloadIntoTransaction in above file.
8
- // If you make a change here, please review attachPayloadIntoTransaction in above
9
- // file and update it as well if needed.
10
- export const attachPayloadIntoTransaction = ({
11
- payload,
12
- editorState,
13
- tr,
14
- channel
15
- }) => {
16
- payload = getStateContext(editorState, payload);
17
- payload = mapActionSubjectIdToAttributes(payload);
18
- const {
19
- storedMarks
20
- } = tr;
21
- const pos = tr.mapping.map(editorState.selection.$from.pos, -1);
22
- tr.step(new AnalyticsStep([{
23
- payload,
24
- channel
25
- }], actionsToIgnore, pos) // We need to create the step based on a position, this prevent split history for relative changes.
26
- );
27
-
28
- // When you add a new step all the storedMarks are removed it
29
- if (storedMarks) {
30
- tr.setStoredMarks(storedMarks);
31
- }
32
- };
@@ -1,74 +0,0 @@
1
- import { ACTION, ACTION_SUBJECT, SELECTION_TYPE, SELECTION_POSITION } from '@atlaskit/editor-common/analytics';
2
- import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
3
- import { findParentNode } from 'prosemirror-utils';
4
- import { NodeSelection } from 'prosemirror-state';
5
- export function getSelectionType(state) {
6
- var _selection$constructo;
7
- const {
8
- selection
9
- } = state;
10
- let type;
11
- let position;
12
- if ((selection === null || selection === void 0 ? void 0 : (_selection$constructo = selection.constructor) === null || _selection$constructo === void 0 ? void 0 : _selection$constructo.name) === 'GapCursorSelection') {
13
- type = SELECTION_TYPE.GAP_CURSOR;
14
- position = selection.side;
15
- } else if (selection instanceof CellSelection) {
16
- type = SELECTION_TYPE.CELL;
17
- } else if (selection instanceof NodeSelection) {
18
- type = SELECTION_TYPE.NODE;
19
- } else if (selection.from !== selection.to) {
20
- type = SELECTION_TYPE.RANGED;
21
- } else {
22
- type = SELECTION_TYPE.CURSOR;
23
- const {
24
- from,
25
- $from
26
- } = selection;
27
- if (from === $from.start()) {
28
- position = SELECTION_POSITION.START;
29
- } else if (from === $from.end()) {
30
- position = SELECTION_POSITION.END;
31
- } else {
32
- position = SELECTION_POSITION.MIDDLE;
33
- }
34
- }
35
- return {
36
- type,
37
- position
38
- };
39
- }
40
- export function findInsertLocation(state) {
41
- const {
42
- selection
43
- } = state;
44
- if (selection instanceof NodeSelection) {
45
- return selection.node.type.name;
46
- }
47
- if (selection instanceof CellSelection) {
48
- return state.schema.nodes.table.name;
49
- }
50
-
51
- // Text selection
52
- const parentNodeInfo = findParentNode(node => node.type !== state.schema.nodes.paragraph)(state.selection);
53
- return parentNodeInfo ? parentNodeInfo.node.type.name : state.doc.type.name;
54
- }
55
- export function getStateContext(state, payload) {
56
- if (!payload.attributes) {
57
- return payload;
58
- }
59
- const {
60
- type,
61
- position
62
- } = getSelectionType(state);
63
- payload.attributes.selectionType = type;
64
- if (position) {
65
- payload.attributes.selectionPosition = position;
66
- }
67
- const insertLocation = findInsertLocation(state);
68
- if (payload.action === ACTION.INSERTED && payload.actionSubject === ACTION_SUBJECT.DOCUMENT && payload.attributes) {
69
- payload.attributes.insertLocation = insertLocation;
70
- } else {
71
- payload.attributes.nodeLocation = insertLocation;
72
- }
73
- return payload;
74
- }
@@ -1,14 +0,0 @@
1
- import { ACTION, ACTION_SUBJECT } from '@atlaskit/editor-common/analytics';
2
- export function mapActionSubjectIdToAttributes(payload) {
3
- const documentInserted = payload.action === ACTION.INSERTED && payload.actionSubject === ACTION_SUBJECT.DOCUMENT;
4
- const textFormatted = payload.action === ACTION.FORMATTED && payload.actionSubject === ACTION_SUBJECT.TEXT;
5
- const hasActionSubjectId = !!payload.actionSubjectId;
6
- if (hasActionSubjectId && (documentInserted || textFormatted)) {
7
- payload.attributes = {
8
- ...payload.attributes,
9
- // @ts-expect-error
10
- actionSubjectId: payload.actionSubjectId
11
- };
12
- }
13
- return payload;
14
- }
@@ -1,42 +0,0 @@
1
- import { handleInsertContent } from './insert-content-handlers';
2
- import { addAnalytics } from '../plugins/analytics';
3
- export const createInsertNodeAPI = ({
4
- getEditorView,
5
- getEditorPlugins
6
- }) => {
7
- return {
8
- insert: ({
9
- node,
10
- options
11
- }) => {
12
- const editorView = getEditorView();
13
- if (!editorView) {
14
- return false;
15
- }
16
- const {
17
- state: {
18
- tr
19
- }
20
- } = editorView;
21
- const editorPlugins = getEditorPlugins();
22
- handleInsertContent({
23
- editorPlugins,
24
- node,
25
- options
26
- })(tr);
27
-
28
- // TODO: ED-14676 This approach to send analytics should be temporary only for the table work
29
- if (options.analyticsPayload) {
30
- addAnalytics(editorView.state, tr, options.analyticsPayload);
31
- }
32
- editorView.dispatch(tr);
33
- return true;
34
- }
35
-
36
- // TODO: ED-14676 - Implement the append behavior
37
- // append: ({ node, options }) => (tr) => {
38
- // const editorPlugins = getEditorPlugins();
39
- // return insertContent({ editorPlugins, node, options })(tr);
40
- // },
41
- };
42
- };
@@ -1,84 +0,0 @@
1
- import { insertProseMirrorContent } from './insert-node-helpers';
2
- export const findCreateNodeHandler = ({
3
- node,
4
- editorPlugins
5
- }) => {
6
- var _editorPluginHandler$;
7
- if (!node) {
8
- return null;
9
- }
10
- const nodeName = typeof node === 'string' ? node : null;
11
- const editorPluginHandler = nodeName ? editorPlugins.find(plugin => {
12
- if (!plugin.nodes) {
13
- return false;
14
- }
15
- return plugin.nodes().find(nodeConfig => nodeConfig.name === nodeName);
16
- }) : null;
17
- // That is how we allow the insertion behavior to be extended. (for now)
18
- // Any plugin, following the rank order and respecting the node name, can override the node insertion output.
19
- // To guarantee an insertion
20
- return (editorPluginHandler === null || editorPluginHandler === void 0 ? void 0 : (_editorPluginHandler$ = editorPluginHandler.pluginsOptions) === null || _editorPluginHandler$ === void 0 ? void 0 : _editorPluginHandler$.createNodeHandler) || null;
21
- };
22
- export const handleInsertContent = ({
23
- node,
24
- options,
25
- editorPlugins
26
- }) => tr => {
27
- // TODO: ED-14676 - Probably, we should use the options.insertAt here
28
- const position = tr.selection;
29
- const createNodeHandler = findCreateNodeHandler({
30
- node,
31
- editorPlugins
32
- });
33
- const nodeName = typeof node === 'string' ? node : null;
34
-
35
- // TODO: ED-14676 Once we fix the coupled table code issue (ED-15503) we should enable this API to insert any ProseMirror Node
36
- // if (node instanceof PMNode || node instanceof Fragment) {
37
- // insertProseMirrorContent({
38
- // tr,
39
- // node,
40
- // position,
41
- // selectNodeInserted: options.selectNodeInserted,
42
- // });
43
- // } else
44
-
45
- if (nodeName && createNodeHandler) {
46
- const nodeOverride = createNodeHandler({
47
- nodeName,
48
- schema: tr.doc.type.schema
49
- });
50
- insertProseMirrorContent({
51
- tr,
52
- node: nodeOverride,
53
- position,
54
- selectNodeInserted: options.selectNodeInserted
55
- });
56
- } else if (nodeName) {
57
- const nodeType = tr.doc.type.schema.nodes[nodeName];
58
- if (!nodeType) {
59
- return false;
60
- }
61
- insertProseMirrorContent({
62
- tr,
63
- node: nodeType.createAndFill(),
64
- position,
65
- selectNodeInserted: options.selectNodeInserted
66
- });
67
- } else {
68
- return false;
69
- }
70
-
71
- // TODO: ED-14676 Implement the attachPluginMessage behavior
72
- // if (editorPluginHandler?.nodes && options.attachPluginMessage) {
73
- // const pluginKey = editorPluginHandler
74
- // .nodes()
75
- // .find((nodeConfig) => nodeConfig.name === nodeName)?.pluginKey;
76
-
77
- // if (pluginKey) {
78
- // tr.setMeta(pluginKey, options.attachPluginMessage);
79
- // }
80
- // }
81
-
82
- tr.scrollIntoView();
83
- return true;
84
- };
@@ -1,137 +0,0 @@
1
- /* Copied from type-ahead */
2
- import { TextSelection, NodeSelection } from 'prosemirror-state';
3
- import { Node as PMNode, Slice, Fragment } from 'prosemirror-model';
4
- import { normaliseNestedLayout } from '../utils/selection';
5
- import { safeInsert } from '../utils/insert';
6
- function findInsertPoint(doc, pos, nodeToInsert) {
7
- const $pos = doc.resolve(pos);
8
- const createInsertPosition = (from, to) => ({
9
- from,
10
- to: to || from
11
- });
12
-
13
- // Search for a valid position for nodeToInsert in progressively higher levels
14
- for (let level = $pos.depth; level >= 0; level--) {
15
- const nodeAtLevel = $pos.node(level);
16
-
17
- // Try to replace the empty paragraph in the level above
18
- // Scenario:
19
- // doc(
20
- // table(
21
- // row(
22
- // cell(
23
- // p('{<>}'),
24
- // ),
25
- // )
26
- // )
27
- // )
28
- const levelAbove = Math.max(level - 1, 0);
29
- const parentNode = $pos.node(levelAbove);
30
- // Special case: when this is true, the 'to' position should be the end
31
- // of the empty paragraph
32
- const isNodeAtLevelEmptyParagraph = nodeAtLevel.type.name === 'paragraph' && nodeAtLevel.content.size === 0;
33
- const indexAtLevelAbove = $pos.index(levelAbove);
34
- const canReplaceNodeAtLevelAbove = parentNode.canReplaceWith(indexAtLevelAbove, indexAtLevelAbove, nodeToInsert.type);
35
- if (isNodeAtLevelEmptyParagraph && canReplaceNodeAtLevelAbove) {
36
- const from = $pos.posAtIndex(indexAtLevelAbove, levelAbove);
37
- return createInsertPosition(from, from + nodeAtLevel.nodeSize);
38
- }
39
-
40
- // Try to insert this node right after the node in the level above
41
- // Scenario:
42
- // doc(
43
- // panel(
44
- // p('{<>}'),
45
- // )
46
- // )
47
- const indexAfterAtLevelAbove = $pos.indexAfter(levelAbove);
48
- const canInsertNodeAtLevelAbove = parentNode.canReplaceWith(indexAfterAtLevelAbove, indexAfterAtLevelAbove, nodeToInsert.type);
49
- if (canInsertNodeAtLevelAbove) {
50
- return createInsertPosition($pos.posAtIndex(indexAfterAtLevelAbove, levelAbove));
51
- }
52
- }
53
- return createInsertPosition(0);
54
- }
55
- export const insertBlockNode = ({
56
- node,
57
- tr,
58
- position
59
- }) => {
60
- const {
61
- $from: {
62
- pos: start
63
- },
64
- $to: {
65
- pos: end
66
- }
67
- } = position;
68
- if (node.isText) {
69
- return tr.replaceWith(start, end, node);
70
- }
71
- if (node.isBlock) {
72
- tr.delete(start, end);
73
- const mappedStart = tr.mapping.map(start);
74
- const nodeNormalized = normaliseNestedLayout(tr, node);
75
-
76
- // Handle edge cases for hr and mediaSingle
77
- const inserted = safeInsert(nodeNormalized, mappedStart)(tr);
78
- if (inserted) {
79
- return tr;
80
- }
81
- const sliceInserted = Slice.maxOpen(Fragment.from(nodeNormalized));
82
- const {
83
- from,
84
- to
85
- } = findInsertPoint(tr.doc, mappedStart, nodeNormalized);
86
- tr.replaceWith(from, to, node);
87
- const openPosition = Math.min(from + (node.isAtom ? node.nodeSize : sliceInserted.openStart), tr.doc.content.size);
88
- const FORWARD_DIRECTION = 1;
89
- const nextSelection = TextSelection.findFrom(tr.doc.resolve(openPosition), FORWARD_DIRECTION, true);
90
- if (nextSelection) {
91
- return tr.setSelection(nextSelection);
92
- }
93
- }
94
- return tr;
95
- };
96
- export const insertInlineNodeOrFragment = ({
97
- maybeFragment,
98
- tr,
99
- position,
100
- selectInlineNode
101
- }) => {
102
- const {
103
- $from: {
104
- pos: start
105
- },
106
- $to: {
107
- pos: end
108
- }
109
- } = position;
110
- const fragment = maybeFragment instanceof PMNode ? Fragment.from(maybeFragment) : maybeFragment;
111
- tr.replaceWith(start, end, fragment);
112
- if (selectInlineNode) {
113
- return tr.setSelection(NodeSelection.create(tr.doc, start));
114
- }
115
- return tr.setSelection(TextSelection.near(tr.doc.resolve(start + fragment.size)));
116
- };
117
- export const insertProseMirrorContent = ({
118
- tr,
119
- node,
120
- position,
121
- selectNodeInserted
122
- }) => {
123
- if (node instanceof PMNode && node.isBlock) {
124
- insertBlockNode({
125
- node,
126
- tr,
127
- position
128
- });
129
- } else {
130
- insertInlineNodeOrFragment({
131
- maybeFragment: node,
132
- tr,
133
- position,
134
- selectInlineNode: selectNodeInserted
135
- });
136
- }
137
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,85 +0,0 @@
1
- import React from 'react';
2
- import Tooltip from '@atlaskit/tooltip';
3
- import Button from '@atlaskit/button/custom-theme-button';
4
- import { getButtonStyles, iconOnlySpacing } from './styles';
5
- export default (({
6
- title,
7
- icon,
8
- iconAfter,
9
- onClick,
10
- onKeyDown,
11
- onMouseEnter,
12
- onMouseLeave,
13
- onFocus,
14
- onBlur,
15
- selected,
16
- disabled,
17
- href,
18
- target,
19
- appearance = 'subtle',
20
- children,
21
- className,
22
- tooltipContent,
23
- testId,
24
- hideTooltipOnClick = true,
25
- ariaHasPopup,
26
- tabIndex,
27
- areaControls,
28
- ariaLabel
29
- }) => {
30
- // Check if there's only an icon and add additional styles
31
- const iconOnly = (icon || iconAfter) && !children;
32
- const customSpacing = iconOnly ? iconOnlySpacing : {};
33
- return /*#__PURE__*/React.createElement(Tooltip, {
34
- content: tooltipContent || title,
35
- hideTooltipOnClick: hideTooltipOnClick,
36
- position: "top"
37
- }, /*#__PURE__*/React.createElement("div", {
38
- onMouseEnter: onMouseEnter,
39
- onMouseLeave: onMouseLeave
40
- }, /*#__PURE__*/React.createElement(Button, {
41
- className: className,
42
- theme: (adgTheme, themeProps) => {
43
- const {
44
- buttonStyles,
45
- ...rest
46
- } = adgTheme(themeProps);
47
- return {
48
- buttonStyles: {
49
- ...buttonStyles,
50
- ...customSpacing,
51
- ...(appearance === 'danger' && getButtonStyles({
52
- appearance,
53
- state: themeProps.state,
54
- mode: themeProps.mode
55
- }))
56
- },
57
- ...rest
58
- };
59
- },
60
- "aria-label": ariaLabel || title,
61
- "aria-pressed": !ariaHasPopup ? selected : undefined,
62
- "aria-expanded": ariaHasPopup ? selected : undefined,
63
- "aria-controls": ariaHasPopup ? areaControls : undefined,
64
- spacing: 'compact',
65
- href: href,
66
- target: target,
67
- appearance: appearance,
68
- "aria-haspopup": ariaHasPopup,
69
- iconBefore: icon || undefined,
70
- iconAfter: iconAfter,
71
- onClick: onClick,
72
- onKeyDown: onKeyDown,
73
- isSelected: selected,
74
- isDisabled: disabled,
75
- testId: testId,
76
- onFocus: onFocus,
77
- onBlur: onBlur
78
- // @ts-ignore
79
- // tabIndex set as 0 by default in the design system ButtonBase component
80
- // this is not expected for all buttons, we have to use tabIndex={null} for some cases
81
- // should be fixed here https://a11y-internal.atlassian.net/browse/DST-287
82
- ,
83
- tabIndex: tabIndex
84
- }, children)));
85
- });
@@ -1,17 +0,0 @@
1
- import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '../analytics/types';
2
- import { getLinkDomain, isFromCurrentDomain } from './utils';
3
- export function getLinkCreationAnalyticsEvent(inputMethod, url) {
4
- return {
5
- action: ACTION.INSERTED,
6
- actionSubject: ACTION_SUBJECT.DOCUMENT,
7
- actionSubjectId: ACTION_SUBJECT_ID.LINK,
8
- attributes: {
9
- inputMethod,
10
- fromCurrentDomain: isFromCurrentDomain(url)
11
- },
12
- eventType: EVENT_TYPE.TRACK,
13
- nonPrivacySafeAttributes: {
14
- linkDomain: getLinkDomain(url)
15
- }
16
- };
17
- }
@@ -1,149 +0,0 @@
1
- // File has been copied to packages/editor/editor-plugin-ai/src/provider/markdown-transformer/utils/hyperlink.ts
2
- // If changes are made to this file, please make the same update in the linked file.
3
-
4
- import { mapSlice } from '../../utils/slice';
5
- import { isSafeUrl, linkify, normalizeUrl as normaliseLinkHref } from '@atlaskit/adf-schema';
6
-
7
- // Regular expression for a windows filepath in the format <DRIVE LETTER>:\<folder name>\
8
- export const FILEPATH_REGEXP = /([a-zA-Z]:|\\)([^\/:*?<>"|]+\\)?([^\/:*?<>"| ]+(?=\s?))?/gim;
9
-
10
- // Don't linkify if starts with $ or {
11
- export const DONTLINKIFY_REGEXP = /^(\$|{)/;
12
-
13
- /**
14
- * Instance of class LinkMatcher are used in autoformatting in place of Regex.
15
- * Hence it has been made similar to regex with an exec method.
16
- * Extending it directly from class Regex was introducing some issues, thus that has been avoided.
17
- */
18
- export class LinkMatcher {
19
- static create() {
20
- class LinkMatcherRegex {
21
- exec(str) {
22
- const stringsBySpace = str.slice(0, str.length - 1).split(' ');
23
- const lastStringBeforeSpace = stringsBySpace[stringsBySpace.length - 1];
24
- const isLastStringValid = lastStringBeforeSpace.length > 0;
25
- if (!str.endsWith(' ') || !isLastStringValid) {
26
- return null;
27
- }
28
- if (DONTLINKIFY_REGEXP.test(lastStringBeforeSpace)) {
29
- return null;
30
- }
31
- const links = linkify.match(lastStringBeforeSpace);
32
- if (!links || links.length === 0) {
33
- return null;
34
- }
35
- const lastMatch = links[links.length - 1];
36
- const lastLink = links[links.length - 1];
37
- lastLink.input = str.substring(lastMatch.index);
38
- lastLink.length = lastLink.lastIndex - lastLink.index + 1;
39
- lastLink.index = str.lastIndexOf(lastStringBeforeSpace) + lastMatch.index;
40
- return lastLink;
41
- }
42
- }
43
- return new LinkMatcherRegex();
44
- }
45
- }
46
-
47
- /**
48
- * Adds protocol to url if needed.
49
- */
50
- export function normalizeUrl(url) {
51
- if (!url) {
52
- return '';
53
- }
54
- if (isSafeUrl(url)) {
55
- return url;
56
- }
57
- return normaliseLinkHref(url);
58
- }
59
- export function linkifyContent(schema) {
60
- return slice => mapSlice(slice, (node, parent) => {
61
- const isAllowedInParent = !parent || parent.type !== schema.nodes.codeBlock;
62
- const link = node.type.schema.marks.link;
63
- if (link === undefined) {
64
- throw new Error('Link not in schema - unable to linkify content');
65
- }
66
- if (isAllowedInParent && node.isText && !link.isInSet(node.marks)) {
67
- const linkified = [];
68
- const text = node.text;
69
- const matches = findLinkMatches(text);
70
- let pos = 0;
71
- const filepaths = findFilepaths(text);
72
- matches.forEach(match => {
73
- if (isLinkInMatches(match.start, filepaths)) {
74
- return;
75
- }
76
- if (match.start > 0) {
77
- linkified.push(node.cut(pos, match.start));
78
- }
79
- linkified.push(node.cut(match.start, match.end).mark(link.create({
80
- href: normalizeUrl(match.href)
81
- }).addToSet(node.marks)));
82
- pos = match.end;
83
- });
84
- if (pos < text.length) {
85
- linkified.push(node.cut(pos));
86
- }
87
- return linkified;
88
- }
89
- return node;
90
- });
91
- }
92
- export function getLinkDomain(url) {
93
- // Remove protocol and www., if either exists
94
- const withoutProtocol = url.toLowerCase().replace(/^(.*):\/\//, '');
95
- const withoutWWW = withoutProtocol.replace(/^(www\.)/, '');
96
-
97
- // Remove port, fragment, path, query string
98
- return withoutWWW.replace(/[:\/?#](.*)$/, '');
99
- }
100
- export function isFromCurrentDomain(url) {
101
- if (!window || !window.location) {
102
- return false;
103
- }
104
- const currentDomain = window.location.hostname;
105
- const linkDomain = getLinkDomain(url);
106
- return currentDomain === linkDomain;
107
- }
108
- function findLinkMatches(text) {
109
- const matches = [];
110
- let linkMatches = text && linkify.match(text);
111
- if (linkMatches && linkMatches.length > 0) {
112
- linkMatches.forEach(match => {
113
- matches.push({
114
- start: match.index,
115
- end: match.lastIndex,
116
- title: match.raw,
117
- href: match.url
118
- });
119
- });
120
- }
121
- return matches;
122
- }
123
- export const findFilepaths = (text, offset = 0) => {
124
- // Creation of a copy of the RegExp is necessary as lastIndex is stored on it when we run .exec()
125
- const localRegExp = new RegExp(FILEPATH_REGEXP);
126
- let match;
127
- const matchesList = [];
128
- const maxFilepathSize = 260;
129
- while ((match = localRegExp.exec(text)) !== null) {
130
- const start = match.index + offset;
131
- let end = localRegExp.lastIndex + offset;
132
- if (end - start > maxFilepathSize) {
133
- end = start + maxFilepathSize;
134
- } // We don't care about big strings of text that are pretending to be filepaths!!
135
- matchesList.push({
136
- startIndex: start,
137
- endIndex: end
138
- });
139
- }
140
- return matchesList;
141
- };
142
- export const isLinkInMatches = (linkStart, matchesList) => {
143
- for (let i = 0; i < matchesList.length; i++) {
144
- if (linkStart >= matchesList[i].startIndex && linkStart < matchesList[i].endIndex) {
145
- return true;
146
- }
147
- }
148
- return false;
149
- };