convex-ents 0.7.7-alpha.0 → 0.8.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/deletion.d.ts +1 -1
- package/dist/deletion.js.map +1 -1
- package/dist/functions.d.ts +1 -1
- package/dist/functions.js +3 -3
- package/dist/functions.js.map +1 -1
- package/dist/{index-yIcYQW0v.d.ts → index-uXk5iZ86.d.ts} +1 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.js +8 -17
- package/dist/index.js.map +1 -1
- package/dist/schema.d.ts +36 -47
- package/dist/schema.js +5 -14
- package/dist/schema.js.map +1 -1
- package/dist/writer.d.ts +1 -1
- package/dist/writer.js.map +1 -1
- package/package.json +3 -3
|
@@ -329,10 +329,7 @@ interface PromiseEntWriter<EntsDataModel extends GenericEntsDataModel, Table ext
|
|
|
329
329
|
*/
|
|
330
330
|
delete(): Promise<GenericId<Table>>;
|
|
331
331
|
}
|
|
332
|
-
declare class EntWriterInstance<EntsDataModel extends GenericEntsDataModel, Table extends TableNamesInDataModel<EntsDataModel>> {
|
|
333
|
-
edge<Edge extends keyof EntsDataModel[Table]["edges"]>(edge: Edge): PromiseEdgeWriter<EntsDataModel, Table, Edge>;
|
|
334
|
-
edgeX<Edge extends keyof EntsDataModel[Table]["edges"]>(edge: Edge): PromiseEdgeWriterOrThrow<EntsDataModel, Table, Edge>;
|
|
335
|
-
doc(): DocumentByName<EntsDataModel, Table>;
|
|
332
|
+
declare class EntWriterInstance<EntsDataModel extends GenericEntsDataModel, Table extends TableNamesInDataModel<EntsDataModel>> extends EntInstance<EntsDataModel, Table> {
|
|
336
333
|
/**
|
|
337
334
|
* Patch this existing document, shallow merging it with the given partial
|
|
338
335
|
* document.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { EntDefinition, defineEnt, defineEntFromTable, defineEntSchema, getEntDefinitions } from './schema.js';
|
|
2
|
-
export { G as GenericEnt, T as GenericEntWriter, t as PromiseEdgeEnts, r as PromiseEdgeEntsOrNull, u as PromiseEdgeEntsWriter, I as PromiseEdgeWriter, K as PromiseEdgeWriterOrNull, J as PromiseEdgeWriterOrThrow, w as PromiseEnt, U as PromiseEntId, v as PromiseEntOrNull, S as PromiseEntWriter, R as PromiseEntWriterOrNull, p as PromiseEnts, n as PromiseEntsOrNull, q as PromiseEntsOrNulls, N as PromiseEntsWriter, o as PromiseEntsWriterOrNull, j as PromiseOrderedQuery, i as PromiseOrderedQueryBase, P as PromiseOrderedQueryOrNull, L as PromiseOrderedQueryWriter, d as PromiseOrderedQueryWriterOrNull, k as PromiseQuery, e as PromiseQueryOrNull, M as PromiseQueryWriter, f as PromiseQueryWriterOrNull, h as PromiseTable, g as PromiseTableBase, Q as PromiseTableWriter, Z as addEntRules, A as entsTableFactory } from './index-
|
|
2
|
+
export { G as GenericEnt, T as GenericEntWriter, t as PromiseEdgeEnts, r as PromiseEdgeEntsOrNull, u as PromiseEdgeEntsWriter, I as PromiseEdgeWriter, K as PromiseEdgeWriterOrNull, J as PromiseEdgeWriterOrThrow, w as PromiseEnt, U as PromiseEntId, v as PromiseEntOrNull, S as PromiseEntWriter, R as PromiseEntWriterOrNull, p as PromiseEnts, n as PromiseEntsOrNull, q as PromiseEntsOrNulls, N as PromiseEntsWriter, o as PromiseEntsWriterOrNull, j as PromiseOrderedQuery, i as PromiseOrderedQueryBase, P as PromiseOrderedQueryOrNull, L as PromiseOrderedQueryWriter, d as PromiseOrderedQueryWriterOrNull, k as PromiseQuery, e as PromiseQueryOrNull, M as PromiseQueryWriter, f as PromiseQueryWriterOrNull, h as PromiseTable, g as PromiseTableBase, Q as PromiseTableWriter, Z as addEntRules, A as entsTableFactory } from './index-uXk5iZ86.js';
|
|
3
3
|
export { scheduledDeleteFactory } from './deletion.js';
|
|
4
4
|
import 'convex/server';
|
|
5
5
|
import 'convex/values';
|
package/dist/index.js
CHANGED
|
@@ -191,30 +191,20 @@ function defineEnt(documentSchema) {
|
|
|
191
191
|
return new EntDefinitionImpl(documentSchema);
|
|
192
192
|
}
|
|
193
193
|
function defineEntFromTable(definition) {
|
|
194
|
-
const validator = definition.
|
|
195
|
-
|
|
196
|
-
// @ts-expect-error Private field
|
|
197
|
-
validator.json
|
|
198
|
-
);
|
|
199
|
-
if (validatorJson.type !== "object") {
|
|
194
|
+
const validator = definition.validator;
|
|
195
|
+
if (validator.kind !== "object") {
|
|
200
196
|
throw new Error(
|
|
201
197
|
"Only tables with object definition are supported in Ents, not unions"
|
|
202
198
|
);
|
|
203
199
|
}
|
|
204
|
-
const
|
|
205
|
-
Object.entries(validatorJson.value).map(([k, v3]) => [
|
|
206
|
-
k,
|
|
207
|
-
// @ts-expect-error Private constructor
|
|
208
|
-
new import_values.Validator(v3.fieldType, v3.optional)
|
|
209
|
-
])
|
|
210
|
-
);
|
|
211
|
-
const entDefinition = defineEnt(tableSchema);
|
|
200
|
+
const entDefinition = defineEnt(validator.fields);
|
|
212
201
|
entDefinition.indexes = definition.indexes;
|
|
213
202
|
entDefinition.searchIndexes = definition.searchIndexes;
|
|
214
203
|
entDefinition.vectorIndexes = definition.vectorIndexes;
|
|
215
204
|
return entDefinition;
|
|
216
205
|
}
|
|
217
206
|
var EntDefinitionImpl = class {
|
|
207
|
+
validator;
|
|
218
208
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
219
209
|
// @ts-ignore
|
|
220
210
|
indexes = [];
|
|
@@ -231,6 +221,7 @@ var EntDefinitionImpl = class {
|
|
|
231
221
|
deletionConfig;
|
|
232
222
|
constructor(documentSchema) {
|
|
233
223
|
this.documentSchema = documentSchema;
|
|
224
|
+
this.validator = import_values.v.object(documentSchema);
|
|
234
225
|
}
|
|
235
226
|
index(name, fields) {
|
|
236
227
|
this.indexes.push({ indexDescriptor: name, fields });
|
|
@@ -923,7 +914,7 @@ var PromiseTableImpl = class extends PromiseQueryOrNullImpl {
|
|
|
923
914
|
this.table,
|
|
924
915
|
args.length === 1 ? async () => {
|
|
925
916
|
const id = args[0];
|
|
926
|
-
if (this.
|
|
917
|
+
if (this.normalizeId(id) === null) {
|
|
927
918
|
throw new Error(`Invalid id \`${id}\` for table "${this.table}"`);
|
|
928
919
|
}
|
|
929
920
|
return {
|
|
@@ -970,7 +961,7 @@ var PromiseTableImpl = class extends PromiseQueryOrNullImpl {
|
|
|
970
961
|
args.length === 1 ? async () => {
|
|
971
962
|
const ids = args[0];
|
|
972
963
|
ids.forEach((id) => {
|
|
973
|
-
if (this.
|
|
964
|
+
if (this.normalizeId(id) === null) {
|
|
974
965
|
throw new Error(
|
|
975
966
|
`Invalid id \`${id}\` for table "${this.table}"`
|
|
976
967
|
);
|
|
@@ -1005,7 +996,7 @@ var PromiseTableImpl = class extends PromiseQueryOrNullImpl {
|
|
|
1005
996
|
);
|
|
1006
997
|
}
|
|
1007
998
|
normalizeId(id) {
|
|
1008
|
-
return this.ctx.db.normalizeId(this.table, id);
|
|
999
|
+
return isSystemTable(this.table) ? this.ctx.db.system.normalizeId(this.table, id) : this.ctx.db.normalizeId(this.table, id);
|
|
1009
1000
|
}
|
|
1010
1001
|
// normalizeId or throw
|
|
1011
1002
|
normalizeIdX(id) {
|