@atlaskit/editor-plugin-media
Version:
Media plugin for @atlaskit/editor-core
49 lines (48 loc) • 1.77 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.RenderMediaViewer = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactDom = _interopRequireDefault(require("react-dom"));
var _mediaViewer = require("@atlaskit/media-viewer");
var _utils = require("../../ui/toolbar/utils");
var getIdentifier = function getIdentifier(attrs) {
if ((0, _utils.isExternalMedia)(attrs)) {
return {
mediaItemType: 'external-image',
dataURI: attrs.url
};
} else {
var id = attrs.id,
_attrs$collection = attrs.collection,
collection = _attrs$collection === void 0 ? '' : _attrs$collection;
return {
id: id,
mediaItemType: 'file',
collectionName: collection
};
}
};
var RenderMediaViewer = exports.RenderMediaViewer = function RenderMediaViewer(_ref) {
var mediaClientConfig = _ref.mediaClientConfig,
onClose = _ref.onClose,
selectedNodeAttrs = _ref.selectedNodeAttrs,
_ref$items = _ref.items,
items = _ref$items === void 0 ? [] : _ref$items,
extensions = _ref.extensions;
var identifier = getIdentifier(selectedNodeAttrs);
var collectionName = (0, _utils.isExternalMedia)(selectedNodeAttrs) ? '' : selectedNodeAttrs.collection;
return /*#__PURE__*/_reactDom.default.createPortal( /*#__PURE__*/_react.default.createElement(_mediaViewer.MediaViewer, {
collectionName: collectionName,
items: items
// Ignored via go/ees005
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
,
mediaClientConfig: mediaClientConfig,
selectedItem: identifier,
onClose: onClose,
extensions: extensions
}), document.body);
};