blob: 5815005db4ec5cd79f7627fb3f768e78a9b7d2dc [file] [log] [blame]
// Copyright 2021 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
const path = require('path');
const rulesDirPlugin = require('eslint-plugin-rulesdir');
rulesDirPlugin.RULES_DIR = path.join(__dirname, '..', 'scripts', 'eslint_rules', 'lib');
module.exports = {
'overrides': [{
'files': ['*.ts'],
'rules': {
'@typescript-eslint/naming-convention': [
'error', {
'selector': ['function', 'variable', 'accessor', 'method', 'property', 'parameterProperty'],
'format': ['camelCase'],
},
{
// Allow camelCase and UPPER_CASE for constants.
'selector': 'variable',
'modifiers': ['const'],
'format': ['camelCase', 'UPPER_CASE'],
},
{
'selector': 'classProperty',
'modifiers': ['static', 'readonly'],
'format': ['UPPER_CASE'],
},
{
'selector': 'enumMember',
'format': ['PascalCase', 'UPPER_CASE'],
},
{
'selector': ['typeLike'],
'format': ['PascalCase'],
},
{
'selector': 'parameter',
'format': ['camelCase'],
'leadingUnderscore': 'allow',
}
]
}
}]
};