@atlaskit/editor-core 166.0.4 → 167.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/.eslintrc.js +46 -1
- package/CHANGELOG.md +87 -0
- package/dist/cjs/actions/index.js +26 -2
- package/dist/cjs/create-editor/ReactEditorView.js +2 -0
- package/dist/cjs/create-editor/create-plugins-list.js +1 -2
- package/dist/cjs/editor.js +5 -2
- package/dist/cjs/keymaps/index.js +5 -1
- package/dist/cjs/labs/next/ContentComponents.js +8 -4
- package/dist/cjs/labs/next/full-page.js +14 -8
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.js +7 -3
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.styles.js +3 -1
- package/dist/cjs/plugins/alignment/ui/ToolbarAlignment/styles.js +3 -1
- package/dist/cjs/plugins/analytics/types/enums.js +3 -0
- package/dist/cjs/plugins/base/index.js +8 -17
- package/dist/cjs/plugins/base/pm-plugins/better-type-history.js +3 -12
- package/dist/cjs/plugins/base/pm-plugins/inline-cursor-target.js +71 -16
- package/dist/cjs/plugins/block-type/commands/block-type.js +32 -22
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/styled.js +4 -2
- package/dist/cjs/plugins/breakout/ui/LayoutButton.js +4 -11
- package/dist/cjs/plugins/card/styles.js +1 -1
- package/dist/cjs/plugins/card/ui/LinkToolbarIconDropdown.js +2 -2
- package/dist/cjs/plugins/code-block/actions.js +36 -2
- package/dist/cjs/plugins/code-block/nodeviews/code-block.js +70 -1
- package/dist/cjs/plugins/code-block/pm-plugins/actions.js +2 -1
- package/dist/cjs/plugins/code-block/pm-plugins/main.js +46 -8
- package/dist/cjs/plugins/code-block/styles.js +28 -24
- package/dist/cjs/plugins/collab-edit/styles.js +4 -2
- package/dist/cjs/plugins/collab-edit/ui/styles.js +4 -2
- package/dist/cjs/plugins/collab-edit/utils.js +1 -0
- package/dist/cjs/plugins/date/ui/DatePicker/index.js +3 -1
- package/dist/cjs/plugins/expand/ui/styles.js +16 -14
- package/dist/cjs/plugins/extension/commands.js +3 -2
- package/dist/cjs/plugins/extension/context-panel.js +21 -7
- package/dist/cjs/plugins/extension/ui/Extension/Extension/styles.js +6 -4
- package/dist/cjs/plugins/extension/ui/Extension/InlineExtension/styles.js +3 -1
- package/dist/cjs/plugins/extension/ui/Extension/styles.js +7 -5
- package/dist/cjs/plugins/extension/ui/SaveIndicator/SaveIndicator.js +4 -2
- package/dist/cjs/plugins/fake-text-cursor/styles.js +3 -1
- package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/cjs/plugins/find-replace/styles.js +2 -6
- package/dist/cjs/plugins/find-replace/ui/styles.js +4 -2
- package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +3 -1
- package/dist/cjs/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +3 -1
- package/dist/cjs/plugins/floating-toolbar/ui/Separator.js +3 -1
- package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +6 -4
- package/dist/cjs/plugins/floating-toolbar/ui/styles.js +12 -10
- package/dist/cjs/plugins/grid/styles.js +3 -1
- package/dist/cjs/plugins/help-dialog/ui/styles.js +9 -7
- package/dist/cjs/plugins/hyperlink/pm-plugins/input-rule.js +23 -1
- package/dist/cjs/plugins/hyperlink/pm-plugins/keymap.js +10 -1
- package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +5 -3
- package/dist/cjs/plugins/hyperlink/utils.js +53 -2
- package/dist/cjs/plugins/jira-issue/nodeviews/jira-issue.js +4 -2
- package/dist/cjs/plugins/layout/styles.js +1 -1
- package/dist/cjs/plugins/media/commands/helpers.js +10 -9
- package/dist/cjs/plugins/media/nodeviews/mediaInline.js +23 -4
- package/dist/cjs/plugins/media/nodeviews/mediaNodeView/media.js +6 -0
- package/dist/cjs/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +5 -3
- package/dist/cjs/plugins/media/pm-plugins/main.js +1 -0
- package/dist/cjs/plugins/media/styles.js +1 -1
- package/dist/cjs/plugins/media/ui/CaptionPlaceholder/index.js +3 -1
- package/dist/cjs/plugins/media/ui/Media/DropPlaceholder.js +4 -2
- package/dist/cjs/plugins/media/ui/MediaLinkingToolbar.js +3 -1
- package/dist/cjs/plugins/mentions/styles.js +3 -1
- package/dist/cjs/plugins/mentions/ui/InviteItem/index.js +3 -1
- package/dist/cjs/plugins/mentions/ui/InviteItem/styles.js +4 -2
- package/dist/cjs/plugins/panel/index.js +1 -0
- package/dist/cjs/plugins/panel/nodeviews/panel.js +4 -1
- package/dist/cjs/plugins/panel/pm-plugins/keymaps.js +21 -3
- package/dist/cjs/plugins/paste/handlers.js +23 -0
- package/dist/cjs/plugins/paste/linkify-md-plugin.js +7 -0
- package/dist/cjs/plugins/paste/pm-plugins/analytics.js +9 -1
- package/dist/cjs/plugins/paste/pm-plugins/main.js +27 -1
- package/dist/cjs/plugins/placeholder/index.js +15 -3
- package/dist/cjs/plugins/placeholder/styles.js +3 -1
- package/dist/cjs/plugins/placeholder-text/styles.js +3 -1
- package/dist/cjs/plugins/selection/gap-cursor/styles.js +1 -1
- package/dist/cjs/plugins/selection/pm-plugins/gap-cursor-main.js +2 -2
- package/dist/cjs/plugins/status/ui/statusPicker.js +3 -3
- package/dist/cjs/plugins/table/index.js +14 -4
- package/dist/cjs/plugins/table/nodeviews/TableComponent.js +6 -6
- package/dist/cjs/plugins/table/nodeviews/table.js +9 -4
- package/dist/cjs/plugins/table/pm-plugins/main.js +1 -4
- package/dist/cjs/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.js +118 -0
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/event-handlers.js +2 -4
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/plugin.js +2 -5
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -8
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +2 -3
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +0 -3
- package/dist/cjs/plugins/table/transforms/column-width.js +1 -2
- package/dist/cjs/plugins/table/transforms/fix-tables.js +1 -3
- package/dist/cjs/plugins/table/ui/FloatingContextualButton/styles.js +4 -1
- package/dist/cjs/plugins/table/ui/FloatingContextualMenu/styles.js +3 -1
- package/dist/cjs/plugins/table/ui/common-styles.js +4 -2
- package/dist/cjs/plugins/table/ui/consts.js +14 -11
- package/dist/cjs/plugins/table/ui/ui-styles.js +17 -10
- package/dist/cjs/plugins/table/utils/decoration.js +3 -4
- package/dist/cjs/plugins/table/utils/paste.js +9 -9
- package/dist/cjs/plugins/type-ahead/index.js +4 -3
- package/dist/cjs/plugins/type-ahead/pm-plugins/decorations.js +3 -1
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadList.js +4 -4
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadListItem.js +11 -9
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +73 -3
- package/dist/cjs/plugins/unsupported-content/styles.js +1 -1
- package/dist/cjs/ui/Addon/Dropdown/styles.js +3 -1
- package/dist/cjs/ui/Addon/DropdownItem/styles.js +3 -1
- package/dist/cjs/ui/Appearance/Chromeless.js +2 -1
- package/dist/cjs/ui/Appearance/Comment/Comment.js +10 -3
- package/dist/cjs/ui/Appearance/Comment/Toolbar.js +4 -2
- package/dist/cjs/ui/Appearance/FullPage/FullPage.js +5 -2
- package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +2 -1
- package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +12 -11
- package/dist/cjs/ui/Appearance/FullPage/MainToolbar.js +6 -3
- package/dist/cjs/ui/ChromeCollapsed/styles.js +1 -1
- package/dist/cjs/ui/ConfigPanel/ConfigPanel.js +21 -14
- package/dist/cjs/ui/ConfigPanel/ConfigPanelFieldsLoader.js +2 -0
- package/dist/cjs/ui/ConfigPanel/Fields/CheckboxGroup.js +3 -1
- package/dist/cjs/ui/ConfigPanel/Fields/Expand.js +3 -1
- package/dist/cjs/ui/ConfigPanel/Fields/Fieldset.js +3 -1
- package/dist/cjs/ui/ConfigPanel/Fields/common/RequiredIndicator.js +3 -1
- package/dist/cjs/ui/ConfigPanel/Header.js +4 -2
- package/dist/cjs/ui/ConfigPanel/NestedForms/RemovableField.js +4 -8
- package/dist/cjs/ui/ContentStyles/index.js +4 -2
- package/dist/cjs/ui/ContextPanel/index.js +3 -1
- package/dist/cjs/ui/DropdownMenu/index.js +5 -0
- package/dist/cjs/ui/ElementBrowser/InsertMenu.js +6 -4
- package/dist/cjs/ui/ElementBrowser/ModalElementBrowser.js +4 -2
- package/dist/cjs/ui/ElementBrowser/components/CategoryList.js +4 -2
- package/dist/cjs/ui/ElementBrowser/components/ElementList/ElementList.js +12 -5
- package/dist/cjs/ui/ElementBrowser/components/ElementList/EmptyState.js +3 -1
- package/dist/cjs/ui/ElementBrowser/components/ElementSearch.js +3 -1
- package/dist/cjs/ui/ElementBrowser/constants.js +3 -1
- package/dist/cjs/ui/FloatingToolbar/styles.js +2 -2
- package/dist/cjs/ui/LinkSearch/LinkSearchListItem.js +5 -3
- package/dist/cjs/ui/PanelTextInput/styles.js +3 -1
- package/dist/cjs/ui/PluginSlot/index.js +7 -4
- package/dist/cjs/ui/Toolbar/ToolbarInner.js +2 -1
- package/dist/cjs/ui/Toolbar/ToolbarWithSizeDetector.js +5 -2
- package/dist/cjs/ui/ToolbarFeedback/styles.js +5 -3
- package/dist/cjs/ui/WithFlash/index.js +4 -2
- package/dist/cjs/ui/styles.js +6 -4
- package/dist/cjs/utils/document.js +62 -6
- package/dist/cjs/utils/filter/privacy-filter.js +2 -2
- package/dist/cjs/utils/step.js +17 -1
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/actions/index.js +25 -1
- package/dist/es2019/create-editor/ReactEditorView.js +2 -0
- package/dist/es2019/create-editor/create-plugins-list.js +1 -2
- package/dist/es2019/editor.js +5 -2
- package/dist/es2019/keymaps/index.js +5 -1
- package/dist/es2019/labs/next/ContentComponents.js +7 -2
- package/dist/es2019/labs/next/full-page.js +11 -8
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.js +4 -3
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.styles.js +16 -4
- package/dist/es2019/plugins/alignment/ui/ToolbarAlignment/styles.js +2 -1
- package/dist/es2019/plugins/analytics/types/enums.js +3 -0
- package/dist/es2019/plugins/base/index.js +6 -15
- package/dist/es2019/plugins/base/pm-plugins/better-type-history.js +1 -11
- package/dist/es2019/plugins/base/pm-plugins/inline-cursor-target.js +72 -17
- package/dist/es2019/plugins/block-type/commands/block-type.js +25 -16
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/styled.js +3 -2
- package/dist/es2019/plugins/breakout/ui/LayoutButton.js +6 -10
- package/dist/es2019/plugins/card/styles.js +1 -1
- package/dist/es2019/plugins/card/ui/LinkToolbarIconDropdown.js +2 -2
- package/dist/es2019/plugins/code-block/actions.js +32 -0
- package/dist/es2019/plugins/code-block/nodeviews/code-block.js +61 -1
- package/dist/es2019/plugins/code-block/pm-plugins/actions.js +2 -1
- package/dist/es2019/plugins/code-block/pm-plugins/main.js +37 -3
- package/dist/es2019/plugins/code-block/styles.js +30 -27
- package/dist/es2019/plugins/collab-edit/styles.js +3 -2
- package/dist/es2019/plugins/collab-edit/ui/styles.js +4 -3
- package/dist/es2019/plugins/collab-edit/utils.js +1 -0
- package/dist/es2019/plugins/date/ui/DatePicker/index.js +3 -2
- package/dist/es2019/plugins/expand/ui/styles.js +15 -14
- package/dist/es2019/plugins/extension/commands.js +3 -2
- package/dist/es2019/plugins/extension/context-panel.js +11 -3
- package/dist/es2019/plugins/extension/ui/Extension/Extension/styles.js +5 -4
- package/dist/es2019/plugins/extension/ui/Extension/InlineExtension/styles.js +2 -1
- package/dist/es2019/plugins/extension/ui/Extension/styles.js +7 -6
- package/dist/es2019/plugins/extension/ui/SaveIndicator/SaveIndicator.js +4 -4
- package/dist/es2019/plugins/fake-text-cursor/styles.js +3 -2
- package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/es2019/plugins/find-replace/styles.js +4 -4
- package/dist/es2019/plugins/find-replace/ui/styles.js +3 -2
- package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +2 -1
- package/dist/es2019/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +2 -1
- package/dist/es2019/plugins/floating-toolbar/ui/Separator.js +2 -1
- package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +4 -4
- package/dist/es2019/plugins/floating-toolbar/ui/styles.js +11 -10
- package/dist/es2019/plugins/grid/styles.js +4 -2
- package/dist/es2019/plugins/help-dialog/ui/styles.js +10 -9
- package/dist/es2019/plugins/hyperlink/pm-plugins/input-rule.js +24 -2
- package/dist/es2019/plugins/hyperlink/pm-plugins/keymap.js +9 -1
- package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +5 -4
- package/dist/es2019/plugins/hyperlink/utils.js +43 -2
- package/dist/es2019/plugins/jira-issue/nodeviews/jira-issue.js +6 -5
- package/dist/es2019/plugins/layout/styles.js +10 -7
- package/dist/es2019/plugins/media/commands/helpers.js +6 -8
- package/dist/es2019/plugins/media/nodeviews/mediaInline.js +21 -5
- package/dist/es2019/plugins/media/nodeviews/mediaNodeView/media.js +7 -0
- package/dist/es2019/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +5 -4
- package/dist/es2019/plugins/media/pm-plugins/main.js +2 -0
- package/dist/es2019/plugins/media/styles.js +3 -3
- package/dist/es2019/plugins/media/ui/CaptionPlaceholder/index.js +2 -1
- package/dist/es2019/plugins/media/ui/Media/DropPlaceholder.js +4 -3
- package/dist/es2019/plugins/media/ui/MediaLinkingToolbar.js +2 -1
- package/dist/es2019/plugins/mentions/styles.js +5 -4
- package/dist/es2019/plugins/mentions/ui/InviteItem/index.js +2 -1
- package/dist/es2019/plugins/mentions/ui/InviteItem/styles.js +3 -2
- package/dist/es2019/plugins/panel/index.js +1 -0
- package/dist/es2019/plugins/panel/nodeviews/panel.js +4 -1
- package/dist/es2019/plugins/panel/pm-plugins/keymaps.js +22 -4
- package/dist/es2019/plugins/paste/handlers.js +23 -0
- package/dist/es2019/plugins/paste/linkify-md-plugin.js +7 -1
- package/dist/es2019/plugins/paste/pm-plugins/analytics.js +4 -1
- package/dist/es2019/plugins/paste/pm-plugins/main.js +27 -2
- package/dist/es2019/plugins/placeholder/index.js +12 -1
- package/dist/es2019/plugins/placeholder/styles.js +3 -1
- package/dist/es2019/plugins/placeholder-text/styles.js +5 -4
- package/dist/es2019/plugins/selection/gap-cursor/styles.js +9 -9
- package/dist/es2019/plugins/selection/pm-plugins/gap-cursor-main.js +2 -2
- package/dist/es2019/plugins/status/ui/statusPicker.js +3 -3
- package/dist/es2019/plugins/table/index.js +13 -4
- package/dist/es2019/plugins/table/nodeviews/TableComponent.js +6 -6
- package/dist/es2019/plugins/table/nodeviews/table.js +6 -2
- package/dist/es2019/plugins/table/pm-plugins/main.js +1 -4
- package/dist/es2019/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.js +106 -0
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/event-handlers.js +2 -4
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/plugin.js +2 -4
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/misc.js +3 -7
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +2 -3
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +0 -3
- package/dist/es2019/plugins/table/transforms/column-width.js +1 -2
- package/dist/es2019/plugins/table/transforms/fix-tables.js +1 -3
- package/dist/es2019/plugins/table/ui/FloatingContextualButton/styles.js +4 -2
- package/dist/es2019/plugins/table/ui/FloatingContextualMenu/styles.js +4 -3
- package/dist/es2019/plugins/table/ui/common-styles.js +29 -27
- package/dist/es2019/plugins/table/ui/consts.js +15 -12
- package/dist/es2019/plugins/table/ui/ui-styles.js +28 -23
- package/dist/es2019/plugins/table/utils/decoration.js +1 -4
- package/dist/es2019/plugins/table/utils/paste.js +9 -9
- package/dist/es2019/plugins/type-ahead/index.js +4 -3
- package/dist/es2019/plugins/type-ahead/pm-plugins/decorations.js +2 -1
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadList.js +4 -4
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadListItem.js +10 -9
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +64 -6
- package/dist/es2019/plugins/unsupported-content/styles.js +1 -1
- package/dist/es2019/ui/Addon/Dropdown/styles.js +3 -2
- package/dist/es2019/ui/Addon/DropdownItem/styles.js +3 -2
- package/dist/es2019/ui/Appearance/Chromeless.js +2 -1
- package/dist/es2019/ui/Appearance/Comment/Comment.js +9 -4
- package/dist/es2019/ui/Appearance/Comment/Toolbar.js +4 -2
- package/dist/es2019/ui/Appearance/FullPage/FullPage.js +6 -2
- package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +2 -1
- package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +12 -11
- package/dist/es2019/ui/Appearance/FullPage/MainToolbar.js +7 -3
- package/dist/es2019/ui/ChromeCollapsed/styles.js +4 -3
- package/dist/es2019/ui/ConfigPanel/ConfigPanel.js +10 -2
- package/dist/es2019/ui/ConfigPanel/ConfigPanelFieldsLoader.js +2 -0
- package/dist/es2019/ui/ConfigPanel/ErrorMessage/ErrorImage.js +3 -0
- package/dist/es2019/ui/ConfigPanel/Fields/CheckboxGroup.js +2 -1
- package/dist/es2019/ui/ConfigPanel/Fields/Expand.js +2 -1
- package/dist/es2019/ui/ConfigPanel/Fields/Fieldset.js +2 -1
- package/dist/es2019/ui/ConfigPanel/Fields/common/RequiredIndicator.js +2 -1
- package/dist/es2019/ui/ConfigPanel/Header.js +3 -2
- package/dist/es2019/ui/ConfigPanel/NestedForms/RemovableField.js +4 -3
- package/dist/es2019/ui/ContentStyles/index.js +3 -2
- package/dist/es2019/ui/ContextPanel/index.js +2 -1
- package/dist/es2019/ui/DropdownMenu/index.js +5 -0
- package/dist/es2019/ui/ElementBrowser/InsertMenu.js +6 -3
- package/dist/es2019/ui/ElementBrowser/ModalElementBrowser.js +3 -2
- package/dist/es2019/ui/ElementBrowser/components/CategoryList.js +3 -2
- package/dist/es2019/ui/ElementBrowser/components/ElementList/ElementList.js +12 -5
- package/dist/es2019/ui/ElementBrowser/components/ElementList/EmptyState.js +2 -1
- package/dist/es2019/ui/ElementBrowser/components/ElementList/NotFoundIllustration.js +3 -0
- package/dist/es2019/ui/ElementBrowser/components/ElementSearch.js +2 -1
- package/dist/es2019/ui/ElementBrowser/constants.js +3 -1
- package/dist/es2019/ui/FloatingToolbar/styles.js +4 -4
- package/dist/es2019/ui/LinkSearch/LinkSearchListItem.js +4 -3
- package/dist/es2019/ui/PanelTextInput/styles.js +5 -5
- package/dist/es2019/ui/PluginSlot/index.js +7 -4
- package/dist/es2019/ui/Toolbar/ToolbarInner.js +2 -1
- package/dist/es2019/ui/Toolbar/ToolbarWithSizeDetector.js +4 -2
- package/dist/es2019/ui/ToolbarFeedback/styles.js +5 -4
- package/dist/es2019/ui/WithFlash/index.js +4 -3
- package/dist/es2019/ui/styles.js +10 -9
- package/dist/es2019/utils/document.js +58 -5
- package/dist/es2019/utils/filter/privacy-filter.js +1 -1
- package/dist/es2019/utils/step.js +12 -1
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/actions/index.js +26 -1
- package/dist/esm/create-editor/ReactEditorView.js +2 -0
- package/dist/esm/create-editor/create-plugins-list.js +1 -2
- package/dist/esm/editor.js +5 -2
- package/dist/esm/keymaps/index.js +5 -1
- package/dist/esm/labs/next/ContentComponents.js +8 -4
- package/dist/esm/labs/next/full-page.js +11 -8
- package/dist/esm/nodeviews/getInlineNodeViewProducer.js +4 -3
- package/dist/esm/nodeviews/getInlineNodeViewProducer.styles.js +3 -2
- package/dist/esm/plugins/alignment/ui/ToolbarAlignment/styles.js +2 -1
- package/dist/esm/plugins/analytics/types/enums.js +3 -0
- package/dist/esm/plugins/base/index.js +8 -17
- package/dist/esm/plugins/base/pm-plugins/better-type-history.js +1 -11
- package/dist/esm/plugins/base/pm-plugins/inline-cursor-target.js +72 -17
- package/dist/esm/plugins/block-type/commands/block-type.js +31 -22
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/styled.js +3 -2
- package/dist/esm/plugins/breakout/ui/LayoutButton.js +3 -5
- package/dist/esm/plugins/card/styles.js +1 -1
- package/dist/esm/plugins/card/ui/LinkToolbarIconDropdown.js +2 -2
- package/dist/esm/plugins/code-block/actions.js +28 -0
- package/dist/esm/plugins/code-block/nodeviews/code-block.js +67 -1
- package/dist/esm/plugins/code-block/pm-plugins/actions.js +2 -1
- package/dist/esm/plugins/code-block/pm-plugins/main.js +39 -3
- package/dist/esm/plugins/code-block/styles.js +27 -23
- package/dist/esm/plugins/collab-edit/styles.js +3 -2
- package/dist/esm/plugins/collab-edit/ui/styles.js +3 -2
- package/dist/esm/plugins/collab-edit/utils.js +2 -0
- package/dist/esm/plugins/date/ui/DatePicker/index.js +2 -1
- package/dist/esm/plugins/expand/ui/styles.js +15 -14
- package/dist/esm/plugins/extension/commands.js +3 -2
- package/dist/esm/plugins/extension/context-panel.js +21 -7
- package/dist/esm/plugins/extension/ui/Extension/Extension/styles.js +5 -4
- package/dist/esm/plugins/extension/ui/Extension/InlineExtension/styles.js +2 -1
- package/dist/esm/plugins/extension/ui/Extension/styles.js +6 -5
- package/dist/esm/plugins/extension/ui/SaveIndicator/SaveIndicator.js +3 -2
- package/dist/esm/plugins/fake-text-cursor/styles.js +2 -1
- package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/esm/plugins/find-replace/styles.js +3 -3
- package/dist/esm/plugins/find-replace/ui/styles.js +3 -2
- package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +2 -1
- package/dist/esm/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +2 -1
- package/dist/esm/plugins/floating-toolbar/ui/Separator.js +2 -1
- package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +5 -4
- package/dist/esm/plugins/floating-toolbar/ui/styles.js +11 -10
- package/dist/esm/plugins/grid/styles.js +2 -1
- package/dist/esm/plugins/help-dialog/ui/styles.js +8 -7
- package/dist/esm/plugins/hyperlink/pm-plugins/input-rule.js +24 -2
- package/dist/esm/plugins/hyperlink/pm-plugins/keymap.js +9 -1
- package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +4 -3
- package/dist/esm/plugins/hyperlink/utils.js +44 -2
- package/dist/esm/plugins/jira-issue/nodeviews/jira-issue.js +3 -2
- package/dist/esm/plugins/layout/styles.js +1 -1
- package/dist/esm/plugins/media/commands/helpers.js +6 -8
- package/dist/esm/plugins/media/nodeviews/mediaInline.js +22 -4
- package/dist/esm/plugins/media/nodeviews/mediaNodeView/media.js +7 -0
- package/dist/esm/plugins/media/pm-plugins/alt-text/ui/AltTextEdit.js +4 -3
- package/dist/esm/plugins/media/pm-plugins/main.js +2 -0
- package/dist/esm/plugins/media/styles.js +1 -1
- package/dist/esm/plugins/media/ui/CaptionPlaceholder/index.js +2 -1
- package/dist/esm/plugins/media/ui/Media/DropPlaceholder.js +3 -2
- package/dist/esm/plugins/media/ui/MediaLinkingToolbar.js +2 -1
- package/dist/esm/plugins/mentions/styles.js +2 -1
- package/dist/esm/plugins/mentions/ui/InviteItem/index.js +2 -1
- package/dist/esm/plugins/mentions/ui/InviteItem/styles.js +3 -2
- package/dist/esm/plugins/panel/index.js +1 -0
- package/dist/esm/plugins/panel/nodeviews/panel.js +4 -1
- package/dist/esm/plugins/panel/pm-plugins/keymaps.js +22 -4
- package/dist/esm/plugins/paste/handlers.js +21 -0
- package/dist/esm/plugins/paste/linkify-md-plugin.js +7 -1
- package/dist/esm/plugins/paste/pm-plugins/analytics.js +6 -1
- package/dist/esm/plugins/paste/pm-plugins/main.js +27 -2
- package/dist/esm/plugins/placeholder/index.js +12 -1
- package/dist/esm/plugins/placeholder/styles.js +2 -1
- package/dist/esm/plugins/placeholder-text/styles.js +2 -1
- package/dist/esm/plugins/selection/gap-cursor/styles.js +1 -1
- package/dist/esm/plugins/selection/pm-plugins/gap-cursor-main.js +2 -2
- package/dist/esm/plugins/status/ui/statusPicker.js +2 -2
- package/dist/esm/plugins/table/index.js +13 -4
- package/dist/esm/plugins/table/nodeviews/TableComponent.js +6 -6
- package/dist/esm/plugins/table/nodeviews/table.js +6 -2
- package/dist/esm/plugins/table/pm-plugins/main.js +1 -4
- package/dist/esm/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.js +102 -0
- package/dist/esm/plugins/table/pm-plugins/table-resizing/event-handlers.js +2 -4
- package/dist/esm/plugins/table/pm-plugins/table-resizing/plugin.js +2 -5
- package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/misc.js +4 -8
- package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +2 -3
- package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +0 -3
- package/dist/esm/plugins/table/transforms/column-width.js +1 -2
- package/dist/esm/plugins/table/transforms/fix-tables.js +1 -3
- package/dist/esm/plugins/table/ui/FloatingContextualButton/styles.js +3 -1
- package/dist/esm/plugins/table/ui/FloatingContextualMenu/styles.js +2 -1
- package/dist/esm/plugins/table/ui/common-styles.js +4 -2
- package/dist/esm/plugins/table/ui/consts.js +15 -12
- package/dist/esm/plugins/table/ui/ui-styles.js +15 -10
- package/dist/esm/plugins/table/utils/decoration.js +3 -4
- package/dist/esm/plugins/table/utils/paste.js +9 -9
- package/dist/esm/plugins/type-ahead/index.js +4 -3
- package/dist/esm/plugins/type-ahead/pm-plugins/decorations.js +2 -1
- package/dist/esm/plugins/type-ahead/ui/TypeAheadList.js +4 -4
- package/dist/esm/plugins/type-ahead/ui/TypeAheadListItem.js +10 -9
- package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +71 -5
- package/dist/esm/plugins/unsupported-content/styles.js +1 -1
- package/dist/esm/ui/Addon/Dropdown/styles.js +2 -1
- package/dist/esm/ui/Addon/DropdownItem/styles.js +2 -1
- package/dist/esm/ui/Appearance/Chromeless.js +2 -1
- package/dist/esm/ui/Appearance/Comment/Comment.js +10 -3
- package/dist/esm/ui/Appearance/Comment/Toolbar.js +3 -2
- package/dist/esm/ui/Appearance/FullPage/FullPage.js +6 -2
- package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +2 -1
- package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +12 -11
- package/dist/esm/ui/Appearance/FullPage/MainToolbar.js +5 -3
- package/dist/esm/ui/ChromeCollapsed/styles.js +1 -1
- package/dist/esm/ui/ConfigPanel/ConfigPanel.js +21 -14
- package/dist/esm/ui/ConfigPanel/ConfigPanelFieldsLoader.js +2 -0
- package/dist/esm/ui/ConfigPanel/ErrorMessage/ErrorImage.js +3 -0
- package/dist/esm/ui/ConfigPanel/Fields/CheckboxGroup.js +2 -1
- package/dist/esm/ui/ConfigPanel/Fields/Expand.js +2 -1
- package/dist/esm/ui/ConfigPanel/Fields/Fieldset.js +2 -1
- package/dist/esm/ui/ConfigPanel/Fields/common/RequiredIndicator.js +2 -1
- package/dist/esm/ui/ConfigPanel/Header.js +3 -2
- package/dist/esm/ui/ConfigPanel/NestedForms/RemovableField.js +3 -2
- package/dist/esm/ui/ContentStyles/index.js +3 -2
- package/dist/esm/ui/ContextPanel/index.js +2 -1
- package/dist/esm/ui/DropdownMenu/index.js +5 -0
- package/dist/esm/ui/ElementBrowser/InsertMenu.js +5 -4
- package/dist/esm/ui/ElementBrowser/ModalElementBrowser.js +3 -2
- package/dist/esm/ui/ElementBrowser/components/CategoryList.js +3 -2
- package/dist/esm/ui/ElementBrowser/components/ElementList/ElementList.js +11 -5
- package/dist/esm/ui/ElementBrowser/components/ElementList/EmptyState.js +2 -1
- package/dist/esm/ui/ElementBrowser/components/ElementList/NotFoundIllustration.js +3 -0
- package/dist/esm/ui/ElementBrowser/components/ElementSearch.js +2 -1
- package/dist/esm/ui/ElementBrowser/constants.js +3 -1
- package/dist/esm/ui/FloatingToolbar/styles.js +3 -3
- package/dist/esm/ui/LinkSearch/LinkSearchListItem.js +4 -3
- package/dist/esm/ui/PanelTextInput/styles.js +4 -3
- package/dist/esm/ui/PluginSlot/index.js +7 -4
- package/dist/esm/ui/Toolbar/ToolbarInner.js +2 -1
- package/dist/esm/ui/Toolbar/ToolbarWithSizeDetector.js +4 -2
- package/dist/esm/ui/ToolbarFeedback/styles.js +4 -3
- package/dist/esm/ui/WithFlash/index.js +3 -2
- package/dist/esm/ui/styles.js +5 -4
- package/dist/esm/utils/document.js +59 -5
- package/dist/esm/utils/filter/privacy-filter.js +1 -1
- package/dist/esm/utils/step.js +12 -1
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/actions/index.d.ts +6 -0
- package/dist/types/labs/next/ContentComponents.d.ts +7 -1
- package/dist/types/nodeviews/getInlineNodeViewProducer.d.ts +1 -0
- package/dist/types/plugins/analytics/types/enums.d.ts +3 -0
- package/dist/types/plugins/analytics/types/general-events.d.ts +7 -1
- package/dist/types/plugins/base/pm-plugins/inline-cursor-target.d.ts +1 -1
- package/dist/types/plugins/code-block/actions.d.ts +2 -0
- package/dist/types/plugins/code-block/nodeviews/code-block.d.ts +2 -0
- package/dist/types/plugins/code-block/pm-plugins/actions.d.ts +1 -0
- package/dist/types/plugins/code-block/pm-plugins/main-state.d.ts +1 -0
- package/dist/types/plugins/extension/commands.d.ts +1 -1
- package/dist/types/plugins/extension/types.d.ts +1 -0
- package/dist/types/plugins/extension/ui/Extension/Extension/index.d.ts +6 -0
- package/dist/types/plugins/find-replace/styles.d.ts +0 -2
- package/dist/types/plugins/hyperlink/utils.d.ts +8 -0
- package/dist/types/plugins/media/commands/helpers.d.ts +2 -0
- package/dist/types/plugins/media/nodeviews/mediaNodeView/media.d.ts +1 -0
- package/dist/types/plugins/media/pm-plugins/main.d.ts +2 -1
- package/dist/types/plugins/media/pm-plugins/types.d.ts +2 -1
- package/dist/types/plugins/paste/handlers.d.ts +1 -0
- package/dist/types/plugins/paste/pm-plugins/analytics.d.ts +1 -0
- package/dist/types/plugins/table/commands/misc.d.ts +0 -1
- package/dist/types/plugins/table/index.d.ts +0 -1
- package/dist/types/plugins/table/nodeviews/TableComponent.d.ts +1 -0
- package/dist/types/plugins/table/nodeviews/types.d.ts +0 -1
- package/dist/types/plugins/table/pm-plugins/main.d.ts +1 -1
- package/dist/types/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.d.ts +15 -0
- package/dist/types/plugins/table/pm-plugins/table-resizing/event-handlers.d.ts +1 -1
- package/dist/types/plugins/table/pm-plugins/table-resizing/plugin.d.ts +1 -1
- package/dist/types/plugins/table/pm-plugins/table-resizing/utils/misc.d.ts +1 -2
- package/dist/types/plugins/table/pm-plugins/table-resizing/utils/resize-state.d.ts +1 -1
- package/dist/types/plugins/table/pm-plugins/table-resizing/utils/scale-table.d.ts +0 -1
- package/dist/types/plugins/table/transforms/fix-tables.d.ts +0 -1
- package/dist/types/plugins/table/types.d.ts +0 -1
- package/dist/types/plugins/table/ui/consts.d.ts +9 -9
- package/dist/types/plugins/type-ahead/ui/TypeAheadList.d.ts +2 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadListItem.d.ts +4 -4
- package/dist/types/types/editor-appearance-component.d.ts +0 -1
- package/dist/types/types/editor-props.d.ts +4 -0
- package/dist/types/types/feature-flags.d.ts +8 -0
- package/dist/types/types/ui-components.d.ts +1 -0
- package/dist/types/ui/Appearance/FullPage/FullPage.d.ts +1 -0
- package/dist/types/ui/Appearance/FullPage/FullPageContentArea.d.ts +1 -0
- package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +3 -2
- package/dist/types/ui/ConfigPanel/ConfigPanelFieldsLoader.d.ts +3 -2
- package/dist/types/ui/PluginSlot/index.d.ts +1 -0
- package/dist/types/ui/Toolbar/toolbar-types.d.ts +1 -0
- package/dist/types/utils/document.d.ts +1 -0
- package/dist/types/utils/step.d.ts +1 -0
- package/docs/0-intro.tsx +12 -4
- package/package.json +20 -20
|
@@ -18,6 +18,7 @@ exports.isEmptyDocument = isEmptyDocument;
|
|
|
18
18
|
exports.isEmptyParagraph = isEmptyParagraph;
|
|
19
19
|
exports.isInEmptyLine = isInEmptyLine;
|
|
20
20
|
exports.isNodeEmpty = isNodeEmpty;
|
|
21
|
+
exports.isProseMirrorSchemaCheckError = isProseMirrorSchemaCheckError;
|
|
21
22
|
exports.isSelectionEndOfParagraph = void 0;
|
|
22
23
|
exports.nodesBetweenChanged = nodesBetweenChanged;
|
|
23
24
|
exports.processRawValue = processRawValue;
|
|
@@ -26,7 +27,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
26
27
|
|
|
27
28
|
var _prosemirrorModel = require("prosemirror-model");
|
|
28
29
|
|
|
29
|
-
var
|
|
30
|
+
var _transforms = require("@atlaskit/adf-utils/transforms");
|
|
30
31
|
|
|
31
32
|
var _privacyFilter = require("../utils/filter/privacy-filter");
|
|
32
33
|
|
|
@@ -113,6 +114,10 @@ function hasDocAsParent($anchor) {
|
|
|
113
114
|
return $anchor.depth === 1;
|
|
114
115
|
}
|
|
115
116
|
|
|
117
|
+
function isProseMirrorSchemaCheckError(error) {
|
|
118
|
+
return error instanceof RangeError && (!!error.message.match(/^Invalid collection of marks for node/) || !!error.message.match(/^Invalid content for node/));
|
|
119
|
+
}
|
|
120
|
+
|
|
116
121
|
function isInEmptyLine(state) {
|
|
117
122
|
var selection = state.selection;
|
|
118
123
|
var _ref = selection,
|
|
@@ -208,7 +213,7 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
|
|
|
208
213
|
// https://product-fabric.atlassian.net/browse/ED-14043
|
|
209
214
|
|
|
210
215
|
|
|
211
|
-
var _transformMediaLinkMa = (0,
|
|
216
|
+
var _transformMediaLinkMa = (0, _transforms.transformMediaLinkMarks)(node),
|
|
212
217
|
transformedAdf = _transformMediaLinkMa.transformedAdf,
|
|
213
218
|
isTransformed = _transformMediaLinkMa.isTransformed;
|
|
214
219
|
|
|
@@ -225,9 +230,10 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
|
|
|
225
230
|
// and preserving code marks during content changes.
|
|
226
231
|
|
|
227
232
|
|
|
228
|
-
var
|
|
229
|
-
|
|
230
|
-
|
|
233
|
+
var _transformTextLinkCod = (0, _transforms.transformTextLinkCodeMarks)(transformedAdf);
|
|
234
|
+
|
|
235
|
+
transformedAdf = _transformTextLinkCod.transformedAdf;
|
|
236
|
+
isTransformed = _transformTextLinkCod.isTransformed;
|
|
231
237
|
|
|
232
238
|
if (isTransformed && dispatchAnalyticsEvent) {
|
|
233
239
|
dispatchAnalyticsEvent({
|
|
@@ -237,6 +243,51 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
|
|
|
237
243
|
});
|
|
238
244
|
}
|
|
239
245
|
|
|
246
|
+
var discardedMarks = [];
|
|
247
|
+
|
|
248
|
+
var _transformDedupeMarks = (0, _transforms.transformDedupeMarks)(transformedAdf);
|
|
249
|
+
|
|
250
|
+
transformedAdf = _transformDedupeMarks.transformedAdf;
|
|
251
|
+
isTransformed = _transformDedupeMarks.isTransformed;
|
|
252
|
+
discardedMarks = _transformDedupeMarks.discardedMarks;
|
|
253
|
+
|
|
254
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
255
|
+
dispatchAnalyticsEvent({
|
|
256
|
+
action: _enums.ACTION.DEDUPE_MARKS_TRANSFORMED,
|
|
257
|
+
actionSubject: _enums.ACTION_SUBJECT.EDITOR,
|
|
258
|
+
eventType: _enums.EVENT_TYPE.OPERATIONAL,
|
|
259
|
+
attributes: {
|
|
260
|
+
discardedMarks: discardedMarks
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
var _transformNodesMissin = (0, _transforms.transformNodesMissingContent)(transformedAdf);
|
|
266
|
+
|
|
267
|
+
transformedAdf = _transformNodesMissin.transformedAdf;
|
|
268
|
+
isTransformed = _transformNodesMissin.isTransformed;
|
|
269
|
+
|
|
270
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
271
|
+
dispatchAnalyticsEvent({
|
|
272
|
+
action: _enums.ACTION.NODES_MISSING_CONTENT_TRANSFORMED,
|
|
273
|
+
actionSubject: _enums.ACTION_SUBJECT.EDITOR,
|
|
274
|
+
eventType: _enums.EVENT_TYPE.OPERATIONAL
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
var _transformIndentation = (0, _transforms.transformIndentationMarks)(transformedAdf);
|
|
279
|
+
|
|
280
|
+
transformedAdf = _transformIndentation.transformedAdf;
|
|
281
|
+
isTransformed = _transformIndentation.isTransformed;
|
|
282
|
+
|
|
283
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
284
|
+
dispatchAnalyticsEvent({
|
|
285
|
+
action: _enums.ACTION.INDENTATION_MARKS_TRANSFORMED,
|
|
286
|
+
actionSubject: _enums.ACTION_SUBJECT.EDITOR,
|
|
287
|
+
eventType: _enums.EVENT_TYPE.OPERATIONAL
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
|
|
240
291
|
var entity = (0, _utils.validateADFEntity)(schema, transformedAdf || node, dispatchAnalyticsEvent);
|
|
241
292
|
var newEntity = maySanitizePrivateContent(entity, providerFactory, sanitizePrivateContent);
|
|
242
293
|
|
|
@@ -257,7 +308,7 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
|
|
|
257
308
|
});
|
|
258
309
|
}
|
|
259
310
|
|
|
260
|
-
|
|
311
|
+
throw err;
|
|
261
312
|
}
|
|
262
313
|
|
|
263
314
|
if (dispatchAnalyticsEvent) {
|
|
@@ -279,6 +330,11 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
|
|
|
279
330
|
|
|
280
331
|
|
|
281
332
|
console.error("Error processing document:\n".concat(e.message, "\n\n"), JSON.stringify(node));
|
|
333
|
+
|
|
334
|
+
if (isProseMirrorSchemaCheckError(e)) {
|
|
335
|
+
throw e;
|
|
336
|
+
}
|
|
337
|
+
|
|
282
338
|
return;
|
|
283
339
|
}
|
|
284
340
|
}
|
|
@@ -9,7 +9,7 @@ exports.sanitizeNodeForPrivacy = sanitizeNodeForPrivacy;
|
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _traverse = require("@atlaskit/adf-utils/traverse");
|
|
13
13
|
|
|
14
14
|
var _resource = require("@atlaskit/mention/resource");
|
|
15
15
|
|
|
@@ -26,7 +26,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
26
26
|
function sanitizeNodeForPrivacy(json, providerFactory) {
|
|
27
27
|
var mentionNames = new Map();
|
|
28
28
|
var hasCacheableMentions = false;
|
|
29
|
-
var sanitizedJSON = (0,
|
|
29
|
+
var sanitizedJSON = (0, _traverse.traverse)(json, {
|
|
30
30
|
mention: function mention(node) {
|
|
31
31
|
if (node.attrs && node.attrs.text) {
|
|
32
32
|
hasCacheableMentions = true; // Remove @ prefix
|
package/dist/cjs/utils/step.js
CHANGED
|
@@ -3,9 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.extractSliceFromStep = void 0;
|
|
6
7
|
exports.stepAddsOneOf = stepAddsOneOf;
|
|
7
8
|
exports.stepHasSlice = void 0;
|
|
8
9
|
|
|
10
|
+
var _prosemirrorTransform = require("prosemirror-transform");
|
|
11
|
+
|
|
9
12
|
var stepHasSlice = function stepHasSlice(step) {
|
|
10
13
|
return step && step.hasOwnProperty('slice');
|
|
11
14
|
};
|
|
@@ -34,4 +37,17 @@ function stepAddsOneOf(step, nodeTypes) {
|
|
|
34
37
|
return !adds;
|
|
35
38
|
});
|
|
36
39
|
return adds;
|
|
37
|
-
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
var extractSliceFromStep = function extractSliceFromStep(step) {
|
|
43
|
+
if (!(step instanceof _prosemirrorTransform.ReplaceStep) && !(step instanceof _prosemirrorTransform.ReplaceAroundStep)) {
|
|
44
|
+
return null;
|
|
45
|
+
} // @ts-ignore This is by design. Slice is a private property, but accesible, from ReplaceStep.
|
|
46
|
+
// However, we need to read it to found if the step was adding a newline
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
var slice = step.slice;
|
|
50
|
+
return slice;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
exports.extractSliceFromStep = extractSliceFromStep;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.version = exports.nextMajorVersion = exports.name = void 0;
|
|
7
7
|
var name = "@atlaskit/editor-core";
|
|
8
8
|
exports.name = name;
|
|
9
|
-
var version = "
|
|
9
|
+
var version = "167.0.0";
|
|
10
10
|
exports.version = version;
|
|
11
11
|
|
|
12
12
|
var nextMajorVersion = function nextMajorVersion() {
|
package/dist/cjs/version.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { Node } from 'prosemirror-model';
|
|
3
|
-
import { TextSelection } from 'prosemirror-state';
|
|
3
|
+
import { TextSelection, NodeSelection } from 'prosemirror-state';
|
|
4
|
+
import { findParentNode } from 'prosemirror-utils';
|
|
4
5
|
import { toJSON } from '../utils';
|
|
5
6
|
import { processRawValue, isEmptyDocument } from '../utils/document';
|
|
6
7
|
import { getEditorValueWithMedia, __temporaryFixForConfigPanel } from '../utils/action';
|
|
@@ -186,6 +187,29 @@ export default class EditorActions {
|
|
|
186
187
|
return (_findNodePosWithLocal = findNodePosWithLocalId((_this$editorView2 = this.editorView) === null || _this$editorView2 === void 0 ? void 0 : _this$editorView2.state, id)) === null || _findNodePosWithLocal === void 0 ? void 0 : _findNodePosWithLocal.node;
|
|
187
188
|
}
|
|
188
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* This method will return the currently selected `Node` if the selection is a `Node`.
|
|
192
|
+
* Otherwise, if the selection is textual or a non-selectable `Node` within another selectable `Node`, the closest selectable parent `Node` will be returned.
|
|
193
|
+
*/
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
getSelectedNode() {
|
|
197
|
+
var _this$editorView3, _this$editorView3$sta;
|
|
198
|
+
|
|
199
|
+
if ((_this$editorView3 = this.editorView) !== null && _this$editorView3 !== void 0 && (_this$editorView3$sta = _this$editorView3.state) !== null && _this$editorView3$sta !== void 0 && _this$editorView3$sta.selection) {
|
|
200
|
+
var _findParentNode;
|
|
201
|
+
|
|
202
|
+
const {
|
|
203
|
+
selection
|
|
204
|
+
} = this.editorView.state;
|
|
205
|
+
|
|
206
|
+
if (selection instanceof NodeSelection) {
|
|
207
|
+
return selection.node;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
return (_findParentNode = findParentNode(node => Boolean(node.type.spec.selectable))(selection)) === null || _findParentNode === void 0 ? void 0 : _findParentNode.node;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
189
213
|
|
|
190
214
|
isDocumentEmpty() {
|
|
191
215
|
// Unlikely case when editorView has been destroyed before calling isDocumentEmpty,
|
|
@@ -203,8 +203,7 @@ export default function createPluginsList(props, prevProps, createAnalyticsEvent
|
|
|
203
203
|
breakoutEnabled: props.appearance === 'full-page',
|
|
204
204
|
allowContextualMenu: !isMobile,
|
|
205
205
|
fullWidthEnabled: props.appearance === 'full-width',
|
|
206
|
-
wasFullWidthEnabled: prevProps && prevProps.appearance === 'full-width'
|
|
207
|
-
dynamicSizingEnabled: props.allowDynamicTextSizing
|
|
206
|
+
wasFullWidthEnabled: prevProps && prevProps.appearance === 'full-width'
|
|
208
207
|
}]);
|
|
209
208
|
}
|
|
210
209
|
|
package/dist/es2019/editor.js
CHANGED
|
@@ -322,6 +322,10 @@ export default class Editor extends React.Component {
|
|
|
322
322
|
allowConfluenceInlineComment: {
|
|
323
323
|
message: 'To integrate inline comments use experimental annotationProvider – <Editor annotationProviders={{ provider }} />',
|
|
324
324
|
type: 'removed'
|
|
325
|
+
},
|
|
326
|
+
allowDynamicTextSizing: {
|
|
327
|
+
message: 'Dynamic text sizing has been unshipped since 2020. The prop is no longer needed.',
|
|
328
|
+
type: 'removed'
|
|
325
329
|
}
|
|
326
330
|
};
|
|
327
331
|
Object.keys(deprecatedProperties).forEach(property => {
|
|
@@ -408,7 +412,7 @@ export default class Editor extends React.Component {
|
|
|
408
412
|
}
|
|
409
413
|
|
|
410
414
|
getBaseFontSize() {
|
|
411
|
-
return !
|
|
415
|
+
return !['comment', 'chromeless', 'mobile'].includes(this.props.appearance) ? akEditorFullPageDefaultFontSize : undefined;
|
|
412
416
|
}
|
|
413
417
|
|
|
414
418
|
render() {
|
|
@@ -485,7 +489,6 @@ export default class Editor extends React.Component {
|
|
|
485
489
|
var _this$props$featureFl5, _this$props$featureFl6;
|
|
486
490
|
|
|
487
491
|
return jsx(BaseTheme, {
|
|
488
|
-
dynamicTextSizing: this.props.allowDynamicTextSizing && this.props.appearance !== 'full-width',
|
|
489
492
|
baseFontSize: this.getBaseFontSize()
|
|
490
493
|
}, jsx(Component, {
|
|
491
494
|
appearance: this.props.appearance,
|
|
@@ -72,7 +72,10 @@ const arrowKeysMap = {
|
|
|
72
72
|
ARROWRIGHT: '\u2192',
|
|
73
73
|
ARROWUP: '\u2191',
|
|
74
74
|
ARROWDOWN: '\u2193'
|
|
75
|
-
};
|
|
75
|
+
}; // TOOD: https://product-fabric.atlassian.net/browse/DSP-4460
|
|
76
|
+
|
|
77
|
+
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
78
|
+
|
|
76
79
|
const tooltipShortcutStyle = css`
|
|
77
80
|
border-radius: 2px;
|
|
78
81
|
background-color: ${N400};
|
|
@@ -81,6 +84,7 @@ const tooltipShortcutStyle = css`
|
|
|
81
84
|
/* stylelint-disable-next-line */
|
|
82
85
|
label: tooltip-shortcut;
|
|
83
86
|
`;
|
|
87
|
+
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
84
88
|
|
|
85
89
|
function formatShortcut(keymap) {
|
|
86
90
|
let shortcut;
|
|
@@ -3,7 +3,11 @@ import { pluginKey as disabledPluginKey } from '../../plugins/editor-disabled';
|
|
|
3
3
|
import WithPluginState from '../../ui/WithPluginState';
|
|
4
4
|
import PluginSlot from '../../ui/PluginSlot';
|
|
5
5
|
import { useEditorSharedConfig } from './Editor';
|
|
6
|
-
export function ContentComponents(
|
|
6
|
+
export function ContentComponents({
|
|
7
|
+
disabled,
|
|
8
|
+
wrapperElement,
|
|
9
|
+
containerElement
|
|
10
|
+
}) {
|
|
7
11
|
const config = useEditorSharedConfig();
|
|
8
12
|
|
|
9
13
|
if (!config) {
|
|
@@ -27,8 +31,9 @@ export function ContentComponents(disabled) {
|
|
|
27
31
|
popupsMountPoint: config.popupsMountPoint,
|
|
28
32
|
popupsBoundariesElement: config.popupsBoundariesElement,
|
|
29
33
|
popupsScrollableElement: config.popupsScrollableElement,
|
|
30
|
-
containerElement:
|
|
34
|
+
containerElement: containerElement // TODO: Figure out how to pass containerElement here ED-8448
|
|
31
35
|
,
|
|
36
|
+
wrapperElement: wrapperElement,
|
|
32
37
|
disabled: (_disabled$editorDisab = disabled === null || disabled === void 0 ? void 0 : disabled.editorDisabled) !== null && _disabled$editorDisab !== void 0 ? _disabled$editorDisab : false
|
|
33
38
|
});
|
|
34
39
|
}
|
|
@@ -5,6 +5,7 @@ import rafSchedule from 'raf-schd';
|
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { css, jsx } from '@emotion/react';
|
|
7
7
|
import { N30 } from '@atlaskit/theme/colors';
|
|
8
|
+
import { token } from '@atlaskit/tokens';
|
|
8
9
|
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
9
10
|
import { BaseTheme } from '@atlaskit/editor-common/ui';
|
|
10
11
|
import { akEditorMenuZIndex, akEditorToolbarKeylineHeight } from '@atlaskit/editor-shared-styles';
|
|
@@ -92,7 +93,7 @@ const mainToolbar = css`
|
|
|
92
93
|
display: flex;
|
|
93
94
|
height: 80px;
|
|
94
95
|
flex-shrink: 0;
|
|
95
|
-
background-color: white;
|
|
96
|
+
background-color: ${token('elevation.surface', 'white')};
|
|
96
97
|
|
|
97
98
|
& object {
|
|
98
99
|
height: 0 !important;
|
|
@@ -100,7 +101,7 @@ const mainToolbar = css`
|
|
|
100
101
|
`;
|
|
101
102
|
const mainToolbarWithKeyline = css`
|
|
102
103
|
${mainToolbar}
|
|
103
|
-
box-shadow: 0 ${akEditorToolbarKeylineHeight}px 0 0 ${N30}
|
|
104
|
+
box-shadow: 0 ${akEditorToolbarKeylineHeight}px 0 0 ${token('color.border', N30)}
|
|
104
105
|
`;
|
|
105
106
|
const mainToolbarCustomComponentsSlot = css`
|
|
106
107
|
display: flex;
|
|
@@ -150,7 +151,6 @@ function FullPage(props) {
|
|
|
150
151
|
const {
|
|
151
152
|
primaryToolbarComponents,
|
|
152
153
|
contentComponents,
|
|
153
|
-
allowDynamicTextSizing,
|
|
154
154
|
collabEdit,
|
|
155
155
|
createAnalyticsEvent,
|
|
156
156
|
contextPanel
|
|
@@ -158,13 +158,13 @@ function FullPage(props) {
|
|
|
158
158
|
const handleAnalyticsEvent = useCreateAnalyticsHandler(createAnalyticsEvent);
|
|
159
159
|
const [showKeyline, scrollContainerRef] = useKeyline();
|
|
160
160
|
const config = useEditorSharedConfig();
|
|
161
|
+
const wrapperElementRef = /*#__PURE__*/React.createRef();
|
|
161
162
|
return jsx(ContextPanelWidthProvider, null, jsx(Editor, _extends({}, props, {
|
|
162
163
|
onAnalyticsEvent: handleAnalyticsEvent
|
|
163
|
-
}), jsx(BaseTheme, {
|
|
164
|
-
dynamicTextSizing: allowDynamicTextSizing
|
|
165
|
-
}, jsx("div", {
|
|
164
|
+
}), jsx(BaseTheme, null, jsx("div", {
|
|
166
165
|
css: fullPageEditorWrapper,
|
|
167
|
-
className: "akEditor"
|
|
166
|
+
className: "akEditor",
|
|
167
|
+
ref: wrapperElementRef
|
|
168
168
|
}, jsx("div", {
|
|
169
169
|
"data-testid": "ak-editor-main-toolbar",
|
|
170
170
|
css: showKeyline ? mainToolbarWithKeyline : mainToolbar
|
|
@@ -190,7 +190,10 @@ function FullPage(props) {
|
|
|
190
190
|
}, jsx("div", {
|
|
191
191
|
style: GUTTER_STYLE,
|
|
192
192
|
className: "ak-editor-content-area"
|
|
193
|
-
}, contentComponents, jsx(EditorContent, null), jsx(ContentComponents,
|
|
193
|
+
}, contentComponents, jsx(EditorContent, null), jsx(ContentComponents, {
|
|
194
|
+
wrapperElement: wrapperElementRef.current,
|
|
195
|
+
containerElement: scrollContainerRef.current
|
|
196
|
+
}))))), contextPanel && jsx("div", {
|
|
194
197
|
css: sidebarArea
|
|
195
198
|
}, contextPanel), jsx(WidthEmitter, {
|
|
196
199
|
editorView: config === null || config === void 0 ? void 0 : config.editorView
|
|
@@ -5,6 +5,7 @@ import { ACTION_SUBJECT, ACTION_SUBJECT_ID } from '../plugins/analytics';
|
|
|
5
5
|
import { analyticsEventKey } from '../plugins/analytics/consts';
|
|
6
6
|
import { ErrorBoundary } from '../ui/ErrorBoundary';
|
|
7
7
|
import { getPerformanceOptions, startMeasureReactNodeViewRendered, stopMeasureReactNodeViewRendered } from './getPerformanceOptions';
|
|
8
|
+
export const inlineNodeViewClassname = 'inlineNodeView';
|
|
8
9
|
|
|
9
10
|
function createNodeView({
|
|
10
11
|
nodeViewParams,
|
|
@@ -26,7 +27,7 @@ function createNodeView({
|
|
|
26
27
|
// nodeView if DOM structure has nested plain "div"s, it doesn't see the
|
|
27
28
|
// difference between them and it kills the nodeView
|
|
28
29
|
|
|
29
|
-
domRef.classList.add(`${nodeViewParams.node.type.name}View-content-wrap`, `
|
|
30
|
+
domRef.classList.add(`${nodeViewParams.node.type.name}View-content-wrap`, `${inlineNodeViewClassname}`); // This util is shared for tracking rendering, and the ErrorBoundary that
|
|
30
31
|
// is setup to wrap the Component when rendering
|
|
31
32
|
// NOTE: This is not a prosemirror dispatch
|
|
32
33
|
|
|
@@ -166,13 +167,13 @@ function getPortalChildren({
|
|
|
166
167
|
componentId: (_currentNode$type$nam = currentNode === null || currentNode === void 0 ? void 0 : (_currentNode$type = currentNode.type) === null || _currentNode$type === void 0 ? void 0 : _currentNode$type.name) !== null && _currentNode$type$nam !== void 0 ? _currentNode$type$nam : ACTION_SUBJECT_ID.UNKNOWN_NODE,
|
|
167
168
|
dispatchAnalyticsEvent: dispatchAnalyticsEvent
|
|
168
169
|
}, /*#__PURE__*/React.createElement("span", {
|
|
169
|
-
className:
|
|
170
|
+
className: `${inlineNodeViewClassname}AddZeroWidthSpace`
|
|
170
171
|
}), ZERO_WIDTH_SPACE, /*#__PURE__*/React.createElement(Component, _extends({
|
|
171
172
|
view: nodeViewParams.view,
|
|
172
173
|
getPos: nodeViewParams.getPos,
|
|
173
174
|
node: currentNode
|
|
174
175
|
}, extraComponentProps)), /*#__PURE__*/React.createElement("span", {
|
|
175
|
-
className:
|
|
176
|
+
className: `${inlineNodeViewClassname}AddZeroWidthSpace`
|
|
176
177
|
}));
|
|
177
178
|
};
|
|
178
179
|
} // https://prosemirror.net/docs/ref/#view.EditorProps.nodeViews
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { css } from '@emotion/react';
|
|
2
|
-
import { ZERO_WIDTH_SPACE } from '@atlaskit/editor-common/utils';
|
|
2
|
+
import { ZERO_WIDTH_SPACE } from '@atlaskit/editor-common/utils';
|
|
3
|
+
import { inlineNodeViewClassname } from './getInlineNodeViewProducer'; // For reasoning behind styles, see comments in:
|
|
3
4
|
// ./getInlineNodeViewProducer -> portalChildren()
|
|
4
5
|
|
|
5
6
|
export const InlineNodeViewSharedStyles = css`
|
|
6
|
-
|
|
7
|
+
.${inlineNodeViewClassname} {
|
|
7
8
|
display: inline;
|
|
8
9
|
user-select: all;
|
|
9
10
|
/* Collapses zero width spaces inside the inline node view
|
|
@@ -16,12 +17,23 @@ export const InlineNodeViewSharedStyles = css`
|
|
|
16
17
|
white-space: pre-wrap;
|
|
17
18
|
}
|
|
18
19
|
}
|
|
20
|
+
/** Remove browser deafult selections style. This prevents
|
|
21
|
+
unexpected visual artefacts in Safari when navigating
|
|
22
|
+
with the keyboard or making range selections. */
|
|
23
|
+
&.ua-safari {
|
|
24
|
+
.${inlineNodeViewClassname} {
|
|
25
|
+
::selection,
|
|
26
|
+
*::selection {
|
|
27
|
+
background: transparent;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
19
31
|
|
|
20
|
-
&.ua-chrome
|
|
32
|
+
&.ua-chrome .${inlineNodeViewClassname} > span {
|
|
21
33
|
user-select: none;
|
|
22
34
|
}
|
|
23
35
|
|
|
24
|
-
|
|
36
|
+
.${inlineNodeViewClassname}AddZeroWidthSpace {
|
|
25
37
|
::after {
|
|
26
38
|
content: '${ZERO_WIDTH_SPACE}';
|
|
27
39
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { css } from '@emotion/react';
|
|
2
2
|
import { N30 } from '@atlaskit/theme/colors';
|
|
3
|
+
import { token } from '@atlaskit/tokens';
|
|
3
4
|
export const triggerWrapper = css`
|
|
4
5
|
display: flex;
|
|
5
6
|
`;
|
|
6
7
|
export const separator = css`
|
|
7
|
-
background: ${N30};
|
|
8
|
+
background: ${token('color.border', N30)};
|
|
8
9
|
width: 1px;
|
|
9
10
|
height: 24px;
|
|
10
11
|
display: inline-block;
|
|
@@ -84,6 +84,9 @@ export let ACTION;
|
|
|
84
84
|
ACTION["SYNCHRONY_ENTITY_ERROR"] = "synchronyEntityError";
|
|
85
85
|
ACTION["SYNCHRONY_ERROR"] = "synchronyError";
|
|
86
86
|
ACTION["TEXT_LINK_MARK_TRANSFORMED"] = "textLinkMarkTransformed";
|
|
87
|
+
ACTION["DEDUPE_MARKS_TRANSFORMED"] = "dedupeMarksTransformed";
|
|
88
|
+
ACTION["NODES_MISSING_CONTENT_TRANSFORMED"] = "nodesMissingContentTransformed";
|
|
89
|
+
ACTION["INDENTATION_MARKS_TRANSFORMED"] = "indentationMarksTransformed";
|
|
87
90
|
ACTION["TOGGLE_EXPAND"] = "toggleExpand";
|
|
88
91
|
ACTION["TRANSACTION_DISPATCHED"] = "transactionDispatched";
|
|
89
92
|
ACTION["TRANSACTION_MUTATED_AFTER_DISPATCH"] = "transactionMutatedAfterDispatched";
|
|
@@ -32,23 +32,14 @@ const basePlugin = options => ({
|
|
|
32
32
|
// In Firefox, when the selection is placed between adjacent nodes which are not contenteditatble
|
|
33
33
|
// no cursor is presented to users.
|
|
34
34
|
// In Safari, when the selection is placed between adjacent nodes which are not contenteditatble
|
|
35
|
-
//
|
|
36
|
-
// This plugin
|
|
35
|
+
// it is not possible to navigate with arrow keys.
|
|
36
|
+
// This plugin works around the issues by inserting decorations between
|
|
37
37
|
// inline nodes which are set as contenteditable, and have a zero width space.
|
|
38
|
-
// At time of development, using this workaround in Safari caused additional issues;
|
|
39
|
-
// - visual artifacts when moving across inline nodes (ie. using the arrow key to traverse a
|
|
40
|
-
// series of inline nodes)
|
|
41
|
-
// - blocking the right arrow key when at the start of a line from moving to the end of the
|
|
42
|
-
// previous line.
|
|
43
|
-
// As such we only apply the workaround for firefox and chrome.
|
|
44
|
-
|
|
45
|
-
if (browser.chrome || browser.gecko) {
|
|
46
|
-
plugins.push({
|
|
47
|
-
name: 'inlineCursorTargetPlugin',
|
|
48
|
-
plugin: () => options && options.allowInlineCursorTarget ? inlineCursorTargetPlugin() : undefined
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
38
|
|
|
39
|
+
plugins.push({
|
|
40
|
+
name: 'inlineCursorTargetPlugin',
|
|
41
|
+
plugin: () => options && options.allowInlineCursorTarget ? inlineCursorTargetPlugin() : undefined
|
|
42
|
+
});
|
|
52
43
|
plugins.push({
|
|
53
44
|
name: 'focusHandlerPlugin',
|
|
54
45
|
plugin: ({
|
|
@@ -4,6 +4,7 @@ import { Fragment } from 'prosemirror-model';
|
|
|
4
4
|
import { closeHistory } from 'prosemirror-history';
|
|
5
5
|
import { ReplaceStep, ReplaceAroundStep } from 'prosemirror-transform';
|
|
6
6
|
import { PluginKey } from 'prosemirror-state';
|
|
7
|
+
import { extractSliceFromStep } from '../../../utils/step';
|
|
7
8
|
|
|
8
9
|
const getEnterKeyboardActionStep = trs => {
|
|
9
10
|
const firstTr = trs.length === 1 && trs[0];
|
|
@@ -25,17 +26,6 @@ const getEnterKeyboardActionStep = trs => {
|
|
|
25
26
|
return replaceSteps[0];
|
|
26
27
|
};
|
|
27
28
|
|
|
28
|
-
const extractSliceFromStep = step => {
|
|
29
|
-
if (!(step instanceof ReplaceStep) && !(step instanceof ReplaceAroundStep)) {
|
|
30
|
-
return null;
|
|
31
|
-
} // @ts-ignore This is by design. Slice is a private property, but accesible, from ReplaceStep.
|
|
32
|
-
// However, we need to read it to found if the step was adding a newline
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const slice = step.slice;
|
|
36
|
-
return slice;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
29
|
const isSliceSplittingBlockNode = slice => {
|
|
40
30
|
const hasOnlyTwoChildren = slice.size > 1 && slice.content.childCount === 2;
|
|
41
31
|
|