parse-css-dimension

1.1.0 • Public • Published

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.

Package Sidebar

Install

npm i parse-css-dimension

Weekly Downloads

1,982

Version

1.1.0

License

MIT

Last publish

Collaborators

  • jedmao