🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

@atb-as/token

Package Overview
Dependencies
Maintainers
0
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@atb-as/token

PostCSS plugin that adds a token() function to CSS. It accepts a variable in dot separated syntax. This call will fail if the CSS variable does not exist.

0.0.3
latest
npm
Version published
Weekly downloads
45
800%
Maintainers
0
Weekly downloads
 
Created
Source

PostCSS plugin for typesafe CSS Custom Properties

This package adds a token(...) function to your CSS, which checks and parses the token passed in the argument and turns it into a CSS Custom Property (var(--variable-name)).

Install

Install PostCSS and this plugin as dev dependencies.

yarn add postcss @atb-as/token --dev

Configure the plugin

Add a postcss.config.json file in the root of your project with the following content, or extend the current one.

/** postcss.config.json */

{
  "plugins": [
    "@atb-as/token"
  ]
}

NextJS

⚠️ NextJS preconfigures PostCSS. Therefore, we need to include the entire NextJS config for PostCSS and add the @atb-as/token plugin in addition.

For NextJS 15.0.3, the default PostCSS configuration with the @atb-as/token plugin shows below. This is also confirmed to work on NextJS 14.2.13.

For this configuration to work, we also need to add other PostCSS plugins explicitly to our package.json.

yarn add postcss-flexbugs-fixes postcss-preset-env --dev
/** postcss.config.json */
{
  "plugins": [
    "postcss-flexbugs-fixes",
    [
      "postcss-preset-env",
      {
        "autoprefixer": {
          "flexbox": "no-2009"
        },
        "stage": 3,
        "features": {
          "custom-properties": false
        }
      }
    ],
    "@atb-as/token"
  ]
}

Usage

This plugin enables a token function in CSS, which checks the validity of the token and returns the matching CSS Custom Property.

token(variable): string Replaces the token call with the corresponding CSS Custom Property.

Throws an error if the variable does not exist or if the syntax is incorrect.

  • variable: string The camelCase name of a variable surrounded by single quote ' or double quotes " segmented by a dot ..

Example

/** button.module.css */

.button--primary {
  color: token('color.interactive.0.foreground.primary');
  background-color: token('color.interactive.0.background');
}

This is compiled to CSS Custom Properties.

/** Compiled button.module.css */

.button--primary {
  color: var(--color-interactive-0-foreground-primary);
  background-color: var(--color-interactive-0-background);
}

Keywords

postcss

FAQs

Package last updated on 22 Nov 2024

Did you know?

Socket

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