@atlaskit/editor-core 182.1.1 → 182.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/actions/index.js +90 -98
  3. package/dist/cjs/analytics-api/attach-payload-into-transaction.js +4 -0
  4. package/dist/cjs/create-editor/ErrorBoundary.js +86 -93
  5. package/dist/cjs/create-editor/ReactEditorViewInternal.js +8 -6
  6. package/dist/cjs/editor-next/index.js +5 -6
  7. package/dist/cjs/editor-next/utils/sendDurationAnalytics.js +34 -37
  8. package/dist/cjs/editor-next/utils/trackEditorActions.js +48 -51
  9. package/dist/cjs/editor.js +29 -34
  10. package/dist/cjs/i18n/cs.js +34 -6
  11. package/dist/cjs/i18n/da.js +34 -6
  12. package/dist/cjs/i18n/de.js +34 -7
  13. package/dist/cjs/i18n/en.js +31 -4
  14. package/dist/cjs/i18n/en_GB.js +34 -7
  15. package/dist/cjs/i18n/en_ZZ.js +35 -8
  16. package/dist/cjs/i18n/es.js +33 -6
  17. package/dist/cjs/i18n/fi.js +33 -6
  18. package/dist/cjs/i18n/fr.js +34 -7
  19. package/dist/cjs/i18n/hu.js +33 -6
  20. package/dist/cjs/i18n/it.js +34 -7
  21. package/dist/cjs/i18n/ja.js +33 -6
  22. package/dist/cjs/i18n/ko.js +33 -6
  23. package/dist/cjs/i18n/nb.js +35 -8
  24. package/dist/cjs/i18n/nl.js +34 -7
  25. package/dist/cjs/i18n/pl.js +34 -7
  26. package/dist/cjs/i18n/pt_BR.js +34 -7
  27. package/dist/cjs/i18n/ru.js +34 -7
  28. package/dist/cjs/i18n/sv.js +33 -6
  29. package/dist/cjs/i18n/th.js +34 -7
  30. package/dist/cjs/i18n/tr.js +33 -6
  31. package/dist/cjs/i18n/uk.js +34 -7
  32. package/dist/cjs/i18n/vi.js +35 -8
  33. package/dist/cjs/i18n/zh.js +33 -4
  34. package/dist/cjs/i18n/zh_TW.js +33 -6
  35. package/dist/cjs/labs/CollapsedEditor/index.js +1 -1
  36. package/dist/cjs/plugins/analytics/plugin.js +1 -1
  37. package/dist/cjs/plugins/analytics/utils.js +2 -0
  38. package/dist/cjs/plugins/annotation/pm-plugins/inline-comment.js +39 -44
  39. package/dist/cjs/plugins/annotation/pm-plugins/types.js +4 -4
  40. package/dist/cjs/plugins/annotation/types.js +4 -4
  41. package/dist/cjs/plugins/base/pm-plugins/decoration.js +4 -4
  42. package/dist/cjs/plugins/block-type/commands/block-type.js +1 -1
  43. package/dist/cjs/plugins/card/nodeviews/embedCard.js +5 -6
  44. package/dist/cjs/plugins/card/ui/EditLinkToolbar.js +3 -4
  45. package/dist/cjs/plugins/card/ui/EditorSmartCardEventsNext.js +16 -1
  46. package/dist/cjs/plugins/collab-edit/index.js +29 -32
  47. package/dist/cjs/plugins/collab-edit/plugin-state.js +2 -4
  48. package/dist/cjs/plugins/custom-autoformat/doc.js +28 -31
  49. package/dist/cjs/plugins/custom-autoformat/index.js +20 -23
  50. package/dist/cjs/plugins/date/index.js +1 -1
  51. package/dist/cjs/plugins/date/ui/DatePicker/date-picker-input.js +7 -10
  52. package/dist/cjs/plugins/date/utils/internal.js +1 -1
  53. package/dist/cjs/plugins/emoji/pm-plugins/ascii-input-rules.js +27 -28
  54. package/dist/cjs/plugins/extension/actions.js +36 -39
  55. package/dist/cjs/plugins/extension/context-panel.js +123 -130
  56. package/dist/cjs/plugins/extension/pm-plugins/main.js +82 -89
  57. package/dist/cjs/plugins/extension/pm-plugins/utils.js +46 -51
  58. package/dist/cjs/plugins/extension/ui/Extension/ExtensionComponent.js +44 -48
  59. package/dist/cjs/plugins/feedback-dialog/index.js +52 -57
  60. package/dist/cjs/plugins/feedback-dialog/loadJiraCollectorDialogScript.js +44 -47
  61. package/dist/cjs/plugins/find-replace/actions.js +4 -4
  62. package/dist/cjs/plugins/find-replace/utils/batch-decorations.js +144 -153
  63. package/dist/cjs/plugins/find-replace/utils/index.js +2 -2
  64. package/dist/cjs/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +40 -46
  65. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +2 -1
  66. package/dist/cjs/plugins/floating-toolbar/ui/ToolbarLoader.js +2 -1
  67. package/dist/cjs/plugins/fragment/pm-plugins/fragment-consistency.js +86 -86
  68. package/dist/cjs/plugins/help-dialog/ui/HelpDialogLoader.js +2 -1
  69. package/dist/cjs/plugins/history/actions.js +4 -4
  70. package/dist/cjs/plugins/hyperlink/HyperlinkToolbarAppearance.js +76 -82
  71. package/dist/cjs/plugins/hyperlink/pm-plugins/input-rule.js +3 -0
  72. package/dist/cjs/plugins/hyperlink/pm-plugins/main.js +16 -16
  73. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +339 -352
  74. package/dist/cjs/plugins/hyperlink/utils.js +3 -0
  75. package/dist/cjs/plugins/image-upload/pm-plugins/main.js +24 -27
  76. package/dist/cjs/plugins/list/utils/node.js +4 -4
  77. package/dist/cjs/plugins/macro/actions.js +107 -112
  78. package/dist/cjs/plugins/media/nodeviews/mediaGroup.js +43 -46
  79. package/dist/cjs/plugins/media/nodeviews/mediaInline.js +62 -66
  80. package/dist/cjs/plugins/media/nodeviews/mediaNodeUpdater.js +544 -575
  81. package/dist/cjs/plugins/media/nodeviews/mediaNodeView/media.js +38 -42
  82. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +108 -113
  83. package/dist/cjs/plugins/media/picker-facade.js +22 -25
  84. package/dist/cjs/plugins/media/pm-plugins/linking/actions.js +4 -4
  85. package/dist/cjs/plugins/media/pm-plugins/main.js +159 -172
  86. package/dist/cjs/plugins/media/pm-plugins/mediaTaskManager.js +36 -39
  87. package/dist/cjs/plugins/media/toolbar/index.js +3 -0
  88. package/dist/cjs/plugins/media/toolbar/utils.js +30 -33
  89. package/dist/cjs/plugins/media/ui/ImageBorder/index.js +1 -1
  90. package/dist/cjs/plugins/media/ui/ImageBorder/styles.js +1 -1
  91. package/dist/cjs/plugins/media/ui/MediaPicker/PickerFacadeProvider.js +71 -74
  92. package/dist/cjs/plugins/media/ui/ResizableMediaSingle/index.js +52 -57
  93. package/dist/cjs/plugins/media/utils/check-media-type.js +37 -40
  94. package/dist/cjs/plugins/mentions/nodeviews/mention.js +29 -31
  95. package/dist/cjs/plugins/mentions/type-ahead/index.js +1 -1
  96. package/dist/cjs/plugins/mobile-dimensions/actions.js +4 -4
  97. package/dist/cjs/plugins/paste/actions.js +4 -4
  98. package/dist/cjs/plugins/paste/handlers.js +23 -26
  99. package/dist/cjs/plugins/paste/linkify-md-plugin.js +3 -0
  100. package/dist/cjs/plugins/paste/md.js +3 -0
  101. package/dist/cjs/plugins/paste/newline-md-plugin.js +3 -0
  102. package/dist/cjs/plugins/paste/paragraph-md-plugin.js +3 -0
  103. package/dist/cjs/plugins/paste/pm-plugins/main.js +25 -27
  104. package/dist/cjs/plugins/quick-insert/assets/index.js +63 -39
  105. package/dist/cjs/plugins/quick-insert/index.js +30 -33
  106. package/dist/cjs/plugins/selection/actions.js +4 -4
  107. package/dist/cjs/plugins/selection/gap-cursor/direction.js +4 -4
  108. package/dist/cjs/plugins/selection/types.js +4 -4
  109. package/dist/cjs/plugins/status/ui/statusPicker.js +7 -8
  110. package/dist/cjs/plugins/tasks-and-decisions/nodeviews/taskItem.js +9 -10
  111. package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/commands.js +16 -6
  112. package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/keymaps.js +12 -20
  113. package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/main.js +3 -3
  114. package/dist/cjs/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +41 -42
  115. package/dist/cjs/plugins/tasks-and-decisions/utils.js +31 -2
  116. package/dist/cjs/plugins/text-color/pm-plugins/main.js +4 -4
  117. package/dist/cjs/plugins/text-formatting/pm-plugins/input-rule.js +3 -3
  118. package/dist/cjs/plugins/text-formatting/ui/Toolbar/types.js +4 -4
  119. package/dist/cjs/plugins/type-ahead/constants.js +4 -4
  120. package/dist/cjs/plugins/type-ahead/pm-plugins/actions.js +4 -4
  121. package/dist/cjs/plugins/undo-redo/enums.js +4 -4
  122. package/dist/cjs/ui/Appearance/Comment/Comment.js +3 -3
  123. package/dist/cjs/ui/Appearance/FullPage/FullPage.js +1 -2
  124. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  125. package/dist/cjs/ui/ColorPickerButton/index.js +3 -2
  126. package/dist/cjs/ui/ConfigPanel/ConfigPanel.js +68 -73
  127. package/dist/cjs/ui/ConfigPanel/ConfigPanelLoader.js +2 -1
  128. package/dist/cjs/ui/ConfigPanel/Fields/CustomSelect.js +54 -56
  129. package/dist/cjs/ui/ConfigPanel/Fields/UserSelect.js +51 -55
  130. package/dist/cjs/ui/ConfigPanel/FormErrorBoundary.js +24 -27
  131. package/dist/cjs/ui/ConfigPanel/transformers.js +344 -363
  132. package/dist/cjs/ui/ConfigPanel/types.js +8 -8
  133. package/dist/cjs/ui/Dropdown/index.js +2 -1
  134. package/dist/cjs/ui/DropdownMenu/index.js +2 -1
  135. package/dist/cjs/ui/ElementBrowser/components/ElementBrowserLoader.js +1 -1
  136. package/dist/cjs/ui/ElementBrowser/hooks/use-select-and-focus-on-arrow-navigation.js +4 -4
  137. package/dist/cjs/ui/ElementBrowser/types.js +4 -4
  138. package/dist/cjs/ui/LinkSearch/index.js +94 -101
  139. package/dist/cjs/ui/ToolbarArrowKeyNavigationProvider/index.js +19 -2
  140. package/dist/cjs/ui/ToolbarFeedback/index.js +27 -31
  141. package/dist/cjs/utils/action.js +31 -36
  142. package/dist/cjs/utils/clipboard.js +82 -86
  143. package/dist/cjs/utils/deprecation-warnings.js +1 -1
  144. package/dist/cjs/utils/extensions.js +62 -67
  145. package/dist/cjs/utils/insert.js +4 -4
  146. package/dist/cjs/utils/mark.js +2 -2
  147. package/dist/cjs/utils/performance/simple-measure-to-entries.js +1 -2
  148. package/dist/cjs/utils/performance/track-transactions.js +3 -2
  149. package/dist/cjs/version-wrapper.js +1 -1
  150. package/dist/cjs/version.json +1 -1
  151. package/dist/es2019/actions/index.js +8 -9
  152. package/dist/es2019/analytics-api/attach-payload-into-transaction.js +4 -0
  153. package/dist/es2019/create-editor/ReactEditorViewInternal.js +5 -3
  154. package/dist/es2019/editor-next/index.js +5 -6
  155. package/dist/es2019/editor.js +29 -36
  156. package/dist/es2019/i18n/cs.js +34 -6
  157. package/dist/es2019/i18n/da.js +34 -6
  158. package/dist/es2019/i18n/de.js +34 -7
  159. package/dist/es2019/i18n/en.js +31 -4
  160. package/dist/es2019/i18n/en_GB.js +34 -7
  161. package/dist/es2019/i18n/en_ZZ.js +35 -8
  162. package/dist/es2019/i18n/es.js +33 -6
  163. package/dist/es2019/i18n/fi.js +33 -6
  164. package/dist/es2019/i18n/fr.js +34 -7
  165. package/dist/es2019/i18n/hu.js +33 -6
  166. package/dist/es2019/i18n/it.js +34 -7
  167. package/dist/es2019/i18n/ja.js +33 -6
  168. package/dist/es2019/i18n/ko.js +33 -6
  169. package/dist/es2019/i18n/nb.js +35 -8
  170. package/dist/es2019/i18n/nl.js +34 -7
  171. package/dist/es2019/i18n/pl.js +34 -7
  172. package/dist/es2019/i18n/pt_BR.js +34 -7
  173. package/dist/es2019/i18n/ru.js +34 -7
  174. package/dist/es2019/i18n/sv.js +33 -6
  175. package/dist/es2019/i18n/th.js +34 -7
  176. package/dist/es2019/i18n/tr.js +33 -6
  177. package/dist/es2019/i18n/uk.js +34 -7
  178. package/dist/es2019/i18n/vi.js +35 -8
  179. package/dist/es2019/i18n/zh.js +33 -4
  180. package/dist/es2019/i18n/zh_TW.js +33 -6
  181. package/dist/es2019/plugins/analytics/utils.js +2 -0
  182. package/dist/es2019/plugins/annotation/pm-plugins/types.js +3 -3
  183. package/dist/es2019/plugins/annotation/types.js +3 -3
  184. package/dist/es2019/plugins/base/pm-plugins/decoration.js +3 -3
  185. package/dist/es2019/plugins/card/nodeviews/embedCard.js +5 -7
  186. package/dist/es2019/plugins/card/ui/EditLinkToolbar.js +3 -5
  187. package/dist/es2019/plugins/card/ui/EditorSmartCardEventsNext.js +17 -2
  188. package/dist/es2019/plugins/collab-edit/plugin-state.js +1 -2
  189. package/dist/es2019/plugins/date/ui/DatePicker/date-picker-input.js +7 -11
  190. package/dist/es2019/plugins/emoji/pm-plugins/ascii-input-rules.js +27 -28
  191. package/dist/es2019/plugins/extension/ui/Extension/ExtensionComponent.js +8 -12
  192. package/dist/es2019/plugins/find-replace/actions.js +3 -3
  193. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +2 -1
  194. package/dist/es2019/plugins/fragment/pm-plugins/fragment-consistency.js +56 -71
  195. package/dist/es2019/plugins/history/actions.js +3 -3
  196. package/dist/es2019/plugins/hyperlink/pm-plugins/input-rule.js +3 -0
  197. package/dist/es2019/plugins/hyperlink/pm-plugins/main.js +6 -6
  198. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -2
  199. package/dist/es2019/plugins/hyperlink/utils.js +3 -0
  200. package/dist/es2019/plugins/list/utils/node.js +3 -3
  201. package/dist/es2019/plugins/media/nodeviews/mediaNodeUpdater.js +4 -8
  202. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +2 -3
  203. package/dist/es2019/plugins/media/pm-plugins/linking/actions.js +3 -3
  204. package/dist/es2019/plugins/media/pm-plugins/main.js +22 -31
  205. package/dist/es2019/plugins/media/toolbar/index.js +3 -0
  206. package/dist/es2019/plugins/media/ui/ImageBorder/index.js +1 -1
  207. package/dist/es2019/plugins/media/ui/ImageBorder/styles.js +1 -1
  208. package/dist/es2019/plugins/mobile-dimensions/actions.js +3 -3
  209. package/dist/es2019/plugins/paste/actions.js +3 -3
  210. package/dist/es2019/plugins/paste/linkify-md-plugin.js +3 -0
  211. package/dist/es2019/plugins/paste/md.js +3 -0
  212. package/dist/es2019/plugins/paste/newline-md-plugin.js +3 -0
  213. package/dist/es2019/plugins/paste/paragraph-md-plugin.js +3 -0
  214. package/dist/es2019/plugins/selection/actions.js +3 -3
  215. package/dist/es2019/plugins/selection/gap-cursor/direction.js +3 -3
  216. package/dist/es2019/plugins/selection/types.js +3 -3
  217. package/dist/es2019/plugins/status/ui/statusPicker.js +6 -7
  218. package/dist/es2019/plugins/tasks-and-decisions/nodeviews/taskItem.js +9 -11
  219. package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/commands.js +15 -3
  220. package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/keymaps.js +6 -16
  221. package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/main.js +3 -3
  222. package/dist/es2019/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +6 -5
  223. package/dist/es2019/plugins/tasks-and-decisions/utils.js +30 -0
  224. package/dist/es2019/plugins/text-color/pm-plugins/main.js +3 -3
  225. package/dist/es2019/plugins/text-formatting/pm-plugins/input-rule.js +3 -3
  226. package/dist/es2019/plugins/text-formatting/ui/Toolbar/types.js +3 -3
  227. package/dist/es2019/plugins/type-ahead/constants.js +3 -3
  228. package/dist/es2019/plugins/type-ahead/pm-plugins/actions.js +3 -3
  229. package/dist/es2019/plugins/undo-redo/enums.js +3 -3
  230. package/dist/es2019/ui/Appearance/Comment/Comment.js +3 -3
  231. package/dist/es2019/ui/Appearance/FullPage/FullPage.js +1 -2
  232. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  233. package/dist/es2019/ui/ColorPickerButton/index.js +5 -3
  234. package/dist/es2019/ui/ConfigPanel/ConfigPanel.js +3 -4
  235. package/dist/es2019/ui/ConfigPanel/types.js +6 -6
  236. package/dist/es2019/ui/ElementBrowser/hooks/use-select-and-focus-on-arrow-navigation.js +3 -3
  237. package/dist/es2019/ui/ElementBrowser/types.js +3 -3
  238. package/dist/es2019/ui/ToolbarArrowKeyNavigationProvider/index.js +18 -2
  239. package/dist/es2019/ui/ToolbarFeedback/index.js +1 -3
  240. package/dist/es2019/utils/insert.js +3 -3
  241. package/dist/es2019/utils/performance/simple-measure-to-entries.js +1 -1
  242. package/dist/es2019/utils/performance/track-transactions.js +3 -2
  243. package/dist/es2019/version-wrapper.js +1 -1
  244. package/dist/es2019/version.json +1 -1
  245. package/dist/esm/actions/index.js +90 -98
  246. package/dist/esm/analytics-api/attach-payload-into-transaction.js +4 -0
  247. package/dist/esm/create-editor/ErrorBoundary.js +86 -93
  248. package/dist/esm/create-editor/ReactEditorViewInternal.js +6 -5
  249. package/dist/esm/editor-next/index.js +5 -6
  250. package/dist/esm/editor-next/utils/sendDurationAnalytics.js +34 -37
  251. package/dist/esm/editor-next/utils/trackEditorActions.js +48 -51
  252. package/dist/esm/editor.js +29 -34
  253. package/dist/esm/i18n/cs.js +34 -6
  254. package/dist/esm/i18n/da.js +34 -6
  255. package/dist/esm/i18n/de.js +34 -7
  256. package/dist/esm/i18n/en.js +31 -4
  257. package/dist/esm/i18n/en_GB.js +34 -7
  258. package/dist/esm/i18n/en_ZZ.js +35 -8
  259. package/dist/esm/i18n/es.js +33 -6
  260. package/dist/esm/i18n/fi.js +33 -6
  261. package/dist/esm/i18n/fr.js +34 -7
  262. package/dist/esm/i18n/hu.js +33 -6
  263. package/dist/esm/i18n/it.js +34 -7
  264. package/dist/esm/i18n/ja.js +33 -6
  265. package/dist/esm/i18n/ko.js +33 -6
  266. package/dist/esm/i18n/nb.js +35 -8
  267. package/dist/esm/i18n/nl.js +34 -7
  268. package/dist/esm/i18n/pl.js +34 -7
  269. package/dist/esm/i18n/pt_BR.js +34 -7
  270. package/dist/esm/i18n/ru.js +34 -7
  271. package/dist/esm/i18n/sv.js +33 -6
  272. package/dist/esm/i18n/th.js +34 -7
  273. package/dist/esm/i18n/tr.js +33 -6
  274. package/dist/esm/i18n/uk.js +34 -7
  275. package/dist/esm/i18n/vi.js +35 -8
  276. package/dist/esm/i18n/zh.js +33 -4
  277. package/dist/esm/i18n/zh_TW.js +33 -6
  278. package/dist/esm/plugins/analytics/plugin.js +1 -1
  279. package/dist/esm/plugins/analytics/utils.js +2 -0
  280. package/dist/esm/plugins/annotation/pm-plugins/inline-comment.js +39 -44
  281. package/dist/esm/plugins/annotation/pm-plugins/types.js +3 -3
  282. package/dist/esm/plugins/annotation/types.js +3 -3
  283. package/dist/esm/plugins/base/pm-plugins/decoration.js +3 -3
  284. package/dist/esm/plugins/block-type/commands/block-type.js +1 -1
  285. package/dist/esm/plugins/card/nodeviews/embedCard.js +5 -6
  286. package/dist/esm/plugins/card/ui/EditLinkToolbar.js +3 -4
  287. package/dist/esm/plugins/card/ui/EditorSmartCardEventsNext.js +17 -2
  288. package/dist/esm/plugins/collab-edit/index.js +29 -32
  289. package/dist/esm/plugins/collab-edit/plugin-state.js +2 -4
  290. package/dist/esm/plugins/custom-autoformat/doc.js +28 -31
  291. package/dist/esm/plugins/custom-autoformat/index.js +20 -23
  292. package/dist/esm/plugins/date/ui/DatePicker/date-picker-input.js +7 -10
  293. package/dist/esm/plugins/date/utils/internal.js +1 -1
  294. package/dist/esm/plugins/emoji/pm-plugins/ascii-input-rules.js +27 -28
  295. package/dist/esm/plugins/extension/actions.js +36 -39
  296. package/dist/esm/plugins/extension/context-panel.js +123 -129
  297. package/dist/esm/plugins/extension/pm-plugins/main.js +82 -88
  298. package/dist/esm/plugins/extension/pm-plugins/utils.js +46 -51
  299. package/dist/esm/plugins/extension/ui/Extension/ExtensionComponent.js +44 -49
  300. package/dist/esm/plugins/feedback-dialog/index.js +52 -57
  301. package/dist/esm/plugins/feedback-dialog/loadJiraCollectorDialogScript.js +44 -47
  302. package/dist/esm/plugins/find-replace/actions.js +3 -3
  303. package/dist/esm/plugins/find-replace/utils/batch-decorations.js +144 -153
  304. package/dist/esm/plugins/find-replace/utils/index.js +2 -2
  305. package/dist/esm/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +40 -47
  306. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +2 -1
  307. package/dist/esm/plugins/fragment/pm-plugins/fragment-consistency.js +78 -76
  308. package/dist/esm/plugins/history/actions.js +3 -3
  309. package/dist/esm/plugins/hyperlink/HyperlinkToolbarAppearance.js +76 -83
  310. package/dist/esm/plugins/hyperlink/pm-plugins/input-rule.js +3 -0
  311. package/dist/esm/plugins/hyperlink/pm-plugins/main.js +14 -14
  312. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +339 -353
  313. package/dist/esm/plugins/hyperlink/utils.js +3 -0
  314. package/dist/esm/plugins/image-upload/pm-plugins/main.js +24 -27
  315. package/dist/esm/plugins/list/utils/node.js +3 -3
  316. package/dist/esm/plugins/macro/actions.js +107 -112
  317. package/dist/esm/plugins/media/nodeviews/mediaGroup.js +43 -46
  318. package/dist/esm/plugins/media/nodeviews/mediaInline.js +62 -67
  319. package/dist/esm/plugins/media/nodeviews/mediaNodeUpdater.js +544 -575
  320. package/dist/esm/plugins/media/nodeviews/mediaNodeView/media.js +38 -43
  321. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +108 -114
  322. package/dist/esm/plugins/media/picker-facade.js +22 -25
  323. package/dist/esm/plugins/media/pm-plugins/linking/actions.js +3 -3
  324. package/dist/esm/plugins/media/pm-plugins/main.js +159 -173
  325. package/dist/esm/plugins/media/pm-plugins/mediaTaskManager.js +36 -39
  326. package/dist/esm/plugins/media/toolbar/index.js +3 -0
  327. package/dist/esm/plugins/media/toolbar/utils.js +30 -33
  328. package/dist/esm/plugins/media/ui/ImageBorder/index.js +1 -1
  329. package/dist/esm/plugins/media/ui/ImageBorder/styles.js +1 -1
  330. package/dist/esm/plugins/media/ui/MediaPicker/PickerFacadeProvider.js +71 -74
  331. package/dist/esm/plugins/media/ui/ResizableMediaSingle/index.js +52 -57
  332. package/dist/esm/plugins/media/utils/check-media-type.js +37 -40
  333. package/dist/esm/plugins/mentions/nodeviews/mention.js +29 -32
  334. package/dist/esm/plugins/mentions/type-ahead/index.js +1 -1
  335. package/dist/esm/plugins/mobile-dimensions/actions.js +3 -3
  336. package/dist/esm/plugins/paste/actions.js +3 -3
  337. package/dist/esm/plugins/paste/handlers.js +23 -26
  338. package/dist/esm/plugins/paste/linkify-md-plugin.js +3 -0
  339. package/dist/esm/plugins/paste/md.js +3 -0
  340. package/dist/esm/plugins/paste/newline-md-plugin.js +3 -0
  341. package/dist/esm/plugins/paste/paragraph-md-plugin.js +3 -0
  342. package/dist/esm/plugins/paste/pm-plugins/main.js +25 -28
  343. package/dist/esm/plugins/quick-insert/index.js +30 -33
  344. package/dist/esm/plugins/selection/actions.js +3 -3
  345. package/dist/esm/plugins/selection/gap-cursor/direction.js +3 -3
  346. package/dist/esm/plugins/selection/types.js +3 -3
  347. package/dist/esm/plugins/status/ui/statusPicker.js +6 -7
  348. package/dist/esm/plugins/tasks-and-decisions/nodeviews/taskItem.js +9 -10
  349. package/dist/esm/plugins/tasks-and-decisions/pm-plugins/commands.js +17 -7
  350. package/dist/esm/plugins/tasks-and-decisions/pm-plugins/keymaps.js +13 -21
  351. package/dist/esm/plugins/tasks-and-decisions/pm-plugins/main.js +3 -3
  352. package/dist/esm/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +41 -43
  353. package/dist/esm/plugins/tasks-and-decisions/utils.js +28 -0
  354. package/dist/esm/plugins/text-color/pm-plugins/main.js +3 -3
  355. package/dist/esm/plugins/text-formatting/pm-plugins/input-rule.js +3 -3
  356. package/dist/esm/plugins/text-formatting/ui/Toolbar/types.js +3 -3
  357. package/dist/esm/plugins/type-ahead/constants.js +3 -3
  358. package/dist/esm/plugins/type-ahead/pm-plugins/actions.js +3 -3
  359. package/dist/esm/plugins/undo-redo/enums.js +3 -3
  360. package/dist/esm/ui/Appearance/Comment/Comment.js +3 -3
  361. package/dist/esm/ui/Appearance/FullPage/FullPage.js +1 -2
  362. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  363. package/dist/esm/ui/ColorPickerButton/index.js +3 -2
  364. package/dist/esm/ui/ConfigPanel/ConfigPanel.js +68 -74
  365. package/dist/esm/ui/ConfigPanel/Fields/CustomSelect.js +54 -57
  366. package/dist/esm/ui/ConfigPanel/Fields/UserSelect.js +51 -56
  367. package/dist/esm/ui/ConfigPanel/FormErrorBoundary.js +24 -27
  368. package/dist/esm/ui/ConfigPanel/transformers.js +344 -362
  369. package/dist/esm/ui/ConfigPanel/types.js +6 -6
  370. package/dist/esm/ui/Dropdown/index.js +2 -1
  371. package/dist/esm/ui/DropdownMenu/index.js +2 -1
  372. package/dist/esm/ui/ElementBrowser/hooks/use-select-and-focus-on-arrow-navigation.js +3 -3
  373. package/dist/esm/ui/ElementBrowser/types.js +3 -3
  374. package/dist/esm/ui/LinkSearch/index.js +94 -101
  375. package/dist/esm/ui/ToolbarArrowKeyNavigationProvider/index.js +18 -2
  376. package/dist/esm/ui/ToolbarFeedback/index.js +27 -31
  377. package/dist/esm/utils/action.js +31 -36
  378. package/dist/esm/utils/clipboard.js +82 -87
  379. package/dist/esm/utils/deprecation-warnings.js +1 -1
  380. package/dist/esm/utils/extensions.js +62 -67
  381. package/dist/esm/utils/insert.js +3 -3
  382. package/dist/esm/utils/mark.js +2 -2
  383. package/dist/esm/utils/performance/simple-measure-to-entries.js +1 -2
  384. package/dist/esm/utils/performance/track-transactions.js +3 -2
  385. package/dist/esm/version-wrapper.js +1 -1
  386. package/dist/esm/version.json +1 -1
  387. package/dist/types/create-editor/ReactEditorViewInternal.d.ts +1 -0
  388. package/dist/types/i18n/cs.d.ts +29 -2
  389. package/dist/types/i18n/da.d.ts +29 -2
  390. package/dist/types/i18n/de.d.ts +28 -2
  391. package/dist/types/i18n/en.d.ts +28 -2
  392. package/dist/types/i18n/en_GB.d.ts +31 -5
  393. package/dist/types/i18n/en_ZZ.d.ts +28 -2
  394. package/dist/types/i18n/es.d.ts +28 -2
  395. package/dist/types/i18n/fi.d.ts +28 -2
  396. package/dist/types/i18n/fr.d.ts +28 -2
  397. package/dist/types/i18n/hu.d.ts +28 -2
  398. package/dist/types/i18n/it.d.ts +28 -2
  399. package/dist/types/i18n/ja.d.ts +28 -2
  400. package/dist/types/i18n/ko.d.ts +28 -2
  401. package/dist/types/i18n/nb.d.ts +28 -2
  402. package/dist/types/i18n/nl.d.ts +28 -2
  403. package/dist/types/i18n/pl.d.ts +28 -2
  404. package/dist/types/i18n/pt_BR.d.ts +28 -2
  405. package/dist/types/i18n/ru.d.ts +28 -2
  406. package/dist/types/i18n/sv.d.ts +28 -2
  407. package/dist/types/i18n/th.d.ts +28 -2
  408. package/dist/types/i18n/tr.d.ts +28 -2
  409. package/dist/types/i18n/uk.d.ts +28 -2
  410. package/dist/types/i18n/vi.d.ts +28 -2
  411. package/dist/types/i18n/zh.d.ts +30 -2
  412. package/dist/types/i18n/zh_TW.d.ts +28 -2
  413. package/dist/types/plugins/tasks-and-decisions/utils.d.ts +2 -0
  414. package/dist/types/ui/ToolbarArrowKeyNavigationProvider/index.d.ts +3 -1
  415. package/dist/types/utils/document.d.ts +2 -2
  416. package/package.json +15 -15
  417. package/report.api.md +1 -1
@@ -10,16 +10,8 @@
10
10
  import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
11
11
  import { PluginKey } from 'prosemirror-state';
12
12
  import { uuid } from '@atlaskit/adf-schema';
13
- import { stepAddsOneOf } from '../../../utils/step';
13
+ import { getChangedNodes } from '../../../utils/document';
14
14
  const pluginKey = new PluginKey('fragmentMarkConsistencyPlugin');
15
-
16
- /**
17
- * Traverses a transaction's steps to see if we're inserting a node which supports a fragment mark
18
- */
19
- const checkIsAddingSupportedNode = (schema, transaction) => {
20
- const nodesSupportingFragmentMark = getNodesSupportingFragmentMark(schema);
21
- return transaction.steps.some(step => nodesSupportingFragmentMark.some(nodeType => stepAddsOneOf(step, new Set([nodeType]))));
22
- };
23
15
  const getNodesSupportingFragmentMark = schema => {
24
16
  const {
25
17
  table,
@@ -29,48 +21,6 @@ const getNodesSupportingFragmentMark = schema => {
29
21
  } = schema.nodes;
30
22
  return [table, extension, bodiedExtension, inlineExtension];
31
23
  };
32
- const regenerateFragmentIdIfNeeded = ({
33
- transaction,
34
- schema,
35
- doc,
36
- shouldRegenerateLocalId
37
- }) => {
38
- const {
39
- fragment
40
- } = schema.marks;
41
- const nodesSupportingFragmentMark = getNodesSupportingFragmentMark(schema);
42
- let transactionChanged = false;
43
- doc.descendants((node, pos) => {
44
- const isSupportedNode = nodesSupportingFragmentMark.some(supportedNode => node.type === supportedNode);
45
- if (!isSupportedNode) {
46
- // continue traversing
47
- return true;
48
- }
49
- const existingFragmentMark = node.marks.find(mark => mark.type === fragment);
50
- if (!existingFragmentMark) {
51
- // continue traversing
52
- return true;
53
- }
54
- if (shouldRegenerateLocalId(existingFragmentMark.attrs.localId)) {
55
- transactionChanged = true;
56
- transaction.setNodeMarkup(pos, undefined, node.attrs, node.marks.map(mark => {
57
- if (mark.type === fragment) {
58
- mark.attrs.localId = uuid.generate();
59
- mark.attrs.name = null;
60
- }
61
- return mark;
62
- }));
63
- }
64
-
65
- /**
66
- * Continue traversing, as we can encounter inline extension nodes pretty much anywhere
67
- */
68
- return true;
69
- });
70
- return {
71
- transactionChanged
72
- };
73
- };
74
24
 
75
25
  /**
76
26
  * Ensures presence of `fragment` mark on certain node types and the uniqueness of their `localId` attributes
@@ -80,8 +30,14 @@ export const createPlugin = dispatch => new SafePlugin({
80
30
  appendTransaction: (transactions, _oldState, newState) => {
81
31
  let modified = false;
82
32
  const tr = newState.tr;
33
+ const {
34
+ fragment
35
+ } = newState.schema.marks;
36
+ const supportedNodeTypes = getNodesSupportingFragmentMark(newState.schema);
37
+ const addedSupportedNodes = new Set();
38
+ const addedSupportedNodesPos = new Map();
39
+ const localIds = new Set();
83
40
  transactions.forEach(transaction => {
84
- const fragmentLocalIdsObserved = new Set();
85
41
  if (!transaction.docChanged) {
86
42
  return;
87
43
  }
@@ -92,30 +48,59 @@ export const createPlugin = dispatch => new SafePlugin({
92
48
  if (uiEvent === 'cut') {
93
49
  return;
94
50
  }
51
+ const changedNodes = getChangedNodes(transaction);
52
+ for (const {
53
+ node
54
+ } of changedNodes) {
55
+ if (!supportedNodeTypes.includes(node.type)) {
56
+ continue;
57
+ }
58
+ addedSupportedNodes.add(node);
59
+ }
60
+ });
61
+ if (!addedSupportedNodes.size) {
62
+ return;
63
+ }
95
64
 
96
- /** Check if we're actually inserting a supported node, otherwise we can ignore this tr */
97
- const isAddingSupportedNode = checkIsAddingSupportedNode(newState.schema, transaction);
98
- if (!isAddingSupportedNode) {
99
- return;
65
+ // Get existing fragment marks localIds on the page
66
+ newState.doc.descendants((node, pos) => {
67
+ if (addedSupportedNodes.has(node)) {
68
+ addedSupportedNodesPos.set(node, pos);
69
+ return true;
70
+ }
71
+ if (!supportedNodeTypes.includes(node.type)) {
72
+ return true;
73
+ }
74
+ const existingFragmentMark = node.marks.find(mark => mark.type === fragment);
75
+ if (!existingFragmentMark) {
76
+ // continue traversing
77
+ return true;
78
+ }
79
+ localIds.add(existingFragmentMark.attrs.localId);
80
+ return true;
81
+ });
82
+
83
+ // If an added node has localId that collides with existing node, generate new localId
84
+ for (const node of addedSupportedNodes) {
85
+ const pos = addedSupportedNodesPos.get(node);
86
+ if (pos === undefined) {
87
+ continue;
88
+ }
89
+ const existingFragmentMark = node.marks.find(mark => mark.type === fragment);
90
+ if (!existingFragmentMark) {
91
+ continue;
100
92
  }
101
- const {
102
- transactionChanged
103
- } = regenerateFragmentIdIfNeeded({
104
- doc: newState.doc,
105
- schema: newState.schema,
106
- transaction: tr,
107
- shouldRegenerateLocalId: localId => {
108
- if (fragmentLocalIdsObserved.has(localId)) {
109
- return true;
93
+ if (localIds.has(existingFragmentMark.attrs.localId)) {
94
+ tr.setNodeMarkup(pos, undefined, node.attrs, node.marks.map(mark => {
95
+ if (mark.type === fragment) {
96
+ mark.attrs.localId = uuid.generate();
97
+ mark.attrs.name = null;
110
98
  }
111
- fragmentLocalIdsObserved.add(localId);
112
- return false;
113
- }
114
- });
115
- if (transactionChanged) {
99
+ return mark;
100
+ }));
116
101
  modified = true;
117
102
  }
118
- });
103
+ }
119
104
  if (modified) {
120
105
  return tr;
121
106
  }
@@ -1,4 +1,4 @@
1
- export let HistoryActionTypes;
2
- (function (HistoryActionTypes) {
1
+ export let HistoryActionTypes = /*#__PURE__*/function (HistoryActionTypes) {
3
2
  HistoryActionTypes["UPDATE"] = "UPDATE";
4
- })(HistoryActionTypes || (HistoryActionTypes = {}));
3
+ return HistoryActionTypes;
4
+ }({});
@@ -66,6 +66,9 @@ export function createInputRulePlugin(schema, skipAnalytics = false, featureFlag
66
66
  href: url
67
67
  });
68
68
  const tr = state.tr.replaceWith(start + prefix.length, end, schema.text((linkText || '').trim(), [markType]));
69
+ addLinkMetadata(state.selection, tr, {
70
+ inputMethod: INPUT_METHOD.FORMATTING
71
+ });
69
72
  if (skipAnalytics) {
70
73
  return tr;
71
74
  }
@@ -2,20 +2,20 @@ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
2
  import { PluginKey, TextSelection } from 'prosemirror-state';
3
3
  import uuid from 'uuid';
4
4
  import { shallowEqual } from '../../../utils';
5
- export let LinkAction;
6
- (function (LinkAction) {
5
+ export let LinkAction = /*#__PURE__*/function (LinkAction) {
7
6
  LinkAction["SHOW_INSERT_TOOLBAR"] = "SHOW_INSERT_TOOLBAR";
8
7
  LinkAction["HIDE_TOOLBAR"] = "HIDE_TOOLBAR";
9
8
  LinkAction["SELECTION_CHANGE"] = "SELECTION_CHANGE";
10
9
  LinkAction["INSERT_LINK_TOOLBAR"] = "INSERT";
11
10
  LinkAction["EDIT_INSERTED_TOOLBAR"] = "EDIT_INSERTED_TOOLBAR";
12
- })(LinkAction || (LinkAction = {}));
13
- export let InsertStatus;
14
- (function (InsertStatus) {
11
+ return LinkAction;
12
+ }({});
13
+ export let InsertStatus = /*#__PURE__*/function (InsertStatus) {
15
14
  InsertStatus["EDIT_LINK_TOOLBAR"] = "EDIT";
16
15
  InsertStatus["INSERT_LINK_TOOLBAR"] = "INSERT";
17
16
  InsertStatus["EDIT_INSERTED_TOOLBAR"] = "EDIT_INSERTED";
18
- })(InsertStatus || (InsertStatus = {}));
17
+ return InsertStatus;
18
+ }({});
19
19
  export const canLinkBeCreatedInRange = (from, to) => state => {
20
20
  if (!state.doc.rangeHasMark(from, to, state.schema.marks.link)) {
21
21
  const $from = state.doc.resolve(from);
@@ -114,10 +114,9 @@ const mapSearchProviderResultToLinkSearchItemData = ({
114
114
  prefetch: false
115
115
  });
116
116
  export class HyperlinkLinkAddToolbar extends PureComponent {
117
- /* To prevent double submit */
118
-
119
117
  constructor(props) {
120
118
  super(props);
119
+ /* To prevent double submit */
121
120
  _defineProperty(this, "submitted", false);
122
121
  _defineProperty(this, "urlInputContainer", null);
123
122
  _defineProperty(this, "displayTextInputContainer", null);
@@ -1,3 +1,6 @@
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
+
1
4
  import { mapSlice } from '../../utils/slice';
2
5
  import { isSafeUrl, linkify, normalizeUrl as normaliseLinkHref } from '@atlaskit/adf-schema';
3
6
 
@@ -21,11 +21,11 @@ function isListNodeValidContent(node) {
21
21
  const listFragment = Fragment.from(bulletList.createAndFill());
22
22
  return !isListItemNode(node) && node.type.validContent(listFragment);
23
23
  }
24
- export let JoinDirection;
25
- (function (JoinDirection) {
24
+ export let JoinDirection = /*#__PURE__*/function (JoinDirection) {
26
25
  JoinDirection[JoinDirection["LEFT"] = 1] = "LEFT";
27
26
  JoinDirection[JoinDirection["RIGHT"] = -1] = "RIGHT";
28
- })(JoinDirection || (JoinDirection = {}));
27
+ return JoinDirection;
28
+ }({});
29
29
  export const joinSiblingLists = ({
30
30
  tr,
31
31
  direction,
@@ -6,6 +6,8 @@ import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../../analytics';
6
6
  import { replaceExternalMedia, updateAllMediaSingleNodesAttrs, updateCurrentMediaNodeAttrs, updateMediaSingleNodeAttrs } from '../commands/helpers';
7
7
  export class MediaNodeUpdater {
8
8
  constructor(props) {
9
+ // Updates the node with contextId if it doesn't have one already
10
+ // TODO [MS-2258]: remove updateContextId in order to only use updateMediaSingleFileAttrs
9
11
  _defineProperty(this, "updateContextId", async () => {
10
12
  const attrs = this.getAttrs();
11
13
  if (!attrs || attrs.type !== 'file') {
@@ -238,6 +240,7 @@ export class MediaNodeUpdater {
238
240
  __fileSize: size
239
241
  })(this.props.view.state, this.props.view.dispatch);
240
242
  });
243
+ // Copies the pasted node into the current collection using a getPos handler
241
244
  _defineProperty(this, "copyNodeFromPos", async (getPos, traceContext) => {
242
245
  const attrs = this.getAttrs();
243
246
  if ((attrs === null || attrs === void 0 ? void 0 : attrs.type) !== 'file') {
@@ -252,6 +255,7 @@ export class MediaNodeUpdater {
252
255
  getPos
253
256
  })(this.props.view.state, this.props.view.dispatch);
254
257
  });
258
+ // Copies the pasted node into the current collection
255
259
  _defineProperty(this, "copyNode", async traceContext => {
256
260
  const attrs = this.getAttrs();
257
261
  const {
@@ -303,9 +307,6 @@ export class MediaNodeUpdater {
303
307
  const attrs = this.getAttrs();
304
308
  return !!(attrs && attrs.type === 'external' && isMediaBlobUrl(attrs.url));
305
309
  }
306
-
307
- // Updates the node with contextId if it doesn't have one already
308
- // TODO [MS-2258]: remove updateContextId in order to only use updateMediaSingleFileAttrs
309
310
  async getRemoteDimensions() {
310
311
  const mediaProvider = await this.props.mediaProvider;
311
312
  const {
@@ -369,12 +370,7 @@ export class MediaNodeUpdater {
369
370
  await this.uploadExternalMedia(getPos);
370
371
  }
371
372
  }
372
-
373
- // Copies the pasted node into the current collection using a getPos handler
374
-
375
- // Copies the pasted node into the current collection
376
373
  }
377
-
378
374
  const hasPrivateAttrsChanged = (currentAttrs, newAttrs) => {
379
375
  return currentAttrs.__fileName !== newAttrs.__fileName || currentAttrs.__fileMimeType !== newAttrs.__fileMimeType || currentAttrs.__fileSize !== newAttrs.__fileSize || currentAttrs.__contextId !== newAttrs.__contextId;
380
376
  };
@@ -146,6 +146,8 @@ export default class MediaSingleNode extends Component {
146
146
  tr.setSelection(NodeSelection.create(tr.doc, pos));
147
147
  return dispatch(tr);
148
148
  });
149
+ // Workaound for iOS 16 Caption selection issue
150
+ // @see https://product-fabric.atlassian.net/browse/MEX-2012
149
151
  _defineProperty(this, "onMediaSingleClicked", event => {
150
152
  var _this$captionPlaceHol;
151
153
  if (!browser.ios) {
@@ -204,9 +206,6 @@ export default class MediaSingleNode extends Component {
204
206
  contextIdentifierProvider: await contextIdentifierProvider
205
207
  });
206
208
  }
207
-
208
- // Workaound for iOS 16 Caption selection issue
209
- // @see https://product-fabric.atlassian.net/browse/MEX-2012
210
209
  render() {
211
210
  const {
212
211
  selected,
@@ -1,7 +1,7 @@
1
- export let MediaLinkingActionsTypes;
2
- (function (MediaLinkingActionsTypes) {
1
+ export let MediaLinkingActionsTypes = /*#__PURE__*/function (MediaLinkingActionsTypes) {
3
2
  MediaLinkingActionsTypes["showToolbar"] = "MEDIA_SHOW_TOOLBAR";
4
3
  MediaLinkingActionsTypes["hideToolbar"] = "MEDIA_HIDE_TOOLBAR";
5
4
  MediaLinkingActionsTypes["setUrl"] = "MEDIA_SET_LINK_TO";
6
5
  MediaLinkingActionsTypes["unlink"] = "MEDIA_LINKING_UNLINK";
7
- })(MediaLinkingActionsTypes || (MediaLinkingActionsTypes = {}));
6
+ return MediaLinkingActionsTypes;
7
+ }({});
@@ -43,8 +43,6 @@ const createDropPlaceholder = (intl, allowDropLine) => {
43
43
  };
44
44
  const MEDIA_RESOLVED_STATES = ['ready', 'error', 'cancelled'];
45
45
  export class MediaPluginStateImplementation {
46
- // @ts-ignore: private is OK
47
-
48
46
  constructor(_state, options, mediaOptions, newInsertionBehaviour, _dispatch) {
49
47
  _defineProperty(this, "allowsUploads", false);
50
48
  _defineProperty(this, "ignoreLinks", false);
@@ -143,6 +141,11 @@ export class MediaPluginStateImplementation {
143
141
  }
144
142
  return type === mediaSingle;
145
143
  });
144
+ /**
145
+ * we insert a new file by inserting a initial state for that file.
146
+ *
147
+ * called when we insert a new file via the picker (connected via pickerfacade)
148
+ */
146
149
  _defineProperty(this, "insertFile", (mediaState, onMediaStateChanged, pickerType) => {
147
150
  var _mediaState$collectio, _this$mediaOptions2;
148
151
  const {
@@ -219,7 +222,17 @@ export class MediaPluginStateImplementation {
219
222
  _defineProperty(this, "onPopupToggle", onPopupToggleCallback => {
220
223
  this.onPopupToggleCallback = onPopupToggleCallback;
221
224
  });
225
+ /**
226
+ * Returns a promise that is resolved after all pending operations have been finished.
227
+ * An optional timeout will cause the promise to reject if the operation takes too long
228
+ *
229
+ * NOTE: The promise will resolve even if some of the media have failed to process.
230
+ */
222
231
  _defineProperty(this, "waitForPendingTasks", this.taskManager.waitForPendingTasks);
232
+ /**
233
+ * Called from React UI Component when user clicks on "Delete" icon
234
+ * inside of it
235
+ */
223
236
  _defineProperty(this, "handleMediaNodeRemoval", (node, getPos) => {
224
237
  let getNode = node;
225
238
  if (!getNode) {
@@ -245,6 +258,9 @@ export class MediaPluginStateImplementation {
245
258
  }
246
259
  this.nodeCount.set(id, count - 1);
247
260
  });
261
+ /**
262
+ * Called from React UI Component on componentDidMount
263
+ */
248
264
  _defineProperty(this, "handleMediaNodeMount", (node, getPos) => {
249
265
  this.trackMediaNodeAddition(node);
250
266
  this.mediaNodes.unshift({
@@ -252,6 +268,10 @@ export class MediaPluginStateImplementation {
252
268
  getPos
253
269
  });
254
270
  });
271
+ /**
272
+ * Called from React UI Component on componentWillUnmount and UNSAFE_componentWillReceiveProps
273
+ * when React component's underlying node property is replaced with a new node
274
+ */
255
275
  _defineProperty(this, "handleMediaNodeUnmount", oldNode => {
256
276
  this.trackMediaNodeRemoval(oldNode);
257
277
  this.mediaNodes = this.mediaNodes.filter(({
@@ -399,38 +419,9 @@ export class MediaPluginStateImplementation {
399
419
  }
400
420
  return;
401
421
  }
402
-
403
- /**
404
- * we insert a new file by inserting a initial state for that file.
405
- *
406
- * called when we insert a new file via the picker (connected via pickerfacade)
407
- */
408
-
409
- /**
410
- * Returns a promise that is resolved after all pending operations have been finished.
411
- * An optional timeout will cause the promise to reject if the operation takes too long
412
- *
413
- * NOTE: The promise will resolve even if some of the media have failed to process.
414
- */
415
-
416
422
  setView(view) {
417
423
  this.view = view;
418
424
  }
419
-
420
- /**
421
- * Called from React UI Component when user clicks on "Delete" icon
422
- * inside of it
423
- */
424
-
425
- /**
426
- * Called from React UI Component on componentDidMount
427
- */
428
-
429
- /**
430
- * Called from React UI Component on componentWillUnmount and UNSAFE_componentWillReceiveProps
431
- * when React component's underlying node property is replaced with a new node
432
- */
433
-
434
425
  destroy() {
435
426
  if (this.destroyed) {
436
427
  return;
@@ -225,6 +225,9 @@ const generateMediaSingleFloatingToolbar = (state, intl, options, pluginState, m
225
225
  });
226
226
  }
227
227
  });
228
+ toolbarButtons.push({
229
+ type: 'separator'
230
+ });
228
231
  }
229
232
  if (allowAdvancedToolBarOptions) {
230
233
  toolbarButtons = [...toolbarButtons, ...buildLayoutButtons(state, intl, state.schema.nodes.mediaSingle, allowResizing, allowResizingInTables)];
@@ -130,7 +130,7 @@ const ImageBorder = ({
130
130
  ref: popupTarget
131
131
  }, jsx(ToolbarButton, {
132
132
  className: "image-border-toolbar-dropdown",
133
- selected: isOpen,
133
+ selected: enabled || isOpen,
134
134
  "aria-label": formatMessage(messages.borderOptions),
135
135
  title: formatMessage(messages.borderOptions),
136
136
  spacing: "compact",
@@ -118,7 +118,7 @@ export const toolbarButtonWrapper = ({
118
118
  }
119
119
 
120
120
  .image-border-toolbar-dropdown {
121
- ${!isOpen && `background: ${`var(--ds-background-neutral-subtle-hovered, ${colors.N30A})`};`}
121
+ ${!isOpen && !enabled && `background: ${`var(--ds-background-neutral-subtle-hovered, ${colors.N30A})`};`}
122
122
  }
123
123
  }
124
124
  `;
@@ -1,7 +1,7 @@
1
- export let MobileDimensionsActionTypes;
2
- (function (MobileDimensionsActionTypes) {
1
+ export let MobileDimensionsActionTypes = /*#__PURE__*/function (MobileDimensionsActionTypes) {
3
2
  MobileDimensionsActionTypes["SET_KEYBOARD_HEIGHT"] = "SET_KEYBOARD_HEIGHT";
4
3
  MobileDimensionsActionTypes["SET_WINDOW_HEIGHT"] = "SET_WINDOW_HEIGHT";
5
4
  MobileDimensionsActionTypes["SET_MOBILE_PADDING_TOP"] = "SET_MOBILE_PADDING_TOP";
6
5
  MobileDimensionsActionTypes["SET_IS_EXPANDED"] = "SET_IS_EXPANDED";
7
- })(MobileDimensionsActionTypes || (MobileDimensionsActionTypes = {}));
6
+ return MobileDimensionsActionTypes;
7
+ }({});
@@ -1,5 +1,5 @@
1
- export let PastePluginActionTypes;
2
- (function (PastePluginActionTypes) {
1
+ export let PastePluginActionTypes = /*#__PURE__*/function (PastePluginActionTypes) {
3
2
  PastePluginActionTypes["START_TRACKING_PASTED_MACRO_POSITIONS"] = "START_TRACKING_PASTED_MACRO_POSITIONS";
4
3
  PastePluginActionTypes["STOP_TRACKING_PASTED_MACRO_POSITIONS"] = "STOP_TRACKING_PASTED_MACRO_POSITIONS";
5
- })(PastePluginActionTypes || (PastePluginActionTypes = {}));
4
+ return PastePluginActionTypes;
5
+ }({});
@@ -1,3 +1,6 @@
1
+ // File has been copied to packages/editor/editor-plugin-ai/src/provider/markdown-transformer/md/linkify-md-plugin.ts
2
+ // If changes are made to this file, please make the same update in the linked file.
3
+
1
4
  import { linkifyMatch } from '@atlaskit/adf-schema';
2
5
  import LinkifyIt from 'linkify-it';
3
6
  import { findFilepaths, isLinkInMatches } from '../hyperlink/utils';
@@ -1,3 +1,6 @@
1
+ // File has been copied to packages/editor/editor-plugin-ai/src/provider/markdown-transformer/md/index.ts
2
+ // If changes are made to this file, please make the same update in the linked file.
3
+
1
4
  import MarkdownIt from 'markdown-it';
2
5
  import linkify from './linkify-md-plugin';
3
6
  import newline from './newline-md-plugin';
@@ -1,3 +1,6 @@
1
+ // File has been copied to packages/editor/editor-plugin-ai/src/provider/markdown-transformer/md/newline-md-plugin.ts
2
+ // If changes are made to this file, please make the same update in the linked file.
3
+
1
4
  // ED-15363: modified version of the original newline plugin
2
5
  // https://github.com/markdown-it/markdown-it/blob/master/lib/rules_inline/newline.js
3
6
  const newline = (state, silent) => {
@@ -1,3 +1,6 @@
1
+ // File has been copied to packages/editor/editor-plugin-ai/src/provider/markdown-transformer/md/paragraph-md-plugin.ts
2
+ // If changes are made to this file, please make the same update in the linked file.
3
+
1
4
  // ED-15363: modified version of the original paragraph plugin
2
5
  // https://github.com/markdown-it/markdown-it/blob/master/lib/rules_block/paragraph.js
3
6
 
@@ -1,5 +1,5 @@
1
- export let SelectionActionTypes;
2
- (function (SelectionActionTypes) {
1
+ export let SelectionActionTypes = /*#__PURE__*/function (SelectionActionTypes) {
3
2
  SelectionActionTypes["SET_DECORATIONS"] = "SET_DECORATIONS";
4
3
  SelectionActionTypes["SET_RELATIVE_SELECTION"] = "SET_RELATIVE_SELECTION";
5
- })(SelectionActionTypes || (SelectionActionTypes = {}));
4
+ return SelectionActionTypes;
5
+ }({});
@@ -1,12 +1,12 @@
1
- export let Direction;
2
- (function (Direction) {
1
+ export let Direction = /*#__PURE__*/function (Direction) {
3
2
  Direction["UP"] = "up";
4
3
  Direction["RIGHT"] = "right";
5
4
  Direction["DOWN"] = "down";
6
5
  Direction["LEFT"] = "left";
7
6
  Direction["BACKWARD"] = "backward";
8
7
  Direction["FORWARD"] = "forward";
9
- })(Direction || (Direction = {}));
8
+ return Direction;
9
+ }({});
10
10
  export function isBackward(dir) {
11
11
  return [Direction.UP, Direction.LEFT, Direction.BACKWARD].indexOf(dir) !== -1;
12
12
  }
@@ -2,8 +2,8 @@ import { PluginKey } from 'prosemirror-state';
2
2
  import { RelativeSelectionPos } from '@atlaskit/editor-common/selection';
3
3
  export const selectionPluginKey = new PluginKey('selection');
4
4
  export { RelativeSelectionPos };
5
- export let SelectionDirection;
6
- (function (SelectionDirection) {
5
+ export let SelectionDirection = /*#__PURE__*/function (SelectionDirection) {
7
6
  SelectionDirection[SelectionDirection["Before"] = -1] = "Before";
8
7
  SelectionDirection[SelectionDirection["After"] = 1] = "After";
9
- })(SelectionDirection || (SelectionDirection = {}));
8
+ return SelectionDirection;
9
+ }({});
@@ -12,12 +12,12 @@ import withOuterListeners from '../../../ui/with-outer-listeners';
12
12
  import { DEFAULT_STATUS } from '../actions';
13
13
  import { analyticsState, createStatusAnalyticsAndFire } from '../analytics';
14
14
  const PopupWithListeners = withOuterListeners(Popup);
15
- export let InputMethod;
16
- (function (InputMethod) {
15
+ export let InputMethod = /*#__PURE__*/function (InputMethod) {
17
16
  InputMethod["blur"] = "blur";
18
17
  InputMethod["escKey"] = "escKey";
19
18
  InputMethod["enterKey"] = "enterKey";
20
- })(InputMethod || (InputMethod = {}));
19
+ return InputMethod;
20
+ }({});
21
21
  const pickerContainer = css`
22
22
  background: ${`var(--ds-surface-overlay, ${N0})`};
23
23
  padding: ${gridSize()}px 0;
@@ -100,6 +100,9 @@ export class StatusPickerWithoutAnalytcs extends React.Component {
100
100
  this.inputMethod = InputMethod.enterKey;
101
101
  this.props.onEnter(this.state);
102
102
  });
103
+ // cancel bubbling to fix clickOutside logic:
104
+ // popup re-renders its content before the click event bubbles up to the document
105
+ // therefore click target element would be different from the popup content
103
106
  _defineProperty(this, "handlePopupClick", event => event.nativeEvent.stopImmediatePropagation());
104
107
  this.state = this.extractStateFromProps(props);
105
108
  this.createStatusAnalyticsAndFireFunc = createStatusAnalyticsAndFire(props.createAnalyticsEvent);
@@ -214,9 +217,5 @@ export class StatusPickerWithoutAnalytcs extends React.Component {
214
217
  onEnter: this.onEnter
215
218
  })));
216
219
  }
217
-
218
- // cancel bubbling to fix clickOutside logic:
219
- // popup re-renders its content before the click event bubbles up to the document
220
- // therefore click target element would be different from the popup content
221
220
  }
222
221
  export default withAnalyticsEvents()(StatusPickerWithoutAnalytcs);
@@ -25,6 +25,15 @@ class Task extends ReactNodeView {
25
25
  tr.setMeta('scrollIntoView', false);
26
26
  this.view.dispatch(tr);
27
27
  });
28
+ /**
29
+ * Dynamically generates analytics data relating to the parent list.
30
+ *
31
+ * Required to be dynamic, as list (in prosemirror model) may have
32
+ * changed (e.g. item movements, or additional items in list).
33
+ * This node view will have not rerendered for those changes, so
34
+ * cannot render the position and listSize into the
35
+ * AnalyticsContext at initial render time.
36
+ */
28
37
  _defineProperty(this, "addListAnalyticsData", event => {
29
38
  try {
30
39
  const resolvedPos = this.view.state.doc.resolve(this.getPos());
@@ -60,17 +69,6 @@ class Task extends ReactNodeView {
60
69
  isContentEmpty(node) {
61
70
  return node.content.childCount === 0;
62
71
  }
63
-
64
- /**
65
- * Dynamically generates analytics data relating to the parent list.
66
- *
67
- * Required to be dynamic, as list (in prosemirror model) may have
68
- * changed (e.g. item movements, or additional items in list).
69
- * This node view will have not rerendered for those changes, so
70
- * cannot render the position and listSize into the
71
- * AnalyticsContext at initial render time.
72
- */
73
-
74
72
  createDomRef() {
75
73
  const domRef = document.createElement('div');
76
74
  domRef.style['list-style-type'] = 'none';
@@ -1,11 +1,13 @@
1
1
  import { findWrapping, ReplaceAroundStep } from 'prosemirror-transform';
2
2
  import { findCutBefore } from '../../../utils/commands';
3
- import { getBlockRange, isActionOrDecisionItem, isActionOrDecisionList, liftBlock } from './helpers';
3
+ import { getBlockRange, isActionOrDecisionItem, isActionOrDecisionList, liftBlock, subtreeHeight } from './helpers';
4
+ import { normalizeTaskItemsSelection } from '../utils';
4
5
  export const liftSelection = (state, dispatch) => {
6
+ const normalizedSelection = normalizeTaskItemsSelection(state.selection);
5
7
  const {
6
8
  $from,
7
9
  $to
8
- } = state.selection;
10
+ } = normalizedSelection;
9
11
  const tr = liftBlock(state.tr, $from, $to);
10
12
  if (dispatch && tr) {
11
13
  dispatch(tr);
@@ -16,7 +18,17 @@ export const wrapSelectionInTaskList = (state, dispatch) => {
16
18
  const {
17
19
  $from,
18
20
  $to
19
- } = state.selection;
21
+ } = normalizeTaskItemsSelection(state.selection);
22
+
23
+ // limit ui indentation to 6 levels
24
+ const {
25
+ taskList,
26
+ taskItem
27
+ } = state.schema.nodes;
28
+ const maxDepth = subtreeHeight($from, $to, [taskList, taskItem]);
29
+ if (maxDepth >= 6) {
30
+ return true;
31
+ }
20
32
  const blockRange = getBlockRange($from, $to);
21
33
  if (!blockRange) {
22
34
  return true;