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