@css-blocks/config
TypeScript icon, indicating that this package has built-in type declarations

1.5.0 • Public • Published

CSS Blocks Configuration

Loads configuration for css-blocks from standardized locations so that build integrations, text editors, and the cli can all interoperate with the same configuration.

Installation

yarn add @css-blocks/config

Usage

import { Options as CSSBlocksOptions } from "@css-blocks/core";
import * as config from '@css-blocks/config';
// finds configuration starting in the current working directory.
let opts: CSSBlocksOptions | null = config.search();

// finds configuration starting in the specified directory;
opts = config.search(__dirname);

// loads a specific configuration file:
opts = config.load("config/css-blocks.js");

Configuration Options

The values specified in the configuration files are expected to be legal options for the CSS Blocks configuration. However, there are a few exceptions:

  • preprocesors - This can be set to a file location of a javascript file that exports one or more preprocessors. The properties exported should correspond to the supported syntaxes.
  • importer - This can be set to a file location of a javascript file that exports an object with keys of importer and (optionally) data. If data is returned, it takes precedence over a configuration value for importerData in the current configuration file.
  • extends - If provided, this configuration file located at the provided path is loaded and this configuration is deeply merged into it. Note: the values for importer and importerData are not deeply merged.
  • rootDir - If this configuration property is not set explicitly, the directory of the configuration file is used.

Note: Any path to another file or directory is interpreted as being relative to the directory of the file containing the path.

Readme

Keywords

Package Sidebar

Install

npm i @css-blocks/config

Weekly Downloads

5

Version

1.5.0

License

BSD-2-Clause

Unpacked Size

564 kB

Total Files

12

Last publish

Collaborators

  • epicmiller
  • chriseppstein