@trpc/server 10.43.3 → 10.43.4
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/core/internals/utils.d.ts +11 -8
- package/dist/core/internals/utils.d.ts.map +1 -1
- package/dist/shared/internal/serialize.d.ts +2 -2
- package/dist/shared/internal/serialize.d.ts.map +1 -1
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/core/internals/utils.ts +15 -19
- package/src/shared/internal/serialize.ts +5 -2
- package/src/types.ts +15 -0
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import { Simplify } from '../../types';
|
|
1
|
+
import { Simplify, WithoutIndexSignature } from '../../types';
|
|
2
2
|
import { ProcedureParams } from '../procedure';
|
|
3
3
|
/**
|
|
4
4
|
* @internal
|
|
5
5
|
* Overwrite properties in `TType` with properties in `TWith`
|
|
6
|
-
* Only overwrites properties when
|
|
7
|
-
* Otherwise it will
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
* Only overwrites properties when the type to be overwritten
|
|
7
|
+
* is an object. Otherwise it will just use the type from `TWith`.
|
|
8
|
+
*/
|
|
9
|
+
export type Overwrite<TType, TWith> = TWith extends any ? TType extends object ? {
|
|
10
|
+
[K in keyof WithoutIndexSignature<TType> | keyof WithoutIndexSignature<TWith>]: K extends keyof TWith ? TWith[K] : K extends keyof TType ? TType[K] : never;
|
|
11
|
+
} & (string extends keyof TWith ? {
|
|
12
|
+
[key: string]: TWith[string];
|
|
13
|
+
} : number extends keyof TWith ? {
|
|
14
|
+
[key: number]: TWith[number];
|
|
15
|
+
} : object) : TWith : never;
|
|
13
16
|
/**
|
|
14
17
|
* @internal
|
|
15
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,SAAS,GAAG,GACnD,KAAK,SAAS,MAAM,GAClB;KACG,CAAC,IACE,MAAM,qBAAqB,CAAC,KAAK,CAAC,GAClC,MAAM,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,KAAK,GAC1D,KAAK,CAAC,CAAC,CAAC,GACR,CAAC,SAAS,MAAM,KAAK,GACrB,KAAK,CAAC,CAAC,CAAC,GACR,KAAK;CACV,GAAG,CAAC,MAAM,SAAS,MAAM,KAAK,GAC3B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;CAAE,GAChC,MAAM,SAAS,MAAM,KAAK,GAC1B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;CAAE,GAChC,MAAM,CAAC,GACX,KAAK,GACP,KAAK,CAAC;AAEV;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,KAAK,EAAE,KAAK,IAAI;KACxC,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,SAAS,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;CAChE,CAAC;AACF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,IAAI,WAAW,SAAS,MAAM,GACpE,SAAS,GACT,MAAM,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB;aAClB,kBAAkB;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,eAAe;IAC7D,GAAG,EAAE,QAAQ,CACX,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CACpE,CAAC;IACF,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS,WAAW,GAC5C,SAAS,GACT,OAAO,CAAC,YAAY,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,YAAY,EAAE,cAAc,IACpD,YAAY,SAAS,cAAc,GAC/B,OAAO,CAAC,MAAM,YAAY,EAAE,MAAM,cAAc,CAAC,SAAS,KAAK,GAC7D,YAAY,GACZ,cAAc,GAChB,KAAK,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,KAAK,IAAI,SAAS,SAAS,KAAK,GAChE,SAAS,SAAS,KAAK,GACrB,KAAK,GACL,KAAK,GACP,KAAK,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Simplify } from '../../types';
|
|
1
|
+
import { Simplify, WithoutIndexSignature } from '../../types';
|
|
2
2
|
/**
|
|
3
3
|
* @link https://github.com/remix-run/remix/blob/2248669ed59fd716e267ea41df5d665d4781f4a9/packages/remix-server-runtime/serialize.ts
|
|
4
4
|
*/
|
|
@@ -24,7 +24,7 @@ export type SerializeObject<T extends object> = {
|
|
|
24
24
|
type FilterDefinedKeys<TObj extends object> = Exclude<{
|
|
25
25
|
[TKey in keyof TObj]: undefined extends TObj[TKey] ? never : TKey;
|
|
26
26
|
}[keyof TObj], undefined>;
|
|
27
|
-
type UndefinedToOptional<T extends object> = Pick<T
|
|
27
|
+
type UndefinedToOptional<T extends object> = Pick<WithoutIndexSignature<T>, FilterDefinedKeys<WithoutIndexSignature<T>>> & {
|
|
28
28
|
[k in keyof Omit<T, FilterDefinedKeys<T>>]?: Exclude<T[k], undefined>;
|
|
29
29
|
};
|
|
30
30
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../../src/shared/internal/serialize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../../src/shared/internal/serialize.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -75,4 +75,14 @@ export type Unwrap<TType> = TType extends (...args: any[]) => infer R ? ThenArg<
|
|
|
75
75
|
export type DeepPartial<TObject> = TObject extends object ? {
|
|
76
76
|
[P in keyof TObject]?: DeepPartial<TObject[P]>;
|
|
77
77
|
} : TObject;
|
|
78
|
+
/**
|
|
79
|
+
* See https://github.com/microsoft/TypeScript/issues/41966#issuecomment-758187996
|
|
80
|
+
* Fixes issues with iterating over keys of objects with index signatures.
|
|
81
|
+
* Without this, iterations over keys of objects with index signatures will lose
|
|
82
|
+
* type information about the keys and only the index signature will remain.
|
|
83
|
+
* @internal
|
|
84
|
+
*/
|
|
85
|
+
export type WithoutIndexSignature<TObj> = {
|
|
86
|
+
[K in keyof TObj as string extends K ? never : number extends K ? never : K]: TObj[K];
|
|
87
|
+
};
|
|
78
88
|
//# 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":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trpc/server",
|
|
3
|
-
"version": "10.43.
|
|
3
|
+
"version": "10.43.4",
|
|
4
4
|
"description": "The tRPC server library",
|
|
5
5
|
"author": "KATT",
|
|
6
6
|
"license": "MIT",
|
|
@@ -176,5 +176,5 @@
|
|
|
176
176
|
"funding": [
|
|
177
177
|
"https://trpc.io/sponsor"
|
|
178
178
|
],
|
|
179
|
-
"gitHead": "
|
|
179
|
+
"gitHead": "0fa6e7f1233be1638306dc1d24d887ec4f42251d"
|
|
180
180
|
}
|
|
@@ -1,32 +1,28 @@
|
|
|
1
|
-
import { Simplify } from '../../types';
|
|
1
|
+
import { Simplify, WithoutIndexSignature } from '../../types';
|
|
2
2
|
import { ProcedureParams } from '../procedure';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @internal
|
|
6
6
|
* Overwrite properties in `TType` with properties in `TWith`
|
|
7
|
-
* Only overwrites properties when
|
|
8
|
-
* Otherwise it will
|
|
9
|
-
* unless TWith is never.
|
|
7
|
+
* Only overwrites properties when the type to be overwritten
|
|
8
|
+
* is an object. Otherwise it will just use the type from `TWith`.
|
|
10
9
|
*/
|
|
11
|
-
export type Overwrite<TType, TWith> =
|
|
12
|
-
?
|
|
13
|
-
?
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
export type Overwrite<TType, TWith> = TWith extends any
|
|
11
|
+
? TType extends object
|
|
12
|
+
? {
|
|
13
|
+
[K in // Exclude index signature from keys
|
|
14
|
+
| keyof WithoutIndexSignature<TType>
|
|
15
|
+
| keyof WithoutIndexSignature<TWith>]: K extends keyof TWith
|
|
16
16
|
? TWith[K]
|
|
17
17
|
: K extends keyof TType
|
|
18
18
|
? TType[K]
|
|
19
19
|
: never;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
? TWith extends any
|
|
27
|
-
? // Same as above: just overwrite TType with TWith
|
|
28
|
-
TWith
|
|
29
|
-
: TType
|
|
20
|
+
} & (string extends keyof TWith // Handle cases with an index signature
|
|
21
|
+
? { [key: string]: TWith[string] }
|
|
22
|
+
: number extends keyof TWith
|
|
23
|
+
? { [key: number]: TWith[number] }
|
|
24
|
+
: object)
|
|
25
|
+
: TWith
|
|
30
26
|
: never;
|
|
31
27
|
|
|
32
28
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
2
|
-
import { Simplify } from '../../types';
|
|
2
|
+
import { Simplify, WithoutIndexSignature } from '../../types';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @link https://github.com/remix-run/remix/blob/2248669ed59fd716e267ea41df5d665d4781f4a9/packages/remix-server-runtime/serialize.ts
|
|
@@ -72,7 +72,10 @@ type FilterDefinedKeys<TObj extends object> = Exclude<
|
|
|
72
72
|
*/
|
|
73
73
|
type UndefinedToOptional<T extends object> =
|
|
74
74
|
// Property is not a union with `undefined`, keep as-is
|
|
75
|
-
Pick<
|
|
75
|
+
Pick<
|
|
76
|
+
WithoutIndexSignature<T>,
|
|
77
|
+
FilterDefinedKeys<WithoutIndexSignature<T>>
|
|
78
|
+
> & {
|
|
76
79
|
// Property _is_ a union with `defined`. Set as optional (via `?`) and remove `undefined` from the union
|
|
77
80
|
[k in keyof Omit<T, FilterDefinedKeys<T>>]?: Exclude<T[k], undefined>;
|
|
78
81
|
};
|
package/src/types.ts
CHANGED
|
@@ -115,3 +115,18 @@ export type DeepPartial<TObject> = TObject extends object
|
|
|
115
115
|
[P in keyof TObject]?: DeepPartial<TObject[P]>;
|
|
116
116
|
}
|
|
117
117
|
: TObject;
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* See https://github.com/microsoft/TypeScript/issues/41966#issuecomment-758187996
|
|
121
|
+
* Fixes issues with iterating over keys of objects with index signatures.
|
|
122
|
+
* Without this, iterations over keys of objects with index signatures will lose
|
|
123
|
+
* type information about the keys and only the index signature will remain.
|
|
124
|
+
* @internal
|
|
125
|
+
*/
|
|
126
|
+
export type WithoutIndexSignature<TObj> = {
|
|
127
|
+
[K in keyof TObj as string extends K
|
|
128
|
+
? never
|
|
129
|
+
: number extends K
|
|
130
|
+
? never
|
|
131
|
+
: K]: TObj[K];
|
|
132
|
+
};
|