@abacatepay/eslint-plugin
v0.1.2
Published
Do not hardcode your AbacatePay secrets with this plugin
Readme
AbacatePay ESLint Plugin 🥑
Evite o vazamento de API keys da AbacatePay diretamente no seu código com uma regra ESLint simples, segura e focada em boas práticas.
O @abacatepay/eslint-plugin detecta chaves secretas hardcoded e incentiva o uso correto de variáveis de ambiente, antes que o erro chegue ao repositório.
Instalação
Use com o seu package manager favorito
bun add -d @abacatepay/eslint-plugin
# ou
pnpm add -d @abacatepay/eslint-plugin
# ou
npm install -d @abacatepay/eslint-pluginConfiguração (ESLint v9+ / Flat Config)
O plugin é projetado exclusivamente para ESLint v9+ usando flat config.
import abacatepay from '@abacatepay/eslint-plugin';
export default [
{
plugins: {
abacatepay,
},
rules: {
'abacatepay/no-secret-key': 'error',
},
},
]Regras
abacatepay/no-secret-key
Impede o uso de chaves secretas da AbacatePay diretamente no código, independentemente do contexto (strings, templates, JSX, headers etc).
Sugestões automáticas
Sempre que possível, a regra oferece sugestões seguras para substituir a chave hardcoded por uma variável de ambiente.
- "abc_prod_xxxxxxxxxxxxxxxxxxxxxxx"
+ process.env.ABACATEPAY_API_KEYA regra não aplica autofix destrutivo — apenas sugestões explícitas e seguras.
Uso incorreto
import { AbacatePay } from '@abacatepay/sdk';
const abacate = AbacatePay("abc_dev_xxxxxxxxxxxxxxxxxxxxxxx");import { REST } from '@abacatepay/rest';
const client = new REST({ secret: 'Bearer abc_prod_xxxxxxxxxxxxxxxxxxxxxxx' });
await client.get('/store/get');<Component apiKey="abc_dev_xxxxxxxxxxxxxxxxxxxxxxx" />Uso correto
const abacate = AbacatePay(process.env.ABACATEPAY_API_KEY);const client = new REST({ secret: process.env.ABACATEPAY_API_KEY });