@atlaskit/editor-plugin-media 3.0.6 → 3.0.8
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 +15 -0
- package/dist/cjs/nodeviews/mediaNodeView/index.js +8 -3
- package/dist/es2019/nodeviews/mediaNodeView/index.js +8 -3
- package/dist/esm/nodeviews/mediaNodeView/index.js +8 -3
- package/dist/types/nodeviews/mediaNodeView/index.d.ts +3 -1
- package/dist/types-ts4.5/nodeviews/mediaNodeView/index.d.ts +3 -1
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-media
|
|
2
2
|
|
|
3
|
+
## 3.0.8
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
|
|
9
|
+
## 3.0.7
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [#159390](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/159390)
|
|
14
|
+
[`cc1d530fb6ed2`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/cc1d530fb6ed2) -
|
|
15
|
+
[ux] [ED-28074] Fix media selection state and remove css-based targeting
|
|
16
|
+
- Updated dependencies
|
|
17
|
+
|
|
3
18
|
## 3.0.6
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
|
@@ -20,6 +20,7 @@ var _providerFactory = require("@atlaskit/editor-common/provider-factory");
|
|
|
20
20
|
var _selectionBasedNodeView = require("@atlaskit/editor-common/selection-based-node-view");
|
|
21
21
|
var _useSharedPluginStateSelector = require("@atlaskit/editor-common/use-shared-plugin-state-selector");
|
|
22
22
|
var _mediaClient = require("@atlaskit/media-client");
|
|
23
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
23
24
|
var _helpers = require("../../pm-plugins/commands/helpers");
|
|
24
25
|
var _mediaCommon = require("../../pm-plugins/utils/media-common");
|
|
25
26
|
var _media = _interopRequireDefault(require("./media"));
|
|
@@ -51,10 +52,12 @@ var MediaNodeWithProviders = function MediaNodeWithProviders(_ref) {
|
|
|
51
52
|
var _useSharedState = useSharedState(pluginInjectionApi),
|
|
52
53
|
mediaProvider = _useSharedState.mediaProvider,
|
|
53
54
|
widthState = _useSharedState.widthState;
|
|
55
|
+
var interactionState = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(pluginInjectionApi, 'interaction.interactionState');
|
|
54
56
|
return innerComponent({
|
|
55
57
|
width: widthState,
|
|
56
58
|
// Remove when platform_editor_usesharedpluginstateselector is cleaned up
|
|
57
|
-
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined
|
|
59
|
+
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined,
|
|
60
|
+
interactionState: interactionState
|
|
58
61
|
});
|
|
59
62
|
};
|
|
60
63
|
function isMediaDecorationSpec(decoration) {
|
|
@@ -89,7 +92,8 @@ var MediaNodeView = /*#__PURE__*/function (_SelectionBasedNodeVi) {
|
|
|
89
92
|
return function (_ref2) {
|
|
90
93
|
var _this$reactComponentP;
|
|
91
94
|
var editorWidth = _ref2.width,
|
|
92
|
-
mediaProvider = _ref2.mediaProvider
|
|
95
|
+
mediaProvider = _ref2.mediaProvider,
|
|
96
|
+
interactionState = _ref2.interactionState;
|
|
93
97
|
var getPos = _this.getPos;
|
|
94
98
|
var mediaOptions = _this.reactComponentProps.mediaOptions;
|
|
95
99
|
var attrs = _this.getAttrs();
|
|
@@ -117,11 +121,12 @@ var MediaNodeView = /*#__PURE__*/function (_SelectionBasedNodeVi) {
|
|
|
117
121
|
width: width,
|
|
118
122
|
height: height
|
|
119
123
|
};
|
|
124
|
+
var isSelectedAndInteracted = _this.nodeInsideSelection() && (!(0, _platformFeatureFlags.fg)('platform_editor_interaction_api_refactor') || interactionState !== 'hasNotHadInteraction');
|
|
120
125
|
return /*#__PURE__*/_react.default.createElement(_media.default, {
|
|
121
126
|
view: _this.view,
|
|
122
127
|
node: _this.node,
|
|
123
128
|
getPos: getPos,
|
|
124
|
-
selected:
|
|
129
|
+
selected: isSelectedAndInteracted,
|
|
125
130
|
originalDimensions: originalDimensions,
|
|
126
131
|
maxDimensions: maxDimensions,
|
|
127
132
|
url: url,
|
|
@@ -6,6 +6,7 @@ import { WithProviders } from '@atlaskit/editor-common/provider-factory';
|
|
|
6
6
|
import { SelectionBasedNodeView } from '@atlaskit/editor-common/selection-based-node-view';
|
|
7
7
|
import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
|
|
8
8
|
import { getAttrsFromUrl } from '@atlaskit/media-client';
|
|
9
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
9
10
|
import { updateCurrentMediaNodeAttrs } from '../../pm-plugins/commands/helpers';
|
|
10
11
|
import { isMediaBlobUrlFromAttrs } from '../../pm-plugins/utils/media-common';
|
|
11
12
|
// Ignored via go/ees005
|
|
@@ -35,10 +36,12 @@ const MediaNodeWithProviders = ({
|
|
|
35
36
|
mediaProvider,
|
|
36
37
|
widthState
|
|
37
38
|
} = useSharedState(pluginInjectionApi);
|
|
39
|
+
const interactionState = useSharedPluginStateSelector(pluginInjectionApi, 'interaction.interactionState');
|
|
38
40
|
return innerComponent({
|
|
39
41
|
width: widthState,
|
|
40
42
|
// Remove when platform_editor_usesharedpluginstateselector is cleaned up
|
|
41
|
-
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined
|
|
43
|
+
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined,
|
|
44
|
+
interactionState
|
|
42
45
|
});
|
|
43
46
|
};
|
|
44
47
|
function isMediaDecorationSpec(decoration) {
|
|
@@ -69,7 +72,8 @@ class MediaNodeView extends SelectionBasedNodeView {
|
|
|
69
72
|
_defineProperty(this, "renderMediaNodeWithState", contextIdentifierProvider => {
|
|
70
73
|
return ({
|
|
71
74
|
width: editorWidth,
|
|
72
|
-
mediaProvider
|
|
75
|
+
mediaProvider,
|
|
76
|
+
interactionState
|
|
73
77
|
}) => {
|
|
74
78
|
var _this$reactComponentP, _this$reactComponentP2, _this$reactComponentP3;
|
|
75
79
|
const getPos = this.getPos;
|
|
@@ -105,11 +109,12 @@ class MediaNodeView extends SelectionBasedNodeView {
|
|
|
105
109
|
width,
|
|
106
110
|
height
|
|
107
111
|
};
|
|
112
|
+
const isSelectedAndInteracted = this.nodeInsideSelection() && (!fg('platform_editor_interaction_api_refactor') || interactionState !== 'hasNotHadInteraction');
|
|
108
113
|
return /*#__PURE__*/React.createElement(MediaNode, {
|
|
109
114
|
view: this.view,
|
|
110
115
|
node: this.node,
|
|
111
116
|
getPos: getPos,
|
|
112
|
-
selected:
|
|
117
|
+
selected: isSelectedAndInteracted,
|
|
113
118
|
originalDimensions: originalDimensions,
|
|
114
119
|
maxDimensions: maxDimensions,
|
|
115
120
|
url: url,
|
|
@@ -19,6 +19,7 @@ import { WithProviders } from '@atlaskit/editor-common/provider-factory';
|
|
|
19
19
|
import { SelectionBasedNodeView } from '@atlaskit/editor-common/selection-based-node-view';
|
|
20
20
|
import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
|
|
21
21
|
import { getAttrsFromUrl } from '@atlaskit/media-client';
|
|
22
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
22
23
|
import { updateCurrentMediaNodeAttrs } from '../../pm-plugins/commands/helpers';
|
|
23
24
|
import { isMediaBlobUrlFromAttrs } from '../../pm-plugins/utils/media-common';
|
|
24
25
|
// Ignored via go/ees005
|
|
@@ -45,10 +46,12 @@ var MediaNodeWithProviders = function MediaNodeWithProviders(_ref) {
|
|
|
45
46
|
var _useSharedState = useSharedState(pluginInjectionApi),
|
|
46
47
|
mediaProvider = _useSharedState.mediaProvider,
|
|
47
48
|
widthState = _useSharedState.widthState;
|
|
49
|
+
var interactionState = useSharedPluginStateSelector(pluginInjectionApi, 'interaction.interactionState');
|
|
48
50
|
return innerComponent({
|
|
49
51
|
width: widthState,
|
|
50
52
|
// Remove when platform_editor_usesharedpluginstateselector is cleaned up
|
|
51
|
-
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined
|
|
53
|
+
mediaProvider: mediaProvider ? Promise.resolve(mediaProvider) : undefined,
|
|
54
|
+
interactionState: interactionState
|
|
52
55
|
});
|
|
53
56
|
};
|
|
54
57
|
function isMediaDecorationSpec(decoration) {
|
|
@@ -83,7 +86,8 @@ var MediaNodeView = /*#__PURE__*/function (_SelectionBasedNodeVi) {
|
|
|
83
86
|
return function (_ref2) {
|
|
84
87
|
var _this$reactComponentP;
|
|
85
88
|
var editorWidth = _ref2.width,
|
|
86
|
-
mediaProvider = _ref2.mediaProvider
|
|
89
|
+
mediaProvider = _ref2.mediaProvider,
|
|
90
|
+
interactionState = _ref2.interactionState;
|
|
87
91
|
var getPos = _this.getPos;
|
|
88
92
|
var mediaOptions = _this.reactComponentProps.mediaOptions;
|
|
89
93
|
var attrs = _this.getAttrs();
|
|
@@ -111,11 +115,12 @@ var MediaNodeView = /*#__PURE__*/function (_SelectionBasedNodeVi) {
|
|
|
111
115
|
width: width,
|
|
112
116
|
height: height
|
|
113
117
|
};
|
|
118
|
+
var isSelectedAndInteracted = _this.nodeInsideSelection() && (!fg('platform_editor_interaction_api_refactor') || interactionState !== 'hasNotHadInteraction');
|
|
114
119
|
return /*#__PURE__*/React.createElement(MediaNode, {
|
|
115
120
|
view: _this.view,
|
|
116
121
|
node: _this.node,
|
|
117
122
|
getPos: getPos,
|
|
118
|
-
selected:
|
|
123
|
+
selected: isSelectedAndInteracted,
|
|
119
124
|
originalDimensions: originalDimensions,
|
|
120
125
|
maxDimensions: maxDimensions,
|
|
121
126
|
url: url,
|
|
@@ -5,6 +5,7 @@ import { type PortalProviderAPI } from '@atlaskit/editor-common/portal';
|
|
|
5
5
|
import type { ContextIdentifierProvider, MediaProvider, ProviderFactory, Providers } from '@atlaskit/editor-common/provider-factory';
|
|
6
6
|
import { SelectionBasedNodeView } from '@atlaskit/editor-common/selection-based-node-view';
|
|
7
7
|
import type { ExtractInjectionAPI, EditorContainerWidth as WidthPluginState } from '@atlaskit/editor-common/types';
|
|
8
|
+
import { SharedInteractionState } from '@atlaskit/editor-plugin-interaction';
|
|
8
9
|
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
9
10
|
import type { Decoration, EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
10
11
|
import type { MediaNextEditorPluginType } from '../../mediaPluginType';
|
|
@@ -13,6 +14,7 @@ import type { MediaNodeViewProps } from '../types';
|
|
|
13
14
|
interface MediaNodeWithPluginStateComponentProps {
|
|
14
15
|
width?: WidthPluginState;
|
|
15
16
|
mediaProvider?: Promise<MediaProvider>;
|
|
17
|
+
interactionState?: SharedInteractionState['interactionState'];
|
|
16
18
|
}
|
|
17
19
|
declare class MediaNodeView extends SelectionBasedNodeView<MediaNodeViewProps> {
|
|
18
20
|
private isSelected;
|
|
@@ -25,7 +27,7 @@ declare class MediaNodeView extends SelectionBasedNodeView<MediaNodeViewProps> {
|
|
|
25
27
|
width: number;
|
|
26
28
|
height: number;
|
|
27
29
|
}) => void;
|
|
28
|
-
renderMediaNodeWithState: (contextIdentifierProvider?: Promise<ContextIdentifierProvider>) => ({ width: editorWidth, mediaProvider }: MediaNodeWithPluginStateComponentProps) => React.JSX.Element;
|
|
30
|
+
renderMediaNodeWithState: (contextIdentifierProvider?: Promise<ContextIdentifierProvider>) => ({ width: editorWidth, mediaProvider, interactionState, }: MediaNodeWithPluginStateComponentProps) => React.JSX.Element;
|
|
29
31
|
renderMediaNodeWithProviders: ({ contextIdentifierProvider }: Providers) => React.JSX.Element;
|
|
30
32
|
render(): React.JSX.Element;
|
|
31
33
|
}
|
|
@@ -5,6 +5,7 @@ import { type PortalProviderAPI } from '@atlaskit/editor-common/portal';
|
|
|
5
5
|
import type { ContextIdentifierProvider, MediaProvider, ProviderFactory, Providers } from '@atlaskit/editor-common/provider-factory';
|
|
6
6
|
import { SelectionBasedNodeView } from '@atlaskit/editor-common/selection-based-node-view';
|
|
7
7
|
import type { ExtractInjectionAPI, EditorContainerWidth as WidthPluginState } from '@atlaskit/editor-common/types';
|
|
8
|
+
import { SharedInteractionState } from '@atlaskit/editor-plugin-interaction';
|
|
8
9
|
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
9
10
|
import type { Decoration, EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
10
11
|
import type { MediaNextEditorPluginType } from '../../mediaPluginType';
|
|
@@ -13,6 +14,7 @@ import type { MediaNodeViewProps } from '../types';
|
|
|
13
14
|
interface MediaNodeWithPluginStateComponentProps {
|
|
14
15
|
width?: WidthPluginState;
|
|
15
16
|
mediaProvider?: Promise<MediaProvider>;
|
|
17
|
+
interactionState?: SharedInteractionState['interactionState'];
|
|
16
18
|
}
|
|
17
19
|
declare class MediaNodeView extends SelectionBasedNodeView<MediaNodeViewProps> {
|
|
18
20
|
private isSelected;
|
|
@@ -25,7 +27,7 @@ declare class MediaNodeView extends SelectionBasedNodeView<MediaNodeViewProps> {
|
|
|
25
27
|
width: number;
|
|
26
28
|
height: number;
|
|
27
29
|
}) => void;
|
|
28
|
-
renderMediaNodeWithState: (contextIdentifierProvider?: Promise<ContextIdentifierProvider>) => ({ width: editorWidth, mediaProvider }: MediaNodeWithPluginStateComponentProps) => React.JSX.Element;
|
|
30
|
+
renderMediaNodeWithState: (contextIdentifierProvider?: Promise<ContextIdentifierProvider>) => ({ width: editorWidth, mediaProvider, interactionState, }: MediaNodeWithPluginStateComponentProps) => React.JSX.Element;
|
|
29
31
|
renderMediaNodeWithProviders: ({ contextIdentifierProvider }: Providers) => React.JSX.Element;
|
|
30
32
|
render(): React.JSX.Element;
|
|
31
33
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-media",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.8",
|
|
4
4
|
"description": "Media plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -38,14 +38,14 @@
|
|
|
38
38
|
"@atlaskit/analytics-namespaced-context": "^7.0.0",
|
|
39
39
|
"@atlaskit/analytics-next": "^11.0.0",
|
|
40
40
|
"@atlaskit/button": "^23.2.0",
|
|
41
|
-
"@atlaskit/editor-common": "^105.
|
|
41
|
+
"@atlaskit/editor-common": "^105.10.0",
|
|
42
42
|
"@atlaskit/editor-palette": "^2.1.0",
|
|
43
43
|
"@atlaskit/editor-plugin-analytics": "^2.3.0",
|
|
44
44
|
"@atlaskit/editor-plugin-annotation": "^2.8.0",
|
|
45
45
|
"@atlaskit/editor-plugin-connectivity": "^2.0.0",
|
|
46
46
|
"@atlaskit/editor-plugin-decorations": "^2.0.0",
|
|
47
47
|
"@atlaskit/editor-plugin-editor-disabled": "^2.0.0",
|
|
48
|
-
"@atlaskit/editor-plugin-editor-viewmode": "^
|
|
48
|
+
"@atlaskit/editor-plugin-editor-viewmode": "^4.0.0",
|
|
49
49
|
"@atlaskit/editor-plugin-floating-toolbar": "^4.1.0",
|
|
50
50
|
"@atlaskit/editor-plugin-focus": "^1.5.0",
|
|
51
51
|
"@atlaskit/editor-plugin-grid": "^2.0.0",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"@atlaskit/editor-shared-styles": "^3.4.0",
|
|
58
58
|
"@atlaskit/editor-tables": "^2.9.0",
|
|
59
59
|
"@atlaskit/form": "^12.0.0",
|
|
60
|
-
"@atlaskit/icon": "^26.
|
|
60
|
+
"@atlaskit/icon": "^26.3.0",
|
|
61
61
|
"@atlaskit/media-card": "^79.3.0",
|
|
62
62
|
"@atlaskit/media-client": "^33.3.0",
|
|
63
63
|
"@atlaskit/media-client-react": "^4.1.0",
|
|
@@ -65,12 +65,12 @@
|
|
|
65
65
|
"@atlaskit/media-filmstrip": "^50.1.0",
|
|
66
66
|
"@atlaskit/media-picker": "^69.0.0",
|
|
67
67
|
"@atlaskit/media-ui": "^28.2.0",
|
|
68
|
-
"@atlaskit/media-viewer": "^52.
|
|
68
|
+
"@atlaskit/media-viewer": "^52.2.0",
|
|
69
69
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
70
70
|
"@atlaskit/primitives": "^14.8.0",
|
|
71
71
|
"@atlaskit/textfield": "^8.0.0",
|
|
72
72
|
"@atlaskit/theme": "^18.0.0",
|
|
73
|
-
"@atlaskit/tmp-editor-statsig": "^
|
|
73
|
+
"@atlaskit/tmp-editor-statsig": "^5.0.0",
|
|
74
74
|
"@atlaskit/tokens": "^4.9.0",
|
|
75
75
|
"@atlaskit/tooltip": "^20.0.0",
|
|
76
76
|
"@babel/runtime": "^7.0.0",
|