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 exotic_1 = require("exotic");

const ImagePlaceholder_1 = tslib_1.__importDefault(require("./ImagePlaceholder"));

const TextPlaceholder_1 = tslib_1.__importDefault(require("./TextPlaceholder"));

const ParagraphPlaceholder_1 = tslib_1.__importDefault(require("./ParagraphPlaceholder"));

const CirclePlaceholder_1 = tslib_1.__importDefault(require("./CirclePlaceholder"));

const RectanglePlaceholder_1 = tslib_1.__importDefault(require("./RectanglePlaceholder"));

const SquarePlaceholder_1 = tslib_1.__importDefault(require("./SquarePlaceholder"));

function getSVGSpecs(stringyWidthNumber, stringyHeightNumber, xPos = 0, ypos = 0) {
  const width = stripMeasurement(stringyWidthNumber);
  const height = stripMeasurement(stringyHeightNumber);
  const x = stripMeasurement(xPos);
  const y = stripMeasurement(ypos);
  const viewBox = `${x} ${y} ${width} ${height}`;
  return {
    x,
    y,
    width,
    height,
    viewBox
  };
}

exports.getSVGSpecs = getSVGSpecs;

function stripMeasurement(stringyNumber) {
  if (exotic_1.isNumber(stringyNumber)) {
    return stringyNumber;
  } else if (exotic_1.isString(stringyNumber)) {
    // @todo split
    const isPercentage = stringyNumber.indexOf('%') !== -1;
    const match = stringyNumber.match(/(\d)+/gim);

    if (exotic_1.isArray(match)) {
      const found = match.pop();

      if (isPercentage) {
        return found + '%';
      } else {
        return exotic_1.toNumber(found);
      }
    }
  } else {
    console.warn('[stripMeasurement] invalid arg: must be number or string, you provided: ', typeof stringyNumber);
    return 0;
  }

  return 0;
}

exports.stripMeasurement = stripMeasurement;

function fromBreedToComponent(breedType) {
  switch (breedType) {
    case 'text':
      return TextPlaceholder_1.default;

    case 'paragraph':
      return ParagraphPlaceholder_1.default;

    case 'media':
    case 'image':
      return ImagePlaceholder_1.default;

    case 'circle':
    case 'round':
      return CirclePlaceholder_1.default;

    case 'rectangle':
      return RectanglePlaceholder_1.default;

    case 'square':
    default:
      return SquarePlaceholder_1.default;
  }
}

exports.fromBreedToComponent = fromBreedToComponent; //# sourceMappingURL=deps.js.map