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    
@skava/ui / dist / components / presets / Studio / PageBackground / renderProps.js
Size: Mime:
"use strict";

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

const tslib_1 = require("tslib");

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

const styled_1 = require("./styled");

function addProtocolsWithURL(url) {
  if (url && url.length > 0) {
    const noProtocolURL = url.replace(/(^\w+:|^)\/\//, '');
    const updatedURL = '//' + noProtocolURL;
    return updatedURL;
  }

  return url;
}
/**
 * Render background image
 */


const renderImage = item => {
  const {
    backgroundImage
  } = item;
  const backgroundImageUrl = addProtocolsWithURL(backgroundImage);
  return react_1.default.createElement(styled_1.StyledImage, {
    src: backgroundImageUrl
  });
};
/**
 * Render background full-width video
 */


const renderVideo = item => {
  const {
    src
  } = item;
  return react_1.default.createElement(styled_1.StyledVideoPlayer, {
    shouldAutoPlay: true,
    src: [src],
    muted: true,
    preload: 'auto',
    hasNativeControls: false,
    hasPlayButton: false,
    shouldShowVideoInformation: false
  });
};

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

  const view = props.src ? renderVideo(remainingProps) : backgroundImage ? renderImage(Object.assign({
    backgroundImage
  }, remainingProps)) : '#fff';
  return react_1.default.createElement(styled_1.StyledBox, null, view, react_1.default.createElement(styled_1.StyledOverlay, {
    position: position,
    backgroundColor: backgroundColor
  }));
}

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; //# sourceMappingURL=renderProps.js.map