Socket
Socket
Sign inDemoInstall

css-js

Package Overview
Dependencies
0
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    css-js

CSS Parser


Version published
Weekly downloads
119
decreased by-19.59%
Maintainers
1
Install size
318 kB
Created
Weekly downloads
 

Readme

Source

CSS Parser

CSS 2.1/3.0 compliant parser generated by jison.

npm version dependency status

Quick Start

Install the npm css-js from the npm repo.

npm install css-js

Server-side Use (node.js)

Parse the full CSS.

/* create the css parser */
var CSSParser = require("css-js");

var config = {};
config.ver = "3.0"; /* CSS 3.0 */
parser = new CSSParser(config);

var cssString = "...";
var ast = parser.parse(cssString);

The returned AST structure

{
    { charset: '...' },
    { imports: [ { import: '...', mediaqueries: [ { prefix: '...', media_type: '...', expression: { media_feature: '...', value: '...' }, ... } ] } ] },
    { rulesets: [ { selector: '...', declaration: [ { key: '...', value: '...' }, { key: '...', value: '...' } ] } ] },
    { medias: { mediaqueries: [ { prefix: '...', media_type: '...', expression: { media_feature: '...', value: '...' }, ... } ], rulesets: [ { selector: '...', declaration: [ { key: '...', value: '...' } ] } ] },
    { pages: { pseudo_class: '...', declaration: [ { key: '...', value: '...' } ] } },
}

Parse the CSS string in style attribute value of HTML5 page.

/* create the css parser */
var CSSParser = require("css-js");

var config = {};
config.ver = "3.0"; /* CSS 3.0 */
parser = new CSSParser(config);

var cssString = "...";
var result = parser.parseCssString(cssString);

The returned result array

[ { key: '...', value: '...' }, { key: '...', value: '...' } ]

Development

Build

grunt

How to test

grunt test

Future Work

Continue to enhance the grammar to support the CSS 3.0 and its future extension.

License

This software is free to use under the BSD license. See the LICENSE file for license text and copyright information.

Keywords

FAQs

Last updated on 19 Jun 2015

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc