@atlaskit/editor-core 161.0.0 → 163.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +92 -0
- package/dist/cjs/actions/index.js +76 -48
- package/dist/cjs/create-editor/ErrorBoundary.js +1 -1
- package/dist/cjs/create-editor/ReactEditorView.js +2 -2
- package/dist/cjs/editor.js +3 -7
- package/dist/cjs/extensibility.js +2 -2
- package/dist/cjs/keymaps/index.js +14 -9
- package/dist/cjs/labs/next/full-page.js +35 -47
- package/dist/cjs/labs/next/presets/cxhtml.js +0 -1
- package/dist/cjs/nodeviews/ReactNodeView.js +16 -41
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.js +227 -0
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.styles.js +21 -0
- package/dist/cjs/nodeviews/getPerformanceOptions.js +64 -0
- package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/index.js +16 -6
- package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/styles.js +10 -17
- package/dist/cjs/plugins/analytics/types/enums.js +2 -0
- package/dist/cjs/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +9 -16
- package/dist/cjs/plugins/base/index.js +26 -7
- package/dist/cjs/plugins/base/pm-plugins/inline-cursor-target.js +141 -76
- package/dist/cjs/plugins/before-primaryToolbar/ui/BeforePrimaryToolbarWrapper.js +5 -8
- package/dist/cjs/plugins/block-type/commands/block-type.js +21 -9
- package/dist/cjs/plugins/block-type/styles.js +5 -2
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/index.js +13 -11
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/styled.js +11 -7
- package/dist/cjs/plugins/breakout/ui/LayoutButton.js +9 -9
- package/dist/cjs/plugins/card/messages.js +4 -4
- package/dist/cjs/plugins/card/nodeviews/genericCard.js +4 -4
- package/dist/cjs/plugins/card/pm-plugins/doc.js +53 -6
- package/dist/cjs/plugins/card/pm-plugins/main.js +16 -1
- package/dist/cjs/plugins/card/styles.js +2 -2
- package/dist/cjs/plugins/card/ui/LinkToolbarAppearance.js +29 -11
- package/dist/cjs/plugins/card/ui/LinkToolbarButtonGroup.js +66 -7
- package/dist/cjs/plugins/card/ui/LinkToolbarIconDropdown.js +166 -7
- package/dist/cjs/plugins/card/ui/ResizableEmbedCard.js +15 -13
- package/dist/cjs/plugins/card/ui/assets/card.js +1 -1
- package/dist/cjs/plugins/card/ui/assets/embed.js +1 -1
- package/dist/cjs/plugins/card/ui/assets/inline.js +1 -1
- package/dist/cjs/plugins/card/ui/assets/url.js +1 -1
- package/dist/cjs/plugins/card/ui/link-toolbar-button-group-options.js +60 -0
- package/dist/cjs/plugins/card/ui/link-toolbar-icon-dropdown-options.js +66 -0
- package/dist/cjs/plugins/card/ui/styled.js +5 -13
- package/dist/cjs/plugins/card/ui/types.js +5 -0
- package/dist/cjs/plugins/clipboard/pm-plugins/main.js +99 -3
- package/dist/cjs/plugins/code-block/styles.js +45 -38
- package/dist/cjs/plugins/collab-edit/styles.js +2 -2
- package/dist/cjs/plugins/collab-edit/ui/avatars.js +6 -1
- package/dist/cjs/plugins/collab-edit/ui/colored-avatar-item.js +4 -5
- package/dist/cjs/plugins/collab-edit/ui/invite-to-edit.js +15 -4
- package/dist/cjs/plugins/collab-edit/ui/styles.js +10 -14
- package/dist/cjs/plugins/date/nodeviews/date.js +30 -75
- package/dist/cjs/plugins/date/pm-plugins/main.js +8 -11
- package/dist/cjs/plugins/date/styles.js +2 -2
- package/dist/cjs/plugins/date/ui/DatePicker/date-picker-input.js +7 -6
- package/dist/cjs/plugins/date/ui/DatePicker/index.js +8 -7
- package/dist/cjs/plugins/emoji/styles.js +3 -3
- package/dist/cjs/plugins/expand/ui/ExpandIconButton.js +13 -16
- package/dist/cjs/plugins/expand/ui/styles.js +26 -12
- package/dist/cjs/plugins/extension/plugin-factory.js +4 -1
- package/dist/cjs/plugins/extension/pm-plugins/main.js +34 -11
- package/dist/cjs/plugins/extension/ui/Extension/Extension/index.js +16 -9
- package/dist/cjs/plugins/extension/ui/Extension/Extension/styles.js +9 -6
- package/dist/cjs/plugins/extension/ui/Extension/InlineExtension/index.js +7 -3
- package/dist/cjs/plugins/extension/ui/Extension/InlineExtension/styles.js +7 -4
- package/dist/cjs/plugins/extension/ui/Extension/Lozenge.js +14 -13
- package/dist/cjs/plugins/extension/ui/Extension/styles.js +20 -26
- package/dist/cjs/plugins/extension/ui/SaveIndicator/SaveIndicator.js +14 -17
- package/dist/cjs/plugins/extension/ui/styles.js +2 -2
- package/dist/cjs/plugins/extension/utils.js +57 -12
- package/dist/cjs/plugins/fake-text-cursor/styles.js +2 -2
- package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +1 -1
- package/dist/cjs/plugins/find-replace/styles.js +2 -2
- package/dist/cjs/plugins/find-replace/ui/Find.js +12 -12
- package/dist/cjs/plugins/find-replace/ui/FindReplace.js +5 -5
- package/dist/cjs/plugins/find-replace/ui/Replace.js +5 -5
- package/dist/cjs/plugins/find-replace/ui/styles.js +12 -15
- package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +6 -7
- package/dist/cjs/plugins/floating-toolbar/ui/styles.js +7 -1
- package/dist/cjs/plugins/grid/styles.js +2 -2
- package/dist/cjs/plugins/help-dialog/ui/index.js +134 -40
- package/dist/cjs/plugins/help-dialog/ui/styles.js +26 -49
- package/dist/cjs/plugins/hyperlink/styles.js +6 -16
- package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +23 -20
- package/dist/cjs/plugins/jira-issue/nodeviews/jira-issue.js +13 -10
- package/dist/cjs/plugins/layout/styles.js +2 -2
- package/dist/cjs/plugins/list/actions/wrap-and-join-lists.js +180 -0
- package/dist/cjs/plugins/list/commands/index.js +42 -37
- package/dist/cjs/plugins/list/pm-plugins/main.js +6 -0
- package/dist/cjs/plugins/list/styles.js +2 -2
- package/dist/cjs/plugins/list/utils/node.js +4 -3
- package/dist/cjs/plugins/list/utils/replace-content.js +31 -0
- package/dist/cjs/plugins/media/index.js +9 -40
- package/dist/cjs/plugins/media/nodeviews/mediaNodeUpdater.js +3 -3
- package/dist/cjs/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +28 -23
- package/dist/cjs/plugins/media/pm-plugins/main.js +1 -8
- package/dist/cjs/plugins/media/pm-plugins/media-editor-plugin-factory.js +2 -67
- package/dist/cjs/plugins/media/styles.js +2 -2
- package/dist/cjs/plugins/media/toolbar/index.js +0 -13
- package/dist/cjs/plugins/media/ui/MediaLinkingToolbar.js +1 -1
- package/dist/cjs/plugins/media/ui/ResizableMediaSingle/index.js +12 -8
- package/dist/cjs/plugins/media/ui/ResizableMediaSingle/styled.js +7 -6
- package/dist/cjs/plugins/media/utils/media-single.js +23 -6
- package/dist/cjs/plugins/mentions/styles.js +2 -2
- package/dist/cjs/plugins/panel/styles.js +5 -2
- package/dist/cjs/plugins/paste/handlers.js +19 -5
- package/dist/cjs/plugins/paste/pm-plugins/analytics.js +1 -1
- package/dist/cjs/plugins/placeholder/styles.js +2 -2
- package/dist/cjs/plugins/placeholder-text/index.js +45 -1
- package/dist/cjs/plugins/placeholder-text/placeholder-text-nodeview.js +66 -22
- package/dist/cjs/plugins/placeholder-text/selection-utils.js +19 -0
- package/dist/cjs/plugins/placeholder-text/styles.js +4 -2
- package/dist/cjs/plugins/rule/pm-plugins/input-rule.js +2 -1
- package/dist/cjs/plugins/rule/styles.js +5 -2
- package/dist/cjs/plugins/selection/gap-cursor/styles.js +4 -4
- package/dist/cjs/plugins/selection/pm-plugins/selection-main.js +13 -30
- package/dist/cjs/plugins/status/index.js +9 -12
- package/dist/cjs/plugins/status/nodeviews/status.js +43 -126
- package/dist/cjs/plugins/status/plugin.js +14 -6
- package/dist/cjs/plugins/status/styles.js +2 -2
- package/dist/cjs/plugins/table/commands/index.js +0 -6
- package/dist/cjs/plugins/table/commands/insert.js +1 -1
- package/dist/cjs/plugins/table/commands/misc.js +5 -18
- package/dist/cjs/plugins/table/commands-with-analytics.js +1 -1
- package/dist/cjs/plugins/table/handlers.js +6 -2
- package/dist/cjs/plugins/table/index.js +8 -14
- package/dist/cjs/plugins/table/nodeviews/TableComponent.js +2 -2
- package/dist/cjs/plugins/table/nodeviews/table.js +7 -38
- package/dist/cjs/plugins/table/pm-plugins/decorations/plugin.js +2 -2
- package/dist/cjs/plugins/table/pm-plugins/main.js +3 -1
- package/dist/cjs/plugins/table/pm-plugins/plugin-factory.js +4 -7
- package/dist/cjs/plugins/table/pm-plugins/plugin-key.js +11 -0
- package/dist/cjs/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +2 -0
- package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +3 -3
- package/dist/cjs/plugins/table/reducer.js +0 -7
- package/dist/cjs/plugins/table/toolbar.js +5 -15
- package/dist/cjs/plugins/table/transforms/metadata.js +2 -2
- package/dist/cjs/plugins/table/ui/FloatingContextualButton/index.js +11 -17
- package/dist/cjs/plugins/table/ui/FloatingContextualButton/styles.js +23 -0
- package/dist/cjs/plugins/table/ui/FloatingContextualMenu/index.js +11 -14
- package/dist/cjs/plugins/table/ui/FloatingContextualMenu/styles.js +27 -0
- package/dist/cjs/plugins/table/ui/FloatingInsertButton/index.js +1 -1
- package/dist/cjs/plugins/table/ui/LayoutButton/index.js +1 -2
- package/dist/cjs/plugins/table/ui/common-styles.js +53 -0
- package/dist/cjs/plugins/table/ui/ui-styles.js +109 -0
- package/dist/cjs/plugins/table/utils/nodes.js +15 -15
- package/dist/cjs/plugins/tasks-and-decisions/commands.js +15 -1
- package/dist/cjs/plugins/tasks-and-decisions/styles.js +2 -2
- package/dist/cjs/plugins/text-formatting/styles.js +5 -2
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/index.js +71 -1
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/toolbar-messages.js +30 -0
- package/dist/cjs/plugins/text-formatting/utils.js +30 -2
- package/dist/cjs/plugins/type-ahead/api.js +32 -1
- package/dist/cjs/plugins/type-ahead/constants.js +3 -1
- package/dist/cjs/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +20 -5
- package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +8 -0
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadList.js +15 -56
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadListItem.js +48 -3
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +4 -1
- package/dist/cjs/plugins/type-ahead/utils.js +22 -4
- package/dist/cjs/plugins/unsupported-content/styles.js +2 -2
- package/dist/cjs/profiler/render-count.js +1 -3
- package/dist/cjs/ui/Appearance/Comment/Comment.js +2 -2
- package/dist/cjs/ui/Appearance/Comment/Toolbar.js +1 -1
- package/dist/cjs/ui/Appearance/FullPage/FullPage.js +0 -1
- package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +0 -1
- package/dist/cjs/ui/Appearance/FullPage/StyledComponents.js +2 -2
- package/dist/cjs/ui/Appearance/FullPage/messages.js +2 -2
- package/dist/cjs/ui/ConfigPanel/ErrorMessage/ErrorImage.js +18 -16
- package/dist/cjs/ui/ConfigPanel/Fields/Boolean.js +16 -14
- package/dist/cjs/ui/ConfigPanel/Fields/TabGroup.js +13 -10
- package/dist/cjs/ui/ConfigPanel/Fields/UserSelect.js +15 -4
- package/dist/cjs/ui/ConfigPanel/Header.js +30 -30
- package/dist/cjs/ui/ContentStyles/index.js +32 -16
- package/dist/cjs/ui/ElementBrowser/InsertMenu.js +5 -6
- package/dist/cjs/ui/ElementBrowser/ModalElementBrowser.js +30 -23
- package/dist/cjs/ui/ElementBrowser/components/ElementList/ElementList.js +51 -47
- package/dist/cjs/ui/ElementBrowser/components/ElementList/EmptyState.js +17 -14
- package/dist/cjs/ui/ElementBrowser/components/ElementList/NotFoundIllustration.js +18 -18
- package/dist/cjs/ui/ElementBrowser/components/StatelessElementBrowser.js +55 -68
- package/dist/cjs/ui/ElementBrowser/hooks/use-container-width.js +10 -11
- package/dist/cjs/ui/FloatingToolbar/styles.js +1 -1
- package/dist/cjs/ui/LinkSearch/LinkSearchList.js +18 -22
- package/dist/cjs/ui/PortalProvider/index.js +3 -3
- package/dist/cjs/ui/Resizer/styled.js +7 -5
- package/dist/cjs/ui/Toolbar/ToolbarInner.js +5 -3
- package/dist/cjs/ui/WithFlash/index.js +9 -17
- package/dist/cjs/utils/index.js +1 -8
- package/dist/cjs/utils/insert.js +26 -11
- package/dist/cjs/utils/performance/components/RenderTracking.js +52 -0
- package/dist/cjs/utils/selection.js +2 -9
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/actions/index.js +20 -23
- package/dist/es2019/create-editor/ErrorBoundary.js +2 -2
- package/dist/es2019/create-editor/ReactEditorView.js +1 -1
- package/dist/es2019/editor.js +3 -5
- package/dist/es2019/extensibility.js +1 -1
- package/dist/es2019/keymaps/index.js +10 -4
- package/dist/es2019/labs/next/full-page.js +43 -42
- package/dist/es2019/labs/next/presets/cxhtml.js +0 -1
- package/dist/es2019/nodeviews/ReactNodeView.js +13 -35
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.js +216 -0
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.styles.js +15 -0
- package/dist/es2019/nodeviews/getPerformanceOptions.js +47 -0
- package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/index.js +18 -7
- package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/styles.js +5 -5
- package/dist/es2019/plugins/analytics/types/enums.js +2 -0
- package/dist/es2019/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +12 -7
- package/dist/es2019/plugins/base/index.js +24 -5
- package/dist/es2019/plugins/base/pm-plugins/inline-cursor-target.js +135 -77
- package/dist/es2019/plugins/before-primaryToolbar/ui/BeforePrimaryToolbarWrapper.js +5 -4
- package/dist/es2019/plugins/block-type/commands/block-type.js +18 -11
- package/dist/es2019/plugins/block-type/styles.js +3 -3
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/index.js +15 -12
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/styled.js +19 -14
- package/dist/es2019/plugins/breakout/ui/LayoutButton.js +10 -6
- package/dist/es2019/plugins/card/messages.js +4 -4
- package/dist/es2019/plugins/card/nodeviews/genericCard.js +5 -5
- package/dist/es2019/plugins/card/pm-plugins/doc.js +44 -4
- package/dist/es2019/plugins/card/pm-plugins/main.js +17 -1
- package/dist/es2019/plugins/card/styles.js +1 -1
- package/dist/es2019/plugins/card/ui/LinkToolbarAppearance.js +21 -9
- package/dist/es2019/plugins/card/ui/LinkToolbarButtonGroup.js +54 -3
- package/dist/es2019/plugins/card/ui/LinkToolbarIconDropdown.js +145 -3
- package/dist/es2019/plugins/card/ui/ResizableEmbedCard.js +17 -12
- package/dist/es2019/plugins/card/ui/assets/card.js +1 -1
- package/dist/es2019/plugins/card/ui/assets/embed.js +1 -1
- package/dist/es2019/plugins/card/ui/assets/inline.js +1 -1
- package/dist/es2019/plugins/card/ui/assets/url.js +1 -1
- package/dist/es2019/plugins/card/ui/link-toolbar-button-group-options.js +45 -0
- package/dist/es2019/plugins/card/ui/link-toolbar-icon-dropdown-options.js +51 -0
- package/dist/es2019/plugins/card/ui/styled.js +2 -2
- package/dist/es2019/plugins/card/ui/types.js +1 -0
- package/dist/es2019/plugins/clipboard/pm-plugins/main.js +91 -9
- package/dist/es2019/plugins/code-block/styles.js +18 -14
- package/dist/es2019/plugins/collab-edit/styles.js +1 -1
- package/dist/es2019/plugins/collab-edit/ui/avatars.js +6 -2
- package/dist/es2019/plugins/collab-edit/ui/colored-avatar-item.js +5 -4
- package/dist/es2019/plugins/collab-edit/ui/invite-to-edit.js +9 -5
- package/dist/es2019/plugins/collab-edit/ui/styles.js +5 -7
- package/dist/es2019/plugins/date/nodeviews/date.js +37 -48
- package/dist/es2019/plugins/date/pm-plugins/main.js +8 -10
- package/dist/es2019/plugins/date/styles.js +1 -1
- package/dist/es2019/plugins/date/ui/DatePicker/date-picker-input.js +8 -4
- package/dist/es2019/plugins/date/ui/DatePicker/index.js +9 -5
- package/dist/es2019/plugins/emoji/styles.js +1 -2
- package/dist/es2019/plugins/expand/ui/ExpandIconButton.js +13 -14
- package/dist/es2019/plugins/expand/ui/styles.js +32 -22
- package/dist/es2019/plugins/extension/plugin-factory.js +3 -1
- package/dist/es2019/plugins/extension/pm-plugins/main.js +38 -12
- package/dist/es2019/plugins/extension/ui/Extension/Extension/index.js +17 -11
- package/dist/es2019/plugins/extension/ui/Extension/Extension/styles.js +7 -6
- package/dist/es2019/plugins/extension/ui/Extension/InlineExtension/index.js +9 -5
- package/dist/es2019/plugins/extension/ui/Extension/InlineExtension/styles.js +5 -3
- package/dist/es2019/plugins/extension/ui/Extension/Lozenge.js +14 -7
- package/dist/es2019/plugins/extension/ui/Extension/styles.js +14 -8
- package/dist/es2019/plugins/extension/ui/SaveIndicator/SaveIndicator.js +15 -9
- package/dist/es2019/plugins/extension/ui/styles.js +2 -1
- package/dist/es2019/plugins/extension/utils.js +37 -2
- package/dist/es2019/plugins/fake-text-cursor/styles.js +1 -1
- package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +1 -1
- package/dist/es2019/plugins/find-replace/styles.js +1 -1
- package/dist/es2019/plugins/find-replace/ui/Find.js +1 -1
- package/dist/es2019/plugins/find-replace/ui/FindReplace.js +1 -1
- package/dist/es2019/plugins/find-replace/ui/Replace.js +1 -1
- package/dist/es2019/plugins/find-replace/ui/styles.js +14 -9
- package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +12 -8
- package/dist/es2019/plugins/floating-toolbar/ui/styles.js +7 -1
- package/dist/es2019/plugins/grid/styles.js +1 -1
- package/dist/es2019/plugins/help-dialog/ui/index.js +132 -37
- package/dist/es2019/plugins/help-dialog/ui/styles.js +13 -13
- package/dist/es2019/plugins/hyperlink/styles.js +1 -5
- package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +25 -20
- package/dist/es2019/plugins/jira-issue/nodeviews/jira-issue.js +14 -7
- package/dist/es2019/plugins/layout/styles.js +5 -1
- package/dist/es2019/plugins/list/actions/wrap-and-join-lists.js +163 -0
- package/dist/es2019/plugins/list/commands/index.js +36 -28
- package/dist/es2019/plugins/list/pm-plugins/main.js +6 -0
- package/dist/es2019/plugins/list/styles.js +1 -1
- package/dist/es2019/plugins/list/utils/node.js +4 -3
- package/dist/es2019/plugins/list/utils/replace-content.js +22 -0
- package/dist/es2019/plugins/media/index.js +1 -28
- package/dist/es2019/plugins/media/nodeviews/mediaNodeUpdater.js +3 -3
- package/dist/es2019/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +30 -16
- package/dist/es2019/plugins/media/pm-plugins/main.js +1 -7
- package/dist/es2019/plugins/media/pm-plugins/media-editor-plugin-factory.js +1 -49
- package/dist/es2019/plugins/media/styles.js +2 -3
- package/dist/es2019/plugins/media/toolbar/index.js +0 -12
- package/dist/es2019/plugins/media/ui/MediaLinkingToolbar.js +0 -1
- package/dist/es2019/plugins/media/ui/ResizableMediaSingle/index.js +14 -9
- package/dist/es2019/plugins/media/ui/ResizableMediaSingle/styled.js +4 -5
- package/dist/es2019/plugins/media/utils/media-single.js +23 -6
- package/dist/es2019/plugins/mentions/styles.js +1 -1
- package/dist/es2019/plugins/panel/styles.js +3 -3
- package/dist/es2019/plugins/paste/handlers.js +19 -5
- package/dist/es2019/plugins/paste/pm-plugins/analytics.js +2 -2
- package/dist/es2019/plugins/placeholder/styles.js +1 -1
- package/dist/es2019/plugins/placeholder-text/index.js +46 -1
- package/dist/es2019/plugins/placeholder-text/placeholder-text-nodeview.js +66 -20
- package/dist/es2019/plugins/placeholder-text/selection-utils.js +9 -0
- package/dist/es2019/plugins/placeholder-text/styles.js +23 -1
- package/dist/es2019/plugins/rule/pm-plugins/input-rule.js +4 -1
- package/dist/es2019/plugins/rule/styles.js +3 -3
- package/dist/es2019/plugins/selection/gap-cursor/styles.js +2 -2
- package/dist/es2019/plugins/selection/pm-plugins/selection-main.js +4 -20
- package/dist/es2019/plugins/status/index.js +1 -5
- package/dist/es2019/plugins/status/nodeviews/status.js +45 -82
- package/dist/es2019/plugins/status/plugin.js +13 -6
- package/dist/es2019/plugins/status/styles.js +1 -7
- package/dist/es2019/plugins/table/commands/index.js +1 -1
- package/dist/es2019/plugins/table/commands/insert.js +1 -1
- package/dist/es2019/plugins/table/commands/misc.js +5 -11
- package/dist/es2019/plugins/table/commands-with-analytics.js +1 -1
- package/dist/es2019/plugins/table/handlers.js +6 -2
- package/dist/es2019/plugins/table/index.js +5 -9
- package/dist/es2019/plugins/table/nodeviews/TableComponent.js +2 -2
- package/dist/es2019/plugins/table/nodeviews/table.js +2 -16
- package/dist/es2019/plugins/table/pm-plugins/decorations/plugin.js +1 -1
- package/dist/es2019/plugins/table/pm-plugins/main.js +2 -1
- package/dist/es2019/plugins/table/pm-plugins/plugin-factory.js +1 -2
- package/dist/es2019/plugins/table/pm-plugins/plugin-key.js +2 -0
- package/dist/es2019/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +2 -0
- package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +1 -1
- package/dist/es2019/plugins/table/reducer.js +0 -9
- package/dist/es2019/plugins/table/toolbar.js +1 -4
- package/dist/es2019/plugins/table/transforms/metadata.js +1 -1
- package/dist/es2019/plugins/table/ui/FloatingContextualButton/index.js +12 -11
- package/dist/es2019/plugins/table/ui/FloatingContextualButton/{styles.css.js → styles.js} +1 -1
- package/dist/es2019/plugins/table/ui/FloatingContextualMenu/index.js +10 -10
- package/dist/es2019/plugins/table/ui/FloatingContextualMenu/{styles.css.js → styles.js} +1 -1
- package/dist/es2019/plugins/table/ui/FloatingInsertButton/index.js +1 -1
- package/dist/es2019/plugins/table/ui/LayoutButton/index.js +1 -2
- package/dist/es2019/plugins/table/ui/{common-styles.css.js → common-styles.js} +61 -27
- package/dist/es2019/plugins/table/ui/{ui-styles.css.js → ui-styles.js} +99 -78
- package/dist/es2019/plugins/table/utils/nodes.js +11 -11
- package/dist/es2019/plugins/tasks-and-decisions/commands.js +13 -1
- package/dist/es2019/plugins/tasks-and-decisions/styles.js +1 -1
- package/dist/es2019/plugins/text-formatting/styles.js +3 -3
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/index.js +61 -2
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/toolbar-messages.js +30 -0
- package/dist/es2019/plugins/text-formatting/utils.js +13 -1
- package/dist/es2019/plugins/type-ahead/api.js +31 -2
- package/dist/es2019/plugins/type-ahead/constants.js +1 -0
- package/dist/es2019/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +17 -5
- package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +11 -1
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadList.js +19 -51
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadListItem.js +41 -3
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +3 -1
- package/dist/es2019/plugins/type-ahead/utils.js +15 -0
- package/dist/es2019/plugins/unsupported-content/styles.js +1 -1
- package/dist/es2019/profiler/render-count.js +1 -1
- package/dist/es2019/ui/Appearance/Comment/Comment.js +2 -2
- package/dist/es2019/ui/Appearance/Comment/Toolbar.js +2 -0
- package/dist/es2019/ui/Appearance/FullPage/FullPage.js +0 -1
- package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +0 -1
- package/dist/es2019/ui/Appearance/FullPage/StyledComponents.js +2 -2
- package/dist/es2019/ui/Appearance/FullPage/messages.js +1 -1
- package/dist/es2019/ui/ConfigPanel/ErrorMessage/ErrorImage.js +19 -16
- package/dist/es2019/ui/ConfigPanel/Fields/Boolean.js +18 -13
- package/dist/es2019/ui/ConfigPanel/Fields/TabGroup.js +14 -8
- package/dist/es2019/ui/ConfigPanel/Fields/UserSelect.js +12 -3
- package/dist/es2019/ui/ConfigPanel/Header.js +30 -19
- package/dist/es2019/ui/ContentStyles/index.js +40 -23
- package/dist/es2019/ui/ElementBrowser/InsertMenu.js +5 -6
- package/dist/es2019/ui/ElementBrowser/ModalElementBrowser.js +49 -38
- package/dist/es2019/ui/ElementBrowser/components/ElementList/ElementList.js +54 -33
- package/dist/es2019/ui/ElementBrowser/components/ElementList/EmptyState.js +18 -10
- package/dist/es2019/ui/ElementBrowser/components/ElementList/NotFoundIllustration.js +19 -17
- package/dist/es2019/ui/ElementBrowser/components/StatelessElementBrowser.js +132 -119
- package/dist/es2019/ui/ElementBrowser/hooks/use-container-width.js +10 -9
- package/dist/es2019/ui/FloatingToolbar/styles.js +2 -1
- package/dist/es2019/ui/LinkSearch/LinkSearchList.js +14 -9
- package/dist/es2019/ui/PortalProvider/index.js +3 -3
- package/dist/es2019/ui/Resizer/styled.js +3 -3
- package/dist/es2019/ui/Toolbar/ToolbarInner.js +6 -3
- package/dist/es2019/ui/WithFlash/index.js +15 -6
- package/dist/es2019/utils/index.js +1 -1
- package/dist/es2019/utils/insert.js +22 -10
- package/dist/es2019/utils/performance/components/RenderTracking.js +37 -0
- package/dist/es2019/utils/selection.js +1 -6
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/actions/index.js +76 -48
- package/dist/esm/create-editor/ErrorBoundary.js +2 -2
- package/dist/esm/create-editor/ReactEditorView.js +1 -1
- package/dist/esm/editor.js +3 -5
- package/dist/esm/extensibility.js +1 -1
- package/dist/esm/keymaps/index.js +7 -4
- package/dist/esm/labs/next/full-page.js +38 -36
- package/dist/esm/labs/next/presets/cxhtml.js +0 -1
- package/dist/esm/nodeviews/ReactNodeView.js +17 -38
- package/dist/esm/nodeviews/getInlineNodeViewProducer.js +212 -0
- package/dist/esm/nodeviews/getInlineNodeViewProducer.styles.js +9 -0
- package/dist/esm/nodeviews/getPerformanceOptions.js +45 -0
- package/dist/esm/plugins/alignment/ui/ToolbarAlignment/index.js +17 -7
- package/dist/esm/plugins/alignment/ui/ToolbarAlignment/styles.js +5 -5
- package/dist/esm/plugins/analytics/types/enums.js +2 -0
- package/dist/esm/plugins/avatar-group/ui/AvatarGroupPluginWrapper.js +9 -9
- package/dist/esm/plugins/base/index.js +26 -7
- package/dist/esm/plugins/base/pm-plugins/inline-cursor-target.js +134 -69
- package/dist/esm/plugins/before-primaryToolbar/ui/BeforePrimaryToolbarWrapper.js +5 -4
- package/dist/esm/plugins/block-type/commands/block-type.js +19 -9
- package/dist/esm/plugins/block-type/styles.js +4 -2
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/index.js +14 -12
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/styled.js +9 -5
- package/dist/esm/plugins/breakout/ui/LayoutButton.js +9 -6
- package/dist/esm/plugins/card/messages.js +4 -4
- package/dist/esm/plugins/card/nodeviews/genericCard.js +5 -5
- package/dist/esm/plugins/card/pm-plugins/doc.js +47 -4
- package/dist/esm/plugins/card/pm-plugins/main.js +15 -1
- package/dist/esm/plugins/card/styles.js +1 -1
- package/dist/esm/plugins/card/ui/LinkToolbarAppearance.js +25 -9
- package/dist/esm/plugins/card/ui/LinkToolbarButtonGroup.js +57 -5
- package/dist/esm/plugins/card/ui/LinkToolbarIconDropdown.js +154 -5
- package/dist/esm/plugins/card/ui/ResizableEmbedCard.js +16 -14
- package/dist/esm/plugins/card/ui/assets/card.js +1 -1
- package/dist/esm/plugins/card/ui/assets/embed.js +1 -1
- package/dist/esm/plugins/card/ui/assets/inline.js +1 -1
- package/dist/esm/plugins/card/ui/assets/url.js +1 -1
- package/dist/esm/plugins/card/ui/link-toolbar-button-group-options.js +45 -0
- package/dist/esm/plugins/card/ui/link-toolbar-icon-dropdown-options.js +51 -0
- package/dist/esm/plugins/card/ui/styled.js +2 -2
- package/dist/esm/plugins/card/ui/types.js +1 -0
- package/dist/esm/plugins/clipboard/pm-plugins/main.js +91 -2
- package/dist/esm/plugins/code-block/styles.js +42 -38
- package/dist/esm/plugins/collab-edit/styles.js +1 -1
- package/dist/esm/plugins/collab-edit/ui/avatars.js +6 -2
- package/dist/esm/plugins/collab-edit/ui/colored-avatar-item.js +5 -4
- package/dist/esm/plugins/collab-edit/ui/invite-to-edit.js +9 -5
- package/dist/esm/plugins/collab-edit/ui/styles.js +6 -7
- package/dist/esm/plugins/date/nodeviews/date.js +30 -71
- package/dist/esm/plugins/date/pm-plugins/main.js +8 -9
- package/dist/esm/plugins/date/styles.js +1 -1
- package/dist/esm/plugins/date/ui/DatePicker/date-picker-input.js +7 -4
- package/dist/esm/plugins/date/ui/DatePicker/index.js +8 -5
- package/dist/esm/plugins/emoji/styles.js +2 -2
- package/dist/esm/plugins/expand/ui/ExpandIconButton.js +13 -15
- package/dist/esm/plugins/expand/ui/styles.js +24 -12
- package/dist/esm/plugins/extension/plugin-factory.js +3 -1
- package/dist/esm/plugins/extension/pm-plugins/main.js +34 -11
- package/dist/esm/plugins/extension/ui/Extension/Extension/index.js +18 -11
- package/dist/esm/plugins/extension/ui/Extension/Extension/styles.js +5 -5
- package/dist/esm/plugins/extension/ui/Extension/InlineExtension/index.js +9 -5
- package/dist/esm/plugins/extension/ui/Extension/InlineExtension/styles.js +5 -3
- package/dist/esm/plugins/extension/ui/Extension/Lozenge.js +13 -7
- package/dist/esm/plugins/extension/ui/Extension/styles.js +13 -11
- package/dist/esm/plugins/extension/ui/SaveIndicator/SaveIndicator.js +15 -9
- package/dist/esm/plugins/extension/ui/styles.js +2 -2
- package/dist/esm/plugins/extension/utils.js +51 -9
- package/dist/esm/plugins/fake-text-cursor/styles.js +1 -1
- package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +1 -1
- package/dist/esm/plugins/find-replace/styles.js +1 -1
- package/dist/esm/plugins/find-replace/ui/Find.js +1 -1
- package/dist/esm/plugins/find-replace/ui/FindReplace.js +1 -1
- package/dist/esm/plugins/find-replace/ui/Replace.js +1 -1
- package/dist/esm/plugins/find-replace/ui/styles.js +6 -10
- package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +6 -7
- package/dist/esm/plugins/floating-toolbar/ui/styles.js +7 -1
- package/dist/esm/plugins/grid/styles.js +1 -1
- package/dist/esm/plugins/help-dialog/ui/index.js +135 -41
- package/dist/esm/plugins/help-dialog/ui/styles.js +13 -13
- package/dist/esm/plugins/hyperlink/styles.js +3 -5
- package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +24 -20
- package/dist/esm/plugins/jira-issue/nodeviews/jira-issue.js +14 -7
- package/dist/esm/plugins/layout/styles.js +2 -2
- package/dist/esm/plugins/list/actions/wrap-and-join-lists.js +168 -0
- package/dist/esm/plugins/list/commands/index.js +40 -34
- package/dist/esm/plugins/list/pm-plugins/main.js +6 -0
- package/dist/esm/plugins/list/styles.js +1 -1
- package/dist/esm/plugins/list/utils/node.js +4 -3
- package/dist/esm/plugins/list/utils/replace-content.js +21 -0
- package/dist/esm/plugins/media/index.js +9 -37
- package/dist/esm/plugins/media/nodeviews/mediaNodeUpdater.js +3 -3
- package/dist/esm/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +29 -15
- package/dist/esm/plugins/media/pm-plugins/main.js +1 -9
- package/dist/esm/plugins/media/pm-plugins/media-editor-plugin-factory.js +1 -58
- package/dist/esm/plugins/media/styles.js +2 -2
- package/dist/esm/plugins/media/toolbar/index.js +0 -12
- package/dist/esm/plugins/media/ui/MediaLinkingToolbar.js +1 -1
- package/dist/esm/plugins/media/ui/ResizableMediaSingle/index.js +13 -9
- package/dist/esm/plugins/media/ui/ResizableMediaSingle/styled.js +4 -3
- package/dist/esm/plugins/media/utils/media-single.js +21 -6
- package/dist/esm/plugins/mentions/styles.js +1 -1
- package/dist/esm/plugins/panel/styles.js +4 -2
- package/dist/esm/plugins/paste/handlers.js +19 -5
- package/dist/esm/plugins/paste/pm-plugins/analytics.js +2 -2
- package/dist/esm/plugins/placeholder/styles.js +1 -1
- package/dist/esm/plugins/placeholder-text/index.js +44 -1
- package/dist/esm/plugins/placeholder-text/placeholder-text-nodeview.js +67 -20
- package/dist/esm/plugins/placeholder-text/selection-utils.js +9 -0
- package/dist/esm/plugins/placeholder-text/styles.js +3 -2
- package/dist/esm/plugins/rule/pm-plugins/input-rule.js +2 -1
- package/dist/esm/plugins/rule/styles.js +4 -2
- package/dist/esm/plugins/selection/gap-cursor/styles.js +3 -3
- package/dist/esm/plugins/selection/pm-plugins/selection-main.js +5 -21
- package/dist/esm/plugins/status/index.js +9 -12
- package/dist/esm/plugins/status/nodeviews/status.js +37 -115
- package/dist/esm/plugins/status/plugin.js +13 -6
- package/dist/esm/plugins/status/styles.js +2 -2
- package/dist/esm/plugins/table/commands/index.js +1 -1
- package/dist/esm/plugins/table/commands/insert.js +1 -1
- package/dist/esm/plugins/table/commands/misc.js +5 -15
- package/dist/esm/plugins/table/commands-with-analytics.js +1 -1
- package/dist/esm/plugins/table/handlers.js +6 -2
- package/dist/esm/plugins/table/index.js +7 -12
- package/dist/esm/plugins/table/nodeviews/TableComponent.js +2 -2
- package/dist/esm/plugins/table/nodeviews/table.js +6 -37
- package/dist/esm/plugins/table/pm-plugins/decorations/plugin.js +1 -1
- package/dist/esm/plugins/table/pm-plugins/main.js +2 -1
- package/dist/esm/plugins/table/pm-plugins/plugin-factory.js +1 -2
- package/dist/esm/plugins/table/pm-plugins/plugin-key.js +2 -0
- package/dist/esm/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.js +2 -0
- package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +1 -1
- package/dist/esm/plugins/table/reducer.js +0 -7
- package/dist/esm/plugins/table/toolbar.js +1 -10
- package/dist/esm/plugins/table/transforms/metadata.js +1 -1
- package/dist/esm/plugins/table/ui/FloatingContextualButton/index.js +11 -12
- package/dist/esm/plugins/table/ui/FloatingContextualButton/{styles.css.js → styles.js} +1 -1
- package/dist/esm/plugins/table/ui/FloatingContextualMenu/index.js +10 -12
- package/dist/esm/plugins/table/ui/FloatingContextualMenu/{styles.css.js → styles.js} +1 -1
- package/dist/esm/plugins/table/ui/FloatingInsertButton/index.js +1 -1
- package/dist/esm/plugins/table/ui/LayoutButton/index.js +1 -2
- package/dist/esm/plugins/table/ui/common-styles.js +27 -0
- package/dist/esm/plugins/table/ui/ui-styles.js +68 -0
- package/dist/esm/plugins/table/utils/nodes.js +14 -14
- package/dist/esm/plugins/tasks-and-decisions/commands.js +13 -1
- package/dist/esm/plugins/tasks-and-decisions/styles.js +1 -1
- package/dist/esm/plugins/text-formatting/styles.js +4 -2
- package/dist/esm/plugins/text-formatting/ui/Toolbar/index.js +69 -2
- package/dist/esm/plugins/text-formatting/ui/Toolbar/toolbar-messages.js +30 -0
- package/dist/esm/plugins/text-formatting/utils.js +18 -0
- package/dist/esm/plugins/type-ahead/api.js +30 -2
- package/dist/esm/plugins/type-ahead/constants.js +1 -0
- package/dist/esm/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +16 -4
- package/dist/esm/plugins/type-ahead/ui/InputQuery.js +9 -1
- package/dist/esm/plugins/type-ahead/ui/TypeAheadList.js +18 -56
- package/dist/esm/plugins/type-ahead/ui/TypeAheadListItem.js +44 -3
- package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +3 -1
- package/dist/esm/plugins/type-ahead/utils.js +17 -3
- package/dist/esm/plugins/unsupported-content/styles.js +1 -1
- package/dist/esm/profiler/render-count.js +1 -1
- package/dist/esm/ui/Appearance/Comment/Comment.js +2 -2
- package/dist/esm/ui/Appearance/Comment/Toolbar.js +1 -1
- package/dist/esm/ui/Appearance/FullPage/FullPage.js +0 -1
- package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +0 -1
- package/dist/esm/ui/Appearance/FullPage/StyledComponents.js +2 -2
- package/dist/esm/ui/Appearance/FullPage/messages.js +1 -1
- package/dist/esm/ui/ConfigPanel/ErrorMessage/ErrorImage.js +19 -16
- package/dist/esm/ui/ConfigPanel/Fields/Boolean.js +17 -13
- package/dist/esm/ui/ConfigPanel/Fields/TabGroup.js +13 -8
- package/dist/esm/ui/ConfigPanel/Fields/UserSelect.js +14 -3
- package/dist/esm/ui/ConfigPanel/Header.js +30 -19
- package/dist/esm/ui/ContentStyles/index.js +28 -15
- package/dist/esm/ui/ElementBrowser/InsertMenu.js +5 -6
- package/dist/esm/ui/ElementBrowser/ModalElementBrowser.js +29 -18
- package/dist/esm/ui/ElementBrowser/components/ElementList/ElementList.js +50 -35
- package/dist/esm/ui/ElementBrowser/components/ElementList/EmptyState.js +18 -10
- package/dist/esm/ui/ElementBrowser/components/ElementList/NotFoundIllustration.js +19 -17
- package/dist/esm/ui/ElementBrowser/components/StatelessElementBrowser.js +53 -52
- package/dist/esm/ui/ElementBrowser/hooks/use-container-width.js +9 -8
- package/dist/esm/ui/FloatingToolbar/styles.js +1 -1
- package/dist/esm/ui/LinkSearch/LinkSearchList.js +14 -9
- package/dist/esm/ui/PortalProvider/index.js +3 -3
- package/dist/esm/ui/Resizer/styled.js +4 -2
- package/dist/esm/ui/Toolbar/ToolbarInner.js +6 -3
- package/dist/esm/ui/WithFlash/index.js +8 -8
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/insert.js +22 -10
- package/dist/esm/utils/performance/components/RenderTracking.js +39 -0
- package/dist/esm/utils/selection.js +1 -6
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/actions/index.d.ts +2 -2
- package/dist/types/editor.d.ts +1 -1
- package/dist/types/extensibility.d.ts +1 -1
- package/dist/types/keymaps/index.d.ts +3 -2
- package/dist/types/labs/next/full-page.d.ts +1 -1
- package/dist/types/labs/next/mobile.d.ts +1 -1
- package/dist/types/nodeviews/ReactNodeView.d.ts +0 -5
- package/dist/types/nodeviews/getInlineNodeViewProducer.d.ts +23 -0
- package/dist/types/nodeviews/getInlineNodeViewProducer.styles.d.ts +1 -0
- package/dist/types/nodeviews/getPerformanceOptions.d.ts +19 -0
- package/dist/types/plugins/alignment/ui/ToolbarAlignment/index.d.ts +3 -1
- package/dist/types/plugins/alignment/ui/ToolbarAlignment/styles.d.ts +4 -5
- package/dist/types/plugins/analytics/types/enums.d.ts +2 -0
- package/dist/types/plugins/analytics/types/events.d.ts +11 -3
- package/dist/types/plugins/analytics/types/general-events.d.ts +1 -1
- package/dist/types/plugins/analytics/types/list-events.d.ts +0 -1
- package/dist/types/plugins/analytics/types/utils.d.ts +4 -0
- package/dist/types/plugins/avatar-group/ui/AvatarGroupPluginWrapper.d.ts +2 -2
- package/dist/types/plugins/base/pm-plugins/inline-cursor-target.d.ts +12 -6
- package/dist/types/plugins/before-primaryToolbar/ui/BeforePrimaryToolbarWrapper.d.ts +3 -3
- package/dist/types/plugins/block-type/styles.d.ts +2 -1
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/index.d.ts +1 -0
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/styled.d.ts +2 -7
- package/dist/types/plugins/breakout/ui/LayoutButton.d.ts +1 -0
- package/dist/types/plugins/card/messages.d.ts +2 -2
- package/dist/types/plugins/card/pm-plugins/doc.d.ts +1 -0
- package/dist/types/plugins/card/pm-plugins/main.d.ts +1 -1
- package/dist/types/plugins/card/styles.d.ts +1 -1
- package/dist/types/plugins/card/ui/LinkToolbarButtonGroup.d.ts +18 -2
- package/dist/types/plugins/card/ui/LinkToolbarIconDropdown.d.ts +23 -3
- package/dist/types/plugins/card/ui/ResizableEmbedCard.d.ts +3 -1
- package/dist/types/plugins/card/ui/link-toolbar-button-group-options.d.ts +5 -0
- package/dist/types/plugins/card/ui/link-toolbar-icon-dropdown-options.d.ts +5 -0
- package/dist/types/plugins/card/ui/styled.d.ts +2 -3
- package/dist/types/plugins/card/ui/types.d.ts +12 -0
- package/dist/types/plugins/clipboard/pm-plugins/main.d.ts +10 -1
- package/dist/types/plugins/code-block/styles.d.ts +3 -2
- package/dist/types/plugins/collab-edit/styles.d.ts +1 -1
- package/dist/types/plugins/collab-edit/ui/avatars.d.ts +1 -0
- package/dist/types/plugins/collab-edit/ui/colored-avatar-item.d.ts +3 -2
- package/dist/types/plugins/collab-edit/ui/invite-to-edit.d.ts +1 -0
- package/dist/types/plugins/collab-edit/ui/styles.d.ts +3 -8
- package/dist/types/plugins/date/nodeviews/date.d.ts +3 -15
- package/dist/types/plugins/date/styles.d.ts +1 -1
- package/dist/types/plugins/date/ui/DatePicker/date-picker-input.d.ts +1 -0
- package/dist/types/plugins/date/ui/DatePicker/index.d.ts +1 -0
- package/dist/types/plugins/emoji/styles.d.ts +2 -2
- package/dist/types/plugins/expand/ui/ExpandIconButton.d.ts +5 -3
- package/dist/types/plugins/expand/ui/styles.d.ts +2 -1
- package/dist/types/plugins/extension/pm-plugins/main.d.ts +2 -1
- package/dist/types/plugins/extension/types.d.ts +1 -0
- package/dist/types/plugins/extension/ui/Extension/Extension/index.d.ts +1 -0
- package/dist/types/plugins/extension/ui/Extension/Extension/styles.d.ts +3 -8
- package/dist/types/plugins/extension/ui/Extension/InlineExtension/index.d.ts +3 -1
- package/dist/types/plugins/extension/ui/Extension/InlineExtension/styles.d.ts +2 -2
- package/dist/types/plugins/extension/ui/Extension/Lozenge.d.ts +3 -1
- package/dist/types/plugins/extension/ui/Extension/styles.d.ts +6 -6
- package/dist/types/plugins/extension/ui/SaveIndicator/SaveIndicator.d.ts +1 -0
- package/dist/types/plugins/extension/ui/styles.d.ts +1 -1
- package/dist/types/plugins/extension/utils.d.ts +3 -1
- package/dist/types/plugins/fake-text-cursor/styles.d.ts +1 -1
- package/dist/types/plugins/find-replace/styles.d.ts +1 -1
- package/dist/types/plugins/find-replace/ui/FindReplace.d.ts +2 -1
- package/dist/types/plugins/find-replace/ui/styles.d.ts +5 -5
- package/dist/types/plugins/floating-toolbar/ui/styles.d.ts +6 -1
- package/dist/types/plugins/grid/styles.d.ts +1 -1
- package/dist/types/plugins/help-dialog/ui/index.d.ts +3 -1
- package/dist/types/plugins/help-dialog/ui/styles.d.ts +12 -13
- package/dist/types/plugins/hyperlink/styles.d.ts +2 -4
- package/dist/types/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.d.ts +4 -2
- package/dist/types/plugins/jira-issue/nodeviews/jira-issue.d.ts +3 -2
- package/dist/types/plugins/layout/styles.d.ts +1 -1
- package/dist/types/plugins/list/actions/wrap-and-join-lists.d.ts +25 -0
- package/dist/types/plugins/list/commands/index.d.ts +0 -1
- package/dist/types/plugins/list/styles.d.ts +1 -1
- package/dist/types/plugins/list/utils/node.d.ts +0 -1
- package/dist/types/plugins/list/utils/replace-content.d.ts +8 -0
- package/dist/types/plugins/media/nodeviews/mediaNodeUpdater.d.ts +2 -2
- package/dist/types/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.d.ts +3 -1
- package/dist/types/plugins/media/pm-plugins/main.d.ts +0 -1
- package/dist/types/plugins/media/pm-plugins/media-editor-plugin-factory.d.ts +1 -3
- package/dist/types/plugins/media/styles.d.ts +1 -1
- package/dist/types/plugins/media/types.d.ts +0 -19
- package/dist/types/plugins/media/ui/ResizableMediaSingle/index.d.ts +3 -1
- package/dist/types/plugins/media/ui/ResizableMediaSingle/styled.d.ts +2 -2
- package/dist/types/plugins/media/utils/media-single.d.ts +1 -0
- package/dist/types/plugins/mentions/styles.d.ts +1 -1
- package/dist/types/plugins/panel/styles.d.ts +2 -1
- package/dist/types/plugins/paste/handlers.d.ts +1 -1
- package/dist/types/plugins/placeholder/styles.d.ts +1 -1
- package/dist/types/plugins/placeholder-text/placeholder-text-nodeview.d.ts +3 -2
- package/dist/types/plugins/placeholder-text/selection-utils.d.ts +2 -0
- package/dist/types/plugins/placeholder-text/styles.d.ts +1 -1
- package/dist/types/plugins/rule/styles.d.ts +2 -1
- package/dist/types/plugins/selection/gap-cursor/styles.d.ts +1 -1
- package/dist/types/plugins/status/nodeviews/status.d.ts +6 -13
- package/dist/types/plugins/status/plugin.d.ts +2 -3
- package/dist/types/plugins/status/styles.d.ts +1 -1
- package/dist/types/plugins/status/ui/statusPicker.d.ts +1 -1
- package/dist/types/plugins/table/commands/index.d.ts +1 -1
- package/dist/types/plugins/table/commands/misc.d.ts +0 -1
- package/dist/types/plugins/table/nodeviews/table.d.ts +0 -1
- package/dist/types/plugins/table/pm-plugins/plugin-factory.d.ts +1 -4
- package/dist/types/plugins/table/pm-plugins/plugin-key.d.ts +3 -0
- package/dist/types/plugins/table/types.d.ts +1 -8
- package/dist/types/plugins/table/ui/FloatingContextualButton/index.d.ts +4 -2
- package/dist/types/plugins/table/ui/FloatingContextualButton/styles.d.ts +1 -0
- package/dist/types/plugins/table/ui/FloatingContextualMenu/index.d.ts +3 -2
- package/dist/types/plugins/table/ui/FloatingContextualMenu/styles.d.ts +1 -0
- package/dist/types/plugins/table/ui/LayoutButton/index.d.ts +0 -1
- package/dist/types/plugins/table/ui/common-styles.d.ts +6 -0
- package/dist/types/plugins/table/ui/ui-styles.d.ts +15 -0
- package/dist/types/plugins/table/utils/nodes.d.ts +6 -6
- package/dist/types/plugins/tasks-and-decisions/styles.d.ts +1 -1
- package/dist/types/plugins/text-formatting/pm-plugins/smart-input-rule.d.ts +1 -1
- package/dist/types/plugins/text-formatting/styles.d.ts +2 -1
- package/dist/types/plugins/text-formatting/ui/Toolbar/toolbar-messages.d.ts +30 -0
- package/dist/types/plugins/text-formatting/utils.d.ts +4 -0
- package/dist/types/plugins/type-ahead/api.d.ts +11 -1
- package/dist/types/plugins/type-ahead/constants.d.ts +1 -0
- package/dist/types/plugins/type-ahead/transforms/open-typeahead-at-cursor.d.ts +1 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadList.d.ts +1 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadListItem.d.ts +26 -0
- package/dist/types/plugins/type-ahead/utils.d.ts +4 -0
- package/dist/types/plugins/unsupported-content/styles.d.ts +1 -1
- package/dist/types/types/editor-appearance-component.d.ts +0 -1
- package/dist/types/ui/Appearance/FullPage/FullPageContentArea.d.ts +0 -1
- package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +3 -9
- package/dist/types/ui/ColorPickerButton/index.d.ts +1 -1
- package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
- package/dist/types/ui/ConfigPanel/ErrorMessage/ErrorImage.d.ts +1 -0
- package/dist/types/ui/ConfigPanel/Fields/Boolean.d.ts +2 -2
- package/dist/types/ui/ConfigPanel/Fields/TabGroup.d.ts +1 -0
- package/dist/types/ui/ConfigPanel/FormErrorBoundary.d.ts +1 -1
- package/dist/types/ui/ConfigPanel/Header.d.ts +3 -3
- package/dist/types/ui/ContentStyles/index.d.ts +2 -4
- package/dist/types/ui/ElementBrowser/ModalElementBrowser.d.ts +1 -0
- package/dist/types/ui/ElementBrowser/components/ElementList/ElementList.d.ts +1 -0
- package/dist/types/ui/ElementBrowser/components/ElementSearch.d.ts +1 -1
- package/dist/types/ui/ElementBrowser/components/StatelessElementBrowser.d.ts +2 -1
- package/dist/types/ui/ElementBrowser/hooks/use-container-width.d.ts +1 -0
- package/dist/types/ui/LinkSearch/LinkSearchList.d.ts +4 -3
- package/dist/types/ui/Resizer/styled.d.ts +1 -2
- package/dist/types/ui/Toolbar/ToolbarInner.d.ts +3 -1
- package/dist/types/ui/ToolbarButton/index.d.ts +3 -3
- package/dist/types/ui/ToolbarButton/styles.d.ts +2 -2
- package/dist/types/ui/WithFlash/index.d.ts +3 -1
- package/dist/types/utils/index.d.ts +1 -1
- package/dist/types/utils/insert.d.ts +2 -1
- package/dist/types/utils/performance/components/RenderTracking.d.ts +13 -0
- package/dist/types/utils/selection.d.ts +0 -1
- package/package.json +36 -36
- package/dist/cjs/plugins/media/commands/media-editor.js +0 -80
- package/dist/cjs/plugins/media/pm-plugins/media-editor.js +0 -106
- package/dist/cjs/plugins/media/toolbar/annotation.js +0 -244
- package/dist/cjs/plugins/media/ui/MediaEditor.js +0 -88
- package/dist/cjs/plugins/table/ui/FloatingContextualButton/styles.css.js +0 -23
- package/dist/cjs/plugins/table/ui/FloatingContextualMenu/styles.css.js +0 -27
- package/dist/cjs/plugins/table/ui/common-styles.css.js +0 -44
- package/dist/cjs/plugins/table/ui/ui-styles.css.js +0 -95
- package/dist/cjs/utils/compare.js +0 -136
- package/dist/cjs/utils/react-hooks/use-component-renderer-tracking/index.js +0 -83
- package/dist/es2019/plugins/media/commands/media-editor.js +0 -46
- package/dist/es2019/plugins/media/pm-plugins/media-editor.js +0 -43
- package/dist/es2019/plugins/media/toolbar/annotation.js +0 -136
- package/dist/es2019/plugins/media/ui/MediaEditor.js +0 -51
- package/dist/es2019/utils/compare.js +0 -99
- package/dist/es2019/utils/react-hooks/use-component-renderer-tracking/index.js +0 -66
- package/dist/esm/plugins/media/commands/media-editor.js +0 -59
- package/dist/esm/plugins/media/pm-plugins/media-editor.js +0 -90
- package/dist/esm/plugins/media/toolbar/annotation.js +0 -218
- package/dist/esm/plugins/media/ui/MediaEditor.js +0 -76
- package/dist/esm/plugins/table/ui/common-styles.css.js +0 -23
- package/dist/esm/plugins/table/ui/ui-styles.css.js +0 -59
- package/dist/esm/utils/compare.js +0 -115
- package/dist/esm/utils/react-hooks/use-component-renderer-tracking/index.js +0 -68
- package/dist/types/plugins/media/commands/media-editor.d.ts +0 -7
- package/dist/types/plugins/media/pm-plugins/media-editor.d.ts +0 -3
- package/dist/types/plugins/media/toolbar/annotation.d.ts +0 -24
- package/dist/types/plugins/media/ui/MediaEditor.d.ts +0 -14
- package/dist/types/plugins/table/ui/FloatingContextualButton/styles.css.d.ts +0 -1
- package/dist/types/plugins/table/ui/FloatingContextualMenu/styles.css.d.ts +0 -1
- package/dist/types/plugins/table/ui/common-styles.css.d.ts +0 -3
- package/dist/types/plugins/table/ui/ui-styles.css.d.ts +0 -14
- package/dist/types/utils/compare.d.ts +0 -32
- package/dist/types/utils/react-hooks/use-component-renderer-tracking/index.d.ts +0 -30
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
|
|
3
|
+
/** @jsx jsx */
|
|
2
4
|
import React from 'react';
|
|
5
|
+
import { jsx } from '@emotion/react';
|
|
3
6
|
import { isSafeUrl } from '@atlaskit/adf-schema';
|
|
4
7
|
import CrossCircleIcon from '@atlaskit/icon/glyph/cross-circle';
|
|
5
8
|
import EditorAlignLeftIcon from '@atlaskit/icon/glyph/editor/align-left';
|
|
@@ -22,7 +25,7 @@ import debounce from 'lodash/debounce';
|
|
|
22
25
|
import { mapContentTypeToIcon, sha1, wordCount } from './utils';
|
|
23
26
|
import { hideLinkToolbar } from '../../commands';
|
|
24
27
|
import { hideLinkToolbar as cardHideLinkToolbar } from '../../../card/pm-plugins/actions';
|
|
25
|
-
import {
|
|
28
|
+
import { visuallyHiddenStyles } from '../../styles';
|
|
26
29
|
import { browser } from '@atlaskit/editor-common/utils';
|
|
27
30
|
import { transformTimeStamp } from '../../../../ui/LinkSearch/transformTimeStamp';
|
|
28
31
|
import Announcer from '../../../../utils/announcer/announcer';
|
|
@@ -77,7 +80,7 @@ export const messages = defineMessages({
|
|
|
77
80
|
description: 'aria label for a link'
|
|
78
81
|
}
|
|
79
82
|
});
|
|
80
|
-
const defaultIcon =
|
|
83
|
+
const defaultIcon = jsx(Page16Icon, {
|
|
81
84
|
label: 'page'
|
|
82
85
|
});
|
|
83
86
|
|
|
@@ -725,24 +728,25 @@ export class HyperlinkLinkAddToolbar extends PureComponent {
|
|
|
725
728
|
// for details: https://a11y-internal.atlassian.net/browse/AK-740
|
|
726
729
|
|
|
727
730
|
const screenReaderText = browser.safari && this.getScreenReaderText();
|
|
728
|
-
return
|
|
731
|
+
return jsx("div", {
|
|
729
732
|
className: "recent-list"
|
|
730
|
-
},
|
|
733
|
+
}, jsx(Container, {
|
|
731
734
|
provider: !!activityProvider,
|
|
732
735
|
innerRef: this.wrapperRef
|
|
733
|
-
},
|
|
736
|
+
}, jsx(UrlInputWrapper, null, jsx(IconWrapper, null, jsx(Tooltip, {
|
|
734
737
|
content: formatLinkAddressText
|
|
735
|
-
},
|
|
738
|
+
}, jsx(LinkIcon, {
|
|
736
739
|
label: formatLinkAddressText
|
|
737
|
-
}))), screenReaderText &&
|
|
740
|
+
}))), screenReaderText && jsx(Announcer, {
|
|
738
741
|
ariaLive: "assertive",
|
|
739
742
|
text: screenReaderText,
|
|
740
743
|
ariaRelevant: "additions",
|
|
741
744
|
delay: 250
|
|
742
|
-
}),
|
|
745
|
+
}), jsx("div", {
|
|
746
|
+
css: visuallyHiddenStyles,
|
|
743
747
|
"aria-hidden": "true",
|
|
744
748
|
id: screenReaderDescriptionId
|
|
745
|
-
}, formatMessage(messages.searchLinkAriaDescription)),
|
|
749
|
+
}, formatMessage(messages.searchLinkAriaDescription)), jsx(PanelTextInput, {
|
|
746
750
|
role: "combobox",
|
|
747
751
|
ariaExpanded: true,
|
|
748
752
|
ariaActiveDescendant: ariaActiveDescendant,
|
|
@@ -760,17 +764,17 @@ export class HyperlinkLinkAddToolbar extends PureComponent {
|
|
|
760
764
|
onCancel: this.handleCancel,
|
|
761
765
|
defaultValue: displayUrl,
|
|
762
766
|
onKeyDown: this.handleKeyDown
|
|
763
|
-
}), displayUrl &&
|
|
767
|
+
}), displayUrl && jsx(Tooltip, {
|
|
764
768
|
content: formatClearLinkText
|
|
765
|
-
},
|
|
769
|
+
}, jsx(ClearText, {
|
|
766
770
|
onClick: this.handleClearText
|
|
767
|
-
},
|
|
771
|
+
}, jsx(CrossCircleIcon, {
|
|
768
772
|
label: formatClearLinkText
|
|
769
|
-
})))),
|
|
773
|
+
})))), jsx(TextInputWrapper, null, jsx(IconWrapper, null, jsx(Tooltip, {
|
|
770
774
|
content: formatDisplayText
|
|
771
|
-
},
|
|
775
|
+
}, jsx(EditorAlignLeftIcon, {
|
|
772
776
|
label: formatDisplayText
|
|
773
|
-
}))),
|
|
777
|
+
}))), jsx(PanelTextInput, {
|
|
774
778
|
ref: ele => this.displayTextInputContainer = ele,
|
|
775
779
|
placeholder: formatDisplayText,
|
|
776
780
|
ariaLabel: formatMessage(messages.linkAriaLabel),
|
|
@@ -780,20 +784,21 @@ export class HyperlinkLinkAddToolbar extends PureComponent {
|
|
|
780
784
|
defaultValue: displayText,
|
|
781
785
|
onSubmit: this.handleSubmit,
|
|
782
786
|
onKeyDown: this.handleKeyDown
|
|
783
|
-
}), displayText &&
|
|
787
|
+
}), displayText && jsx(Tooltip, {
|
|
784
788
|
content: formatMessage(messages.clearText)
|
|
785
|
-
},
|
|
789
|
+
}, jsx(ClearText, {
|
|
786
790
|
onClick: this.handleClearDisplayText,
|
|
787
791
|
onKeyDown: this.handleClearTextKeyDown
|
|
788
|
-
},
|
|
792
|
+
}, jsx(CrossCircleIcon, {
|
|
789
793
|
label: formatMessage(messages.clearText)
|
|
790
|
-
})))),
|
|
794
|
+
})))), jsx("div", {
|
|
795
|
+
css: visuallyHiddenStyles,
|
|
791
796
|
"aria-live": "polite",
|
|
792
797
|
"aria-atomic": "true",
|
|
793
798
|
id: "fabric.editor.hyperlink.suggested.results"
|
|
794
799
|
}, displayUrl && formatMessage(messages.searchLinkResults, {
|
|
795
800
|
count: items.length
|
|
796
|
-
})),
|
|
801
|
+
})), jsx(LinkSearchList, {
|
|
797
802
|
ariaControls: "fabric.editor.hyperlink.suggested.results",
|
|
798
803
|
id: linkSearchListId,
|
|
799
804
|
role: "listbox",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
1
|
+
/** @jsx jsx */
|
|
2
|
+
import { css, jsx } from '@emotion/react';
|
|
3
3
|
import { JiraIcon } from '@atlaskit/logo/jira-icon';
|
|
4
4
|
import { borderRadius } from '@atlaskit/theme/constants';
|
|
5
5
|
import { N30, N50 } from '@atlaskit/theme/colors';
|
|
6
6
|
import { relativeFontSizeToBase16 } from '@atlaskit/editor-shared-styles';
|
|
7
|
-
const
|
|
7
|
+
const wrapperNode = css`
|
|
8
8
|
align-items: center;
|
|
9
9
|
background: ${N30};
|
|
10
10
|
border: 1px solid ${N50};
|
|
@@ -25,7 +25,7 @@ const WrapperNode = styled.span`
|
|
|
25
25
|
outline: none;
|
|
26
26
|
}
|
|
27
27
|
`;
|
|
28
|
-
const
|
|
28
|
+
const jiraChildNode = css`
|
|
29
29
|
display: inline-block;
|
|
30
30
|
color: #707070;
|
|
31
31
|
line-height: 24px;
|
|
@@ -36,7 +36,7 @@ const JiraChildNode = styled.span`
|
|
|
36
36
|
content: 'JIRA | ';
|
|
37
37
|
}
|
|
38
38
|
`;
|
|
39
|
-
const
|
|
39
|
+
const svgChildNode = css`
|
|
40
40
|
display: inline-block;
|
|
41
41
|
height: 24px;
|
|
42
42
|
vertical-align: top;
|
|
@@ -55,7 +55,14 @@ export default function JIRAIssueNode(props) {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
} = props;
|
|
58
|
-
return
|
|
58
|
+
return jsx("span", {
|
|
59
|
+
css: wrapperNode,
|
|
60
|
+
"data-testid": "jira-issue-node"
|
|
61
|
+
}, jsx("span", {
|
|
62
|
+
css: svgChildNode
|
|
63
|
+
}, jsx(JiraIcon, {
|
|
59
64
|
size: "small"
|
|
60
|
-
})),
|
|
65
|
+
})), jsx("span", {
|
|
66
|
+
css: jiraChildNode
|
|
67
|
+
}, issueKey));
|
|
61
68
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { css } from '
|
|
1
|
+
import { css } from '@emotion/react';
|
|
2
2
|
import { gridSize } from '@atlaskit/theme/constants';
|
|
3
3
|
import { N40A, N50A } from '@atlaskit/theme/colors';
|
|
4
4
|
import { columnLayoutSharedStyle } from '@atlaskit/editor-common/styles';
|
|
@@ -36,6 +36,10 @@ export const layoutStyles = css`
|
|
|
36
36
|
margin-top: 0;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
.rich-media-item {
|
|
40
|
+
margin-top: 0;
|
|
41
|
+
}
|
|
42
|
+
|
|
39
43
|
> .mediaSingleView-content-wrap:first-child .rich-media-item {
|
|
40
44
|
margin-top: 0;
|
|
41
45
|
}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { Fragment, Slice, NodeRange } from 'prosemirror-model';
|
|
2
|
+
import { ReplaceAroundStep, findWrapping, canSplit, canJoin } from 'prosemirror-transform';
|
|
3
|
+
/**
|
|
4
|
+
* Wraps the selection in a list with the given type. If this results in
|
|
5
|
+
* two adjacent lists of the same type, those will be joined together.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export function wrapInListAndJoin(nodeType, tr) {
|
|
9
|
+
wrapInList(nodeType)(tr);
|
|
10
|
+
autoJoin(tr, (before, after) => before.type === after.type && before.type === nodeType);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Wraps the selection in a list with the given type and attributes.
|
|
14
|
+
*
|
|
15
|
+
* Adapted from https://github.com/ProseMirror/prosemirror-schema-list/blob/master/src/schema-list.js#L64-L89
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
export function wrapInList(listType, attrs) {
|
|
19
|
+
return function (tr) {
|
|
20
|
+
const {
|
|
21
|
+
$from,
|
|
22
|
+
$to
|
|
23
|
+
} = tr.selection;
|
|
24
|
+
let range = $from.blockRange($to);
|
|
25
|
+
let doJoin = false;
|
|
26
|
+
let outerRange = range;
|
|
27
|
+
|
|
28
|
+
if (!range) {
|
|
29
|
+
return false;
|
|
30
|
+
} // This is at the top of an existing list item
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
if (range.depth >= 2 && // @ts-ignore - missing type for compatibleContent
|
|
34
|
+
$from.node(range.depth - 1).type.compatibleContent(listType) && range.startIndex === 0) {
|
|
35
|
+
// Don't do anything if this is the top of the list
|
|
36
|
+
if ($from.index(range.depth - 1) === 0) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
let $insert = tr.doc.resolve(range.start - 2);
|
|
41
|
+
outerRange = new NodeRange($insert, $insert, range.depth);
|
|
42
|
+
|
|
43
|
+
if (range.endIndex < range.parent.childCount) {
|
|
44
|
+
range = new NodeRange($from, tr.doc.resolve($to.end(range.depth)), range.depth);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
doJoin = true;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
let wrap = findWrapping(outerRange, listType, attrs, range);
|
|
51
|
+
|
|
52
|
+
if (!wrap) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
tr = doWrapInList(tr, range, wrap, doJoin, listType);
|
|
57
|
+
return true;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Internal function used by wrapInList
|
|
62
|
+
*
|
|
63
|
+
* Adapted from https://github.com/ProseMirror/prosemirror-schema-list/blob/master/src/schema-list.js#L91-L112
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
function doWrapInList(tr, range, wrappers, joinBefore, listType) {
|
|
67
|
+
let content = Fragment.empty;
|
|
68
|
+
|
|
69
|
+
for (let i = wrappers.length - 1; i >= 0; i--) {
|
|
70
|
+
content = Fragment.from(wrappers[i].type.create(wrappers[i].attrs, content));
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
tr.step(new ReplaceAroundStep(range.start - (joinBefore ? 2 : 0), range.end, range.start, range.end, new Slice(content, 0, 0), wrappers.length, true));
|
|
74
|
+
let found = 0;
|
|
75
|
+
|
|
76
|
+
for (let i = 0; i < wrappers.length; i++) {
|
|
77
|
+
if (wrappers[i].type === listType) {
|
|
78
|
+
found = i + 1;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
const splitDepth = wrappers.length - found;
|
|
83
|
+
let splitPos = range.start + wrappers.length - (joinBefore ? 2 : 0);
|
|
84
|
+
const parent = range.parent;
|
|
85
|
+
|
|
86
|
+
for (let i = range.startIndex, e = range.endIndex, first = true; i < e; i++, first = false) {
|
|
87
|
+
if (!first && canSplit(tr.doc, splitPos, splitDepth)) {
|
|
88
|
+
tr.split(splitPos, splitDepth);
|
|
89
|
+
splitPos += 2 * splitDepth;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
splitPos += parent.child(i).nodeSize;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return tr;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Checks whether two adjacent nodes can be joined. If so, the document
|
|
99
|
+
* will be updated to join those nodes. If not, the original transaction
|
|
100
|
+
* remains untouched.
|
|
101
|
+
*
|
|
102
|
+
* Nodes are considered joinable if the `isJoinable` predicate returns true.
|
|
103
|
+
*
|
|
104
|
+
* Adapted from https://github.com/ProseMirror/prosemirror-commands/blob/master/src/commands.js#L597-L610
|
|
105
|
+
*/
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
export function autoJoin(tr, isJoinable) {
|
|
109
|
+
if (!tr.isGeneric) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
const ranges = [];
|
|
114
|
+
|
|
115
|
+
for (let i = 0; i < tr.mapping.maps.length; i++) {
|
|
116
|
+
const map = tr.mapping.maps[i];
|
|
117
|
+
|
|
118
|
+
for (let j = 0; j < ranges.length; j++) {
|
|
119
|
+
ranges[j] = map.map(ranges[j]);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
map.forEach((_s, _e, from, to) => ranges.push(from, to));
|
|
123
|
+
} // Figure out which joinable points exist inside those ranges,
|
|
124
|
+
// by checking all node boundaries in their parent nodes.
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
const joinable = [];
|
|
128
|
+
|
|
129
|
+
for (let i = 0; i < ranges.length; i += 2) {
|
|
130
|
+
const from = ranges[i];
|
|
131
|
+
const to = ranges[i + 1];
|
|
132
|
+
const $from = tr.doc.resolve(from);
|
|
133
|
+
const depth = $from.sharedDepth(to);
|
|
134
|
+
const parent = $from.node(depth);
|
|
135
|
+
|
|
136
|
+
for (let index = $from.indexAfter(depth), pos = $from.after(depth + 1); pos <= to; ++index) {
|
|
137
|
+
const after = parent.maybeChild(index);
|
|
138
|
+
|
|
139
|
+
if (!after) {
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (index && joinable.indexOf(pos) === -1) {
|
|
144
|
+
const before = parent.child(index - 1);
|
|
145
|
+
|
|
146
|
+
if (before.type === after.type && isJoinable(before, after)) {
|
|
147
|
+
joinable.push(pos);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
pos += after.nodeSize;
|
|
152
|
+
}
|
|
153
|
+
} // Join the joinable points
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
joinable.sort((a, b) => a - b);
|
|
157
|
+
|
|
158
|
+
for (let i = joinable.length - 1; i >= 0; i--) {
|
|
159
|
+
if (canJoin(tr.doc, joinable[i])) {
|
|
160
|
+
tr.join(joinable[i]);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Fragment, Slice } from 'prosemirror-model';
|
|
2
|
-
import {
|
|
2
|
+
import { TextSelection } from 'prosemirror-state';
|
|
3
3
|
import * as baseCommand from 'prosemirror-commands';
|
|
4
|
-
import * as baseListCommand from 'prosemirror-schema-list';
|
|
5
4
|
import { hasParentNodeOfType, findPositionOfNodeBefore } from 'prosemirror-utils';
|
|
6
5
|
import { hasVisibleContent, isNodeEmpty } from '../../../utils/document';
|
|
7
6
|
import { findCutBefore, isEmptySelectionAtStart, isFirstChildOfParent, filter } from '../../../utils/commands';
|
|
@@ -14,8 +13,10 @@ import { getCommonListAnalyticsAttributes } from '../utils/analytics';
|
|
|
14
13
|
import { listBackspace } from './listBackspace';
|
|
15
14
|
import { joinListItemForward } from './join-list-item-forward';
|
|
16
15
|
import { convertListType } from '../actions/conversions';
|
|
16
|
+
import { wrapInListAndJoin } from '../actions/wrap-and-join-lists';
|
|
17
17
|
import { outdentList } from './outdent-list';
|
|
18
18
|
import { indentList } from './indent-list';
|
|
19
|
+
import { moveTargetIntoList } from '../utils/replace-content';
|
|
19
20
|
export { outdentList, indentList };
|
|
20
21
|
export const enterKeyCommand = (state, dispatch) => {
|
|
21
22
|
const {
|
|
@@ -91,8 +92,8 @@ function untoggleSelectedList(tr) {
|
|
|
91
92
|
|
|
92
93
|
export function toggleList(inputMethod, listType) {
|
|
93
94
|
return function (state, dispatch) {
|
|
94
|
-
let
|
|
95
|
-
const listInsideSelection = selectionContainsList(
|
|
95
|
+
let tr = state.tr;
|
|
96
|
+
const listInsideSelection = selectionContainsList(tr);
|
|
96
97
|
const listNodeType = state.schema.nodes[listType];
|
|
97
98
|
const actionSubjectId = listType === 'bulletList' ? ACTION_SUBJECT_ID.FORMAT_LIST_BULLET : ACTION_SUBJECT_ID.FORMAT_LIST_NUMBER;
|
|
98
99
|
|
|
@@ -126,10 +127,10 @@ export function toggleList(inputMethod, listType) {
|
|
|
126
127
|
}
|
|
127
128
|
|
|
128
129
|
convertListType({
|
|
129
|
-
tr
|
|
130
|
+
tr,
|
|
130
131
|
nextListNodeType: listNodeType
|
|
131
132
|
});
|
|
132
|
-
addAnalytics(state,
|
|
133
|
+
addAnalytics(state, tr, {
|
|
133
134
|
action: ACTION.CONVERTED,
|
|
134
135
|
actionSubject: ACTION_SUBJECT.LIST,
|
|
135
136
|
actionSubjectId,
|
|
@@ -140,17 +141,11 @@ export function toggleList(inputMethod, listType) {
|
|
|
140
141
|
}
|
|
141
142
|
});
|
|
142
143
|
} else {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
// until after wrapInList, since any changes made to it will be discarded when it
|
|
149
|
-
// gets replaced with the transaction generated by wrapInList.
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
wrapInList(listNodeType)(state, replaceCurrentTr);
|
|
153
|
-
addAnalytics(state, customTr, {
|
|
144
|
+
// Need to have this before wrapInList so the wrapping is done with valid content
|
|
145
|
+
// For example, if trying to convert centre or right aligned paragraphs to lists
|
|
146
|
+
sanitiseMarksInSelection(tr, listNodeType);
|
|
147
|
+
wrapInListAndJoin(listNodeType, tr);
|
|
148
|
+
addAnalytics(state, tr, {
|
|
154
149
|
action: ACTION.INSERTED,
|
|
155
150
|
actionSubject: ACTION_SUBJECT.LIST,
|
|
156
151
|
actionSubjectId,
|
|
@@ -159,18 +154,16 @@ export function toggleList(inputMethod, listType) {
|
|
|
159
154
|
inputMethod
|
|
160
155
|
}
|
|
161
156
|
});
|
|
162
|
-
} //
|
|
163
|
-
//
|
|
157
|
+
} // If document wasn't changed, return false from the command to indicate that the
|
|
158
|
+
// editing action failed
|
|
164
159
|
|
|
165
160
|
|
|
166
|
-
if (!
|
|
161
|
+
if (!tr.docChanged) {
|
|
167
162
|
return false;
|
|
168
163
|
}
|
|
169
164
|
|
|
170
|
-
sanitiseMarksInSelection(customTr, listNodeType);
|
|
171
|
-
|
|
172
165
|
if (dispatch) {
|
|
173
|
-
dispatch(
|
|
166
|
+
dispatch(tr);
|
|
174
167
|
}
|
|
175
168
|
|
|
176
169
|
return true;
|
|
@@ -182,9 +175,6 @@ export function toggleBulletList(view, inputMethod = INPUT_METHOD.TOOLBAR) {
|
|
|
182
175
|
export function toggleOrderedList(view, inputMethod = INPUT_METHOD.TOOLBAR) {
|
|
183
176
|
return toggleList(inputMethod, 'orderedList')(view.state, view.dispatch);
|
|
184
177
|
}
|
|
185
|
-
export function wrapInList(nodeType) {
|
|
186
|
-
return baseCommand.autoJoin(baseListCommand.wrapInList(nodeType), (before, after) => before.type === after.type && before.type === nodeType);
|
|
187
|
-
}
|
|
188
178
|
/**
|
|
189
179
|
* Implementation taken and modified for our needs from PM
|
|
190
180
|
* @param itemType Node
|
|
@@ -326,8 +316,20 @@ const joinToPreviousListItem = (state, dispatch) => {
|
|
|
326
316
|
const list = $cut.nodeBefore.copy($cut.nodeBefore.content.append(Fragment.from(listItem.createChecked({}, $cut.nodeAfter))));
|
|
327
317
|
tr.replaceWith(nodeBeforePos, $from.pos + $cut.nodeAfter.nodeSize, list);
|
|
328
318
|
} else {
|
|
329
|
-
|
|
330
|
-
|
|
319
|
+
const step = moveTargetIntoList({
|
|
320
|
+
insertPosition: $lastNode.pos,
|
|
321
|
+
$target: $cut
|
|
322
|
+
}); // ED-13966: check if the step will cause an ProseMirror error
|
|
323
|
+
// if there's an error don't apply the step as it will might lead into a data loss.
|
|
324
|
+
// It doesn't play well with media being a leaf node.
|
|
325
|
+
|
|
326
|
+
const stepResult = state.tr.maybeStep(step);
|
|
327
|
+
|
|
328
|
+
if (stepResult.failed) {
|
|
329
|
+
return false;
|
|
330
|
+
} else {
|
|
331
|
+
tr = state.tr.step(step);
|
|
332
|
+
}
|
|
331
333
|
} // find out if there's now another list following and join them
|
|
332
334
|
// as in, [list, p, list] => [list with p, list], and we want [joined list]
|
|
333
335
|
|
|
@@ -339,6 +341,12 @@ const joinToPreviousListItem = (state, dispatch) => {
|
|
|
339
341
|
}
|
|
340
342
|
|
|
341
343
|
if (dispatch) {
|
|
344
|
+
var _tr$doc$resolve$nodeB;
|
|
345
|
+
|
|
346
|
+
if (!((_tr$doc$resolve$nodeB = tr.doc.resolve($lastNode.pos).nodeBefore) !== null && _tr$doc$resolve$nodeB !== void 0 && _tr$doc$resolve$nodeB.isBlock) || tr.doc.resolve($lastNode.pos).nodeBefore === null) {
|
|
347
|
+
tr = tr.setSelection(TextSelection.near(tr.doc.resolve(tr.mapping.map($cut.pos)), -1));
|
|
348
|
+
}
|
|
349
|
+
|
|
342
350
|
dispatch(tr.scrollIntoView());
|
|
343
351
|
}
|
|
344
352
|
|
|
@@ -45,6 +45,12 @@ export const getDecorations = doc => {
|
|
|
45
45
|
decorations.push(Decoration.node(from, to, {
|
|
46
46
|
'data-indent-level': `${depth}`
|
|
47
47
|
}));
|
|
48
|
+
|
|
49
|
+
if (node.childCount >= 100) {
|
|
50
|
+
decorations.push(Decoration.node(from, to, {
|
|
51
|
+
'data-child-count': '100+'
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
48
54
|
}
|
|
49
55
|
});
|
|
50
56
|
return DecorationSet.empty.add(doc, decorations);
|
|
@@ -116,10 +116,11 @@ export const joinSiblingLists = ({
|
|
|
116
116
|
|
|
117
117
|
for (let i = joins.length - 1; i >= 0; i--) {
|
|
118
118
|
const listNode = tr.doc.nodeAt(joins[i]);
|
|
119
|
+
const listName = listNode === null || listNode === void 0 ? void 0 : listNode.type.name;
|
|
119
120
|
|
|
120
|
-
if (
|
|
121
|
-
const amount = result[
|
|
122
|
-
result[
|
|
121
|
+
if (listName && (listName === 'orderedList' || listName === 'bulletList')) {
|
|
122
|
+
const amount = result[listName] || 0;
|
|
123
|
+
result[listName] = amount + 1;
|
|
123
124
|
}
|
|
124
125
|
|
|
125
126
|
tr.join(joins[i]);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ReplaceAroundStep, ReplaceStep } from 'prosemirror-transform';
|
|
2
|
+
export const moveTargetIntoList = ({
|
|
3
|
+
insertPosition,
|
|
4
|
+
$target
|
|
5
|
+
}) => {
|
|
6
|
+
var _$target$nodeAfter;
|
|
7
|
+
|
|
8
|
+
// take the text content of the paragraph and insert after the paragraph up until before the the cut
|
|
9
|
+
const from = insertPosition;
|
|
10
|
+
const to = $target.pos + (((_$target$nodeAfter = $target.nodeAfter) === null || _$target$nodeAfter === void 0 ? void 0 : _$target$nodeAfter.nodeSize) || 0); //$cut.pos + $cut.nodeAfter.nodeSize;
|
|
11
|
+
|
|
12
|
+
const gapFrom = $target.posAtIndex(0, $target.depth + 1); // start pos of the child
|
|
13
|
+
|
|
14
|
+
const gapTo = $target.doc.resolve(gapFrom).end(); // end pos of the paragraph
|
|
15
|
+
|
|
16
|
+
if (gapTo - gapFrom === 0) {
|
|
17
|
+
return new ReplaceStep(from, to, $target.doc.slice(insertPosition, $target.pos));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const step = new ReplaceAroundStep(from, to, gapFrom, gapTo, $target.doc.slice(insertPosition, $target.pos), 0, true);
|
|
21
|
+
return step;
|
|
22
|
+
};
|
|
@@ -2,8 +2,6 @@ import React from 'react';
|
|
|
2
2
|
import { media, mediaGroup, mediaSingle, mediaSingleWithCaption, mediaInline } from '@atlaskit/adf-schema';
|
|
3
3
|
import { stateKey as pluginKey, createPlugin } from './pm-plugins/main';
|
|
4
4
|
import { getMediaFeatureFlag } from '@atlaskit/media-common';
|
|
5
|
-
import { createPlugin as createMediaEditorPlugin } from './pm-plugins/media-editor';
|
|
6
|
-
import { pluginKey as mediaEditorPluginKey } from './pm-plugins/media-editor-plugin-factory';
|
|
7
5
|
import { createPlugin as createMediaAltTextPlugin } from './pm-plugins/alt-text';
|
|
8
6
|
import keymapMediaAltTextPlugin from './pm-plugins/alt-text/keymap';
|
|
9
7
|
import keymapMediaSinglePlugin from './pm-plugins/keymap-media-single';
|
|
@@ -17,7 +15,6 @@ import { floatingToolbar } from './toolbar';
|
|
|
17
15
|
import { addAnalytics, ACTION, ACTION_SUBJECT, INPUT_METHOD, EVENT_TYPE, ACTION_SUBJECT_ID } from '../analytics';
|
|
18
16
|
import { IconImages } from '../quick-insert/assets';
|
|
19
17
|
import WithPluginState from '../../ui/WithPluginState';
|
|
20
|
-
import MediaEditor from './ui/MediaEditor';
|
|
21
18
|
import { MediaPickerComponents } from './ui/MediaPicker';
|
|
22
19
|
import { messages } from '../insert-block/ui/ToolbarInsertBlock/messages';
|
|
23
20
|
import { ReactMediaNode } from './nodeviews/mediaNodeView';
|
|
@@ -109,13 +106,6 @@ const mediaPlugin = options => ({
|
|
|
109
106
|
});
|
|
110
107
|
}
|
|
111
108
|
|
|
112
|
-
if (options && options.allowAnnotation) {
|
|
113
|
-
pmPlugins.push({
|
|
114
|
-
name: 'mediaEditor',
|
|
115
|
-
plugin: createMediaEditorPlugin
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
|
|
119
109
|
if (options && options.allowAltTextOnImages) {
|
|
120
110
|
pmPlugins.push({
|
|
121
111
|
name: 'mediaAltText',
|
|
@@ -149,24 +139,8 @@ const mediaPlugin = options => ({
|
|
|
149
139
|
|
|
150
140
|
contentComponent({
|
|
151
141
|
editorView,
|
|
152
|
-
eventDispatcher,
|
|
153
142
|
appearance
|
|
154
143
|
}) {
|
|
155
|
-
// render MediaEditor separately because it doesn't depend on media plugin state
|
|
156
|
-
// so we can utilise EventDispatcher-based rerendering
|
|
157
|
-
const mediaEditor = options && options.allowAnnotation ? /*#__PURE__*/React.createElement(WithPluginState, {
|
|
158
|
-
editorView: editorView,
|
|
159
|
-
plugins: {
|
|
160
|
-
mediaEditorState: mediaEditorPluginKey
|
|
161
|
-
},
|
|
162
|
-
eventDispatcher: eventDispatcher,
|
|
163
|
-
render: ({
|
|
164
|
-
mediaEditorState
|
|
165
|
-
}) => /*#__PURE__*/React.createElement(MediaEditor, {
|
|
166
|
-
mediaEditorState: mediaEditorState,
|
|
167
|
-
view: editorView
|
|
168
|
-
})
|
|
169
|
-
}) : null;
|
|
170
144
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(WithPluginState, {
|
|
171
145
|
editorView: editorView,
|
|
172
146
|
plugins: {
|
|
@@ -179,7 +153,7 @@ const mediaPlugin = options => ({
|
|
|
179
153
|
mediaState: mediaState,
|
|
180
154
|
appearance: appearance
|
|
181
155
|
})
|
|
182
|
-
})
|
|
156
|
+
}));
|
|
183
157
|
},
|
|
184
158
|
|
|
185
159
|
secondaryToolbarComponent({
|
|
@@ -227,7 +201,6 @@ const mediaPlugin = options => ({
|
|
|
227
201
|
allowMediaInline: options && getMediaFeatureFlag('mediaInline', options.featureFlags),
|
|
228
202
|
allowResizing: options && options.allowResizing,
|
|
229
203
|
allowResizingInTables: options && options.allowResizingInTables,
|
|
230
|
-
allowAnnotation: options && options.allowAnnotation,
|
|
231
204
|
allowLinking: options && options.allowLinking,
|
|
232
205
|
allowAdvancedToolBarOptions: options && options.allowAdvancedToolBarOptions,
|
|
233
206
|
allowAltTextOnImages: options && options.allowAltTextOnImages,
|
|
@@ -86,7 +86,7 @@ export class MediaNodeUpdater {
|
|
|
86
86
|
|
|
87
87
|
_defineProperty(this, "getObjectId", async () => {
|
|
88
88
|
const contextIdentifierProvider = await this.props.contextIdentifierProvider;
|
|
89
|
-
return contextIdentifierProvider
|
|
89
|
+
return (contextIdentifierProvider === null || contextIdentifierProvider === void 0 ? void 0 : contextIdentifierProvider.objectId) || null;
|
|
90
90
|
});
|
|
91
91
|
|
|
92
92
|
_defineProperty(this, "uploadExternalMedia", async getPos => {
|
|
@@ -135,10 +135,10 @@ export class MediaNodeUpdater {
|
|
|
135
135
|
const attrs = this.getAttrs();
|
|
136
136
|
|
|
137
137
|
if (!attrs || attrs.type !== 'file') {
|
|
138
|
-
return
|
|
138
|
+
return null;
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
return attrs.__contextId;
|
|
141
|
+
return attrs.__contextId || null;
|
|
142
142
|
});
|
|
143
143
|
|
|
144
144
|
_defineProperty(this, "updateDimensions", dimensions => {
|