@css-blocks/config
v1.5.0
Published
Standardized access to css-blocks configuration files.
Downloads
62
Readme
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/configUsage
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 ofimporterand (optionally)data. If data is returned, it takes precedence over a configuration value forimporterDatain 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 forimporterandimporterDataare 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.
