mirror of
https://github.com/dl-solarity/hardhat-zkit.git
synced 2026-05-01 03:00:04 -04:00
56 lines
1.7 KiB
TypeScript
56 lines
1.7 KiB
TypeScript
import { NomicLabsHardhatPluginError } from "hardhat/plugins";
|
|
|
|
import { CircuitInfo } from "@solarity/zkit";
|
|
|
|
import { PLAGIN_NAME } from "./internal/constants";
|
|
|
|
export class HardhatZKitError extends NomicLabsHardhatPluginError {
|
|
constructor(message: string, parent?: Error) {
|
|
super(PLAGIN_NAME, message, parent);
|
|
}
|
|
}
|
|
|
|
export class NonExistentFile extends HardhatZKitError {
|
|
constructor(filePath: string) {
|
|
super(`The file at path ${filePath} does not exist`);
|
|
}
|
|
}
|
|
|
|
export class NonExistentR1CSHeader extends HardhatZKitError {
|
|
constructor(r1csFilePath: string) {
|
|
super(`Header section in ${r1csFilePath} file is not found.`);
|
|
}
|
|
}
|
|
|
|
export class MultipleCircuitsInfoError extends HardhatZKitError {
|
|
constructor(fileSourceName: string, circuitsInfo: CircuitInfo[]) {
|
|
super(
|
|
`Circuit with ${fileSourceName} source name has several circuits info: ${circuitsInfo.map((info) => `[Path: ${info.path}, Id: ${info.id}]`)}`,
|
|
);
|
|
}
|
|
}
|
|
|
|
export class ZeroCircuitsInfoError extends HardhatZKitError {
|
|
constructor(fileSourceName: string) {
|
|
super(`Circuit with ${fileSourceName} source name does not have any circuit info`);
|
|
}
|
|
}
|
|
|
|
export class DuplicateCircuitsNameError extends HardhatZKitError {
|
|
constructor(fileSourceName: string, duplicatedFileSourceName: string) {
|
|
super(`Circuit ${fileSourceName} duplicated ${duplicatedFileSourceName} circuit`);
|
|
}
|
|
}
|
|
|
|
export class NonExistentCircuitArtifactsError extends HardhatZKitError {
|
|
constructor(circuit: string) {
|
|
super(`The artifacts for '${circuit}' circuit do not exist. Please compile circuits`);
|
|
}
|
|
}
|
|
|
|
export class NonExistentCircuitError extends HardhatZKitError {
|
|
constructor(circuit: string) {
|
|
super(`Circuit '${circuit}' does not exist`);
|
|
}
|
|
}
|