@naturalcycles/nodejs-lib 15.77.0 → 15.78.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/util/git2.d.ts
CHANGED
package/dist/util/git2.js
CHANGED
|
@@ -54,6 +54,15 @@ class Git2 {
|
|
|
54
54
|
// console.log(`gitIsAhead: ${stdout}`)
|
|
55
55
|
return Number(stdout) > 0;
|
|
56
56
|
}
|
|
57
|
+
fetch() {
|
|
58
|
+
const cmd = 'git fetch';
|
|
59
|
+
try {
|
|
60
|
+
execSync(cmd, {
|
|
61
|
+
stdio: 'inherit',
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch { }
|
|
65
|
+
}
|
|
57
66
|
pull() {
|
|
58
67
|
const cmd = 'git pull';
|
|
59
68
|
try {
|
|
@@ -248,15 +248,13 @@ export declare class JsonSchemaObjectBuilder<IN extends AnyObject, OUT extends A
|
|
|
248
248
|
* When set, the validation will not strip away properties that are not specified explicitly in the schema.
|
|
249
249
|
*/
|
|
250
250
|
allowAdditionalProperties(): this;
|
|
251
|
-
extend<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(props: P): JsonSchemaObjectBuilder<IN & {
|
|
252
|
-
[K in keyof P
|
|
253
|
-
} & {
|
|
254
|
-
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt> ? IsOpt extends true ? K : never : never]?: P[K] extends JsonSchemaAnyBuilder<infer IN2, any, any> ? IN2 : never;
|
|
255
|
-
}, OUT & {
|
|
251
|
+
extend<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(props: P): JsonSchemaObjectBuilder<RelaxIndexSignature<IN & {
|
|
252
|
+
[K in keyof P]?: P[K] extends JsonSchemaAnyBuilder<infer IN2, any, any> ? IN2 : never;
|
|
253
|
+
}>, AllowExtraKeys<RelaxIndexSignature<OUT & {
|
|
256
254
|
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt> ? IsOpt extends true ? never : K : never]: P[K] extends JsonSchemaAnyBuilder<any, infer OUT2, any> ? OUT2 : never;
|
|
257
255
|
} & {
|
|
258
256
|
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt> ? IsOpt extends true ? K : never : never]?: P[K] extends JsonSchemaAnyBuilder<any, infer OUT2, any> ? OUT2 : never;
|
|
259
|
-
}
|
|
257
|
+
}>>, false>;
|
|
260
258
|
/**
|
|
261
259
|
* Concatenates another schema to the current schema.
|
|
262
260
|
*
|
|
@@ -279,15 +277,15 @@ export declare class JsonSchemaObjectBuilder<IN extends AnyObject, OUT extends A
|
|
|
279
277
|
/**
|
|
280
278
|
* Extends the current schema with `id`, `created` and `updated` according to NC DB conventions.
|
|
281
279
|
*/
|
|
282
|
-
dbEntity(): JsonSchemaObjectBuilder<IN & {
|
|
280
|
+
dbEntity(): JsonSchemaObjectBuilder<RelaxIndexSignature<IN & {
|
|
281
|
+
id?: string | undefined;
|
|
282
|
+
created?: any;
|
|
283
|
+
updated?: any;
|
|
284
|
+
}>, AllowExtraKeys<RelaxIndexSignature<OUT & {
|
|
283
285
|
id: string;
|
|
284
286
|
created: any;
|
|
285
287
|
updated: any;
|
|
286
|
-
} & {}
|
|
287
|
-
id: string;
|
|
288
|
-
created: any;
|
|
289
|
-
updated: any;
|
|
290
|
-
} & {}, false>;
|
|
288
|
+
} & {}>>, false>;
|
|
291
289
|
minProperties(minProperties: number): this;
|
|
292
290
|
maxProperties(maxProperties: number): this;
|
|
293
291
|
exclusiveProperties(propNames: readonly (keyof IN & string)[]): this;
|
|
@@ -455,7 +453,22 @@ declare function withEnumKeys<const T extends readonly (string | number)[] | Str
|
|
|
455
453
|
type Expand<T> = {
|
|
456
454
|
[K in keyof T]: T[K];
|
|
457
455
|
};
|
|
458
|
-
type
|
|
456
|
+
type StripIndexSignatureDeep<T> = T extends readonly unknown[] ? T : T extends Record<string, any> ? {
|
|
457
|
+
[K in keyof T as string extends K ? never : number extends K ? never : symbol extends K ? never : K]: StripIndexSignatureDeep<T[K]>;
|
|
458
|
+
} : T;
|
|
459
|
+
type RelaxIndexSignature<T> = T extends readonly unknown[] ? T : T extends AnyObject ? string extends keyof T ? any : {
|
|
460
|
+
[K in keyof T]: RelaxIndexSignature<T[K]>;
|
|
461
|
+
} : T;
|
|
462
|
+
declare const allowExtraKeysSymbol: unique symbol;
|
|
463
|
+
type AllowExtraKeys<T> = T & {
|
|
464
|
+
readonly [allowExtraKeysSymbol]?: true;
|
|
465
|
+
};
|
|
466
|
+
type HasAllowExtraKeys<T> = T extends {
|
|
467
|
+
readonly [allowExtraKeysSymbol]?: true;
|
|
468
|
+
} ? true : false;
|
|
469
|
+
type IsAssignableRelaxed<A, B> = [RelaxIndexSignature<A>] extends [B] ? true : false;
|
|
470
|
+
type ExactMatchBase<A, B> = (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? (<T>() => T extends B ? 1 : 2) extends <T>() => T extends A ? 1 : 2 ? true : false : false;
|
|
471
|
+
type ExactMatch<A, B> = HasAllowExtraKeys<B> extends true ? IsAssignableRelaxed<B, A> : ExactMatchBase<Expand<A>, Expand<B>> extends true ? true : ExactMatchBase<Expand<StripIndexSignatureDeep<A>>, Expand<StripIndexSignatureDeep<B>>>;
|
|
459
472
|
type BuilderOutUnion<B extends readonly JsonSchemaAnyBuilder<any, any, any>[]> = {
|
|
460
473
|
[K in keyof B]: B[K] extends JsonSchemaAnyBuilder<any, infer O, any> ? O : never;
|
|
461
474
|
}[number];
|
package/package.json
CHANGED
package/src/util/git2.ts
CHANGED
|
@@ -869,36 +869,30 @@ export class JsonSchemaObjectBuilder<
|
|
|
869
869
|
extend<P extends Record<string, JsonSchemaAnyBuilder<any, any, any>>>(
|
|
870
870
|
props: P,
|
|
871
871
|
): JsonSchemaObjectBuilder<
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt>
|
|
897
|
-
? IsOpt extends true
|
|
898
|
-
? K
|
|
899
|
-
: never
|
|
900
|
-
: never]?: P[K] extends JsonSchemaAnyBuilder<any, infer OUT2, any> ? OUT2 : never
|
|
901
|
-
},
|
|
872
|
+
RelaxIndexSignature<
|
|
873
|
+
IN & {
|
|
874
|
+
[K in keyof P]?: P[K] extends JsonSchemaAnyBuilder<infer IN2, any, any> ? IN2 : never
|
|
875
|
+
}
|
|
876
|
+
>,
|
|
877
|
+
AllowExtraKeys<
|
|
878
|
+
RelaxIndexSignature<
|
|
879
|
+
OUT & {
|
|
880
|
+
// required keys
|
|
881
|
+
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt>
|
|
882
|
+
? IsOpt extends true
|
|
883
|
+
? never
|
|
884
|
+
: K
|
|
885
|
+
: never]: P[K] extends JsonSchemaAnyBuilder<any, infer OUT2, any> ? OUT2 : never
|
|
886
|
+
} & {
|
|
887
|
+
// optional keys
|
|
888
|
+
[K in keyof P as P[K] extends JsonSchemaAnyBuilder<any, any, infer IsOpt>
|
|
889
|
+
? IsOpt extends true
|
|
890
|
+
? K
|
|
891
|
+
: never
|
|
892
|
+
: never]?: P[K] extends JsonSchemaAnyBuilder<any, infer OUT2, any> ? OUT2 : never
|
|
893
|
+
}
|
|
894
|
+
>
|
|
895
|
+
>,
|
|
902
896
|
false
|
|
903
897
|
> {
|
|
904
898
|
const newBuilder = new JsonSchemaObjectBuilder()
|
|
@@ -1445,13 +1439,50 @@ function withEnumKeys<
|
|
|
1445
1439
|
|
|
1446
1440
|
type Expand<T> = { [K in keyof T]: T[K] }
|
|
1447
1441
|
|
|
1448
|
-
type
|
|
1449
|
-
|
|
1450
|
-
|
|
1442
|
+
type StripIndexSignatureDeep<T> = T extends readonly unknown[]
|
|
1443
|
+
? T
|
|
1444
|
+
: T extends Record<string, any>
|
|
1445
|
+
? {
|
|
1446
|
+
[K in keyof T as string extends K
|
|
1447
|
+
? never
|
|
1448
|
+
: number extends K
|
|
1449
|
+
? never
|
|
1450
|
+
: symbol extends K
|
|
1451
|
+
? never
|
|
1452
|
+
: K]: StripIndexSignatureDeep<T[K]>
|
|
1453
|
+
}
|
|
1454
|
+
: T
|
|
1455
|
+
|
|
1456
|
+
type RelaxIndexSignature<T> = T extends readonly unknown[]
|
|
1457
|
+
? T
|
|
1458
|
+
: T extends AnyObject
|
|
1459
|
+
? string extends keyof T
|
|
1460
|
+
? any
|
|
1461
|
+
: { [K in keyof T]: RelaxIndexSignature<T[K]> }
|
|
1462
|
+
: T
|
|
1463
|
+
|
|
1464
|
+
declare const allowExtraKeysSymbol: unique symbol
|
|
1465
|
+
|
|
1466
|
+
type AllowExtraKeys<T> = T & { readonly [allowExtraKeysSymbol]?: true }
|
|
1467
|
+
|
|
1468
|
+
type HasAllowExtraKeys<T> = T extends { readonly [allowExtraKeysSymbol]?: true } ? true : false
|
|
1469
|
+
|
|
1470
|
+
type IsAssignableRelaxed<A, B> = [RelaxIndexSignature<A>] extends [B] ? true : false
|
|
1471
|
+
|
|
1472
|
+
type ExactMatchBase<A, B> =
|
|
1473
|
+
(<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2
|
|
1474
|
+
? (<T>() => T extends B ? 1 : 2) extends <T>() => T extends A ? 1 : 2
|
|
1451
1475
|
? true
|
|
1452
1476
|
: false
|
|
1453
1477
|
: false
|
|
1454
1478
|
|
|
1479
|
+
type ExactMatch<A, B> =
|
|
1480
|
+
HasAllowExtraKeys<B> extends true
|
|
1481
|
+
? IsAssignableRelaxed<B, A>
|
|
1482
|
+
: ExactMatchBase<Expand<A>, Expand<B>> extends true
|
|
1483
|
+
? true
|
|
1484
|
+
: ExactMatchBase<Expand<StripIndexSignatureDeep<A>>, Expand<StripIndexSignatureDeep<B>>>
|
|
1485
|
+
|
|
1455
1486
|
type BuilderOutUnion<B extends readonly JsonSchemaAnyBuilder<any, any, any>[]> = {
|
|
1456
1487
|
[K in keyof B]: B[K] extends JsonSchemaAnyBuilder<any, infer O, any> ? O : never
|
|
1457
1488
|
}[number]
|