@atlaskit/editor-common 72.1.2 → 72.2.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 (583) hide show
  1. package/CHANGELOG.md +21 -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 +1 -16
  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 +15 -39
  202. package/dist/cjs/ui-menu/DropdownMenu/index.js +43 -79
  203. package/dist/cjs/ui-menu/MenuArrowKeyNavigationProvider/index.js +66 -82
  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 +12 -52
  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 +1 -16
  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 +1 -8
  362. package/dist/es2019/ui-menu/DropdownMenu/index.js +23 -27
  363. package/dist/es2019/ui-menu/MenuArrowKeyNavigationProvider/index.js +59 -73
  364. package/dist/es2019/ui-menu/ToolbarButton/index.js +2 -6
  365. package/dist/es2019/ui-react/with-react-editor-view-outer-listeners.js +7 -25
  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 +1 -16
  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 +15 -28
  529. package/dist/esm/ui-menu/DropdownMenu/index.js +43 -60
  530. package/dist/esm/ui-menu/MenuArrowKeyNavigationProvider/index.js +66 -78
  531. package/dist/esm/ui-menu/ToolbarButton/index.js +23 -32
  532. package/dist/esm/ui-react/with-react-editor-view-outer-listeners.js +12 -41
  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/dist/types/analytics/types/enums.d.ts +1 -1
  574. package/dist/types/analytics/types/events.d.ts +3 -2
  575. package/dist/types/analytics/types/general-events.d.ts +8 -3
  576. package/dist/types/types/editor-plugin.d.ts +24 -2
  577. package/dist/types/types/floating-toolbar.d.ts +10 -0
  578. package/dist/types/types/type-ahead.d.ts +8 -0
  579. package/dist/types/ui-menu/DropdownMenu/index.d.ts +1 -1
  580. package/dist/types/ui-menu/DropdownMenu/types.d.ts +1 -0
  581. package/dist/types/ui-menu/MenuArrowKeyNavigationProvider/index.d.ts +3 -2
  582. package/dist/types/ui-react/with-react-editor-view-outer-listeners.d.ts +1 -1
  583. package/package.json +8 -8
@@ -4,51 +4,44 @@ export class RenderCountProfiler {
4
4
  * The singleton/cached instance of RenderCountProfiler that will be shared
5
5
  * betweenRenderCountProfiler.getInstance() calls
6
6
  */
7
+
7
8
  constructor({
8
9
  store
9
10
  }) {
10
11
  this.store = store;
11
12
  }
13
+
12
14
  /**
13
15
  * Returns the singleton/cached instance of RenderCountProfiler that
14
16
  * currently exists. If it hasn't been instantiated yet, the singleton
15
17
  * instance will be created using the given params. Returns the latest
16
18
  * singleton/instance.
17
19
  */
18
-
19
-
20
20
  static getInstance(params) {
21
21
  if (!RenderCountProfiler.instance) {
22
22
  RenderCountProfiler.instance = new RenderCountProfiler({
23
23
  store: params.store
24
24
  });
25
25
  }
26
-
27
26
  return RenderCountProfiler.instance;
28
27
  }
29
-
30
28
  getData(profilerKey) {
31
29
  var _this$store;
32
-
33
30
  return (_this$store = this.store) === null || _this$store === void 0 ? void 0 : _this$store[profilerKey];
34
31
  }
35
-
36
32
  enable() {
37
- this.store[PROFILER_KEY] = { ...this.store[PROFILER_KEY],
33
+ this.store[PROFILER_KEY] = {
34
+ ...this.store[PROFILER_KEY],
38
35
  enabled: true
39
36
  };
40
37
  }
41
-
42
38
  remove() {
43
39
  delete this.store[PROFILER_KEY];
44
40
  }
45
-
46
41
  isEnabled() {
47
42
  var _this$store2, _this$store2$PROFILER;
48
-
49
43
  return Boolean((_this$store2 = this.store) === null || _this$store2 === void 0 ? void 0 : (_this$store2$PROFILER = _this$store2[PROFILER_KEY]) === null || _this$store2$PROFILER === void 0 ? void 0 : _this$store2$PROFILER.enabled);
50
44
  }
51
-
52
45
  setRenderCount({
53
46
  componentId,
54
47
  renderCount,
@@ -60,24 +53,24 @@ export class RenderCountProfiler {
60
53
  };
61
54
  const existingComponents = profilerData === null || profilerData === void 0 ? void 0 : profilerData.components;
62
55
  const existingInstances = existingComponents === null || existingComponents === void 0 ? void 0 : existingComponents[componentId];
63
- const updatedComponent = { ...existingInstances,
56
+ const updatedComponent = {
57
+ ...existingInstances,
64
58
  [instanceId]: instance
65
59
  };
66
- this.store[PROFILER_KEY] = { ...profilerData,
67
- components: { ...existingComponents,
60
+ this.store[PROFILER_KEY] = {
61
+ ...profilerData,
62
+ components: {
63
+ ...existingComponents,
68
64
  [componentId]: updatedComponent
69
65
  }
70
66
  };
71
67
  }
72
-
73
68
  getInstanceRenderCounters({
74
69
  componentId
75
70
  }) {
76
71
  var _this$store$PROFILER_, _this$store3, _this$store3$PROFILER, _this$store3$PROFILER2;
77
-
78
72
  const component = (_this$store$PROFILER_ = (_this$store3 = this.store) === null || _this$store3 === void 0 ? void 0 : (_this$store3$PROFILER = _this$store3[PROFILER_KEY]) === null || _this$store3$PROFILER === void 0 ? void 0 : (_this$store3$PROFILER2 = _this$store3$PROFILER.components) === null || _this$store3$PROFILER2 === void 0 ? void 0 : _this$store3$PROFILER2[componentId]) !== null && _this$store$PROFILER_ !== void 0 ? _this$store$PROFILER_ : {};
79
73
  const counters = [];
80
-
81
74
  for (let instanceId in component) {
82
75
  const counter = {
83
76
  instanceId,
@@ -85,23 +78,17 @@ export class RenderCountProfiler {
85
78
  };
86
79
  counters.push(counter);
87
80
  }
88
-
89
81
  return counters;
90
82
  }
91
-
92
83
  getRenderCount({
93
84
  componentId
94
85
  }) {
95
86
  var _this$store$PROFILER_2, _this$store4, _this$store4$PROFILER, _this$store4$PROFILER2;
96
-
97
87
  const component = (_this$store$PROFILER_2 = (_this$store4 = this.store) === null || _this$store4 === void 0 ? void 0 : (_this$store4$PROFILER = _this$store4[PROFILER_KEY]) === null || _this$store4$PROFILER === void 0 ? void 0 : (_this$store4$PROFILER2 = _this$store4$PROFILER.components) === null || _this$store4$PROFILER2 === void 0 ? void 0 : _this$store4$PROFILER2[componentId]) !== null && _this$store$PROFILER_2 !== void 0 ? _this$store$PROFILER_2 : {};
98
88
  let total = 0;
99
-
100
89
  for (let instanceId in component) {
101
90
  total += component[instanceId].count;
102
91
  }
103
-
104
92
  return total;
105
93
  }
106
-
107
94
  }
@@ -1,53 +1,48 @@
1
1
  export const isReferencedSource = (state, node) => {
2
2
  var _node$attrs, _node$marks, _node$marks$find, _node$marks$find$attr;
3
-
4
3
  if (!node) {
5
4
  return false;
6
5
  }
6
+ let found = false;
7
7
 
8
- let found = false; // Handle nodes having 2 uuids. They could have a localId or a fragment. Regardless this needs
8
+ // Handle nodes having 2 uuids. They could have a localId or a fragment. Regardless this needs
9
9
  // to check if either id is used by a data consumer.
10
+ const localIds = new Set([(_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.localId, (_node$marks = node.marks) === null || _node$marks === void 0 ? void 0 : (_node$marks$find = _node$marks.find(mark => mark.type === state.schema.marks.fragment)) === null || _node$marks$find === void 0 ? void 0 : (_node$marks$find$attr = _node$marks$find.attrs) === null || _node$marks$find$attr === void 0 ? void 0 : _node$marks$find$attr.localId].filter(Boolean));
10
11
 
11
- const localIds = new Set([(_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.localId, (_node$marks = node.marks) === null || _node$marks === void 0 ? void 0 : (_node$marks$find = _node$marks.find(mark => mark.type === state.schema.marks.fragment)) === null || _node$marks$find === void 0 ? void 0 : (_node$marks$find$attr = _node$marks$find.attrs) === null || _node$marks$find$attr === void 0 ? void 0 : _node$marks$find$attr.localId].filter(Boolean)); // If there are no uuids on the node then it's not possible for it to be referenced anywhere.
12
-
12
+ // If there are no uuids on the node then it's not possible for it to be referenced anywhere.
13
13
  if (!localIds.size) {
14
14
  return false;
15
15
  }
16
-
17
16
  state.doc.descendants(node => {
18
17
  var _dataConsumer$attrs$s, _dataConsumer$attrs$s2;
19
-
20
18
  if (found) {
21
19
  return false;
22
20
  }
23
-
24
21
  const dataConsumer = node.marks.find(mark => mark.type === state.schema.marks.dataConsumer);
25
-
26
22
  if (!dataConsumer) {
27
23
  return true;
28
24
  }
29
-
30
25
  found = (_dataConsumer$attrs$s = (_dataConsumer$attrs$s2 = dataConsumer.attrs.sources) === null || _dataConsumer$attrs$s2 === void 0 ? void 0 : _dataConsumer$attrs$s2.some(src => localIds.has(src))) !== null && _dataConsumer$attrs$s !== void 0 ? _dataConsumer$attrs$s : false;
31
26
  return !found;
32
27
  });
33
28
  return found;
34
29
  };
35
-
36
30
  const getConnections = state => {
37
31
  const result = {};
38
32
  const {
39
33
  doc,
40
34
  schema
41
- } = state; // Keeps a map of all raw ids -> to their preferred normalised varient. A node with both fragmentMark & localId will
42
- // have both ids mapped here to the same normalized version.
35
+ } = state;
43
36
 
37
+ // Keeps a map of all raw ids -> to their preferred normalised varient. A node with both fragmentMark & localId will
38
+ // have both ids mapped here to the same normalized version.
44
39
  const normalizedIds = new Map();
45
- const dataConsumerSources = new Map(); // Perform a prelim scan creating the initial id to connection link mappings.
46
- // This will also save a list of data sources consumed per node.
40
+ const dataConsumerSources = new Map();
47
41
 
42
+ // Perform a prelim scan creating the initial id to connection link mappings.
43
+ // This will also save a list of data sources consumed per node.
48
44
  doc.descendants((node, pos) => {
49
45
  var _node$attrs2, _fragmentMark$attrs$l, _fragmentMark, _fragmentMark$attrs, _node$attrs3, _fragmentMark2, _fragmentMark2$attrs, _node$attrs4, _fragmentMark$attrs$n, _fragmentMark3, _fragmentMark3$attrs;
50
-
51
46
  let dataConsumer;
52
47
  let fragmentMark;
53
48
  node.marks.some(mark => {
@@ -55,35 +50,30 @@ const getConnections = state => {
55
50
  dataConsumer = mark;
56
51
  } else if (mark.type === schema.marks.fragment) {
57
52
  fragmentMark = mark;
58
- } // Stop searching marks if we've found both consumer and fragment.
59
-
53
+ }
60
54
 
55
+ // Stop searching marks if we've found both consumer and fragment.
61
56
  return !!dataConsumer && !!fragmentMark;
62
- }); // If node cannot be referenced by any means then abort.
57
+ });
63
58
 
59
+ // If node cannot be referenced by any means then abort.
64
60
  if (!fragmentMark && !((_node$attrs2 = node.attrs) !== null && _node$attrs2 !== void 0 && _node$attrs2.localId)) {
65
61
  return true;
66
62
  }
67
-
68
63
  const normalizedId = (_fragmentMark$attrs$l = (_fragmentMark = fragmentMark) === null || _fragmentMark === void 0 ? void 0 : (_fragmentMark$attrs = _fragmentMark.attrs) === null || _fragmentMark$attrs === void 0 ? void 0 : _fragmentMark$attrs.localId) !== null && _fragmentMark$attrs$l !== void 0 ? _fragmentMark$attrs$l : (_node$attrs3 = node.attrs) === null || _node$attrs3 === void 0 ? void 0 : _node$attrs3.localId;
69
-
70
64
  if (!normalizedId) {
71
65
  return true;
72
66
  }
73
-
74
67
  if (!!((_fragmentMark2 = fragmentMark) !== null && _fragmentMark2 !== void 0 && (_fragmentMark2$attrs = _fragmentMark2.attrs) !== null && _fragmentMark2$attrs !== void 0 && _fragmentMark2$attrs.localId)) {
75
68
  normalizedIds.set(fragmentMark.attrs.localId, normalizedId);
76
69
  }
77
-
78
70
  if (!!((_node$attrs4 = node.attrs) !== null && _node$attrs4 !== void 0 && _node$attrs4.localId)) {
79
71
  normalizedIds.set(node.attrs.localId, normalizedId);
80
72
  }
81
-
82
73
  if (!!result[normalizedId]) {
83
74
  // Duplicate ID has been found, we'll care about the first one for now.
84
75
  return true;
85
76
  }
86
-
87
77
  result[normalizedId] = {
88
78
  localId: normalizedId,
89
79
  name: (_fragmentMark$attrs$n = (_fragmentMark3 = fragmentMark) === null || _fragmentMark3 === void 0 ? void 0 : (_fragmentMark3$attrs = _fragmentMark3.attrs) === null || _fragmentMark3$attrs === void 0 ? void 0 : _fragmentMark3$attrs.name) !== null && _fragmentMark$attrs$n !== void 0 ? _fragmentMark$attrs$n : normalizedId,
@@ -91,46 +81,40 @@ const getConnections = state => {
91
81
  pos,
92
82
  targets: []
93
83
  };
94
-
95
84
  if (!!dataConsumer && dataConsumer.attrs.sources.length) {
96
85
  dataConsumerSources.set(normalizedId, dataConsumer.attrs.sources);
97
- } // Do not descend into children of a node which has a dataConsumer attached. This assumes all children of the node cannot
98
- // be referenced by another node.
99
-
86
+ }
100
87
 
88
+ // Do not descend into children of a node which has a dataConsumer attached. This assumes all children of the node cannot
89
+ // be referenced by another node.
101
90
  return !dataConsumer;
102
- }); // This 2nd-pass only looks at the consumer sources and updates all connections with the correct id refs.
91
+ });
103
92
 
93
+ // This 2nd-pass only looks at the consumer sources and updates all connections with the correct id refs.
104
94
  for (const [localId, sources] of dataConsumerSources) {
105
95
  // This is a ref to the node (connection link) which contains the consumer.
96
+
106
97
  sources.forEach(src => {
107
98
  var _normalizedIds$get;
108
-
109
99
  const normalizedId = (_normalizedIds$get = normalizedIds.get(src)) !== null && _normalizedIds$get !== void 0 ? _normalizedIds$get : src;
110
100
  const srcLink = result[normalizedId];
111
-
112
101
  if (srcLink && normalizedId !== localId) {
113
102
  srcLink.targets.push(localId);
114
103
  }
115
104
  });
116
105
  }
117
-
118
106
  return result;
119
107
  };
120
-
121
108
  export const removeConnectedNodes = (state, node) => {
122
109
  if (!node) {
123
110
  return state.tr;
124
111
  }
125
-
126
112
  const selectedLocalIds = getSelectedLocalIds(state, node);
127
113
  const allNodes = getConnections(state);
128
114
  const idsToBeDeleted = getIdsToBeDeleted(selectedLocalIds, allNodes);
129
-
130
115
  if (!(idsToBeDeleted !== null && idsToBeDeleted !== void 0 && idsToBeDeleted.length)) {
131
116
  return state.tr;
132
117
  }
133
-
134
118
  const {
135
119
  tr
136
120
  } = state;
@@ -139,7 +123,6 @@ export const removeConnectedNodes = (state, node) => {
139
123
  if (!allNodes[id]) {
140
124
  return;
141
125
  }
142
-
143
126
  const {
144
127
  node,
145
128
  pos
@@ -147,40 +130,34 @@ export const removeConnectedNodes = (state, node) => {
147
130
  newTr = newTr.delete(newTr.mapping.map(pos), newTr.mapping.map(node.nodeSize + pos));
148
131
  });
149
132
  return newTr;
150
- }; // find all ids need to be remove connected to selected extension
133
+ };
151
134
 
135
+ // find all ids need to be remove connected to selected extension
152
136
  const getIdsToBeDeleted = (selectedIds, allNodes) => {
153
137
  if (!selectedIds.size) {
154
138
  return [];
155
139
  }
156
-
157
140
  let searchSet = [...selectedIds];
158
141
  const deletedIds = new Set();
159
-
160
142
  while (searchSet.length) {
161
143
  const id = searchSet.pop();
162
-
163
144
  if (allNodes[id]) {
164
145
  var _allNodes$id$targets$, _allNodes$id;
165
-
166
146
  deletedIds.add(allNodes[id].localId);
167
147
  searchSet = searchSet.concat((_allNodes$id$targets$ = (_allNodes$id = allNodes[id]) === null || _allNodes$id === void 0 ? void 0 : _allNodes$id.targets.filter(targetId => {
168
148
  var _allNodes$targetId;
169
-
170
149
  return !deletedIds.has((_allNodes$targetId = allNodes[targetId]) === null || _allNodes$targetId === void 0 ? void 0 : _allNodes$targetId.localId);
171
150
  })) !== null && _allNodes$id$targets$ !== void 0 ? _allNodes$id$targets$ : []);
172
151
  }
173
152
  }
174
-
175
153
  return Array.from(deletedIds);
176
- }; // for get children info for confirmation dialog
177
-
154
+ };
178
155
 
156
+ // for get children info for confirmation dialog
179
157
  export const getChildrenInfo = (state, node) => {
180
158
  if (!node) {
181
159
  return [];
182
160
  }
183
-
184
161
  const childrenIdSet = new Set();
185
162
  const childrenInfoArray = [];
186
163
  const allNodes = getConnections(state);
@@ -199,76 +176,58 @@ export const getChildrenInfo = (state, node) => {
199
176
  });
200
177
  return childrenInfoArray;
201
178
  };
202
-
203
179
  const getChildrenNodeAmount = (id, allNodes) => {
204
180
  const searchTerms = new Set([id]);
205
181
  const traverseHistory = new Map();
206
182
  const childrenIds = new Set();
207
183
  traverseHistory.set(id, false);
208
-
209
184
  while (searchTerms.size > 0) {
210
185
  const [currTerm] = searchTerms;
211
186
  let targets = getNodeTargetsById(currTerm, allNodes);
212
187
  targets.forEach(target => {
213
188
  const isTargetCounted = traverseHistory.get(target);
214
-
215
189
  if (!isTargetCounted) {
216
190
  searchTerms.add(target);
217
191
  childrenIds.add(target);
218
192
  }
219
-
220
193
  target !== id && childrenIds.add(target);
221
194
  });
222
195
  traverseHistory.set(currTerm, true);
223
196
  searchTerms.delete(currTerm);
224
197
  }
225
-
226
198
  return childrenIds.size;
227
199
  };
228
-
229
200
  const getNodeTargetsById = (id, allNodes) => {
230
201
  if (!id || !allNodes[id]) {
231
202
  return [];
232
203
  }
233
-
234
204
  return allNodes[id].targets;
235
205
  };
236
-
237
206
  const DEFAULT_EXTENSION_NAME = 'Default extension';
238
-
239
207
  const getNodeNameById = (id, allNodes) => {
240
208
  if (typeof id === 'object') {
241
209
  var _name2;
242
-
243
210
  let name;
244
211
  id.forEach(localId => {
245
212
  var _name, _allNodes$localId;
246
-
247
213
  name = (_name = name) !== null && _name !== void 0 ? _name : (_allNodes$localId = allNodes[localId]) === null || _allNodes$localId === void 0 ? void 0 : _allNodes$localId.name;
248
214
  });
249
215
  return (_name2 = name) !== null && _name2 !== void 0 ? _name2 : DEFAULT_EXTENSION_NAME;
250
216
  }
251
-
252
217
  if (!id || !allNodes[id]) {
253
218
  return DEFAULT_EXTENSION_NAME;
254
219
  }
255
-
256
220
  return allNodes[id].name;
257
221
  };
258
-
259
222
  const getSelectedLocalIds = (state, node) => {
260
223
  var _node$attrs5, _node$marks2, _node$marks2$find, _node$marks2$find$att;
261
-
262
224
  if (!node) {
263
225
  return new Set([]);
264
226
  }
265
-
266
227
  const localIds = new Set([(_node$attrs5 = node.attrs) === null || _node$attrs5 === void 0 ? void 0 : _node$attrs5.localId, (_node$marks2 = node.marks) === null || _node$marks2 === void 0 ? void 0 : (_node$marks2$find = _node$marks2.find(mark => mark.type === state.schema.marks.fragment)) === null || _node$marks2$find === void 0 ? void 0 : (_node$marks2$find$att = _node$marks2$find.attrs) === null || _node$marks2$find$att === void 0 ? void 0 : _node$marks2$find$att.localId].filter(Boolean));
267
228
  return localIds;
268
229
  };
269
-
270
230
  export const getNodeName = (state, node) => {
271
231
  var _node$marks$find$attr2, _node$marks3, _node$marks3$find, _node$marks3$find$att;
272
-
273
232
  return (_node$marks$find$attr2 = node === null || node === void 0 ? void 0 : (_node$marks3 = node.marks) === null || _node$marks3 === void 0 ? void 0 : (_node$marks3$find = _node$marks3.find(mark => mark.type === state.schema.marks.fragment)) === null || _node$marks3$find === void 0 ? void 0 : (_node$marks3$find$att = _node$marks3$find.attrs) === null || _node$marks3$find$att === void 0 ? void 0 : _node$marks3$find$att.name) !== null && _node$marks$find$attr2 !== void 0 ? _node$marks$find$attr2 : '';
274
233
  };
@@ -10,4 +10,5 @@ export const shouldForceTracking = () => {
10
10
  console.warn(err);
11
11
  return false;
12
12
  }
13
- }; // END: temporary code https://product-fabric.atlassian.net/browse/ED-10260
13
+ };
14
+ // END: temporary code https://product-fabric.atlassian.net/browse/ED-10260
@@ -1,18 +1,16 @@
1
1
  import { Fragment, Slice } from 'prosemirror-model';
2
+
2
3
  /**
3
4
  * A helper to get the underlying array of a fragment.
4
5
  */
5
-
6
6
  export function getFragmentBackingArray(fragment) {
7
7
  return fragment.content;
8
8
  }
9
9
  export function mapFragment(content, callback, parent = null) {
10
10
  const children = [];
11
-
12
11
  for (let i = 0, size = content.childCount; i < size; i++) {
13
12
  const node = content.child(i);
14
13
  const transformed = node.isLeaf ? callback(node, parent, i) : callback(node.copy(mapFragment(node.content, callback, node)), parent, i);
15
-
16
14
  if (transformed) {
17
15
  if (transformed instanceof Fragment) {
18
16
  children.push(...getFragmentBackingArray(transformed));
@@ -23,7 +21,6 @@ export function mapFragment(content, callback, parent = null) {
23
21
  }
24
22
  }
25
23
  }
26
-
27
24
  return Fragment.fromArray(children);
28
25
  }
29
26
  export function mapSlice(slice, callback) {
@@ -32,25 +29,20 @@ export function mapSlice(slice, callback) {
32
29
  }
33
30
  export function flatmap(fragment, callback) {
34
31
  const fragmentContent = [];
35
-
36
32
  for (let i = 0; i < fragment.childCount; i++) {
37
33
  const child = callback(fragment.child(i), i, fragment);
38
-
39
34
  if (Array.isArray(child)) {
40
35
  fragmentContent.push(...child);
41
36
  } else {
42
37
  fragmentContent.push(child);
43
38
  }
44
39
  }
45
-
46
40
  return Fragment.fromArray(fragmentContent);
47
41
  }
48
42
  export function mapChildren(node, callback) {
49
43
  const array = [];
50
-
51
44
  for (let i = 0; i < node.childCount; i++) {
52
45
  array.push(callback(node.child(i), i, node instanceof Fragment ? node : node.content));
53
46
  }
54
-
55
47
  return array;
56
48
  }
@@ -1,19 +1,18 @@
1
1
  export function calcTableColumnWidths(node) {
2
2
  let tableColumnWidths = [];
3
3
  const firstRow = node.firstChild;
4
-
5
4
  if (firstRow) {
6
5
  // Sanity validation, but it should always have a first row
7
6
  // Iterate for the cells in the first row
8
7
  firstRow.forEach(colNode => {
9
- let colwidth = colNode.attrs.colwidth || [0]; // If we have colwidth, we added it
8
+ let colwidth = colNode.attrs.colwidth || [0];
10
9
 
10
+ // If we have colwidth, we added it
11
11
  if (colwidth) {
12
12
  tableColumnWidths = [...tableColumnWidths, ...colwidth];
13
13
  }
14
14
  });
15
15
  }
16
-
17
16
  return tableColumnWidths;
18
17
  }
19
18
  export function hasMergedCell(tableNode) {
@@ -22,16 +21,13 @@ export function hasMergedCell(tableNode) {
22
21
  if (node.type.name === 'tableRow') {
23
22
  return true;
24
23
  }
25
-
26
24
  const {
27
25
  colspan,
28
26
  rowspan
29
27
  } = node.attrs;
30
-
31
28
  if (colspan > 1 || rowspan > 1) {
32
29
  hasSpan = true;
33
30
  }
34
-
35
31
  return false;
36
32
  });
37
33
  return hasSpan;
@@ -1,30 +1,29 @@
1
1
  import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '../analytics';
2
2
  const whitelistedAttributes = ['align', 'annotationType', 'extensionKey', 'extensionType', 'layout', 'type', 'localId', 'mode', 'language', 'timestamp', 'state', 'originalWidth', 'originalHeight', 'height', 'width', 'shortName', 'level', 'userType', 'order', 'panelType', 'color', 'style', 'isNumberColumnEnabled', 'colspan', 'rowspan', 'colwidth', 'background'];
3
-
4
3
  function concatAncestorHierarchy(node, ancestoryHierarchy) {
5
4
  const {
6
5
  name
7
- } = node.type; // Space concatenator used to reduce analytics payload size
8
-
6
+ } = node.type;
7
+ // Space concatenator used to reduce analytics payload size
9
8
  return ancestoryHierarchy ? `${ancestoryHierarchy} ${name}` : name;
10
9
  }
11
-
12
10
  const sanitizeMarks = (marks = []) => {
13
11
  let sanitizedMarks = [];
14
12
  marks.forEach(mark => {
15
13
  if (mark.attrs) {
16
14
  const attrs = sanitizeAttributes(mark.attrs);
17
- sanitizedMarks.push({ ...mark,
15
+ sanitizedMarks.push({
16
+ ...mark,
18
17
  attrs
19
18
  });
20
19
  } else {
21
- sanitizedMarks.push({ ...mark
20
+ sanitizedMarks.push({
21
+ ...mark
22
22
  });
23
23
  }
24
24
  });
25
25
  return sanitizedMarks;
26
26
  };
27
-
28
27
  const sanitizeAttributes = (attrs = {}) => {
29
28
  let sanitizedAttrs = Object.assign({}, attrs);
30
29
  Object.keys(attrs).filter(key => !whitelistedAttributes.includes(key)).forEach(key => {
@@ -32,7 +31,6 @@ const sanitizeAttributes = (attrs = {}) => {
32
31
  });
33
32
  return sanitizedAttrs;
34
33
  };
35
-
36
34
  const trackUnsupportedContentTooltipActionFor = (action, dispatchAnalyticsEvent, unsupportedContentType, originalNodeType) => {
37
35
  dispatchAnalyticsEvent({
38
36
  action: action,
@@ -44,7 +42,6 @@ const trackUnsupportedContentTooltipActionFor = (action, dispatchAnalyticsEvent,
44
42
  }
45
43
  });
46
44
  };
47
-
48
45
  export const findAndTrackUnsupportedContentNodes = (node, schema, dispatchAnalyticsEvent, ancestorHierarchy = '') => {
49
46
  const {
50
47
  type: nodeType,
@@ -59,7 +56,6 @@ export const findAndTrackUnsupportedContentNodes = (node, schema, dispatchAnalyt
59
56
  unsupportedBlock
60
57
  } = schema.nodes;
61
58
  const parentType = ancestorHierarchy.split(' ').pop() || '';
62
-
63
59
  if (nodeMarks.length) {
64
60
  nodeMarks.forEach(mark => {
65
61
  if (mark.type === unsupportedMark) {
@@ -92,7 +88,6 @@ export const findAndTrackUnsupportedContentNodes = (node, schema, dispatchAnalyt
92
88
  }
93
89
  });
94
90
  }
95
-
96
91
  if (nodeType === unsupportedInline || nodeType === unsupportedBlock) {
97
92
  const {
98
93
  originalValue
@@ -1,48 +1,35 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
-
3
2
  class ADFTraversor {
4
3
  constructor(doc) {
5
4
  _defineProperty(this, "subscribers", new Map());
6
-
7
5
  this.doc = doc;
8
6
  }
9
-
10
7
  subscribe(type, callback) {
11
8
  const callbacks = this.subscribers.get(type);
12
-
13
9
  if (!callbacks) {
14
10
  this.subscribers.set(type, [callback]);
15
11
  } else {
16
12
  callbacks.push(callback);
17
13
  }
18
14
  }
19
-
20
15
  exec() {
21
16
  if (!this.doc || !Array.isArray(this.doc.content)) {
22
17
  return;
23
18
  }
24
-
25
19
  let candidates = this.doc.content.slice(0);
26
-
27
20
  while (candidates.length) {
28
21
  const node = candidates.shift();
29
-
30
22
  if (Array.isArray(node.content)) {
31
23
  candidates = candidates.concat(node.content);
32
24
  }
33
-
34
25
  const callbacks = this.subscribers.get(node.type);
35
-
36
26
  if (!callbacks) {
37
27
  continue;
38
28
  }
39
-
40
29
  for (let i = 0; i < callbacks.length; i++) {
41
30
  callbacks[i](node);
42
31
  }
43
32
  }
44
33
  }
45
-
46
34
  }
47
-
48
35
  export default ADFTraversor;