v5-conversion-error.ts 640 B

12345678910111213141516171819202122232425262728
  1. import ExtensibleCustomError from 'extensible-custom-error';
  2. import { V5ConversionErrCode } from '~/interfaces/errors/v5-conversion-error';
  3. export class V5ConversionError extends ExtensibleCustomError {
  4. readonly id = 'V5ConversionError'
  5. code!: V5ConversionErrCode
  6. constructor(message: string, code: V5ConversionErrCode) {
  7. super(message);
  8. this.code = code;
  9. }
  10. }
  11. export const isV5ConversionError = (err: any): err is V5ConversionError => {
  12. if (err == null || typeof err !== 'object') {
  13. return false;
  14. }
  15. if (err instanceof V5ConversionError) {
  16. return true;
  17. }
  18. return err?.id === 'V5ConversionError';
  19. };