@atlaskit/editor-plugin-media 0.2.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/dist/cjs/commands/captions.js +59 -0
- package/dist/cjs/commands/helpers.js +127 -0
- package/dist/cjs/commands/index.js +24 -0
- package/dist/cjs/commands/linking.js +181 -0
- package/dist/cjs/index.js +8 -1
- package/dist/cjs/media-plugin-options.js +5 -0
- package/dist/cjs/next-plugin-type.js +5 -0
- package/dist/cjs/nodeviews/mediaGroup.js +376 -0
- package/dist/cjs/nodeviews/mediaInline.js +288 -0
- package/dist/cjs/nodeviews/mediaNodeUpdater.js +739 -0
- package/dist/cjs/nodeviews/mediaNodeView/index.js +177 -0
- package/dist/cjs/nodeviews/mediaNodeView/media.js +242 -0
- package/dist/cjs/nodeviews/mediaSingle.js +629 -0
- package/dist/cjs/nodeviews/messages.js +14 -0
- package/dist/cjs/nodeviews/styles.js +46 -0
- package/dist/cjs/nodeviews/types.js +5 -0
- package/dist/cjs/picker-facade.js +192 -0
- package/dist/cjs/plugin.js +293 -0
- package/dist/cjs/pm-plugins/alt-text/actions.js +5 -0
- package/dist/cjs/pm-plugins/alt-text/commands.js +59 -0
- package/dist/cjs/pm-plugins/alt-text/index.js +36 -0
- package/dist/cjs/pm-plugins/alt-text/keymap.js +15 -0
- package/dist/cjs/pm-plugins/alt-text/messages.js +44 -0
- package/dist/cjs/pm-plugins/alt-text/reducer.js +32 -0
- package/dist/cjs/pm-plugins/alt-text/types.js +5 -0
- package/dist/cjs/pm-plugins/alt-text/ui/AltTextEdit.js +209 -0
- package/dist/cjs/pm-plugins/keymap-media-single.js +163 -0
- package/dist/cjs/pm-plugins/keymap.js +88 -0
- package/dist/cjs/pm-plugins/linking/actions.js +13 -0
- package/dist/cjs/pm-plugins/linking/index.js +65 -0
- package/dist/cjs/pm-plugins/linking/keymap.js +14 -0
- package/dist/cjs/pm-plugins/linking/reducer.js +43 -0
- package/dist/cjs/pm-plugins/linking/types.js +5 -0
- package/dist/cjs/pm-plugins/main.js +813 -0
- package/dist/cjs/pm-plugins/media-editor-plugin-factory.js +8 -0
- package/dist/cjs/pm-plugins/mediaTaskManager.js +101 -0
- package/dist/cjs/pm-plugins/plugin-key.js +8 -0
- package/dist/cjs/pm-plugins/types.js +5 -0
- package/dist/cjs/toolbar/alt-text.js +80 -0
- package/dist/cjs/toolbar/commands.js +236 -0
- package/dist/cjs/toolbar/filePreviewItem.js +66 -0
- package/dist/cjs/toolbar/imageBorder.js +20 -0
- package/dist/cjs/toolbar/index.js +523 -0
- package/dist/cjs/toolbar/linking-toolbar-appearance.js +100 -0
- package/dist/cjs/toolbar/linking.js +96 -0
- package/dist/cjs/toolbar/utils.js +110 -0
- package/dist/cjs/ui/CaptionPlaceholder/index.js +27 -0
- package/dist/cjs/ui/CaptionPlaceholder/messages.js +14 -0
- package/dist/cjs/ui/ImageBorder/index.js +226 -0
- package/dist/cjs/ui/ImageBorder/messages.js +49 -0
- package/dist/cjs/ui/ImageBorder/styles.js +52 -0
- package/dist/cjs/ui/Media/DropPlaceholder.js +38 -0
- package/dist/cjs/ui/Media/drop-placeholder-messages.js +14 -0
- package/dist/cjs/ui/MediaLinkingToolbar.js +196 -0
- package/dist/cjs/ui/MediaPicker/BrowserWrapper.js +40 -0
- package/dist/cjs/ui/MediaPicker/ClipboardWrapper.js +39 -0
- package/dist/cjs/ui/MediaPicker/DropzoneWrapper.js +51 -0
- package/dist/cjs/ui/MediaPicker/PickerFacadeProvider.js +151 -0
- package/dist/cjs/ui/MediaPicker/index.js +103 -0
- package/dist/cjs/ui/PixelEntry/constants.js +7 -0
- package/dist/cjs/ui/PixelEntry/index.js +185 -0
- package/dist/cjs/ui/PixelEntry/messages.js +54 -0
- package/dist/cjs/ui/PixelEntry/styles.js +19 -0
- package/dist/cjs/ui/PixelEntry/types.js +5 -0
- package/dist/cjs/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +16 -0
- package/dist/cjs/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +541 -0
- package/dist/cjs/ui/ResizableMediaSingle/index.js +422 -0
- package/dist/cjs/ui/ResizableMediaSingle/styled.js +14 -0
- package/dist/cjs/ui/ResizableMediaSingle/styles.js +17 -0
- package/dist/cjs/ui/ResizableMediaSingle/types.js +5 -0
- package/dist/cjs/ui/ToolbarMedia/index.js +42 -0
- package/dist/cjs/ui/ToolbarMedia/toolbar-media-messages.js +14 -0
- package/dist/cjs/ui/media-linking-toolbar-messages.js +14 -0
- package/dist/cjs/utils/analytics.js +53 -0
- package/dist/cjs/utils/check-media-type.js +56 -0
- package/dist/cjs/utils/current-media-node.js +41 -0
- package/dist/cjs/utils/is-image.js +9 -0
- package/dist/cjs/utils/media-common.js +181 -0
- package/dist/cjs/utils/media-files.js +297 -0
- package/dist/cjs/utils/media-single.js +181 -0
- package/dist/es2019/commands/captions.js +47 -0
- package/dist/es2019/commands/helpers.js +113 -0
- package/dist/es2019/commands/index.js +1 -0
- package/dist/es2019/commands/linking.js +169 -0
- package/dist/es2019/index.js +1 -1
- package/dist/es2019/media-plugin-options.js +1 -0
- package/dist/es2019/next-plugin-type.js +1 -0
- package/dist/es2019/nodeviews/mediaGroup.js +314 -0
- package/dist/es2019/nodeviews/mediaInline.js +201 -0
- package/dist/es2019/nodeviews/mediaNodeUpdater.js +384 -0
- package/dist/es2019/nodeviews/mediaNodeView/index.js +149 -0
- package/dist/es2019/nodeviews/mediaNodeView/media.js +182 -0
- package/dist/es2019/nodeviews/mediaSingle.js +511 -0
- package/dist/es2019/nodeviews/messages.js +8 -0
- package/dist/es2019/nodeviews/styles.js +46 -0
- package/dist/es2019/nodeviews/types.js +1 -0
- package/dist/es2019/picker-facade.js +146 -0
- package/dist/es2019/plugin.js +284 -0
- package/dist/es2019/pm-plugins/alt-text/actions.js +1 -0
- package/dist/es2019/pm-plugins/alt-text/commands.js +42 -0
- package/dist/es2019/pm-plugins/alt-text/index.js +33 -0
- package/dist/es2019/pm-plugins/alt-text/keymap.js +9 -0
- package/dist/es2019/pm-plugins/alt-text/messages.js +38 -0
- package/dist/es2019/pm-plugins/alt-text/reducer.js +26 -0
- package/dist/es2019/pm-plugins/alt-text/types.js +1 -0
- package/dist/es2019/pm-plugins/alt-text/ui/AltTextEdit.js +228 -0
- package/dist/es2019/pm-plugins/keymap-media-single.js +172 -0
- package/dist/es2019/pm-plugins/keymap.js +84 -0
- package/dist/es2019/pm-plugins/linking/actions.js +7 -0
- package/dist/es2019/pm-plugins/linking/index.js +56 -0
- package/dist/es2019/pm-plugins/linking/keymap.js +8 -0
- package/dist/es2019/pm-plugins/linking/reducer.js +37 -0
- package/dist/es2019/pm-plugins/linking/types.js +1 -0
- package/dist/es2019/pm-plugins/main.js +695 -0
- package/dist/es2019/pm-plugins/media-editor-plugin-factory.js +2 -0
- package/dist/es2019/pm-plugins/mediaTaskManager.js +64 -0
- package/dist/es2019/pm-plugins/plugin-key.js +2 -0
- package/dist/es2019/pm-plugins/types.js +1 -0
- package/dist/es2019/toolbar/alt-text.js +72 -0
- package/dist/es2019/toolbar/commands.js +212 -0
- package/dist/es2019/toolbar/filePreviewItem.js +54 -0
- package/dist/es2019/toolbar/imageBorder.js +15 -0
- package/dist/es2019/toolbar/index.js +538 -0
- package/dist/es2019/toolbar/linking-toolbar-appearance.js +90 -0
- package/dist/es2019/toolbar/linking.js +98 -0
- package/dist/es2019/toolbar/utils.js +86 -0
- package/dist/es2019/ui/CaptionPlaceholder/index.js +25 -0
- package/dist/es2019/ui/CaptionPlaceholder/messages.js +8 -0
- package/dist/es2019/ui/ImageBorder/index.js +213 -0
- package/dist/es2019/ui/ImageBorder/messages.js +43 -0
- package/dist/es2019/ui/ImageBorder/styles.js +126 -0
- package/dist/es2019/ui/Media/DropPlaceholder.js +47 -0
- package/dist/es2019/ui/Media/drop-placeholder-messages.js +8 -0
- package/dist/es2019/ui/MediaLinkingToolbar.js +190 -0
- package/dist/es2019/ui/MediaPicker/BrowserWrapper.js +31 -0
- package/dist/es2019/ui/MediaPicker/ClipboardWrapper.js +32 -0
- package/dist/es2019/ui/MediaPicker/DropzoneWrapper.js +42 -0
- package/dist/es2019/ui/MediaPicker/PickerFacadeProvider.js +85 -0
- package/dist/es2019/ui/MediaPicker/index.js +82 -0
- package/dist/es2019/ui/PixelEntry/constants.js +1 -0
- package/dist/es2019/ui/PixelEntry/index.js +170 -0
- package/dist/es2019/ui/PixelEntry/messages.js +48 -0
- package/dist/es2019/ui/PixelEntry/styles.js +51 -0
- package/dist/es2019/ui/PixelEntry/types.js +1 -0
- package/dist/es2019/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +9 -0
- package/dist/es2019/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +454 -0
- package/dist/es2019/ui/ResizableMediaSingle/index.js +344 -0
- package/dist/es2019/ui/ResizableMediaSingle/styled.js +9 -0
- package/dist/es2019/ui/ResizableMediaSingle/styles.js +14 -0
- package/dist/es2019/ui/ResizableMediaSingle/types.js +1 -0
- package/dist/es2019/ui/ToolbarMedia/index.js +37 -0
- package/dist/es2019/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
- package/dist/es2019/ui/media-linking-toolbar-messages.js +8 -0
- package/dist/es2019/utils/analytics.js +51 -0
- package/dist/es2019/utils/check-media-type.js +19 -0
- package/dist/es2019/utils/current-media-node.js +35 -0
- package/dist/es2019/utils/is-image.js +3 -0
- package/dist/es2019/utils/media-common.js +189 -0
- package/dist/es2019/utils/media-files.js +321 -0
- package/dist/es2019/utils/media-single.js +176 -0
- package/dist/esm/commands/captions.js +53 -0
- package/dist/esm/commands/helpers.js +120 -0
- package/dist/esm/commands/index.js +1 -0
- package/dist/esm/commands/linking.js +174 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/media-plugin-options.js +1 -0
- package/dist/esm/next-plugin-type.js +1 -0
- package/dist/esm/nodeviews/mediaGroup.js +369 -0
- package/dist/esm/nodeviews/mediaInline.js +278 -0
- package/dist/esm/nodeviews/mediaNodeUpdater.js +732 -0
- package/dist/esm/nodeviews/mediaNodeView/index.js +170 -0
- package/dist/esm/nodeviews/mediaNodeView/media.js +233 -0
- package/dist/esm/nodeviews/mediaSingle.js +622 -0
- package/dist/esm/nodeviews/messages.js +8 -0
- package/dist/esm/nodeviews/styles.js +39 -0
- package/dist/esm/nodeviews/types.js +1 -0
- package/dist/esm/picker-facade.js +186 -0
- package/dist/esm/plugin.js +282 -0
- package/dist/esm/pm-plugins/alt-text/actions.js +1 -0
- package/dist/esm/pm-plugins/alt-text/commands.js +52 -0
- package/dist/esm/pm-plugins/alt-text/index.js +31 -0
- package/dist/esm/pm-plugins/alt-text/keymap.js +9 -0
- package/dist/esm/pm-plugins/alt-text/messages.js +38 -0
- package/dist/esm/pm-plugins/alt-text/reducer.js +25 -0
- package/dist/esm/pm-plugins/alt-text/types.js +1 -0
- package/dist/esm/pm-plugins/alt-text/ui/AltTextEdit.js +206 -0
- package/dist/esm/pm-plugins/keymap-media-single.js +158 -0
- package/dist/esm/pm-plugins/keymap.js +81 -0
- package/dist/esm/pm-plugins/linking/actions.js +7 -0
- package/dist/esm/pm-plugins/linking/index.js +59 -0
- package/dist/esm/pm-plugins/linking/keymap.js +8 -0
- package/dist/esm/pm-plugins/linking/reducer.js +36 -0
- package/dist/esm/pm-plugins/linking/types.js +1 -0
- package/dist/esm/pm-plugins/main.js +798 -0
- package/dist/esm/pm-plugins/media-editor-plugin-factory.js +2 -0
- package/dist/esm/pm-plugins/mediaTaskManager.js +94 -0
- package/dist/esm/pm-plugins/plugin-key.js +2 -0
- package/dist/esm/pm-plugins/types.js +1 -0
- package/dist/esm/toolbar/alt-text.js +70 -0
- package/dist/esm/toolbar/commands.js +229 -0
- package/dist/esm/toolbar/filePreviewItem.js +56 -0
- package/dist/esm/toolbar/imageBorder.js +14 -0
- package/dist/esm/toolbar/index.js +513 -0
- package/dist/esm/toolbar/linking-toolbar-appearance.js +91 -0
- package/dist/esm/toolbar/linking.js +88 -0
- package/dist/esm/toolbar/utils.js +103 -0
- package/dist/esm/ui/CaptionPlaceholder/index.js +20 -0
- package/dist/esm/ui/CaptionPlaceholder/messages.js +8 -0
- package/dist/esm/ui/ImageBorder/index.js +218 -0
- package/dist/esm/ui/ImageBorder/messages.js +43 -0
- package/dist/esm/ui/ImageBorder/styles.js +42 -0
- package/dist/esm/ui/Media/DropPlaceholder.js +31 -0
- package/dist/esm/ui/Media/drop-placeholder-messages.js +8 -0
- package/dist/esm/ui/MediaLinkingToolbar.js +188 -0
- package/dist/esm/ui/MediaPicker/BrowserWrapper.js +33 -0
- package/dist/esm/ui/MediaPicker/ClipboardWrapper.js +32 -0
- package/dist/esm/ui/MediaPicker/DropzoneWrapper.js +44 -0
- package/dist/esm/ui/MediaPicker/PickerFacadeProvider.js +145 -0
- package/dist/esm/ui/MediaPicker/index.js +96 -0
- package/dist/esm/ui/PixelEntry/constants.js +1 -0
- package/dist/esm/ui/PixelEntry/index.js +174 -0
- package/dist/esm/ui/PixelEntry/messages.js +48 -0
- package/dist/esm/ui/PixelEntry/styles.js +12 -0
- package/dist/esm/ui/PixelEntry/types.js +1 -0
- package/dist/esm/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +9 -0
- package/dist/esm/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +535 -0
- package/dist/esm/ui/ResizableMediaSingle/index.js +417 -0
- package/dist/esm/ui/ResizableMediaSingle/styled.js +7 -0
- package/dist/esm/ui/ResizableMediaSingle/styles.js +7 -0
- package/dist/esm/ui/ResizableMediaSingle/types.js +1 -0
- package/dist/esm/ui/ToolbarMedia/index.js +35 -0
- package/dist/esm/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
- package/dist/esm/ui/media-linking-toolbar-messages.js +8 -0
- package/dist/esm/utils/analytics.js +47 -0
- package/dist/esm/utils/check-media-type.js +49 -0
- package/dist/esm/utils/current-media-node.js +35 -0
- package/dist/esm/utils/is-image.js +3 -0
- package/dist/esm/utils/media-common.js +175 -0
- package/dist/esm/utils/media-files.js +291 -0
- package/dist/esm/utils/media-single.js +172 -0
- package/dist/types/commands/captions.d.ts +5 -0
- package/dist/types/commands/helpers.d.ts +15 -0
- package/dist/types/commands/index.d.ts +1 -0
- package/dist/types/commands/linking.d.ts +9 -0
- package/dist/types/index.d.ts +2 -1
- package/dist/types/media-plugin-options.d.ts +17 -0
- package/dist/types/next-plugin-type.d.ts +33 -0
- package/dist/types/nodeviews/__mocks__/mediaNodeUpdater.d.ts +24 -0
- package/dist/types/nodeviews/mediaGroup.d.ts +33 -0
- package/dist/types/nodeviews/mediaInline.d.ts +50 -0
- package/dist/types/nodeviews/mediaNodeUpdater.d.ts +45 -0
- package/dist/types/nodeviews/mediaNodeView/index.d.ts +28 -0
- package/dist/types/nodeviews/mediaNodeView/media.d.ts +44 -0
- package/dist/types/nodeviews/mediaSingle.d.ts +62 -0
- package/dist/types/nodeviews/messages.d.ts +7 -0
- package/dist/types/nodeviews/styles.d.ts +16 -0
- package/dist/types/nodeviews/types.d.ts +42 -0
- package/dist/types/picker-facade.d.ts +44 -0
- package/dist/types/plugin.d.ts +7 -0
- package/dist/types/pm-plugins/alt-text/actions.d.ts +10 -0
- package/dist/types/pm-plugins/alt-text/commands.d.ts +4 -0
- package/dist/types/pm-plugins/alt-text/index.d.ts +7 -0
- package/dist/types/pm-plugins/alt-text/keymap.d.ts +4 -0
- package/dist/types/pm-plugins/alt-text/messages.d.ts +37 -0
- package/dist/types/pm-plugins/alt-text/reducer.d.ts +4 -0
- package/dist/types/pm-plugins/alt-text/types.d.ts +3 -0
- package/dist/types/pm-plugins/alt-text/ui/AltTextEdit.d.ts +41 -0
- package/dist/types/pm-plugins/keymap-media-single.d.ts +3 -0
- package/dist/types/pm-plugins/keymap.d.ts +6 -0
- package/dist/types/pm-plugins/linking/actions.d.ts +20 -0
- package/dist/types/pm-plugins/linking/index.d.ts +10 -0
- package/dist/types/pm-plugins/linking/keymap.d.ts +3 -0
- package/dist/types/pm-plugins/linking/reducer.d.ts +4 -0
- package/dist/types/pm-plugins/linking/types.d.ts +12 -0
- package/dist/types/pm-plugins/main.d.ts +120 -0
- package/dist/types/pm-plugins/media-editor-plugin-factory.d.ts +3 -0
- package/dist/types/pm-plugins/mediaTaskManager.d.ts +9 -0
- package/dist/types/pm-plugins/plugin-key.d.ts +3 -0
- package/dist/types/pm-plugins/types.d.ts +65 -0
- package/dist/types/toolbar/alt-text.d.ts +13 -0
- package/dist/types/toolbar/commands.d.ts +12 -0
- package/dist/types/toolbar/filePreviewItem.d.ts +9 -0
- package/dist/types/toolbar/imageBorder.d.ts +2 -0
- package/dist/types/toolbar/index.d.ts +6 -0
- package/dist/types/toolbar/linking-toolbar-appearance.d.ts +14 -0
- package/dist/types/toolbar/linking.d.ts +10 -0
- package/dist/types/toolbar/utils.d.ts +11 -0
- package/dist/types/types.d.ts +2 -1
- package/dist/types/ui/CaptionPlaceholder/index.d.ts +6 -0
- package/dist/types/ui/CaptionPlaceholder/messages.d.ts +7 -0
- package/dist/types/ui/ImageBorder/index.d.ts +11 -0
- package/dist/types/ui/ImageBorder/messages.d.ts +42 -0
- package/dist/types/ui/ImageBorder/styles.d.ts +15 -0
- package/dist/types/ui/Media/DropPlaceholder.d.ts +8 -0
- package/dist/types/ui/Media/drop-placeholder-messages.d.ts +7 -0
- package/dist/types/ui/MediaLinkingToolbar.d.ts +35 -0
- package/dist/types/ui/MediaPicker/BrowserWrapper.d.ts +11 -0
- package/dist/types/ui/MediaPicker/ClipboardWrapper.d.ts +10 -0
- package/dist/types/ui/MediaPicker/DropzoneWrapper.d.ts +13 -0
- package/dist/types/ui/MediaPicker/PickerFacadeProvider.d.ts +28 -0
- package/dist/types/ui/MediaPicker/index.d.ts +23 -0
- package/dist/types/ui/PixelEntry/constants.d.ts +1 -0
- package/dist/types/ui/PixelEntry/index.d.ts +8 -0
- package/dist/types/ui/PixelEntry/messages.d.ts +47 -0
- package/dist/types/ui/PixelEntry/styles.d.ts +8 -0
- package/dist/types/ui/PixelEntry/types.d.ts +58 -0
- package/dist/types/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.d.ts +3 -0
- package/dist/types/ui/ResizableMediaSingle/ResizableMediaSingleNext.d.ts +59 -0
- package/dist/types/ui/ResizableMediaSingle/index.d.ts +45 -0
- package/dist/types/ui/ResizableMediaSingle/styled.d.ts +2 -0
- package/dist/types/ui/ResizableMediaSingle/styles.d.ts +1 -0
- package/dist/types/ui/ResizableMediaSingle/types.d.ts +27 -0
- package/dist/types/ui/ToolbarMedia/index.d.ts +13 -0
- package/dist/types/ui/ToolbarMedia/toolbar-media-messages.d.ts +7 -0
- package/dist/types/ui/media-linking-toolbar-messages.d.ts +7 -0
- package/dist/types/utils/analytics.d.ts +3 -0
- package/dist/types/utils/check-media-type.d.ts +4 -0
- package/dist/types/utils/current-media-node.d.ts +9 -0
- package/dist/types/utils/is-image.d.ts +1 -0
- package/dist/types/utils/media-common.d.ts +20 -0
- package/dist/types/utils/media-files.d.ts +30 -0
- package/dist/types/utils/media-single.d.ts +20 -0
- package/package.json +32 -20
- package/report.api.md +430 -0
- package/dist/types-ts4.5/index.d.ts +0 -1
- package/dist/types-ts4.5/types.d.ts +0 -118
- package/tmp/api-report-tmp.d.ts +0 -9
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.ReactMediaNode = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
11
|
+
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
|
+
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
18
|
+
var _mediaSingle = require("@atlaskit/editor-common/media-single");
|
|
19
|
+
var _providerFactory = require("@atlaskit/editor-common/provider-factory");
|
|
20
|
+
var _selectionBasedNodeView = require("@atlaskit/editor-common/selection-based-node-view");
|
|
21
|
+
var _mediaClient = require("@atlaskit/media-client");
|
|
22
|
+
var _mediaCommon = require("../../utils/media-common");
|
|
23
|
+
var _media = _interopRequireDefault(require("./media"));
|
|
24
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
25
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
26
|
+
var MediaNodeWithProviders = function MediaNodeWithProviders(_ref) {
|
|
27
|
+
var pluginInjectionApi = _ref.pluginInjectionApi,
|
|
28
|
+
innerComponent = _ref.innerComponent;
|
|
29
|
+
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(pluginInjectionApi, ['width']),
|
|
30
|
+
widthState = _useSharedPluginState.widthState;
|
|
31
|
+
return innerComponent({
|
|
32
|
+
width: widthState
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
function isMediaDecorationSpec(decoration) {
|
|
36
|
+
return decoration.spec.type !== undefined && decoration.spec.selected !== undefined;
|
|
37
|
+
}
|
|
38
|
+
var MediaNodeView = /*#__PURE__*/function (_SelectionBasedNodeVi) {
|
|
39
|
+
(0, _inherits2.default)(MediaNodeView, _SelectionBasedNodeVi);
|
|
40
|
+
var _super = _createSuper(MediaNodeView);
|
|
41
|
+
function MediaNodeView() {
|
|
42
|
+
var _this;
|
|
43
|
+
(0, _classCallCheck2.default)(this, MediaNodeView);
|
|
44
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
45
|
+
args[_key] = arguments[_key];
|
|
46
|
+
}
|
|
47
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
48
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isSelected", false);
|
|
49
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderMediaNodeWithState", function (mediaProvider, contextIdentifierProvider) {
|
|
50
|
+
return function (_ref2) {
|
|
51
|
+
var editorWidth = _ref2.width;
|
|
52
|
+
var getPos = _this.getPos;
|
|
53
|
+
var mediaOptions = _this.reactComponentProps.mediaOptions;
|
|
54
|
+
var attrs = _this.getAttrs();
|
|
55
|
+
var url = attrs.type === 'external' ? attrs.url : '';
|
|
56
|
+
var width = attrs.width,
|
|
57
|
+
height = attrs.height;
|
|
58
|
+
if (_this.isMediaBlobUrl()) {
|
|
59
|
+
var urlAttrs = (0, _mediaClient.getAttrsFromUrl)(url);
|
|
60
|
+
if (urlAttrs) {
|
|
61
|
+
var urlWidth = urlAttrs.width,
|
|
62
|
+
urlHeight = urlAttrs.height;
|
|
63
|
+
width = width || urlWidth;
|
|
64
|
+
height = height || urlHeight;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
width = width || _mediaSingle.DEFAULT_IMAGE_WIDTH;
|
|
68
|
+
height = height || _mediaSingle.DEFAULT_IMAGE_HEIGHT;
|
|
69
|
+
var maxDimensions = {
|
|
70
|
+
width: "".concat(editorWidth.width, "px"),
|
|
71
|
+
height: "".concat(height / width * editorWidth.width, "px")
|
|
72
|
+
};
|
|
73
|
+
var originalDimensions = {
|
|
74
|
+
width: width,
|
|
75
|
+
height: height
|
|
76
|
+
};
|
|
77
|
+
return /*#__PURE__*/_react.default.createElement(_media.default, {
|
|
78
|
+
view: _this.view,
|
|
79
|
+
node: _this.node,
|
|
80
|
+
getPos: getPos,
|
|
81
|
+
selected: _this.nodeInsideSelection(),
|
|
82
|
+
originalDimensions: originalDimensions,
|
|
83
|
+
maxDimensions: maxDimensions,
|
|
84
|
+
url: url,
|
|
85
|
+
mediaProvider: mediaProvider,
|
|
86
|
+
contextIdentifierProvider: contextIdentifierProvider,
|
|
87
|
+
mediaOptions: mediaOptions
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
});
|
|
91
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderMediaNodeWithProviders", function (_ref3) {
|
|
92
|
+
var mediaProvider = _ref3.mediaProvider,
|
|
93
|
+
contextIdentifierProvider = _ref3.contextIdentifierProvider;
|
|
94
|
+
var pluginInjectionApi = _this.reactComponentProps.pluginInjectionApi;
|
|
95
|
+
return /*#__PURE__*/_react.default.createElement(MediaNodeWithProviders, {
|
|
96
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
97
|
+
innerComponent: _this.renderMediaNodeWithState(mediaProvider, contextIdentifierProvider)
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
return _this;
|
|
101
|
+
}
|
|
102
|
+
(0, _createClass2.default)(MediaNodeView, [{
|
|
103
|
+
key: "createDomRef",
|
|
104
|
+
value: function createDomRef() {
|
|
105
|
+
var domRef = document.createElement('div');
|
|
106
|
+
if (this.reactComponentProps.mediaOptions && this.reactComponentProps.mediaOptions.allowMediaSingleEditable) {
|
|
107
|
+
// workaround Chrome bug in https://product-fabric.atlassian.net/browse/ED-5379
|
|
108
|
+
// see also: https://github.com/ProseMirror/prosemirror/issues/884
|
|
109
|
+
domRef.contentEditable = 'true';
|
|
110
|
+
}
|
|
111
|
+
return domRef;
|
|
112
|
+
}
|
|
113
|
+
}, {
|
|
114
|
+
key: "viewShouldUpdate",
|
|
115
|
+
value: function viewShouldUpdate(nextNode, decorations) {
|
|
116
|
+
var hasMediaNodeSelectedDecoration = decorations.some(function (decoration) {
|
|
117
|
+
return isMediaDecorationSpec(decoration) && decoration.spec.type === 'media' && decoration.spec.selected;
|
|
118
|
+
});
|
|
119
|
+
if (this.isSelected !== hasMediaNodeSelectedDecoration) {
|
|
120
|
+
this.isSelected = hasMediaNodeSelectedDecoration;
|
|
121
|
+
return true;
|
|
122
|
+
}
|
|
123
|
+
if (this.node.attrs !== nextNode.attrs) {
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
return (0, _get2.default)((0, _getPrototypeOf2.default)(MediaNodeView.prototype), "viewShouldUpdate", this).call(this, nextNode, decorations);
|
|
127
|
+
}
|
|
128
|
+
}, {
|
|
129
|
+
key: "stopEvent",
|
|
130
|
+
value: function stopEvent(event) {
|
|
131
|
+
// Don't trap right click events on media node
|
|
132
|
+
if (['mousedown', 'contextmenu'].indexOf(event.type) !== -1) {
|
|
133
|
+
var mouseEvent = event;
|
|
134
|
+
if (mouseEvent.button === 2) {
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
}, {
|
|
141
|
+
key: "getAttrs",
|
|
142
|
+
value: function getAttrs() {
|
|
143
|
+
var attrs = this.node.attrs;
|
|
144
|
+
return attrs;
|
|
145
|
+
}
|
|
146
|
+
}, {
|
|
147
|
+
key: "isMediaBlobUrl",
|
|
148
|
+
value: function isMediaBlobUrl() {
|
|
149
|
+
var attrs = this.getAttrs();
|
|
150
|
+
return (0, _mediaCommon.isMediaBlobUrlFromAttrs)(attrs);
|
|
151
|
+
}
|
|
152
|
+
}, {
|
|
153
|
+
key: "render",
|
|
154
|
+
value: function render() {
|
|
155
|
+
var providerFactory = this.reactComponentProps.providerFactory;
|
|
156
|
+
return /*#__PURE__*/_react.default.createElement(_providerFactory.WithProviders, {
|
|
157
|
+
providers: ['mediaProvider', 'contextIdentifierProvider'],
|
|
158
|
+
providerFactory: providerFactory,
|
|
159
|
+
renderNode: this.renderMediaNodeWithProviders
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
}]);
|
|
163
|
+
return MediaNodeView;
|
|
164
|
+
}(_selectionBasedNodeView.SelectionBasedNodeView);
|
|
165
|
+
var ReactMediaNode = exports.ReactMediaNode = function ReactMediaNode(portalProviderAPI, eventDispatcher, providerFactory) {
|
|
166
|
+
var mediaOptions = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
167
|
+
var pluginInjectionApi = arguments.length > 4 ? arguments[4] : undefined;
|
|
168
|
+
return function (node, view, getPos) {
|
|
169
|
+
var hasIntlContext = true;
|
|
170
|
+
return new MediaNodeView(node, view, getPos, portalProviderAPI, eventDispatcher, {
|
|
171
|
+
eventDispatcher: eventDispatcher,
|
|
172
|
+
providerFactory: providerFactory,
|
|
173
|
+
mediaOptions: mediaOptions,
|
|
174
|
+
pluginInjectionApi: pluginInjectionApi
|
|
175
|
+
}, undefined, undefined, undefined, hasIntlContext).init();
|
|
176
|
+
};
|
|
177
|
+
};
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.MediaNode = exports.MEDIA_HEIGHT = exports.FILE_WIDTH = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
16
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
17
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
var _analyticsNamespacedContext = require("@atlaskit/analytics-namespaced-context");
|
|
20
|
+
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
21
|
+
var _utils = require("@atlaskit/editor-common/utils");
|
|
22
|
+
var _cellSelection = require("@atlaskit/editor-tables/cell-selection");
|
|
23
|
+
var _mediaCard = require("@atlaskit/media-card");
|
|
24
|
+
var _pluginKey = require("../../pm-plugins/plugin-key");
|
|
25
|
+
var _styles = require("../styles");
|
|
26
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
28
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
29
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
30
|
+
// This is being used by DropPlaceholder now
|
|
31
|
+
var MEDIA_HEIGHT = exports.MEDIA_HEIGHT = 125;
|
|
32
|
+
var FILE_WIDTH = exports.FILE_WIDTH = 156;
|
|
33
|
+
// eslint-disable-next-line @repo/internal/react/no-class-components
|
|
34
|
+
var MediaNode = exports.MediaNode = /*#__PURE__*/function (_Component) {
|
|
35
|
+
(0, _inherits2.default)(MediaNode, _Component);
|
|
36
|
+
var _super = _createSuper(MediaNode);
|
|
37
|
+
function MediaNode(_props) {
|
|
38
|
+
var _this;
|
|
39
|
+
(0, _classCallCheck2.default)(this, MediaNode);
|
|
40
|
+
_this = _super.call(this, _props);
|
|
41
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {});
|
|
42
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setViewMediaClientConfig", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
43
|
+
var mediaProvider, viewMediaClientConfig;
|
|
44
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
45
|
+
while (1) switch (_context.prev = _context.next) {
|
|
46
|
+
case 0:
|
|
47
|
+
_context.next = 2;
|
|
48
|
+
return _this.props.mediaProvider;
|
|
49
|
+
case 2:
|
|
50
|
+
mediaProvider = _context.sent;
|
|
51
|
+
if (mediaProvider) {
|
|
52
|
+
viewMediaClientConfig = mediaProvider.viewMediaClientConfig;
|
|
53
|
+
_this.setState({
|
|
54
|
+
viewMediaClientConfig: viewMediaClientConfig
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
case 4:
|
|
58
|
+
case "end":
|
|
59
|
+
return _context.stop();
|
|
60
|
+
}
|
|
61
|
+
}, _callee);
|
|
62
|
+
})));
|
|
63
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selectMediaSingleFromCard", function (_ref2) {
|
|
64
|
+
var event = _ref2.event;
|
|
65
|
+
_this.selectMediaSingle(event);
|
|
66
|
+
});
|
|
67
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selectMediaSingle", function (event) {
|
|
68
|
+
var propPos = _this.props.getPos();
|
|
69
|
+
if (typeof propPos !== 'number') {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// We need to call "stopPropagation" here in order to prevent the browser from navigating to
|
|
74
|
+
// another URL if the media node is wrapped in a link mark.
|
|
75
|
+
event.stopPropagation();
|
|
76
|
+
var state = _this.props.view.state;
|
|
77
|
+
if (event.shiftKey) {
|
|
78
|
+
// don't select text if there is current selection in a table (as this would override selected cells)
|
|
79
|
+
if (state.selection instanceof _cellSelection.CellSelection) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
(0, _utils.setTextSelection)(_this.props.view, state.selection.from < propPos ? state.selection.from : propPos - 1,
|
|
83
|
+
// + 3 needed for offset of the media inside mediaSingle and cursor to make whole mediaSingle selected
|
|
84
|
+
state.selection.to > propPos ? state.selection.to : propPos + 2);
|
|
85
|
+
} else {
|
|
86
|
+
(0, _utils.setNodeSelection)(_this.props.view, propPos - 1);
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onFullscreenChange", function (fullscreen) {
|
|
90
|
+
var _this$mediaPluginStat;
|
|
91
|
+
(_this$mediaPluginStat = _this.mediaPluginState) === null || _this$mediaPluginStat === void 0 || _this$mediaPluginStat.updateAndDispatch({
|
|
92
|
+
isFullscreen: fullscreen
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleNewNode", function (props) {
|
|
96
|
+
var _this$mediaPluginStat2;
|
|
97
|
+
var node = props.node;
|
|
98
|
+
(_this$mediaPluginStat2 = _this.mediaPluginState) === null || _this$mediaPluginStat2 === void 0 || _this$mediaPluginStat2.handleMediaNodeMount(node, function () {
|
|
99
|
+
return _this.props.getPos();
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
var view = _this.props.view;
|
|
103
|
+
_this.mediaPluginState = _pluginKey.stateKey.getState(view.state);
|
|
104
|
+
return _this;
|
|
105
|
+
}
|
|
106
|
+
(0, _createClass2.default)(MediaNode, [{
|
|
107
|
+
key: "shouldComponentUpdate",
|
|
108
|
+
value: function shouldComponentUpdate(nextProps, nextState) {
|
|
109
|
+
var hasNewViewMediaClientConfig = !this.state.viewMediaClientConfig && nextState.viewMediaClientConfig;
|
|
110
|
+
if (this.props.selected !== nextProps.selected || this.props.node.attrs.id !== nextProps.node.attrs.id || this.props.node.attrs.collection !== nextProps.node.attrs.collection || this.props.maxDimensions.height !== nextProps.maxDimensions.height || this.props.maxDimensions.width !== nextProps.maxDimensions.width || this.props.contextIdentifierProvider !== nextProps.contextIdentifierProvider || this.props.isLoading !== nextProps.isLoading || this.props.mediaProvider !== nextProps.mediaProvider || hasNewViewMediaClientConfig) {
|
|
111
|
+
return true;
|
|
112
|
+
}
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
}, {
|
|
116
|
+
key: "componentDidMount",
|
|
117
|
+
value: function () {
|
|
118
|
+
var _componentDidMount = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
119
|
+
var contextIdentifierProvider;
|
|
120
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
121
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
122
|
+
case 0:
|
|
123
|
+
this.handleNewNode(this.props);
|
|
124
|
+
contextIdentifierProvider = this.props.contextIdentifierProvider;
|
|
125
|
+
_context2.t0 = this;
|
|
126
|
+
_context2.next = 5;
|
|
127
|
+
return contextIdentifierProvider;
|
|
128
|
+
case 5:
|
|
129
|
+
_context2.t1 = _context2.sent;
|
|
130
|
+
_context2.t2 = {
|
|
131
|
+
contextIdentifierProvider: _context2.t1
|
|
132
|
+
};
|
|
133
|
+
_context2.t0.setState.call(_context2.t0, _context2.t2);
|
|
134
|
+
_context2.next = 10;
|
|
135
|
+
return this.setViewMediaClientConfig();
|
|
136
|
+
case 10:
|
|
137
|
+
case "end":
|
|
138
|
+
return _context2.stop();
|
|
139
|
+
}
|
|
140
|
+
}, _callee2, this);
|
|
141
|
+
}));
|
|
142
|
+
function componentDidMount() {
|
|
143
|
+
return _componentDidMount.apply(this, arguments);
|
|
144
|
+
}
|
|
145
|
+
return componentDidMount;
|
|
146
|
+
}()
|
|
147
|
+
}, {
|
|
148
|
+
key: "componentWillUnmount",
|
|
149
|
+
value: function componentWillUnmount() {
|
|
150
|
+
var _this$mediaPluginStat3;
|
|
151
|
+
var node = this.props.node;
|
|
152
|
+
(_this$mediaPluginStat3 = this.mediaPluginState) === null || _this$mediaPluginStat3 === void 0 || _this$mediaPluginStat3.handleMediaNodeUnmount(node);
|
|
153
|
+
}
|
|
154
|
+
}, {
|
|
155
|
+
key: "componentDidUpdate",
|
|
156
|
+
value: function componentDidUpdate(prevProps) {
|
|
157
|
+
var _this$mediaPluginStat5;
|
|
158
|
+
if (prevProps.node.attrs.id !== this.props.node.attrs.id) {
|
|
159
|
+
var _this$mediaPluginStat4;
|
|
160
|
+
(_this$mediaPluginStat4 = this.mediaPluginState) === null || _this$mediaPluginStat4 === void 0 || _this$mediaPluginStat4.handleMediaNodeUnmount(prevProps.node);
|
|
161
|
+
this.handleNewNode(this.props);
|
|
162
|
+
}
|
|
163
|
+
(_this$mediaPluginStat5 = this.mediaPluginState) === null || _this$mediaPluginStat5 === void 0 || _this$mediaPluginStat5.updateElement();
|
|
164
|
+
this.setViewMediaClientConfig();
|
|
165
|
+
}
|
|
166
|
+
}, {
|
|
167
|
+
key: "render",
|
|
168
|
+
value: function render() {
|
|
169
|
+
var _this$props = this.props,
|
|
170
|
+
node = _this$props.node,
|
|
171
|
+
selected = _this$props.selected,
|
|
172
|
+
originalDimensions = _this$props.originalDimensions,
|
|
173
|
+
isLoading = _this$props.isLoading,
|
|
174
|
+
maxDimensions = _this$props.maxDimensions,
|
|
175
|
+
mediaOptions = _this$props.mediaOptions;
|
|
176
|
+
var borderMark = node.marks.find(function (m) {
|
|
177
|
+
return m.type.name === 'border';
|
|
178
|
+
});
|
|
179
|
+
var _this$state = this.state,
|
|
180
|
+
viewMediaClientConfig = _this$state.viewMediaClientConfig,
|
|
181
|
+
contextIdentifierProvider = _this$state.contextIdentifierProvider;
|
|
182
|
+
var _node$attrs = node.attrs,
|
|
183
|
+
id = _node$attrs.id,
|
|
184
|
+
type = _node$attrs.type,
|
|
185
|
+
collection = _node$attrs.collection,
|
|
186
|
+
url = _node$attrs.url,
|
|
187
|
+
alt = _node$attrs.alt;
|
|
188
|
+
if (isLoading || type !== 'external' && !viewMediaClientConfig) {
|
|
189
|
+
return /*#__PURE__*/_react.default.createElement(_styles.MediaCardWrapper, {
|
|
190
|
+
dimensions: originalDimensions
|
|
191
|
+
}, /*#__PURE__*/_react.default.createElement(_mediaCard.CardLoading, null));
|
|
192
|
+
}
|
|
193
|
+
var contextId = contextIdentifierProvider && contextIdentifierProvider.objectId;
|
|
194
|
+
var identifier = type === 'external' ? {
|
|
195
|
+
dataURI: url,
|
|
196
|
+
name: url,
|
|
197
|
+
mediaItemType: 'external-image'
|
|
198
|
+
} : {
|
|
199
|
+
id: id,
|
|
200
|
+
mediaItemType: 'file',
|
|
201
|
+
collectionName: collection
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
// mediaClientConfig is not needed for "external" case. So we have to cheat here.
|
|
205
|
+
// there is a possibility mediaClientConfig will be part of a identifier,
|
|
206
|
+
// so this might be not an issue
|
|
207
|
+
var mediaClientConfig = viewMediaClientConfig || {
|
|
208
|
+
authProvider: function authProvider() {
|
|
209
|
+
return {};
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
return /*#__PURE__*/_react.default.createElement(_styles.MediaCardWrapper, {
|
|
213
|
+
dimensions: originalDimensions,
|
|
214
|
+
onContextMenu: this.selectMediaSingle,
|
|
215
|
+
borderWidth: borderMark === null || borderMark === void 0 ? void 0 : borderMark.attrs.size,
|
|
216
|
+
selected: selected
|
|
217
|
+
}, /*#__PURE__*/_react.default.createElement(_analyticsNext.AnalyticsContext, {
|
|
218
|
+
data: (0, _defineProperty2.default)({}, _analyticsNamespacedContext.MEDIA_CONTEXT, {
|
|
219
|
+
border: !!borderMark
|
|
220
|
+
})
|
|
221
|
+
}, /*#__PURE__*/_react.default.createElement(_mediaCard.Card, {
|
|
222
|
+
mediaClientConfig: mediaClientConfig,
|
|
223
|
+
resizeMode: "stretchy-fit",
|
|
224
|
+
dimensions: maxDimensions,
|
|
225
|
+
originalDimensions: originalDimensions,
|
|
226
|
+
identifier: identifier,
|
|
227
|
+
selectable: true,
|
|
228
|
+
selected: selected,
|
|
229
|
+
disableOverlay: true,
|
|
230
|
+
onFullscreenChange: this.onFullscreenChange,
|
|
231
|
+
onClick: this.selectMediaSingleFromCard,
|
|
232
|
+
useInlinePlayer: mediaOptions && mediaOptions.allowLazyLoading,
|
|
233
|
+
isLazy: mediaOptions && mediaOptions.allowLazyLoading,
|
|
234
|
+
featureFlags: mediaOptions && mediaOptions.featureFlags,
|
|
235
|
+
contextId: contextId,
|
|
236
|
+
alt: alt
|
|
237
|
+
})));
|
|
238
|
+
}
|
|
239
|
+
}]);
|
|
240
|
+
return MediaNode;
|
|
241
|
+
}(_react.Component);
|
|
242
|
+
var _default = exports.default = (0, _utils.withImageLoader)(MediaNode);
|