@atlaskit/editor-core 181.0.1 → 182.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/codemods/140.0.0-rc-kraken-fix-type-errors.ts +0 -2
  3. package/codemods/__tests__/next-remove-allow-more-text-colors-prop.ts +0 -17
  4. package/codemods/migrates/next-remove-allow-more-text-colors-prop.ts +0 -4
  5. package/dist/cjs/create-editor/sort-by-order.js +12 -0
  6. package/dist/cjs/editor-next/editor-migration-component.js +4 -1
  7. package/dist/cjs/editor-next/utils/deprecationWarnings.js +0 -5
  8. package/dist/cjs/labs/next/full-page.js +2 -1
  9. package/dist/cjs/labs/next/presets/default.js +2 -1
  10. package/dist/cjs/labs/next/presets/universal.js +7 -1
  11. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/index.js +2 -1
  12. package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/styles.js +4 -7
  13. package/dist/cjs/plugins/analytics/plugin.js +6 -6
  14. package/dist/cjs/plugins/avatar-group/index.js +5 -2
  15. package/dist/cjs/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +4 -2
  16. package/dist/cjs/plugins/base/index.js +4 -2
  17. package/dist/cjs/plugins/base/pm-plugins/disable-spell-checking.js +1 -3
  18. package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -6
  19. package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/index.js +2 -8
  20. package/dist/cjs/plugins/border/index.js +20 -0
  21. package/dist/cjs/plugins/card/index.js +4 -2
  22. package/dist/cjs/plugins/card/toolbar.js +12 -15
  23. package/dist/cjs/plugins/card/ui/EditLinkToolbar.js +7 -3
  24. package/dist/cjs/plugins/code-block/toolbar.js +1 -1
  25. package/dist/cjs/plugins/collab-edit/analytics.js +2 -3
  26. package/dist/cjs/plugins/collab-edit/events/handlers.js +2 -2
  27. package/dist/cjs/plugins/collab-edit/events/initialize.js +3 -2
  28. package/dist/cjs/plugins/collab-edit/index.js +5 -3
  29. package/dist/cjs/plugins/collab-edit/plugin.js +4 -3
  30. package/dist/cjs/plugins/collab-edit/ui/avatars-with-plugin-state.js +5 -3
  31. package/dist/cjs/plugins/collab-edit/ui/avatars.js +2 -3
  32. package/dist/cjs/plugins/date/index.js +90 -64
  33. package/dist/cjs/plugins/editor-disabled/index.js +8 -0
  34. package/dist/cjs/plugins/expand/index.js +4 -1
  35. package/dist/cjs/plugins/expand/nodeviews/index.js +6 -7
  36. package/dist/cjs/plugins/expand/pm-plugins/main.js +5 -2
  37. package/dist/cjs/plugins/extension/extension-api.js +27 -14
  38. package/dist/cjs/plugins/extension/pm-plugins/main.js +117 -177
  39. package/dist/cjs/plugins/extension/pm-plugins/utils.js +80 -0
  40. package/dist/cjs/plugins/feature-flags-context/get-enabled-feature-flag-keys.js +7 -11
  41. package/dist/cjs/plugins/find-replace/FindReplaceToolbarButtonWithState.js +3 -4
  42. package/dist/cjs/plugins/find-replace/index.js +5 -2
  43. package/dist/cjs/plugins/floating-toolbar/index.js +15 -7
  44. package/dist/cjs/plugins/floating-toolbar/ui/CheckboxModal.js +2 -1
  45. package/dist/cjs/plugins/floating-toolbar/ui/EmojiPickerButton.js +13 -3
  46. package/dist/cjs/plugins/floating-toolbar/ui/SimpleModal.js +2 -1
  47. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +6 -5
  48. package/dist/cjs/plugins/hyperlink/Toolbar.js +9 -12
  49. package/dist/cjs/plugins/hyperlink/index.js +6 -2
  50. package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +3 -4
  51. package/dist/cjs/plugins/index.js +7 -0
  52. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +2 -1
  53. package/dist/cjs/plugins/list/actions/outdent-list-items-selected.js +5 -5
  54. package/dist/cjs/plugins/list/commands/index.js +31 -27
  55. package/dist/cjs/plugins/list/commands/outdent-list.js +2 -3
  56. package/dist/cjs/plugins/list/index.js +4 -3
  57. package/dist/cjs/plugins/list/pm-plugins/input-rules/create-list-input-rule.js +3 -1
  58. package/dist/cjs/plugins/list/pm-plugins/input-rules/index.js +2 -1
  59. package/dist/cjs/plugins/list/pm-plugins/input-rules/wrapping-join-rule.js +58 -0
  60. package/dist/cjs/plugins/list/pm-plugins/keymap.js +4 -4
  61. package/dist/cjs/plugins/list/pm-plugins/main.js +23 -21
  62. package/dist/cjs/plugins/media/nodeviews/mediaNodeView/media.js +6 -1
  63. package/dist/cjs/plugins/media/nodeviews/styles.js +13 -1
  64. package/dist/cjs/plugins/media/toolbar/commands.js +105 -2
  65. package/dist/cjs/plugins/media/toolbar/imageBorder.js +20 -0
  66. package/dist/cjs/plugins/media/toolbar/index.js +33 -4
  67. package/dist/cjs/plugins/media/ui/ImageBorder/index.js +219 -0
  68. package/dist/cjs/plugins/media/ui/ImageBorder/messages.js +50 -0
  69. package/dist/cjs/plugins/media/ui/ImageBorder/styles.js +54 -0
  70. package/dist/cjs/plugins/media/utils/current-media-node.js +28 -5
  71. package/dist/cjs/plugins/paste/util/index.js +2 -0
  72. package/dist/cjs/plugins/rank.js +1 -1
  73. package/dist/cjs/plugins/rule/pm-plugins/input-rule.js +5 -0
  74. package/dist/cjs/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +2 -1
  75. package/dist/cjs/plugins/toolbar-lists-indentation/index.js +3 -1
  76. package/dist/cjs/plugins/toolbar-lists-indentation/ui/Toolbar.js +2 -1
  77. package/dist/cjs/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +2 -1
  78. package/dist/cjs/plugins/toolbar-lists-indentation/ui/index.js +6 -3
  79. package/dist/cjs/plugins/toolbar-lists-indentation/ui/onItemActivated.js +3 -2
  80. package/dist/cjs/test-utils.js +3 -1
  81. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +4 -2
  82. package/dist/cjs/ui/styles.js +1 -1
  83. package/dist/cjs/utils/input-rules.js +0 -17
  84. package/dist/cjs/utils/insert.js +53 -7
  85. package/dist/cjs/version-wrapper.js +1 -1
  86. package/dist/cjs/version.json +1 -1
  87. package/dist/es2019/create-editor/sort-by-order.js +11 -0
  88. package/dist/es2019/editor-next/editor-migration-component.js +4 -1
  89. package/dist/es2019/editor-next/utils/deprecationWarnings.js +0 -5
  90. package/dist/es2019/labs/next/full-page.js +2 -1
  91. package/dist/es2019/labs/next/presets/default.js +2 -1
  92. package/dist/es2019/labs/next/presets/universal.js +8 -2
  93. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/index.js +3 -2
  94. package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/styles.js +0 -8
  95. package/dist/es2019/plugins/analytics/plugin.js +45 -43
  96. package/dist/es2019/plugins/avatar-group/index.js +26 -21
  97. package/dist/es2019/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +4 -2
  98. package/dist/es2019/plugins/base/index.js +101 -97
  99. package/dist/es2019/plugins/base/pm-plugins/disable-spell-checking.js +1 -3
  100. package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -6
  101. package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/index.js +2 -7
  102. package/dist/es2019/plugins/border/index.js +11 -0
  103. package/dist/es2019/plugins/card/index.js +4 -2
  104. package/dist/es2019/plugins/card/toolbar.js +10 -11
  105. package/dist/es2019/plugins/card/ui/EditLinkToolbar.js +7 -3
  106. package/dist/es2019/plugins/code-block/toolbar.js +2 -2
  107. package/dist/es2019/plugins/collab-edit/analytics.js +2 -3
  108. package/dist/es2019/plugins/collab-edit/events/handlers.js +2 -2
  109. package/dist/es2019/plugins/collab-edit/events/initialize.js +3 -2
  110. package/dist/es2019/plugins/collab-edit/index.js +5 -3
  111. package/dist/es2019/plugins/collab-edit/plugin.js +4 -3
  112. package/dist/es2019/plugins/collab-edit/ui/avatars-with-plugin-state.js +5 -3
  113. package/dist/es2019/plugins/collab-edit/ui/avatars.js +2 -3
  114. package/dist/es2019/plugins/date/index.js +92 -64
  115. package/dist/es2019/plugins/editor-disabled/index.js +8 -0
  116. package/dist/es2019/plugins/expand/index.js +57 -53
  117. package/dist/es2019/plugins/expand/nodeviews/index.js +6 -9
  118. package/dist/es2019/plugins/expand/pm-plugins/main.js +5 -3
  119. package/dist/es2019/plugins/extension/extension-api.js +31 -13
  120. package/dist/es2019/plugins/extension/pm-plugins/main.js +77 -96
  121. package/dist/es2019/plugins/extension/pm-plugins/utils.js +30 -0
  122. package/dist/es2019/plugins/feature-flags-context/get-enabled-feature-flag-keys.js +1 -8
  123. package/dist/es2019/plugins/find-replace/FindReplaceToolbarButtonWithState.js +3 -3
  124. package/dist/es2019/plugins/find-replace/index.js +5 -2
  125. package/dist/es2019/plugins/floating-toolbar/index.js +159 -149
  126. package/dist/es2019/plugins/floating-toolbar/ui/CheckboxModal.js +4 -1
  127. package/dist/es2019/plugins/floating-toolbar/ui/EmojiPickerButton.js +13 -3
  128. package/dist/es2019/plugins/floating-toolbar/ui/SimpleModal.js +4 -1
  129. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +6 -5
  130. package/dist/es2019/plugins/hyperlink/Toolbar.js +7 -9
  131. package/dist/es2019/plugins/hyperlink/index.js +66 -62
  132. package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +3 -3
  133. package/dist/es2019/plugins/index.js +2 -1
  134. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +2 -1
  135. package/dist/es2019/plugins/list/actions/outdent-list-items-selected.js +5 -5
  136. package/dist/es2019/plugins/list/commands/index.js +4 -4
  137. package/dist/es2019/plugins/list/commands/outdent-list.js +2 -4
  138. package/dist/es2019/plugins/list/index.js +80 -77
  139. package/dist/es2019/plugins/list/pm-plugins/input-rules/create-list-input-rule.js +3 -1
  140. package/dist/es2019/plugins/list/pm-plugins/input-rules/index.js +2 -1
  141. package/dist/es2019/plugins/list/pm-plugins/input-rules/wrapping-join-rule.js +52 -0
  142. package/dist/es2019/plugins/list/pm-plugins/keymap.js +4 -4
  143. package/dist/es2019/plugins/list/pm-plugins/main.js +46 -46
  144. package/dist/es2019/plugins/media/nodeviews/mediaNodeView/media.js +4 -1
  145. package/dist/es2019/plugins/media/nodeviews/styles.js +12 -1
  146. package/dist/es2019/plugins/media/toolbar/commands.js +93 -0
  147. package/dist/es2019/plugins/media/toolbar/imageBorder.js +15 -0
  148. package/dist/es2019/plugins/media/toolbar/index.js +36 -5
  149. package/dist/es2019/plugins/media/ui/ImageBorder/index.js +206 -0
  150. package/dist/es2019/plugins/media/ui/ImageBorder/messages.js +43 -0
  151. package/dist/es2019/plugins/media/ui/ImageBorder/styles.js +124 -0
  152. package/dist/es2019/plugins/media/utils/current-media-node.js +22 -3
  153. package/dist/es2019/plugins/paste/util/index.js +2 -0
  154. package/dist/es2019/plugins/rank.js +1 -1
  155. package/dist/es2019/plugins/rule/pm-plugins/input-rule.js +7 -0
  156. package/dist/es2019/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +2 -1
  157. package/dist/es2019/plugins/toolbar-lists-indentation/index.js +59 -55
  158. package/dist/es2019/plugins/toolbar-lists-indentation/ui/Toolbar.js +2 -1
  159. package/dist/es2019/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +2 -1
  160. package/dist/es2019/plugins/toolbar-lists-indentation/ui/index.js +6 -3
  161. package/dist/es2019/plugins/toolbar-lists-indentation/ui/onItemActivated.js +3 -2
  162. package/dist/es2019/test-utils.js +3 -1
  163. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +4 -2
  164. package/dist/es2019/ui/styles.js +1 -0
  165. package/dist/es2019/utils/input-rules.js +0 -17
  166. package/dist/es2019/utils/insert.js +61 -10
  167. package/dist/es2019/version-wrapper.js +1 -1
  168. package/dist/es2019/version.json +1 -1
  169. package/dist/esm/create-editor/sort-by-order.js +11 -0
  170. package/dist/esm/editor-next/editor-migration-component.js +3 -0
  171. package/dist/esm/editor-next/utils/deprecationWarnings.js +0 -5
  172. package/dist/esm/labs/next/full-page.js +2 -1
  173. package/dist/esm/labs/next/presets/default.js +2 -1
  174. package/dist/esm/labs/next/presets/universal.js +8 -2
  175. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/index.js +3 -2
  176. package/dist/esm/plugins/alignment/ui/ToolbarAlignment/styles.js +3 -5
  177. package/dist/esm/plugins/analytics/plugin.js +6 -6
  178. package/dist/esm/plugins/avatar-group/index.js +5 -2
  179. package/dist/esm/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +4 -2
  180. package/dist/esm/plugins/base/index.js +4 -2
  181. package/dist/esm/plugins/base/pm-plugins/disable-spell-checking.js +1 -3
  182. package/dist/esm/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +1 -6
  183. package/dist/esm/plugins/block-type/ui/ToolbarBlockType/index.js +2 -8
  184. package/dist/esm/plugins/border/index.js +13 -0
  185. package/dist/esm/plugins/card/index.js +4 -2
  186. package/dist/esm/plugins/card/toolbar.js +12 -15
  187. package/dist/esm/plugins/card/ui/EditLinkToolbar.js +7 -3
  188. package/dist/esm/plugins/code-block/toolbar.js +2 -2
  189. package/dist/esm/plugins/collab-edit/analytics.js +2 -3
  190. package/dist/esm/plugins/collab-edit/events/handlers.js +2 -2
  191. package/dist/esm/plugins/collab-edit/events/initialize.js +3 -2
  192. package/dist/esm/plugins/collab-edit/index.js +5 -3
  193. package/dist/esm/plugins/collab-edit/plugin.js +4 -3
  194. package/dist/esm/plugins/collab-edit/ui/avatars-with-plugin-state.js +5 -3
  195. package/dist/esm/plugins/collab-edit/ui/avatars.js +2 -3
  196. package/dist/esm/plugins/date/index.js +90 -64
  197. package/dist/esm/plugins/editor-disabled/index.js +8 -0
  198. package/dist/esm/plugins/expand/index.js +4 -1
  199. package/dist/esm/plugins/expand/nodeviews/index.js +6 -7
  200. package/dist/esm/plugins/expand/pm-plugins/main.js +5 -2
  201. package/dist/esm/plugins/extension/extension-api.js +24 -12
  202. package/dist/esm/plugins/extension/pm-plugins/main.js +113 -173
  203. package/dist/esm/plugins/extension/pm-plugins/utils.js +72 -0
  204. package/dist/esm/plugins/feature-flags-context/get-enabled-feature-flag-keys.js +1 -10
  205. package/dist/esm/plugins/find-replace/FindReplaceToolbarButtonWithState.js +3 -4
  206. package/dist/esm/plugins/find-replace/index.js +5 -2
  207. package/dist/esm/plugins/floating-toolbar/index.js +15 -7
  208. package/dist/esm/plugins/floating-toolbar/ui/CheckboxModal.js +2 -1
  209. package/dist/esm/plugins/floating-toolbar/ui/EmojiPickerButton.js +13 -3
  210. package/dist/esm/plugins/floating-toolbar/ui/SimpleModal.js +2 -1
  211. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +6 -5
  212. package/dist/esm/plugins/hyperlink/Toolbar.js +9 -13
  213. package/dist/esm/plugins/hyperlink/index.js +6 -2
  214. package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/index.js +3 -4
  215. package/dist/esm/plugins/index.js +2 -1
  216. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +2 -1
  217. package/dist/esm/plugins/list/actions/outdent-list-items-selected.js +5 -5
  218. package/dist/esm/plugins/list/commands/index.js +31 -27
  219. package/dist/esm/plugins/list/commands/outdent-list.js +2 -3
  220. package/dist/esm/plugins/list/index.js +4 -3
  221. package/dist/esm/plugins/list/pm-plugins/input-rules/create-list-input-rule.js +3 -1
  222. package/dist/esm/plugins/list/pm-plugins/input-rules/index.js +2 -1
  223. package/dist/esm/plugins/list/pm-plugins/input-rules/wrapping-join-rule.js +51 -0
  224. package/dist/esm/plugins/list/pm-plugins/keymap.js +4 -4
  225. package/dist/esm/plugins/list/pm-plugins/main.js +23 -21
  226. package/dist/esm/plugins/media/nodeviews/mediaNodeView/media.js +6 -1
  227. package/dist/esm/plugins/media/nodeviews/styles.js +13 -1
  228. package/dist/esm/plugins/media/toolbar/commands.js +99 -0
  229. package/dist/esm/plugins/media/toolbar/imageBorder.js +14 -0
  230. package/dist/esm/plugins/media/toolbar/index.js +34 -5
  231. package/dist/esm/plugins/media/ui/ImageBorder/index.js +211 -0
  232. package/dist/esm/plugins/media/ui/ImageBorder/messages.js +43 -0
  233. package/dist/esm/plugins/media/ui/ImageBorder/styles.js +37 -0
  234. package/dist/esm/plugins/media/utils/current-media-node.js +24 -3
  235. package/dist/esm/plugins/paste/util/index.js +2 -0
  236. package/dist/esm/plugins/rank.js +1 -1
  237. package/dist/esm/plugins/rule/pm-plugins/input-rule.js +5 -0
  238. package/dist/esm/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +2 -1
  239. package/dist/esm/plugins/toolbar-lists-indentation/index.js +3 -1
  240. package/dist/esm/plugins/toolbar-lists-indentation/ui/Toolbar.js +2 -1
  241. package/dist/esm/plugins/toolbar-lists-indentation/ui/ToolbarDropdown.js +2 -1
  242. package/dist/esm/plugins/toolbar-lists-indentation/ui/index.js +6 -3
  243. package/dist/esm/plugins/toolbar-lists-indentation/ui/onItemActivated.js +3 -2
  244. package/dist/esm/test-utils.js +3 -1
  245. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +4 -2
  246. package/dist/esm/ui/styles.js +1 -1
  247. package/dist/esm/utils/input-rules.js +0 -17
  248. package/dist/esm/utils/insert.js +56 -10
  249. package/dist/esm/version-wrapper.js +1 -1
  250. package/dist/esm/version.json +1 -1
  251. package/dist/types/create-editor/sort-by-order.d.ts +9 -0
  252. package/dist/types/editor-next/editor-migration-component.d.ts +1 -0
  253. package/dist/types/labs/next/presets/cxhtml.d.ts +36 -2
  254. package/dist/types/labs/next/presets/default.d.ts +72 -4
  255. package/dist/types/labs/next/presets/mobile.d.ts +36 -2
  256. package/dist/types/plugins/alignment/ui/ToolbarAlignment/styles.d.ts +0 -1
  257. package/dist/types/plugins/analytics/plugin.d.ts +2 -0
  258. package/dist/types/plugins/avatar-group/index.d.ts +2 -0
  259. package/dist/types/plugins/avatar-group/ui/AvatarGroupPluginWrapper.d.ts +2 -0
  260. package/dist/types/plugins/base/index.d.ts +2 -0
  261. package/dist/types/plugins/base/pm-plugins/disable-spell-checking.d.ts +2 -1
  262. package/dist/types/plugins/border/index.d.ts +3 -0
  263. package/dist/types/plugins/card/index.d.ts +2 -0
  264. package/dist/types/plugins/card/toolbar.d.ts +2 -1
  265. package/dist/types/plugins/card/ui/EditLinkToolbar.d.ts +5 -2
  266. package/dist/types/plugins/collab-edit/analytics.d.ts +2 -1
  267. package/dist/types/plugins/collab-edit/events/handlers.d.ts +2 -1
  268. package/dist/types/plugins/collab-edit/events/initialize.d.ts +3 -1
  269. package/dist/types/plugins/collab-edit/index.d.ts +2 -0
  270. package/dist/types/plugins/collab-edit/plugin.d.ts +2 -1
  271. package/dist/types/plugins/collab-edit/ui/avatars-with-plugin-state.d.ts +4 -0
  272. package/dist/types/plugins/collab-edit/ui/avatars.d.ts +2 -0
  273. package/dist/types/plugins/date/index.d.ts +9 -1
  274. package/dist/types/plugins/editor-disabled/index.d.ts +3 -1
  275. package/dist/types/plugins/expand/index.d.ts +2 -0
  276. package/dist/types/plugins/expand/nodeviews/index.d.ts +5 -2
  277. package/dist/types/plugins/expand/pm-plugins/main.d.ts +2 -1
  278. package/dist/types/plugins/extension/pm-plugins/main.d.ts +8 -2
  279. package/dist/types/plugins/extension/pm-plugins/utils.d.ts +3 -0
  280. package/dist/types/plugins/feature-flags-context/get-enabled-feature-flag-keys.d.ts +1 -7
  281. package/dist/types/plugins/find-replace/FindReplaceToolbarButtonWithState.d.ts +2 -0
  282. package/dist/types/plugins/find-replace/index.d.ts +2 -0
  283. package/dist/types/plugins/floating-toolbar/index.d.ts +4 -1
  284. package/dist/types/plugins/floating-toolbar/ui/Toolbar.d.ts +2 -0
  285. package/dist/types/plugins/hyperlink/Toolbar.d.ts +2 -1
  286. package/dist/types/plugins/hyperlink/index.d.ts +2 -0
  287. package/dist/types/plugins/hyperlink/ui/HyperlinkAddToolbar/index.d.ts +2 -0
  288. package/dist/types/plugins/index.d.ts +1 -0
  289. package/dist/types/plugins/list/actions/outdent-list-items-selected.d.ts +2 -1
  290. package/dist/types/plugins/list/commands/index.d.ts +3 -2
  291. package/dist/types/plugins/list/commands/outdent-list.d.ts +2 -1
  292. package/dist/types/plugins/list/index.d.ts +2 -0
  293. package/dist/types/plugins/list/pm-plugins/input-rules/create-list-input-rule.d.ts +1 -1
  294. package/dist/types/plugins/list/pm-plugins/input-rules/wrapping-join-rule.d.ts +13 -0
  295. package/dist/types/plugins/list/pm-plugins/keymap.d.ts +2 -1
  296. package/dist/types/plugins/list/pm-plugins/main.d.ts +3 -2
  297. package/dist/types/plugins/media/nodeviews/styles.d.ts +3 -1
  298. package/dist/types/plugins/media/toolbar/commands.d.ts +5 -0
  299. package/dist/types/plugins/media/toolbar/imageBorder.d.ts +2 -0
  300. package/dist/types/plugins/media/types.d.ts +3 -0
  301. package/dist/types/plugins/media/ui/ImageBorder/index.d.ts +13 -0
  302. package/dist/types/plugins/media/ui/ImageBorder/messages.d.ts +42 -0
  303. package/dist/types/plugins/media/ui/ImageBorder/styles.d.ts +15 -0
  304. package/dist/types/plugins/media/utils/current-media-node.d.ts +6 -0
  305. package/dist/types/plugins/text-color/pm-plugins/main.d.ts +0 -2
  306. package/dist/types/plugins/toolbar-lists-indentation/index.d.ts +2 -0
  307. package/dist/types/plugins/toolbar-lists-indentation/types.d.ts +2 -0
  308. package/dist/types/plugins/toolbar-lists-indentation/ui/index.d.ts +2 -0
  309. package/dist/types/plugins/toolbar-lists-indentation/ui/onItemActivated.d.ts +3 -1
  310. package/dist/types/test-utils.d.ts +4 -2
  311. package/dist/types/types/editor-props.d.ts +5 -0
  312. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +5 -5
  313. package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
  314. package/dist/types/ui/ContentStyles/index.d.ts +2 -2
  315. package/package.json +12 -11
  316. package/report.api.md +12 -4
  317. package/codemods/__tests__/rename-experimental-text-color-prop.ts +0 -204
  318. package/codemods/migrates/rename-experimental-text-color-prop.ts +0 -6
@@ -3,4 +3,15 @@ export function sortByOrder(item) {
3
3
  return function (a, b) {
4
4
  return Ranks[item].indexOf(a.name) - Ranks[item].indexOf(b.name);
5
5
  };
6
+ }
7
+
8
+ // while functionally the same, in order to avoid potentially rewriting the ~10
9
+ // existing implementations of the above function I decided creating a separate
10
+ // function avoided that whole mess. If someone can think of a better way to implement
11
+ // the above and below into a single function please do so
12
+
13
+ export function sortByOrderWithTypeName(item) {
14
+ return function (a, b) {
15
+ return Ranks[item].indexOf(a.type.name) - Ranks[item].indexOf(b.type.name);
16
+ };
6
17
  }
@@ -3,6 +3,7 @@ import _createClass from "@babel/runtime/helpers/createClass";
3
3
  import _inherits from "@babel/runtime/helpers/inherits";
4
4
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
5
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
7
  import _extends from "@babel/runtime/helpers/extends";
7
8
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
8
9
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
@@ -10,6 +11,7 @@ import React from 'react';
10
11
  import { createFeatureFlagsFromProps } from '../create-editor/feature-flags-from-props';
11
12
  import Editor from '../editor';
12
13
  import EditorNext from './index';
14
+ import { defaultProps } from './utils/editorPropTypes';
13
15
  import useUniversalPreset from '../labs/next/presets/useUniversalPreset';
14
16
  var EditorNextWrapper = function EditorNextWrapper(_ref) {
15
17
  var props = _ref.props;
@@ -41,4 +43,5 @@ var EditorMigrationComponent = /*#__PURE__*/function (_React$Component) {
41
43
  }]);
42
44
  return EditorMigrationComponent;
43
45
  }(React.Component);
46
+ _defineProperty(EditorMigrationComponent, "defaultProps", defaultProps);
44
47
  export { EditorMigrationComponent as default };
@@ -1,6 +1,5 @@
1
1
  import { nextMajorVersion } from '../../version-wrapper';
2
2
  export default function deprecationWarnings(props) {
3
- var _props$allowTextColor;
4
3
  if (process.env.NODE_ENV === 'production') {
5
4
  return;
6
5
  }
@@ -32,8 +31,4 @@ export default function deprecationWarnings(props) {
32
31
  // eslint-disable-next-line no-console
33
32
  console.warn("Advanced table options are deprecated (except isHeaderRowRequired) to continue using advanced table features use - <Editor allowTables={{ advanced: true }} /> [Will be changed in editor-core@".concat(nextVersion, "]"));
34
33
  }
35
- if (props.hasOwnProperty('allowTextColor') && typeof props.allowTextColor !== 'boolean' && (props === null || props === void 0 ? void 0 : (_props$allowTextColor = props.allowTextColor) === null || _props$allowTextColor === void 0 ? void 0 : _props$allowTextColor.allowMoreTextColors) !== undefined) {
36
- // eslint-disable-next-line no-console
37
- console.warn("\"allowMoreTextColors\" field of \"allowTextColor\" property is deprecated. It will be removedin editor-core@".concat(nextVersion, ". The color palette now shows more colors by default."));
38
- }
39
34
  }
@@ -95,7 +95,8 @@ function FullPage(props) {
95
95
  editorView: config.editorView,
96
96
  eventDispatcher: config.eventDispatcher,
97
97
  inviteToEditHandler: collabEdit === null || collabEdit === void 0 ? void 0 : collabEdit.inviteToEditHandler,
98
- isInviteToEditButtonSelected: collabEdit === null || collabEdit === void 0 ? void 0 : collabEdit.isInviteToEditButtonSelected
98
+ isInviteToEditButtonSelected: collabEdit === null || collabEdit === void 0 ? void 0 : collabEdit.isInviteToEditButtonSelected,
99
+ featureFlags: {}
99
100
  }), primaryToolbarComponents)), jsx("div", {
100
101
  css: contentArea
101
102
  }, jsx(ContentStyles, {
@@ -13,6 +13,7 @@ import typeAheadPlugin from '../../../plugins/type-ahead';
13
13
  import submitEditorPlugin from '../../../plugins/submit-editor';
14
14
  import fakeTextCursorPlugin from '../../../plugins/fake-text-cursor';
15
15
  import featureFlagsContextPlugin from '../../../plugins/feature-flags-context';
16
+ import featureFlagsPlugin from '@atlaskit/editor-plugin-feature-flags';
16
17
  import floatingToolbarPlugin from '../../../plugins/floating-toolbar';
17
18
  import clipboardPlugin from '../../../plugins/clipboard';
18
19
  import placeholderPlugin from '../../../plugins/placeholder';
@@ -29,7 +30,7 @@ import { EditorPresetBuilder } from '@atlaskit/editor-common/preset';
29
30
  * their placement in the editor toolbar
30
31
  */
31
32
  export function createDefaultPreset(options) {
32
- var preset = new EditorPresetBuilder().add([pastePlugin, options.paste]).add(clipboardPlugin).add([basePlugin, options.base]).maybeAdd(undoRedoPlugin, function (p, builder) {
33
+ var preset = new EditorPresetBuilder().add([featureFlagsPlugin, options.featureFlags || {}]).add([pastePlugin, options.paste]).add(clipboardPlugin).add([basePlugin, options.base]).maybeAdd(undoRedoPlugin, function (p, builder) {
33
34
  var _options$featureFlags;
34
35
  // The undo redo plugin needs to be add before the blockTypePlugin
35
36
  if ((_options$featureFlags = options.featureFlags) !== null && _options$featureFlags !== void 0 && _options$featureFlags.undoRedoButtons) {
@@ -2,7 +2,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import _typeof from "@babel/runtime/helpers/typeof";
3
3
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
- import { breakoutPlugin, collabEditPlugin, dataConsumerMarkPlugin, datePlugin, emojiPlugin, extensionPlugin, fragmentMarkPlugin, helpDialogPlugin, imageUploadPlugin, insertBlockPlugin, jiraIssuePlugin, layoutPlugin, listPlugin, toolbarListsIndentationPlugin, macroPlugin, maxContentSizePlugin, mediaPlugin, mentionsPlugin, panelPlugin, placeholderTextPlugin, rulePlugin, saveOnEnterPlugin, tasksAndDecisionsPlugin, textColorPlugin, cardPlugin, gridPlugin, statusPlugin, alignmentPlugin, indentationPlugin, analyticsPlugin, customAutoformatPlugin, feedbackDialogPlugin, historyPlugin, expandPlugin, isExpandInsertionEnabled, scrollIntoViewPlugin, mobileDimensionsPlugin, findReplacePlugin, contextPanelPlugin, mobileSelectionPlugin, annotationPlugin, captionPlugin, avatarGroupPlugin, viewUpdateSubscriptionPlugin, beforePrimaryToolbarPlugin, codeBidiWarningPlugin, copyButtonPlugin } from '../../../plugins';
5
+ import { breakoutPlugin, collabEditPlugin, dataConsumerMarkPlugin, datePlugin, emojiPlugin, extensionPlugin, fragmentMarkPlugin, helpDialogPlugin, imageUploadPlugin, insertBlockPlugin, jiraIssuePlugin, layoutPlugin, listPlugin, toolbarListsIndentationPlugin, macroPlugin, maxContentSizePlugin, mediaPlugin, mentionsPlugin, panelPlugin, placeholderTextPlugin, rulePlugin, saveOnEnterPlugin, tasksAndDecisionsPlugin, textColorPlugin, cardPlugin, gridPlugin, statusPlugin, alignmentPlugin, indentationPlugin, analyticsPlugin, customAutoformatPlugin, feedbackDialogPlugin, historyPlugin, expandPlugin, isExpandInsertionEnabled, scrollIntoViewPlugin, mobileDimensionsPlugin, findReplacePlugin, contextPanelPlugin, mobileSelectionPlugin, annotationPlugin, captionPlugin, avatarGroupPlugin, viewUpdateSubscriptionPlugin, beforePrimaryToolbarPlugin, codeBidiWarningPlugin, copyButtonPlugin, borderPlugin } from '../../../plugins';
6
6
  import { tablesPlugin } from '@atlaskit/editor-plugin-table';
7
7
  import { isFullPage as fullPageCheck } from '../../../utils/is-full-page';
8
8
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
@@ -111,7 +111,8 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
111
111
  uploadErrorHandler: props.uploadErrorHandler,
112
112
  waitForMediaUpload: props.waitForMediaUpload,
113
113
  isCopyPasteEnabled: !isMobile,
114
- alignLeftOnInsert: alignLeftOnInsert
114
+ alignLeftOnInsert: alignLeftOnInsert,
115
+ getEditorFeatureFlags: getEditorFeatureFlags
115
116
  })]);
116
117
  }
117
118
  return builder;
@@ -366,6 +367,11 @@ export default function createUniversalPreset(appearance, props, featureFlags, p
366
367
  }]);
367
368
  }
368
369
  return builder;
370
+ }).maybeAdd(borderPlugin, function (plugin, builder) {
371
+ if (props.UNSAFE_allowBorderMark) {
372
+ return builder.add(plugin);
373
+ }
374
+ return builder;
369
375
  }).maybeAdd(fragmentMarkPlugin, function (plugin, builder) {
370
376
  if (props.allowFragmentMark) {
371
377
  return builder.add(plugin);
@@ -17,7 +17,8 @@ import ExpandIcon from '@atlaskit/icon/glyph/chevron-down';
17
17
  import ToolbarButton from '../../../../ui/ToolbarButton';
18
18
  import Dropdown from '../../../../ui/Dropdown';
19
19
  import Alignment from '../../../../ui/Alignment';
20
- import { expandIconWrapper, separator, triggerWrapper, wrapper } from './styles';
20
+ import { expandIconWrapper, triggerWrapper, wrapper } from './styles';
21
+ import { separatorStyles } from '../../../../ui/styles';
21
22
  import { IconMap } from './icon-map';
22
23
  import { messages } from './messages';
23
24
  export var AlignmentToolbar = /*#__PURE__*/function (_React$Component) {
@@ -151,7 +152,7 @@ export var AlignmentToolbar = /*#__PURE__*/function (_React$Component) {
151
152
  },
152
153
  selectedAlignment: pluginState.align
153
154
  })), jsx("span", {
154
- css: separator
155
+ css: separatorStyles
155
156
  }));
156
157
  }
157
158
  }, {
@@ -1,8 +1,6 @@
1
1
  import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
2
+ var _templateObject, _templateObject2, _templateObject3;
3
3
  import { css } from '@emotion/react';
4
- import { N30 } from '@atlaskit/theme/colors';
5
4
  export var triggerWrapper = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n"])));
6
- export var separator = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n background: ", ";\n width: 1px;\n height: 24px;\n display: inline-block;\n margin: 0 8px;\n"])), "var(--ds-border, ".concat(N30, ")"));
7
- export var wrapper = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n div {\n display: flex;\n }\n"])));
8
- export var expandIconWrapper = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n margin-left: -8px;\n"])));
5
+ export var wrapper = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n div {\n display: flex;\n }\n"])));
6
+ export var expandIconWrapper = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-left: -8px;\n"])));
@@ -10,10 +10,9 @@ import { isPerformanceAPIAvailable, measureRender } from '@atlaskit/editor-commo
10
10
  import { ACTION, EVENT_TYPE } from './types';
11
11
  import { analyticsPluginKey } from './plugin-key';
12
12
  import { fireAnalyticsEvent, getAnalyticsEventsFromTransaction } from '@atlaskit/editor-common/analytics';
13
- import { getFeatureFlags } from '../feature-flags-context';
14
13
  import { AnalyticsStep } from '@atlaskit/adf-schema/steps';
15
14
  import { generateUndoRedoInputSoucePayload } from '../undo-redo/undo-redo-input-source';
16
- function createPlugin(options) {
15
+ function createPlugin(options, featureFlags) {
17
16
  if (!options || !options.createAnalyticsEvent) {
18
17
  return;
19
18
  }
@@ -27,14 +26,13 @@ function createPlugin(options) {
27
26
  });
28
27
  },
29
28
  apply: function apply(tr, pluginState, _, state) {
30
- var _getFeatureFlags;
31
29
  if (pluginState.createAnalyticsEvent !== options.createAnalyticsEvent) {
32
30
  // When the plugin state is reconfigured, the init function isn't called again
33
31
  return _objectSpread(_objectSpread({}, pluginState), {}, {
34
32
  createAnalyticsEvent: options.createAnalyticsEvent
35
33
  });
36
34
  }
37
- if ((_getFeatureFlags = getFeatureFlags(state)) !== null && _getFeatureFlags !== void 0 && _getFeatureFlags.catchAllTracking) {
35
+ if (featureFlags.catchAllTracking) {
38
36
  var analyticsEventWithChannel = getAnalyticsEventsFromTransaction(tr);
39
37
  if (analyticsEventWithChannel.length > 0) {
40
38
  var _iterator = _createForOfIteratorHelper(analyticsEventWithChannel),
@@ -81,14 +79,16 @@ function createPlugin(options) {
81
79
  }
82
80
  });
83
81
  }
84
- var analyticsPlugin = function analyticsPlugin(options) {
82
+ var analyticsPlugin = function analyticsPlugin(options, api) {
83
+ var _api$dependencies$fea;
84
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies$fea = api.dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
85
85
  return {
86
86
  name: 'analytics',
87
87
  pmPlugins: function pmPlugins() {
88
88
  return [{
89
89
  name: 'analyticsPlugin',
90
90
  plugin: function plugin() {
91
- return createPlugin(options);
91
+ return createPlugin(options, featureFlags);
92
92
  }
93
93
  }];
94
94
  },
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
2
  import AvatarGroupPluginWrapper from './ui/AvatarGroupPluginWrapper';
3
- var avatarGroup = function avatarGroup(props) {
3
+ var avatarGroup = function avatarGroup(props, api) {
4
+ var _api$dependencies, _api$dependencies$fea;
5
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$fea = _api$dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
4
6
  return {
5
7
  name: 'avatarGroup',
6
8
  primaryToolbarComponent: function primaryToolbarComponent(_ref) {
@@ -17,7 +19,8 @@ var avatarGroup = function avatarGroup(props) {
17
19
  editorView: editorView,
18
20
  eventDispatcher: eventDispatcher,
19
21
  collabEdit: props.collabEdit,
20
- takeFullWidth: props.takeFullWidth
22
+ takeFullWidth: props.takeFullWidth,
23
+ featureFlags: featureFlags
21
24
  });
22
25
  }
23
26
  };
@@ -10,7 +10,8 @@ import { ACTION, ACTION_SUBJECT, EVENT_TYPE, ACTION_SUBJECT_ID } from '../../ana
10
10
  var toolbarButtonWrapper = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n justify-content: flex-end;\n flex-grow: 0;\n align-items: center;\n & > div {\n margin-right: 0;\n }\n"])));
11
11
  var toolbarButtonWrapperFullWidth = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n ", "\n flex-grow: 1;\n"])), toolbarButtonWrapper);
12
12
  var AvatarGroupPluginWrapper = function AvatarGroupPluginWrapper(props) {
13
- var dispatchAnalyticsEvent = props.dispatchAnalyticsEvent;
13
+ var dispatchAnalyticsEvent = props.dispatchAnalyticsEvent,
14
+ featureFlags = props.featureFlags;
14
15
  var intl = useIntl();
15
16
  useEffect(function () {
16
17
  if (!dispatchAnalyticsEvent) {
@@ -32,7 +33,8 @@ var AvatarGroupPluginWrapper = function AvatarGroupPluginWrapper(props) {
32
33
  eventDispatcher: props.eventDispatcher,
33
34
  inviteToEditComponent: props.collabEdit && props.collabEdit.inviteToEditComponent,
34
35
  inviteToEditHandler: props.collabEdit && props.collabEdit.inviteToEditHandler,
35
- isInviteToEditButtonSelected: props.collabEdit && props.collabEdit.isInviteToEditButtonSelected
36
+ isInviteToEditButtonSelected: props.collabEdit && props.collabEdit.isInviteToEditButtonSelected,
37
+ featureFlags: featureFlags
36
38
  }));
37
39
  };
38
40
  export default AvatarGroupPluginWrapper;
@@ -21,7 +21,9 @@ import frozenEditor from './pm-plugins/frozen-editor';
21
21
  import compositionPlugin from './pm-plugins/composition';
22
22
  // Chrome >= 88
23
23
  export var isChromeWithSelectionBug = browser.chrome && browser.chrome_version >= 88;
24
- var basePlugin = function basePlugin(options) {
24
+ var basePlugin = function basePlugin(options, api) {
25
+ var _api$dependencies, _api$dependencies$fea;
26
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$fea = _api$dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
25
27
  return {
26
28
  name: 'base',
27
29
  pmPlugins: function pmPlugins() {
@@ -126,7 +128,7 @@ var basePlugin = function basePlugin(options) {
126
128
  plugins.push({
127
129
  name: 'disableSpellcheckingPlugin',
128
130
  plugin: function plugin() {
129
- return disableSpellcheckingPlugin();
131
+ return disableSpellcheckingPlugin(featureFlags);
130
132
  }
131
133
  });
132
134
  plugins.push({
@@ -1,6 +1,5 @@
1
1
  import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
2
  import { PluginKey } from 'prosemirror-state';
3
- import { getFeatureFlags } from '../../feature-flags-context';
4
3
  import { browser as browserEnv } from '@atlaskit/editor-common/utils';
5
4
  function getCurrentBrowserAndVersion() {
6
5
  switch (true) {
@@ -27,12 +26,11 @@ function getCurrentBrowserAndVersion() {
27
26
  }
28
27
  return undefined;
29
28
  }
30
- export default (function () {
29
+ export default (function (featureFlags) {
31
30
  return new SafePlugin({
32
31
  key: new PluginKey('disableSpellchecking'),
33
32
  props: {
34
33
  attributes: function attributes(editorState) {
35
- var featureFlags = getFeatureFlags(editorState) || undefined;
36
34
  if (!featureFlags) {
37
35
  return;
38
36
  }
@@ -38,10 +38,5 @@ export var BlockTypeButton = function BlockTypeButton(props) {
38
38
  })))
39
39
  }, !props.isSmall && jsx("span", {
40
40
  css: [buttonContentStyle, props.isReducedSpacing && buttonContentReducedSpacingStyle]
41
- }, jsx(FormattedMessage, props.title || NORMAL_TEXT.title), jsx("div", {
42
- style: {
43
- overflow: 'hidden',
44
- height: 0
45
- }
46
- }, props.children)));
41
+ }, jsx(FormattedMessage, props.title || NORMAL_TEXT.title)));
47
42
  };
@@ -1,4 +1,3 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
1
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
2
  import _createClass from "@babel/runtime/helpers/createClass";
4
3
  import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
@@ -17,7 +16,6 @@ import { injectIntl } from 'react-intl-next';
17
16
  import { akEditorMenuZIndex } from '@atlaskit/editor-shared-styles';
18
17
  import DropdownMenu from '../../../../ui/DropdownMenu';
19
18
  import { separatorStyles, wrapperStyle } from '../../../../ui/styles';
20
- import { NORMAL_TEXT } from '../../types';
21
19
  import { blockTypeMenuItemStyle, keyboardShortcut, keyboardShortcutSelect } from './styled';
22
20
  import { tooltip, findKeymapByDescription } from '../../../../keymaps';
23
21
  import { BlockTypeButton } from './blocktype-button';
@@ -129,10 +127,6 @@ var ToolbarBlockType = /*#__PURE__*/function (_React$PureComponent) {
129
127
  }).map(function (blockType) {
130
128
  return blockType.title;
131
129
  });
132
- var longestDropdownMenuItem = [NORMAL_TEXT].concat(_toConsumableArray(availableBlockTypes)).reduce(function (longest, item) {
133
- var itemTitle = formatMessage(item.title);
134
- return itemTitle.length >= longest.length ? itemTitle : longest;
135
- }, '');
136
130
  if (!this.props.isDisabled && !blockTypesDisabled) {
137
131
  var items = this.createItems();
138
132
  return jsx("span", {
@@ -167,7 +161,7 @@ var ToolbarBlockType = /*#__PURE__*/function (_React$PureComponent) {
167
161
  onKeyDown: this.handleTriggerByKeyboard,
168
162
  formatMessage: formatMessage,
169
163
  "aria-expanded": active
170
- }, longestDropdownMenuItem)), jsx("span", {
164
+ })), jsx("span", {
171
165
  css: separatorStyles
172
166
  }));
173
167
  }
@@ -183,7 +177,7 @@ var ToolbarBlockType = /*#__PURE__*/function (_React$PureComponent) {
183
177
  onKeyDown: this.handleTriggerByKeyboard,
184
178
  formatMessage: formatMessage,
185
179
  "aria-expanded": active
186
- }, longestDropdownMenuItem), jsx("span", {
180
+ }), jsx("span", {
187
181
  css: separatorStyles
188
182
  }));
189
183
  }
@@ -0,0 +1,13 @@
1
+ import { border } from '@atlaskit/adf-schema';
2
+ var borderPlugin = function borderPlugin() {
3
+ return {
4
+ name: 'border',
5
+ marks: function marks() {
6
+ return [{
7
+ name: 'border',
8
+ mark: border
9
+ }];
10
+ }
11
+ };
12
+ };
13
+ export default borderPlugin;
@@ -7,7 +7,9 @@ import { createPlugin } from './pm-plugins/main';
7
7
  import { floatingToolbar } from './toolbar';
8
8
  import { EditorSmartCardEvents } from './ui/EditorSmartCardEvents';
9
9
  import { cardKeymap } from './pm-plugins/keymap';
10
- var cardPlugin = function cardPlugin(options) {
10
+ var cardPlugin = function cardPlugin(options, api) {
11
+ var _api$dependencies, _api$dependencies$fea;
12
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$fea = _api$dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
11
13
  return {
12
14
  name: 'card',
13
15
  nodes: function nodes() {
@@ -55,7 +57,7 @@ var cardPlugin = function cardPlugin(options) {
55
57
  });
56
58
  },
57
59
  pluginsOptions: {
58
- floatingToolbar: floatingToolbar(options, options.platform, options.linkPicker)
60
+ floatingToolbar: floatingToolbar(options, featureFlags, options.platform, options.linkPicker)
59
61
  }
60
62
  };
61
63
  };
@@ -24,7 +24,6 @@ import { messages } from './messages';
24
24
  import buildLayoutButtons from '../../ui/MediaAndEmbedsToolbar';
25
25
  import { buildOpenedSettingsPayload, buildVisitedLinkPayload } from '../../utils/linking-utils';
26
26
  import { FLOATING_TOOLBAR_LINKPICKER_CLASSNAME } from './styles';
27
- import { getFeatureFlags } from '../feature-flags-context';
28
27
  export var removeCard = function removeCard(state, dispatch) {
29
28
  if (!(state.selection instanceof NodeSelection)) {
30
29
  return false;
@@ -72,9 +71,8 @@ export var openLinkSettings = function openLinkSettings(state, dispatch) {
72
71
  }
73
72
  return true;
74
73
  };
75
- export var floatingToolbar = function floatingToolbar(cardOptions, platform, linkPickerOptions) {
74
+ export var floatingToolbar = function floatingToolbar(cardOptions, featureFlags, platform, linkPickerOptions) {
76
75
  return function (state, intl, providerFactory) {
77
- var _linkPickerOptions$pl;
78
76
  var _state$schema$nodes = state.schema.nodes,
79
77
  inlineCard = _state$schema$nodes.inlineCard,
80
78
  blockCard = _state$schema$nodes.blockCard,
@@ -101,12 +99,11 @@ export var floatingToolbar = function floatingToolbar(cardOptions, platform, lin
101
99
  /**
102
100
  * Enable focus trap only if feature flag is enabled AND for the new version of the picker
103
101
  */
104
- var _getFeatureFlags = getFeatureFlags(state),
105
- lpLinkPicker = _getFeatureFlags.lpLinkPicker,
106
- lpLinkPickerFocusTrap = _getFeatureFlags.lpLinkPickerFocusTrap,
107
- preventPopupOverflow = _getFeatureFlags.preventPopupOverflow;
102
+ var lpLinkPicker = featureFlags.lpLinkPicker,
103
+ lpLinkPickerFocusTrap = featureFlags.lpLinkPickerFocusTrap,
104
+ preventPopupOverflow = featureFlags.preventPopupOverflow;
108
105
  var shouldEnableFocusTrap = lpLinkPicker && lpLinkPickerFocusTrap;
109
- var isLinkPickerEnabled = !!lpLinkPicker && !!(linkPickerOptions !== null && linkPickerOptions !== void 0 && (_linkPickerOptions$pl = linkPickerOptions.plugins) !== null && _linkPickerOptions$pl !== void 0 && _linkPickerOptions$pl.length);
106
+ var isLinkPickerEnabled = !!lpLinkPicker;
110
107
  return _objectSpread(_objectSpread({
111
108
  title: intl.formatMessage(messages.card),
112
109
  className: className,
@@ -123,7 +120,7 @@ export var floatingToolbar = function floatingToolbar(cardOptions, platform, lin
123
120
  }
124
121
  return element;
125
122
  },
126
- items: generateToolbarItems(state, intl, providerFactory, cardOptions, platform, linkPickerOptions),
123
+ items: generateToolbarItems(state, featureFlags, intl, providerFactory, cardOptions, platform, linkPickerOptions),
127
124
  scrollable: pluginState.showLinkingToolbar ? false : true,
128
125
  focusTrap: shouldEnableFocusTrap && pluginState.showLinkingToolbar
129
126
  }, editLinkToolbarConfig(pluginState.showLinkingToolbar, isLinkPickerEnabled));
@@ -142,7 +139,7 @@ var unlinkCard = function unlinkCard(node, state) {
142
139
  var buildAlignmentOptions = function buildAlignmentOptions(state, intl) {
143
140
  return buildLayoutButtons(state, intl, state.schema.nodes.embedCard, true, true);
144
141
  };
145
- var generateToolbarItems = function generateToolbarItems(state, intl, providerFactory, cardOptions, platform, linkPicker) {
142
+ var generateToolbarItems = function generateToolbarItems(state, featureFlags, intl, providerFactory, cardOptions, platform, linkPicker) {
146
143
  return function (node) {
147
144
  var _titleUrlPairFromNode2 = titleUrlPairFromNode(node),
148
145
  url = _titleUrlPairFromNode2.url;
@@ -165,7 +162,8 @@ var generateToolbarItems = function generateToolbarItems(state, intl, providerFa
165
162
  return [buildEditLinkToolbar({
166
163
  providerFactory: providerFactory,
167
164
  linkPicker: linkPicker,
168
- node: node
165
+ node: node,
166
+ featureFlags: featureFlags
169
167
  })];
170
168
  } else {
171
169
  var inlineCard = state.schema.nodes.inlineCard;
@@ -199,7 +197,7 @@ var generateToolbarItems = function generateToolbarItems(state, intl, providerFa
199
197
  }, {
200
198
  type: 'separator'
201
199
  }]
202
- }], _toConsumableArray(getSettingsButtonGroup(state, intl)), [{
200
+ }], _toConsumableArray(getSettingsButtonGroup(state, featureFlags, intl)), [{
203
201
  id: 'editor.link.delete',
204
202
  focusEditoronEnter: true,
205
203
  type: 'button',
@@ -263,9 +261,8 @@ var getUnlinkButtonGroup = function getUnlinkButtonGroup(state, intl, node, inli
263
261
  type: 'separator'
264
262
  }] : [];
265
263
  };
266
- var getSettingsButtonGroup = function getSettingsButtonGroup(state, intl) {
267
- var _getFeatureFlags2 = getFeatureFlags(state),
268
- floatingToolbarLinkSettingsButton = _getFeatureFlags2.floatingToolbarLinkSettingsButton;
264
+ var getSettingsButtonGroup = function getSettingsButtonGroup(state, featureFlags, intl) {
265
+ var floatingToolbarLinkSettingsButton = featureFlags.floatingToolbarLinkSettingsButton;
269
266
  return floatingToolbarLinkSettingsButton === 'true' ? [{
270
267
  id: 'editor.link.settings',
271
268
  type: 'button',
@@ -67,6 +67,7 @@ export var EditLinkToolbar = /*#__PURE__*/function (_React$Component) {
67
67
  url = _this$props.url,
68
68
  text = _this$props.text,
69
69
  view = _this$props.view,
70
+ featureFlags = _this$props.featureFlags,
70
71
  _onSubmit = _this$props.onSubmit;
71
72
  return /*#__PURE__*/React.createElement(HyperLinkToolbarWithListeners, {
72
73
  view: view,
@@ -79,6 +80,7 @@ export var EditLinkToolbar = /*#__PURE__*/function (_React$Component) {
79
80
  // via the floating toolbar
80
81
  ,
81
82
  invokeMethod: INPUT_METHOD.FLOATING_TB,
83
+ featureFlags: featureFlags,
82
84
  onSubmit: function onSubmit(href, title, displayText) {
83
85
  _this2.hideLinkToolbar();
84
86
  if (_onSubmit) {
@@ -104,7 +106,8 @@ export var editLink = function editLink(state, dispatch) {
104
106
  export var buildEditLinkToolbar = function buildEditLinkToolbar(_ref) {
105
107
  var providerFactory = _ref.providerFactory,
106
108
  node = _ref.node,
107
- linkPicker = _ref.linkPicker;
109
+ linkPicker = _ref.linkPicker,
110
+ featureFlags = _ref.featureFlags;
108
111
  return {
109
112
  type: 'custom',
110
113
  disableArrowNavigation: true,
@@ -122,6 +125,7 @@ export var buildEditLinkToolbar = function buildEditLinkToolbar(_ref) {
122
125
  url: displayInfo.url,
123
126
  text: displayInfo.title || '',
124
127
  node: node,
128
+ featureFlags: featureFlags,
125
129
  onSubmit: function onSubmit(newHref, newText) {
126
130
  var urlChanged = newHref !== displayInfo.url;
127
131
  var titleChanged = newText !== displayInfo.title;
@@ -140,9 +144,9 @@ export var buildEditLinkToolbar = function buildEditLinkToolbar(_ref) {
140
144
  }
141
145
  };
142
146
  };
143
- export var editLinkToolbarConfig = function editLinkToolbarConfig(showLinkingToolbar, linkPickerOptions) {
147
+ export var editLinkToolbarConfig = function editLinkToolbarConfig(showLinkingToolbar, lpLinkPicker) {
144
148
  return showLinkingToolbar ? {
145
- height: linkPickerOptions ? LINKPICKER_HEIGHT_IN_PX : RECENT_SEARCH_HEIGHT_IN_PX,
149
+ height: lpLinkPicker ? LINKPICKER_HEIGHT_IN_PX : RECENT_SEARCH_HEIGHT_IN_PX,
146
150
  width: RECENT_SEARCH_WIDTH_IN_PX,
147
151
  forcePlacement: true
148
152
  } : {};
@@ -4,7 +4,7 @@ import CopyIcon from '@atlaskit/icon/glyph/copy';
4
4
  import { findDomRefAtPos } from 'prosemirror-utils';
5
5
  import { removeCodeBlock, changeLanguage, copyContentToClipboard, resetCopiedState } from './actions';
6
6
  import commonMessages from '../../messages';
7
- import { codeBlockCopyButtonMessages } from '@atlaskit/editor-common/messages';
7
+ import { codeBlockButtonMessages } from '@atlaskit/editor-common/messages';
8
8
  import { provideVisualFeedbackForCopyButton, removeVisualFeedbackForCopyButton } from './pm-plugins/codeBlockCopySelectionPlugin';
9
9
  import { hoverDecoration } from '../base/pm-plugins/decoration';
10
10
  import { pluginKey } from './plugin-key';
@@ -70,7 +70,7 @@ export var getToolbarConfig = function getToolbarConfig() {
70
70
  // note: copyContentToClipboard contains logic that also removes the
71
71
  // visual feedback for the copy button
72
72
  onClick: copyContentToClipboard,
73
- title: formatMessage(codeBlockState.contentCopied ? codeBlockCopyButtonMessages.copiedCodeToClipboard : codeBlockCopyButtonMessages.copyCodeToClipboard),
73
+ title: formatMessage(codeBlockState.contentCopied ? codeBlockButtonMessages.copiedCodeToClipboard : codeBlockButtonMessages.copyCodeToClipboard),
74
74
  onMouseEnter: provideVisualFeedbackForCopyButton,
75
75
  // note: resetCopiedState contains logic that also removes the
76
76
  // visual feedback for the copy button
@@ -1,8 +1,7 @@
1
1
  import { addAnalytics, ACTION, EVENT_TYPE, ACTION_SUBJECT } from '../analytics';
2
- import { getFeatureFlags } from '../feature-flags-context';
3
2
  import { getDocStructure } from '../../utils/document-logger';
4
3
  import { sniffUserBrowserExtensions } from '@atlaskit/editor-common/utils';
5
- export var addSynchronyErrorAnalytics = function addSynchronyErrorAnalytics(state, tr) {
4
+ export var addSynchronyErrorAnalytics = function addSynchronyErrorAnalytics(state, tr, featureFlags) {
6
5
  return function (error) {
7
6
  var browserExtensions = sniffUserBrowserExtensions({
8
7
  extensions: ['grammarly']
@@ -16,7 +15,7 @@ export var addSynchronyErrorAnalytics = function addSynchronyErrorAnalytics(stat
16
15
  browserExtensions: browserExtensions
17
16
  }
18
17
  };
19
- if (getFeatureFlags(state).synchronyErrorDocStructure) {
18
+ if (featureFlags.synchronyErrorDocStructure) {
20
19
  payload.attributes.docStructure = getDocStructure(state.doc, {
21
20
  compact: true
22
21
  });
@@ -15,7 +15,7 @@ var effect = function effect(fn, eq) {
15
15
  return cleanup;
16
16
  };
17
17
  };
18
- export var subscribe = effect(function (view, provider, options, _providerFactory) {
18
+ export var subscribe = effect(function (view, provider, options, featureFlags, _providerFactory) {
19
19
  var entityRef;
20
20
  var entityHandlers = {
21
21
  disconnectedHandler: function disconnectedHandler() {
@@ -58,7 +58,7 @@ export var subscribe = effect(function (view, provider, options, _providerFactor
58
58
  view.dispatch(tr);
59
59
  },
60
60
  errorHandler: function errorHandler(error) {
61
- addSynchronyErrorAnalytics(view.state, view.state.tr)(error);
61
+ addSynchronyErrorAnalytics(view.state, view.state.tr, featureFlags)(error);
62
62
  },
63
63
  entityHandler: function entityHandler(_ref) {
64
64
  var entity = _ref.entity;
@@ -23,14 +23,15 @@ var initCollabMemo = memoizeOne(initCollab);
23
23
  export var initialize = function initialize(_ref) {
24
24
  var options = _ref.options,
25
25
  providerFactory = _ref.providerFactory,
26
- view = _ref.view;
26
+ view = _ref.view,
27
+ featureFlags = _ref.featureFlags;
27
28
  return function (provider) {
28
29
  var cleanup;
29
30
  var pluginState = pluginKey.getState(view.state);
30
31
  if (pluginState.isReady && cleanup) {
31
32
  cleanup();
32
33
  }
33
- cleanup = subscribe(view, provider, options, providerFactory);
34
+ cleanup = subscribe(view, provider, options, featureFlags, providerFactory);
34
35
 
35
36
  // Initialize provider
36
37
  if (options.useNativePlugin) {
@@ -49,7 +49,9 @@ var providerBuilder = function providerBuilder(collabEditProviderPromise) {
49
49
  };
50
50
  }();
51
51
  };
52
- var collabEditPlugin = function collabEditPlugin(options) {
52
+ var collabEditPlugin = function collabEditPlugin(options, api) {
53
+ var _api$dependencies, _api$dependencies$fea;
54
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$fea = _api$dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
53
55
  var providerResolver = function providerResolver() {};
54
56
  var collabEditProviderPromise = new Promise(function (_providerResolver) {
55
57
  providerResolver = _providerResolver;
@@ -89,12 +91,12 @@ var collabEditPlugin = function collabEditPlugin(options) {
89
91
  });
90
92
  }
91
93
  });
92
- return createPlugin(dispatch, providerFactory, executeProviderCode, options);
94
+ return createPlugin(dispatch, providerFactory, executeProviderCode, options, featureFlags);
93
95
  }
94
96
  }]);
95
97
  },
96
98
  onEditorViewStateUpdated: function onEditorViewStateUpdated(props) {
97
- var addErrorAnalytics = addSynchronyErrorAnalytics(props.newEditorState, props.newEditorState.tr);
99
+ var addErrorAnalytics = addSynchronyErrorAnalytics(props.newEditorState, props.newEditorState.tr, featureFlags);
98
100
  executeProviderCode(sendTransaction({
99
101
  originalTransaction: props.originalTransaction,
100
102
  transactions: props.transactions,
@@ -5,7 +5,7 @@ import { pluginKey } from './plugin-key';
5
5
  import { addSynchronyErrorAnalytics } from './analytics';
6
6
  import { fireAnalyticsEvent, ACTION, ACTION_SUBJECT, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
7
7
  export { PluginState, pluginKey };
8
- export var createPlugin = function createPlugin(dispatch, providerFactory, collabProviderCallback, options) {
8
+ export var createPlugin = function createPlugin(dispatch, providerFactory, collabProviderCallback, options, featureFlags) {
9
9
  var fireAnalyticsCallback = fireAnalyticsEvent(options === null || options === void 0 ? void 0 : options.createAnalyticsEvent);
10
10
  return new SafePlugin({
11
11
  key: pluginKey,
@@ -39,7 +39,7 @@ export var createPlugin = function createPlugin(dispatch, providerFactory, colla
39
39
  return true;
40
40
  },
41
41
  view: function view(_view) {
42
- var addErrorAnalytics = addSynchronyErrorAnalytics(_view.state, _view.state.tr);
42
+ var addErrorAnalytics = addSynchronyErrorAnalytics(_view.state, _view.state.tr, featureFlags);
43
43
  var onSyncUpError = function onSyncUpError(attributes) {
44
44
  fireAnalyticsCallback({
45
45
  payload: {
@@ -54,7 +54,8 @@ export var createPlugin = function createPlugin(dispatch, providerFactory, colla
54
54
  var cleanup = collabProviderCallback(initialize({
55
55
  view: _view,
56
56
  options: options,
57
- providerFactory: providerFactory
57
+ providerFactory: providerFactory,
58
+ featureFlags: featureFlags
58
59
  }), addErrorAnalytics);
59
60
  return {
60
61
  destroy: function destroy() {