css-var-parser

0.4.1 • Public • Published

CSS Var Parser

Lint and test NPM Version License Discord

Install

npm install css-var-parser

Usage

CSS Example :

#element.disabled {
    border-left-width: var(--Element_border-left-width--disabled, var(--Radio_border-width--disabled, var(--LC-border-width--disabled, 1px)));
}

JS Example :

import { readFileSync } from "fs";
import css_var_parser from "./src/parser.js";


import { dirname } from 'path';
import { fileURLToPath } from 'url';

const __dirname = dirname(fileURLToPath(import.meta.url));

const cssContent = readFileSync(__dirname + "/index.css", "utf-8");
const variables = css_var_parser.parse(cssContent);

console.log(JSON.stringify(variables));

Output:

[
  {
    selector: "#element.disabled",
    properties: [
      {
        propertyName: "border-left-width",
        variables: [
          {
            name: "--Element_border-left-width--disabled",
            fallback: "--Radio_border-width--disabled",
          },
          {
            name: "--Radio_border-width--disabled",
            fallback: "--LC-border-width--disabled",
          },
          {
            name: "--LC-border-width--disabled",
            fallback: undefined,
          },
        ],
        defaultValue: "1px",
      }
    ]
  }
]

Changelog

  • [NEXT] (changes on master that have not been released yet):

    • Nothing yet ;)
  • v0.4.1:

    • Changed package name for its first public release
    • First public release

Readme

Keywords

none

Package Sidebar

Install

npm i css-var-parser

Weekly Downloads

324

Version

0.4.1

License

BSD-3-Clause

Unpacked Size

6.89 kB

Total Files

4

Last publish

Collaborators

  • flozz
  • wanadmin
  • damienfern