@confect/server 1.0.3 → 2.0.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/CHANGELOG.md +11 -0
- package/dist/Auth.d.ts.map +1 -1
- package/dist/Auth.js +1 -1
- package/dist/Auth.js.map +1 -1
- package/dist/ConvexConfigProvider.d.ts +10 -0
- package/dist/ConvexConfigProvider.d.ts.map +1 -0
- package/dist/ConvexConfigProvider.js +25 -0
- package/dist/ConvexConfigProvider.js.map +1 -0
- package/dist/Document.d.ts.map +1 -1
- package/dist/Document.js +2 -2
- package/dist/Document.js.map +1 -1
- package/dist/HttpApi.d.ts.map +1 -1
- package/dist/HttpApi.js +2 -1
- package/dist/HttpApi.js.map +1 -1
- package/dist/MutationRunner.d.ts.map +1 -1
- package/dist/MutationRunner.js +1 -1
- package/dist/MutationRunner.js.map +1 -1
- package/dist/QueryInitializer.d.ts.map +1 -1
- package/dist/QueryInitializer.js +2 -2
- package/dist/QueryInitializer.js.map +1 -1
- package/dist/RegisteredConvexFunction.d.ts.map +1 -1
- package/dist/RegisteredConvexFunction.js +4 -3
- package/dist/RegisteredConvexFunction.js.map +1 -1
- package/dist/RegisteredFunction.d.ts +2 -2
- package/dist/RegisteredFunction.d.ts.map +1 -1
- package/dist/SchemaToValidator.d.ts +7 -6
- package/dist/SchemaToValidator.d.ts.map +1 -1
- package/dist/SchemaToValidator.js.map +1 -1
- package/dist/Storage.d.ts.map +1 -1
- package/dist/Storage.js +1 -1
- package/dist/Storage.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/package.json +16 -14
- package/src/Auth.ts +3 -2
- package/src/ConvexConfigProvider.ts +58 -0
- package/src/Document.ts +14 -12
- package/src/HttpApi.ts +3 -1
- package/src/MutationRunner.ts +6 -5
- package/src/QueryInitializer.ts +13 -11
- package/src/RegisteredConvexFunction.ts +8 -1
- package/src/SchemaToValidator.ts +56 -39
- package/src/Storage.ts +5 -4
- package/src/index.ts +1 -0
package/src/SchemaToValidator.ts
CHANGED
|
@@ -36,13 +36,11 @@ import {
|
|
|
36
36
|
|
|
37
37
|
import * as GenericId from "@confect/core/GenericId";
|
|
38
38
|
import type {
|
|
39
|
-
DeepMutable,
|
|
40
39
|
IsAny,
|
|
41
40
|
IsOptional,
|
|
42
41
|
IsRecord,
|
|
43
42
|
IsRecursive,
|
|
44
43
|
IsUnion,
|
|
45
|
-
IsValueLiteral,
|
|
46
44
|
TypeError,
|
|
47
45
|
UnionToTuple,
|
|
48
46
|
} from "@confect/core/Types";
|
|
@@ -127,45 +125,64 @@ export type ReadonlyRecordValue = {
|
|
|
127
125
|
readonly [key: string]: ReadonlyValue | undefined;
|
|
128
126
|
};
|
|
129
127
|
|
|
130
|
-
|
|
131
|
-
|
|
128
|
+
type MutableValue<T> =
|
|
129
|
+
T extends ReadonlyArray<infer El>
|
|
130
|
+
? MutableValue<El>[]
|
|
131
|
+
: T extends ReadonlyRecordValue
|
|
132
|
+
? { -readonly [K in keyof T]: MutableValue<T[K]> }
|
|
133
|
+
: T;
|
|
134
|
+
|
|
135
|
+
export type ValueToValidator<Vl> = [Vl] extends [never]
|
|
136
|
+
? never
|
|
137
|
+
: IsAny<Vl> extends true
|
|
132
138
|
? VAny
|
|
133
|
-
: [Vl] extends [
|
|
134
|
-
?
|
|
135
|
-
:
|
|
136
|
-
?
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
?
|
|
142
|
-
:
|
|
143
|
-
?
|
|
144
|
-
:
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
139
|
+
: [Vl] extends [null]
|
|
140
|
+
? VNull
|
|
141
|
+
: [Vl] extends [boolean]
|
|
142
|
+
? [boolean] extends [Vl]
|
|
143
|
+
? VBoolean
|
|
144
|
+
: VLiteral<Vl>
|
|
145
|
+
: IsUnion<Vl> extends true
|
|
146
|
+
? IsRecursive<Vl> extends true
|
|
147
|
+
? VAny
|
|
148
|
+
: [Vl] extends [ReadonlyValue]
|
|
149
|
+
? UnionValueToValidator<Vl>
|
|
150
|
+
: TypeError<"Provided value is not a valid Convex value", Vl>
|
|
151
|
+
: [Vl] extends [number]
|
|
152
|
+
? [number] extends [Vl]
|
|
153
|
+
? VFloat64
|
|
154
|
+
: VLiteral<Vl>
|
|
155
|
+
: [Vl] extends [bigint]
|
|
156
|
+
? [bigint] extends [Vl]
|
|
157
|
+
? VInt64
|
|
158
|
+
: VLiteral<Vl>
|
|
159
|
+
: [Vl] extends [string]
|
|
160
|
+
? Vl extends {
|
|
161
|
+
__tableName: infer TableName extends string;
|
|
162
|
+
}
|
|
163
|
+
? VId<GenericId.GenericId<TableName>>
|
|
164
|
+
: [string] extends [Vl]
|
|
165
|
+
? VString
|
|
166
|
+
: VLiteral<Vl>
|
|
167
|
+
: [Vl] extends [ArrayBuffer]
|
|
168
|
+
? VBytes
|
|
169
|
+
: IsRecursive<Vl> extends true
|
|
170
|
+
? VAny
|
|
171
|
+
: [Vl] extends [ReadonlyValue]
|
|
172
|
+
? Vl extends ReadonlyArray<ReadonlyValue>
|
|
173
|
+
? ArrayValueToValidator<Vl>
|
|
174
|
+
: Vl extends ReadonlyRecordValue
|
|
175
|
+
? RecordValueToValidator<Vl>
|
|
176
|
+
: TypeError<"Unexpected value", Vl>
|
|
177
|
+
: TypeError<
|
|
178
|
+
"Provided value is not a valid Convex value",
|
|
179
|
+
Vl
|
|
180
|
+
>;
|
|
164
181
|
|
|
165
182
|
type ArrayValueToValidator<Vl extends ReadonlyArray<ReadonlyValue>> =
|
|
166
183
|
Vl extends ReadonlyArray<infer El extends ReadonlyValue>
|
|
167
184
|
? ValueToValidator<El> extends infer Vd extends Validator<any, any, any>
|
|
168
|
-
? VArray<
|
|
185
|
+
? VArray<MutableValue<El[]>, Vd>
|
|
169
186
|
: never
|
|
170
187
|
: never;
|
|
171
188
|
|
|
@@ -179,8 +196,8 @@ type RecordValueToValidator<Vl> = Vl extends ReadonlyRecordValue
|
|
|
179
196
|
} extends infer VdRecord extends Record<string, any>
|
|
180
197
|
? {
|
|
181
198
|
-readonly [K in keyof Vl]: undefined extends Vl[K]
|
|
182
|
-
?
|
|
183
|
-
:
|
|
199
|
+
? MutableValue<Exclude<Vl[K], undefined>>
|
|
200
|
+
: MutableValue<Vl[K]>;
|
|
184
201
|
} extends infer VlRecord extends Record<string, any>
|
|
185
202
|
? IsRecord<VlRecord> extends true
|
|
186
203
|
? VRecord<VlRecord, VString, VdRecord[keyof VdRecord]>
|
|
@@ -212,7 +229,7 @@ type UnionValueToValidator<Vl extends ReadonlyValue> = [Vl] extends [
|
|
|
212
229
|
ReadonlyArray<ReadonlyValue>
|
|
213
230
|
? ValueTupleToValidatorTuple<VlTuple> extends infer VdTuple extends
|
|
214
231
|
Validator<any, "required", any>[]
|
|
215
|
-
? VUnion<
|
|
232
|
+
? VUnion<MutableValue<Vl>, VdTuple>
|
|
216
233
|
: TypeError<"Failed to convert value tuple to validator tuple">
|
|
217
234
|
: TypeError<"Failed to convert union to tuple">
|
|
218
235
|
: TypeError<"Expected a union of values, but got a single value instead">
|
package/src/Storage.ts
CHANGED
|
@@ -75,11 +75,12 @@ export class StorageActionWriter extends Effect.Tag(
|
|
|
75
75
|
Layer.succeed(this, makeStorageActionWriter(storageActionWriter));
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
export class BlobNotFoundError extends Schema.TaggedError<BlobNotFoundError>(
|
|
78
|
+
export class BlobNotFoundError extends Schema.TaggedError<BlobNotFoundError>()(
|
|
79
79
|
"BlobNotFoundError",
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
}
|
|
80
|
+
{
|
|
81
|
+
id: Schema.String,
|
|
82
|
+
},
|
|
83
|
+
) {
|
|
83
84
|
override get message(): string {
|
|
84
85
|
return `File with ID '${this.id}' not found`;
|
|
85
86
|
}
|
package/src/index.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * as DatabaseSchema from "./DatabaseSchema";
|
|
|
7
7
|
export * as DatabaseWriter from "./DatabaseWriter";
|
|
8
8
|
export * as DataModel from "./DataModel";
|
|
9
9
|
export * as Document from "./Document";
|
|
10
|
+
export * as ConvexConfigProvider from "./ConvexConfigProvider";
|
|
10
11
|
export * as FunctionImpl from "./FunctionImpl";
|
|
11
12
|
export * as GroupImpl from "./GroupImpl";
|
|
12
13
|
export * as Handler from "./Handler";
|