@atlaskit/editor-core 175.0.5 → 176.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/.eslintrc.js +23 -57
  2. package/CHANGELOG.md +70 -0
  3. package/dist/cjs/create-editor/ReactEditorView.js +1 -1
  4. package/dist/cjs/create-editor/create-plugins-list.js +2 -4
  5. package/dist/cjs/keymaps/index.js +0 -6
  6. package/dist/cjs/labs/next/presets/cxhtml.js +1 -3
  7. package/dist/cjs/labs/next/presets/mobile.js +1 -3
  8. package/dist/cjs/nodeviews/getInlineNodeViewProducer.js +12 -5
  9. package/dist/cjs/nodeviews/getInlineNodeViewProducer.styles.js +1 -1
  10. package/dist/cjs/plugins/alignment/pm-plugins/keymap.js +0 -1
  11. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/index.js +27 -4
  12. package/dist/cjs/plugins/annotation/nodeviews/index.js +7 -35
  13. package/dist/cjs/plugins/annotation/pm-plugins/inline-comment.js +28 -2
  14. package/dist/cjs/plugins/annotation/utils.js +7 -3
  15. package/dist/cjs/plugins/base/pm-plugins/inline-cursor-target.js +1 -0
  16. package/dist/cjs/plugins/caption/nodeviews/index.js +4 -1
  17. package/dist/cjs/plugins/card/ui/EditLinkToolbar.js +1 -0
  18. package/dist/cjs/plugins/card/ui/LinkToolbarIconDropdown.js +2 -1
  19. package/dist/cjs/plugins/code-block/nodeviews/code-block.js +7 -3
  20. package/dist/cjs/plugins/code-block/refresh-browser-selection.js +3 -1
  21. package/dist/cjs/plugins/code-block/styles.js +6 -2
  22. package/dist/cjs/plugins/code-block/ui/class-names.js +2 -0
  23. package/dist/cjs/plugins/collab-edit/utils.js +4 -0
  24. package/dist/cjs/plugins/copy-button/commands.js +5 -3
  25. package/dist/cjs/plugins/emoji/messages.js +17 -0
  26. package/dist/cjs/plugins/emoji/nodeviews/emoji.js +18 -2
  27. package/dist/cjs/plugins/expand/pm-plugins/keymap.js +11 -1
  28. package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +17 -13
  29. package/dist/cjs/plugins/find-replace/ui/FindReplaceToolbarButton.js +1 -0
  30. package/dist/cjs/plugins/floating-toolbar/index.js +2 -0
  31. package/dist/cjs/plugins/floating-toolbar/ui/Dropdown.js +9 -1
  32. package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +20 -1
  33. package/dist/cjs/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +6 -2
  34. package/dist/cjs/plugins/floating-toolbar/ui/Select.js +10 -4
  35. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +1 -0
  36. package/dist/cjs/plugins/help-dialog/ui/index.js +1 -4
  37. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/create-items.js +2 -2
  38. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +22 -9
  39. package/dist/cjs/plugins/media/index.js +2 -2
  40. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +27 -3
  41. package/dist/cjs/plugins/media/pm-plugins/main.js +17 -2
  42. package/dist/cjs/plugins/media/toolbar/alt-text.js +1 -0
  43. package/dist/cjs/plugins/media/toolbar/linking.js +1 -0
  44. package/dist/cjs/plugins/media/ui/CaptionPlaceholder/index.js +9 -6
  45. package/dist/cjs/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +2 -2
  46. package/dist/cjs/plugins/mentions/messages.js +5 -0
  47. package/dist/cjs/plugins/mentions/nodeviews/mention.js +18 -2
  48. package/dist/cjs/plugins/mentions/styles.js +1 -1
  49. package/dist/cjs/plugins/mentions/ui/Mention/index.js +15 -0
  50. package/dist/cjs/plugins/panel/actions.js +1 -1
  51. package/dist/cjs/plugins/panel/index.js +1 -0
  52. package/dist/cjs/plugins/panel/toolbar.js +2 -2
  53. package/dist/cjs/plugins/paste/index.js +2 -3
  54. package/dist/cjs/plugins/paste/pm-plugins/main.js +2 -2
  55. package/dist/cjs/plugins/quick-insert/assets/action.js +3 -0
  56. package/dist/cjs/plugins/quick-insert/assets/code.js +3 -0
  57. package/dist/cjs/plugins/quick-insert/assets/custom-panel.js +3 -0
  58. package/dist/cjs/plugins/quick-insert/assets/date.js +3 -0
  59. package/dist/cjs/plugins/quick-insert/assets/decision.js +3 -0
  60. package/dist/cjs/plugins/quick-insert/assets/divider.js +3 -0
  61. package/dist/cjs/plugins/quick-insert/assets/emoji.js +3 -0
  62. package/dist/cjs/plugins/quick-insert/assets/expand.js +3 -0
  63. package/dist/cjs/plugins/quick-insert/assets/fallback.js +3 -0
  64. package/dist/cjs/plugins/quick-insert/assets/feedback.js +3 -0
  65. package/dist/cjs/plugins/quick-insert/assets/heading1.js +3 -0
  66. package/dist/cjs/plugins/quick-insert/assets/heading2.js +3 -0
  67. package/dist/cjs/plugins/quick-insert/assets/heading3.js +3 -0
  68. package/dist/cjs/plugins/quick-insert/assets/heading4.js +3 -0
  69. package/dist/cjs/plugins/quick-insert/assets/heading5.js +3 -0
  70. package/dist/cjs/plugins/quick-insert/assets/heading6.js +3 -0
  71. package/dist/cjs/plugins/quick-insert/assets/images.js +3 -0
  72. package/dist/cjs/plugins/quick-insert/assets/layout.js +3 -0
  73. package/dist/cjs/plugins/quick-insert/assets/link.js +3 -0
  74. package/dist/cjs/plugins/quick-insert/assets/list-number.js +3 -0
  75. package/dist/cjs/plugins/quick-insert/assets/list.js +3 -0
  76. package/dist/cjs/plugins/quick-insert/assets/mention.js +3 -0
  77. package/dist/cjs/plugins/quick-insert/assets/panel-error.js +3 -0
  78. package/dist/cjs/plugins/quick-insert/assets/panel-note.js +3 -0
  79. package/dist/cjs/plugins/quick-insert/assets/panel-success.js +3 -0
  80. package/dist/cjs/plugins/quick-insert/assets/panel-warning.js +3 -0
  81. package/dist/cjs/plugins/quick-insert/assets/panel.js +3 -0
  82. package/dist/cjs/plugins/quick-insert/assets/quote.js +3 -0
  83. package/dist/cjs/plugins/quick-insert/assets/status.js +3 -0
  84. package/dist/cjs/plugins/selection/gap-cursor/actions.js +26 -3
  85. package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/index.js +41 -4
  86. package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/styles.js +6 -1
  87. package/dist/cjs/plugins/text-color/utils/color.js +3 -0
  88. package/dist/cjs/plugins/type-ahead/commands/insert-type-ahead-item.js +4 -3
  89. package/dist/cjs/plugins/type-ahead/index.js +42 -22
  90. package/dist/cjs/plugins/type-ahead/messages.js +13 -3
  91. package/dist/cjs/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +25 -16
  92. package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +126 -64
  93. package/dist/cjs/plugins/type-ahead/ui/TypeAheadList.js +12 -14
  94. package/dist/cjs/plugins/type-ahead/ui/TypeAheadListItem.js +37 -14
  95. package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +36 -5
  96. package/dist/cjs/plugins/type-ahead/utils.js +3 -1
  97. package/dist/cjs/ui/Alignment/index.js +0 -1
  98. package/dist/cjs/ui/Appearance/Chromeless.js +1 -1
  99. package/dist/cjs/ui/Appearance/Comment/Toolbar.js +1 -1
  100. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +6 -2
  101. package/dist/cjs/ui/ColorPickerButton/index.js +4 -0
  102. package/dist/cjs/ui/ConfigPanel/Fields/CustomSelect.js +2 -4
  103. package/dist/cjs/ui/ConfigPanel/Fields/Select.js +1 -3
  104. package/dist/cjs/ui/Dropdown/index.js +28 -1
  105. package/dist/cjs/ui/DropdownMenu/index.js +25 -1
  106. package/dist/cjs/ui/ElementBrowser/constants.js +0 -1
  107. package/dist/cjs/ui/ToolbarArrowKeyNavigationProvider/index.js +166 -0
  108. package/dist/cjs/ui/styles.js +12 -18
  109. package/dist/cjs/utils/clipboard.js +17 -12
  110. package/dist/cjs/utils/document.js +13 -0
  111. package/dist/cjs/utils/index.js +0 -9
  112. package/dist/cjs/utils/input-rules.js +7 -5
  113. package/dist/cjs/utils/table.js +35 -0
  114. package/dist/cjs/version-wrapper.js +1 -1
  115. package/dist/cjs/version.json +1 -1
  116. package/dist/es2019/create-editor/ReactEditorView.js +1 -1
  117. package/dist/es2019/create-editor/create-plugins-list.js +2 -4
  118. package/dist/es2019/keymaps/index.js +1 -1
  119. package/dist/es2019/labs/next/presets/cxhtml.js +1 -3
  120. package/dist/es2019/labs/next/presets/mobile.js +1 -3
  121. package/dist/es2019/nodeviews/getInlineNodeViewProducer.js +11 -4
  122. package/dist/es2019/nodeviews/getInlineNodeViewProducer.styles.js +1 -1
  123. package/dist/es2019/plugins/alignment/pm-plugins/keymap.js +1 -2
  124. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/index.js +26 -4
  125. package/dist/es2019/plugins/annotation/nodeviews/index.js +7 -31
  126. package/dist/es2019/plugins/annotation/pm-plugins/inline-comment.js +24 -3
  127. package/dist/es2019/plugins/annotation/utils.js +8 -4
  128. package/dist/es2019/plugins/base/pm-plugins/inline-cursor-target.js +1 -0
  129. package/dist/es2019/plugins/caption/nodeviews/index.js +4 -1
  130. package/dist/es2019/plugins/card/ui/EditLinkToolbar.js +1 -0
  131. package/dist/es2019/plugins/card/ui/LinkToolbarIconDropdown.js +2 -1
  132. package/dist/es2019/plugins/code-block/nodeviews/code-block.js +7 -3
  133. package/dist/es2019/plugins/code-block/refresh-browser-selection.js +2 -1
  134. package/dist/es2019/plugins/code-block/styles.js +21 -5
  135. package/dist/es2019/plugins/code-block/ui/class-names.js +2 -0
  136. package/dist/es2019/plugins/collab-edit/utils.js +5 -1
  137. package/dist/es2019/plugins/copy-button/commands.js +5 -3
  138. package/dist/es2019/plugins/emoji/messages.js +8 -0
  139. package/dist/es2019/plugins/emoji/nodeviews/emoji.js +16 -2
  140. package/dist/es2019/plugins/expand/pm-plugins/keymap.js +10 -1
  141. package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +17 -13
  142. package/dist/es2019/plugins/find-replace/ui/FindReplaceToolbarButton.js +1 -0
  143. package/dist/es2019/plugins/floating-toolbar/index.js +2 -0
  144. package/dist/es2019/plugins/floating-toolbar/ui/Dropdown.js +9 -1
  145. package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +20 -1
  146. package/dist/es2019/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +3 -2
  147. package/dist/es2019/plugins/floating-toolbar/ui/Select.js +9 -3
  148. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +1 -0
  149. package/dist/es2019/plugins/help-dialog/ui/index.js +1 -2
  150. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/create-items.js +2 -2
  151. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +15 -2
  152. package/dist/es2019/plugins/media/index.js +2 -2
  153. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +25 -4
  154. package/dist/es2019/plugins/media/pm-plugins/main.js +14 -1
  155. package/dist/es2019/plugins/media/toolbar/alt-text.js +1 -0
  156. package/dist/es2019/plugins/media/toolbar/linking.js +1 -0
  157. package/dist/es2019/plugins/media/ui/CaptionPlaceholder/index.js +4 -2
  158. package/dist/es2019/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +2 -2
  159. package/dist/es2019/plugins/mentions/messages.js +5 -0
  160. package/dist/es2019/plugins/mentions/nodeviews/mention.js +16 -2
  161. package/dist/es2019/plugins/mentions/styles.js +2 -1
  162. package/dist/es2019/plugins/mentions/ui/Mention/index.js +12 -0
  163. package/dist/es2019/plugins/panel/actions.js +2 -2
  164. package/dist/es2019/plugins/panel/index.js +1 -0
  165. package/dist/es2019/plugins/panel/toolbar.js +3 -3
  166. package/dist/es2019/plugins/paste/index.js +2 -3
  167. package/dist/es2019/plugins/paste/pm-plugins/main.js +2 -2
  168. package/dist/es2019/plugins/quick-insert/assets/action.js +3 -0
  169. package/dist/es2019/plugins/quick-insert/assets/code.js +3 -0
  170. package/dist/es2019/plugins/quick-insert/assets/custom-panel.js +3 -0
  171. package/dist/es2019/plugins/quick-insert/assets/date.js +3 -0
  172. package/dist/es2019/plugins/quick-insert/assets/decision.js +3 -0
  173. package/dist/es2019/plugins/quick-insert/assets/divider.js +3 -0
  174. package/dist/es2019/plugins/quick-insert/assets/emoji.js +3 -0
  175. package/dist/es2019/plugins/quick-insert/assets/expand.js +3 -0
  176. package/dist/es2019/plugins/quick-insert/assets/fallback.js +3 -0
  177. package/dist/es2019/plugins/quick-insert/assets/feedback.js +3 -0
  178. package/dist/es2019/plugins/quick-insert/assets/heading1.js +3 -0
  179. package/dist/es2019/plugins/quick-insert/assets/heading2.js +3 -0
  180. package/dist/es2019/plugins/quick-insert/assets/heading3.js +3 -0
  181. package/dist/es2019/plugins/quick-insert/assets/heading4.js +3 -0
  182. package/dist/es2019/plugins/quick-insert/assets/heading5.js +3 -0
  183. package/dist/es2019/plugins/quick-insert/assets/heading6.js +3 -0
  184. package/dist/es2019/plugins/quick-insert/assets/images.js +3 -0
  185. package/dist/es2019/plugins/quick-insert/assets/layout.js +3 -0
  186. package/dist/es2019/plugins/quick-insert/assets/link.js +3 -0
  187. package/dist/es2019/plugins/quick-insert/assets/list-number.js +3 -0
  188. package/dist/es2019/plugins/quick-insert/assets/list.js +3 -0
  189. package/dist/es2019/plugins/quick-insert/assets/mention.js +3 -0
  190. package/dist/es2019/plugins/quick-insert/assets/panel-error.js +3 -0
  191. package/dist/es2019/plugins/quick-insert/assets/panel-note.js +3 -0
  192. package/dist/es2019/plugins/quick-insert/assets/panel-success.js +3 -0
  193. package/dist/es2019/plugins/quick-insert/assets/panel-warning.js +3 -0
  194. package/dist/es2019/plugins/quick-insert/assets/panel.js +3 -0
  195. package/dist/es2019/plugins/quick-insert/assets/quote.js +3 -0
  196. package/dist/es2019/plugins/quick-insert/assets/status.js +3 -0
  197. package/dist/es2019/plugins/selection/gap-cursor/actions.js +26 -5
  198. package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/index.js +42 -4
  199. package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/styles.js +6 -1
  200. package/dist/es2019/plugins/text-color/utils/color.js +3 -0
  201. package/dist/es2019/plugins/type-ahead/commands/insert-type-ahead-item.js +4 -3
  202. package/dist/es2019/plugins/type-ahead/index.js +17 -4
  203. package/dist/es2019/plugins/type-ahead/messages.js +13 -3
  204. package/dist/es2019/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +24 -16
  205. package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +108 -61
  206. package/dist/es2019/plugins/type-ahead/ui/TypeAheadList.js +12 -14
  207. package/dist/es2019/plugins/type-ahead/ui/TypeAheadListItem.js +32 -8
  208. package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +42 -7
  209. package/dist/es2019/plugins/type-ahead/utils.js +3 -1
  210. package/dist/es2019/ui/Alignment/index.js +1 -2
  211. package/dist/es2019/ui/Appearance/Chromeless.js +4 -0
  212. package/dist/es2019/ui/Appearance/Comment/Toolbar.js +1 -1
  213. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +5 -2
  214. package/dist/es2019/ui/ColorPickerButton/index.js +4 -0
  215. package/dist/es2019/ui/ConfigPanel/Fields/CustomSelect.js +2 -4
  216. package/dist/es2019/ui/ConfigPanel/Fields/Select.js +1 -3
  217. package/dist/es2019/ui/Dropdown/index.js +16 -1
  218. package/dist/es2019/ui/DropdownMenu/index.js +13 -1
  219. package/dist/es2019/ui/ElementBrowser/constants.js +0 -1
  220. package/dist/es2019/ui/ToolbarArrowKeyNavigationProvider/index.js +148 -0
  221. package/dist/es2019/ui/styles.js +1 -7
  222. package/dist/es2019/utils/clipboard.js +11 -9
  223. package/dist/es2019/utils/document.js +14 -1
  224. package/dist/es2019/utils/index.js +0 -7
  225. package/dist/es2019/utils/input-rules.js +4 -3
  226. package/dist/es2019/utils/table.js +28 -0
  227. package/dist/es2019/version-wrapper.js +1 -1
  228. package/dist/es2019/version.json +1 -1
  229. package/dist/esm/create-editor/ReactEditorView.js +1 -1
  230. package/dist/esm/create-editor/create-plugins-list.js +2 -4
  231. package/dist/esm/keymaps/index.js +1 -1
  232. package/dist/esm/labs/next/presets/cxhtml.js +1 -3
  233. package/dist/esm/labs/next/presets/mobile.js +1 -3
  234. package/dist/esm/nodeviews/getInlineNodeViewProducer.js +11 -4
  235. package/dist/esm/nodeviews/getInlineNodeViewProducer.styles.js +1 -1
  236. package/dist/esm/plugins/alignment/pm-plugins/keymap.js +1 -2
  237. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/index.js +29 -4
  238. package/dist/esm/plugins/annotation/nodeviews/index.js +7 -33
  239. package/dist/esm/plugins/annotation/pm-plugins/inline-comment.js +28 -3
  240. package/dist/esm/plugins/annotation/utils.js +8 -4
  241. package/dist/esm/plugins/base/pm-plugins/inline-cursor-target.js +1 -0
  242. package/dist/esm/plugins/caption/nodeviews/index.js +4 -1
  243. package/dist/esm/plugins/card/ui/EditLinkToolbar.js +1 -0
  244. package/dist/esm/plugins/card/ui/LinkToolbarIconDropdown.js +2 -1
  245. package/dist/esm/plugins/code-block/nodeviews/code-block.js +7 -3
  246. package/dist/esm/plugins/code-block/refresh-browser-selection.js +2 -1
  247. package/dist/esm/plugins/code-block/styles.js +7 -2
  248. package/dist/esm/plugins/code-block/ui/class-names.js +2 -0
  249. package/dist/esm/plugins/collab-edit/utils.js +5 -2
  250. package/dist/esm/plugins/copy-button/commands.js +5 -3
  251. package/dist/esm/plugins/emoji/messages.js +8 -0
  252. package/dist/esm/plugins/emoji/nodeviews/emoji.js +15 -2
  253. package/dist/esm/plugins/expand/pm-plugins/keymap.js +10 -1
  254. package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +17 -13
  255. package/dist/esm/plugins/find-replace/ui/FindReplaceToolbarButton.js +1 -0
  256. package/dist/esm/plugins/floating-toolbar/index.js +2 -0
  257. package/dist/esm/plugins/floating-toolbar/ui/Dropdown.js +10 -1
  258. package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +20 -1
  259. package/dist/esm/plugins/floating-toolbar/ui/ExtensionsPlaceholder.js +5 -2
  260. package/dist/esm/plugins/floating-toolbar/ui/Select.js +9 -3
  261. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +1 -0
  262. package/dist/esm/plugins/help-dialog/ui/index.js +1 -4
  263. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/create-items.js +2 -2
  264. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +23 -9
  265. package/dist/esm/plugins/media/index.js +2 -2
  266. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +25 -4
  267. package/dist/esm/plugins/media/pm-plugins/main.js +14 -1
  268. package/dist/esm/plugins/media/toolbar/alt-text.js +1 -0
  269. package/dist/esm/plugins/media/toolbar/linking.js +1 -0
  270. package/dist/esm/plugins/media/ui/CaptionPlaceholder/index.js +3 -1
  271. package/dist/esm/plugins/media/ui/ToolbarMedia/toolbar-media-messages.js +2 -2
  272. package/dist/esm/plugins/mentions/messages.js +5 -0
  273. package/dist/esm/plugins/mentions/nodeviews/mention.js +15 -2
  274. package/dist/esm/plugins/mentions/styles.js +1 -1
  275. package/dist/esm/plugins/mentions/ui/Mention/index.js +13 -0
  276. package/dist/esm/plugins/panel/actions.js +2 -2
  277. package/dist/esm/plugins/panel/index.js +1 -0
  278. package/dist/esm/plugins/panel/toolbar.js +3 -3
  279. package/dist/esm/plugins/paste/index.js +2 -3
  280. package/dist/esm/plugins/paste/pm-plugins/main.js +2 -2
  281. package/dist/esm/plugins/quick-insert/assets/action.js +3 -0
  282. package/dist/esm/plugins/quick-insert/assets/code.js +3 -0
  283. package/dist/esm/plugins/quick-insert/assets/custom-panel.js +3 -0
  284. package/dist/esm/plugins/quick-insert/assets/date.js +3 -0
  285. package/dist/esm/plugins/quick-insert/assets/decision.js +3 -0
  286. package/dist/esm/plugins/quick-insert/assets/divider.js +3 -0
  287. package/dist/esm/plugins/quick-insert/assets/emoji.js +3 -0
  288. package/dist/esm/plugins/quick-insert/assets/expand.js +3 -0
  289. package/dist/esm/plugins/quick-insert/assets/fallback.js +3 -0
  290. package/dist/esm/plugins/quick-insert/assets/feedback.js +3 -0
  291. package/dist/esm/plugins/quick-insert/assets/heading1.js +3 -0
  292. package/dist/esm/plugins/quick-insert/assets/heading2.js +3 -0
  293. package/dist/esm/plugins/quick-insert/assets/heading3.js +3 -0
  294. package/dist/esm/plugins/quick-insert/assets/heading4.js +3 -0
  295. package/dist/esm/plugins/quick-insert/assets/heading5.js +3 -0
  296. package/dist/esm/plugins/quick-insert/assets/heading6.js +3 -0
  297. package/dist/esm/plugins/quick-insert/assets/images.js +3 -0
  298. package/dist/esm/plugins/quick-insert/assets/layout.js +3 -0
  299. package/dist/esm/plugins/quick-insert/assets/link.js +3 -0
  300. package/dist/esm/plugins/quick-insert/assets/list-number.js +3 -0
  301. package/dist/esm/plugins/quick-insert/assets/list.js +3 -0
  302. package/dist/esm/plugins/quick-insert/assets/mention.js +3 -0
  303. package/dist/esm/plugins/quick-insert/assets/panel-error.js +3 -0
  304. package/dist/esm/plugins/quick-insert/assets/panel-note.js +3 -0
  305. package/dist/esm/plugins/quick-insert/assets/panel-success.js +3 -0
  306. package/dist/esm/plugins/quick-insert/assets/panel-warning.js +3 -0
  307. package/dist/esm/plugins/quick-insert/assets/panel.js +3 -0
  308. package/dist/esm/plugins/quick-insert/assets/quote.js +3 -0
  309. package/dist/esm/plugins/quick-insert/assets/status.js +3 -0
  310. package/dist/esm/plugins/selection/gap-cursor/actions.js +24 -5
  311. package/dist/esm/plugins/text-color/ui/ToolbarTextColor/index.js +44 -4
  312. package/dist/esm/plugins/text-color/ui/ToolbarTextColor/styles.js +6 -1
  313. package/dist/esm/plugins/text-color/utils/color.js +3 -0
  314. package/dist/esm/plugins/type-ahead/commands/insert-type-ahead-item.js +4 -3
  315. package/dist/esm/plugins/type-ahead/index.js +35 -22
  316. package/dist/esm/plugins/type-ahead/messages.js +13 -3
  317. package/dist/esm/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +24 -16
  318. package/dist/esm/plugins/type-ahead/ui/InputQuery.js +124 -64
  319. package/dist/esm/plugins/type-ahead/ui/TypeAheadList.js +12 -14
  320. package/dist/esm/plugins/type-ahead/ui/TypeAheadListItem.js +35 -14
  321. package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +38 -7
  322. package/dist/esm/plugins/type-ahead/utils.js +3 -1
  323. package/dist/esm/ui/Alignment/index.js +1 -2
  324. package/dist/esm/ui/Appearance/Chromeless.js +1 -1
  325. package/dist/esm/ui/Appearance/Comment/Toolbar.js +1 -1
  326. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +5 -2
  327. package/dist/esm/ui/ColorPickerButton/index.js +4 -0
  328. package/dist/esm/ui/ConfigPanel/Fields/CustomSelect.js +2 -4
  329. package/dist/esm/ui/ConfigPanel/Fields/Select.js +1 -3
  330. package/dist/esm/ui/Dropdown/index.js +17 -1
  331. package/dist/esm/ui/DropdownMenu/index.js +14 -1
  332. package/dist/esm/ui/ElementBrowser/constants.js +0 -1
  333. package/dist/esm/ui/ToolbarArrowKeyNavigationProvider/index.js +147 -0
  334. package/dist/esm/ui/styles.js +12 -16
  335. package/dist/esm/utils/clipboard.js +17 -12
  336. package/dist/esm/utils/document.js +14 -1
  337. package/dist/esm/utils/index.js +0 -7
  338. package/dist/esm/utils/input-rules.js +4 -3
  339. package/dist/esm/utils/table.js +28 -0
  340. package/dist/esm/version-wrapper.js +1 -1
  341. package/dist/esm/version.json +1 -1
  342. package/dist/types/keymaps/index.d.ts +1 -1
  343. package/dist/types/plugins/alignment/ui/ToolbarAlignment/index.d.ts +2 -0
  344. package/dist/types/plugins/annotation/utils.d.ts +2 -2
  345. package/dist/types/plugins/block-type/ui/ToolbarBlockType/index.d.ts +2 -0
  346. package/dist/types/plugins/code-block/refresh-browser-selection.d.ts +2 -0
  347. package/dist/types/plugins/code-block/ui/class-names.d.ts +2 -0
  348. package/dist/types/plugins/emoji/messages.d.ts +7 -0
  349. package/dist/types/plugins/extension/index.d.ts +0 -1
  350. package/dist/types/plugins/floating-toolbar/ui/Dropdown.d.ts +1 -0
  351. package/dist/types/plugins/floating-toolbar/ui/DropdownMenu.d.ts +6 -0
  352. package/dist/types/plugins/floating-toolbar/ui/Select.d.ts +1 -0
  353. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/block-insert-element-browser.d.ts +3 -1
  354. package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/index.d.ts +1 -0
  355. package/dist/types/plugins/media/nodeviews/mediaSingle.d.ts +4 -1
  356. package/dist/types/plugins/media/pm-plugins/main.d.ts +1 -0
  357. package/dist/types/plugins/media/ui/CaptionPlaceholder/index.d.ts +3 -3
  358. package/dist/types/plugins/mentions/messages.d.ts +5 -0
  359. package/dist/types/plugins/mentions/ui/Mention/index.d.ts +1 -0
  360. package/dist/types/plugins/paste/index.d.ts +1 -2
  361. package/dist/types/plugins/paste/pm-plugins/main.d.ts +1 -1
  362. package/dist/types/plugins/selection/gap-cursor/actions.d.ts +2 -0
  363. package/dist/types/plugins/text-color/ui/ToolbarTextColor/index.d.ts +3 -0
  364. package/dist/types/plugins/type-ahead/messages.d.ts +10 -0
  365. package/dist/types/plugins/type-ahead/ui/TypeAheadPopup.d.ts +7 -1
  366. package/dist/types/plugins/type-ahead/utils.d.ts +1 -0
  367. package/dist/types/types/extension-config.d.ts +0 -1
  368. package/dist/types/ui/ConfigPanel/Fields/SelectItem.d.ts +1 -1
  369. package/dist/types/ui/Dropdown/index.d.ts +6 -1
  370. package/dist/types/ui/DropdownMenu/index.d.ts +2 -1
  371. package/dist/types/ui/ElementBrowser/types.d.ts +3 -1
  372. package/dist/types/ui/ToolbarArrowKeyNavigationProvider/index.d.ts +18 -0
  373. package/dist/types/ui/styles.d.ts +0 -1
  374. package/dist/types/utils/clipboard.d.ts +1 -1
  375. package/dist/types/utils/index.d.ts +0 -4
  376. package/dist/types/utils/input-rules.d.ts +2 -2
  377. package/dist/types/utils/table.d.ts +3 -0
  378. package/docs/3-annotations.tsx +1 -0
  379. package/package.json +20 -18
  380. package/report.api.md +74 -74
@@ -57,6 +57,7 @@ var altTextEditComponent = function altTextEditComponent(options) {
57
57
  return {
58
58
  type: 'custom',
59
59
  fallback: [],
60
+ disableArrowNavigation: true,
60
61
  render: function render(view, idx) {
61
62
  if (!view) {
62
63
  return null;
@@ -63,6 +63,7 @@ var getLinkingToolbar = function getLinkingToolbar(toolbarBaseConfig, mediaLinki
63
63
  items: [{
64
64
  type: 'custom',
65
65
  fallback: [],
66
+ disableArrowNavigation: true,
66
67
  render: function render(view, idx) {
67
68
  if (!view || !providerFactory) {
68
69
  return null;
@@ -9,7 +9,9 @@ exports.default = exports.CAPTION_PLACEHOLDER_ID = void 0;
9
9
 
10
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
11
 
12
- var _react = require("@emotion/react");
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _react2 = require("@emotion/react");
13
15
 
14
16
  var _reactIntlNext = require("react-intl-next");
15
17
 
@@ -21,18 +23,19 @@ var _messages = require("./messages");
21
23
 
22
24
  var _templateObject;
23
25
 
24
- var placeholder = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n width: 100%;\n text-align: center;\n margin-top: 8px !important;\n display: block;\n"])), (0, _tokens.token)('color.text.subtlest', _colors.N200));
26
+ var placeholder = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n width: 100%;\n text-align: center;\n margin-top: 8px !important;\n display: block;\n"])), (0, _tokens.token)('color.text.subtlest', _colors.N200));
25
27
  var CAPTION_PLACEHOLDER_ID = 'caption-placeholder';
26
28
  exports.CAPTION_PLACEHOLDER_ID = CAPTION_PLACEHOLDER_ID;
27
29
 
28
- var _default = function _default(_ref) {
30
+ var _default = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
29
31
  var onClick = _ref.onClick;
30
- return (0, _react.jsx)("span", {
32
+ return (0, _react2.jsx)("span", {
33
+ ref: ref,
31
34
  css: placeholder,
32
35
  onClick: onClick,
33
36
  "data-id": CAPTION_PLACEHOLDER_ID,
34
37
  "data-testid": "caption-placeholder"
35
- }, (0, _react.jsx)(_reactIntlNext.FormattedMessage, _messages.messages.placeholder));
36
- };
38
+ }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.messages.placeholder));
39
+ });
37
40
 
38
41
  exports.default = _default;
@@ -10,8 +10,8 @@ var _reactIntlNext = require("react-intl-next");
10
10
  var toolbarMediaMessages = (0, _reactIntlNext.defineMessages)({
11
11
  toolbarMediaTitle: {
12
12
  id: 'fabric.editor.toolbarMediaTitle',
13
- defaultMessage: 'Files & images',
14
- description: 'a label for an icon that describes files and images'
13
+ defaultMessage: 'Add image, video, or file',
14
+ description: 'a label for an icon that describes files, videos and images'
15
15
  }
16
16
  });
17
17
  exports.toolbarMediaMessages = toolbarMediaMessages;
@@ -22,6 +22,11 @@ var messages = (0, _reactIntlNext.defineMessages)({
22
22
  id: 'fabric.editor.mentionsIconLabel',
23
23
  defaultMessage: 'Mention',
24
24
  description: 'icon label to describe the mention icon'
25
+ },
26
+ mentionsNodeLabel: {
27
+ id: 'fabric.editor.mentionNode.label',
28
+ defaultMessage: 'Tagged user',
29
+ description: 'Label to indicate mention node to Screen reader users, that preceeds with user name ex: "Tagged user @XXX'
25
30
  }
26
31
  });
27
32
  exports.messages = messages;
@@ -11,18 +11,34 @@ var _react = _interopRequireDefault(require("react"));
11
11
 
12
12
  var _Mention = _interopRequireDefault(require("../ui/Mention"));
13
13
 
14
+ var _reactIntlNext = require("react-intl-next");
15
+
16
+ var _messages = require("../messages");
17
+
18
+ var MentionAssistiveTextComponent = /*#__PURE__*/_react.default.memo(function (_ref) {
19
+ var mentionedName = _ref.mentionedName;
20
+ var intl = (0, _reactIntlNext.useIntl)();
21
+ return /*#__PURE__*/_react.default.createElement("span", {
22
+ className: 'assistive'
23
+ }, "".concat(intl.formatMessage(_messages.messages.mentionsNodeLabel), " ").concat(mentionedName));
24
+ });
25
+
14
26
  var MentionNodeView = function MentionNodeView(props) {
15
27
  var providerFactory = props.providerFactory;
16
28
  var _props$node$attrs = props.node.attrs,
17
29
  id = _props$node$attrs.id,
18
30
  text = _props$node$attrs.text,
19
31
  accessLevel = _props$node$attrs.accessLevel;
20
- return /*#__PURE__*/_react.default.createElement(_Mention.default, {
32
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(MentionAssistiveTextComponent, {
33
+ mentionedName: text
34
+ }), /*#__PURE__*/_react.default.createElement("span", {
35
+ "aria-hidden": "true"
36
+ }, /*#__PURE__*/_react.default.createElement(_Mention.default, {
21
37
  id: id,
22
38
  text: text,
23
39
  accessLevel: accessLevel,
24
40
  providers: providerFactory
25
- });
41
+ })));
26
42
  };
27
43
 
28
44
  exports.MentionNodeView = MentionNodeView;
@@ -21,5 +21,5 @@ var _tokens = require("@atlaskit/tokens");
21
21
 
22
22
  var _templateObject;
23
23
 
24
- var mentionsStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n &.", " [data-mention-id] > span {\n ", "\n\n /* need to specify dark text colour because personal mentions\n (in dark blue) have white text by default */\n color: ", ";\n }\n }\n\n .danger {\n .", ".", "\n > span\n > span {\n box-shadow: 0 0 0 ", "px ", ";\n background-color: ", ";\n }\n .", " > span > span {\n background-color: ", ";\n color: ", ";\n }\n }\n"])), _mention.MentionSharedCssClassName.MENTION_CONTAINER, _editorSharedStyles.akEditorSelectedNodeClassName, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow, _editorSharedStyles.SelectionStyle.Background]), (0, _tokens.token)('color.text.subtle', _colors.N500), _mention.MentionSharedCssClassName.MENTION_CONTAINER, _editorSharedStyles.akEditorSelectedNodeClassName, _editorSharedStyles.akEditorSelectedBorderSize, _editorSharedStyles.akEditorDeleteBorder, (0, _tokens.token)('color.background.danger', _editorSharedStyles.akEditorDeleteBackgroundWithOpacity), _mention.MentionSharedCssClassName.MENTION_CONTAINER, (0, _tokens.token)('color.background.neutral', _colors.N30A), (0, _tokens.token)('color.text.subtle', _colors.N500));
24
+ var mentionsStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n &.", " [data-mention-id] > span {\n ", "\n\n /* need to specify dark text colour because personal mentions\n (in dark blue) have white text by default */\n color: ", ";\n }\n }\n\n .danger {\n .", ".", "\n > span\n > span\n > span {\n box-shadow: 0 0 0 ", "px ", ";\n background-color: ", ";\n }\n .", " > span > span > span {\n background-color: ", ";\n color: ", ";\n }\n }\n"])), _mention.MentionSharedCssClassName.MENTION_CONTAINER, _editorSharedStyles.akEditorSelectedNodeClassName, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow, _editorSharedStyles.SelectionStyle.Background]), (0, _tokens.token)('color.text.subtle', _colors.N500), _mention.MentionSharedCssClassName.MENTION_CONTAINER, _editorSharedStyles.akEditorSelectedNodeClassName, _editorSharedStyles.akEditorSelectedBorderSize, _editorSharedStyles.akEditorDeleteBorder, (0, _tokens.token)('color.background.danger', _editorSharedStyles.akEditorDeleteBackgroundWithOpacity), _mention.MentionSharedCssClassName.MENTION_CONTAINER, (0, _tokens.token)('color.background.neutral', _colors.N30A), (0, _tokens.token)('color.text.subtle', _colors.N500));
25
25
  exports.mentionsStyles = mentionsStyles;
@@ -31,6 +31,10 @@ var _element = require("@atlaskit/mention/element");
31
31
 
32
32
  var _providerFactory = require("@atlaskit/editor-common/provider-factory");
33
33
 
34
+ var _utils = require("@atlaskit/editor-common/utils");
35
+
36
+ var _refreshBrowserSelection = require("../../../code-block/refresh-browser-selection");
37
+
34
38
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
39
 
36
40
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -73,6 +77,17 @@ var Mention = /*#__PURE__*/function (_PureComponent) {
73
77
  }
74
78
 
75
79
  (0, _createClass2.default)(Mention, [{
80
+ key: "componentDidMount",
81
+ value: function componentDidMount() {
82
+ // Workaround an issue where the selection is not updated immediately after adding
83
+ // a mention when "sanitizePrivateContent" is enabled in the editor on safari.
84
+ // This affects both insertion and paste behaviour it is applied to the component.
85
+ // https://product-fabric.atlassian.net/browse/ED-14859
86
+ if (_utils.browser.safari) {
87
+ setTimeout(_refreshBrowserSelection.refreshBrowserSelection, 0);
88
+ }
89
+ }
90
+ }, {
76
91
  key: "componentWillUnmount",
77
92
  value: function componentWillUnmount() {
78
93
  if (!this.props.providers) {
@@ -74,7 +74,7 @@ var changePanelType = function changePanelType(panelType) {
74
74
  var newTr;
75
75
 
76
76
  if (allowCustomPanel) {
77
- var previousColor = panelNode.node.attrs.panelColor || (0, _panel.getPanelTypeBackground)(previousType);
77
+ var previousColor = panelNode.node.attrs.panelType === 'custom' ? panelNode.node.attrs.panelColor || 'none' : (0, _panel.getPanelTypeBackgroundNoTokens)(previousType);
78
78
  var previousIcon = panelNode.node.attrs.panelIcon;
79
79
  var previousIconId = panelNode.node.attrs.panelIconId;
80
80
  var previousIconText = panelNode.node.attrs.panelIconText;
@@ -163,6 +163,7 @@ var panelPlugin = function panelPlugin() {
163
163
  panelIcon: ':rainbow:',
164
164
  panelIconId: '1f308',
165
165
  panelIconText: '🌈',
166
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-7268
166
167
  // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage
167
168
  panelColor: _colors.T50
168
169
  }, state, insert);
@@ -125,7 +125,7 @@ var getToolbarItems = function getToolbarItems(formatMessage, panelNodeType, isC
125
125
  return false;
126
126
  }
127
127
 
128
- var previousColor = panelNode.node.attrs.panelColor || (0, _panel.getPanelTypeBackground)(panelNode.node.attrs.panelType);
128
+ var previousColor = panelNode.node.attrs.panelType === 'custom' ? panelNode.node.attrs.panelColor || 'none' : (0, _panel.getPanelTypeBackgroundNoTokens)(panelNode.node.attrs.panelType);
129
129
  var emojiInfo = panelNode.node.attrs.panelType;
130
130
  var panelEmoji = panelIconMap[emojiInfo];
131
131
  var previousEmoji = panelEmoji ? {
@@ -225,7 +225,7 @@ var getToolbarItems = function getToolbarItems(formatMessage, panelNodeType, isC
225
225
  };
226
226
  };
227
227
 
228
- var panelColor = activePanelType === _adfSchema.PanelType.CUSTOM ? activePanelColor || (0, _panel.getPanelTypeBackground)(_adfSchema.PanelType.INFO) : (0, _panel.getPanelTypeBackground)(activePanelType);
228
+ var panelColor = activePanelType === _adfSchema.PanelType.CUSTOM ? activePanelColor || (0, _panel.getPanelTypeBackgroundNoTokens)(_adfSchema.PanelType.INFO) : (0, _panel.getPanelTypeBackgroundNoTokens)(activePanelType);
229
229
  var defaultPalette = _panelBackgroundPalette.panelBackgroundPalette.find(function (item) {
230
230
  return item.value === panelColor;
231
231
  }) || {
@@ -9,8 +9,7 @@ var _main = require("./pm-plugins/main");
9
9
 
10
10
  var pastePlugin = function pastePlugin(_ref) {
11
11
  var cardOptions = _ref.cardOptions,
12
- sanitizePrivateContent = _ref.sanitizePrivateContent,
13
- plainTextPasteLinkification = _ref.plainTextPasteLinkification;
12
+ sanitizePrivateContent = _ref.sanitizePrivateContent;
14
13
  return {
15
14
  name: 'paste',
16
15
  pmPlugins: function pmPlugins() {
@@ -21,7 +20,7 @@ var pastePlugin = function pastePlugin(_ref) {
21
20
  providerFactory = _ref2.providerFactory,
22
21
  dispatchAnalyticsEvent = _ref2.dispatchAnalyticsEvent,
23
22
  dispatch = _ref2.dispatch;
24
- return (0, _main.createPlugin)(schema, dispatchAnalyticsEvent, dispatch, plainTextPasteLinkification, cardOptions, sanitizePrivateContent, providerFactory);
23
+ return (0, _main.createPlugin)(schema, dispatchAnalyticsEvent, dispatch, cardOptions, sanitizePrivateContent, providerFactory);
25
24
  }
26
25
  }];
27
26
  }
@@ -89,7 +89,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
89
89
 
90
90
  _analytics.sendPasteAnalyticsEvent;
91
91
 
92
- function createPlugin(schema, dispatchAnalyticsEvent, dispatch, plainTextPasteLinkification, cardOptions, sanitizePrivateContent, providerFactory) {
92
+ function createPlugin(schema, dispatchAnalyticsEvent, dispatch, cardOptions, sanitizePrivateContent, providerFactory) {
93
93
  var atlassianMarkDownParser = new _editorMarkdownTransformer.MarkdownTransformer(schema, _md.md);
94
94
 
95
95
  function getMarkdownSlice(text, openStart, openEnd) {
@@ -285,7 +285,7 @@ function createPlugin(schema, dispatchAnalyticsEvent, dispatch, plainTextPasteLi
285
285
  };
286
286
 
287
287
  slice = (0, _handlers.handleParagraphBlockMarks)(state, slice);
288
- var plainTextPasteSlice = plainTextPasteLinkification === true ? (0, _utils.linkifyContent)(state.schema)(slice) : slice;
288
+ var plainTextPasteSlice = (0, _utils.linkifyContent)(state.schema)(slice);
289
289
 
290
290
  if ((0, _analytics.handlePasteAsPlainTextWithAnalytics)(view, event, plainTextPasteSlice)(state, dispatch, view)) {
291
291
  return true;
@@ -9,6 +9,9 @@ exports.default = IconAction;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconAction() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconCode;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconCode() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconCustomPanel;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconCustomPanel() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  width: "40",
@@ -9,6 +9,9 @@ exports.default = IconDate;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconDate() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconDecision;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconDecision() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconDivider;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconDivider() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconEmoji;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconEmoji() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconExpand;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconExpand() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconFallback;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconFallback() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconFeedback;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconFeedback() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading1;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading1() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading2;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading2() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading3;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading3() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading4;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading4() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading5;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading5() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconHeading6;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconHeading6() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconImages;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconImages() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconLayout;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconLayout() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconLink;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconLink() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconListOrdered;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconListOrdered() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconList;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconList() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconMention;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconMention() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconPanelError;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconPanelError() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconPanelNote;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconPanelNote() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconPanelSuccess;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconPanelSuccess() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconPanelWarning;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconPanelWarning() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconPanel;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconPanel() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconQuote;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconQuote() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -9,6 +9,9 @@ exports.default = IconStatus;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ // TODO: https://product-fabric.atlassian.net/browse/DSP-4138
13
+
14
+ /* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
12
15
  function IconStatus() {
13
16
  return /*#__PURE__*/_react.default.createElement("svg", {
14
17
  focusable: "false",
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.setSelectionTopLevelBlocks = exports.setGapCursorAtPos = exports.setCursorForTopLevelBlocks = exports.hasGapCursorPlugin = exports.deleteNode = exports.arrow = void 0;
8
+ exports.shouldSkipGapCursor = exports.setSelectionTopLevelBlocks = exports.setGapCursorAtPos = exports.setCursorForTopLevelBlocks = exports.hasGapCursorPlugin = exports.deleteNode = exports.arrow = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
@@ -27,6 +27,8 @@ var _position = require("../../../utils/prosemirror/position");
27
27
 
28
28
  var _gapCursorPluginKey = require("../pm-plugins/gap-cursor-plugin-key");
29
29
 
30
+ var _table = require("../../../utils/table");
31
+
30
32
  var _mapDirection;
31
33
 
32
34
  var mapDirection = (_mapDirection = {}, (0, _defineProperty2.default)(_mapDirection, _direction.Direction.LEFT, -1), (0, _defineProperty2.default)(_mapDirection, _direction.Direction.RIGHT, 1), (0, _defineProperty2.default)(_mapDirection, _direction.Direction.UP, -1), (0, _defineProperty2.default)(_mapDirection, _direction.Direction.DOWN, 1), (0, _defineProperty2.default)(_mapDirection, _direction.Direction.BACKWARD, -1), (0, _defineProperty2.default)(_mapDirection, _direction.Direction.FORWARD, 1), _mapDirection);
@@ -74,10 +76,31 @@ function shouldHandleMediaGapCursor(dir, state) {
74
76
  return true;
75
77
  }
76
78
 
79
+ var shouldSkipGapCursor = function shouldSkipGapCursor(direction, state, $pos) {
80
+ var doc = state.doc,
81
+ schema = state.schema;
82
+
83
+ switch (direction) {
84
+ case _direction.Direction.UP:
85
+ if ((0, _position.atTheBeginningOfDoc)(state)) {
86
+ return false;
87
+ }
88
+
89
+ return (0, _table.isPositionNearTableRow)($pos, schema, 'before') || (0, _utils2.isTextBlockNearPos)(doc, schema, $pos, -1);
90
+
91
+ case _direction.Direction.DOWN:
92
+ return (0, _position.atTheEndOfDoc)(state) || (0, _utils2.isTextBlockNearPos)(doc, schema, $pos, 1) || (0, _table.isPositionNearTableRow)($pos, schema, 'after');
93
+
94
+ default:
95
+ return false;
96
+ }
97
+ };
98
+
99
+ exports.shouldSkipGapCursor = shouldSkipGapCursor;
100
+
77
101
  var arrow = function arrow(dir, endOfTextblock) {
78
102
  return function (state, dispatch, view) {
79
103
  var doc = state.doc,
80
- schema = state.schema,
81
104
  selection = state.selection,
82
105
  tr = state.tr;
83
106
  var $pos = (0, _direction.isBackward)(dir) ? selection.$from : selection.$to;
@@ -90,7 +113,7 @@ var arrow = function arrow(dir, endOfTextblock) {
90
113
  } // UP/DOWN jumps to the nearest texblock skipping gapcursor whenever possible
91
114
 
92
115
 
93
- if (dir === _direction.Direction.UP && !(0, _position.atTheBeginningOfDoc)(state) && (0, _utils2.isTextBlockNearPos)(doc, schema, $pos, -1) || dir === _direction.Direction.DOWN && ((0, _position.atTheEndOfDoc)(state) || (0, _utils2.isTextBlockNearPos)(doc, schema, $pos, 1))) {
116
+ if (shouldSkipGapCursor(dir, state, $pos)) {
94
117
  return false;
95
118
  } // otherwise resolve previous/next position
96
119