76 lines
2.4 KiB
JavaScript
76 lines
2.4 KiB
JavaScript
/**
|
|
* Erros padronizados do SDK CyberCore Signer alinhados ao protocolo CCSP/1.
|
|
*/
|
|
|
|
export class CyberCoreError extends Error {
|
|
constructor(message, code = 'COMMUNICATION_ERROR', originalError = null) {
|
|
super(message);
|
|
this.name = 'CyberCoreError';
|
|
this.code = code;
|
|
this.originalError = originalError;
|
|
}
|
|
}
|
|
|
|
export class AgentNotRunningError extends CyberCoreError {
|
|
constructor(message = 'O agente desktop CyberCore Signer não está em execução ou não foi detectado em 127.0.0.1:21325.') {
|
|
super(message, 'AGENT_NOT_RUNNING');
|
|
this.name = 'AgentNotRunningError';
|
|
}
|
|
}
|
|
|
|
export class ApplicationNotAuthorizedError extends CyberCoreError {
|
|
constructor(message = 'A aplicação web não foi autorizada pelo usuário no CyberCore Signer.') {
|
|
super(message, 'APPLICATION_NOT_AUTHORIZED');
|
|
this.name = 'ApplicationNotAuthorizedError';
|
|
}
|
|
}
|
|
|
|
export class UserCancelledError extends CyberCoreError {
|
|
constructor(message = 'A operação de assinatura foi cancelada pelo usuário.') {
|
|
super(message, 'USER_CANCELLED');
|
|
this.name = 'UserCancelledError';
|
|
}
|
|
}
|
|
|
|
export class CertificateNotFoundError extends CyberCoreError {
|
|
constructor(message = 'Certificado digital não encontrado ou não selecionado.') {
|
|
super(message, 'CERTIFICATE_NOT_FOUND');
|
|
this.name = 'CertificateNotFoundError';
|
|
}
|
|
}
|
|
|
|
export class PinRequiredError extends CyberCoreError {
|
|
constructor(message = 'PIN do token ou smart card A3 é obrigatório.') {
|
|
super(message, 'PIN_REQUIRED');
|
|
this.name = 'PinRequiredError';
|
|
}
|
|
}
|
|
|
|
export class PinIncorrectError extends CyberCoreError {
|
|
constructor(message = 'O PIN informado para o dispositivo A3 está incorreto.') {
|
|
super(message, 'PIN_INCORRECT');
|
|
this.name = 'PinIncorrectError';
|
|
}
|
|
}
|
|
|
|
export class TokenNotFoundError extends CyberCoreError {
|
|
constructor(message = 'Token USB ou smart card não foi detectado no computador.') {
|
|
super(message, 'TOKEN_NOT_FOUND');
|
|
this.name = 'TokenNotFoundError';
|
|
}
|
|
}
|
|
|
|
export class RequestExpiredError extends CyberCoreError {
|
|
constructor(message = 'A solicitação de assinatura expirou.') {
|
|
super(message, 'REQUEST_EXPIRED');
|
|
this.name = 'RequestExpiredError';
|
|
}
|
|
}
|
|
|
|
export class ReplayDetectedError extends CyberCoreError {
|
|
constructor(message = 'Requisição duplicada detectada (ataque de replay prevenido).') {
|
|
super(message, 'REPLAY_DETECTED');
|
|
this.name = 'ReplayDetectedError';
|
|
}
|
|
}
|