@mirrormedia/lilith-draft-renderer
Version:
## Introduction
95 lines (78 loc) • 2.93 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.VideoBlock = VideoBlock;
exports.VideoBlockV2 = VideoBlockV2;
var _react = _interopRequireDefault(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _sharedStyle = require("../shared-style");
var _ampVideoBlock = _interopRequireDefault(require("./amp/amp-video-block"));
var _ampVideoBlockV = _interopRequireDefault(require("./amp/amp-video-block-v2"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const VideoWrapper = _styledComponents.default.div`
${_sharedStyle.defaultMarginTop}
${_sharedStyle.defaultMarginBottom}
`;
const Video = _styledComponents.default.video`
display: block;
width: 100%;
`;
const Description = _styledComponents.default.div`
line-height: 1.43;
letter-spacing: 0.4px;
font-size: 14px;
color: #808080;
padding: 15px 15px 0 15px;
`;
/**
* Before 202310, video which contain property `urlOriginal` and not contain property `videoSrc`.
*/
function VideoBlock(entity, contentLayout) {
var _video$file;
const isAmp = contentLayout === 'amp';
const {
video
} = entity.getData();
if (isAmp) {
return /*#__PURE__*/_react.default.createElement(_ampVideoBlock.default, {
video: video
});
}
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Video, {
muted: true,
autoPlay: true,
loop: true,
controls: true
}, /*#__PURE__*/_react.default.createElement("source", {
src: video === null || video === void 0 ? void 0 : video.urlOriginal
}), /*#__PURE__*/_react.default.createElement("source", {
src: video === null || video === void 0 ? void 0 : (_video$file = video.file) === null || _video$file === void 0 ? void 0 : _video$file.url
})));
}
/**
* After 202310, video which only contain property `videoSrc`, and property `urlOriginal` is an empty string.
*/
function VideoBlockV2(entity, contentLayout) {
var _video$file2;
const isAmp = contentLayout === 'amp';
const {
video,
desc
} = entity.getData();
if (isAmp) {
return /*#__PURE__*/_react.default.createElement(_ampVideoBlockV.default, {
video: video
});
}
return /*#__PURE__*/_react.default.createElement(VideoWrapper, null, /*#__PURE__*/_react.default.createElement(Video, {
muted: true,
autoPlay: true,
loop: true,
controls: true
}, /*#__PURE__*/_react.default.createElement("source", {
src: video === null || video === void 0 ? void 0 : video.videoSrc
}), /*#__PURE__*/_react.default.createElement("source", {
src: video === null || video === void 0 ? void 0 : (_video$file2 = video.file) === null || _video$file2 === void 0 ? void 0 : _video$file2.url
})), desc && /*#__PURE__*/_react.default.createElement(Description, null, desc));
}