@atlaskit/editor-core 148.0.0 → 149.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +110 -0
- package/dist/cjs/create-editor/create-plugins-list.js +6 -1
- package/dist/cjs/editor.js +1 -4
- package/dist/cjs/index.js +24 -40
- package/dist/cjs/labs/next/presets/default.js +1 -1
- package/dist/cjs/messages.js +5 -0
- package/dist/cjs/nodeviews/SelectionBasedNodeView.js +1 -2
- package/dist/cjs/plugins/analytics/plugin.js +9 -7
- package/dist/cjs/plugins/analytics/types/enums.js +5 -0
- package/dist/cjs/plugins/analytics/types/type-ahead.js +5 -0
- package/dist/cjs/plugins/block-type/messages.js +10 -0
- package/dist/cjs/plugins/card/nodeviews/embedCard.js +1 -3
- package/dist/cjs/plugins/collab-edit/participants.js +15 -0
- package/dist/cjs/plugins/collab-edit/plugin-state.js +14 -0
- package/dist/cjs/plugins/collab-edit/ui/avatars-with-plugin-state.js +6 -4
- package/dist/cjs/plugins/collab-edit/ui/avatars.js +19 -2
- package/dist/cjs/plugins/collab-edit/utils.js +42 -2
- package/dist/cjs/plugins/date/actions.js +4 -2
- package/dist/cjs/plugins/date/index.js +1 -1
- package/dist/cjs/plugins/date/pm-plugins/utils.js +6 -1
- package/dist/cjs/plugins/emoji/index.js +143 -120
- package/dist/cjs/plugins/emoji/pm-plugins/ascii-input-rules.js +0 -14
- package/dist/cjs/plugins/expand/pm-plugins/keymap.js +3 -7
- package/dist/cjs/plugins/extension/actions.js +16 -16
- package/dist/cjs/plugins/extension/pm-plugins/main.js +4 -4
- package/dist/cjs/plugins/extension/ui/Extension/ExtensionComponent.js +5 -4
- package/dist/cjs/plugins/extension/ui/Extension/index.js +2 -2
- package/dist/cjs/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/cjs/plugins/floating-toolbar/ui/ConfirmationModal.js +12 -14
- package/dist/cjs/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +35 -0
- package/dist/cjs/plugins/floating-toolbar/ui/EditorHideEmojiIcon.js +38 -0
- package/dist/cjs/plugins/floating-toolbar/ui/EmojiPickerButton.js +5 -7
- package/dist/cjs/plugins/help-dialog/ui/index.js +12 -18
- package/dist/cjs/plugins/help-dialog/ui/styles.js +2 -6
- package/dist/cjs/plugins/hyperlink/index.js +4 -10
- package/dist/cjs/plugins/insert-block/index.js +9 -8
- package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +7 -3
- package/dist/cjs/plugins/list/index.js +5 -0
- package/dist/cjs/plugins/macro/actions.js +14 -14
- package/dist/cjs/plugins/media/index.js +1 -0
- package/dist/cjs/plugins/media/nodeviews/mediaGroup.js +1 -0
- package/dist/cjs/plugins/media/pm-plugins/main.js +26 -14
- package/dist/cjs/plugins/media/styles.js +1 -1
- package/dist/cjs/plugins/media/toolbar/filePreviewItem.js +86 -0
- package/dist/cjs/plugins/media/toolbar/index.js +161 -44
- package/dist/cjs/plugins/media/toolbar/utils.js +77 -0
- package/dist/cjs/plugins/mentions/index.js +57 -602
- package/dist/cjs/plugins/mentions/pm-plugins/key.js +11 -0
- package/dist/cjs/plugins/mentions/pm-plugins/main.js +162 -0
- package/dist/cjs/plugins/mentions/pm-plugins/utils.js +12 -0
- package/dist/cjs/plugins/mentions/type-ahead/index.js +449 -0
- package/dist/cjs/plugins/mentions/ui/InviteItem/index.js +3 -1
- package/dist/cjs/plugins/mentions/ui/InviteItem/styles.js +8 -3
- package/dist/cjs/plugins/mentions/ui/ToolbarMention/index.js +3 -3
- package/dist/cjs/plugins/mentions/utils.js +24 -2
- package/dist/cjs/plugins/panel/index.js +46 -13
- package/dist/cjs/plugins/panel/nodeviews/panel.js +39 -25
- package/dist/cjs/plugins/panel/toolbar.js +94 -6
- package/dist/cjs/plugins/panel/toolbar.test.js +149 -16
- package/dist/cjs/plugins/paste/handlers.js +2 -2
- package/dist/cjs/plugins/paste/pm-plugins/analytics.js +6 -3
- package/dist/cjs/plugins/placeholder/index.js +6 -0
- package/dist/cjs/plugins/quick-insert/api.js +30 -0
- package/dist/cjs/plugins/quick-insert/assets/custom-panel.js +55 -0
- package/dist/cjs/plugins/quick-insert/assets/index.js +14 -1
- package/dist/cjs/plugins/quick-insert/index.js +10 -24
- package/dist/cjs/plugins/quick-insert/ui/ModalElementBrowser/index.js +1 -0
- package/dist/cjs/plugins/rank.js +1 -1
- package/dist/cjs/plugins/rule/index.js +1 -25
- package/dist/cjs/plugins/scroll-into-view/index.js +1 -4
- package/dist/cjs/plugins/selection/gap-cursor/actions.js +5 -6
- package/dist/cjs/plugins/selection/pm-plugins/selection-main.js +1 -3
- package/dist/cjs/plugins/status/actions.js +5 -2
- package/dist/cjs/plugins/status/plugin.js +1 -1
- package/dist/cjs/plugins/table/commands/selection.js +24 -24
- package/dist/cjs/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +8 -1
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +14 -15
- package/dist/cjs/plugins/tasks-and-decisions/nodeviews/decisionItem.js +3 -1
- package/dist/cjs/plugins/tasks-and-decisions/nodeviews/taskItem.js +3 -1
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/keymaps.js +1 -2
- package/dist/cjs/plugins/text-formatting/pm-plugins/cursor.js +1 -4
- package/dist/cjs/plugins/type-ahead/api.js +243 -0
- package/dist/cjs/plugins/type-ahead/commands/insert-type-ahead-item.js +238 -0
- package/dist/cjs/plugins/type-ahead/commands/update-list-items.js +30 -0
- package/dist/cjs/plugins/type-ahead/commands/update-query.js +16 -18
- package/dist/cjs/plugins/type-ahead/commands/update-selected-index.js +36 -0
- package/dist/cjs/plugins/type-ahead/constants.js +25 -0
- package/dist/cjs/plugins/type-ahead/index.js +183 -52
- package/dist/cjs/plugins/type-ahead/insert-utils.js +132 -0
- package/dist/cjs/plugins/type-ahead/pm-plugins/actions.js +12 -9
- package/dist/cjs/plugins/type-ahead/pm-plugins/decorations.js +238 -0
- package/dist/cjs/plugins/type-ahead/pm-plugins/input-rules.js +20 -40
- package/dist/cjs/plugins/type-ahead/pm-plugins/insert-item-plugin.js +28 -0
- package/dist/cjs/plugins/type-ahead/pm-plugins/{plugin-key.js → key.js} +0 -0
- package/dist/cjs/plugins/type-ahead/pm-plugins/main.js +79 -424
- package/dist/cjs/plugins/type-ahead/pm-plugins/reducer.js +188 -0
- package/dist/cjs/plugins/type-ahead/pm-plugins/utils.js +26 -0
- package/dist/cjs/plugins/type-ahead/stats-modifier.js +49 -0
- package/dist/cjs/plugins/type-ahead/transforms/close-type-ahead.js +18 -0
- package/dist/cjs/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +51 -0
- package/dist/cjs/plugins/type-ahead/transforms/set-selection-before-query.js +24 -0
- package/dist/cjs/plugins/type-ahead/ui/DynamicHeightListItem.js +77 -0
- package/dist/cjs/plugins/type-ahead/ui/InputQuery.js +325 -0
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadList.js +195 -0
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadListItem.js +141 -0
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadPopup.js +141 -0
- package/dist/cjs/plugins/type-ahead/ui/WrapperTypeAhead.js +151 -0
- package/dist/cjs/plugins/type-ahead/ui/hooks/use-dynamic-list-height-calculation.js +118 -0
- package/dist/cjs/plugins/type-ahead/ui/hooks/use-item-insert.js +132 -0
- package/dist/cjs/plugins/type-ahead/ui/hooks/use-load-items.js +61 -0
- package/dist/cjs/plugins/type-ahead/ui/hooks/use-on-force-select.js +50 -0
- package/dist/cjs/plugins/type-ahead/ui/hooks/use-resize-observer.js +70 -0
- package/dist/cjs/plugins/type-ahead/utils.js +127 -0
- package/dist/cjs/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +33 -2
- package/dist/cjs/plugins/view-update-subscription/index.js +19 -14
- package/dist/cjs/plugins/view-update-subscription/subscribe/toolbarAndPickerUpdates.js +10 -3
- package/dist/cjs/plugins/view-update-subscription/subscribe/type-ahead-updates.js +46 -0
- package/dist/cjs/test-utils.js +17 -0
- package/dist/cjs/types/empty-state-handler.js +5 -0
- package/dist/cjs/ui/ConfigPanel/Fields/ColorPicker.js +4 -21
- package/dist/cjs/ui/ElementBrowser/ElementBrowser.js +4 -2
- package/dist/cjs/ui/ElementBrowser/InsertMenu.js +1 -0
- package/dist/cjs/ui/ElementBrowser/ModalElementBrowser.js +16 -23
- package/dist/cjs/ui/ElementBrowser/components/ElementList/ElementList.js +11 -4
- package/dist/cjs/ui/ElementBrowser/components/StatelessElementBrowser.js +12 -4
- package/dist/cjs/ui/PanelTextInput/index.js +1 -3
- package/dist/cjs/utils/compare.js +7 -7
- package/dist/cjs/utils/index.js +7 -8
- package/dist/cjs/utils/rich-media-utils.js +2 -2
- package/dist/cjs/utils/selection.js +6 -3
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/create-editor/create-plugins-list.js +6 -1
- package/dist/es2019/editor.js +1 -4
- package/dist/es2019/index.js +4 -6
- package/dist/es2019/labs/next/presets/default.js +2 -2
- package/dist/es2019/messages.js +5 -0
- package/dist/es2019/nodeviews/SelectionBasedNodeView.js +1 -2
- package/dist/es2019/plugins/analytics/plugin.js +5 -1
- package/dist/es2019/plugins/analytics/types/enums.js +5 -0
- package/dist/es2019/plugins/analytics/types/type-ahead.js +1 -0
- package/dist/es2019/plugins/block-type/messages.js +10 -0
- package/dist/es2019/plugins/card/nodeviews/embedCard.js +1 -3
- package/dist/es2019/plugins/collab-edit/participants.js +14 -0
- package/dist/es2019/plugins/collab-edit/plugin-state.js +17 -1
- package/dist/es2019/plugins/collab-edit/ui/avatars-with-plugin-state.js +6 -4
- package/dist/es2019/plugins/collab-edit/ui/avatars.js +17 -2
- package/dist/es2019/plugins/collab-edit/utils.js +34 -0
- package/dist/es2019/plugins/date/actions.js +4 -2
- package/dist/es2019/plugins/date/index.js +1 -1
- package/dist/es2019/plugins/date/pm-plugins/utils.js +6 -1
- package/dist/es2019/plugins/emoji/index.js +169 -146
- package/dist/es2019/plugins/emoji/pm-plugins/ascii-input-rules.js +0 -11
- package/dist/es2019/plugins/expand/pm-plugins/keymap.js +3 -6
- package/dist/es2019/plugins/extension/actions.js +16 -16
- package/dist/es2019/plugins/extension/pm-plugins/main.js +4 -4
- package/dist/es2019/plugins/extension/ui/Extension/ExtensionComponent.js +5 -4
- package/dist/es2019/plugins/extension/ui/Extension/index.js +2 -2
- package/dist/es2019/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/es2019/plugins/floating-toolbar/ui/ConfirmationModal.js +12 -15
- package/dist/es2019/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +25 -0
- package/dist/es2019/plugins/floating-toolbar/ui/EditorHideEmojiIcon.js +28 -0
- package/dist/es2019/plugins/floating-toolbar/ui/EmojiPickerButton.js +3 -5
- package/dist/es2019/plugins/help-dialog/ui/index.js +20 -26
- package/dist/es2019/plugins/help-dialog/ui/styles.js +2 -2
- package/dist/es2019/plugins/hyperlink/index.js +4 -12
- package/dist/es2019/plugins/insert-block/index.js +4 -4
- package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +8 -4
- package/dist/es2019/plugins/list/index.js +20 -14
- package/dist/es2019/plugins/macro/actions.js +14 -14
- package/dist/es2019/plugins/media/index.js +1 -0
- package/dist/es2019/plugins/media/nodeviews/mediaGroup.js +1 -0
- package/dist/es2019/plugins/media/pm-plugins/main.js +27 -12
- package/dist/es2019/plugins/media/styles.js +7 -2
- package/dist/es2019/plugins/media/toolbar/filePreviewItem.js +59 -0
- package/dist/es2019/plugins/media/toolbar/index.js +158 -42
- package/dist/es2019/plugins/media/toolbar/utils.js +32 -0
- package/dist/es2019/plugins/mentions/index.js +34 -536
- package/dist/es2019/plugins/mentions/pm-plugins/key.js +2 -0
- package/dist/es2019/plugins/mentions/pm-plugins/main.js +138 -0
- package/dist/es2019/plugins/mentions/pm-plugins/utils.js +4 -0
- package/dist/es2019/plugins/mentions/type-ahead/index.js +394 -0
- package/dist/es2019/plugins/mentions/ui/InviteItem/index.js +2 -1
- package/dist/es2019/plugins/mentions/ui/InviteItem/styles.js +4 -2
- package/dist/es2019/plugins/mentions/ui/ToolbarMention/index.js +2 -2
- package/dist/es2019/plugins/mentions/utils.js +20 -1
- package/dist/es2019/plugins/panel/index.js +95 -62
- package/dist/es2019/plugins/panel/nodeviews/panel.js +7 -1
- package/dist/es2019/plugins/panel/toolbar.js +90 -6
- package/dist/es2019/plugins/panel/toolbar.test.js +131 -14
- package/dist/es2019/plugins/paste/handlers.js +2 -2
- package/dist/es2019/plugins/paste/pm-plugins/analytics.js +6 -3
- package/dist/es2019/plugins/placeholder/index.js +5 -0
- package/dist/es2019/plugins/quick-insert/api.js +18 -0
- package/dist/es2019/plugins/quick-insert/assets/custom-panel.js +45 -0
- package/dist/es2019/plugins/quick-insert/assets/index.js +6 -0
- package/dist/es2019/plugins/quick-insert/index.js +12 -23
- package/dist/es2019/plugins/quick-insert/search.js +1 -3
- package/dist/es2019/plugins/quick-insert/ui/ModalElementBrowser/index.js +1 -0
- package/dist/es2019/plugins/rank.js +1 -1
- package/dist/es2019/plugins/rule/index.js +1 -22
- package/dist/es2019/plugins/scroll-into-view/index.js +1 -3
- package/dist/es2019/plugins/selection/gap-cursor/actions.js +5 -6
- package/dist/es2019/plugins/selection/pm-plugins/selection-main.js +1 -3
- package/dist/es2019/plugins/status/actions.js +5 -2
- package/dist/es2019/plugins/status/plugin.js +1 -1
- package/dist/es2019/plugins/table/commands/selection.js +25 -25
- package/dist/es2019/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +8 -1
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +14 -15
- package/dist/es2019/plugins/tasks-and-decisions/nodeviews/decisionItem.js +2 -1
- package/dist/es2019/plugins/tasks-and-decisions/nodeviews/taskItem.js +2 -1
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/keymaps.js +1 -2
- package/dist/es2019/plugins/text-formatting/pm-plugins/cursor.js +1 -4
- package/dist/es2019/plugins/type-ahead/api.js +224 -0
- package/dist/es2019/plugins/type-ahead/commands/insert-type-ahead-item.js +222 -0
- package/dist/es2019/plugins/type-ahead/commands/update-list-items.js +19 -0
- package/dist/es2019/plugins/type-ahead/commands/update-query.js +17 -15
- package/dist/es2019/plugins/type-ahead/commands/update-selected-index.js +25 -0
- package/dist/es2019/plugins/type-ahead/constants.js +15 -0
- package/dist/es2019/plugins/type-ahead/index.js +203 -78
- package/dist/es2019/plugins/type-ahead/insert-utils.js +119 -0
- package/dist/es2019/plugins/type-ahead/pm-plugins/actions.js +11 -8
- package/dist/es2019/plugins/type-ahead/pm-plugins/decorations.js +211 -0
- package/dist/es2019/plugins/type-ahead/pm-plugins/input-rules.js +18 -32
- package/dist/es2019/plugins/type-ahead/pm-plugins/insert-item-plugin.js +19 -0
- package/dist/es2019/plugins/type-ahead/pm-plugins/{plugin-key.js → key.js} +0 -0
- package/dist/es2019/plugins/type-ahead/pm-plugins/main.js +81 -401
- package/dist/es2019/plugins/type-ahead/pm-plugins/reducer.js +165 -0
- package/dist/es2019/plugins/type-ahead/pm-plugins/utils.js +16 -0
- package/dist/es2019/plugins/type-ahead/stats-modifier.js +41 -0
- package/dist/es2019/plugins/type-ahead/transforms/close-type-ahead.js +7 -0
- package/dist/es2019/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +40 -0
- package/dist/es2019/plugins/type-ahead/transforms/set-selection-before-query.js +11 -0
- package/dist/es2019/plugins/type-ahead/ui/DynamicHeightListItem.js +51 -0
- package/dist/es2019/plugins/type-ahead/ui/InputQuery.js +307 -0
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadList.js +163 -0
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadListItem.js +136 -0
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadPopup.js +120 -0
- package/dist/es2019/plugins/type-ahead/ui/WrapperTypeAhead.js +110 -0
- package/dist/es2019/plugins/type-ahead/ui/hooks/use-dynamic-list-height-calculation.js +97 -0
- package/dist/es2019/plugins/type-ahead/ui/hooks/use-item-insert.js +126 -0
- package/dist/es2019/plugins/type-ahead/ui/hooks/use-load-items.js +43 -0
- package/dist/es2019/plugins/type-ahead/ui/hooks/use-on-force-select.js +41 -0
- package/dist/es2019/plugins/type-ahead/ui/hooks/use-resize-observer.js +53 -0
- package/dist/es2019/plugins/type-ahead/utils.js +93 -0
- package/dist/es2019/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +29 -2
- package/dist/es2019/plugins/view-update-subscription/index.js +19 -14
- package/dist/es2019/plugins/view-update-subscription/subscribe/toolbarAndPickerUpdates.js +9 -3
- package/dist/es2019/plugins/view-update-subscription/subscribe/type-ahead-updates.js +34 -0
- package/dist/es2019/test-utils.js +7 -0
- package/dist/es2019/types/empty-state-handler.js +1 -0
- package/dist/es2019/ui/ConfigPanel/Fields/ColorPicker.js +4 -8
- package/dist/es2019/ui/ConfigPanel/transformers.js +9 -9
- package/dist/es2019/ui/ElementBrowser/ElementBrowser.js +4 -2
- package/dist/es2019/ui/ElementBrowser/InsertMenu.js +1 -0
- package/dist/es2019/ui/ElementBrowser/ModalElementBrowser.js +20 -21
- package/dist/es2019/ui/ElementBrowser/components/ElementList/ElementList.js +9 -2
- package/dist/es2019/ui/ElementBrowser/components/StatelessElementBrowser.js +12 -4
- package/dist/es2019/ui/PanelTextInput/index.js +1 -3
- package/dist/es2019/utils/compare.js +7 -7
- package/dist/es2019/utils/index.js +7 -8
- package/dist/es2019/utils/rich-media-utils.js +2 -2
- package/dist/es2019/utils/selection.js +6 -3
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/create-editor/create-plugins-list.js +6 -1
- package/dist/esm/editor.js +1 -4
- package/dist/esm/index.js +4 -6
- package/dist/esm/labs/next/presets/default.js +2 -2
- package/dist/esm/messages.js +5 -0
- package/dist/esm/nodeviews/SelectionBasedNodeView.js +1 -2
- package/dist/esm/plugins/analytics/plugin.js +8 -6
- package/dist/esm/plugins/analytics/types/enums.js +5 -0
- package/dist/esm/plugins/analytics/types/type-ahead.js +1 -0
- package/dist/esm/plugins/block-type/messages.js +10 -0
- package/dist/esm/plugins/card/nodeviews/embedCard.js +1 -3
- package/dist/esm/plugins/collab-edit/participants.js +15 -0
- package/dist/esm/plugins/collab-edit/plugin-state.js +15 -1
- package/dist/esm/plugins/collab-edit/ui/avatars-with-plugin-state.js +6 -4
- package/dist/esm/plugins/collab-edit/ui/avatars.js +17 -2
- package/dist/esm/plugins/collab-edit/utils.js +32 -0
- package/dist/esm/plugins/date/actions.js +4 -2
- package/dist/esm/plugins/date/index.js +1 -1
- package/dist/esm/plugins/date/pm-plugins/utils.js +6 -1
- package/dist/esm/plugins/emoji/index.js +136 -112
- package/dist/esm/plugins/emoji/pm-plugins/ascii-input-rules.js +0 -13
- package/dist/esm/plugins/expand/pm-plugins/keymap.js +3 -6
- package/dist/esm/plugins/extension/actions.js +16 -16
- package/dist/esm/plugins/extension/pm-plugins/main.js +4 -4
- package/dist/esm/plugins/extension/ui/Extension/ExtensionComponent.js +5 -4
- package/dist/esm/plugins/extension/ui/Extension/index.js +2 -2
- package/dist/esm/plugins/feature-flags-context/feature-flags-from-props.js +3 -2
- package/dist/esm/plugins/floating-toolbar/ui/ConfirmationModal.js +12 -15
- package/dist/esm/plugins/floating-toolbar/ui/EditorEmojiAddIcon.js +25 -0
- package/dist/esm/plugins/floating-toolbar/ui/EditorHideEmojiIcon.js +28 -0
- package/dist/esm/plugins/floating-toolbar/ui/EmojiPickerButton.js +3 -5
- package/dist/esm/plugins/help-dialog/ui/index.js +13 -19
- package/dist/esm/plugins/help-dialog/ui/styles.js +2 -6
- package/dist/esm/plugins/hyperlink/index.js +4 -10
- package/dist/esm/plugins/insert-block/index.js +5 -5
- package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +8 -4
- package/dist/esm/plugins/list/index.js +5 -0
- package/dist/esm/plugins/macro/actions.js +14 -14
- package/dist/esm/plugins/media/index.js +1 -0
- package/dist/esm/plugins/media/nodeviews/mediaGroup.js +1 -0
- package/dist/esm/plugins/media/pm-plugins/main.js +27 -14
- package/dist/esm/plugins/media/styles.js +2 -2
- package/dist/esm/plugins/media/toolbar/filePreviewItem.js +62 -0
- package/dist/esm/plugins/media/toolbar/index.js +154 -43
- package/dist/esm/plugins/media/toolbar/utils.js +60 -0
- package/dist/esm/plugins/mentions/index.js +45 -557
- package/dist/esm/plugins/mentions/pm-plugins/key.js +2 -0
- package/dist/esm/plugins/mentions/pm-plugins/main.js +145 -0
- package/dist/esm/plugins/mentions/pm-plugins/utils.js +4 -0
- package/dist/esm/plugins/mentions/type-ahead/index.js +415 -0
- package/dist/esm/plugins/mentions/ui/InviteItem/index.js +2 -1
- package/dist/esm/plugins/mentions/ui/InviteItem/styles.js +4 -2
- package/dist/esm/plugins/mentions/ui/ToolbarMention/index.js +2 -2
- package/dist/esm/plugins/mentions/utils.js +19 -0
- package/dist/esm/plugins/panel/index.js +44 -13
- package/dist/esm/plugins/panel/nodeviews/panel.js +36 -22
- package/dist/esm/plugins/panel/toolbar.js +92 -6
- package/dist/esm/plugins/panel/toolbar.test.js +148 -16
- package/dist/esm/plugins/paste/handlers.js +2 -2
- package/dist/esm/plugins/paste/pm-plugins/analytics.js +6 -3
- package/dist/esm/plugins/placeholder/index.js +5 -0
- package/dist/esm/plugins/quick-insert/api.js +20 -0
- package/dist/esm/plugins/quick-insert/assets/custom-panel.js +45 -0
- package/dist/esm/plugins/quick-insert/assets/index.js +12 -0
- package/dist/esm/plugins/quick-insert/index.js +10 -24
- package/dist/esm/plugins/quick-insert/search.js +1 -3
- package/dist/esm/plugins/quick-insert/ui/ModalElementBrowser/index.js +1 -0
- package/dist/esm/plugins/rank.js +1 -1
- package/dist/esm/plugins/rule/index.js +1 -22
- package/dist/esm/plugins/scroll-into-view/index.js +1 -3
- package/dist/esm/plugins/selection/gap-cursor/actions.js +5 -6
- package/dist/esm/plugins/selection/pm-plugins/selection-main.js +1 -3
- package/dist/esm/plugins/status/actions.js +5 -2
- package/dist/esm/plugins/status/plugin.js +1 -1
- package/dist/esm/plugins/table/commands/selection.js +24 -24
- package/dist/esm/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.js +8 -1
- package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/resize-state.js +14 -15
- package/dist/esm/plugins/tasks-and-decisions/nodeviews/decisionItem.js +2 -1
- package/dist/esm/plugins/tasks-and-decisions/nodeviews/taskItem.js +2 -1
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/keymaps.js +1 -2
- package/dist/esm/plugins/text-formatting/pm-plugins/cursor.js +1 -4
- package/dist/esm/plugins/type-ahead/api.js +228 -0
- package/dist/esm/plugins/type-ahead/commands/insert-type-ahead-item.js +217 -0
- package/dist/esm/plugins/type-ahead/commands/update-list-items.js +19 -0
- package/dist/esm/plugins/type-ahead/commands/update-query.js +13 -13
- package/dist/esm/plugins/type-ahead/commands/update-selected-index.js +25 -0
- package/dist/esm/plugins/type-ahead/constants.js +15 -0
- package/dist/esm/plugins/type-ahead/index.js +173 -53
- package/dist/esm/plugins/type-ahead/insert-utils.js +116 -0
- package/dist/esm/plugins/type-ahead/pm-plugins/actions.js +11 -8
- package/dist/esm/plugins/type-ahead/pm-plugins/decorations.js +204 -0
- package/dist/esm/plugins/type-ahead/pm-plugins/input-rules.js +18 -33
- package/dist/esm/plugins/type-ahead/pm-plugins/insert-item-plugin.js +18 -0
- package/dist/esm/plugins/type-ahead/pm-plugins/{plugin-key.js → key.js} +0 -0
- package/dist/esm/plugins/type-ahead/pm-plugins/main.js +80 -393
- package/dist/esm/plugins/type-ahead/pm-plugins/reducer.js +168 -0
- package/dist/esm/plugins/type-ahead/pm-plugins/utils.js +16 -0
- package/dist/esm/plugins/type-ahead/stats-modifier.js +43 -0
- package/dist/esm/plugins/type-ahead/transforms/close-type-ahead.js +7 -0
- package/dist/esm/plugins/type-ahead/transforms/open-typeahead-at-cursor.js +39 -0
- package/dist/esm/plugins/type-ahead/transforms/set-selection-before-query.js +13 -0
- package/dist/esm/plugins/type-ahead/ui/DynamicHeightListItem.js +51 -0
- package/dist/esm/plugins/type-ahead/ui/InputQuery.js +302 -0
- package/dist/esm/plugins/type-ahead/ui/TypeAheadList.js +168 -0
- package/dist/esm/plugins/type-ahead/ui/TypeAheadListItem.js +105 -0
- package/dist/esm/plugins/type-ahead/ui/TypeAheadPopup.js +114 -0
- package/dist/esm/plugins/type-ahead/ui/WrapperTypeAhead.js +125 -0
- package/dist/esm/plugins/type-ahead/ui/hooks/use-dynamic-list-height-calculation.js +101 -0
- package/dist/esm/plugins/type-ahead/ui/hooks/use-item-insert.js +118 -0
- package/dist/esm/plugins/type-ahead/ui/hooks/use-load-items.js +46 -0
- package/dist/esm/plugins/type-ahead/ui/hooks/use-on-force-select.js +38 -0
- package/dist/esm/plugins/type-ahead/ui/hooks/use-resize-observer.js +48 -0
- package/dist/esm/plugins/type-ahead/utils.js +88 -0
- package/dist/esm/plugins/undo-redo/ui/ToolbarUndoRedo/index.js +33 -2
- package/dist/esm/plugins/view-update-subscription/index.js +19 -14
- package/dist/esm/plugins/view-update-subscription/subscribe/toolbarAndPickerUpdates.js +10 -3
- package/dist/esm/plugins/view-update-subscription/subscribe/type-ahead-updates.js +33 -0
- package/dist/esm/test-utils.js +7 -0
- package/dist/esm/types/empty-state-handler.js +1 -0
- package/dist/esm/ui/ConfigPanel/Fields/ColorPicker.js +4 -14
- package/dist/esm/ui/ElementBrowser/ElementBrowser.js +4 -2
- package/dist/esm/ui/ElementBrowser/InsertMenu.js +1 -0
- package/dist/esm/ui/ElementBrowser/ModalElementBrowser.js +16 -23
- package/dist/esm/ui/ElementBrowser/components/ElementList/ElementList.js +10 -3
- package/dist/esm/ui/ElementBrowser/components/StatelessElementBrowser.js +12 -4
- package/dist/esm/ui/PanelTextInput/index.js +1 -3
- package/dist/esm/utils/compare.js +7 -7
- package/dist/esm/utils/index.js +7 -8
- package/dist/esm/utils/rich-media-utils.js +2 -2
- package/dist/esm/utils/selection.js +6 -3
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/commands/index.d.ts +1 -1
- package/dist/types/create-editor/ErrorBoundary.d.ts +1 -1
- package/dist/types/index.d.ts +3 -5
- package/dist/types/labs/next/full-page.d.ts +1 -1
- package/dist/types/labs/next/mobile.d.ts +1 -1
- package/dist/types/labs/next/presets/default.d.ts +2 -0
- package/dist/types/messages.d.ts +5 -0
- package/dist/types/plugins/alignment/commands/index.d.ts +2 -2
- package/dist/types/plugins/analytics/types/enums.d.ts +6 -1
- package/dist/types/plugins/analytics/types/events.d.ts +12 -2
- package/dist/types/plugins/analytics/types/general-events.d.ts +2 -23
- package/dist/types/plugins/analytics/types/type-ahead.d.ts +27 -0
- package/dist/types/plugins/block-type/messages.d.ts +10 -0
- package/dist/types/plugins/card/ui/ResizableEmbedCard.d.ts +1 -1
- package/dist/types/plugins/collab-edit/participants.d.ts +1 -0
- package/dist/types/plugins/collab-edit/ui/avatars.d.ts +3 -1
- package/dist/types/plugins/collab-edit/ui/invite-to-edit.d.ts +1 -1
- package/dist/types/plugins/collab-edit/utils.d.ts +4 -2
- package/dist/types/plugins/date/actions.d.ts +1 -1
- package/dist/types/plugins/date/pm-plugins/types.d.ts +1 -0
- package/dist/types/plugins/emoji/index.d.ts +2 -4
- package/dist/types/plugins/emoji/types.d.ts +2 -2
- package/dist/types/plugins/extension/ui/Extension/Extension/index.d.ts +2 -3
- package/dist/types/plugins/extension/ui/Extension/Extension/styles.d.ts +1 -1
- package/dist/types/plugins/extension/ui/Extension/ExtensionComponent.d.ts +2 -3
- package/dist/types/plugins/extension/ui/Extension/index.d.ts +2 -3
- package/dist/types/plugins/feature-flags-context/get-enabled-feature-flag-keys.d.ts +1 -1
- package/dist/types/plugins/find-replace/ui/styles.d.ts +3 -3
- package/dist/types/plugins/floating-toolbar/ui/EditorEmojiAddIcon.d.ts +1 -0
- package/dist/types/plugins/floating-toolbar/ui/EditorHideEmojiIcon.d.ts +1 -0
- package/dist/types/plugins/hyperlink/ui/HyperlinkAddToolbar/HyperlinkAddToolbar.d.ts +1 -1
- package/dist/types/plugins/insert-block/ui/ToolbarInsertBlock/types.d.ts +0 -1
- package/dist/types/plugins/media/pm-plugins/main.d.ts +1 -0
- package/dist/types/plugins/media/toolbar/filePreviewItem.d.ts +7 -0
- package/dist/types/plugins/media/toolbar/utils.d.ts +4 -0
- package/dist/types/plugins/media/types.d.ts +3 -0
- package/dist/types/plugins/media/ui/ResizableMediaSingle/index.d.ts +1 -1
- package/dist/types/plugins/media/utils/media-single.d.ts +1 -1
- package/dist/types/plugins/mentions/analytics.d.ts +1 -1
- package/dist/types/plugins/mentions/index.d.ts +4 -30
- package/dist/types/plugins/mentions/pm-plugins/key.d.ts +3 -0
- package/dist/types/plugins/mentions/pm-plugins/main.d.ts +8 -0
- package/dist/types/plugins/mentions/pm-plugins/utils.d.ts +3 -0
- package/dist/types/plugins/mentions/type-ahead/index.d.ts +17 -0
- package/dist/types/plugins/mentions/types.d.ts +2 -0
- package/dist/types/plugins/mentions/ui/InviteItem/index.d.ts +1 -0
- package/dist/types/plugins/mentions/ui/InviteItem/styles.d.ts +2 -0
- package/dist/types/plugins/mentions/utils.d.ts +4 -0
- package/dist/types/plugins/panel/nodeviews/panel.d.ts +19 -3
- package/dist/types/plugins/paste/pm-plugins/analytics.d.ts +2 -0
- package/dist/types/plugins/quick-insert/api.d.ts +6 -0
- package/dist/types/plugins/quick-insert/assets/custom-panel.d.ts +1 -0
- package/dist/types/plugins/quick-insert/assets/index.d.ts +1 -0
- package/dist/types/plugins/quick-insert/search.d.ts +1 -1
- package/dist/types/plugins/quick-insert/types.d.ts +3 -0
- package/dist/types/plugins/status/actions.d.ts +3 -1
- package/dist/types/plugins/status/ui/statusPicker.d.ts +1 -1
- package/dist/types/plugins/type-ahead/api.d.ts +53 -0
- package/dist/types/plugins/type-ahead/commands/insert-type-ahead-item.d.ts +12 -0
- package/dist/types/plugins/type-ahead/commands/update-list-items.d.ts +3 -0
- package/dist/types/plugins/type-ahead/commands/update-query.d.ts +2 -2
- package/dist/types/plugins/type-ahead/commands/update-selected-index.d.ts +2 -0
- package/dist/types/plugins/type-ahead/constants.d.ts +10 -0
- package/dist/types/plugins/type-ahead/index.d.ts +5 -4
- package/dist/types/plugins/type-ahead/insert-utils.d.ts +18 -0
- package/dist/types/plugins/type-ahead/pm-plugins/actions.d.ts +9 -8
- package/dist/types/plugins/type-ahead/pm-plugins/decorations.d.ts +24 -0
- package/dist/types/plugins/type-ahead/pm-plugins/input-rules.d.ts +0 -1
- package/dist/types/plugins/type-ahead/pm-plugins/insert-item-plugin.d.ts +2 -0
- package/dist/types/plugins/type-ahead/pm-plugins/{plugin-key.d.ts → key.d.ts} +0 -0
- package/dist/types/plugins/type-ahead/pm-plugins/main.d.ts +12 -39
- package/dist/types/plugins/type-ahead/pm-plugins/reducer.d.ts +10 -0
- package/dist/types/plugins/type-ahead/pm-plugins/utils.d.ts +4 -0
- package/dist/types/plugins/type-ahead/stats-modifier.d.ts +20 -0
- package/dist/types/plugins/type-ahead/transforms/close-type-ahead.d.ts +2 -0
- package/dist/types/plugins/type-ahead/transforms/open-typeahead-at-cursor.d.ts +9 -0
- package/dist/types/plugins/type-ahead/transforms/set-selection-before-query.d.ts +2 -0
- package/dist/types/plugins/type-ahead/types.d.ts +95 -30
- package/dist/types/plugins/type-ahead/ui/DynamicHeightListItem.d.ts +21 -0
- package/dist/types/plugins/type-ahead/ui/InputQuery.d.ts +22 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadList.d.ts +11 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadListItem.d.ts +15 -0
- package/dist/types/plugins/type-ahead/ui/TypeAheadPopup.d.ts +22 -0
- package/dist/types/plugins/type-ahead/ui/WrapperTypeAhead.d.ts +20 -0
- package/dist/types/plugins/type-ahead/ui/hooks/use-dynamic-list-height-calculation.d.ts +25 -0
- package/dist/types/plugins/type-ahead/ui/hooks/use-item-insert.d.ts +3 -0
- package/dist/types/plugins/type-ahead/ui/hooks/use-load-items.d.ts +3 -0
- package/dist/types/plugins/type-ahead/ui/hooks/use-on-force-select.d.ts +11 -0
- package/dist/types/plugins/type-ahead/ui/hooks/use-resize-observer.d.ts +9 -0
- package/dist/types/plugins/type-ahead/utils.d.ts +18 -0
- package/dist/types/plugins/view-update-subscription/subscribe/type-ahead-updates.d.ts +9 -0
- package/dist/types/test-utils.d.ts +2 -0
- package/dist/types/types/editor-props.d.ts +2 -0
- package/dist/types/types/empty-state-handler.d.ts +7 -0
- package/dist/types/types/feature-flags.d.ts +8 -0
- package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +1 -1
- package/dist/types/ui/ColorPickerButton/index.d.ts +1 -1
- package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +1 -1
- package/dist/types/ui/ConfigPanel/FormErrorBoundary.d.ts +1 -1
- package/dist/types/ui/ElementBrowser/ElementBrowser.d.ts +2 -0
- package/dist/types/ui/ElementBrowser/ModalElementBrowser.d.ts +2 -0
- package/dist/types/ui/ElementBrowser/components/CategoryList.d.ts +1 -1
- package/dist/types/ui/ElementBrowser/components/ElementList/ElementList.d.ts +5 -1
- package/dist/types/ui/ElementBrowser/components/StatelessElementBrowser.d.ts +3 -1
- package/dist/types/ui/LinkSearch/index.d.ts +20 -20
- package/dist/types/ui/PortalProvider/index.d.ts +1 -1
- package/dist/types/ui/ToolbarButton/index.d.ts +4 -4
- package/dist/types/ui/ToolbarButton/styles.d.ts +2 -2
- package/dist/types/utils/selection.d.ts +2 -2
- package/package.json +32 -29
- package/dist/cjs/plugins/emoji/commands/insert-emoji-query.js +0 -22
- package/dist/cjs/plugins/mentions/commands/insert-mention-query.js +0 -22
- package/dist/cjs/plugins/type-ahead/commands/dismiss.js +0 -44
- package/dist/cjs/plugins/type-ahead/commands/insert-query.js +0 -38
- package/dist/cjs/plugins/type-ahead/commands/items-list-updated.js +0 -25
- package/dist/cjs/plugins/type-ahead/commands/select-item.js +0 -163
- package/dist/cjs/plugins/type-ahead/commands/set-current-index.js +0 -25
- package/dist/cjs/plugins/type-ahead/pm-plugins/keymap.js +0 -115
- package/dist/cjs/plugins/type-ahead/ui/TypeAhead.js +0 -221
- package/dist/cjs/plugins/type-ahead/ui/TypeAheadItemsList.js +0 -239
- package/dist/cjs/plugins/type-ahead/utils/find-query-mark.js +0 -33
- package/dist/cjs/plugins/type-ahead/utils/is-query-active.js +0 -16
- package/dist/es2019/plugins/emoji/commands/insert-emoji-query.js +0 -13
- package/dist/es2019/plugins/mentions/commands/insert-mention-query.js +0 -13
- package/dist/es2019/plugins/type-ahead/commands/dismiss.js +0 -36
- package/dist/es2019/plugins/type-ahead/commands/insert-query.js +0 -26
- package/dist/es2019/plugins/type-ahead/commands/items-list-updated.js +0 -12
- package/dist/es2019/plugins/type-ahead/commands/select-item.js +0 -119
- package/dist/es2019/plugins/type-ahead/commands/set-current-index.js +0 -13
- package/dist/es2019/plugins/type-ahead/pm-plugins/keymap.js +0 -94
- package/dist/es2019/plugins/type-ahead/ui/TypeAhead.js +0 -175
- package/dist/es2019/plugins/type-ahead/ui/TypeAheadItemsList.js +0 -196
- package/dist/es2019/plugins/type-ahead/utils/find-query-mark.js +0 -29
- package/dist/es2019/plugins/type-ahead/utils/is-query-active.js +0 -9
- package/dist/esm/plugins/emoji/commands/insert-emoji-query.js +0 -13
- package/dist/esm/plugins/mentions/commands/insert-mention-query.js +0 -13
- package/dist/esm/plugins/type-ahead/commands/dismiss.js +0 -33
- package/dist/esm/plugins/type-ahead/commands/insert-query.js +0 -26
- package/dist/esm/plugins/type-ahead/commands/items-list-updated.js +0 -14
- package/dist/esm/plugins/type-ahead/commands/select-item.js +0 -132
- package/dist/esm/plugins/type-ahead/commands/set-current-index.js +0 -15
- package/dist/esm/plugins/type-ahead/pm-plugins/keymap.js +0 -94
- package/dist/esm/plugins/type-ahead/ui/TypeAhead.js +0 -202
- package/dist/esm/plugins/type-ahead/ui/TypeAheadItemsList.js +0 -204
- package/dist/esm/plugins/type-ahead/utils/find-query-mark.js +0 -24
- package/dist/esm/plugins/type-ahead/utils/is-query-active.js +0 -9
- package/dist/types/plugins/emoji/commands/insert-emoji-query.d.ts +0 -2
- package/dist/types/plugins/mentions/commands/insert-mention-query.d.ts +0 -2
- package/dist/types/plugins/type-ahead/commands/dismiss.d.ts +0 -2
- package/dist/types/plugins/type-ahead/commands/insert-query.d.ts +0 -2
- package/dist/types/plugins/type-ahead/commands/items-list-updated.d.ts +0 -3
- package/dist/types/plugins/type-ahead/commands/select-item.d.ts +0 -9
- package/dist/types/plugins/type-ahead/commands/set-current-index.d.ts +0 -2
- package/dist/types/plugins/type-ahead/pm-plugins/keymap.d.ts +0 -3
- package/dist/types/plugins/type-ahead/ui/TypeAhead.d.ts +0 -37
- package/dist/types/plugins/type-ahead/ui/TypeAheadItemsList.d.ts +0 -32
- package/dist/types/plugins/type-ahead/utils/find-query-mark.d.ts +0 -10
- package/dist/types/plugins/type-ahead/utils/is-query-active.d.ts +0 -2
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export default function EditorHideEmojiIcon() {
|
|
3
|
+
return /*#__PURE__*/React.createElement("svg", {
|
|
4
|
+
width: "24",
|
|
5
|
+
height: "24",
|
|
6
|
+
viewBox: "0 0 24 24",
|
|
7
|
+
fill: "none",
|
|
8
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
9
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
10
|
+
width: "24",
|
|
11
|
+
height: "24",
|
|
12
|
+
fill: "white",
|
|
13
|
+
fillOpacity: "0.01"
|
|
14
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
15
|
+
fillRule: "evenodd",
|
|
16
|
+
clipRule: "evenodd",
|
|
17
|
+
d: "M5.84238 8.67075C5.29444 9.68427 5 10.827 5 12C5 13.8565 5.7375 15.637 7.05025 16.9497C8.36301 18.2625 10.1435 19 12 19C12.9193 19 13.8295 18.8189 14.6788 18.4672C14.9012 18.375 15.1183 18.2717 15.3292 18.1576L14.2087 17.037C13.5324 17.3347 12.7851 17.5 12 17.5C8.967 17.5 6.5 15.033 6.5 12C6.50084 11.2327 6.66182 10.4821 6.9644 9.79277L5.84238 8.67075ZM17.0371 14.2086C17.3347 13.5323 17.5 12.7851 17.5 12C17.5 8.967 15.033 6.5 12 6.5C11.2327 6.50084 10.4821 6.6618 9.79285 6.96437L8.67083 5.84234C9.68433 5.29442 10.827 5 12 5C12.9193 5 13.8295 5.18106 14.6788 5.53284C15.5281 5.88463 16.2997 6.40024 16.9497 7.05025C17.5998 7.70026 18.1154 8.47194 18.4672 9.32122C18.8189 10.1705 19 11.0807 19 12C19 12.9193 18.8189 13.8295 18.4672 14.6788C18.375 14.9012 18.2717 15.1182 18.1577 15.3292L17.0371 14.2086Z",
|
|
18
|
+
fill: "currentColor"
|
|
19
|
+
}), /*#__PURE__*/React.createElement("rect", {
|
|
20
|
+
x: "4.31882",
|
|
21
|
+
y: "5.55618",
|
|
22
|
+
width: "1.75",
|
|
23
|
+
height: "19.9758",
|
|
24
|
+
rx: "0.875",
|
|
25
|
+
transform: "rotate(-45 4.31882 5.55618)",
|
|
26
|
+
fill: "currentColor"
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import styled from 'styled-components';
|
|
3
3
|
import Button from '@atlaskit/button';
|
|
4
|
-
import Emoji from '@atlaskit/icon/glyph/editor/emoji';
|
|
5
4
|
import { Popup, WithProviders } from '@atlaskit/editor-common';
|
|
6
5
|
import { EmojiPicker } from '@atlaskit/emoji';
|
|
7
|
-
import Tooltip from '@atlaskit/tooltip';
|
|
6
|
+
import Tooltip from '@atlaskit/tooltip';
|
|
7
|
+
import EditorEmojiAddIcon from './EditorEmojiAddIcon'; // helps adjusts position of popup
|
|
8
8
|
|
|
9
9
|
const EmojiPickerButtonWrapper = styled.div`
|
|
10
10
|
position: relative;
|
|
@@ -69,8 +69,6 @@ export const EmojiPickerButton = props => {
|
|
|
69
69
|
onClick: togglePopup,
|
|
70
70
|
ref: buttonRef,
|
|
71
71
|
isSelected: props.isSelected,
|
|
72
|
-
iconBefore: /*#__PURE__*/React.createElement(
|
|
73
|
-
label: "emoji"
|
|
74
|
-
})
|
|
72
|
+
iconBefore: /*#__PURE__*/React.createElement(EditorEmojiAddIcon, null)
|
|
75
73
|
})), renderPopup());
|
|
76
74
|
};
|
|
@@ -4,7 +4,7 @@ import React from 'react';
|
|
|
4
4
|
import { injectIntl, defineMessages, FormattedMessage } from 'react-intl';
|
|
5
5
|
import { browser } from '@atlaskit/editor-common';
|
|
6
6
|
import CrossIcon from '@atlaskit/icon/glyph/cross';
|
|
7
|
-
import AkModalDialog, { ModalTransition } from '@atlaskit/modal-dialog';
|
|
7
|
+
import AkModalDialog, { ModalTransition, ModalBody, useModal } from '@atlaskit/modal-dialog';
|
|
8
8
|
import { Header, Footer, ContentWrapper, Line, Content, ColumnRight, ColumnLeft, Row, CodeSm, CodeMd, CodeLg, Title } from './styles';
|
|
9
9
|
import * as keymaps from '../../../keymaps';
|
|
10
10
|
import ToolbarButton from '../../../ui/ToolbarButton';
|
|
@@ -237,28 +237,26 @@ export const getComponentFromKeymap = keymap => {
|
|
|
237
237
|
}));
|
|
238
238
|
};
|
|
239
239
|
const ModalHeader = injectIntl(({
|
|
240
|
-
onClose,
|
|
241
|
-
showKeyline,
|
|
242
240
|
intl: {
|
|
243
241
|
formatMessage
|
|
244
242
|
}
|
|
245
|
-
}) =>
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
243
|
+
}) => {
|
|
244
|
+
const {
|
|
245
|
+
onClose
|
|
246
|
+
} = useModal();
|
|
247
|
+
return /*#__PURE__*/React.createElement(Header, null, /*#__PURE__*/React.createElement(FormattedMessage, messages.editorHelp), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ToolbarButton // @ts-ignore
|
|
248
|
+
, {
|
|
249
|
+
onClick: onClose,
|
|
250
|
+
title: formatMessage(messages.closeHelpDialog),
|
|
251
|
+
spacing: "compact",
|
|
252
|
+
iconBefore: /*#__PURE__*/React.createElement(CrossIcon, {
|
|
253
|
+
label: formatMessage(messages.closeHelpDialog),
|
|
254
|
+
size: "medium"
|
|
255
|
+
})
|
|
256
|
+
})));
|
|
257
|
+
});
|
|
256
258
|
|
|
257
|
-
const ModalFooter = ({
|
|
258
|
-
showKeyline
|
|
259
|
-
}) => /*#__PURE__*/React.createElement(Footer, {
|
|
260
|
-
showKeyline: showKeyline
|
|
261
|
-
}, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.helpDialogTips, {
|
|
259
|
+
const ModalFooter = () => /*#__PURE__*/React.createElement(Footer, null, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.helpDialogTips, {
|
|
262
260
|
values: {
|
|
263
261
|
keyMap: getComponentFromKeymap(keymaps.openHelp)
|
|
264
262
|
}
|
|
@@ -305,12 +303,8 @@ class HelpDialog extends React.Component {
|
|
|
305
303
|
this.formatting = getSupportedFormatting(editorView.state.schema, intl, imageEnabled, quickInsertEnabled);
|
|
306
304
|
return /*#__PURE__*/React.createElement(ModalTransition, null, this.props.isVisible ? /*#__PURE__*/React.createElement(AkModalDialog, {
|
|
307
305
|
width: "large",
|
|
308
|
-
onClose: this.closeDialog
|
|
309
|
-
|
|
310
|
-
Header: ModalHeader,
|
|
311
|
-
Footer: ModalFooter
|
|
312
|
-
}
|
|
313
|
-
}, /*#__PURE__*/React.createElement(ContentWrapper, null, /*#__PURE__*/React.createElement(Line, null), /*#__PURE__*/React.createElement(Content, null, /*#__PURE__*/React.createElement(ColumnLeft, null, /*#__PURE__*/React.createElement(Title, null, /*#__PURE__*/React.createElement(FormattedMessage, messages.keyboardShortcuts)), /*#__PURE__*/React.createElement("div", null, this.formatting.filter(form => {
|
|
306
|
+
onClose: this.closeDialog
|
|
307
|
+
}, /*#__PURE__*/React.createElement(ModalHeader, null), /*#__PURE__*/React.createElement(ModalBody, null, /*#__PURE__*/React.createElement(ContentWrapper, null, /*#__PURE__*/React.createElement(Line, null), /*#__PURE__*/React.createElement(Content, null, /*#__PURE__*/React.createElement(ColumnLeft, null, /*#__PURE__*/React.createElement(Title, null, /*#__PURE__*/React.createElement(FormattedMessage, messages.keyboardShortcuts)), /*#__PURE__*/React.createElement("div", null, this.formatting.filter(form => {
|
|
314
308
|
const keymap = form.keymap && form.keymap(this.props);
|
|
315
309
|
return keymap && keymap[browser.mac ? 'mac' : 'windows'];
|
|
316
310
|
}).map(form => /*#__PURE__*/React.createElement(Row, {
|
|
@@ -319,7 +313,7 @@ class HelpDialog extends React.Component {
|
|
|
319
313
|
key: `autoFormatting-${form.name}`
|
|
320
314
|
}, /*#__PURE__*/React.createElement("span", null, form.name), form.autoFormatting())))), /*#__PURE__*/React.createElement(Line, null), /*#__PURE__*/React.createElement(ColumnRight, null, /*#__PURE__*/React.createElement(Title, null, /*#__PURE__*/React.createElement(FormattedMessage, messages.markdown)), /*#__PURE__*/React.createElement("div", null, this.formatting.filter(form => shortcutNamesWithoutKeymap.indexOf(form.type) === -1).map(form => form.autoFormatting && /*#__PURE__*/React.createElement(Row, {
|
|
321
315
|
key: `autoFormatting-${form.name}`
|
|
322
|
-
}, /*#__PURE__*/React.createElement("span", null, form.name), form.autoFormatting()))))))) : null);
|
|
316
|
+
}, /*#__PURE__*/React.createElement("span", null, form.name), form.autoFormatting()))))))), /*#__PURE__*/React.createElement(ModalFooter, null)) : null);
|
|
323
317
|
}
|
|
324
318
|
|
|
325
319
|
}
|
|
@@ -10,7 +10,7 @@ export const Header = styled.div`
|
|
|
10
10
|
display: flex;
|
|
11
11
|
justify-content: space-between;
|
|
12
12
|
align-items: center;
|
|
13
|
-
box-shadow:
|
|
13
|
+
box-shadow: 'none';
|
|
14
14
|
color: ${colors.N400};
|
|
15
15
|
background-color: ${colors.N0};
|
|
16
16
|
border-radius: ${borderRadius()}px;
|
|
@@ -22,7 +22,7 @@ export const Footer = styled.div`
|
|
|
22
22
|
color: ${colors.N300};
|
|
23
23
|
padding: 24px;
|
|
24
24
|
text-align: right;
|
|
25
|
-
box-shadow:
|
|
25
|
+
box-shadow: 'none';
|
|
26
26
|
`;
|
|
27
27
|
export const ContentWrapper = styled.div`
|
|
28
28
|
padding: 18px 20px;
|
|
@@ -56,19 +56,11 @@ const hyperlinkPlugin = options => ({
|
|
|
56
56
|
keyshortcut: tooltip(addLink),
|
|
57
57
|
icon: () => /*#__PURE__*/React.createElement(IconLink, null),
|
|
58
58
|
|
|
59
|
-
action(
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
nodeBefore
|
|
63
|
-
} = state.selection.$from;
|
|
64
|
-
|
|
65
|
-
if (!nodeBefore) {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const tr = state.tr.setMeta(stateKey, {
|
|
59
|
+
action(insert, state) {
|
|
60
|
+
const tr = insert(undefined);
|
|
61
|
+
tr.setMeta(stateKey, {
|
|
70
62
|
type: LinkAction.SHOW_INSERT_TOOLBAR
|
|
71
|
-
})
|
|
63
|
+
});
|
|
72
64
|
return addAnalytics(state, tr, {
|
|
73
65
|
action: ACTION.INVOKED,
|
|
74
66
|
actionSubject: ACTION_SUBJECT.TYPEAHEAD,
|
|
@@ -3,15 +3,16 @@ import { WithProviders } from '@atlaskit/editor-common';
|
|
|
3
3
|
import { pluginKey as blockTypeStateKey } from '../block-type/pm-plugins/main';
|
|
4
4
|
import { stateKey as mediaStateKey } from '../media/pm-plugins/plugin-key';
|
|
5
5
|
import { stateKey as hyperlinkPluginKey } from '../hyperlink/pm-plugins/main';
|
|
6
|
-
import {
|
|
6
|
+
import { isTypeAheadAllowed } from '../type-ahead/utils';
|
|
7
|
+
import { mentionPluginKey } from '../mentions/pm-plugins/key';
|
|
7
8
|
import { pluginKey as layoutStateKey } from '../layout';
|
|
8
9
|
import { insertMacroFromMacroBrowser } from '../macro';
|
|
9
10
|
import { emojiPluginKey } from '../emoji';
|
|
10
11
|
import WithPluginState from '../../ui/WithPluginState';
|
|
11
12
|
import ToolbarInsertBlock from './ui/ToolbarInsertBlock';
|
|
13
|
+
import { pluginKey as typeAheadPluginKey } from '../type-ahead/pm-plugins/key';
|
|
12
14
|
import { insertBlockTypesWithAnalytics } from '../block-type/commands';
|
|
13
15
|
import { startImageUpload } from '../image-upload/pm-plugins/commands';
|
|
14
|
-
import { pluginKey as typeAheadPluginKey } from '../type-ahead/pm-plugins/main';
|
|
15
16
|
import { INPUT_METHOD } from '../analytics';
|
|
16
17
|
import { stateKey as imageUploadStateKey } from '../image-upload/pm-plugins/plugin-key';
|
|
17
18
|
import { pluginKey as dateStateKey } from '../date/pm-plugins/plugin-key';
|
|
@@ -77,7 +78,6 @@ const insertBlockPlugin = (options = {}) => ({
|
|
|
77
78
|
layoutState: layoutStateKey
|
|
78
79
|
},
|
|
79
80
|
render: ({
|
|
80
|
-
typeAheadState,
|
|
81
81
|
mentionState,
|
|
82
82
|
blockTypeState,
|
|
83
83
|
mediaState,
|
|
@@ -92,7 +92,7 @@ const insertBlockPlugin = (options = {}) => ({
|
|
|
92
92
|
buttons: buttons,
|
|
93
93
|
isReducedSpacing: isToolbarReducedSpacing,
|
|
94
94
|
isDisabled: disabled,
|
|
95
|
-
isTypeAheadAllowed:
|
|
95
|
+
isTypeAheadAllowed: isTypeAheadAllowed(editorView.state),
|
|
96
96
|
editorView: editorView,
|
|
97
97
|
tableSupported: options.allowTables,
|
|
98
98
|
actionSupported: !!editorView.state.schema.nodes.taskItem,
|
|
@@ -7,14 +7,14 @@ import { Popup } from '@atlaskit/editor-common';
|
|
|
7
7
|
import ToolbarButton from '../../../../ui/ToolbarButton';
|
|
8
8
|
import { Separator, ButtonGroup, Wrapper } from '../../../../ui/styles';
|
|
9
9
|
import { createTable } from '../../../table/commands';
|
|
10
|
-
import { insertDate
|
|
10
|
+
import { insertDate } from '../../../date/actions';
|
|
11
11
|
import { openElementBrowserModal } from '../../../quick-insert/commands';
|
|
12
12
|
import { showPlaceholderFloatingToolbar } from '../../../placeholder-text/actions';
|
|
13
13
|
import { insertLayoutColumnsWithAnalytics } from '../../../layout/actions';
|
|
14
14
|
import { insertTaskDecision } from '../../../tasks-and-decisions/commands';
|
|
15
15
|
import { insertExpand } from '../../../expand/commands';
|
|
16
16
|
import { showLinkToolbar } from '../../../hyperlink/commands';
|
|
17
|
-
import {
|
|
17
|
+
import { createTypeAheadTools } from '../../../type-ahead/api';
|
|
18
18
|
import { updateStatusWithAnalytics } from '../../../status/actions';
|
|
19
19
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD, withAnalytics as commandWithAnalytics } from '../../../analytics';
|
|
20
20
|
import { insertEmoji } from '../../../emoji/commands/insert-emoji';
|
|
@@ -170,7 +170,12 @@ class ToolbarInsertBlock extends React.PureComponent {
|
|
|
170
170
|
const {
|
|
171
171
|
editorView
|
|
172
172
|
} = this.props;
|
|
173
|
-
|
|
173
|
+
|
|
174
|
+
if (!editorView) {
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
createTypeAheadTools(editorView).openMention(inputMethod);
|
|
174
179
|
return true;
|
|
175
180
|
});
|
|
176
181
|
|
|
@@ -194,7 +199,6 @@ class ToolbarInsertBlock extends React.PureComponent {
|
|
|
194
199
|
editorView
|
|
195
200
|
} = this.props;
|
|
196
201
|
insertDate(undefined, inputMethod)(editorView.state, editorView.dispatch);
|
|
197
|
-
openDatePicker()(editorView.state, editorView.dispatch);
|
|
198
202
|
return true;
|
|
199
203
|
});
|
|
200
204
|
|
|
@@ -111,20 +111,26 @@ const listPlugin = () => ({
|
|
|
111
111
|
},
|
|
112
112
|
render: ({
|
|
113
113
|
listState: listState
|
|
114
|
-
}) =>
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
114
|
+
}) => {
|
|
115
|
+
if (!listState) {
|
|
116
|
+
return null;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return /*#__PURE__*/React.createElement(ToolbarLists, {
|
|
120
|
+
isSmall: isSmall,
|
|
121
|
+
isSeparator: true,
|
|
122
|
+
isReducedSpacing: isToolbarReducedSpacing,
|
|
123
|
+
disabled: disabled,
|
|
124
|
+
editorView: editorView,
|
|
125
|
+
popupsMountPoint: popupsMountPoint,
|
|
126
|
+
popupsBoundariesElement: popupsBoundariesElement,
|
|
127
|
+
popupsScrollableElement: popupsScrollableElement,
|
|
128
|
+
bulletListActive: listState.bulletListActive,
|
|
129
|
+
bulletListDisabled: listState.bulletListDisabled,
|
|
130
|
+
orderedListActive: listState.orderedListActive,
|
|
131
|
+
orderedListDisabled: listState.orderedListDisabled
|
|
132
|
+
});
|
|
133
|
+
}
|
|
128
134
|
});
|
|
129
135
|
}
|
|
130
136
|
|
|
@@ -52,20 +52,20 @@ export const insertMacroFromMacroBrowser = (macroProvider, macroNode, isEditing)
|
|
|
52
52
|
tr.setSelection(TextSelection.create(tr.doc, state.selection.anchor));
|
|
53
53
|
} // If any extension is currently selected
|
|
54
54
|
else if (findSelectedNodeOfType([extension, bodiedExtension, inlineExtension])(selection)) {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
55
|
+
tr = replaceSelectedNode(node)(tr); // Replacing selected node doesn't update the selection. `selection.node` still returns the old node
|
|
56
|
+
|
|
57
|
+
tr.setSelection(NodeSelection.create(tr.doc, tr.mapping.map(state.selection.anchor)));
|
|
58
|
+
} // When we loose the selection. This usually happens when Synchrony resets or changes
|
|
59
|
+
// the selection when user is in the middle of updating an extension.
|
|
60
|
+
else if (extensionState.element) {
|
|
61
|
+
const pos = view.posAtDOM(extensionState.element, -1);
|
|
62
|
+
|
|
63
|
+
if (pos > -1) {
|
|
64
|
+
tr = tr.replaceWith(pos, pos + macroNode.nodeSize, node);
|
|
65
|
+
tr.setSelection(Selection.near(tr.doc.resolve(pos)));
|
|
66
|
+
targetSelectionSource = TARGET_SELECTION_SOURCE.HTML_ELEMENT;
|
|
67
|
+
}
|
|
68
|
+
} // Only scroll if we have anything to update, best to avoid surprise scroll
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
if (dispatch && tr.docChanged) {
|
|
@@ -212,6 +212,7 @@ const mediaPlugin = options => ({
|
|
|
212
212
|
}],
|
|
213
213
|
floatingToolbar: (state, intl, providerFactory) => floatingToolbar(state, intl, {
|
|
214
214
|
providerFactory,
|
|
215
|
+
allowMediaInline: options && options.allowMediaInline,
|
|
215
216
|
allowResizing: options && options.allowResizing,
|
|
216
217
|
allowResizingInTables: options && options.allowResizingInTables,
|
|
217
218
|
allowAnnotation: options && options.allowAnnotation,
|
|
@@ -120,6 +120,7 @@ export default class MediaGroup extends React.Component {
|
|
|
120
120
|
onClick: () => {
|
|
121
121
|
setNodeSelection(this.props.view, getNodePos());
|
|
122
122
|
},
|
|
123
|
+
shouldEnableDownloadButton: mediaOptions.enableDownloadButton,
|
|
123
124
|
actions: [{
|
|
124
125
|
handler: disabled ? () => {} : this.mediaPluginState.handleMediaNodeRemoval.bind(null, undefined, getNodePos),
|
|
125
126
|
icon: /*#__PURE__*/React.createElement(EditorCloseIcon, {
|
|
@@ -123,7 +123,7 @@ export class MediaPluginStateImplementation {
|
|
|
123
123
|
allowsUploads
|
|
124
124
|
} = this; // make sure editable DOM node is mounted
|
|
125
125
|
|
|
126
|
-
if (!this.destroyed && view.dom.parentNode) {
|
|
126
|
+
if (!this.destroyed && view && view.dom.parentNode) {
|
|
127
127
|
// make PM plugin aware of the state change to update UI during 'apply' hook
|
|
128
128
|
view.dispatch(view.state.tr.setMeta(stateKey, {
|
|
129
129
|
allowsUploads
|
|
@@ -145,6 +145,23 @@ export class MediaPluginStateImplementation {
|
|
|
145
145
|
|
|
146
146
|
_defineProperty(this, "getMediaOptions", () => this.options);
|
|
147
147
|
|
|
148
|
+
_defineProperty(this, "isMediaSchemaNode", ({
|
|
149
|
+
type
|
|
150
|
+
}) => {
|
|
151
|
+
var _this$mediaOptions;
|
|
152
|
+
|
|
153
|
+
const {
|
|
154
|
+
mediaSingle,
|
|
155
|
+
media
|
|
156
|
+
} = this.view.state.schema.nodes;
|
|
157
|
+
|
|
158
|
+
if ((_this$mediaOptions = this.mediaOptions) !== null && _this$mediaOptions !== void 0 && _this$mediaOptions.allowMediaInline) {
|
|
159
|
+
return type === mediaSingle || type === media;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
return type === mediaSingle;
|
|
163
|
+
});
|
|
164
|
+
|
|
148
165
|
_defineProperty(this, "hasUserAuthProvider", () => !!this.uploadMediaClientConfig && !!this.uploadMediaClientConfig.userAuthProvider);
|
|
149
166
|
|
|
150
167
|
_defineProperty(this, "insertFile", (mediaState, onMediaStateChanged, pickerType) => {
|
|
@@ -411,11 +428,10 @@ export class MediaPluginStateImplementation {
|
|
|
411
428
|
|
|
412
429
|
_defineProperty(this, "selectedMediaContainerNode", () => {
|
|
413
430
|
const {
|
|
414
|
-
selection
|
|
415
|
-
schema
|
|
431
|
+
selection
|
|
416
432
|
} = this.view.state;
|
|
417
433
|
|
|
418
|
-
if (selection instanceof NodeSelection && (selection.node
|
|
434
|
+
if (selection instanceof NodeSelection && this.isMediaSchemaNode(selection.node)) {
|
|
419
435
|
return selection.node;
|
|
420
436
|
}
|
|
421
437
|
|
|
@@ -455,11 +471,8 @@ export class MediaPluginStateImplementation {
|
|
|
455
471
|
updateElement() {
|
|
456
472
|
let newElement;
|
|
457
473
|
const selectedContainer = this.selectedMediaContainerNode();
|
|
458
|
-
const {
|
|
459
|
-
mediaSingle
|
|
460
|
-
} = this.view.state.schema.nodes;
|
|
461
474
|
|
|
462
|
-
if (selectedContainer && selectedContainer
|
|
475
|
+
if (selectedContainer && this.isMediaSchemaNode(selectedContainer)) {
|
|
463
476
|
newElement = this.getDomElement(this.view.domAtPos.bind(this.view));
|
|
464
477
|
}
|
|
465
478
|
|
|
@@ -469,20 +482,22 @@ export class MediaPluginStateImplementation {
|
|
|
469
482
|
}
|
|
470
483
|
|
|
471
484
|
getDomElement(domAtPos) {
|
|
485
|
+
var _this$mediaOptions2;
|
|
486
|
+
|
|
472
487
|
const {
|
|
473
|
-
selection
|
|
474
|
-
schema
|
|
488
|
+
selection
|
|
475
489
|
} = this.view.state;
|
|
476
490
|
|
|
477
491
|
if (!(selection instanceof NodeSelection)) {
|
|
478
492
|
return;
|
|
479
493
|
}
|
|
480
494
|
|
|
481
|
-
if (selection.node
|
|
495
|
+
if (!this.isMediaSchemaNode(selection.node)) {
|
|
482
496
|
return;
|
|
483
497
|
}
|
|
484
498
|
|
|
485
|
-
const
|
|
499
|
+
const position = (_this$mediaOptions2 = this.mediaOptions) !== null && _this$mediaOptions2 !== void 0 && _this$mediaOptions2.allowMediaInline ? selection.from + 1 : selection.from;
|
|
500
|
+
const node = findDomRefAtPos(position, domAtPos);
|
|
486
501
|
|
|
487
502
|
if (node) {
|
|
488
503
|
if (!node.childNodes.length) {
|
|
@@ -2,7 +2,7 @@ import { css } from 'styled-components';
|
|
|
2
2
|
import { mediaSingleSharedStyle, richMediaClassName } from '@atlaskit/editor-common';
|
|
3
3
|
import { akEditorDeleteBorder, akEditorDeleteBackground, akEditorSelectedBorderBoldSize, akEditorMediaResizeHandlerPaddingWide, akEditorMediaResizeHandlerPadding, akEditorSelectedNodeClassName, akEditorDeleteIconColor } from '@atlaskit/editor-shared-styles';
|
|
4
4
|
import { N60, B200 } from '@atlaskit/theme/colors';
|
|
5
|
-
import { fileCardImageViewSelector, inlinePlayerClassName, newFileExperienceClassName } from '@atlaskit/media-card';
|
|
5
|
+
import { fileCardImageViewSelector, fileCardImageViewSelectedSelector, inlinePlayerClassName, newFileExperienceClassName } from '@atlaskit/media-card';
|
|
6
6
|
export const mediaStyles = css`
|
|
7
7
|
.ProseMirror {
|
|
8
8
|
${mediaSingleSharedStyle} & [layout='full-width'] .${richMediaClassName},
|
|
@@ -121,7 +121,12 @@ export const mediaStyles = css`
|
|
|
121
121
|
transition: background-color 0s;
|
|
122
122
|
transition: box-shadow 0s;
|
|
123
123
|
}
|
|
124
|
-
|
|
124
|
+
.mediaGroupView-content-wrap.danger {
|
|
125
|
+
/* Media inline */
|
|
126
|
+
.${fileCardImageViewSelectedSelector}::after {
|
|
127
|
+
border: 1px solid ${akEditorDeleteIconColor};
|
|
128
|
+
}
|
|
129
|
+
}
|
|
125
130
|
/* Danger when nested node or common */
|
|
126
131
|
.danger {
|
|
127
132
|
/* Media single */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import ReactDOM from 'react-dom';
|
|
3
|
+
import { MediaViewer } from '@atlaskit/media-viewer';
|
|
4
|
+
import FilePreviewIcon from '@atlaskit/icon/glyph/editor/file-preview';
|
|
5
|
+
import ToolbarButton from '../../floating-toolbar/ui/Button';
|
|
6
|
+
import { getSelectedMediaContainerNodeAttrs } from './utils';
|
|
7
|
+
export const FilePreviewItem = ({
|
|
8
|
+
mediaPluginState
|
|
9
|
+
}) => {
|
|
10
|
+
const [isMediaViewerVisible, setMediaViewerVisible] = useState(false);
|
|
11
|
+
|
|
12
|
+
const openMediaViewer = () => {
|
|
13
|
+
setMediaViewerVisible(true);
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const onMediaViewerClose = () => {
|
|
17
|
+
setMediaViewerVisible(false);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const renderMediaViewer = () => {
|
|
21
|
+
if (isMediaViewerVisible) {
|
|
22
|
+
const dataSource = {
|
|
23
|
+
list: []
|
|
24
|
+
};
|
|
25
|
+
const selectedNodeAttrs = getSelectedMediaContainerNodeAttrs(mediaPluginState);
|
|
26
|
+
|
|
27
|
+
if (selectedNodeAttrs && mediaPluginState.mediaClientConfig) {
|
|
28
|
+
const {
|
|
29
|
+
id,
|
|
30
|
+
collection = ''
|
|
31
|
+
} = selectedNodeAttrs;
|
|
32
|
+
const identifier = {
|
|
33
|
+
id,
|
|
34
|
+
mediaItemType: 'file',
|
|
35
|
+
collectionName: collection
|
|
36
|
+
};
|
|
37
|
+
return /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(MediaViewer, {
|
|
38
|
+
collectionName: collection,
|
|
39
|
+
dataSource: dataSource,
|
|
40
|
+
mediaClientConfig: mediaPluginState.mediaClientConfig,
|
|
41
|
+
selectedItem: identifier,
|
|
42
|
+
onClose: onMediaViewerClose
|
|
43
|
+
}), document.body);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return null;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
const mediaViewer = renderMediaViewer();
|
|
51
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ToolbarButton, {
|
|
52
|
+
testId: "file-preview-toolbar-button",
|
|
53
|
+
key: "editor.media.card.preview",
|
|
54
|
+
onClick: openMediaViewer,
|
|
55
|
+
icon: /*#__PURE__*/React.createElement(FilePreviewIcon, {
|
|
56
|
+
label: "file preview"
|
|
57
|
+
})
|
|
58
|
+
}), mediaViewer);
|
|
59
|
+
};
|