UNPKG

@elsikora/setup-wizard

Version:

Setup Wizard - CLI scaffolding utility

42 lines (37 loc) 1.36 kB
#!/usr/bin/env node import { ESLINT_FEATURE_CONFIG } from '../../../domain/constant/eslint-feature-config.constant.js'; /** * Configuration constant for ESLint. * Provides a template function for generating ESLint configuration files. */ const ESLINT_CONFIG = { /** * Generates an ESLint configuration file content. * Creates a configuration file that uses @elsikora/eslint-config with the specified features. * @param ignores - Array of file patterns to ignore in linting * @param features - Array of ESLint features to enable * @returns String content for the ESLint configuration file */ template: (ignores, features) => { const featureConfig = features .map((feature) => { const featureKey = feature; if (!(featureKey in ESLINT_FEATURE_CONFIG)) { throw new Error(`Unknown feature: ${feature}`); } const config = ESLINT_FEATURE_CONFIG[featureKey]; return ` ${config.configFlag}: true`; }) .join(",\n"); return `import { createConfig } from '@elsikora/eslint-config'; const config = { ignores: ${JSON.stringify(ignores, null, 2)} }; export default [config, ...(await createConfig({ ${featureConfig} }))];`; }, }; export { ESLINT_CONFIG }; //# sourceMappingURL=config.constant.js.map