Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});

const tslib_1 = require("tslib");

const react_1 = tslib_1.__importDefault(require("react"));

const exotic_1 = require("exotic");

const utils_1 = require("@skava/utils");

const Empty_1 = tslib_1.__importDefault(require("@skava/ui/dist/components/atoms/Empty"));

const styled_1 = require("./styled");
/**
 * Render background image
 */


const defaultRenderImage = item => {
  const {
    backgroundImage
  } = item;
  const backgroundImageUrl = exotic_1.fromIshToString(backgroundImage);
  const validBackgroundImageUrl = utils_1.toUrlWithProtocol(backgroundImageUrl);

  if (validBackgroundImageUrl) {
    return react_1.default.createElement(styled_1.BackgroundImage, {
      src: validBackgroundImageUrl
    });
  } else {
    const placeholderImageUrl = 'https://raderain.sirv.com/placholders/image_icon.png';
    return react_1.default.createElement(styled_1.PlaceholderImage, {
      src: placeholderImageUrl
    });
  }
};

exports.defaultRenderImage = defaultRenderImage;
/**
 * Render background full-width video
 */

const defaultRenderVideo = item => {
  const {
    src
  } = item;
  const videoSrcURL = exotic_1.fromIshToString(src);
  const validVideoSrcURL = utils_1.toUrlWithProtocol(videoSrcURL);

  if (validVideoSrcURL) {
    return react_1.default.createElement(styled_1.StyledVideoPlayer, {
      shouldAutoPlay: true,
      src: [validVideoSrcURL],
      muted: true,
      preload: 'auto',
      hasNativeControls: false,
      hasPlayButton: false,
      shouldShowVideoInformation: false
    });
  } else {
    const placeholderVideoUrl = 'https://raderain.sirv.com/placholders/play_icon.png';
    return react_1.default.createElement(styled_1.PlaceholderImage, {
      src: placeholderVideoUrl
    });
  }
};

exports.defaultRenderVideo = defaultRenderVideo;

function defaultRenderBox(props) {
  const {
    mediaType,
    position,
    backgroundColor,
    renderImage,
    renderVideo
  } = props,
        remainingProps = tslib_1.__rest(props, ["mediaType", "position", "backgroundColor", "renderImage", "renderVideo"]);

  const {
    backgroundImage,
    src
  } = remainingProps;
  const videoView = renderVideo(remainingProps);
  const imageView = renderImage(remainingProps);
  const backgroundImageUrl = exotic_1.fromIshToString(backgroundImage);
  const videoSrcUrl = exotic_1.fromIshToString(src);
  const view = mediaType === 'image' ? imageView : mediaType === 'video' ? videoView : react_1.default.createElement(Empty_1.default, null);
  const gradientMask = react_1.default.createElement(styled_1.StyledOverlay, {
    position: position,
    backgroundColor: backgroundColor
  });
  const isEmpty = mediaType === 'image' && backgroundImageUrl === '' || mediaType === 'video' && videoSrcUrl === '';
  const maskOverlay = isEmpty ? react_1.default.createElement(Empty_1.default, null) : gradientMask;
  return react_1.default.createElement(styled_1.StyledBox, {
    isEmpty: isEmpty
  }, view, maskOverlay);
}

exports.defaultRenderBox = defaultRenderBox;

function defaultRenderWrapper(props) {
  const {
    className,
    children,
    isPageScroll
  } = props;
  return react_1.default.createElement(styled_1.StyledWrapper, {
    className: className,
    isPageScroll: isPageScroll
  }, children);
}

exports.defaultRenderWrapper = defaultRenderWrapper;