@douglasneuroinformatics/libjs 2.2.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/exception.d.ts +12 -0
- package/dist/exception.d.ts.map +1 -1
- package/dist/exception.js +4 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/zod.d.ts +3 -0
- package/dist/zod.d.ts.map +1 -1
- package/dist/zod.js +14 -0
- package/package.json +1 -1
package/dist/exception.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Result, ResultAsync } from 'neverthrow';
|
|
2
2
|
import type { IsNever, RequiredKeysOf } from 'type-fest';
|
|
3
|
+
import type { z } from 'zod';
|
|
3
4
|
import type { SingleKeyMap, ToAbstractConstructor } from './types.js';
|
|
4
5
|
type ExceptionName = `${string}Exception`;
|
|
5
6
|
type ExceptionOptions = {
|
|
@@ -105,6 +106,17 @@ declare const OutOfRangeException: ExceptionType<{
|
|
|
105
106
|
};
|
|
106
107
|
}>;
|
|
107
108
|
}>;
|
|
109
|
+
export declare const ValidationException: ExceptionType<{
|
|
110
|
+
readonly message: "Zod schema validation failed";
|
|
111
|
+
readonly name: "ValidationException";
|
|
112
|
+
}, {
|
|
113
|
+
details: {
|
|
114
|
+
data: unknown;
|
|
115
|
+
issues: z.ZodIssue[];
|
|
116
|
+
};
|
|
117
|
+
}, {
|
|
118
|
+
[key: string]: unknown;
|
|
119
|
+
}>;
|
|
108
120
|
export type { ExceptionConstructor, ExceptionConstructorArgs, ExceptionName, ExceptionOptions, ExceptionParams, ExceptionStatic, ExceptionType };
|
|
109
121
|
export { BaseException, ExceptionBuilder, OutOfRangeException, RuntimeException, ValueException };
|
|
110
122
|
//# sourceMappingURL=exception.d.ts.map
|
package/dist/exception.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exception.d.ts","sourceRoot":"","sources":["../src/exception.ts"],"names":[],"mappings":"AAKA,OAAO,EAAiB,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"exception.d.ts","sourceRoot":"","sources":["../src/exception.ts"],"names":[],"mappings":"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"}
|
package/dist/exception.js
CHANGED
|
@@ -111,4 +111,8 @@ const { OutOfRangeException } = new ExceptionBuilder()
|
|
|
111
111
|
return new this({ details: { max: Infinity, min: 0, value } });
|
|
112
112
|
})
|
|
113
113
|
.build();
|
|
114
|
+
export const { ValidationException } = new ExceptionBuilder()
|
|
115
|
+
.setOptionsType()
|
|
116
|
+
.setParams({ message: 'Zod schema validation failed', name: 'ValidationException' })
|
|
117
|
+
.build();
|
|
114
118
|
export { BaseException, ExceptionBuilder, OutOfRangeException, RuntimeException, ValueException };
|
package/dist/types.d.ts
CHANGED
|
@@ -21,4 +21,5 @@ export type IsUnion<T, U = T> = (T extends U ? (U extends T ? true : false) : ne
|
|
|
21
21
|
export type SingleKeyMap<K extends PropertyKey, V> = IsStringLiteral<K> extends true ? IsUnion<K> extends false ? {
|
|
22
22
|
[key in K]: V;
|
|
23
23
|
} : never : never;
|
|
24
|
+
export type FallbackIfNever<T, U> = [T] extends [never] ? U : T;
|
|
24
25
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS;IACxD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,GACG,OAAO,CACL,MAAM;KACH,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK;CAC1F,EACD,KAAK,EACL,IAAI,CACL,GACD,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAClB,KAAK,CAAC;AAEZ,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,SAAS,KACnF,GAAG,IAAI,EAAE,MAAM,KAAK,SAAS,GAAG,EAAE,KAC/B,MAAM,OAAO,GACd,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,GACxC,KAAK,CAAC;AAEV,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;AAEjH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,IAC/C,eAAe,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,GACtB;KACG,GAAG,IAAI,CAAC,GAAG,CAAC;CACd,GACD,KAAK,GACP,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS;IACxD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,GACG,OAAO,CACL,MAAM;KACH,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK;CAC1F,EACD,KAAK,EACL,IAAI,CACL,GACD,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAClB,KAAK,CAAC;AAEZ,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,SAAS,KACnF,GAAG,IAAI,EAAE,MAAM,KAAK,SAAS,GAAG,EAAE,KAC/B,MAAM,OAAO,GACd,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,GACxC,KAAK,CAAC;AAEV,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;AAEjH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,IAC/C,eAAe,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,GACtB;KACG,GAAG,IAAI,CAAC,GAAG,CAAC;CACd,GACD,KAAK,GACP,KAAK,CAAC;AAEZ,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC"}
|
package/dist/zod.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import type { Result } from 'neverthrow';
|
|
1
2
|
import { z } from 'zod';
|
|
3
|
+
import { ValidationException } from './exception.js';
|
|
2
4
|
/** Used to determine if object is of type `ZodType` independent of specific instances or library versions */
|
|
3
5
|
export declare function isZodType(arg: unknown): arg is z.ZodTypeAny;
|
|
4
6
|
export declare const $BooleanLike: z.ZodType<boolean, z.ZodTypeDef, any>;
|
|
5
7
|
export declare const $NumberLike: z.ZodType<number, z.ZodTypeDef, any>;
|
|
6
8
|
export declare const $UrlLike: z.ZodType<URL, z.ZodTypeDef, any>;
|
|
7
9
|
export declare const $Uint8ArrayLike: z.ZodType<Uint8Array, z.ZodTypeDef, any>;
|
|
10
|
+
export declare function safeParse<TSchema extends z.ZodTypeAny>(data: unknown, $Schema: TSchema): Result<z.infer<TSchema>, typeof ValidationException.Instance>;
|
|
8
11
|
//# sourceMappingURL=zod.d.ts.map
|
package/dist/zod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../src/zod.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../src/zod.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAIrD,6GAA6G;AAC7G,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,UAAU,CAM3D;AAED,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,GAAG,CAShD,CAAC;AAEhB,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE,GAAG,CAK/C,CAAC;AAEf,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,GAAG,CAWtD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,GAAG,CAOjE,CAAC;AAEL,wBAAgB,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC,UAAU,EACpD,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,OAAO,GACf,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAW/D"}
|
package/dist/zod.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { ok } from 'neverthrow';
|
|
1
2
|
import { z } from 'zod';
|
|
3
|
+
import { ValidationException } from './exception.js';
|
|
2
4
|
import { isNumberLike, parseNumber } from './number.js';
|
|
3
5
|
import { isObject } from './object.js';
|
|
4
6
|
/** Used to determine if object is of type `ZodType` independent of specific instances or library versions */
|
|
@@ -43,3 +45,15 @@ export const $Uint8ArrayLike = z
|
|
|
43
45
|
}
|
|
44
46
|
return arg;
|
|
45
47
|
});
|
|
48
|
+
export function safeParse(data, $Schema) {
|
|
49
|
+
const result = $Schema.safeParse(data);
|
|
50
|
+
if (!result.success) {
|
|
51
|
+
return ValidationException.asErr({
|
|
52
|
+
details: {
|
|
53
|
+
data,
|
|
54
|
+
issues: result.error.issues
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return ok(result.data);
|
|
59
|
+
}
|
package/package.json
CHANGED