Update
This commit is contained in:
20
src/build-local-rules.ts
Executable file
20
src/build-local-rules.ts
Executable file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env -S node -r esbin
|
||||
import { readdirSync, writeFileSync } from 'node:fs';
|
||||
import { camelCase } from 'lodash';
|
||||
|
||||
const files = readdirSync('./src/rules')
|
||||
.filter(file => file.endsWith('.ts'))
|
||||
.filter(file => file !== 'index.ts')
|
||||
.map(file => file.slice(0, -3));
|
||||
|
||||
const entryFile = `
|
||||
import type { Rule } from 'eslint';
|
||||
|
||||
${files.map(file => `import ${camelCase(file)} from "./${file}"`).join(';\n')}
|
||||
|
||||
export const rules: Record<string, Rule.RuleModule> = {
|
||||
${files.map(file => `"${file}": ${camelCase(file)}`).join(',\n ')}
|
||||
};
|
||||
`.trim();
|
||||
|
||||
writeFileSync('./src/rules/index.ts', entryFile);
|
Reference in New Issue
Block a user