@davidtkramer/convex-relations 0.4.1 → 0.4.2

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/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { GenericDataModel, TableNamesInDataModel, DocumentByName, GenericTableInfo, FilterBuilder, ExpressionOrValue, NamedTableInfo, IndexNames, IndexRangeBuilder, NamedIndex, IndexRange, GenericDatabaseReader, SchemaDefinition } from 'convex/server';
1
+ import { GenericDataModel, TableNamesInDataModel, DocumentByName, IndexNames, NamedTableInfo, IndexRangeBuilder, NamedIndex, IndexRange, GenericTableInfo, FilterBuilder, ExpressionOrValue, GenericDatabaseReader, SchemaDefinition } from 'convex/server';
2
2
  import { GenericId } from 'convex/values';
3
3
 
4
4
  type Simplify<T> = {
@@ -139,6 +139,8 @@ type TableNamespace<DataModel extends GenericDataModel, Table extends AppTable<D
139
139
  find<const Id extends GenericId<Table>>(id: Id): FindQueryBuilder<AppDoc<DataModel, Table>>;
140
140
  findOrNull<const Id extends GenericId<Table>>(id: Id): FindOrNullQueryBuilder<AppDoc<DataModel, Table>>;
141
141
  in<const Id extends GenericId<Table>>(ids: Id[]): TableBatchQueryFacade<DataModel, Table>;
142
+ withIndex<const IndexName extends UserIndex<DataModel, Table>>(index: IndexName, selector: IndexSelector<DataModel, Table, IndexName>): TableQueryFacade<DataModel, Table>;
143
+ withIndex<const IndexName extends UserIndex<DataModel, Table>>(index: IndexName): TableRangeQueryFacade<DataModel, Table>;
142
144
  through: {
143
145
  <const SourceTable extends AppTable<DataModel>, SourceItem, const TargetField extends ThroughSourceField<DataModel, Table, SourceItem>>(sourceQuery: ThroughCollectionSource<DataModel, SourceTable, SourceItem>, targetField: TargetField): ThroughQueryFacade<DataModel, Table, SourceItem>;
144
146
  <SourceItem, const TargetField extends ThroughSourceField<DataModel, Table, SourceItem>>(sourceQuery: AnyManySourceNode<SourceItem>, targetField: TargetField): ManyThroughQueryBuilder<AppDoc<DataModel, Table>, SourceItem>;
package/dist/index.js CHANGED
@@ -655,6 +655,12 @@ function createTableNamespace(db, table, resolveIndexFields) {
655
655
  in(ids) {
656
656
  return createBatchFacade(db, createBatchPlan(table, "by_id", ids));
657
657
  },
658
+ withIndex(index, selector) {
659
+ return createCollectionFacade(
660
+ db,
661
+ createQueryPlan(table, index, selector, resolveIndexFields(table, index))
662
+ );
663
+ },
658
664
  through(sourceQuery, targetField) {
659
665
  if (isCollectionSource(sourceQuery)) {
660
666
  return createThroughCollectionFacade(db, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@davidtkramer/convex-relations",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "description": "Typed query facade helpers for Convex backends",
5
5
  "type": "module",
6
6
  "license": "MIT",