diff options
Diffstat (limited to 'node_modules/postcss-load-config/src')
| -rw-r--r-- | node_modules/postcss-load-config/src/index.d.ts | 65 | ||||
| -rw-r--r-- | node_modules/postcss-load-config/src/index.js | 185 | ||||
| -rw-r--r-- | node_modules/postcss-load-config/src/options.js | 47 | ||||
| -rw-r--r-- | node_modules/postcss-load-config/src/plugins.js | 85 | ||||
| -rw-r--r-- | node_modules/postcss-load-config/src/req.js | 10 |
5 files changed, 0 insertions, 392 deletions
diff --git a/node_modules/postcss-load-config/src/index.d.ts b/node_modules/postcss-load-config/src/index.d.ts deleted file mode 100644 index 49792204..00000000 --- a/node_modules/postcss-load-config/src/index.d.ts +++ /dev/null @@ -1,65 +0,0 @@ -// based on @types/postcss-load-config@2.0.1 -// Type definitions for postcss-load-config 2.1 -import Processor from 'postcss/lib/processor'; -import { Plugin, ProcessOptions, Transformer } from 'postcss'; -import { Options as ConfigOptions } from "lilconfig"; - -declare function postcssrc( - ctx?: postcssrc.ConfigContext, - path?: string, - options?: ConfigOptions -): Promise<postcssrc.Result>; - -declare namespace postcssrc { - // In the ConfigContext, these three options can be instances of the - // appropriate class, or strings. If they are strings, postcss-load-config will - // require() them and pass the instances along. - export interface ProcessOptionsPreload { - parser?: string | ProcessOptions['parser']; - stringifier?: string | ProcessOptions['stringifier']; - syntax?: string | ProcessOptions['syntax']; - } - - // The remaining ProcessOptions, sans the three above. - export type RemainingProcessOptions = Pick< - ProcessOptions, - Exclude<keyof ProcessOptions, keyof ProcessOptionsPreload> - >; - - // Additional context options that postcss-load-config understands. - export interface Context { - cwd?: string; - env?: string; - } - - // The full shape of the ConfigContext. - export type ConfigContext = Context & - ProcessOptionsPreload & - RemainingProcessOptions; - - // Result of postcssrc is a Promise containing the filename plus the options - // and plugins that are ready to pass on to postcss. - export type ResultPlugin = Plugin | Transformer | Processor; - - export interface Result { - file: string; - options: ProcessOptions; - plugins: ResultPlugin[]; - } - - export type ConfigPlugin = Transformer | Plugin | Processor; - - export interface Config { - parser?: string | ProcessOptions['parser'] | false; - stringifier?: string | ProcessOptions['stringifier'] | false; - syntax?: string | ProcessOptions['syntax'] | false; - map?: string | false; - from?: string; - to?: string; - plugins?: Array<ConfigPlugin | false> | Record<string, object | false>; - } - - export type ConfigFn = (ctx: ConfigContext) => Config | Promise<Config>; -} - -export = postcssrc; diff --git a/node_modules/postcss-load-config/src/index.js b/node_modules/postcss-load-config/src/index.js deleted file mode 100644 index ce86aaad..00000000 --- a/node_modules/postcss-load-config/src/index.js +++ /dev/null @@ -1,185 +0,0 @@ -'use strict' - -const resolve = require('path').resolve -const url = require('url') - -const config = require('lilconfig') -const yaml = require('yaml') - -const loadOptions = require('./options.js') -const loadPlugins = require('./plugins.js') - -/* istanbul ignore next */ -const interopRequireDefault = (obj) => obj && obj.__esModule ? obj : { default: obj } - -/** - * Process the result from cosmiconfig - * - * @param {Object} ctx Config Context - * @param {Object} result Cosmiconfig result - * - * @return {Object} PostCSS Config - */ -const processResult = (ctx, result) => { - const file = result.filepath || '' - let config = interopRequireDefault(result.config).default || {} - - if (typeof config === 'function') { - config = config(ctx) - } else { - config = Object.assign({}, config, ctx) - } - - if (!config.plugins) { - config.plugins = [] - } - - return { - plugins: loadPlugins(config, file), - options: loadOptions(config, file), - file - } -} - -/** - * Builds the Config Context - * - * @param {Object} ctx Config Context - * - * @return {Object} Config Context - */ -const createContext = (ctx) => { - /** - * @type {Object} - * - * @prop {String} cwd=process.cwd() Config search start location - * @prop {String} env=process.env.NODE_ENV Config Enviroment, will be set to `development` by `postcss-load-config` if `process.env.NODE_ENV` is `undefined` - */ - ctx = Object.assign({ - cwd: process.cwd(), - env: process.env.NODE_ENV - }, ctx) - - if (!ctx.env) { - process.env.NODE_ENV = 'development' - } - - return ctx -} - -const importDefault = async filepath => { - const module = await import(url.pathToFileURL(filepath).href) - return module.default -} - -const addTypeScriptLoader = (options = {}, loader) => { - const moduleName = 'postcss' - - return { - ...options, - searchPlaces: [ - ...(options.searchPlaces || []), - 'package.json', - `.${moduleName}rc`, - `.${moduleName}rc.json`, - `.${moduleName}rc.yaml`, - `.${moduleName}rc.yml`, - `.${moduleName}rc.ts`, - `.${moduleName}rc.cts`, - `.${moduleName}rc.js`, - `.${moduleName}rc.cjs`, - `.${moduleName}rc.mjs`, - `${moduleName}.config.ts`, - `${moduleName}.config.cts`, - `${moduleName}.config.js`, - `${moduleName}.config.cjs`, - `${moduleName}.config.mjs` - ], - loaders: { - ...options.loaders, - '.yaml': (filepath, content) => yaml.parse(content), - '.yml': (filepath, content) => yaml.parse(content), - '.js': importDefault, - '.cjs': importDefault, - '.mjs': importDefault, - '.ts': loader, - '.cts': loader - } - } -} - -const withTypeScriptLoader = (rcFunc) => { - return (ctx, path, options) => { - return rcFunc(ctx, path, addTypeScriptLoader(options, (configFile) => { - let registerer = { enabled () {} } - - try { - // Register TypeScript compiler instance - registerer = require('ts-node').register({ - // transpile to cjs even if compilerOptions.module in tsconfig is not Node16/NodeNext. - moduleTypes: { '**/*.cts': 'cjs' } - }) - - return require(configFile) - } catch (err) { - if (err.code === 'MODULE_NOT_FOUND') { - throw new Error( - `'ts-node' is required for the TypeScript configuration files. Make sure it is installed\nError: ${err.message}` - ) - } - - throw err - } finally { - registerer.enabled(false) - } - })) - } -} - -/** - * Load Config - * - * @method rc - * - * @param {Object} ctx Config Context - * @param {String} path Config Path - * @param {Object} options Config Options - * - * @return {Promise} config PostCSS Config - */ -const rc = withTypeScriptLoader((ctx, path, options) => { - /** - * @type {Object} The full Config Context - */ - ctx = createContext(ctx) - - /** - * @type {String} `process.cwd()` - */ - path = path ? resolve(path) : process.cwd() - - return config.lilconfig('postcss', options) - .search(path) - .then((result) => { - if (!result) { - throw new Error(`No PostCSS Config found in: ${path}`) - } - - return processResult(ctx, result) - }) -}) - -/** - * Autoload Config for PostCSS - * - * @author Michael Ciniawsky @michael-ciniawsky <michael.ciniawsky@gmail.com> - * @license MIT - * - * @module postcss-load-config - * @version 2.1.0 - * - * @requires comsiconfig - * @requires ./options - * @requires ./plugins - */ -module.exports = rc diff --git a/node_modules/postcss-load-config/src/options.js b/node_modules/postcss-load-config/src/options.js deleted file mode 100644 index d3ef2d65..00000000 --- a/node_modules/postcss-load-config/src/options.js +++ /dev/null @@ -1,47 +0,0 @@ -'use strict' - -const req = require('./req.js') - -/** - * Load Options - * - * @private - * @method options - * - * @param {Object} config PostCSS Config - * - * @return {Object} options PostCSS Options - */ -const options = (config, file) => { - if (config.parser && typeof config.parser === 'string') { - try { - config.parser = req(config.parser, file) - } catch (err) { - throw new Error(`Loading PostCSS Parser failed: ${err.message}\n\n(@${file})`) - } - } - - if (config.syntax && typeof config.syntax === 'string') { - try { - config.syntax = req(config.syntax, file) - } catch (err) { - throw new Error(`Loading PostCSS Syntax failed: ${err.message}\n\n(@${file})`) - } - } - - if (config.stringifier && typeof config.stringifier === 'string') { - try { - config.stringifier = req(config.stringifier, file) - } catch (err) { - throw new Error(`Loading PostCSS Stringifier failed: ${err.message}\n\n(@${file})`) - } - } - - if (config.plugins) { - delete config.plugins - } - - return config -} - -module.exports = options diff --git a/node_modules/postcss-load-config/src/plugins.js b/node_modules/postcss-load-config/src/plugins.js deleted file mode 100644 index 6cb994bb..00000000 --- a/node_modules/postcss-load-config/src/plugins.js +++ /dev/null @@ -1,85 +0,0 @@ -'use strict' - -const req = require('./req.js') - -/** - * Plugin Loader - * - * @private - * @method load - * - * @param {String} plugin PostCSS Plugin Name - * @param {Object} options PostCSS Plugin Options - * - * @return {Function} PostCSS Plugin - */ -const load = (plugin, options, file) => { - try { - if ( - options === null || - options === undefined || - Object.keys(options).length === 0 - ) { - return req(plugin, file) - } else { - return req(plugin, file)(options) - } - } catch (err) { - throw new Error(`Loading PostCSS Plugin failed: ${err.message}\n\n(@${file})`) - } -} - -/** - * Load Plugins - * - * @private - * @method plugins - * - * @param {Object} config PostCSS Config Plugins - * - * @return {Array} plugins PostCSS Plugins - */ -const plugins = (config, file) => { - let plugins = [] - - if (Array.isArray(config.plugins)) { - plugins = config.plugins.filter(Boolean) - } else { - plugins = Object.keys(config.plugins) - .filter((plugin) => { - return config.plugins[plugin] !== false ? plugin : '' - }) - .map((plugin) => { - return load(plugin, config.plugins[plugin], file) - }) - } - - if (plugins.length && plugins.length > 0) { - plugins.forEach((plugin, i) => { - if (plugin.default) { - plugin = plugin.default - } - - if (plugin.postcss === true) { - plugin = plugin() - } else if (plugin.postcss) { - plugin = plugin.postcss - } - - if ( - // eslint-disable-next-line - !( - (typeof plugin === 'object' && Array.isArray(plugin.plugins)) || - (typeof plugin === 'object' && plugin.postcssPlugin) || - (typeof plugin === 'function') - ) - ) { - throw new TypeError(`Invalid PostCSS Plugin found at: plugins[${i}]\n\n(@${file})`) - } - }) - } - - return plugins -} - -module.exports = plugins diff --git a/node_modules/postcss-load-config/src/req.js b/node_modules/postcss-load-config/src/req.js deleted file mode 100644 index 42020c9b..00000000 --- a/node_modules/postcss-load-config/src/req.js +++ /dev/null @@ -1,10 +0,0 @@ -// eslint-disable-next-line n/no-deprecated-api -const { createRequire, createRequireFromPath } = require('module') - -function req (name, rootFile) { - const create = createRequire || createRequireFromPath - const require = create(rootFile) - return require(name) -} - -module.exports = req |
