parse-css-dimension

Parse a CSS dimension (i.e., number, length, percentage) into a JavaScript object.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
parse-css-dimension
941.1.06 years ago7 years agoMinified + gzip package size for parse-css-dimension in KB

Readme

parse-css-dimension
NPM version npm license Travis Build Status
npm
Parse a CSS dimension (i.e., <number>, <length>, <percentage>, <angle>, <resolution>, <frequency>, <time>) into a JavaScript object.

Installation

$ npm install parse-css-dimension [--save[-dev]]

Usage

var parseCssDimension = require('parse-css-dimension');
parseCssDimension('-3.4e-2');  // { [Number: -0.034] type: 'number', value: -0.034 }
parseCssDimension('42em');     // { [Number: 42] type: 'length', value: 42, unit: 'em' }
parseCssDimension('42deg');    // { [Number: 42] type: 'angle', value: 42, unit: 'deg' }
parseCssDimension('42dpi');    // { [Number: 42] type: 'resolution', value: 42, unit: 'dpi' }
parseCssDimension('42Hz');     // { [Number: 42] type: 'frequency', value: 42, unit: 'Hz' }
parseCssDimension('42ms');     // { [Number: 42] type: 'time', value: 42, unit: 'ms' }
parseCssDimension('42%');      // { [Number: 42] type: 'percentage', value: 42 }

The result is an instance of CssDimension, which allows you to stringify it back into its original form via .toString() or perform math calculations.
var result = parseCssDimension('42%');
result instanceof parseCssDimension.CssDimension; // true
result.toString(); // 42%
result + 3; // 45

Testing

$ npm test

This will run tests and generate a code coverage report. Anything less than 100% coverage will throw an error.