all files / src/ utils.js

100% Statements 23/23
88.89% Branches 8/9
100% Functions 4/4
100% Lines 23/23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44                                         
'use strict';
 
Object.defineProperty(exports, "__esModule", {
  value: true
});
var isLineClampSupport = function () {
  var div = document.createElement('div');
  return ['lineClamp', 'WebkitLineClamp'].filter(function (prop) {
    return prop in div.style;
  }).length;
}();
 
var forceLineClampSupport = function forceLineClampSupport(support) {
  isLineClampSupport = support;
};
 
var getClampProps = function getClampProps(_ref) {
  var mode = _ref.mode,
      level = _ref.level,
      lineClamp = _ref.lineClamp,
      className = _ref.className;
 
  var props = {};
  var clamp = false;
  Eif (mode === 'inline' || mode === 'vertical' && level === 1) {
    if (isLineClampSupport && lineClamp > 1) {
      var style = {};
      style.WebkitLineClamp = lineClamp;
      style.lineClamp = lineClamp;
      style.WebkitBoxOrient = 'vertical';
      props.style = style;
      props.className = className;
      clamp = true;
    }
  }
  return { props: props, clamp: clamp };
};
 
exports['default'] = {
  forceLineClampSupport: forceLineClampSupport,
  getClampProps: getClampProps
};
module.exports = exports['default'];