Comparing version 9.2.0 to 9.3.0
@@ -1,9 +0,9 @@ | ||
declare class CustomError<TErrorName extends string = string> extends Error { | ||
code: TErrorName; | ||
data?: any; | ||
declare class CustomError<TData = any, TErrorCode extends string = string> extends Error { | ||
code: TErrorCode; | ||
data?: TData; | ||
constructor({ code, message, cause, data }: { | ||
code: TErrorName; | ||
code: TErrorCode; | ||
message: string; | ||
cause?: Error; | ||
data?: any; | ||
data?: TData; | ||
}); | ||
@@ -10,0 +10,0 @@ toJSON(): any; |
import { CustomError } from './CustomError'; | ||
interface CustomErrorConstructor<TErrorName extends string> { | ||
interface CustomErrorConstructor<TData = any, TErrorCode extends string = string> { | ||
new (parameters?: string | { | ||
cause?: Error; | ||
data?: any; | ||
data?: TData; | ||
message?: string; | ||
}): CustomError<TErrorName>; | ||
}): CustomError<TData, TErrorCode>; | ||
code: string; | ||
} | ||
export type { CustomErrorConstructor }; |
import { CustomErrorConstructor } from './CustomErrorConstructor'; | ||
declare const defekt: <TErrorCode extends string>({ code, defaultMessage }: { | ||
declare const defekt: <TData = any, TErrorCode extends string = string>({ code, defaultMessage }: { | ||
code: TErrorCode; | ||
defaultMessage?: string | undefined; | ||
}) => CustomErrorConstructor<TErrorCode>; | ||
}) => CustomErrorConstructor<TData, TErrorCode>; | ||
export { defekt }; |
import { CustomError } from './CustomError'; | ||
import { CustomErrorConstructor } from './CustomErrorConstructor'; | ||
import { Result } from './Result'; | ||
declare const HydratingErrorFailed_base: CustomErrorConstructor<"HydratingErrorFailed">; | ||
declare const HydratingErrorFailed_base: CustomErrorConstructor<any, "HydratingErrorFailed">; | ||
declare class HydratingErrorFailed extends HydratingErrorFailed_base { | ||
@@ -9,4 +9,4 @@ } | ||
rawEx: any; | ||
potentialErrorConstructors: CustomErrorConstructor<TPotentialCustomErrorNames>[]; | ||
}) => Result<CustomError<TPotentialCustomErrorNames>, HydratingErrorFailed>; | ||
potentialErrorConstructors: CustomErrorConstructor<TPotentialCustomErrorNames, string>[]; | ||
}) => Result<CustomError<TPotentialCustomErrorNames, string>, HydratingErrorFailed>; | ||
export { HydratingErrorFailed, hydrateCustomError }; |
import { CustomError } from './CustomError'; | ||
import { CustomErrorConstructor } from './CustomErrorConstructor'; | ||
import { error, Result, value } from './Result'; | ||
declare const HydratingResultFailed_base: CustomErrorConstructor<"HydratingResultFailed">; | ||
declare const HydratingResultFailed_base: CustomErrorConstructor<any, "HydratingResultFailed">; | ||
declare class HydratingResultFailed extends HydratingResultFailed_base { | ||
@@ -13,4 +13,4 @@ } | ||
}; | ||
potentialErrorConstructors?: CustomErrorConstructor<TPotentialCustomErrorNames>[] | undefined; | ||
}) => Result<Result<TValue, TError | CustomError<TPotentialCustomErrorNames>>, HydratingResultFailed>; | ||
potentialErrorConstructors?: CustomErrorConstructor<TPotentialCustomErrorNames, string>[] | undefined; | ||
}) => Result<Result<TValue, TError | CustomError<TPotentialCustomErrorNames, string>>, HydratingResultFailed>; | ||
export { hydrateResult }; |
import { CustomError } from './CustomError'; | ||
import { CustomErrorConstructor } from './CustomErrorConstructor'; | ||
declare const isCustomError: <TErrorName extends string>(ex: any, errorType?: CustomErrorConstructor<TErrorName> | undefined) => ex is CustomError<TErrorName>; | ||
declare const isCustomError: <TErrorName extends string>(ex: any, errorType?: CustomErrorConstructor<TErrorName, string> | undefined) => ex is CustomError<TErrorName, string>; | ||
export { isCustomError }; |
@@ -1,2 +0,2 @@ | ||
declare const ResultDoesNotContainError_base: import("./CustomErrorConstructor").CustomErrorConstructor<"ResultDoesNotContainError">; | ||
declare const ResultDoesNotContainError_base: import("./CustomErrorConstructor").CustomErrorConstructor<any, "ResultDoesNotContainError">; | ||
declare class ResultDoesNotContainError extends ResultDoesNotContainError_base { | ||
@@ -3,0 +3,0 @@ } |
@@ -0,1 +1,8 @@ | ||
# [9.3.0](https://github.com/thenativeweb/defekt/compare/9.2.0...9.3.0) (2022-08-09) | ||
### Features | ||
* Allow type-definition of CustomError.data ([#366](https://github.com/thenativeweb/defekt/issues/366)) ([23f5b25](https://github.com/thenativeweb/defekt/commit/23f5b259558781cbb92e3c33a187f12e74965799)) | ||
# [9.2.0](https://github.com/thenativeweb/defekt/compare/9.1.1...9.2.0) (2022-06-01) | ||
@@ -2,0 +9,0 @@ |
@@ -1,11 +0,11 @@ | ||
class CustomError<TErrorName extends string = string> extends Error { | ||
public code: TErrorName; | ||
class CustomError<TData = any, TErrorCode extends string = string> extends Error { | ||
public code: TErrorCode; | ||
public data?: any; | ||
public data?: TData; | ||
public constructor ({ code, message, cause, data }: { | ||
code: TErrorName; | ||
code: TErrorCode; | ||
message: string; | ||
cause?: Error; | ||
data?: any; | ||
data?: TData; | ||
}) { | ||
@@ -12,0 +12,0 @@ super(message); |
import { CustomError } from './CustomError'; | ||
interface CustomErrorConstructor<TErrorName extends string> { | ||
interface CustomErrorConstructor<TData = any, TErrorCode extends string = string> { | ||
new( | ||
parameters?: string | { cause?: Error; data?: any; message?: string } | ||
): CustomError<TErrorName>; | ||
parameters?: string | { cause?: Error; data?: TData; message?: string } | ||
): CustomError<TData, TErrorCode>; | ||
@@ -8,0 +8,0 @@ code: string; |
@@ -5,3 +5,3 @@ import { CustomError } from './CustomError'; | ||
const defekt = function <TErrorCode extends string>({ | ||
const defekt = function <TData = any, TErrorCode extends string = string>({ | ||
code, | ||
@@ -12,4 +12,4 @@ defaultMessage | ||
defaultMessage?: string; | ||
}): CustomErrorConstructor<TErrorCode> { | ||
return class extends CustomError<TErrorCode> { | ||
}): CustomErrorConstructor<TData, TErrorCode> { | ||
return class extends CustomError<TData, TErrorCode> { | ||
public static code: TErrorCode = code; | ||
@@ -20,3 +20,3 @@ | ||
cause?: Error; | ||
data?: any; | ||
data?: TData; | ||
message?: string; | ||
@@ -23,0 +23,0 @@ } = {} |
{ | ||
"name": "defekt", | ||
"version": "9.2.0", | ||
"version": "9.3.0", | ||
"description": "defekt is custom errors made simple.", | ||
@@ -29,2 +29,6 @@ "contributors": [ | ||
"email": "noah.hummel@thenativeweb.io" | ||
}, | ||
{ | ||
"name": "Niclas Roßberger", | ||
"email": "niclas+defekt@nidomiro.de" | ||
} | ||
@@ -38,3 +42,3 @@ ], | ||
"assertthat": "6.5.2", | ||
"roboter": "13.1.0", | ||
"roboter": "13.2.0", | ||
"semantic-release-configuration": "2.0.7" | ||
@@ -41,0 +45,0 @@ }, |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
56296