0.0.2 • Published yesterday
@lyra-mock-api/core
Licence
MIT
Version
0.0.2
Deps
0
Size
53 kB
Vulns
0
Weekly
0
@lyra-mock-api/core
API pura (zero dependências) para registro, validação e resolução de mocks.
Introdução
@lyra-mock-api/core é uma API pura (zero dependências) para registro, validação e resolução de mocks. Funciona em qualquer runtime JavaScript — Node.js, browser, Deno, Bun.
Princípio: o sistema não sabe o que são erros, prioridades ou autenticação. Ele apenas armazena, valida e busca por index. Toda lógica de negócio pertence à aplicação.
- Repositório: https://github.com/guicarvalho274/lyra-mock
- Pacote: https://www.npmjs.com/package/@lyra-mock-api/core
- Documentação completa: https://github.com/guicarvalho274/lyra-mock/tree/main/packages/%40lyra-mock-api
Instalação
npm install @lyra-mock-api/core
Quick Start
ESM
import { stateMock } from '@lyra-mock-api/core';
CommonJS
const { stateMock } = require('@lyra-mock-api/core');
Exemplo
const { register, resolve, resolvePriority, getTransport } = stateMock();
// Registrar mocks
register({
url: '/api/login',
mock: {
email_invalid: { action: 'toggle', value: false },
login_ok: { action: 'toggle', value: true }
}
}, { type: 'http', delay: 1000 });
// Resolver
const result = resolve({ url: '/api/login', index: 'login_ok' });
// → { index: 'login_ok', matched: true, scenario: 'matched' }
Documentação
A documentação completa está no repositório: lyra-mock/packages/@lyra-mock-api
Conceitos
- Mocks — o que são mocks e como são armazenados
- Actions — toggle vs input
- Conditions — condition array, lógica AND
- Scenarios — matched vs difference
- Priority — resolvePriority
- Transport — type, url, delay
Guias
- Login — exemplo: login completo
- Validação de Formulário — exemplo: validação de campos
- Erros de API — exemplo: simular erros HTTP
- Respostas Condicionais — exemplo: respostas baseadas no payload
- Frontend Antes do Backend — exemplo: desenvolvimento independente
- Substituindo API Real — exemplo: trocar API por mocks
API
- stateMock() — factory principal
- register() — registro por URL
- registerService() — registro por service
- resolve() — resolução por index
- resolvePriority() — resolução por prioridade
- getTransport() — acesso ao transport
Referência
- MockEntry — tipo completo de um mock
- MockCondition — tipo de condição
- Transport — tipo de transporte
- ResolveResult — tipo de retorno
- Enums — ACTIONS, SCENARIOS, OPERATORS, TRANSPORT
Changelog
Ver CHANGELOG.md