@atlaskit/editor-core 163.0.0 → 164.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 +20 -0
- package/CHANGELOG.md +73 -0
- package/dist/cjs/editor.js +22 -14
- package/dist/cjs/i18n/cs.js +1 -1
- package/dist/cjs/i18n/de.js +3 -3
- package/dist/cjs/i18n/en.js +277 -131
- package/dist/cjs/i18n/en_GB.js +278 -132
- package/dist/cjs/i18n/es.js +1 -1
- package/dist/cjs/i18n/hu.js +2 -2
- package/dist/cjs/i18n/ko.js +2 -2
- package/dist/cjs/i18n/nb.js +1 -1
- package/dist/cjs/i18n/pl.js +24 -0
- package/dist/cjs/i18n/th.js +2 -2
- package/dist/cjs/i18n/tr.js +2 -2
- package/dist/cjs/i18n/vi.js +1 -1
- package/dist/cjs/i18n/zh.js +3 -0
- package/dist/cjs/index.js +12 -0
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.js +1 -1
- package/dist/cjs/nodeviews/getInlineNodeViewProducer.styles.js +1 -1
- package/dist/cjs/plugins/base/pm-plugins/inline-cursor-target.js +16 -23
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +13 -8
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/index.js +14 -6
- package/dist/cjs/plugins/block-type/ui/ToolbarBlockType/styled.js +6 -8
- package/dist/cjs/plugins/card/nodeviews/inlineCard.js +16 -42
- package/dist/cjs/plugins/card/pm-plugins/main.js +18 -16
- package/dist/cjs/plugins/card/ui/LinkToolbarButtonGroup.js +27 -30
- package/dist/cjs/plugins/emoji/ui/Emoji/index.js +5 -4
- package/dist/cjs/plugins/extension/nodeviews/extension.js +5 -0
- package/dist/cjs/plugins/extension/ui/Extension/Extension/index.js +7 -3
- package/dist/cjs/plugins/extension/ui/Extension/Extension/styles.js +15 -19
- package/dist/cjs/plugins/find-replace/ui/FindReplaceToolbarButton.js +14 -15
- package/dist/cjs/plugins/floating-toolbar/ui/Dropdown.js +16 -11
- package/dist/cjs/plugins/floating-toolbar/ui/DropdownMenu.js +14 -13
- package/dist/cjs/plugins/floating-toolbar/ui/EmojiPickerButton.js +16 -13
- package/dist/cjs/plugins/floating-toolbar/ui/Input.js +5 -2
- package/dist/cjs/plugins/floating-toolbar/ui/Separator.js +4 -5
- package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +28 -22
- package/dist/cjs/plugins/grid/index.js +2 -2
- package/dist/cjs/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +22 -18
- package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +12 -5
- package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +23 -21
- package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/item.js +9 -4
- package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/styles.js +4 -5
- package/dist/cjs/plugins/list/actions/wrap-and-join-lists.js +3 -73
- package/dist/cjs/plugins/list/ui/ToolbarLists/index.js +34 -18
- package/dist/cjs/plugins/media/commands/helpers.js +45 -25
- package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +13 -17
- package/dist/cjs/plugins/media/nodeviews/styles.js +14 -16
- package/dist/cjs/plugins/media/picker-facade.js +6 -69
- package/dist/cjs/plugins/media/pm-plugins/main.js +14 -56
- package/dist/cjs/plugins/media/toolbar/linking-toolbar-appearance.js +15 -11
- package/dist/cjs/plugins/media/ui/CaptionPlaceholder/index.js +5 -7
- package/dist/cjs/plugins/media/ui/Media/DropPlaceholder.js +9 -8
- package/dist/cjs/plugins/media/ui/MediaLinkingToolbar.js +28 -17
- package/dist/cjs/plugins/media/ui/MediaPicker/PickerFacadeProvider.js +1 -3
- package/dist/cjs/plugins/media/ui/MediaPicker/index.js +1 -1
- package/dist/cjs/plugins/mentions/ui/InviteItem/index.js +22 -9
- package/dist/cjs/plugins/mentions/ui/InviteItem/styles.js +15 -27
- package/dist/cjs/plugins/panel/actions.js +2 -2
- package/dist/cjs/plugins/panel/nodeviews/panel.js +2 -2
- package/dist/cjs/plugins/panel/pm-plugins/main.js +4 -4
- package/dist/cjs/plugins/panel/styles.js +2 -2
- package/dist/cjs/plugins/panel/toolbar.js +3 -3
- package/dist/cjs/plugins/panel/utils.js +4 -4
- package/dist/cjs/plugins/paste/handlers.js +6 -3
- package/dist/cjs/plugins/paste/pm-plugins/main.js +45 -85
- package/dist/cjs/plugins/status/nodeviews/status.js +10 -13
- package/dist/cjs/plugins/status/ui/statusPicker.js +6 -5
- package/dist/cjs/plugins/table/commands/insert.js +0 -6
- package/dist/cjs/plugins/table/pm-plugins/main.js +67 -0
- package/dist/cjs/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +18 -16
- package/dist/cjs/plugins/table/ui/common-styles.js +5 -12
- package/dist/cjs/plugins/table/utils/paste.js +10 -2
- package/dist/cjs/plugins/tasks-and-decisions/commands.js +44 -14
- package/dist/cjs/plugins/tasks-and-decisions/index.js +17 -18
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/input-rules.js +20 -16
- package/dist/cjs/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +1 -1
- package/dist/cjs/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +1 -1
- package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/index.js +21 -9
- package/dist/cjs/plugins/text-color/ui/ToolbarTextColor/styles.js +9 -22
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +7 -8
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/hooks/formatting-icons.js +8 -4
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/index.js +14 -8
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/more-button.js +7 -2
- package/dist/cjs/plugins/text-formatting/ui/Toolbar/single-toolbar-buttons.js +6 -3
- package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +11 -4
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadListItem.js +26 -22
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +7 -6
- package/dist/cjs/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +14 -10
- package/dist/cjs/ui/Addon/ClickAreaBlock/index.js +5 -5
- package/dist/cjs/ui/Addon/ClickAreaInline/index.js +4 -5
- package/dist/cjs/ui/Addon/ClickAreaMobile/index.js +12 -11
- package/dist/cjs/ui/Addon/Dropdown/index.js +5 -1
- package/dist/cjs/ui/Addon/Dropdown/styles.js +4 -5
- package/dist/cjs/ui/Addon/DropdownItem/index.js +5 -5
- package/dist/cjs/ui/Addon/DropdownItem/styles.js +4 -5
- package/dist/cjs/ui/Alignment/index.js +9 -15
- package/dist/cjs/ui/Alignment/styles.js +4 -5
- package/dist/cjs/ui/Appearance/Chromeless.js +11 -15
- package/dist/cjs/ui/Appearance/Comment/Comment.js +29 -34
- package/dist/cjs/ui/Appearance/Comment/Toolbar.js +14 -23
- package/dist/cjs/ui/Appearance/FullPage/FullPage.js +6 -3
- package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +30 -19
- package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +21 -15
- package/dist/cjs/ui/Appearance/FullPage/MainToolbar.js +34 -46
- package/dist/cjs/ui/Appearance/FullPage/StyledComponents.js +44 -49
- package/dist/cjs/ui/AppearanceComponents/Mobile.js +12 -15
- package/dist/cjs/ui/ChromeCollapsed/index.js +5 -2
- package/dist/cjs/ui/ChromeCollapsed/styles.js +4 -5
- package/dist/cjs/ui/ColorPalette/Color/index.js +8 -3
- package/dist/cjs/ui/ColorPalette/Color/styles.js +6 -9
- package/dist/cjs/ui/ColorPalette/Palettes/panelBackgroundPalette.js +22 -22
- package/dist/cjs/ui/ColorPalette/index.js +8 -3
- package/dist/cjs/ui/ColorPalette/styles.js +4 -5
- package/dist/cjs/ui/ColorPickerButton/index.js +11 -8
- package/dist/cjs/ui/ConfigPanel/Fields/Boolean.js +2 -1
- package/dist/cjs/ui/ConfigPanel/Fields/CheckboxGroup.js +11 -17
- package/dist/cjs/ui/ConfigPanel/Fields/ColorPicker.js +15 -12
- package/dist/cjs/ui/ConfigPanel/Fields/DateRange.js +27 -30
- package/dist/cjs/ui/ConfigPanel/Fields/Expand.js +32 -31
- package/dist/cjs/ui/ConfigPanel/Fields/Fieldset.js +22 -13
- package/dist/cjs/ui/ConfigPanel/Fields/SelectItem.js +17 -20
- package/dist/cjs/ui/ConfigPanel/Fields/common/RequiredIndicator.js +4 -5
- package/dist/cjs/ui/ConfigPanel/LoadingState.js +5 -5
- package/dist/cjs/ui/ConfigPanel/NestedForms/RemovableField.js +13 -14
- package/dist/cjs/ui/ContentStyles/index.js +24 -18
- package/dist/cjs/ui/ContextPanel/index.js +35 -62
- package/dist/cjs/ui/DropdownMenu/index.js +20 -25
- package/dist/cjs/ui/ElementBrowser/InsertMenu.js +38 -18
- package/dist/cjs/ui/ElementBrowser/components/CategoryList.js +13 -12
- package/dist/cjs/ui/ElementBrowser/components/ElementBrowserLoader.js +7 -6
- package/dist/cjs/ui/ElementBrowser/components/ElementList/ElementList.js +5 -3
- package/dist/cjs/ui/ElementBrowser/components/ElementSearch.js +18 -21
- package/dist/cjs/ui/FloatingToolbar/index.js +9 -14
- package/dist/cjs/ui/FloatingToolbar/styles.js +6 -13
- package/dist/cjs/ui/LinkSearch/LinkSearchListItem.js +37 -27
- package/dist/cjs/ui/LinkSearch/ToolbarComponents.js +8 -21
- package/dist/cjs/ui/PanelTextInput/index.js +7 -11
- package/dist/cjs/ui/PanelTextInput/styles.js +10 -7
- package/dist/cjs/ui/PluginSlot/index.js +6 -4
- package/dist/cjs/ui/Toolbar/ToolbarWithSizeDetector.js +19 -12
- package/dist/cjs/ui/ToolbarButton/index.js +8 -8
- package/dist/cjs/ui/ToolbarFeedback/index.js +21 -14
- package/dist/cjs/ui/ToolbarFeedback/styles.js +14 -28
- package/dist/cjs/ui/styles.js +29 -56
- package/dist/cjs/utils/prosemirror/autojoin.js +83 -0
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/editor.js +17 -13
- package/dist/es2019/i18n/cs.js +1 -1
- package/dist/es2019/i18n/de.js +3 -3
- package/dist/es2019/i18n/en.js +277 -131
- package/dist/es2019/i18n/en_GB.js +278 -132
- package/dist/es2019/i18n/es.js +1 -1
- package/dist/es2019/i18n/hu.js +2 -2
- package/dist/es2019/i18n/ko.js +2 -2
- package/dist/es2019/i18n/nb.js +1 -1
- package/dist/es2019/i18n/pl.js +24 -0
- package/dist/es2019/i18n/th.js +2 -2
- package/dist/es2019/i18n/tr.js +2 -2
- package/dist/es2019/i18n/vi.js +1 -1
- package/dist/es2019/i18n/zh.js +3 -0
- package/dist/es2019/index.js +3 -3
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.js +1 -1
- package/dist/es2019/nodeviews/getInlineNodeViewProducer.styles.js +6 -1
- package/dist/es2019/plugins/base/pm-plugins/inline-cursor-target.js +15 -12
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +13 -9
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/index.js +16 -8
- package/dist/es2019/plugins/block-type/ui/ToolbarBlockType/styled.js +6 -4
- package/dist/es2019/plugins/card/nodeviews/inlineCard.js +15 -23
- package/dist/es2019/plugins/card/pm-plugins/main.js +22 -18
- package/dist/es2019/plugins/card/ui/LinkToolbarButtonGroup.js +19 -14
- package/dist/es2019/plugins/emoji/ui/Emoji/index.js +6 -3
- package/dist/es2019/plugins/extension/nodeviews/extension.js +5 -0
- package/dist/es2019/plugins/extension/ui/Extension/Extension/index.js +8 -4
- package/dist/es2019/plugins/extension/ui/Extension/Extension/styles.js +5 -6
- package/dist/es2019/plugins/find-replace/ui/FindReplaceToolbarButton.js +18 -11
- package/dist/es2019/plugins/floating-toolbar/ui/Dropdown.js +18 -10
- package/dist/es2019/plugins/floating-toolbar/ui/DropdownMenu.js +13 -9
- package/dist/es2019/plugins/floating-toolbar/ui/EmojiPickerButton.js +14 -9
- package/dist/es2019/plugins/floating-toolbar/ui/Input.js +7 -3
- package/dist/es2019/plugins/floating-toolbar/ui/Separator.js +5 -4
- package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +28 -18
- package/dist/es2019/plugins/grid/index.js +1 -1
- package/dist/es2019/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +23 -14
- package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +13 -7
- package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +21 -17
- package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/item.js +9 -5
- package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/styles.js +2 -2
- package/dist/es2019/plugins/list/actions/wrap-and-join-lists.js +3 -69
- package/dist/es2019/plugins/list/ui/ToolbarLists/index.js +34 -18
- package/dist/es2019/plugins/media/commands/helpers.js +45 -25
- package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +13 -10
- package/dist/es2019/plugins/media/nodeviews/styles.js +13 -9
- package/dist/es2019/plugins/media/picker-facade.js +2 -44
- package/dist/es2019/plugins/media/pm-plugins/main.js +5 -30
- package/dist/es2019/plugins/media/toolbar/linking-toolbar-appearance.js +17 -12
- package/dist/es2019/plugins/media/ui/CaptionPlaceholder/index.js +6 -5
- package/dist/es2019/plugins/media/ui/Media/DropPlaceholder.js +10 -6
- package/dist/es2019/plugins/media/ui/MediaLinkingToolbar.js +24 -16
- package/dist/es2019/plugins/media/ui/MediaPicker/PickerFacadeProvider.js +1 -2
- package/dist/es2019/plugins/media/ui/MediaPicker/index.js +1 -1
- package/dist/es2019/plugins/mentions/ui/InviteItem/index.js +19 -6
- package/dist/es2019/plugins/mentions/ui/InviteItem/styles.js +11 -9
- package/dist/es2019/plugins/panel/actions.js +1 -1
- package/dist/es2019/plugins/panel/nodeviews/panel.js +1 -1
- package/dist/es2019/plugins/panel/pm-plugins/main.js +1 -1
- package/dist/es2019/plugins/panel/styles.js +1 -1
- package/dist/es2019/plugins/panel/toolbar.js +1 -1
- package/dist/es2019/plugins/panel/utils.js +1 -1
- package/dist/es2019/plugins/paste/handlers.js +6 -3
- package/dist/es2019/plugins/paste/pm-plugins/main.js +26 -61
- package/dist/es2019/plugins/status/nodeviews/status.js +11 -7
- package/dist/es2019/plugins/status/ui/statusPicker.js +8 -5
- package/dist/es2019/plugins/table/commands/insert.js +0 -5
- package/dist/es2019/plugins/table/pm-plugins/main.js +65 -1
- package/dist/es2019/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +20 -11
- package/dist/es2019/plugins/table/ui/common-styles.js +2 -18
- package/dist/es2019/plugins/table/utils/paste.js +8 -3
- package/dist/es2019/plugins/tasks-and-decisions/commands.js +26 -14
- package/dist/es2019/plugins/tasks-and-decisions/index.js +18 -19
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/input-rules.js +16 -10
- package/dist/es2019/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +2 -2
- package/dist/es2019/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +2 -2
- package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/index.js +24 -11
- package/dist/es2019/plugins/text-color/ui/ToolbarTextColor/styles.js +20 -27
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +7 -3
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/hooks/formatting-icons.js +9 -5
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/index.js +15 -9
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/more-button.js +7 -3
- package/dist/es2019/plugins/text-formatting/ui/Toolbar/single-toolbar-buttons.js +6 -4
- package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +13 -5
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadListItem.js +25 -14
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +8 -6
- package/dist/es2019/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +15 -11
- package/dist/es2019/ui/Addon/ClickAreaBlock/index.js +7 -4
- package/dist/es2019/ui/Addon/ClickAreaInline/index.js +6 -4
- package/dist/es2019/ui/Addon/ClickAreaMobile/index.js +14 -9
- package/dist/es2019/ui/Addon/Dropdown/index.js +7 -2
- package/dist/es2019/ui/Addon/Dropdown/styles.js +2 -2
- package/dist/es2019/ui/Addon/DropdownItem/index.js +6 -4
- package/dist/es2019/ui/Addon/DropdownItem/styles.js +2 -2
- package/dist/es2019/ui/Alignment/index.js +8 -9
- package/dist/es2019/ui/Alignment/styles.js +3 -2
- package/dist/es2019/ui/Appearance/Chromeless.js +18 -13
- package/dist/es2019/ui/Appearance/Comment/Comment.js +34 -30
- package/dist/es2019/ui/Appearance/Comment/Toolbar.js +15 -15
- package/dist/es2019/ui/Appearance/FullPage/FullPage.js +8 -4
- package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +28 -18
- package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +21 -14
- package/dist/es2019/ui/Appearance/FullPage/MainToolbar.js +41 -51
- package/dist/es2019/ui/Appearance/FullPage/StyledComponents.js +59 -58
- package/dist/es2019/ui/AppearanceComponents/Mobile.js +12 -13
- package/dist/es2019/ui/ChromeCollapsed/index.js +7 -3
- package/dist/es2019/ui/ChromeCollapsed/styles.js +2 -2
- package/dist/es2019/ui/ColorPalette/Color/index.js +10 -4
- package/dist/es2019/ui/ColorPalette/Color/styles.js +3 -3
- package/dist/es2019/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -1
- package/dist/es2019/ui/ColorPalette/index.js +6 -3
- package/dist/es2019/ui/ColorPalette/styles.js +2 -2
- package/dist/es2019/ui/ColorPickerButton/index.js +12 -7
- package/dist/es2019/ui/ConfigPanel/Fields/Boolean.js +3 -2
- package/dist/es2019/ui/ConfigPanel/Fields/CheckboxGroup.js +13 -10
- package/dist/es2019/ui/ConfigPanel/Fields/ColorPicker.js +16 -10
- package/dist/es2019/ui/ConfigPanel/Fields/DateRange.js +28 -19
- package/dist/es2019/ui/ConfigPanel/Fields/Expand.js +24 -16
- package/dist/es2019/ui/ConfigPanel/Fields/Fieldset.js +18 -13
- package/dist/es2019/ui/ConfigPanel/Fields/SelectItem.js +15 -15
- package/dist/es2019/ui/ConfigPanel/Fields/common/RequiredIndicator.js +2 -2
- package/dist/es2019/ui/ConfigPanel/LoadingState.js +6 -4
- package/dist/es2019/ui/ConfigPanel/NestedForms/RemovableField.js +15 -10
- package/dist/es2019/ui/ContentStyles/index.js +20 -17
- package/dist/es2019/ui/ContextPanel/index.js +27 -37
- package/dist/es2019/ui/DropdownMenu/index.js +28 -20
- package/dist/es2019/ui/ElementBrowser/InsertMenu.js +34 -15
- package/dist/es2019/ui/ElementBrowser/components/CategoryList.js +9 -5
- package/dist/es2019/ui/ElementBrowser/components/ElementBrowserLoader.js +6 -3
- package/dist/es2019/ui/ElementBrowser/components/ElementList/ElementList.js +7 -5
- package/dist/es2019/ui/ElementBrowser/components/ElementSearch.js +31 -18
- package/dist/es2019/ui/FloatingToolbar/index.js +8 -8
- package/dist/es2019/ui/FloatingToolbar/styles.js +5 -7
- package/dist/es2019/ui/LinkSearch/LinkSearchListItem.js +30 -14
- package/dist/es2019/ui/LinkSearch/ToolbarComponents.js +7 -12
- package/dist/es2019/ui/PanelTextInput/index.js +7 -5
- package/dist/es2019/ui/PanelTextInput/styles.js +7 -3
- package/dist/es2019/ui/PluginSlot/index.js +8 -4
- package/dist/es2019/ui/Toolbar/ToolbarWithSizeDetector.js +15 -12
- package/dist/es2019/ui/ToolbarButton/index.js +8 -5
- package/dist/es2019/ui/ToolbarFeedback/index.js +21 -8
- package/dist/es2019/ui/ToolbarFeedback/styles.js +9 -11
- package/dist/es2019/ui/styles.js +24 -20
- package/dist/es2019/utils/prosemirror/autojoin.js +70 -0
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/editor.js +16 -13
- package/dist/esm/i18n/cs.js +1 -1
- package/dist/esm/i18n/de.js +3 -3
- package/dist/esm/i18n/en.js +277 -131
- package/dist/esm/i18n/en_GB.js +278 -132
- package/dist/esm/i18n/es.js +1 -1
- package/dist/esm/i18n/hu.js +2 -2
- package/dist/esm/i18n/ko.js +2 -2
- package/dist/esm/i18n/nb.js +1 -1
- package/dist/esm/i18n/pl.js +24 -0
- package/dist/esm/i18n/th.js +2 -2
- package/dist/esm/i18n/tr.js +2 -2
- package/dist/esm/i18n/vi.js +1 -1
- package/dist/esm/i18n/zh.js +3 -0
- package/dist/esm/index.js +3 -3
- package/dist/esm/nodeviews/getInlineNodeViewProducer.js +1 -1
- package/dist/esm/nodeviews/getInlineNodeViewProducer.styles.js +1 -1
- package/dist/esm/plugins/base/pm-plugins/inline-cursor-target.js +15 -16
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/blocktype-button.js +13 -9
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/index.js +16 -8
- package/dist/esm/plugins/block-type/ui/ToolbarBlockType/styled.js +4 -6
- package/dist/esm/plugins/card/nodeviews/inlineCard.js +14 -38
- package/dist/esm/plugins/card/pm-plugins/main.js +18 -17
- package/dist/esm/plugins/card/ui/LinkToolbarButtonGroup.js +26 -27
- package/dist/esm/plugins/emoji/ui/Emoji/index.js +6 -3
- package/dist/esm/plugins/extension/nodeviews/extension.js +5 -0
- package/dist/esm/plugins/extension/ui/Extension/Extension/index.js +8 -4
- package/dist/esm/plugins/extension/ui/Extension/Extension/styles.js +10 -9
- package/dist/esm/plugins/find-replace/ui/FindReplaceToolbarButton.js +15 -13
- package/dist/esm/plugins/floating-toolbar/ui/Dropdown.js +17 -10
- package/dist/esm/plugins/floating-toolbar/ui/DropdownMenu.js +13 -9
- package/dist/esm/plugins/floating-toolbar/ui/EmojiPickerButton.js +14 -9
- package/dist/esm/plugins/floating-toolbar/ui/Input.js +6 -3
- package/dist/esm/plugins/floating-toolbar/ui/Separator.js +5 -4
- package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +30 -22
- package/dist/esm/plugins/grid/index.js +1 -1
- package/dist/esm/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.js +24 -15
- package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.js +13 -7
- package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +25 -23
- package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/item.js +9 -5
- package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/styles.js +2 -2
- package/dist/esm/plugins/list/actions/wrap-and-join-lists.js +3 -73
- package/dist/esm/plugins/list/ui/ToolbarLists/index.js +33 -18
- package/dist/esm/plugins/media/commands/helpers.js +45 -25
- package/dist/esm/plugins/media/nodeviews/mediaSingle.js +12 -10
- package/dist/esm/plugins/media/nodeviews/styles.js +13 -10
- package/dist/esm/plugins/media/picker-facade.js +7 -71
- package/dist/esm/plugins/media/pm-plugins/main.js +14 -57
- package/dist/esm/plugins/media/toolbar/linking-toolbar-appearance.js +17 -12
- package/dist/esm/plugins/media/ui/CaptionPlaceholder/index.js +6 -5
- package/dist/esm/plugins/media/ui/Media/DropPlaceholder.js +10 -6
- package/dist/esm/plugins/media/ui/MediaLinkingToolbar.js +23 -16
- package/dist/esm/plugins/media/ui/MediaPicker/PickerFacadeProvider.js +1 -2
- package/dist/esm/plugins/media/ui/MediaPicker/index.js +1 -1
- package/dist/esm/plugins/mentions/ui/InviteItem/index.js +19 -6
- package/dist/esm/plugins/mentions/ui/InviteItem/styles.js +8 -12
- package/dist/esm/plugins/panel/actions.js +1 -1
- package/dist/esm/plugins/panel/nodeviews/panel.js +1 -1
- package/dist/esm/plugins/panel/pm-plugins/main.js +1 -1
- package/dist/esm/plugins/panel/styles.js +1 -1
- package/dist/esm/plugins/panel/toolbar.js +1 -1
- package/dist/esm/plugins/panel/utils.js +1 -1
- package/dist/esm/plugins/paste/handlers.js +6 -3
- package/dist/esm/plugins/paste/pm-plugins/main.js +26 -61
- package/dist/esm/plugins/status/nodeviews/status.js +9 -9
- package/dist/esm/plugins/status/ui/statusPicker.js +7 -5
- package/dist/esm/plugins/table/commands/insert.js +0 -5
- package/dist/esm/plugins/table/pm-plugins/main.js +62 -1
- package/dist/esm/plugins/table/ui/FloatingContextualMenu/ContextualMenu.js +19 -11
- package/dist/esm/plugins/table/ui/common-styles.js +3 -7
- package/dist/esm/plugins/table/utils/paste.js +8 -3
- package/dist/esm/plugins/tasks-and-decisions/commands.js +35 -11
- package/dist/esm/plugins/tasks-and-decisions/index.js +19 -18
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/input-rules.js +21 -17
- package/dist/esm/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +2 -2
- package/dist/esm/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +2 -2
- package/dist/esm/plugins/text-color/ui/ToolbarTextColor/index.js +23 -11
- package/dist/esm/plugins/text-color/ui/ToolbarTextColor/styles.js +7 -15
- package/dist/esm/plugins/text-formatting/ui/Toolbar/hooks/clear-formatting-icon.js +7 -3
- package/dist/esm/plugins/text-formatting/ui/Toolbar/hooks/formatting-icons.js +9 -5
- package/dist/esm/plugins/text-formatting/ui/Toolbar/index.js +15 -9
- package/dist/esm/plugins/text-formatting/ui/Toolbar/more-button.js +7 -3
- package/dist/esm/plugins/text-formatting/ui/Toolbar/single-toolbar-buttons.js +6 -4
- package/dist/esm/plugins/type-ahead/ui/InputQuery.js +13 -5
- package/dist/esm/plugins/type-ahead/ui/TypeAheadListItem.js +25 -14
- package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +8 -6
- package/dist/esm/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +15 -11
- package/dist/esm/ui/Addon/ClickAreaBlock/index.js +6 -4
- package/dist/esm/ui/Addon/ClickAreaInline/index.js +5 -4
- package/dist/esm/ui/Addon/ClickAreaMobile/index.js +13 -10
- package/dist/esm/ui/Addon/Dropdown/index.js +6 -2
- package/dist/esm/ui/Addon/Dropdown/styles.js +2 -2
- package/dist/esm/ui/Addon/DropdownItem/index.js +6 -4
- package/dist/esm/ui/Addon/DropdownItem/styles.js +2 -2
- package/dist/esm/ui/Alignment/index.js +8 -9
- package/dist/esm/ui/Alignment/styles.js +2 -2
- package/dist/esm/ui/Appearance/Chromeless.js +12 -14
- package/dist/esm/ui/Appearance/Comment/Comment.js +31 -31
- package/dist/esm/ui/Appearance/Comment/Toolbar.js +13 -16
- package/dist/esm/ui/Appearance/FullPage/FullPage.js +7 -4
- package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +28 -18
- package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +22 -14
- package/dist/esm/ui/Appearance/FullPage/MainToolbar.js +21 -24
- package/dist/esm/ui/Appearance/FullPage/StyledComponents.js +35 -34
- package/dist/esm/ui/AppearanceComponents/Mobile.js +13 -14
- package/dist/esm/ui/ChromeCollapsed/index.js +6 -3
- package/dist/esm/ui/ChromeCollapsed/styles.js +2 -2
- package/dist/esm/ui/ColorPalette/Color/index.js +9 -4
- package/dist/esm/ui/ColorPalette/Color/styles.js +3 -3
- package/dist/esm/ui/ColorPalette/Palettes/panelBackgroundPalette.js +1 -1
- package/dist/esm/ui/ColorPalette/index.js +7 -4
- package/dist/esm/ui/ColorPalette/styles.js +2 -2
- package/dist/esm/ui/ColorPickerButton/index.js +12 -7
- package/dist/esm/ui/ConfigPanel/Fields/Boolean.js +3 -2
- package/dist/esm/ui/ConfigPanel/Fields/CheckboxGroup.js +12 -10
- package/dist/esm/ui/ConfigPanel/Fields/ColorPicker.js +16 -10
- package/dist/esm/ui/ConfigPanel/Fields/DateRange.js +27 -19
- package/dist/esm/ui/ConfigPanel/Fields/Expand.js +30 -21
- package/dist/esm/ui/ConfigPanel/Fields/Fieldset.js +17 -13
- package/dist/esm/ui/ConfigPanel/Fields/SelectItem.js +18 -18
- package/dist/esm/ui/ConfigPanel/Fields/common/RequiredIndicator.js +2 -2
- package/dist/esm/ui/ConfigPanel/LoadingState.js +6 -4
- package/dist/esm/ui/ConfigPanel/NestedForms/RemovableField.js +13 -12
- package/dist/esm/ui/ContentStyles/index.js +20 -17
- package/dist/esm/ui/ContextPanel/index.js +31 -48
- package/dist/esm/ui/DropdownMenu/index.js +21 -22
- package/dist/esm/ui/ElementBrowser/InsertMenu.js +39 -16
- package/dist/esm/ui/ElementBrowser/components/CategoryList.js +9 -6
- package/dist/esm/ui/ElementBrowser/components/ElementBrowserLoader.js +6 -3
- package/dist/esm/ui/ElementBrowser/components/ElementList/ElementList.js +7 -5
- package/dist/esm/ui/ElementBrowser/components/ElementSearch.js +20 -18
- package/dist/esm/ui/FloatingToolbar/index.js +8 -8
- package/dist/esm/ui/FloatingToolbar/styles.js +4 -5
- package/dist/esm/ui/LinkSearch/LinkSearchListItem.js +27 -16
- package/dist/esm/ui/LinkSearch/ToolbarComponents.js +4 -7
- package/dist/esm/ui/PanelTextInput/index.js +6 -5
- package/dist/esm/ui/PanelTextInput/styles.js +6 -5
- package/dist/esm/ui/PluginSlot/index.js +7 -4
- package/dist/esm/ui/Toolbar/ToolbarWithSizeDetector.js +14 -12
- package/dist/esm/ui/ToolbarButton/index.js +8 -5
- package/dist/esm/ui/ToolbarFeedback/index.js +20 -8
- package/dist/esm/ui/ToolbarFeedback/styles.js +8 -11
- package/dist/esm/ui/styles.js +17 -23
- package/dist/esm/utils/prosemirror/autojoin.js +76 -0
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/editor.d.ts +3 -1
- package/dist/types/i18n/en.d.ts +276 -130
- package/dist/types/i18n/en_GB.d.ts +276 -130
- package/dist/types/i18n/pl.d.ts +24 -0
- package/dist/types/i18n/zh.d.ts +3 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/plugins/base/pm-plugins/inline-cursor-target.d.ts +1 -3
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/blocktype-button.d.ts +1 -0
- package/dist/types/plugins/block-type/ui/ToolbarBlockType/styled.d.ts +2 -4
- package/dist/types/plugins/card/nodeviews/inlineCard.d.ts +2 -5
- package/dist/types/plugins/card/pm-plugins/main.d.ts +1 -1
- package/dist/types/plugins/card/pm-plugins/util/resolve.d.ts +1 -1
- package/dist/types/plugins/card/ui/LinkToolbarButtonGroup.d.ts +2 -7
- package/dist/types/plugins/emoji/ui/Emoji/index.d.ts +3 -2
- package/dist/types/plugins/extension/ui/Extension/Extension/styles.d.ts +3 -4
- package/dist/types/plugins/find-replace/ui/FindReplaceToolbarButton.d.ts +1 -0
- package/dist/types/plugins/floating-toolbar/ui/Dropdown.d.ts +3 -1
- package/dist/types/plugins/floating-toolbar/ui/DropdownMenu.d.ts +3 -3
- package/dist/types/plugins/floating-toolbar/ui/Input.d.ts +3 -1
- package/dist/types/plugins/floating-toolbar/ui/Separator.d.ts +3 -2
- package/dist/types/plugins/floating-toolbar/ui/Toolbar.d.ts +1 -0
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/dropdown-button.d.ts +1 -0
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/index.d.ts +3 -1
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/item.d.ts +1 -0
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/styles.d.ts +1 -2
- package/dist/types/plugins/list/actions/wrap-and-join-lists.d.ts +1 -11
- package/dist/types/plugins/list/ui/ToolbarLists/index.d.ts +3 -3
- package/dist/types/plugins/media/commands/helpers.d.ts +2 -2
- package/dist/types/plugins/media/nodeviews/mediaSingle.d.ts +4 -2
- package/dist/types/plugins/media/nodeviews/styles.d.ts +4 -2
- package/dist/types/plugins/media/picker-facade.d.ts +5 -12
- package/dist/types/plugins/media/pm-plugins/main.d.ts +1 -4
- package/dist/types/plugins/media/pm-plugins/types.d.ts +0 -1
- package/dist/types/plugins/media/toolbar/linking-toolbar-appearance.d.ts +1 -0
- package/dist/types/plugins/media/types.d.ts +0 -1
- package/dist/types/plugins/media/ui/CaptionPlaceholder/index.d.ts +3 -2
- package/dist/types/plugins/media/ui/Media/DropPlaceholder.d.ts +3 -2
- package/dist/types/plugins/media/ui/MediaLinkingToolbar.d.ts +3 -1
- package/dist/types/plugins/mentions/ui/InviteItem/styles.d.ts +6 -6
- package/dist/types/plugins/status/nodeviews/status.d.ts +1 -4
- package/dist/types/plugins/status/ui/statusPicker.d.ts +3 -1
- package/dist/types/plugins/table/ui/FloatingContextualMenu/ContextualMenu.d.ts +6 -4
- package/dist/types/plugins/table/ui/common-styles.d.ts +0 -2
- package/dist/types/plugins/table/utils/paste.d.ts +2 -0
- package/dist/types/plugins/tasks-and-decisions/commands.d.ts +5 -2
- package/dist/types/plugins/text-color/ui/ToolbarTextColor/index.d.ts +3 -1
- package/dist/types/plugins/text-color/ui/ToolbarTextColor/styles.d.ts +3 -11
- package/dist/types/plugins/text-formatting/ui/Toolbar/index.d.ts +1 -0
- package/dist/types/plugins/text-formatting/ui/Toolbar/more-button.d.ts +1 -0
- package/dist/types/plugins/text-formatting/ui/Toolbar/single-toolbar-buttons.d.ts +1 -0
- package/dist/types/plugins/type-ahead/ui/InputQuery.d.ts +1 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadListItem.d.ts +2 -1
- package/dist/types/plugins/type-ahead/ui/TypeAheadPopup.d.ts +1 -0
- package/dist/types/plugins/undo-redo/ui/ToolbarUndoRedo/index.d.ts +6 -4
- package/dist/types/ui/Addon/ClickAreaBlock/index.d.ts +3 -1
- package/dist/types/ui/Addon/ClickAreaInline/index.d.ts +3 -1
- package/dist/types/ui/Addon/ClickAreaMobile/index.d.ts +3 -1
- package/dist/types/ui/Addon/Dropdown/index.d.ts +3 -1
- package/dist/types/ui/Addon/Dropdown/styles.d.ts +1 -2
- package/dist/types/ui/Addon/DropdownItem/index.d.ts +3 -2
- package/dist/types/ui/Addon/DropdownItem/styles.d.ts +1 -2
- package/dist/types/ui/Alignment/index.d.ts +3 -3
- package/dist/types/ui/Alignment/styles.d.ts +1 -2
- package/dist/types/ui/Appearance/Chromeless.d.ts +3 -1
- package/dist/types/ui/Appearance/Comment/Comment.d.ts +1 -0
- package/dist/types/ui/Appearance/Comment/Toolbar.d.ts +2 -2
- package/dist/types/ui/Appearance/FullPage/FullPage.d.ts +3 -1
- package/dist/types/ui/Appearance/FullPage/FullPageToolbar.d.ts +1 -0
- package/dist/types/ui/Appearance/FullPage/MainToolbar.d.ts +6 -12
- package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +13 -16
- package/dist/types/ui/AppearanceComponents/Mobile.d.ts +3 -1
- package/dist/types/ui/ChromeCollapsed/index.d.ts +1 -0
- package/dist/types/ui/ChromeCollapsed/styles.d.ts +1 -4
- package/dist/types/ui/ColorPalette/Color/index.d.ts +3 -1
- package/dist/types/ui/ColorPalette/Color/styles.d.ts +2 -3
- package/dist/types/ui/ColorPalette/index.d.ts +1 -0
- package/dist/types/ui/ColorPalette/styles.d.ts +1 -2
- package/dist/types/ui/ColorPickerButton/index.d.ts +1 -0
- package/dist/types/ui/ConfigPanel/Fields/CheckboxGroup.d.ts +2 -2
- package/dist/types/ui/ConfigPanel/Fields/ColorPicker.d.ts +3 -2
- package/dist/types/ui/ConfigPanel/Fields/DateRange.d.ts +3 -3
- package/dist/types/ui/ConfigPanel/Fields/Expand.d.ts +3 -2
- package/dist/types/ui/ConfigPanel/Fields/Fieldset.d.ts +1 -0
- package/dist/types/ui/ConfigPanel/Fields/SelectItem.d.ts +3 -2
- package/dist/types/ui/ConfigPanel/Fields/common/RequiredIndicator.d.ts +1 -2
- package/dist/types/ui/ConfigPanel/LoadingState.d.ts +3 -2
- package/dist/types/ui/ConfigPanel/NestedForms/RemovableField.d.ts +1 -0
- package/dist/types/ui/ContentStyles/index.d.ts +2 -0
- package/dist/types/ui/ContextPanel/index.d.ts +8 -14
- package/dist/types/ui/DropdownMenu/index.d.ts +3 -1
- package/dist/types/ui/ElementBrowser/InsertMenu.d.ts +2 -2
- package/dist/types/ui/ElementBrowser/components/ElementSearch.d.ts +1 -0
- package/dist/types/ui/FloatingToolbar/index.d.ts +3 -2
- package/dist/types/ui/FloatingToolbar/styles.d.ts +1 -5
- package/dist/types/ui/LinkSearch/LinkSearchListItem.d.ts +5 -7
- package/dist/types/ui/LinkSearch/ToolbarComponents.d.ts +3 -8
- package/dist/types/ui/PanelTextInput/index.d.ts +3 -1
- package/dist/types/ui/PanelTextInput/styles.d.ts +2 -4
- package/dist/types/ui/PluginSlot/index.d.ts +3 -1
- package/dist/types/ui/Toolbar/ToolbarWithSizeDetector.d.ts +1 -0
- package/dist/types/ui/ToolbarButton/index.d.ts +1 -0
- package/dist/types/ui/ToolbarFeedback/index.d.ts +3 -1
- package/dist/types/ui/ToolbarFeedback/styles.d.ts +6 -7
- package/dist/types/ui/styles.d.ts +12 -22
- package/dist/types/utils/prosemirror/autojoin.d.ts +13 -0
- package/package.json +19 -19
- package/dist/cjs/ui/Separator/index.js +0 -21
- package/dist/es2019/ui/Separator/index.js +0 -9
- package/dist/esm/ui/Separator/index.js +0 -8
- package/dist/types/ui/Separator/index.d.ts +0 -3
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
// @ts-ignore: outdated type definitions
|
|
2
|
-
import { handlePaste as handlePasteTable } from '@atlaskit/editor-tables/utils';
|
|
3
1
|
import { Slice, Fragment } from 'prosemirror-model';
|
|
4
2
|
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
|
|
5
3
|
import { PluginKey } from 'prosemirror-state';
|
|
@@ -11,11 +9,7 @@ import * as clipboard from '../../../utils/clipboard';
|
|
|
11
9
|
import { transformSliceForMedia } from '../../media/utils/media-single';
|
|
12
10
|
import { escapeLinks, htmlContainsSingleFile, isPastedFromWord, isPastedFromExcel, htmlHasInvalidLinkTags, removeDuplicateInvalidLinks } from '../util';
|
|
13
11
|
import { linkifyContent } from '../../hyperlink/utils';
|
|
14
|
-
import {
|
|
15
|
-
import { transformSliceToRemoveOpenLayoutNodes } from '../../layout/utils';
|
|
16
|
-
import { transformSliceNestedExpandToExpand, transformSliceToRemoveOpenExpand } from '../../expand/utils';
|
|
17
|
-
import { transformSliceToRemoveOpenTable, transformSliceToCorrectEmptyTableCells, transformSliceToFixHardBreakProblemOnCopyFromCell } from '../../table/utils';
|
|
18
|
-
import { transformSliceToAddTableHeaders } from '../../table/commands';
|
|
12
|
+
import { transformSliceNestedExpandToExpand } from '../../expand/utils';
|
|
19
13
|
import { handleMacroAutoConvert, handleMention, handleParagraphBlockMarks } from '../handlers';
|
|
20
14
|
import { transformSliceToJoinAdjacentCodeBlocks, transformSingleLineCodeBlockToCodeMark } from '../../code-block/utils';
|
|
21
15
|
import { createPasteMeasurePayload, getContentNodeTypes, handlePasteAsPlainTextWithAnalytics, handlePasteIntoTaskAndDecisionWithAnalytics, handleCodeBlockWithAnalytics, handleMediaSingleWithAnalytics, handlePastePreservingMarksWithAnalytics, handleMarkdownWithAnalytics, handleRichTextWithAnalytics, handleExpandWithAnalytics, handleSelectedTableWithAnalytics, handlePasteLinkOnSelectedTextWithAnalytics, sendPasteAnalyticsEvent } from './analytics';
|
|
@@ -23,34 +17,17 @@ import { analyticsPluginKey, PasteTypes } from '../../analytics';
|
|
|
23
17
|
import { insideTable, measurements } from '../../../utils';
|
|
24
18
|
import { measureRender } from '@atlaskit/editor-common/utils';
|
|
25
19
|
import { transformSliceToCorrectMediaWrapper, unwrapNestedMediaElements } from '../../media/utils/media-common';
|
|
26
|
-
import { transformSliceToRemoveColumnsWidths, transformSliceRemoveCellBackgroundColor } from '../../table/commands/misc';
|
|
27
20
|
import { upgradeTextToLists, splitParagraphs } from '../../list/transforms';
|
|
28
21
|
import { md } from '../md';
|
|
29
|
-
import { getPluginState as getTablePluginState } from '../../table/pm-plugins/plugin-factory';
|
|
30
22
|
import { transformUnsupportedBlockCardToInline } from '../../card/utils';
|
|
31
23
|
import { transformSliceToDecisionList } from '../../tasks-and-decisions/utils';
|
|
32
24
|
import { containsAnyAnnotations, stripNonExistingAnnotations } from '../../annotation/utils';
|
|
33
25
|
import { pluginKey as betterTypePluginKey } from '../../base/pm-plugins/better-type-history';
|
|
34
26
|
import { clipboardTextSerializer } from './clipboard-text-serializer';
|
|
35
27
|
import { htmlHasIncompleteTable, tryRebuildCompleteTableHtml, isPastedFromTinyMCEConfluence } from '../util/tinyMCE';
|
|
28
|
+
import { handlePaste as handlePasteTable } from '@atlaskit/editor-tables/utils';
|
|
36
29
|
export const stateKey = new PluginKey('pastePlugin');
|
|
37
30
|
export { md } from '../md';
|
|
38
|
-
|
|
39
|
-
function isHeaderRowRequired(state) {
|
|
40
|
-
const tableState = getTablePluginState(state);
|
|
41
|
-
return tableState && tableState.pluginConfig.isHeaderRowRequired;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
function isAllowResizingEnabled(state) {
|
|
45
|
-
const tableState = getTablePluginState(state);
|
|
46
|
-
return tableState && tableState.pluginConfig.allowColumnResizing;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
function isBackgroundCellAllowed(state) {
|
|
50
|
-
const tableState = getTablePluginState(state);
|
|
51
|
-
return tableState && tableState.pluginConfig.allowBackgroundColor;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
31
|
export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinkification, cardOptions, sanitizePrivateContent, providerFactory) {
|
|
55
32
|
const atlassianMarkDownParser = new MarkdownTransformer(schema, md);
|
|
56
33
|
|
|
@@ -90,6 +67,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
90
67
|
}
|
|
91
68
|
|
|
92
69
|
let mostRecentPasteEvent;
|
|
70
|
+
let pastedFromBitBucket = false;
|
|
93
71
|
return new SafePlugin({
|
|
94
72
|
key: stateKey,
|
|
95
73
|
props: {
|
|
@@ -103,7 +81,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
103
81
|
},
|
|
104
82
|
|
|
105
83
|
handlePaste(view, rawEvent, slice) {
|
|
106
|
-
var _analyticsPlugin$perf, _analyticsPlugin$perf2;
|
|
84
|
+
var _analyticsPlugin$perf, _analyticsPlugin$perf2, _schema$nodes, _schema$nodes2, _schema$nodes3;
|
|
107
85
|
|
|
108
86
|
const event = rawEvent;
|
|
109
87
|
|
|
@@ -218,7 +196,20 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
218
196
|
}
|
|
219
197
|
}
|
|
220
198
|
|
|
221
|
-
slice = transformUnsupportedBlockCardToInline(slice, state);
|
|
199
|
+
slice = transformUnsupportedBlockCardToInline(slice, state); // Handles edge case so that when copying text from the top level of the document
|
|
200
|
+
// it can be pasted into nodes like panels/actions/decisions without removing them.
|
|
201
|
+
// Overriding openStart to be 1 when only pasting a paragraph makes the preferred
|
|
202
|
+
// depth favour the text, rather than the paragraph node.
|
|
203
|
+
// https://github.com/ProseMirror/prosemirror-transform/blob/master/src/replace.js#:~:text=Transform.prototype.-,replaceRange,-%3D%20function(from%2C%20to
|
|
204
|
+
|
|
205
|
+
const selectionDepth = state.selection.$head.depth;
|
|
206
|
+
const selectionParentNode = state.selection.$head.node(selectionDepth - 1);
|
|
207
|
+
const selectionParentType = selectionParentNode === null || selectionParentNode === void 0 ? void 0 : selectionParentNode.type;
|
|
208
|
+
const edgeCaseNodeTypes = [(_schema$nodes = schema.nodes) === null || _schema$nodes === void 0 ? void 0 : _schema$nodes.panel, (_schema$nodes2 = schema.nodes) === null || _schema$nodes2 === void 0 ? void 0 : _schema$nodes2.taskList, (_schema$nodes3 = schema.nodes) === null || _schema$nodes3 === void 0 ? void 0 : _schema$nodes3.decisionList];
|
|
209
|
+
|
|
210
|
+
if (slice.openStart === 0 && selectionParentNode && edgeCaseNodeTypes.includes(selectionParentType)) {
|
|
211
|
+
slice.openStart = 1;
|
|
212
|
+
}
|
|
222
213
|
|
|
223
214
|
if (handlePasteIntoTaskAndDecisionWithAnalytics(view, event, slice, isPlainText ? PasteTypes.plain : PasteTypes.richText)(state, dispatch)) {
|
|
224
215
|
return true;
|
|
@@ -262,23 +253,6 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
262
253
|
type: PasteTypes.richText
|
|
263
254
|
});
|
|
264
255
|
return true;
|
|
265
|
-
} // if we're pasting to outside a table or outside a table
|
|
266
|
-
// header, ensure that we apply any table headers to the first
|
|
267
|
-
// row of content we see, if required
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
if (!insideTable(state) && isHeaderRowRequired(state)) {
|
|
271
|
-
slice = transformSliceToAddTableHeaders(slice, state.schema);
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
if (!isAllowResizingEnabled(state)) {
|
|
275
|
-
slice = transformSliceToRemoveColumnsWidths(slice, state.schema);
|
|
276
|
-
} // If we don't allow background on cells, we need to remove it
|
|
277
|
-
// from the paste slice
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
if (!isBackgroundCellAllowed(state)) {
|
|
281
|
-
slice = transformSliceRemoveCellBackgroundColor(slice, state.schema);
|
|
282
256
|
} // get editor-tables to handle pasting tables if it can
|
|
283
257
|
// otherwise, just the replace the selection with the content
|
|
284
258
|
|
|
@@ -319,27 +293,16 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
319
293
|
if (sanitizePrivateContent) {
|
|
320
294
|
slice = handleMention(slice, schema);
|
|
321
295
|
}
|
|
322
|
-
|
|
323
|
-
slice = transformSliceToFixHardBreakProblemOnCopyFromCell(slice, schema); // We do this separately so it also applies to drag/drop events
|
|
324
|
-
// This needs to go before `transformSliceToRemoveOpenExpand`
|
|
325
|
-
|
|
326
|
-
slice = transformSliceToRemoveOpenLayoutNodes(slice, schema); // If a partial paste of expand, paste only the content
|
|
327
|
-
// This needs to go before `transformSliceToRemoveOpenTable`
|
|
328
|
-
|
|
329
|
-
slice = transformSliceToRemoveOpenExpand(slice, schema);
|
|
330
|
-
/** If a partial paste of table, paste only table's content */
|
|
331
|
-
|
|
332
|
-
slice = transformSliceToRemoveOpenTable(slice, schema);
|
|
333
|
-
/** If a partial paste of bodied extension, paste only text */
|
|
334
|
-
|
|
335
|
-
slice = transformSliceToRemoveOpenBodiedExtension(slice, schema);
|
|
336
296
|
/* Bitbucket copies diffs as multiple adjacent code blocks
|
|
337
297
|
* so we merge ALL adjacent code blocks to support paste here */
|
|
338
298
|
|
|
339
|
-
|
|
299
|
+
|
|
300
|
+
if (pastedFromBitBucket) {
|
|
301
|
+
slice = transformSliceToJoinAdjacentCodeBlocks(slice);
|
|
302
|
+
}
|
|
303
|
+
|
|
340
304
|
slice = transformSingleLineCodeBlockToCodeMark(slice, schema);
|
|
341
305
|
slice = transformSliceToCorrectMediaWrapper(slice, schema);
|
|
342
|
-
slice = transformSliceToCorrectEmptyTableCells(slice, schema);
|
|
343
306
|
slice = transformSliceToDecisionList(slice, schema); // splitting linebreaks into paragraphs must happen before upgrading text to lists
|
|
344
307
|
|
|
345
308
|
slice = splitParagraphs(slice, schema);
|
|
@@ -380,8 +343,10 @@ export function createPlugin(schema, dispatchAnalyticsEvent, plainTextPasteLinki
|
|
|
380
343
|
|
|
381
344
|
if (htmlHasInvalidLinkTags(html)) {
|
|
382
345
|
html = removeDuplicateInvalidLinks(html);
|
|
383
|
-
}
|
|
346
|
+
} // Fix for ED-13568: Code blocks being copied/pasted when next to each other get merged
|
|
347
|
+
|
|
384
348
|
|
|
349
|
+
pastedFromBitBucket = html.indexOf('data-qa="code-line"') >= 0;
|
|
385
350
|
mostRecentPasteEvent = null;
|
|
386
351
|
return html;
|
|
387
352
|
}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
/** @jsx jsx */
|
|
1
2
|
import React from 'react';
|
|
3
|
+
import { css, jsx } from '@emotion/react';
|
|
2
4
|
import { injectIntl } from 'react-intl-next';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
5
|
import { Status } from '@atlaskit/status/element';
|
|
5
6
|
import { messages } from './messages';
|
|
6
|
-
|
|
7
|
-
opacity:
|
|
7
|
+
const styledStatus = css`
|
|
8
|
+
opacity: 1;
|
|
9
|
+
`;
|
|
10
|
+
const styledStatusPlaceholder = css`
|
|
11
|
+
opacity: 0.5;
|
|
8
12
|
`;
|
|
9
13
|
|
|
10
14
|
const StatusContainerView = props => {
|
|
@@ -26,9 +30,9 @@ const StatusContainerView = props => {
|
|
|
26
30
|
|
|
27
31
|
};
|
|
28
32
|
|
|
29
|
-
return
|
|
30
|
-
|
|
31
|
-
},
|
|
33
|
+
return jsx("span", {
|
|
34
|
+
css: text ? styledStatus : styledStatusPlaceholder
|
|
35
|
+
}, jsx(Status, {
|
|
32
36
|
text: statusText,
|
|
33
37
|
color: color,
|
|
34
38
|
localId: localId,
|
|
@@ -48,7 +52,7 @@ export const StatusNodeView = props => {
|
|
|
48
52
|
localId,
|
|
49
53
|
style
|
|
50
54
|
} = props.node.attrs;
|
|
51
|
-
return
|
|
55
|
+
return jsx(IntlStatusContainerView, {
|
|
52
56
|
view: view,
|
|
53
57
|
text: text,
|
|
54
58
|
color: color,
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
|
|
3
|
+
/** @jsx jsx */
|
|
2
4
|
import React from 'react';
|
|
3
|
-
import
|
|
5
|
+
import { css, jsx } from '@emotion/react';
|
|
4
6
|
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
5
7
|
import { Popup } from '@atlaskit/editor-common/ui';
|
|
6
8
|
import { akEditorFloatingDialogZIndex } from '@atlaskit/editor-shared-styles';
|
|
@@ -20,7 +22,7 @@ export let InputMethod;
|
|
|
20
22
|
InputMethod["enterKey"] = "enterKey";
|
|
21
23
|
})(InputMethod || (InputMethod = {}));
|
|
22
24
|
|
|
23
|
-
const
|
|
25
|
+
const pickerContainer = css`
|
|
24
26
|
background: ${N0};
|
|
25
27
|
padding: ${gridSize()}px 0;
|
|
26
28
|
border-radius: ${borderRadius()}px;
|
|
@@ -205,16 +207,17 @@ export class StatusPickerWithoutAnalytcs extends React.Component {
|
|
|
205
207
|
color,
|
|
206
208
|
text
|
|
207
209
|
} = this.state;
|
|
208
|
-
return target &&
|
|
210
|
+
return target && jsx(PopupWithListeners, {
|
|
209
211
|
target: target,
|
|
210
212
|
offset: [0, 8],
|
|
211
213
|
handleClickOutside: this.handleClickOutside,
|
|
212
214
|
handleEscapeKeydown: this.handleEscapeKeydown,
|
|
213
215
|
zIndex: akEditorFloatingDialogZIndex,
|
|
214
216
|
fitHeight: 40
|
|
215
|
-
},
|
|
217
|
+
}, jsx("div", {
|
|
218
|
+
css: pickerContainer,
|
|
216
219
|
onClick: this.handlePopupClick
|
|
217
|
-
},
|
|
220
|
+
}, jsx(AkStatusPicker, {
|
|
218
221
|
autoFocus: isNew,
|
|
219
222
|
selectedColor: color,
|
|
220
223
|
text: text,
|
|
@@ -4,7 +4,6 @@ import { TableMap } from '@atlaskit/editor-tables/table-map';
|
|
|
4
4
|
import { addColumnAt as addColumnAtPMUtils, addRowAt, createTable as createTableNode, findTable, selectedRect } from '@atlaskit/editor-tables/utils';
|
|
5
5
|
import { safeInsert } from 'prosemirror-utils';
|
|
6
6
|
import { AddColumnStep } from '@atlaskit/adf-schema/steps';
|
|
7
|
-
import { getPluginState } from '../pm-plugins/plugin-factory';
|
|
8
7
|
import { checkIfHeaderRowEnabled, copyPreviousRow } from '../utils';
|
|
9
8
|
import { getAllowAddColumnCustomStep } from '../utils/get-allow-add-column-custom-step';
|
|
10
9
|
import { rescaleColumns } from '../transforms/column-width';
|
|
@@ -128,10 +127,6 @@ export const insertRow = (row, moveCursorToTheNewRow) => (state, dispatch) => {
|
|
|
128
127
|
return true;
|
|
129
128
|
};
|
|
130
129
|
export const createTable = () => (state, dispatch) => {
|
|
131
|
-
if (!getPluginState(state)) {
|
|
132
|
-
return false;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
130
|
const table = createTableNode({
|
|
136
131
|
schema: state.schema
|
|
137
132
|
});
|
|
@@ -9,12 +9,18 @@ import { createTableView } from '../nodeviews/table';
|
|
|
9
9
|
import { pluginKey as decorationsPluginKey } from '../pm-plugins/decorations/plugin';
|
|
10
10
|
import { fixTables, replaceSelectedTable } from '../transforms';
|
|
11
11
|
import { TableCssClassName as ClassName } from '../types';
|
|
12
|
-
import { findControlsHoverDecoration, updateResizeHandles } from '../utils';
|
|
12
|
+
import { findControlsHoverDecoration, transformSliceToCorrectEmptyTableCells, transformSliceToFixHardBreakProblemOnCopyFromCell, transformSliceToRemoveOpenTable, updateResizeHandles } from '../utils';
|
|
13
13
|
import { ACTION, ACTION_SUBJECT, EVENT_TYPE, INPUT_METHOD } from '../../analytics';
|
|
14
14
|
import { defaultTableSelection } from './default-table-selection';
|
|
15
15
|
import { createPluginState, getPluginState } from './plugin-factory';
|
|
16
16
|
import { pluginKey } from './plugin-key';
|
|
17
17
|
import TableCellNodeView from '../nodeviews/tableCell';
|
|
18
|
+
import { transformSliceRemoveCellBackgroundColor, transformSliceToRemoveColumnsWidths, transformSliceToAddTableHeaders } from '../commands/misc';
|
|
19
|
+
import { transformSliceToRemoveOpenLayoutNodes } from '../../layout/utils';
|
|
20
|
+
import { transformSliceToRemoveOpenExpand } from '../../expand/utils';
|
|
21
|
+
import { transformSliceToRemoveOpenBodiedExtension } from '../../extension/actions';
|
|
22
|
+
import { insideTable } from '../../../utils';
|
|
23
|
+
import { isHeaderRowRequired } from '../utils/paste';
|
|
18
24
|
let isBreakoutEnabled;
|
|
19
25
|
let isDynamicTextSizingEnabled;
|
|
20
26
|
let isFullWidthModeEnabled;
|
|
@@ -51,6 +57,18 @@ export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI
|
|
|
51
57
|
} : {}; // Used to prevent invalid table cell spans being reported more than once per editor/document
|
|
52
58
|
|
|
53
59
|
const invalidTableIds = [];
|
|
60
|
+
let editorViewRef = null;
|
|
61
|
+
|
|
62
|
+
const getCurrentEditorState = () => {
|
|
63
|
+
const editorView = editorViewRef;
|
|
64
|
+
|
|
65
|
+
if (!editorView) {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return editorView.state;
|
|
70
|
+
};
|
|
71
|
+
|
|
54
72
|
return new SafePlugin({
|
|
55
73
|
state: state,
|
|
56
74
|
key: pluginKey,
|
|
@@ -88,6 +106,7 @@ export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI
|
|
|
88
106
|
},
|
|
89
107
|
view: editorView => {
|
|
90
108
|
const domAtPos = editorView.domAtPos.bind(editorView);
|
|
109
|
+
editorViewRef = editorView;
|
|
91
110
|
return {
|
|
92
111
|
update: view => {
|
|
93
112
|
const {
|
|
@@ -142,6 +161,51 @@ export const createPlugin = (dispatchAnalyticsEvent, dispatch, portalProviderAPI
|
|
|
142
161
|
};
|
|
143
162
|
},
|
|
144
163
|
props: {
|
|
164
|
+
transformPasted(slice) {
|
|
165
|
+
const editorState = getCurrentEditorState();
|
|
166
|
+
|
|
167
|
+
if (!editorState) {
|
|
168
|
+
return slice;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
const {
|
|
172
|
+
schema
|
|
173
|
+
} = editorState; // if we're pasting to outside a table or outside a table
|
|
174
|
+
// header, ensure that we apply any table headers to the first
|
|
175
|
+
// row of content we see, if required
|
|
176
|
+
|
|
177
|
+
if (!insideTable(editorState) && isHeaderRowRequired(editorState)) {
|
|
178
|
+
slice = transformSliceToAddTableHeaders(slice, schema);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
slice = transformSliceToFixHardBreakProblemOnCopyFromCell(slice, schema); // We do this separately, so it also applies to drag/drop events
|
|
182
|
+
// This needs to go before `transformSliceToRemoveOpenExpand`
|
|
183
|
+
|
|
184
|
+
slice = transformSliceToRemoveOpenLayoutNodes(slice, schema); // If a partial paste of expand, paste only the content
|
|
185
|
+
// This needs to go before `transformSliceToRemoveOpenTable`
|
|
186
|
+
|
|
187
|
+
slice = transformSliceToRemoveOpenExpand(slice, schema);
|
|
188
|
+
/** If a partial paste of table, paste only table's content */
|
|
189
|
+
|
|
190
|
+
slice = transformSliceToRemoveOpenTable(slice, schema);
|
|
191
|
+
/** If a partial paste of bodied extension, paste only text */
|
|
192
|
+
|
|
193
|
+
slice = transformSliceToRemoveOpenBodiedExtension(slice, schema);
|
|
194
|
+
slice = transformSliceToCorrectEmptyTableCells(slice, schema);
|
|
195
|
+
|
|
196
|
+
if (!pluginConfig.allowColumnResizing) {
|
|
197
|
+
slice = transformSliceToRemoveColumnsWidths(slice, schema);
|
|
198
|
+
} // If we don't allow background on cells, we need to remove it
|
|
199
|
+
// from the paste slice
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
if (!pluginConfig.allowBackgroundColor) {
|
|
203
|
+
slice = transformSliceRemoveCellBackgroundColor(slice, schema);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
return slice;
|
|
207
|
+
},
|
|
208
|
+
|
|
145
209
|
handleClick: ({
|
|
146
210
|
state,
|
|
147
211
|
dispatch
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
/** @jsx jsx */
|
|
4
|
+
import { Component } from 'react';
|
|
5
|
+
import { jsx } from '@emotion/react';
|
|
3
6
|
import { splitCell } from '@atlaskit/editor-tables/utils';
|
|
4
7
|
import { defineMessages, injectIntl } from 'react-intl-next';
|
|
5
8
|
import { addColumnAfter, addRowAfter, backspace, tooltip } from '../../../../keymaps';
|
|
6
9
|
import ColorPalette from '../../../../ui/ColorPalette';
|
|
7
10
|
import cellBackgroundColorPalette from '../../../../ui/ColorPalette/Palettes/cellBackgroundColorPalette';
|
|
8
11
|
import DropdownMenu from '../../../../ui/DropdownMenu';
|
|
9
|
-
import {
|
|
12
|
+
import { shortcutStyle, cellColourPreviewStyles } from '../../../../ui/styles';
|
|
10
13
|
import { closestElement } from '../../../../utils/dom';
|
|
11
14
|
import { INPUT_METHOD } from '../../../analytics';
|
|
12
15
|
import { clearHoverSelection, hoverColumns, hoverMergedCells, hoverRows, toggleContextualMenu } from '../../commands';
|
|
@@ -121,13 +124,13 @@ export class ContextualMenu extends Component {
|
|
|
121
124
|
value: {
|
|
122
125
|
name: 'background'
|
|
123
126
|
},
|
|
124
|
-
elemAfter:
|
|
125
|
-
|
|
127
|
+
elemAfter: jsx("div", null, jsx("div", {
|
|
128
|
+
css: cellColourPreviewStyles(background),
|
|
126
129
|
className: ClassName.CONTEXTUAL_MENU_ICON
|
|
127
|
-
}), isSubmenuOpen &&
|
|
130
|
+
}), isSubmenuOpen && jsx("div", {
|
|
128
131
|
className: ClassName.CONTEXTUAL_SUBMENU,
|
|
129
132
|
ref: this.handleSubMenuRef
|
|
130
|
-
},
|
|
133
|
+
}, jsx(ColorPalette, {
|
|
131
134
|
cols: 7,
|
|
132
135
|
palette: cellBackgroundColorPalette,
|
|
133
136
|
onClick: this.setColor,
|
|
@@ -141,14 +144,18 @@ export class ContextualMenu extends Component {
|
|
|
141
144
|
value: {
|
|
142
145
|
name: 'insert_column'
|
|
143
146
|
},
|
|
144
|
-
elemAfter:
|
|
147
|
+
elemAfter: jsx("div", {
|
|
148
|
+
css: shortcutStyle
|
|
149
|
+
}, tooltip(addColumnAfter))
|
|
145
150
|
});
|
|
146
151
|
items.push({
|
|
147
152
|
content: formatMessage(tableMessages.insertRow),
|
|
148
153
|
value: {
|
|
149
154
|
name: 'insert_row'
|
|
150
155
|
},
|
|
151
|
-
elemAfter:
|
|
156
|
+
elemAfter: jsx("div", {
|
|
157
|
+
css: shortcutStyle
|
|
158
|
+
}, tooltip(addRowAfter))
|
|
152
159
|
});
|
|
153
160
|
const {
|
|
154
161
|
top,
|
|
@@ -235,7 +242,9 @@ export class ContextualMenu extends Component {
|
|
|
235
242
|
value: {
|
|
236
243
|
name: 'clear'
|
|
237
244
|
},
|
|
238
|
-
elemAfter:
|
|
245
|
+
elemAfter: jsx("div", {
|
|
246
|
+
css: shortcutStyle
|
|
247
|
+
}, tooltip(backspace))
|
|
239
248
|
});
|
|
240
249
|
return items.length ? [{
|
|
241
250
|
items
|
|
@@ -441,10 +450,10 @@ export class ContextualMenu extends Component {
|
|
|
441
450
|
return null;
|
|
442
451
|
}
|
|
443
452
|
|
|
444
|
-
return
|
|
453
|
+
return jsx("div", {
|
|
445
454
|
"data-testid": "table-cell-contextual-menu",
|
|
446
455
|
onMouseLeave: this.closeSubmenu
|
|
447
|
-
},
|
|
456
|
+
}, jsx(DropdownMenu, {
|
|
448
457
|
mountTo: mountPoint,
|
|
449
458
|
items: items,
|
|
450
459
|
isOpen: isOpen,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { css } from '@emotion/react';
|
|
2
|
-
import { css as deprecatedCss } from 'styled-components';
|
|
3
2
|
import { tableMarginTop, tableSharedStyle } from '@atlaskit/editor-common/styles';
|
|
4
3
|
import { fontSize } from '@atlaskit/theme/constants';
|
|
5
4
|
import { N40A, B300, N300, N20A, N0, R500 } from '@atlaskit/theme/colors';
|
|
@@ -89,9 +88,9 @@ export const tableStyles = props => {
|
|
|
89
88
|
${insertRowButtonWrapper}
|
|
90
89
|
}
|
|
91
90
|
|
|
92
|
-
/* Delete button*/
|
|
91
|
+
/* Delete button */
|
|
93
92
|
${DeleteButton}
|
|
94
|
-
/* Ends Delete button*/
|
|
93
|
+
/* Ends Delete button */
|
|
95
94
|
|
|
96
95
|
/* sticky styles */
|
|
97
96
|
.${ClassName.TABLE_STICKY} .${ClassName.NUMBERED_COLUMN} .${ClassName.NUMBERED_COLUMN_BUTTON}:first-child {
|
|
@@ -593,25 +592,10 @@ export const tableFullPageEditorStyles = css`
|
|
|
593
592
|
width: 100%;
|
|
594
593
|
}
|
|
595
594
|
`;
|
|
596
|
-
export const deprecatedTableFullPageEditorStyles = deprecatedCss`
|
|
597
|
-
.ProseMirror .${ClassName.TABLE_NODE_WRAPPER} > table {
|
|
598
|
-
margin-left: 0;
|
|
599
|
-
margin-right: 0;
|
|
600
|
-
width: 100%;
|
|
601
|
-
}
|
|
602
|
-
`;
|
|
603
595
|
export const tableCommentEditorStyles = css`
|
|
604
596
|
.ProseMirror .${ClassName.TABLE_NODE_WRAPPER} > table {
|
|
605
597
|
margin-left: 0;
|
|
606
598
|
margin-right: 0;
|
|
607
599
|
${scrollbarStyles};
|
|
608
600
|
}
|
|
609
|
-
`; // TODO remove this after migrated off styled-component
|
|
610
|
-
|
|
611
|
-
export const deprecatedTableCommentEditorStyles = deprecatedCss`
|
|
612
|
-
.ProseMirror .${ClassName.TABLE_NODE_WRAPPER} > table {
|
|
613
|
-
margin-left: 0;
|
|
614
|
-
margin-right: 0;
|
|
615
|
-
${scrollbarStyles};
|
|
616
|
-
}
|
|
617
601
|
`;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Fragment, Slice } from 'prosemirror-model';
|
|
2
2
|
import { flatten } from 'prosemirror-utils';
|
|
3
|
-
import { flatmap, mapSlice } from '../../../utils/slice';
|
|
3
|
+
import { flatmap, mapSlice } from '../../../utils/slice';
|
|
4
|
+
import { getPluginState } from '../pm-plugins/plugin-factory'; // lifts up the content of each cell, returning an array of nodes
|
|
4
5
|
|
|
5
6
|
export const unwrapContentFromTable = maybeTable => {
|
|
6
7
|
const {
|
|
@@ -44,7 +45,7 @@ export const transformSliceToFixHardBreakProblemOnCopyFromCell = (slice, schema)
|
|
|
44
45
|
hardBreak
|
|
45
46
|
} = schema.nodes;
|
|
46
47
|
const emptyParagraphNode = paragraph.createAndFill();
|
|
47
|
-
const hardBreakNode = hardBreak.createAndFill();
|
|
48
|
+
const hardBreakNode = hardBreak === null || hardBreak === void 0 ? void 0 : hardBreak.createAndFill();
|
|
48
49
|
const paragraphNodeSize = emptyParagraphNode ? emptyParagraphNode.nodeSize : 0;
|
|
49
50
|
const hardBreakNodeSize = hardBreakNode ? hardBreakNode.nodeSize : 0;
|
|
50
51
|
const paragraphWithHardBreakSize = paragraphNodeSize + hardBreakNodeSize;
|
|
@@ -95,4 +96,8 @@ export const transformSliceToCorrectEmptyTableCells = (slice, schema) => {
|
|
|
95
96
|
|
|
96
97
|
return node;
|
|
97
98
|
});
|
|
98
|
-
};
|
|
99
|
+
};
|
|
100
|
+
export function isHeaderRowRequired(state) {
|
|
101
|
+
const tableState = getPluginState(state);
|
|
102
|
+
return tableState && tableState.pluginConfig.isHeaderRowRequired;
|
|
103
|
+
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { autoJoin } from 'prosemirror-commands';
|
|
2
1
|
import { NodeRange } from 'prosemirror-model';
|
|
3
2
|
import { TextSelection } from 'prosemirror-state';
|
|
4
3
|
import { findParentNodeOfType, hasParentNodeOfType, replaceParentNodeOfType, safeInsert, setTextSelection } from 'prosemirror-utils';
|
|
@@ -7,6 +6,7 @@ import { uuid } from '@atlaskit/adf-schema';
|
|
|
7
6
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, addAnalytics, EVENT_TYPE, INPUT_METHOD, USER_CONTEXT } from '../analytics';
|
|
8
7
|
import { GapCursorSelection } from '../selection/gap-cursor-selection';
|
|
9
8
|
import { stateKey as taskDecisionStateKey } from './pm-plugins/plugin-key';
|
|
9
|
+
import { autoJoinTr } from '../../utils/prosemirror/autojoin';
|
|
10
10
|
|
|
11
11
|
const getContextData = (contextProvider = {}) => {
|
|
12
12
|
const {
|
|
@@ -72,10 +72,16 @@ export const getListTypes = (listType, schema) => {
|
|
|
72
72
|
item: decisionItem
|
|
73
73
|
};
|
|
74
74
|
};
|
|
75
|
+
/*
|
|
76
|
+
* @deprecated - [ED-13182] insertTaskDecision has been depreciated in favor of insertTaskDecisionCommand
|
|
77
|
+
*/
|
|
78
|
+
|
|
75
79
|
export const insertTaskDecision = (view, listType, inputMethod = INPUT_METHOD.TOOLBAR, listLocalId, itemLocalId) => {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
80
|
+
// eslint-disable-next-line no-console
|
|
81
|
+
console.warn('insertTaskDecision has been depreciated in favor of insertTaskDecisionCommand');
|
|
82
|
+
return insertTaskDecisionCommand(listType, inputMethod, undefined, listLocalId, itemLocalId);
|
|
83
|
+
};
|
|
84
|
+
export const insertTaskDecisionAction = (state, listType, inputMethod = INPUT_METHOD.TOOLBAR, addItem, listLocalId, itemLocalId) => {
|
|
79
85
|
const {
|
|
80
86
|
schema
|
|
81
87
|
} = state;
|
|
@@ -107,18 +113,24 @@ export const insertTaskDecision = (view, listType, inputMethod = INPUT_METHOD.TO
|
|
|
107
113
|
}]).setSelection(new TextSelection(tr.doc.resolve(newItemParagraphPos)));
|
|
108
114
|
};
|
|
109
115
|
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
if (tr) {
|
|
113
|
-
if (dispatch) {
|
|
114
|
-
dispatch(tr);
|
|
115
|
-
}
|
|
116
|
+
const addAndCreateListFn = addItem !== null && addItem !== void 0 ? addItem : addAndCreateList;
|
|
117
|
+
const tr = insertTaskDecisionWithAnalytics(state, listType, inputMethod, addAndCreateListFn, addToList, listLocalId, itemLocalId);
|
|
116
118
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
+
if (!tr) {
|
|
120
|
+
return state.tr;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
autoJoinTr(tr, ['taskList', 'decisionList']);
|
|
124
|
+
return tr;
|
|
125
|
+
};
|
|
126
|
+
export const insertTaskDecisionCommand = (listType, inputMethod = INPUT_METHOD.TOOLBAR, addItem, listLocalId, itemLocalId) => (state, dispatch) => {
|
|
127
|
+
const tr = insertTaskDecisionAction(state, listType, inputMethod, addItem, listLocalId, itemLocalId);
|
|
128
|
+
|
|
129
|
+
if (dispatch) {
|
|
130
|
+
dispatch(tr);
|
|
131
|
+
}
|
|
119
132
|
|
|
120
|
-
|
|
121
|
-
}, ['taskList', 'decisionList']);
|
|
133
|
+
return true;
|
|
122
134
|
};
|
|
123
135
|
export const insertTaskDecisionWithAnalytics = (state, listType, inputMethod, addAndCreateList, addToList, listLocalId, itemLocalId) => {
|
|
124
136
|
const {
|
|
@@ -1,35 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
1
|
+
/** @jsx jsx */
|
|
2
|
+
import { css, jsx } from '@emotion/react';
|
|
3
3
|
import { decisionItem, decisionList, taskItem, taskList } from '@atlaskit/adf-schema';
|
|
4
4
|
import { INPUT_METHOD } from '../analytics';
|
|
5
5
|
import { messages as insertBlockMessages } from '../insert-block/ui/ToolbarInsertBlock/messages';
|
|
6
6
|
import { IconAction, IconDecision } from '../quick-insert/assets';
|
|
7
|
-
import {
|
|
7
|
+
import { insertTaskDecisionAction, getListTypes } from './commands';
|
|
8
8
|
import inputRulePlugin from './pm-plugins/input-rules';
|
|
9
9
|
import keymap from './pm-plugins/keymaps';
|
|
10
10
|
import { createPlugin } from './pm-plugins/main';
|
|
11
11
|
import ToolbarDecision from './ui/ToolbarDecision';
|
|
12
12
|
import ToolbarTask from './ui/ToolbarTask';
|
|
13
|
-
const
|
|
13
|
+
const taskDecisionToolbarGroup = css`
|
|
14
14
|
display: flex;
|
|
15
15
|
`;
|
|
16
16
|
|
|
17
|
-
const
|
|
17
|
+
const addItem = (insert, listType, schema) => ({
|
|
18
|
+
listLocalId,
|
|
19
|
+
itemLocalId
|
|
20
|
+
}) => {
|
|
18
21
|
const {
|
|
19
22
|
list,
|
|
20
23
|
item
|
|
21
|
-
} = getListTypes(listType,
|
|
22
|
-
|
|
23
|
-
const addItem = ({
|
|
24
|
-
listLocalId,
|
|
25
|
-
itemLocalId
|
|
26
|
-
}) => insert(list.createChecked({
|
|
24
|
+
} = getListTypes(listType, schema);
|
|
25
|
+
return insert(list.createChecked({
|
|
27
26
|
localId: listLocalId
|
|
28
27
|
}, item.createChecked({
|
|
29
28
|
localId: itemLocalId
|
|
30
29
|
})));
|
|
31
|
-
|
|
32
|
-
return insertTaskDecisionWithAnalytics(state, listType, INPUT_METHOD.QUICK_INSERT, addItem);
|
|
33
30
|
};
|
|
34
31
|
|
|
35
32
|
const tasksAndDecisionsPlugin = ({
|
|
@@ -85,11 +82,13 @@ const tasksAndDecisionsPlugin = ({
|
|
|
85
82
|
editorView,
|
|
86
83
|
disabled
|
|
87
84
|
}) {
|
|
88
|
-
return
|
|
85
|
+
return jsx("div", {
|
|
86
|
+
css: taskDecisionToolbarGroup
|
|
87
|
+
}, jsx(ToolbarDecision, {
|
|
89
88
|
editorView: editorView,
|
|
90
89
|
isDisabled: disabled,
|
|
91
90
|
isReducedSpacing: true
|
|
92
|
-
}),
|
|
91
|
+
}), jsx(ToolbarTask, {
|
|
93
92
|
editorView: editorView,
|
|
94
93
|
isDisabled: disabled,
|
|
95
94
|
isReducedSpacing: true
|
|
@@ -106,10 +105,10 @@ const tasksAndDecisionsPlugin = ({
|
|
|
106
105
|
priority: 100,
|
|
107
106
|
keywords: ['checkbox', 'task', 'todo'],
|
|
108
107
|
keyshortcut: '[]',
|
|
109
|
-
icon: () =>
|
|
108
|
+
icon: () => jsx(IconAction, null),
|
|
110
109
|
|
|
111
110
|
action(insert, state) {
|
|
112
|
-
return
|
|
111
|
+
return insertTaskDecisionAction(state, 'taskList', INPUT_METHOD.QUICK_INSERT, addItem(insert, 'taskList', state.schema));
|
|
113
112
|
}
|
|
114
113
|
|
|
115
114
|
}, {
|
|
@@ -118,10 +117,10 @@ const tasksAndDecisionsPlugin = ({
|
|
|
118
117
|
description: formatMessage(insertBlockMessages.decisionDescription),
|
|
119
118
|
priority: 900,
|
|
120
119
|
keyshortcut: '<>',
|
|
121
|
-
icon: () =>
|
|
120
|
+
icon: () => jsx(IconDecision, null),
|
|
122
121
|
|
|
123
122
|
action(insert, state) {
|
|
124
|
-
return
|
|
123
|
+
return insertTaskDecisionAction(state, 'decisionList', INPUT_METHOD.QUICK_INSERT, addItem(insert, 'decisionList', state.schema));
|
|
125
124
|
}
|
|
126
125
|
|
|
127
126
|
}]
|