summaryrefslogtreecommitdiff
path: root/tools/node_modules/eslint-plugin-node-core/index.js
blob: e27945688ee6917ff29e4380bc4b25de82d06a42 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
'use strict';

const fs = require('fs');
const path = require('path');

let cache;
module.exports = {
  get rules() {
    const RULES_DIR = module.exports.RULES_DIR;
    if (!RULES_DIR)
      return {};

    if (!cache) {
      cache = {};
      const files = fs.readdirSync(RULES_DIR)
        .filter(filename => filename.endsWith('.js'))
      for (const file of files) {
        const name = file.slice(0, -3);
        cache[name] = require(path.resolve(RULES_DIR, file));
      }
    }
    return cache;
  },
};