@naturalcycles/nodejs-lib 15.41.0 → 15.42.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.
|
@@ -4,7 +4,9 @@ export declare const j: {
|
|
|
4
4
|
string(): JsonSchemaStringBuilder<string, string, false>;
|
|
5
5
|
number(): JsonSchemaNumberBuilder<number, number, false>;
|
|
6
6
|
boolean(): JsonSchemaBooleanBuilder<boolean, boolean, false>;
|
|
7
|
-
object: typeof object
|
|
7
|
+
object: typeof object & {
|
|
8
|
+
dbEntity: typeof objectDbEntity;
|
|
9
|
+
};
|
|
8
10
|
objectInfer<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(props: P): JsonSchemaObjectInferringBuilder<P, false>;
|
|
9
11
|
array<IN, OUT, Opt>(itemSchema: JsonSchemaAnyBuilder<IN, OUT, Opt>): JsonSchemaArrayBuilder<IN, OUT, Opt>;
|
|
10
12
|
set<IN, OUT, Opt>(itemSchema: JsonSchemaAnyBuilder<IN, OUT, Opt>): JsonSchemaSet2Builder<IN, OUT, Opt>;
|
|
@@ -236,6 +238,8 @@ declare function object(props: AnyObject): never;
|
|
|
236
238
|
declare function object<IN extends AnyObject>(props: {
|
|
237
239
|
[key in keyof IN]: JsonSchemaAnyBuilder<any, IN[key], any>;
|
|
238
240
|
}): JsonSchemaObjectBuilder<IN, IN, false>;
|
|
241
|
+
declare function objectDbEntity(props?: AnyObject): never;
|
|
242
|
+
declare function objectDbEntity<IN extends AnyObject>(props?: AnyObject): JsonSchemaObjectBuilder<IN, IN, false>;
|
|
239
243
|
type Expand<T> = T extends infer O ? {
|
|
240
244
|
[K in keyof O]: O[K];
|
|
241
245
|
} : never;
|
|
@@ -16,7 +16,9 @@ export const j = {
|
|
|
16
16
|
boolean() {
|
|
17
17
|
return new JsonSchemaBooleanBuilder();
|
|
18
18
|
},
|
|
19
|
-
object,
|
|
19
|
+
object: Object.assign(object, {
|
|
20
|
+
dbEntity: objectDbEntity,
|
|
21
|
+
}),
|
|
20
22
|
objectInfer(props) {
|
|
21
23
|
return new JsonSchemaObjectInferringBuilder(props);
|
|
22
24
|
},
|
|
@@ -524,3 +526,11 @@ export class JsonSchemaEnumBuilder extends JsonSchemaAnyBuilder {
|
|
|
524
526
|
function object(props) {
|
|
525
527
|
return new JsonSchemaObjectBuilder(props);
|
|
526
528
|
}
|
|
529
|
+
function objectDbEntity(props) {
|
|
530
|
+
return j.object({
|
|
531
|
+
id: j.string(),
|
|
532
|
+
created: j.number().unixTimestamp2000(),
|
|
533
|
+
updated: j.number().unixTimestamp2000(),
|
|
534
|
+
...props,
|
|
535
|
+
});
|
|
536
|
+
}
|
package/package.json
CHANGED
|
@@ -37,7 +37,9 @@ export const j = {
|
|
|
37
37
|
return new JsonSchemaBooleanBuilder()
|
|
38
38
|
},
|
|
39
39
|
|
|
40
|
-
object,
|
|
40
|
+
object: Object.assign(object, {
|
|
41
|
+
dbEntity: objectDbEntity,
|
|
42
|
+
}),
|
|
41
43
|
|
|
42
44
|
objectInfer<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(
|
|
43
45
|
props: P,
|
|
@@ -833,6 +835,22 @@ function object<IN extends AnyObject>(props: {
|
|
|
833
835
|
return new JsonSchemaObjectBuilder<IN, IN, false>(props)
|
|
834
836
|
}
|
|
835
837
|
|
|
838
|
+
function objectDbEntity(props?: AnyObject): never
|
|
839
|
+
function objectDbEntity<IN extends AnyObject>(
|
|
840
|
+
props?: AnyObject,
|
|
841
|
+
): JsonSchemaObjectBuilder<IN, IN, false>
|
|
842
|
+
|
|
843
|
+
function objectDbEntity<IN extends AnyObject>(
|
|
844
|
+
props?: AnyObject,
|
|
845
|
+
): JsonSchemaObjectBuilder<IN, IN, false> {
|
|
846
|
+
return j.object({
|
|
847
|
+
id: j.string(),
|
|
848
|
+
created: j.number().unixTimestamp2000(),
|
|
849
|
+
updated: j.number().unixTimestamp2000(),
|
|
850
|
+
...props,
|
|
851
|
+
})
|
|
852
|
+
}
|
|
853
|
+
|
|
836
854
|
type Expand<T> = T extends infer O ? { [K in keyof O]: O[K] } : never
|
|
837
855
|
|
|
838
856
|
type ExactMatch<A, B> =
|