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 / atoms / Icons / SocialIcon / SocialIcon.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 exotic_1 = require("exotic");

const renderProps_1 = require("../renderProps");

const FacebookIcon_1 = tslib_1.__importDefault(require("./FacebookIcon"));

const TwitterIcon_1 = tslib_1.__importDefault(require("./TwitterIcon"));

const GoogleIcon_1 = tslib_1.__importDefault(require("./GoogleIcon"));

const InstagramIcon_1 = tslib_1.__importDefault(require("./InstagramIcon"));

const LinkedinIcon_1 = tslib_1.__importDefault(require("./LinkedinIcon"));

const PinterestIcon_1 = tslib_1.__importDefault(require("./PinterestIcon"));

const SocialLinkIcon_1 = tslib_1.__importDefault(require("./SocialLinkIcon"));

const YoutubeIcon_1 = tslib_1.__importDefault(require("./YoutubeIcon"));

const wording = {
  description: 'an exclamation mark inside of a triangle or circle (denoting danger & special attention be payed to this region)',
  title: 'Caution Icon',
  vectorClassName: 'caution'
}; // returning breed based on the breedType

function fromBreedToComponent(type) {
  switch (exotic_1.isString(type) && type.toLowerCase()) {
    case 'twitter':
    case 'tw':
      return TwitterIcon_1.default;

    case 'google':
    case 'g+':
      return GoogleIcon_1.default;

    case 'linkedin':
    case 'in':
      return LinkedinIcon_1.default;

    case 'instagram':
    case 'ins':
      return InstagramIcon_1.default;

    case 'pinterest':
    case 'pin':
      return PinterestIcon_1.default;

    case 'youtube':
    case 'yt':
      return YoutubeIcon_1.default;

    case 'facebook':
    case 'fb':
      return FacebookIcon_1.default;

    case 'social-link':
    case 'link':
      return SocialLinkIcon_1.default;

    default:
      return 'no-social-icon';
  }
}

class SocialIcon extends react_1.default.PureComponent {
  render() {
    const _a = this.props,
          {
      type,
      renderWrapper
    } = _a,
          remainingProps = tslib_1.__rest(_a, ["type", "renderWrapper"]);

    const Component = fromBreedToComponent(type);
    const componentView = react_1.default.createElement(Component, Object.assign({}, remainingProps));
    return renderWrapper(componentView);
  }

}

SocialIcon.defaultProps = {
  renderWrapper: renderProps_1.renderWrapper
};
exports.SocialIcon = SocialIcon;
exports.default = SocialIcon; //# sourceMappingURL=SocialIcon.js.map