stripUnit.js 684 B

123456789101112131415161718192021222324252627282930313233
  1. "use strict";
  2. exports.__esModule = true;
  3. exports["default"] = stripUnit;
  4. var cssRegex = /^([+-]?(?:\d+|\d*\.\d+))([a-z]*|%)$/;
  5. /**
  6. * Returns a given CSS value minus its unit of measure.
  7. *
  8. * @example
  9. * // Styles as object usage
  10. * const styles = {
  11. * '--dimension': stripUnit('100px')
  12. * }
  13. *
  14. * // styled-components usage
  15. * const div = styled.div`
  16. * --dimension: ${stripUnit('100px')};
  17. * `
  18. *
  19. * // CSS in JS Output
  20. *
  21. * element {
  22. * '--dimension': 100
  23. * }
  24. */
  25. function stripUnit(value) {
  26. if (typeof value !== 'string') return value;
  27. var matchedValue = value.match(cssRegex);
  28. return matchedValue ? parseFloat(value) : value;
  29. }
  30. module.exports = exports.default;