@naturalcycles/nodejs-lib 15.46.0 → 15.46.1
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.
|
@@ -252,15 +252,14 @@ declare function object<IN extends AnyObject>(props: {
|
|
|
252
252
|
[key in keyof IN]: JsonSchemaAnyBuilder<any, IN[key], any>;
|
|
253
253
|
}): JsonSchemaObjectBuilder<IN, IN, false>;
|
|
254
254
|
declare function objectInfer<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(props: P): JsonSchemaObjectInferringBuilder<P, false>;
|
|
255
|
-
declare function objectDbEntity(props
|
|
256
|
-
declare function objectDbEntity<IN extends AnyObject>(props
|
|
257
|
-
[
|
|
255
|
+
declare function objectDbEntity(props: AnyObject): never;
|
|
256
|
+
declare function objectDbEntity<IN extends AnyObject, EXTRA_KEYS extends Exclude<keyof IN, 'id' | 'created' | 'updated'> = Exclude<keyof IN, 'id' | 'created' | 'updated'>>(props: {
|
|
257
|
+
[K in EXTRA_KEYS]: JsonSchemaAnyBuilder<any, IN[K], any>;
|
|
258
258
|
}): JsonSchemaObjectBuilder<IN, IN, false>;
|
|
259
259
|
type Expand<T> = T extends infer O ? {
|
|
260
260
|
[K in keyof O]: O[K];
|
|
261
261
|
} : never;
|
|
262
262
|
type ExactMatch<A, B> = (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? true : false;
|
|
263
|
-
type PartiallyOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
|
|
264
263
|
type BuilderOutUnion<B extends readonly JsonSchemaAnyBuilder<any, any, any>[]> = {
|
|
265
264
|
[K in keyof B]: B[K] extends JsonSchemaAnyBuilder<any, infer O, any> ? O : never;
|
|
266
265
|
}[number];
|
package/package.json
CHANGED
|
@@ -888,21 +888,25 @@ function objectInfer<P extends Record<string, JsonSchemaAnyBuilder<any, any, any
|
|
|
888
888
|
return new JsonSchemaObjectInferringBuilder<P, false>(props)
|
|
889
889
|
}
|
|
890
890
|
|
|
891
|
-
function objectDbEntity(props
|
|
892
|
-
function objectDbEntity<
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
IN
|
|
896
|
-
|
|
897
|
-
|
|
891
|
+
function objectDbEntity(props: AnyObject): never
|
|
892
|
+
function objectDbEntity<
|
|
893
|
+
IN extends AnyObject,
|
|
894
|
+
EXTRA_KEYS extends Exclude<keyof IN, 'id' | 'created' | 'updated'> = Exclude<
|
|
895
|
+
keyof IN,
|
|
896
|
+
'id' | 'created' | 'updated'
|
|
897
|
+
>,
|
|
898
|
+
>(props: {
|
|
899
|
+
[K in EXTRA_KEYS]: JsonSchemaAnyBuilder<any, IN[K], any>
|
|
898
900
|
}): JsonSchemaObjectBuilder<IN, IN, false>
|
|
899
901
|
|
|
900
|
-
function objectDbEntity<
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
IN
|
|
904
|
-
|
|
905
|
-
|
|
902
|
+
function objectDbEntity<
|
|
903
|
+
IN extends AnyObject,
|
|
904
|
+
EXTRA_KEYS extends Exclude<keyof IN, 'id' | 'created' | 'updated'> = Exclude<
|
|
905
|
+
keyof IN,
|
|
906
|
+
'id' | 'created' | 'updated'
|
|
907
|
+
>,
|
|
908
|
+
>(props: {
|
|
909
|
+
[K in EXTRA_KEYS]: JsonSchemaAnyBuilder<any, IN[K], any>
|
|
906
910
|
}): JsonSchemaObjectBuilder<IN, IN, false> {
|
|
907
911
|
return j.object({
|
|
908
912
|
id: j.string(),
|
|
@@ -917,8 +921,6 @@ type Expand<T> = T extends infer O ? { [K in keyof O]: O[K] } : never
|
|
|
917
921
|
type ExactMatch<A, B> =
|
|
918
922
|
(<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? true : false
|
|
919
923
|
|
|
920
|
-
type PartiallyOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>
|
|
921
|
-
|
|
922
924
|
type BuilderOutUnion<B extends readonly JsonSchemaAnyBuilder<any, any, any>[]> = {
|
|
923
925
|
[K in keyof B]: B[K] extends JsonSchemaAnyBuilder<any, infer O, any> ? O : never
|
|
924
926
|
}[number]
|