@atlaskit/editor-common 72.2.0 → 72.2.2

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 (573) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/__tests_external__/cases/fundamentals/collection.js +0 -5
  3. package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +0 -4
  4. package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +0 -8
  5. package/dist/cjs/__tests_external__/cases/smart-links/index.js +0 -4
  6. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/delete.js +1 -8
  7. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/edit.js +2 -12
  8. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/index.js +0 -6
  9. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/insert.js +1 -8
  10. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/delete.js +1 -8
  11. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/edit.js +2 -12
  12. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/index.js +0 -6
  13. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/insert.js +1 -8
  14. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/delete.js +1 -8
  15. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/edit.js +2 -12
  16. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/index.js +0 -7
  17. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/insert.js +1 -8
  18. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +1 -8
  19. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/index.js +0 -4
  20. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/insert.js +1 -8
  21. package/dist/cjs/__tests_external__/index.js +0 -3
  22. package/dist/cjs/__tests_external__/page-objects/Editor.js +0 -16
  23. package/dist/cjs/__tests_external__/page-objects/EditorSmartLink.js +0 -29
  24. package/dist/cjs/__tests_external__/page-objects/Renderer.js +0 -14
  25. package/dist/cjs/analytics/index.js +0 -1
  26. package/dist/cjs/analytics/types/enums.js +0 -15
  27. package/dist/cjs/analytics/types/extension-events.js +0 -4
  28. package/dist/cjs/analytics/types/format-events.js +0 -3
  29. package/dist/cjs/analytics/types/general-events.js +0 -7
  30. package/dist/cjs/analytics/types/index.js +0 -14
  31. package/dist/cjs/analytics/types/inline-comment-events.js +0 -1
  32. package/dist/cjs/analytics/types/insert-events.js +0 -7
  33. package/dist/cjs/analytics/types/list-events.js +0 -3
  34. package/dist/cjs/analytics/types/node-events.js +0 -3
  35. package/dist/cjs/analytics/types/substitute-events.js +0 -3
  36. package/dist/cjs/analytics/types/table-events.js +0 -4
  37. package/dist/cjs/analytics/types/toolbar-button.js +0 -1
  38. package/dist/cjs/analytics/types/utils.js +0 -3
  39. package/dist/cjs/core-utils/index.js +0 -1
  40. package/dist/cjs/core-utils/inside.js +2 -5
  41. package/dist/cjs/emoji.js +0 -3
  42. package/dist/cjs/event-dispatcher/index.js +0 -14
  43. package/dist/cjs/extensions/combine-extension-providers.js +2 -6
  44. package/dist/cjs/extensions/default-extension-provider.js +0 -26
  45. package/dist/cjs/extensions/extension-fields-helpers.js +0 -35
  46. package/dist/cjs/extensions/extension-handlers.js +0 -27
  47. package/dist/cjs/extensions/index.js +0 -8
  48. package/dist/cjs/extensions/manifest-helpers.js +4 -30
  49. package/dist/cjs/extensions/module-helpers.js +17 -89
  50. package/dist/cjs/extensions/types/field-definitions.js +1 -10
  51. package/dist/cjs/extensions/types/index.js +0 -1
  52. package/dist/cjs/extensions.js +0 -1
  53. package/dist/cjs/i18n/cs.js +0 -1
  54. package/dist/cjs/i18n/da.js +0 -1
  55. package/dist/cjs/i18n/de.js +0 -1
  56. package/dist/cjs/i18n/en.js +0 -1
  57. package/dist/cjs/i18n/en_GB.js +0 -1
  58. package/dist/cjs/i18n/en_ZZ.js +0 -1
  59. package/dist/cjs/i18n/es.js +0 -1
  60. package/dist/cjs/i18n/et.js +0 -1
  61. package/dist/cjs/i18n/fi.js +0 -1
  62. package/dist/cjs/i18n/fr.js +0 -1
  63. package/dist/cjs/i18n/hu.js +0 -1
  64. package/dist/cjs/i18n/index.js +0 -27
  65. package/dist/cjs/i18n/it.js +0 -1
  66. package/dist/cjs/i18n/ja.js +0 -1
  67. package/dist/cjs/i18n/ko.js +0 -1
  68. package/dist/cjs/i18n/languages.js +0 -1
  69. package/dist/cjs/i18n/nb.js +0 -1
  70. package/dist/cjs/i18n/nl.js +0 -1
  71. package/dist/cjs/i18n/pl.js +0 -1
  72. package/dist/cjs/i18n/pt_BR.js +0 -1
  73. package/dist/cjs/i18n/pt_PT.js +0 -1
  74. package/dist/cjs/i18n/ru.js +0 -1
  75. package/dist/cjs/i18n/sk.js +0 -1
  76. package/dist/cjs/i18n/sv.js +0 -1
  77. package/dist/cjs/i18n/th.js +0 -1
  78. package/dist/cjs/i18n/tr.js +0 -1
  79. package/dist/cjs/i18n/uk.js +0 -1
  80. package/dist/cjs/i18n/vi.js +0 -1
  81. package/dist/cjs/i18n/zh.js +0 -1
  82. package/dist/cjs/i18n/zh_TW.js +0 -1
  83. package/dist/cjs/icons/index.js +0 -11
  84. package/dist/cjs/icons/shared/PanelErrorIcon.js +0 -7
  85. package/dist/cjs/icons/shared/PanelInfoIcon.js +0 -7
  86. package/dist/cjs/icons/shared/PanelNoteIcon.js +0 -7
  87. package/dist/cjs/icons/shared/PanelSuccessIcon.js +0 -7
  88. package/dist/cjs/icons/shared/PanelWarningIcon.js +0 -7
  89. package/dist/cjs/icons/shared/table.js +1 -3
  90. package/dist/cjs/in-product.js +0 -1
  91. package/dist/cjs/keymaps/index.js +2 -50
  92. package/dist/cjs/mention.js +0 -3
  93. package/dist/cjs/messages/codeBidiWarning.js +0 -2
  94. package/dist/cjs/messages/codeBlockCopyButton.js +0 -2
  95. package/dist/cjs/messages/index.js +0 -8
  96. package/dist/cjs/messages/insert-block.js +0 -2
  97. package/dist/cjs/messages/link.js +0 -2
  98. package/dist/cjs/messages/unsupportedContent.js +0 -2
  99. package/dist/cjs/node-width/index.js +2 -20
  100. package/dist/cjs/normalize-feature-flags.js +6 -25
  101. package/dist/cjs/panel.js +0 -1
  102. package/dist/cjs/provider-factory/context.js +3 -17
  103. package/dist/cjs/provider-factory/provider-factory.js +0 -19
  104. package/dist/cjs/provider-factory/with-providers.js +5 -28
  105. package/dist/cjs/provider-factory.js +0 -4
  106. package/dist/cjs/provider-helpers/combine-providers.js +3 -33
  107. package/dist/cjs/provider-helpers/index.js +0 -2
  108. package/dist/cjs/provider-helpers/promise-helpers.js +3 -15
  109. package/dist/cjs/react-node-view/index.js +18 -48
  110. package/dist/cjs/safe-plugin/index.js +1 -14
  111. package/dist/cjs/selection/gap-cursor/selection.js +8 -44
  112. package/dist/cjs/selection/gap-cursor/utils/index.js +0 -2
  113. package/dist/cjs/selection/gap-cursor/utils/is-ignored.js +0 -2
  114. package/dist/cjs/selection/gap-cursor/utils/is-valid-target-node.js +0 -3
  115. package/dist/cjs/selection/index.js +0 -4
  116. package/dist/cjs/selection/types.js +0 -1
  117. package/dist/cjs/selection/utils.js +0 -12
  118. package/dist/cjs/styles/index.js +0 -23
  119. package/dist/cjs/styles/shared/annotation.js +0 -11
  120. package/dist/cjs/styles/shared/block-marks.js +0 -5
  121. package/dist/cjs/styles/shared/blockquote.js +0 -7
  122. package/dist/cjs/styles/shared/code-block.js +0 -11
  123. package/dist/cjs/styles/shared/code-mark.js +0 -9
  124. package/dist/cjs/styles/shared/column-layout.js +0 -6
  125. package/dist/cjs/styles/shared/date.js +0 -5
  126. package/dist/cjs/styles/shared/emoji.js +0 -2
  127. package/dist/cjs/styles/shared/extension.js +0 -2
  128. package/dist/cjs/styles/shared/headings.js +0 -7
  129. package/dist/cjs/styles/shared/indentation.js +0 -5
  130. package/dist/cjs/styles/shared/layout.js +0 -2
  131. package/dist/cjs/styles/shared/link.js +0 -5
  132. package/dist/cjs/styles/shared/lists.js +2 -21
  133. package/dist/cjs/styles/shared/media-single.js +0 -5
  134. package/dist/cjs/styles/shared/panel.js +15 -41
  135. package/dist/cjs/styles/shared/paragraph.js +0 -6
  136. package/dist/cjs/styles/shared/rule.js +2 -10
  137. package/dist/cjs/styles/shared/shadow.js +1 -9
  138. package/dist/cjs/styles/shared/smart-card.js +0 -3
  139. package/dist/cjs/styles/shared/table.js +0 -20
  140. package/dist/cjs/styles/shared/task-decision.js +0 -6
  141. package/dist/cjs/styles/shared/text-color.js +0 -5
  142. package/dist/cjs/styles/shared/whitespace.js +0 -5
  143. package/dist/cjs/transforms/expand.js +7 -16
  144. package/dist/cjs/transforms/extension.js +2 -7
  145. package/dist/cjs/transforms/index.js +0 -3
  146. package/dist/cjs/transforms/layout.js +9 -15
  147. package/dist/cjs/type-ahead/index.js +0 -3
  148. package/dist/cjs/types/annotation/emitter.js +0 -11
  149. package/dist/cjs/types/annotation/index.js +0 -1
  150. package/dist/cjs/types/index.js +0 -4
  151. package/dist/cjs/types/toolbar.js +0 -5
  152. package/dist/cjs/ufo/experience-store.js +0 -24
  153. package/dist/cjs/ufo/index.js +0 -1
  154. package/dist/cjs/ui/BaseTheme/index.js +3 -21
  155. package/dist/cjs/ui/Caption/index.js +5 -29
  156. package/dist/cjs/ui/Caption/messages.js +0 -2
  157. package/dist/cjs/ui/DropList/index.js +18 -51
  158. package/dist/cjs/ui/Emoji/index.js +7 -33
  159. package/dist/cjs/ui/ErrorBoundary/index.js +0 -22
  160. package/dist/cjs/ui/Expand/index.js +5 -31
  161. package/dist/cjs/ui/IntlErrorBoundary/index.js +0 -24
  162. package/dist/cjs/ui/IntlProviderIfMissingWrapper/index.js +0 -9
  163. package/dist/cjs/ui/Layer/index.js +16 -46
  164. package/dist/cjs/ui/Layer/internal/helpers.js +0 -2
  165. package/dist/cjs/ui/MediaSingle/grid.js +0 -8
  166. package/dist/cjs/ui/MediaSingle/index.js +26 -44
  167. package/dist/cjs/ui/MediaSingle/link.js +0 -5
  168. package/dist/cjs/ui/MediaSingle/styled.js +11 -50
  169. package/dist/cjs/ui/Mention/index.js +5 -27
  170. package/dist/cjs/ui/Mention/mention-with-profilecard.js +8 -16
  171. package/dist/cjs/ui/Mention/mention-with-providers.js +5 -33
  172. package/dist/cjs/ui/Messages/index.js +0 -18
  173. package/dist/cjs/ui/OverflowShadow/index.js +3 -48
  174. package/dist/cjs/ui/OverflowShadow/shadowObserver.js +2 -26
  175. package/dist/cjs/ui/Popup/index.js +28 -80
  176. package/dist/cjs/ui/Popup/utils.js +67 -132
  177. package/dist/cjs/ui/PortalProvider/PortalProviderThemesProvider.js +3 -13
  178. package/dist/cjs/ui/PortalProvider/index.js +16 -73
  179. package/dist/cjs/ui/UnsupportedBlock/index.js +5 -29
  180. package/dist/cjs/ui/UnsupportedInline/index.js +5 -29
  181. package/dist/cjs/ui/WidthProvider/index.js +1 -31
  182. package/dist/cjs/ui/WithCreateAnalyticsEvent/index.js +2 -16
  183. package/dist/cjs/ui/clear-next-sibling-margin-top.js +0 -5
  184. package/dist/cjs/ui/index.js +0 -23
  185. package/dist/cjs/ui/unsupported-content-helper.js +0 -5
  186. package/dist/cjs/ui/with-outer-listeners.js +0 -25
  187. package/dist/cjs/ui-color/ColorPalette/Color/index.js +12 -40
  188. package/dist/cjs/ui-color/ColorPalette/Color/styles.js +0 -10
  189. package/dist/cjs/ui-color/ColorPalette/Palettes/cellBackgroundColorPalette.js +0 -7
  190. package/dist/cjs/ui-color/ColorPalette/Palettes/common.js +4 -12
  191. package/dist/cjs/ui-color/ColorPalette/Palettes/getColorMessage.js +0 -3
  192. package/dist/cjs/ui-color/ColorPalette/Palettes/index.js +0 -1
  193. package/dist/cjs/ui-color/ColorPalette/Palettes/paletteMessages.js +0 -3
  194. package/dist/cjs/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +0 -8
  195. package/dist/cjs/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +0 -10
  196. package/dist/cjs/ui-color/ColorPalette/Palettes/statusColorPalette.js +0 -7
  197. package/dist/cjs/ui-color/ColorPalette/Palettes/textColorPalette.js +2 -9
  198. package/dist/cjs/ui-color/ColorPalette/index.js +16 -38
  199. package/dist/cjs/ui-color/ColorPalette/styles.js +0 -6
  200. package/dist/cjs/ui-color/index.js +0 -9
  201. package/dist/cjs/ui-menu/Dropdown/index.js +14 -38
  202. package/dist/cjs/ui-menu/DropdownMenu/index.js +23 -75
  203. package/dist/cjs/ui-menu/MenuArrowKeyNavigationProvider/index.js +16 -49
  204. package/dist/cjs/ui-menu/ToolbarButton/index.js +23 -46
  205. package/dist/cjs/ui-menu/ToolbarButton/styles.js +0 -6
  206. package/dist/cjs/ui-menu/index.js +0 -7
  207. package/dist/cjs/ui-react/ReactEditorViewContext.js +0 -4
  208. package/dist/cjs/ui-react/index.js +0 -3
  209. package/dist/cjs/ui-react/with-react-editor-view-outer-listeners.js +9 -49
  210. package/dist/cjs/utils/analytics.js +0 -14
  211. package/dist/cjs/utils/annotation/index.js +5 -13
  212. package/dist/cjs/utils/breakout.js +7 -23
  213. package/dist/cjs/utils/browser-extensions.js +28 -56
  214. package/dist/cjs/utils/browser.js +0 -2
  215. package/dist/cjs/utils/builder.js +0 -10
  216. package/dist/cjs/utils/collab.js +0 -4
  217. package/dist/cjs/utils/compare-props.js +11 -25
  218. package/dist/cjs/utils/compareNodes.js +7 -53
  219. package/dist/cjs/utils/compose.js +0 -2
  220. package/dist/cjs/utils/date.js +4 -25
  221. package/dist/cjs/utils/dom.js +6 -29
  222. package/dist/cjs/utils/editor-core-utils.js +8 -33
  223. package/dist/cjs/utils/error-reporter.js +0 -7
  224. package/dist/cjs/utils/extension-handler.js +0 -3
  225. package/dist/cjs/utils/get-performance-options.js +4 -12
  226. package/dist/cjs/utils/getModeFromTheme.js +0 -1
  227. package/dist/cjs/utils/imageLoader.js +0 -27
  228. package/dist/cjs/utils/index.js +0 -40
  229. package/dist/cjs/utils/is-text-input.js +5 -11
  230. package/dist/cjs/utils/list.js +3 -13
  231. package/dist/cjs/utils/macro.js +1 -7
  232. package/dist/cjs/utils/nodes.js +4 -31
  233. package/dist/cjs/utils/outdated-browsers.js +0 -10
  234. package/dist/cjs/utils/performance/hooks/use-component-render-tracking/index.js +4 -14
  235. package/dist/cjs/utils/performance/is-performance-api-available.js +0 -4
  236. package/dist/cjs/utils/performance/measure-render.js +1 -11
  237. package/dist/cjs/utils/performance/measure-tti.js +3 -17
  238. package/dist/cjs/utils/performance/measure.js +0 -11
  239. package/dist/cjs/utils/performance/navigation.js +0 -5
  240. package/dist/cjs/utils/plugin-state-factory.js +3 -11
  241. package/dist/cjs/utils/profiler/render-count.js +4 -24
  242. package/dist/cjs/utils/referentiality.js +30 -88
  243. package/dist/cjs/utils/sendLogs.js +0 -2
  244. package/dist/cjs/utils/should-force-tracking.js +4 -7
  245. package/dist/cjs/utils/slice.js +0 -17
  246. package/dist/cjs/utils/table.js +4 -13
  247. package/dist/cjs/utils/track-unsupported-content.js +14 -39
  248. package/dist/cjs/utils/traversor.js +0 -14
  249. package/dist/cjs/utils/unsupportedContent/get-unsupported-content-level-data.js +5 -21
  250. package/dist/cjs/utils/validate-using-spec.js +5 -36
  251. package/dist/cjs/utils/validator.js +26 -188
  252. package/dist/cjs/validator.js +0 -1
  253. package/dist/cjs/version.json +1 -1
  254. package/dist/cjs/with-plugin-state/index.js +7 -55
  255. package/dist/es2019/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +0 -3
  256. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/delete.js +0 -1
  257. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/edit.js +0 -2
  258. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/insert.js +0 -1
  259. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/delete.js +0 -1
  260. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/edit.js +0 -2
  261. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/insert.js +0 -1
  262. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/delete.js +0 -1
  263. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/edit.js +0 -2
  264. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/insert.js +0 -1
  265. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +0 -1
  266. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/url/insert.js +0 -1
  267. package/dist/es2019/__tests_external__/page-objects/Editor.js +0 -4
  268. package/dist/es2019/__tests_external__/page-objects/EditorSmartLink.js +0 -28
  269. package/dist/es2019/__tests_external__/page-objects/Renderer.js +0 -2
  270. package/dist/es2019/analytics/types/enums.js +0 -15
  271. package/dist/es2019/analytics/types/extension-events.js +2 -3
  272. package/dist/es2019/analytics/types/format-events.js +0 -3
  273. package/dist/es2019/analytics/types/general-events.js +0 -7
  274. package/dist/es2019/analytics/types/inline-comment-events.js +0 -1
  275. package/dist/es2019/analytics/types/insert-events.js +0 -7
  276. package/dist/es2019/analytics/types/list-events.js +0 -3
  277. package/dist/es2019/analytics/types/node-events.js +0 -3
  278. package/dist/es2019/analytics/types/substitute-events.js +0 -3
  279. package/dist/es2019/analytics/types/table-events.js +2 -3
  280. package/dist/es2019/analytics/types/toolbar-button.js +0 -1
  281. package/dist/es2019/analytics/types/utils.js +0 -3
  282. package/dist/es2019/event-dispatcher/index.js +1 -12
  283. package/dist/es2019/extensions/combine-extension-providers.js +0 -5
  284. package/dist/es2019/extensions/default-extension-provider.js +0 -8
  285. package/dist/es2019/extensions/extension-fields-helpers.js +4 -10
  286. package/dist/es2019/extensions/extension-handlers.js +1 -8
  287. package/dist/es2019/extensions/manifest-helpers.js +2 -7
  288. package/dist/es2019/extensions/module-helpers.js +10 -43
  289. package/dist/es2019/extensions/types/field-definitions.js +1 -0
  290. package/dist/es2019/icons/index.js +1 -3
  291. package/dist/es2019/icons/shared/PanelErrorIcon.js +0 -2
  292. package/dist/es2019/icons/shared/PanelInfoIcon.js +0 -2
  293. package/dist/es2019/icons/shared/PanelNoteIcon.js +0 -2
  294. package/dist/es2019/icons/shared/PanelSuccessIcon.js +0 -2
  295. package/dist/es2019/icons/shared/PanelWarningIcon.js +0 -2
  296. package/dist/es2019/keymaps/index.js +0 -24
  297. package/dist/es2019/node-width/index.js +3 -14
  298. package/dist/es2019/normalize-feature-flags.js +1 -11
  299. package/dist/es2019/provider-factory/context.js +0 -1
  300. package/dist/es2019/provider-factory/provider-factory.js +0 -25
  301. package/dist/es2019/provider-factory/with-providers.js +2 -8
  302. package/dist/es2019/provider-helpers/combine-providers.js +3 -13
  303. package/dist/es2019/provider-helpers/promise-helpers.js +3 -10
  304. package/dist/es2019/react-node-view/index.js +10 -34
  305. package/dist/es2019/safe-plugin/index.js +1 -1
  306. package/dist/es2019/selection/gap-cursor/selection.js +6 -31
  307. package/dist/es2019/selection/types.js +0 -1
  308. package/dist/es2019/selection/utils.js +0 -8
  309. package/dist/es2019/styles/shared/headings.js +3 -2
  310. package/dist/es2019/styles/shared/lists.js +0 -8
  311. package/dist/es2019/styles/shared/panel.js +13 -12
  312. package/dist/es2019/styles/shared/paragraph.js +2 -1
  313. package/dist/es2019/styles/shared/rule.js +2 -1
  314. package/dist/es2019/styles/shared/shadow.js +2 -0
  315. package/dist/es2019/styles/shared/table.js +1 -5
  316. package/dist/es2019/transforms/expand.js +3 -3
  317. package/dist/es2019/transforms/extension.js +3 -4
  318. package/dist/es2019/transforms/layout.js +9 -10
  319. package/dist/es2019/type-ahead/index.js +0 -3
  320. package/dist/es2019/types/annotation/emitter.js +0 -8
  321. package/dist/es2019/types/index.js +0 -2
  322. package/dist/es2019/types/toolbar.js +0 -5
  323. package/dist/es2019/ufo/experience-store.js +0 -25
  324. package/dist/es2019/ui/BaseTheme/index.js +0 -2
  325. package/dist/es2019/ui/Caption/index.js +0 -2
  326. package/dist/es2019/ui/DropList/index.js +9 -25
  327. package/dist/es2019/ui/Emoji/index.js +0 -11
  328. package/dist/es2019/ui/ErrorBoundary/index.js +0 -8
  329. package/dist/es2019/ui/Expand/index.js +2 -10
  330. package/dist/es2019/ui/IntlErrorBoundary/index.js +0 -8
  331. package/dist/es2019/ui/IntlProviderIfMissingWrapper/index.js +0 -4
  332. package/dist/es2019/ui/Layer/index.js +13 -29
  333. package/dist/es2019/ui/Layer/internal/helpers.js +0 -2
  334. package/dist/es2019/ui/MediaSingle/index.js +7 -12
  335. package/dist/es2019/ui/MediaSingle/styled.js +2 -25
  336. package/dist/es2019/ui/Mention/index.js +0 -5
  337. package/dist/es2019/ui/Mention/mention-with-providers.js +0 -8
  338. package/dist/es2019/ui/Messages/index.js +1 -2
  339. package/dist/es2019/ui/OverflowShadow/index.js +0 -32
  340. package/dist/es2019/ui/OverflowShadow/shadowObserver.js +0 -14
  341. package/dist/es2019/ui/Popup/index.js +11 -59
  342. package/dist/es2019/ui/Popup/utils.js +18 -57
  343. package/dist/es2019/ui/PortalProvider/PortalProviderThemesProvider.js +2 -1
  344. package/dist/es2019/ui/PortalProvider/index.js +7 -35
  345. package/dist/es2019/ui/UnsupportedBlock/index.js +0 -2
  346. package/dist/es2019/ui/UnsupportedInline/index.js +0 -2
  347. package/dist/es2019/ui/WidthProvider/index.js +0 -9
  348. package/dist/es2019/ui/WithCreateAnalyticsEvent/index.js +0 -1
  349. package/dist/es2019/ui/clear-next-sibling-margin-top.js +2 -1
  350. package/dist/es2019/ui/unsupported-content-helper.js +0 -4
  351. package/dist/es2019/ui/with-outer-listeners.js +0 -8
  352. package/dist/es2019/ui-color/ColorPalette/Color/index.js +0 -10
  353. package/dist/es2019/ui-color/ColorPalette/Color/styles.js +1 -4
  354. package/dist/es2019/ui-color/ColorPalette/Palettes/common.js +2 -4
  355. package/dist/es2019/ui-color/ColorPalette/Palettes/getColorMessage.js +0 -2
  356. package/dist/es2019/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +5 -3
  357. package/dist/es2019/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +4 -4
  358. package/dist/es2019/ui-color/ColorPalette/Palettes/statusColorPalette.js +0 -2
  359. package/dist/es2019/ui-color/ColorPalette/Palettes/textColorPalette.js +2 -3
  360. package/dist/es2019/ui-color/ColorPalette/index.js +3 -10
  361. package/dist/es2019/ui-menu/Dropdown/index.js +0 -7
  362. package/dist/es2019/ui-menu/DropdownMenu/index.js +1 -21
  363. package/dist/es2019/ui-menu/MenuArrowKeyNavigationProvider/index.js +8 -31
  364. package/dist/es2019/ui-menu/ToolbarButton/index.js +2 -6
  365. package/dist/es2019/ui-react/with-react-editor-view-outer-listeners.js +4 -22
  366. package/dist/es2019/utils/analytics.js +0 -8
  367. package/dist/es2019/utils/annotation/index.js +3 -7
  368. package/dist/es2019/utils/breakout.js +6 -13
  369. package/dist/es2019/utils/browser-extensions.js +10 -22
  370. package/dist/es2019/utils/browser.js +0 -2
  371. package/dist/es2019/utils/builder.js +0 -2
  372. package/dist/es2019/utils/collab.js +0 -2
  373. package/dist/es2019/utils/compare-props.js +5 -4
  374. package/dist/es2019/utils/compareNodes.js +3 -42
  375. package/dist/es2019/utils/date.js +4 -11
  376. package/dist/es2019/utils/dom.js +6 -19
  377. package/dist/es2019/utils/editor-core-utils.js +6 -11
  378. package/dist/es2019/utils/error-reporter.js +0 -4
  379. package/dist/es2019/utils/get-performance-options.js +3 -3
  380. package/dist/es2019/utils/imageLoader.js +0 -11
  381. package/dist/es2019/utils/is-text-input.js +1 -2
  382. package/dist/es2019/utils/list.js +3 -7
  383. package/dist/es2019/utils/macro.js +0 -3
  384. package/dist/es2019/utils/nodes.js +3 -11
  385. package/dist/es2019/utils/outdated-browsers.js +0 -8
  386. package/dist/es2019/utils/performance/hooks/use-component-render-tracking/index.js +0 -4
  387. package/dist/es2019/utils/performance/is-performance-api-available.js +0 -1
  388. package/dist/es2019/utils/performance/measure-render.js +2 -10
  389. package/dist/es2019/utils/performance/measure-tti.js +3 -11
  390. package/dist/es2019/utils/performance/measure.js +0 -6
  391. package/dist/es2019/utils/performance/navigation.js +0 -3
  392. package/dist/es2019/utils/plugin-state-factory.js +1 -10
  393. package/dist/es2019/utils/profiler/render-count.js +10 -23
  394. package/dist/es2019/utils/referentiality.js +24 -65
  395. package/dist/es2019/utils/should-force-tracking.js +2 -1
  396. package/dist/es2019/utils/slice.js +1 -9
  397. package/dist/es2019/utils/table.js +2 -6
  398. package/dist/es2019/utils/track-unsupported-content.js +6 -11
  399. package/dist/es2019/utils/traversor.js +0 -13
  400. package/dist/es2019/utils/unsupportedContent/get-unsupported-content-level-data.js +3 -15
  401. package/dist/es2019/utils/validate-using-spec.js +3 -25
  402. package/dist/es2019/utils/validator.js +10 -149
  403. package/dist/es2019/version.json +1 -1
  404. package/dist/es2019/with-plugin-state/index.js +5 -46
  405. package/dist/esm/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +0 -3
  406. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/delete.js +1 -2
  407. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/edit.js +2 -4
  408. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/insert.js +1 -2
  409. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/delete.js +1 -2
  410. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/edit.js +2 -4
  411. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/insert.js +1 -2
  412. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/delete.js +1 -2
  413. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/edit.js +2 -4
  414. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/insert.js +1 -2
  415. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +1 -2
  416. package/dist/esm/__tests_external__/cases/smart-links/test-cases/url/insert.js +1 -2
  417. package/dist/esm/__tests_external__/page-objects/Editor.js +0 -9
  418. package/dist/esm/__tests_external__/page-objects/EditorSmartLink.js +0 -23
  419. package/dist/esm/__tests_external__/page-objects/Renderer.js +0 -8
  420. package/dist/esm/analytics/types/enums.js +0 -15
  421. package/dist/esm/analytics/types/extension-events.js +2 -3
  422. package/dist/esm/analytics/types/format-events.js +0 -3
  423. package/dist/esm/analytics/types/general-events.js +0 -7
  424. package/dist/esm/analytics/types/inline-comment-events.js +0 -1
  425. package/dist/esm/analytics/types/insert-events.js +0 -7
  426. package/dist/esm/analytics/types/list-events.js +0 -3
  427. package/dist/esm/analytics/types/node-events.js +0 -3
  428. package/dist/esm/analytics/types/substitute-events.js +0 -3
  429. package/dist/esm/analytics/types/table-events.js +2 -3
  430. package/dist/esm/analytics/types/toolbar-button.js +0 -1
  431. package/dist/esm/analytics/types/utils.js +0 -3
  432. package/dist/esm/core-utils/inside.js +2 -2
  433. package/dist/esm/event-dispatcher/index.js +1 -9
  434. package/dist/esm/extensions/combine-extension-providers.js +2 -4
  435. package/dist/esm/extensions/default-extension-provider.js +0 -22
  436. package/dist/esm/extensions/extension-fields-helpers.js +3 -29
  437. package/dist/esm/extensions/extension-handlers.js +1 -18
  438. package/dist/esm/extensions/manifest-helpers.js +4 -17
  439. package/dist/esm/extensions/module-helpers.js +17 -74
  440. package/dist/esm/extensions/types/field-definitions.js +1 -0
  441. package/dist/esm/icons/index.js +1 -3
  442. package/dist/esm/icons/shared/PanelErrorIcon.js +0 -2
  443. package/dist/esm/icons/shared/PanelInfoIcon.js +0 -2
  444. package/dist/esm/icons/shared/PanelNoteIcon.js +0 -2
  445. package/dist/esm/icons/shared/PanelSuccessIcon.js +0 -2
  446. package/dist/esm/icons/shared/PanelWarningIcon.js +0 -2
  447. package/dist/esm/keymaps/index.js +2 -28
  448. package/dist/esm/node-width/index.js +3 -14
  449. package/dist/esm/normalize-feature-flags.js +6 -19
  450. package/dist/esm/provider-factory/context.js +3 -5
  451. package/dist/esm/provider-factory/provider-factory.js +0 -18
  452. package/dist/esm/provider-factory/with-providers.js +5 -23
  453. package/dist/esm/provider-helpers/combine-providers.js +3 -27
  454. package/dist/esm/provider-helpers/promise-helpers.js +3 -10
  455. package/dist/esm/react-node-view/index.js +18 -42
  456. package/dist/esm/safe-plugin/index.js +1 -7
  457. package/dist/esm/selection/gap-cursor/selection.js +8 -35
  458. package/dist/esm/selection/types.js +0 -1
  459. package/dist/esm/selection/utils.js +0 -8
  460. package/dist/esm/styles/shared/annotation.js +0 -2
  461. package/dist/esm/styles/shared/block-marks.js +0 -2
  462. package/dist/esm/styles/shared/blockquote.js +0 -2
  463. package/dist/esm/styles/shared/code-block.js +0 -2
  464. package/dist/esm/styles/shared/code-mark.js +0 -2
  465. package/dist/esm/styles/shared/column-layout.js +0 -2
  466. package/dist/esm/styles/shared/date.js +0 -2
  467. package/dist/esm/styles/shared/headings.js +3 -4
  468. package/dist/esm/styles/shared/indentation.js +0 -2
  469. package/dist/esm/styles/shared/link.js +0 -2
  470. package/dist/esm/styles/shared/lists.js +2 -13
  471. package/dist/esm/styles/shared/media-single.js +0 -2
  472. package/dist/esm/styles/shared/panel.js +15 -17
  473. package/dist/esm/styles/shared/paragraph.js +2 -3
  474. package/dist/esm/styles/shared/rule.js +2 -3
  475. package/dist/esm/styles/shared/shadow.js +2 -2
  476. package/dist/esm/styles/shared/table.js +1 -8
  477. package/dist/esm/styles/shared/task-decision.js +0 -2
  478. package/dist/esm/styles/shared/text-color.js +0 -2
  479. package/dist/esm/styles/shared/whitespace.js +0 -2
  480. package/dist/esm/transforms/expand.js +7 -7
  481. package/dist/esm/transforms/extension.js +3 -4
  482. package/dist/esm/transforms/layout.js +9 -10
  483. package/dist/esm/type-ahead/index.js +0 -3
  484. package/dist/esm/types/annotation/emitter.js +0 -6
  485. package/dist/esm/types/index.js +0 -2
  486. package/dist/esm/types/toolbar.js +0 -5
  487. package/dist/esm/ufo/experience-store.js +0 -19
  488. package/dist/esm/ui/BaseTheme/index.js +3 -7
  489. package/dist/esm/ui/Caption/index.js +5 -14
  490. package/dist/esm/ui/DropList/index.js +18 -47
  491. package/dist/esm/ui/Emoji/index.js +7 -26
  492. package/dist/esm/ui/ErrorBoundary/index.js +0 -14
  493. package/dist/esm/ui/Expand/index.js +5 -15
  494. package/dist/esm/ui/IntlErrorBoundary/index.js +0 -16
  495. package/dist/esm/ui/IntlProviderIfMissingWrapper/index.js +0 -4
  496. package/dist/esm/ui/Layer/index.js +16 -39
  497. package/dist/esm/ui/Layer/internal/helpers.js +0 -2
  498. package/dist/esm/ui/MediaSingle/index.js +25 -32
  499. package/dist/esm/ui/MediaSingle/link.js +0 -2
  500. package/dist/esm/ui/MediaSingle/styled.js +11 -39
  501. package/dist/esm/ui/Mention/index.js +5 -18
  502. package/dist/esm/ui/Mention/mention-with-profilecard.js +8 -8
  503. package/dist/esm/ui/Mention/mention-with-providers.js +5 -21
  504. package/dist/esm/ui/Messages/index.js +1 -4
  505. package/dist/esm/ui/OverflowShadow/index.js +3 -46
  506. package/dist/esm/ui/OverflowShadow/shadowObserver.js +2 -27
  507. package/dist/esm/ui/Popup/index.js +28 -80
  508. package/dist/esm/ui/Popup/utils.js +67 -123
  509. package/dist/esm/ui/PortalProvider/PortalProviderThemesProvider.js +3 -3
  510. package/dist/esm/ui/PortalProvider/index.js +17 -61
  511. package/dist/esm/ui/UnsupportedBlock/index.js +5 -11
  512. package/dist/esm/ui/UnsupportedInline/index.js +5 -11
  513. package/dist/esm/ui/WidthProvider/index.js +1 -17
  514. package/dist/esm/ui/WithCreateAnalyticsEvent/index.js +2 -10
  515. package/dist/esm/ui/clear-next-sibling-margin-top.js +2 -3
  516. package/dist/esm/ui/unsupported-content-helper.js +0 -4
  517. package/dist/esm/ui/with-outer-listeners.js +0 -15
  518. package/dist/esm/ui-color/ColorPalette/Color/index.js +12 -27
  519. package/dist/esm/ui-color/ColorPalette/Color/styles.js +1 -6
  520. package/dist/esm/ui-color/ColorPalette/Palettes/common.js +5 -7
  521. package/dist/esm/ui-color/ColorPalette/Palettes/getColorMessage.js +0 -2
  522. package/dist/esm/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +2 -4
  523. package/dist/esm/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +0 -5
  524. package/dist/esm/ui-color/ColorPalette/Palettes/statusColorPalette.js +0 -2
  525. package/dist/esm/ui-color/ColorPalette/Palettes/textColorPalette.js +2 -3
  526. package/dist/esm/ui-color/ColorPalette/index.js +16 -24
  527. package/dist/esm/ui-color/ColorPalette/styles.js +0 -2
  528. package/dist/esm/ui-menu/Dropdown/index.js +14 -27
  529. package/dist/esm/ui-menu/DropdownMenu/index.js +23 -56
  530. package/dist/esm/ui-menu/MenuArrowKeyNavigationProvider/index.js +16 -42
  531. package/dist/esm/ui-menu/ToolbarButton/index.js +23 -32
  532. package/dist/esm/ui-react/with-react-editor-view-outer-listeners.js +9 -38
  533. package/dist/esm/utils/analytics.js +0 -8
  534. package/dist/esm/utils/annotation/index.js +5 -9
  535. package/dist/esm/utils/breakout.js +8 -15
  536. package/dist/esm/utils/browser-extensions.js +28 -55
  537. package/dist/esm/utils/browser.js +0 -2
  538. package/dist/esm/utils/builder.js +0 -4
  539. package/dist/esm/utils/collab.js +0 -2
  540. package/dist/esm/utils/compare-props.js +10 -15
  541. package/dist/esm/utils/compareNodes.js +7 -48
  542. package/dist/esm/utils/compose.js +0 -1
  543. package/dist/esm/utils/date.js +4 -11
  544. package/dist/esm/utils/dom.js +6 -19
  545. package/dist/esm/utils/editor-core-utils.js +8 -13
  546. package/dist/esm/utils/error-reporter.js +0 -5
  547. package/dist/esm/utils/get-performance-options.js +7 -7
  548. package/dist/esm/utils/imageLoader.js +0 -18
  549. package/dist/esm/utils/is-text-input.js +5 -6
  550. package/dist/esm/utils/list.js +3 -7
  551. package/dist/esm/utils/macro.js +1 -5
  552. package/dist/esm/utils/nodes.js +5 -13
  553. package/dist/esm/utils/outdated-browsers.js +0 -8
  554. package/dist/esm/utils/performance/hooks/use-component-render-tracking/index.js +4 -10
  555. package/dist/esm/utils/performance/is-performance-api-available.js +0 -1
  556. package/dist/esm/utils/performance/measure-render.js +2 -9
  557. package/dist/esm/utils/performance/measure-tti.js +3 -12
  558. package/dist/esm/utils/performance/measure.js +0 -6
  559. package/dist/esm/utils/performance/navigation.js +0 -3
  560. package/dist/esm/utils/plugin-state-factory.js +3 -10
  561. package/dist/esm/utils/profiler/render-count.js +4 -21
  562. package/dist/esm/utils/referentiality.js +30 -80
  563. package/dist/esm/utils/should-force-tracking.js +4 -4
  564. package/dist/esm/utils/slice.js +1 -10
  565. package/dist/esm/utils/table.js +4 -8
  566. package/dist/esm/utils/track-unsupported-content.js +14 -31
  567. package/dist/esm/utils/traversor.js +0 -13
  568. package/dist/esm/utils/unsupportedContent/get-unsupported-content-level-data.js +5 -18
  569. package/dist/esm/utils/validate-using-spec.js +5 -29
  570. package/dist/esm/utils/validator.js +26 -170
  571. package/dist/esm/version.json +1 -1
  572. package/dist/esm/with-plugin-state/index.js +7 -55
  573. package/package.json +4 -4
@@ -1,6 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
-
4
3
  /** @jsx jsx */
5
4
  import React, { PureComponent } from 'react';
6
5
  import { css, jsx } from '@emotion/react';
@@ -23,7 +22,6 @@ const focusedMenuItemStyle = css`
23
22
  box-shadow: inset 0px 0px 0px 2px ${`var(--ds-border-focused, ${B100})`};
24
23
  outline: none;
25
24
  `;
26
-
27
25
  const buttonStyles = isActive => theme => {
28
26
  if (isActive) {
29
27
  /**
@@ -80,47 +78,40 @@ const buttonStyles = isActive => theme => {
80
78
  };
81
79
 
82
80
  const DropListWithOutsideListeners = withReactEditorViewOuterListeners(DropList);
81
+
83
82
  /**
84
83
  * Wrapper around @atlaskit/droplist which uses Popup and Portal to render
85
84
  * dropdown-menu outside of "overflow: hidden" containers when needed.
86
85
  *
87
86
  * Also it controls popper's placement.
88
87
  */
89
-
90
88
  export default class DropdownMenuWrapper extends PureComponent {
91
89
  constructor(...args) {
92
90
  super(...args);
93
-
94
91
  _defineProperty(this, "state", {
95
92
  popupPlacement: ['bottom', 'left'],
96
93
  selectionIndex: -1
97
94
  });
98
-
99
95
  _defineProperty(this, "handleRef", target => {
100
96
  this.setState({
101
97
  target: target || undefined
102
98
  });
103
99
  });
104
-
105
100
  _defineProperty(this, "updatePopupPlacement", placement => {
106
101
  const {
107
102
  popupPlacement: previousPlacement
108
103
  } = this.state;
109
-
110
104
  if (placement[0] !== previousPlacement[0] || placement[1] !== previousPlacement[1]) {
111
105
  this.setState({
112
106
  popupPlacement: placement
113
107
  });
114
108
  }
115
109
  });
116
-
117
110
  _defineProperty(this, "handleCloseAndFocus", () => {
118
111
  var _this$state$target, _this$state$target$qu;
119
-
120
112
  this.handleClose();
121
113
  (_this$state$target = this.state.target) === null || _this$state$target === void 0 ? void 0 : (_this$state$target$qu = _this$state$target.querySelector('button')) === null || _this$state$target$qu === void 0 ? void 0 : _this$state$target$qu.focus();
122
114
  });
123
-
124
115
  _defineProperty(this, "handleClose", () => {
125
116
  if (this.props.onOpenChange) {
126
117
  this.props.onOpenChange({
@@ -129,7 +120,6 @@ export default class DropdownMenuWrapper extends PureComponent {
129
120
  }
130
121
  });
131
122
  }
132
-
133
123
  renderDropdownMenu() {
134
124
  const {
135
125
  target,
@@ -166,7 +156,6 @@ export default class DropdownMenuWrapper extends PureComponent {
166
156
  keyDownHandlerContext: keyDownHandlerContext,
167
157
  onSelection: index => {
168
158
  let result = [];
169
-
170
159
  if (typeof onItemActivated === 'function') {
171
160
  result = items.reduce((result, group) => {
172
161
  return result.concat(group.items);
@@ -198,7 +187,6 @@ export default class DropdownMenuWrapper extends PureComponent {
198
187
  role: shouldUseDefaultRole ? 'group' : 'menu'
199
188
  }, group.items.map(item => {
200
189
  var _item$key;
201
-
202
190
  return jsx(DropdownMenuItem, {
203
191
  key: (_item$key = item.key) !== null && _item$key !== void 0 ? _item$key : String(item.content),
204
192
  item: item,
@@ -209,7 +197,6 @@ export default class DropdownMenuWrapper extends PureComponent {
209
197
  });
210
198
  }))))));
211
199
  }
212
-
213
200
  render() {
214
201
  const {
215
202
  children,
@@ -221,7 +208,6 @@ export default class DropdownMenuWrapper extends PureComponent {
221
208
  ref: this.handleRef
222
209
  }, children), isOpen ? this.renderDropdownMenu() : null);
223
210
  }
224
-
225
211
  }
226
212
  const DropdownMenuItemCustomComponent = /*#__PURE__*/React.forwardRef((props, ref) => {
227
213
  const {
@@ -232,7 +218,6 @@ const DropdownMenuItemCustomComponent = /*#__PURE__*/React.forwardRef((props, re
232
218
  ref: ref
233
219
  }, rest), children);
234
220
  });
235
-
236
221
  function DropdownMenuItem({
237
222
  item,
238
223
  onItemActivated,
@@ -241,7 +226,6 @@ function DropdownMenuItem({
241
226
  onMouseLeave
242
227
  }) {
243
228
  var _item$key2;
244
-
245
229
  // onClick and value.name are the action indicators in the handlers
246
230
  // If neither are present, don't wrap in an Item.
247
231
  if (!item.onClick && !(item.value && item.value.name)) {
@@ -249,7 +233,6 @@ function DropdownMenuItem({
249
233
  key: String(item.content)
250
234
  }, item.content);
251
235
  }
252
-
253
236
  const dropListItem = jsx("div", {
254
237
  css: theme => buttonStyles(item.isActive)({
255
238
  theme
@@ -281,16 +264,13 @@ function DropdownMenuItem({
281
264
  item
282
265
  })
283
266
  }, item.content));
284
-
285
267
  if (item.tooltipDescription) {
286
268
  var _item$key3;
287
-
288
269
  return jsx(Tooltip, {
289
270
  key: (_item$key3 = item.key) !== null && _item$key3 !== void 0 ? _item$key3 : String(item.content),
290
271
  content: item.tooltipDescription,
291
272
  position: item.tooltipPosition
292
273
  }, dropListItem);
293
274
  }
294
-
295
275
  return dropListItem;
296
276
  }
@@ -1,5 +1,4 @@
1
1
  import React, { useCallback, useLayoutEffect, useRef, useState } from 'react';
2
-
3
2
  /**
4
3
  * This component is a wrapper of vertical menus which listens to keydown events of children
5
4
  * and handles up/down arrow key navigation
@@ -16,24 +15,21 @@ export const MenuArrowKeyNavigationProvider = ({
16
15
  const [currentSelectedItemIndex, setCurrentSelectedItemIndex] = useState(-1);
17
16
  const incrementIndex = useCallback(list => {
18
17
  const currentIndex = currentSelectedItemIndex;
19
- let nextIndex = (currentIndex + 1) % list.length; // Skips disabled items. Previously this function relied on a list of enabled elements which caused a
18
+ let nextIndex = (currentIndex + 1) % list.length;
19
+ // Skips disabled items. Previously this function relied on a list of enabled elements which caused a
20
20
  // difference between currentIndex and the item index in the menu.
21
-
22
21
  while (nextIndex !== currentIndex && list[nextIndex].getAttribute('aria-disabled') === 'true') {
23
22
  nextIndex = (nextIndex + 1) % list.length;
24
23
  }
25
-
26
24
  setCurrentSelectedItemIndex(nextIndex);
27
25
  return nextIndex;
28
26
  }, [currentSelectedItemIndex]);
29
27
  const decrementIndex = useCallback(list => {
30
28
  const currentIndex = currentSelectedItemIndex;
31
29
  let nextIndex = (list.length + currentIndex - 1) % list.length;
32
-
33
30
  while (nextIndex !== currentIndex && list[nextIndex].getAttribute('aria-disabled') === 'true') {
34
31
  nextIndex = (list.length + nextIndex - 1) % list.length;
35
32
  }
36
-
37
33
  setCurrentSelectedItemIndex(nextIndex);
38
34
  return nextIndex;
39
35
  }, [currentSelectedItemIndex]);
@@ -41,99 +37,82 @@ export const MenuArrowKeyNavigationProvider = ({
41
37
  if (disableArrowKeyNavigation) {
42
38
  return;
43
39
  }
40
+
44
41
  /**
45
42
  * To handle the key events on the list
46
43
  * @param event
47
44
  */
48
-
49
-
50
45
  const handleKeyDown = event => {
51
46
  var _wrapperRef$current;
47
+ const targetElement = event.target;
52
48
 
53
- const targetElement = event.target; //Tab key on menu items can be handled in the parent components of dropdown menus with KeydownHandlerContext
54
-
49
+ //Tab key on menu items can be handled in the parent components of dropdown menus with KeydownHandlerContext
55
50
  if (event.key === 'Tab' && closeOnTab) {
56
51
  handleClose(event);
57
52
  keyDownHandlerContext === null || keyDownHandlerContext === void 0 ? void 0 : keyDownHandlerContext.handleTab();
58
53
  return;
59
- } //To trap the focus inside the toolbar using left and right arrow keys
60
-
54
+ }
61
55
 
56
+ //To trap the focus inside the toolbar using left and right arrow keys
62
57
  const focusableElements = getFocusableElements(wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current);
63
-
64
58
  if (!focusableElements || (focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) === 0) {
65
59
  return;
66
60
  }
67
-
68
61
  if (!((_wrapperRef$current = wrapperRef.current) !== null && _wrapperRef$current !== void 0 && _wrapperRef$current.contains(targetElement))) {
69
62
  setCurrentSelectedItemIndex(-1);
70
63
  }
71
-
72
64
  switch (event.key) {
73
65
  case 'ArrowDown':
74
66
  {
75
67
  var _focusableElements$fo;
76
-
77
68
  const focusIndex = incrementIndex(focusableElements);
78
69
  (_focusableElements$fo = focusableElements[focusIndex]) === null || _focusableElements$fo === void 0 ? void 0 : _focusableElements$fo.focus();
79
70
  event.preventDefault();
80
71
  break;
81
72
  }
82
-
83
73
  case 'ArrowUp':
84
74
  {
85
75
  var _focusableElements$fo2;
86
-
87
76
  const focusIndex = decrementIndex(focusableElements);
88
77
  (_focusableElements$fo2 = focusableElements[focusIndex]) === null || _focusableElements$fo2 === void 0 ? void 0 : _focusableElements$fo2.focus();
89
78
  event.preventDefault();
90
79
  break;
91
80
  }
81
+
92
82
  //ArrowLeft/Right on the menu should close the menus
93
83
  //then logic to retain the focus can be handled in the parent components with KeydownHandlerContext
94
-
95
84
  case 'ArrowLeft':
96
85
  //Filter out the events from outside the menu
97
86
  if (!targetElement.closest('.custom-key-handler-wrapper')) {
98
87
  return;
99
88
  }
100
-
101
89
  if (!targetElement.closest('[data-testid="editor-floating-toolbar"]')) {
102
90
  keyDownHandlerContext === null || keyDownHandlerContext === void 0 ? void 0 : keyDownHandlerContext.handleArrowLeft();
103
91
  }
104
-
105
92
  handleClose(event);
106
93
  break;
107
-
108
94
  case 'ArrowRight':
109
95
  //Filter out the events from outside the menu
110
96
  if (!targetElement.closest('.custom-key-handler-wrapper')) {
111
97
  return;
112
98
  }
113
-
114
99
  if (!targetElement.closest('[data-testid="editor-floating-toolbar"]')) {
115
100
  keyDownHandlerContext === null || keyDownHandlerContext === void 0 ? void 0 : keyDownHandlerContext.handleArrowRight();
116
101
  }
117
-
118
102
  handleClose(event);
119
103
  break;
120
-
121
104
  case 'Escape':
122
105
  handleClose(event);
123
106
  break;
124
-
125
107
  case 'Enter':
126
108
  if (typeof onSelection === 'function') {
127
109
  onSelection(currentSelectedItemIndex);
128
110
  }
129
-
130
111
  break;
131
-
132
112
  default:
133
113
  return;
134
114
  }
135
115
  };
136
-
137
116
  document.addEventListener('keydown', handleKeyDown);
138
117
  return () => {
139
118
  document.removeEventListener('keydown', handleKeyDown);
@@ -144,12 +123,10 @@ export const MenuArrowKeyNavigationProvider = ({
144
123
  ref: wrapperRef
145
124
  }, children);
146
125
  };
147
-
148
126
  function getFocusableElements(rootNode) {
149
127
  if (!rootNode) {
150
128
  return [];
151
129
  }
152
-
153
130
  const focusableModalElements = rootNode.querySelectorAll('a[href], button:not([disabled]), textarea, input, select, div[tabindex="-1"]') || [];
154
131
  return Array.from(focusableModalElements);
155
132
  }
@@ -39,20 +39,18 @@ const ToolbarButton = /*#__PURE__*/React.forwardRef((props, ref) => {
39
39
  if (disabled) {
40
40
  return;
41
41
  }
42
-
43
42
  if (buttonId) {
44
- analyticsEvent.update(payload => ({ ...payload,
43
+ analyticsEvent.update(payload => ({
44
+ ...payload,
45
45
  action: ACTION.CLICKED,
46
46
  actionSubject: ACTION_SUBJECT.TOOLBAR_BUTTON,
47
47
  actionSubjectId: buttonId,
48
48
  eventType: EVENT_TYPE.UI
49
49
  })).fire(FabricChannel.editor);
50
50
  }
51
-
52
51
  if (onClick) {
53
52
  onClick(event);
54
53
  }
55
-
56
54
  if (item && onItemClick) {
57
55
  onItemClick(item);
58
56
  }
@@ -79,11 +77,9 @@ const ToolbarButton = /*#__PURE__*/React.forwardRef((props, ref) => {
79
77
  "aria-pressed": ariaPressed,
80
78
  "aria-keyshortcuts": ariaKeyShortcuts
81
79
  }, children);
82
-
83
80
  if (!title) {
84
81
  return button;
85
82
  }
86
-
87
83
  const tooltipContent = !hideTooltip ? title : null;
88
84
  return jsx(Tooltip, {
89
85
  content: tooltipContent,
@@ -2,43 +2,35 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import React, { PureComponent } from 'react';
3
3
  import ReactDOM from 'react-dom';
4
4
  import ReactEditorViewContext from './ReactEditorViewContext';
5
-
6
5
  class WithOutsideClick extends PureComponent {
7
6
  constructor(...args) {
8
7
  super(...args);
9
-
10
8
  _defineProperty(this, "handleClick", evt => {
11
9
  if (!this.props.isActiveComponent) {
12
10
  return;
13
11
  }
14
-
15
12
  const domNode = ReactDOM.findDOMNode(this); // eslint-disable-line react/no-find-dom-node
16
-
17
13
  if (!domNode || evt.target instanceof Node && !domNode.contains(evt.target)) {
18
14
  if (this.props.handleClickOutside) {
19
15
  var _this$props$editorVie;
20
-
21
- this.props.handleClickOutside(evt); //When the menus are closed by clicking outside the focus is set on editor.
22
-
16
+ this.props.handleClickOutside(evt);
17
+ //When the menus are closed by clicking outside the focus is set on editor.
23
18
  if (!((_this$props$editorVie = this.props.editorView) !== null && _this$props$editorVie !== void 0 && _this$props$editorVie.hasFocus())) {
24
19
  var _this$props$editorVie2;
25
-
26
20
  (_this$props$editorVie2 = this.props.editorView) === null || _this$props$editorVie2 === void 0 ? void 0 : _this$props$editorVie2.focus();
27
21
  }
28
22
  }
29
23
  }
30
24
  });
31
-
32
25
  _defineProperty(this, "handleKeydown", evt => {
33
26
  if (!this.props.isActiveComponent) {
34
27
  return;
35
28
  }
36
-
37
29
  if (evt.code === 'Escape' && this.props.handleEscapeKeydown) {
38
30
  evt.preventDefault();
39
31
  evt.stopPropagation();
40
- this.props.handleEscapeKeydown(evt); //on 'Esc', Focus is handled in 'handleEscapeKeydown'.
41
-
32
+ this.props.handleEscapeKeydown(evt);
33
+ //on 'Esc', Focus is handled in 'handleEscapeKeydown'.
42
34
  return false;
43
35
  } else if (evt.code === 'Enter' && this.props.handleEnterKeydown) {
44
36
  this.props.handleEnterKeydown(evt);
@@ -48,42 +40,32 @@ class WithOutsideClick extends PureComponent {
48
40
  }
49
41
  });
50
42
  }
51
-
52
43
  componentDidMount() {
53
44
  if (this.props.handleClickOutside) {
54
45
  document.addEventListener('click', this.handleClick, false);
55
46
  }
56
-
57
47
  if (this.props.handleEscapeKeydown) {
58
48
  var _this$props$editorRef;
59
-
60
49
  //Attached event to the menu so that 'ESC' events from the opened menu also will be handled.
61
50
  (((_this$props$editorRef = this.props.editorRef) === null || _this$props$editorRef === void 0 ? void 0 : _this$props$editorRef.current) || this.props.targetRef || document).addEventListener('keydown', this.handleKeydown, false);
62
51
  }
63
52
  }
64
-
65
53
  componentWillUnmount() {
66
54
  if (this.props.handleClickOutside) {
67
55
  document.removeEventListener('click', this.handleClick, false);
68
56
  }
69
-
70
57
  if (this.props.handleEscapeKeydown) {
71
58
  var _this$props$editorRef2;
72
-
73
59
  (((_this$props$editorRef2 = this.props.editorRef) === null || _this$props$editorRef2 === void 0 ? void 0 : _this$props$editorRef2.current) || this.props.targetRef || document).removeEventListener('keydown', this.handleKeydown, false);
74
60
  }
75
61
  }
76
-
77
62
  render() {
78
63
  return this.props.children;
79
64
  }
80
-
81
65
  }
82
-
83
66
  function hasIsOpen(props) {
84
67
  return 'isOpen' in props;
85
68
  }
86
-
87
69
  export default function withReactEditorViewOuterListeners(Component) {
88
70
  return ({
89
71
  handleClickOutside,
@@ -3,16 +3,12 @@ export const getAnalyticsAppearance = appearance => {
3
3
  switch (appearance) {
4
4
  case 'full-page':
5
5
  return EDITOR_APPEARANCE_CONTEXT.FIXED_WIDTH;
6
-
7
6
  case 'full-width':
8
7
  return EDITOR_APPEARANCE_CONTEXT.FULL_WIDTH;
9
-
10
8
  case 'comment':
11
9
  return EDITOR_APPEARANCE_CONTEXT.COMMENT;
12
-
13
10
  case 'chromeless':
14
11
  return EDITOR_APPEARANCE_CONTEXT.CHROMELESS;
15
-
16
12
  case 'mobile':
17
13
  return EDITOR_APPEARANCE_CONTEXT.MOBILE;
18
14
  }
@@ -21,20 +17,16 @@ export const getAnalyticsEventSeverity = (duration, normalThreshold, degradedThr
21
17
  if (duration > normalThreshold && duration <= degradedThreshold) {
22
18
  return SEVERITY.DEGRADED;
23
19
  }
24
-
25
20
  if (duration > degradedThreshold) {
26
21
  return SEVERITY.BLOCKING;
27
22
  }
28
-
29
23
  return SEVERITY.NORMAL;
30
24
  };
31
25
  export let SEVERITY;
32
-
33
26
  (function (SEVERITY) {
34
27
  SEVERITY["NORMAL"] = "normal";
35
28
  SEVERITY["DEGRADED"] = "degraded";
36
29
  SEVERITY["BLOCKING"] = "blocking";
37
30
  })(SEVERITY || (SEVERITY = {}));
38
-
39
31
  export { UNSUPPORTED_CONTENT_LEVEL_SEVERITY, getUnsupportedContentLevelData, UNSUPPORTED_CONTENT_LEVEL_SEVERITY_THRESHOLD_DEFAULTS } from './unsupportedContent/get-unsupported-content-level-data';
40
32
  export const analyticsEventKey = 'EDITOR_ANALYTICS_EVENT';
@@ -3,26 +3,23 @@ export const canApplyAnnotationOnRange = (rangeSelection, doc, schema) => {
3
3
  from,
4
4
  to
5
5
  } = rangeSelection;
6
-
7
6
  if (isNaN(from + to) || to - from <= 0 || to < 0 || from < 0) {
8
7
  return false;
9
8
  }
10
-
11
9
  let foundInvalid = false;
12
10
  doc.nodesBetween(rangeSelection.from, rangeSelection.to, (node, _pos, parent) => {
13
11
  // Special exception for hardBreak nodes
14
12
  if (schema.nodes.hardBreak === node.type) {
15
13
  return false;
16
- } // For block elements or text nodes, we want to check
14
+ }
15
+
16
+ // For block elements or text nodes, we want to check
17
17
  // if annotations are allowed inside this tree
18
18
  // or if we're leaf and not text
19
-
20
-
21
19
  if (node.isInline && !node.isText || node.isLeaf && !node.isText || node.isText && !parent.type.allowsMarkType(schema.marks.annotation)) {
22
20
  foundInvalid = true;
23
21
  return false;
24
22
  }
25
-
26
23
  return true;
27
24
  });
28
25
  return !foundInvalid;
@@ -37,7 +34,6 @@ export const getAnnotationIdsFromRange = (rangeSelection, doc, schema) => {
37
34
  if (!node.marks) {
38
35
  return true;
39
36
  }
40
-
41
37
  node.marks.forEach(mark => {
42
38
  if (mark.type === schema.marks.annotation && mark.attrs) {
43
39
  annotations.add(mark.attrs.id);
@@ -2,12 +2,12 @@ import { akEditorBreakoutPadding, akEditorDefaultLayoutWidth, akEditorFullWidthL
2
2
  import { mapBreakpointToLayoutMaxWidth } from '../ui/BaseTheme';
3
3
  import { getBreakpoint } from '../ui/WidthProvider';
4
4
  import { parsePx } from './dom';
5
+
5
6
  /**
6
7
  * Variables required to construct a context for breakout ssr inline script.
7
8
  *
8
9
  * TODO: Clean this up after: https://product-fabric.atlassian.net/browse/ED-8942
9
10
  */
10
-
11
11
  const breakoutConsts = {
12
12
  padding: akEditorBreakoutPadding,
13
13
  defaultLayoutWidth: akEditorDefaultLayoutWidth,
@@ -16,21 +16,17 @@ const breakoutConsts = {
16
16
  wideLayoutWidth: akEditorWideLayoutWidth,
17
17
  mapBreakpointToLayoutMaxWidth,
18
18
  getBreakpoint,
19
-
20
19
  /**
21
20
  * Consumers are opinionated that this will always return a string ending in
22
21
  * `px` when called with `full-width` or `wide` as the layout parameter.
23
22
  */
24
23
  calcBreakoutWidth: (layout, containerWidth) => {
25
24
  const effectiveFullWidth = containerWidth - breakoutConsts.padding;
26
-
27
25
  switch (layout) {
28
26
  case 'full-width':
29
27
  return `${Math.min(effectiveFullWidth, breakoutConsts.fullWidthLayoutWidth)}px`;
30
-
31
28
  case 'wide':
32
29
  return breakoutConsts.calcWideWidth(containerWidth);
33
-
34
30
  default:
35
31
  return '100%';
36
32
  }
@@ -44,21 +40,19 @@ const breakoutConsts = {
44
40
  }
45
41
  };
46
42
  export const absoluteBreakoutWidth = (layout, containerWidth) => {
47
- const breakoutWidth = breakoutConsts.calcBreakoutWidth(layout, containerWidth); // If it's percent, map to max layout size
43
+ const breakoutWidth = breakoutConsts.calcBreakoutWidth(layout, containerWidth);
48
44
 
45
+ // If it's percent, map to max layout size
49
46
  if (breakoutWidth.endsWith('%')) {
50
47
  switch (layout) {
51
48
  case 'full-width':
52
49
  return akEditorFullWidthLayoutWidth;
53
-
54
50
  case 'wide':
55
51
  return akEditorWideLayoutWidth;
56
-
57
52
  default:
58
53
  return breakoutConsts.mapBreakpointToLayoutMaxWidth(breakoutConsts.getBreakpoint(containerWidth));
59
54
  }
60
55
  }
61
-
62
56
  return parseInt(breakoutWidth, 10);
63
57
  };
64
58
  export { breakoutConsts };
@@ -71,7 +65,6 @@ export function calculateBreakoutStyles({
71
65
  }) {
72
66
  const breakoutWidth = calcBreakoutWidth(mode, widthStateWidth);
73
67
  const breakoutWidthPx = parsePx(breakoutWidth);
74
-
75
68
  if (!widthStateLineLength) {
76
69
  // lineLength is not normally undefined when this is run for,
77
70
  // consumers but can be in SSR, initial render or test (jsdom)
@@ -87,13 +80,13 @@ export function calculateBreakoutStyles({
87
80
  transform: 'translateX(-50%)',
88
81
  marginLeft: '50%'
89
82
  };
90
- } // NOTE
83
+ }
84
+
85
+ // NOTE
91
86
  // At time of writing -- when toggling between full-width and
92
87
  // full-page appearance modes. There is a slight delay before
93
88
  // the widthState is updated.
94
89
  // During this period -- the marginLeftPx will be incorrect.
95
-
96
-
97
90
  const marginLeftPx = -(breakoutWidthPx - widthStateLineLength) / 2;
98
91
  return {
99
92
  type: 'line-length-known',