@prisma-next/mongo-query-ast 0.3.0-dev.146 → 0.3.0-dev.162

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.
@@ -1,5 +1,4 @@
1
- import { Document, MongoValue } from "@prisma-next/mongo-value";
2
- import { PlanMeta } from "@prisma-next/contract/types";
1
+ import { MongoValue } from "@prisma-next/mongo-value";
3
2
 
4
3
  //#region src/ast-node.d.ts
5
4
  declare abstract class MongoAstNode {
@@ -7,74 +6,6 @@ declare abstract class MongoAstNode {
7
6
  protected freeze(): void;
8
7
  }
9
8
  //#endregion
10
- //#region src/filter-expressions.d.ts
11
- declare abstract class MongoFilterExpression extends MongoAstNode {
12
- abstract accept<R>(visitor: MongoFilterVisitor<R>): R;
13
- abstract rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
14
- not(this: MongoFilterExpr): MongoNotExpr;
15
- }
16
- declare class MongoFieldFilter extends MongoFilterExpression {
17
- readonly kind: "field";
18
- readonly field: string;
19
- readonly op: string;
20
- readonly value: MongoValue;
21
- constructor(field: string, op: string, value: MongoValue);
22
- static of(field: string, op: string, value: MongoValue): MongoFieldFilter;
23
- static eq(field: string, value: MongoValue): MongoFieldFilter;
24
- static neq(field: string, value: MongoValue): MongoFieldFilter;
25
- static gt(field: string, value: MongoValue): MongoFieldFilter;
26
- static lt(field: string, value: MongoValue): MongoFieldFilter;
27
- static gte(field: string, value: MongoValue): MongoFieldFilter;
28
- static lte(field: string, value: MongoValue): MongoFieldFilter;
29
- static in(field: string, values: ReadonlyArray<MongoValue>): MongoFieldFilter;
30
- static isNull(field: string): MongoFieldFilter;
31
- static isNotNull(field: string): MongoFieldFilter;
32
- accept<R>(visitor: MongoFilterVisitor<R>): R;
33
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
34
- }
35
- declare class MongoAndExpr extends MongoFilterExpression {
36
- readonly kind: "and";
37
- readonly exprs: ReadonlyArray<MongoFilterExpr>;
38
- constructor(exprs: ReadonlyArray<MongoFilterExpr>);
39
- static of(exprs: ReadonlyArray<MongoFilterExpr>): MongoAndExpr;
40
- accept<R>(visitor: MongoFilterVisitor<R>): R;
41
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
42
- }
43
- declare class MongoOrExpr extends MongoFilterExpression {
44
- readonly kind: "or";
45
- readonly exprs: ReadonlyArray<MongoFilterExpr>;
46
- constructor(exprs: ReadonlyArray<MongoFilterExpr>);
47
- static of(exprs: ReadonlyArray<MongoFilterExpr>): MongoOrExpr;
48
- accept<R>(visitor: MongoFilterVisitor<R>): R;
49
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
50
- }
51
- declare class MongoNotExpr extends MongoFilterExpression {
52
- readonly kind: "not";
53
- readonly expr: MongoFilterExpr;
54
- constructor(expr: MongoFilterExpr);
55
- accept<R>(visitor: MongoFilterVisitor<R>): R;
56
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
57
- }
58
- declare class MongoExistsExpr extends MongoFilterExpression {
59
- readonly kind: "exists";
60
- readonly field: string;
61
- readonly exists: boolean;
62
- constructor(field: string, exists: boolean);
63
- static exists(field: string): MongoExistsExpr;
64
- static notExists(field: string): MongoExistsExpr;
65
- accept<R>(visitor: MongoFilterVisitor<R>): R;
66
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
67
- }
68
- declare class MongoExprFilter extends MongoFilterExpression {
69
- readonly kind: "expr";
70
- readonly aggExpr: MongoAggExpr;
71
- constructor(aggExpr: MongoAggExpr);
72
- static of(aggExpr: MongoAggExpr): MongoExprFilter;
73
- accept<R>(visitor: MongoFilterVisitor<R>): R;
74
- rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
75
- }
76
- type MongoFilterExpr = MongoFieldFilter | MongoAndExpr | MongoOrExpr | MongoNotExpr | MongoExistsExpr | MongoExprFilter;
77
- //#endregion
78
9
  //#region src/stages.d.ts
79
10
  type MongoGroupId = null | MongoAggExpr | Readonly<Record<string, MongoAggExpr>>;
80
11
  type MongoProjectionValue = 0 | 1 | MongoAggExpr;
@@ -627,137 +558,74 @@ declare class MongoAggMergeObjects extends MongoAggExprNode {
627
558
  }
628
559
  type MongoAggExpr = MongoAggFieldRef | MongoAggLiteral | MongoAggOperator | MongoAggAccumulator | MongoAggCond | MongoAggSwitch | MongoAggArrayFilter | MongoAggMap | MongoAggReduce | MongoAggLet | MongoAggMergeObjects;
629
560
  //#endregion
630
- //#region src/raw-commands.d.ts
631
- declare class RawAggregateCommand extends MongoAstNode {
632
- readonly kind: "rawAggregate";
633
- readonly collection: string;
634
- readonly pipeline: ReadonlyArray<Document>;
635
- constructor(collection: string, pipeline: ReadonlyArray<Document>);
636
- }
637
- declare class RawInsertOneCommand extends MongoAstNode {
638
- readonly kind: "rawInsertOne";
639
- readonly collection: string;
640
- readonly document: Document;
641
- constructor(collection: string, document: Document);
642
- }
643
- declare class RawInsertManyCommand extends MongoAstNode {
644
- readonly kind: "rawInsertMany";
645
- readonly collection: string;
646
- readonly documents: ReadonlyArray<Document>;
647
- constructor(collection: string, documents: ReadonlyArray<Document>);
648
- }
649
- declare class RawUpdateOneCommand extends MongoAstNode {
650
- readonly kind: "rawUpdateOne";
651
- readonly collection: string;
652
- readonly filter: Document;
653
- readonly update: Document | ReadonlyArray<Document>;
654
- constructor(collection: string, filter: Document, update: Document | ReadonlyArray<Document>);
655
- }
656
- declare class RawUpdateManyCommand extends MongoAstNode {
657
- readonly kind: "rawUpdateMany";
658
- readonly collection: string;
659
- readonly filter: Document;
660
- readonly update: Document | ReadonlyArray<Document>;
661
- constructor(collection: string, filter: Document, update: Document | ReadonlyArray<Document>);
662
- }
663
- declare class RawDeleteOneCommand extends MongoAstNode {
664
- readonly kind: "rawDeleteOne";
665
- readonly collection: string;
666
- readonly filter: Document;
667
- constructor(collection: string, filter: Document);
668
- }
669
- declare class RawDeleteManyCommand extends MongoAstNode {
670
- readonly kind: "rawDeleteMany";
671
- readonly collection: string;
672
- readonly filter: Document;
673
- constructor(collection: string, filter: Document);
674
- }
675
- declare class RawFindOneAndUpdateCommand extends MongoAstNode {
676
- readonly kind: "rawFindOneAndUpdate";
677
- readonly collection: string;
678
- readonly filter: Document;
679
- readonly update: Document | ReadonlyArray<Document>;
680
- readonly upsert: boolean;
681
- constructor(collection: string, filter: Document, update: Document | ReadonlyArray<Document>, upsert: boolean);
682
- }
683
- declare class RawFindOneAndDeleteCommand extends MongoAstNode {
684
- readonly kind: "rawFindOneAndDelete";
685
- readonly collection: string;
686
- readonly filter: Document;
687
- constructor(collection: string, filter: Document);
688
- }
689
- type RawMongoCommand = RawAggregateCommand | RawInsertOneCommand | RawInsertManyCommand | RawUpdateOneCommand | RawUpdateManyCommand | RawDeleteOneCommand | RawDeleteManyCommand | RawFindOneAndUpdateCommand | RawFindOneAndDeleteCommand;
690
- //#endregion
691
- //#region src/commands.d.ts
692
- type MongoUpdateSpec = Record<string, MongoValue> | ReadonlyArray<MongoUpdatePipelineStage>;
693
- declare class InsertOneCommand extends MongoAstNode {
694
- readonly kind: "insertOne";
695
- readonly collection: string;
696
- readonly document: Record<string, MongoValue>;
697
- constructor(collection: string, document: Record<string, MongoValue>);
698
- }
699
- declare class UpdateOneCommand extends MongoAstNode {
700
- readonly kind: "updateOne";
701
- readonly collection: string;
702
- readonly filter: MongoFilterExpr;
703
- readonly update: MongoUpdateSpec;
704
- constructor(collection: string, filter: MongoFilterExpr, update: MongoUpdateSpec);
705
- }
706
- declare class DeleteOneCommand extends MongoAstNode {
707
- readonly kind: "deleteOne";
708
- readonly collection: string;
709
- readonly filter: MongoFilterExpr;
710
- constructor(collection: string, filter: MongoFilterExpr);
711
- }
712
- declare class InsertManyCommand extends MongoAstNode {
713
- readonly kind: "insertMany";
714
- readonly collection: string;
715
- readonly documents: ReadonlyArray<Record<string, MongoValue>>;
716
- constructor(collection: string, documents: ReadonlyArray<Record<string, MongoValue>>);
561
+ //#region src/filter-expressions.d.ts
562
+ declare function isMongoFilterExpr(value: unknown): value is MongoFilterExpr;
563
+ declare abstract class MongoFilterExpression extends MongoAstNode {
564
+ abstract accept<R>(visitor: MongoFilterVisitor<R>): R;
565
+ abstract rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
566
+ not(this: MongoFilterExpr): MongoNotExpr;
717
567
  }
718
- declare class UpdateManyCommand extends MongoAstNode {
719
- readonly kind: "updateMany";
720
- readonly collection: string;
721
- readonly filter: MongoFilterExpr;
722
- readonly update: MongoUpdateSpec;
723
- constructor(collection: string, filter: MongoFilterExpr, update: MongoUpdateSpec);
568
+ declare class MongoFieldFilter extends MongoFilterExpression {
569
+ readonly kind: "field";
570
+ readonly field: string;
571
+ readonly op: string;
572
+ readonly value: MongoValue;
573
+ constructor(field: string, op: string, value: MongoValue);
574
+ static of(field: string, op: string, value: MongoValue): MongoFieldFilter;
575
+ static eq(field: string, value: MongoValue): MongoFieldFilter;
576
+ static neq(field: string, value: MongoValue): MongoFieldFilter;
577
+ static gt(field: string, value: MongoValue): MongoFieldFilter;
578
+ static lt(field: string, value: MongoValue): MongoFieldFilter;
579
+ static gte(field: string, value: MongoValue): MongoFieldFilter;
580
+ static lte(field: string, value: MongoValue): MongoFieldFilter;
581
+ static in(field: string, values: ReadonlyArray<MongoValue>): MongoFieldFilter;
582
+ static isNull(field: string): MongoFieldFilter;
583
+ static isNotNull(field: string): MongoFieldFilter;
584
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
585
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
724
586
  }
725
- declare class DeleteManyCommand extends MongoAstNode {
726
- readonly kind: "deleteMany";
727
- readonly collection: string;
728
- readonly filter: MongoFilterExpr;
729
- constructor(collection: string, filter: MongoFilterExpr);
587
+ declare class MongoAndExpr extends MongoFilterExpression {
588
+ readonly kind: "and";
589
+ readonly exprs: ReadonlyArray<MongoFilterExpr>;
590
+ constructor(exprs: ReadonlyArray<MongoFilterExpr>);
591
+ static of(exprs: ReadonlyArray<MongoFilterExpr>): MongoAndExpr;
592
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
593
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
730
594
  }
731
- declare class FindOneAndUpdateCommand extends MongoAstNode {
732
- readonly kind: "findOneAndUpdate";
733
- readonly collection: string;
734
- readonly filter: MongoFilterExpr;
735
- readonly update: MongoUpdateSpec;
736
- readonly upsert: boolean;
737
- constructor(collection: string, filter: MongoFilterExpr, update: MongoUpdateSpec, upsert: boolean);
595
+ declare class MongoOrExpr extends MongoFilterExpression {
596
+ readonly kind: "or";
597
+ readonly exprs: ReadonlyArray<MongoFilterExpr>;
598
+ constructor(exprs: ReadonlyArray<MongoFilterExpr>);
599
+ static of(exprs: ReadonlyArray<MongoFilterExpr>): MongoOrExpr;
600
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
601
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
738
602
  }
739
- declare class FindOneAndDeleteCommand extends MongoAstNode {
740
- readonly kind: "findOneAndDelete";
741
- readonly collection: string;
742
- readonly filter: MongoFilterExpr;
743
- constructor(collection: string, filter: MongoFilterExpr);
603
+ declare class MongoNotExpr extends MongoFilterExpression {
604
+ readonly kind: "not";
605
+ readonly expr: MongoFilterExpr;
606
+ constructor(expr: MongoFilterExpr);
607
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
608
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
744
609
  }
745
- declare class AggregateCommand extends MongoAstNode {
746
- readonly kind: "aggregate";
747
- readonly collection: string;
748
- readonly pipeline: ReadonlyArray<MongoPipelineStage>;
749
- constructor(collection: string, pipeline: ReadonlyArray<MongoPipelineStage>);
610
+ declare class MongoExistsExpr extends MongoFilterExpression {
611
+ readonly kind: "exists";
612
+ readonly field: string;
613
+ readonly exists: boolean;
614
+ constructor(field: string, exists: boolean);
615
+ static exists(field: string): MongoExistsExpr;
616
+ static notExists(field: string): MongoExistsExpr;
617
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
618
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
750
619
  }
751
- type AnyMongoCommand = InsertOneCommand | InsertManyCommand | UpdateOneCommand | UpdateManyCommand | DeleteOneCommand | DeleteManyCommand | FindOneAndUpdateCommand | FindOneAndDeleteCommand | AggregateCommand | RawMongoCommand;
752
- //#endregion
753
- //#region src/query-plan.d.ts
754
- declare const __mongoQueryPlanRow: unique symbol;
755
- interface MongoQueryPlan<Row = unknown> {
756
- readonly collection: string;
757
- readonly command: AnyMongoCommand;
758
- readonly meta: PlanMeta;
759
- readonly [__mongoQueryPlanRow]?: Row;
620
+ declare class MongoExprFilter extends MongoFilterExpression {
621
+ readonly kind: "expr";
622
+ readonly aggExpr: MongoAggExpr;
623
+ constructor(aggExpr: MongoAggExpr);
624
+ static of(aggExpr: MongoAggExpr): MongoExprFilter;
625
+ accept<R>(visitor: MongoFilterVisitor<R>): R;
626
+ rewrite(rewriter: MongoFilterRewriter): MongoFilterExpr;
760
627
  }
628
+ type MongoFilterExpr = MongoFieldFilter | MongoAndExpr | MongoOrExpr | MongoNotExpr | MongoExistsExpr | MongoExprFilter;
761
629
  //#endregion
762
- export { type AggRecordArgs, AggregateCommand, type AnyMongoCommand, DeleteManyCommand, DeleteOneCommand, FindOneAndDeleteCommand, FindOneAndUpdateCommand, InsertManyCommand, InsertOneCommand, MongoAddFieldsStage, MongoAggAccumulator, MongoAggArrayFilter, MongoAggCond, type MongoAggExpr, type MongoAggExprRewriter, type MongoAggExprVisitor, MongoAggFieldRef, MongoAggLet, MongoAggLiteral, MongoAggMap, MongoAggMergeObjects, MongoAggOperator, MongoAggReduce, MongoAggSwitch, type MongoAggSwitchBranch, MongoAndExpr, MongoBucketAutoStage, MongoBucketStage, MongoCountStage, type MongoDensifyRange, MongoDensifyStage, MongoExistsExpr, MongoExprFilter, MongoFacetStage, MongoFieldFilter, type MongoFillOutput, MongoFillStage, type MongoFilterExpr, type MongoFilterRewriter, type MongoFilterVisitor, MongoGeoNearStage, MongoGraphLookupStage, type MongoGroupId, MongoGroupStage, MongoLimitStage, MongoLookupStage, MongoMatchStage, MongoMergeStage, MongoNotExpr, MongoOrExpr, MongoOutStage, type MongoPipelineStage, MongoProjectStage, type MongoProjectionValue, type MongoQueryPlan, MongoRedactStage, MongoReplaceRootStage, MongoSampleStage, MongoSearchMetaStage, MongoSearchStage, MongoSetWindowFieldsStage, MongoSkipStage, MongoSortByCountStage, MongoSortStage, type MongoStageRewriterContext, type MongoStageVisitor, MongoUnionWithStage, MongoUnwindStage, type MongoUpdatePipelineStage, type MongoUpdateSpec, MongoVectorSearchStage, type MongoWindowField, RawAggregateCommand, RawDeleteManyCommand, RawDeleteOneCommand, RawFindOneAndDeleteCommand, RawFindOneAndUpdateCommand, RawInsertManyCommand, RawInsertOneCommand, type RawMongoCommand, RawUpdateManyCommand, RawUpdateOneCommand, UpdateManyCommand, UpdateOneCommand, isExprArray, isRecordArgs };
763
- //# sourceMappingURL=index.d.mts.map
630
+ export { MongoReplaceRootStage as $, MongoStageVisitor as A, MongoGeoNearStage as B, isExprArray as C, MongoFilterRewriter as D, MongoAggExprVisitor as E, MongoDensifyRange as F, MongoLookupStage as G, MongoGroupId as H, MongoDensifyStage as I, MongoOutStage as J, MongoMatchStage as K, MongoFacetStage as L, MongoBucketAutoStage as M, MongoBucketStage as N, MongoFilterVisitor as O, MongoCountStage as P, MongoRedactStage as Q, MongoFillOutput as R, MongoAggSwitchBranch as S, MongoAggExprRewriter as T, MongoGroupStage as U, MongoGraphLookupStage as V, MongoLimitStage as W, MongoProjectStage as X, MongoPipelineStage as Y, MongoProjectionValue as Z, MongoAggMap as _, MongoFilterExpr as a, MongoSortByCountStage as at, MongoAggReduce as b, isMongoFilterExpr as c, MongoUnwindStage as ct, MongoAggArrayFilter as d, MongoWindowField as dt, MongoSampleStage as et, MongoAggCond as f, MongoAstNode as ft, MongoAggLiteral as g, MongoAggLet as h, MongoFieldFilter as i, MongoSkipStage as it, MongoAddFieldsStage as j, MongoStageRewriterContext as k, AggRecordArgs as l, MongoUpdatePipelineStage as lt, MongoAggFieldRef as m, MongoExistsExpr as n, MongoSearchStage as nt, MongoNotExpr as o, MongoSortStage as ot, MongoAggExpr as p, MongoMergeStage as q, MongoExprFilter as r, MongoSetWindowFieldsStage as rt, MongoOrExpr as s, MongoUnionWithStage as st, MongoAndExpr as t, MongoSearchMetaStage as tt, MongoAggAccumulator as u, MongoVectorSearchStage as ut, MongoAggMergeObjects as v, isRecordArgs as w, MongoAggSwitch as x, MongoAggOperator as y, MongoFillStage as z };
631
+ //# sourceMappingURL=filter-expressions-Du9Lf171.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-expressions-Du9Lf171.d.mts","names":[],"sources":["../src/ast-node.ts","../src/stages.ts","../src/visitors.ts","../src/aggregation-expressions.ts","../src/filter-expressions.ts"],"sourcesContent":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,29 +1,35 @@
1
1
  {
2
2
  "name": "@prisma-next/mongo-query-ast",
3
- "version": "0.3.0-dev.146",
3
+ "version": "0.3.0-dev.162",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "description": "Typed query AST for MongoDB aggregation pipelines",
7
7
  "dependencies": {
8
- "@prisma-next/mongo-value": "0.3.0-dev.146",
9
- "@prisma-next/contract": "0.3.0-dev.146"
8
+ "@prisma-next/contract": "0.3.0-dev.162",
9
+ "@prisma-next/mongo-contract": "0.3.0-dev.162",
10
+ "@prisma-next/framework-components": "0.3.0-dev.162",
11
+ "@prisma-next/mongo-value": "0.3.0-dev.162"
10
12
  },
11
13
  "devDependencies": {
12
14
  "tsdown": "0.18.4",
13
15
  "typescript": "5.9.3",
14
16
  "vitest": "4.0.17",
15
17
  "@prisma-next/test-utils": "0.0.1",
16
- "@prisma-next/tsconfig": "0.0.0",
17
- "@prisma-next/tsdown": "0.0.0"
18
+ "@prisma-next/tsdown": "0.0.0",
19
+ "@prisma-next/tsconfig": "0.0.0"
18
20
  },
19
21
  "files": [
20
22
  "dist",
21
23
  "src"
22
24
  ],
23
25
  "exports": {
24
- ".": {
25
- "types": "./dist/exports/index.d.mts",
26
- "import": "./dist/exports/index.mjs"
26
+ "./execution": {
27
+ "types": "./dist/exports/execution.d.mts",
28
+ "import": "./dist/exports/execution.mjs"
29
+ },
30
+ "./control": {
31
+ "types": "./dist/exports/control.d.mts",
32
+ "import": "./dist/exports/control.mjs"
27
33
  },
28
34
  "./package.json": "./package.json"
29
35
  },
@@ -0,0 +1,198 @@
1
+ import type { MongoIndexKey } from '@prisma-next/mongo-contract';
2
+ import { MongoAstNode } from './ast-node';
3
+ import type { MongoDdlCommandVisitor } from './ddl-visitors';
4
+
5
+ export interface CreateIndexOptions {
6
+ readonly unique?: boolean | undefined;
7
+ readonly sparse?: boolean | undefined;
8
+ readonly expireAfterSeconds?: number | undefined;
9
+ readonly partialFilterExpression?: Record<string, unknown> | undefined;
10
+ readonly name?: string | undefined;
11
+ readonly wildcardProjection?: Record<string, 0 | 1> | undefined;
12
+ readonly collation?: Record<string, unknown> | undefined;
13
+ readonly weights?: Record<string, number> | undefined;
14
+ readonly default_language?: string | undefined;
15
+ readonly language_override?: string | undefined;
16
+ }
17
+
18
+ export class CreateIndexCommand extends MongoAstNode {
19
+ readonly kind = 'createIndex' as const;
20
+ readonly collection: string;
21
+ readonly keys: ReadonlyArray<MongoIndexKey>;
22
+ readonly unique: boolean | undefined;
23
+ readonly sparse: boolean | undefined;
24
+ readonly expireAfterSeconds: number | undefined;
25
+ readonly partialFilterExpression: Record<string, unknown> | undefined;
26
+ readonly name: string | undefined;
27
+ readonly wildcardProjection: Record<string, 0 | 1> | undefined;
28
+ readonly collation: Record<string, unknown> | undefined;
29
+ readonly weights: Record<string, number> | undefined;
30
+ readonly default_language: string | undefined;
31
+ readonly language_override: string | undefined;
32
+
33
+ constructor(
34
+ collection: string,
35
+ keys: ReadonlyArray<MongoIndexKey>,
36
+ options?: CreateIndexOptions,
37
+ ) {
38
+ super();
39
+ this.collection = collection;
40
+ this.keys = keys;
41
+ this.unique = options?.unique;
42
+ this.sparse = options?.sparse;
43
+ this.expireAfterSeconds = options?.expireAfterSeconds;
44
+ this.partialFilterExpression = options?.partialFilterExpression;
45
+ this.name = options?.name;
46
+ this.wildcardProjection = options?.wildcardProjection;
47
+ this.collation = options?.collation;
48
+ this.weights = options?.weights;
49
+ this.default_language = options?.default_language;
50
+ this.language_override = options?.language_override;
51
+ this.freeze();
52
+ }
53
+
54
+ accept<R>(visitor: MongoDdlCommandVisitor<R>): R {
55
+ return visitor.createIndex(this);
56
+ }
57
+ }
58
+
59
+ export class DropIndexCommand extends MongoAstNode {
60
+ readonly kind = 'dropIndex' as const;
61
+ readonly collection: string;
62
+ readonly name: string;
63
+
64
+ constructor(collection: string, name: string) {
65
+ super();
66
+ this.collection = collection;
67
+ this.name = name;
68
+ this.freeze();
69
+ }
70
+
71
+ accept<R>(visitor: MongoDdlCommandVisitor<R>): R {
72
+ return visitor.dropIndex(this);
73
+ }
74
+ }
75
+
76
+ export interface CreateCollectionOptions {
77
+ readonly validator?: Record<string, unknown> | undefined;
78
+ readonly validationLevel?: 'strict' | 'moderate' | undefined;
79
+ readonly validationAction?: 'error' | 'warn' | undefined;
80
+ readonly capped?: boolean | undefined;
81
+ readonly size?: number | undefined;
82
+ readonly max?: number | undefined;
83
+ readonly timeseries?:
84
+ | {
85
+ timeField: string;
86
+ metaField?: string;
87
+ granularity?: 'seconds' | 'minutes' | 'hours';
88
+ }
89
+ | undefined;
90
+ readonly collation?: Record<string, unknown> | undefined;
91
+ readonly changeStreamPreAndPostImages?: { enabled: boolean } | undefined;
92
+ readonly clusteredIndex?:
93
+ | {
94
+ key: Record<string, number>;
95
+ unique: boolean;
96
+ name?: string;
97
+ }
98
+ | undefined;
99
+ }
100
+
101
+ export class CreateCollectionCommand extends MongoAstNode {
102
+ readonly kind = 'createCollection' as const;
103
+ readonly collection: string;
104
+ readonly validator: Record<string, unknown> | undefined;
105
+ readonly validationLevel: 'strict' | 'moderate' | undefined;
106
+ readonly validationAction: 'error' | 'warn' | undefined;
107
+ readonly capped: boolean | undefined;
108
+ readonly size: number | undefined;
109
+ readonly max: number | undefined;
110
+ readonly timeseries:
111
+ | {
112
+ timeField: string;
113
+ metaField?: string;
114
+ granularity?: 'seconds' | 'minutes' | 'hours';
115
+ }
116
+ | undefined;
117
+ readonly collation: Record<string, unknown> | undefined;
118
+ readonly changeStreamPreAndPostImages: { enabled: boolean } | undefined;
119
+ readonly clusteredIndex:
120
+ | {
121
+ key: Record<string, number>;
122
+ unique: boolean;
123
+ name?: string;
124
+ }
125
+ | undefined;
126
+
127
+ constructor(collection: string, options?: CreateCollectionOptions) {
128
+ super();
129
+ this.collection = collection;
130
+ this.validator = options?.validator;
131
+ this.validationLevel = options?.validationLevel;
132
+ this.validationAction = options?.validationAction;
133
+ this.capped = options?.capped;
134
+ this.size = options?.size;
135
+ this.max = options?.max;
136
+ this.timeseries = options?.timeseries;
137
+ this.collation = options?.collation;
138
+ this.changeStreamPreAndPostImages = options?.changeStreamPreAndPostImages;
139
+ this.clusteredIndex = options?.clusteredIndex;
140
+ this.freeze();
141
+ }
142
+
143
+ accept<R>(visitor: MongoDdlCommandVisitor<R>): R {
144
+ return visitor.createCollection(this);
145
+ }
146
+ }
147
+
148
+ export class DropCollectionCommand extends MongoAstNode {
149
+ readonly kind = 'dropCollection' as const;
150
+ readonly collection: string;
151
+
152
+ constructor(collection: string) {
153
+ super();
154
+ this.collection = collection;
155
+ this.freeze();
156
+ }
157
+
158
+ accept<R>(visitor: MongoDdlCommandVisitor<R>): R {
159
+ return visitor.dropCollection(this);
160
+ }
161
+ }
162
+
163
+ export interface CollModOptions {
164
+ readonly validator?: Record<string, unknown> | undefined;
165
+ readonly validationLevel?: 'strict' | 'moderate' | undefined;
166
+ readonly validationAction?: 'error' | 'warn' | undefined;
167
+ readonly changeStreamPreAndPostImages?: { enabled: boolean } | undefined;
168
+ }
169
+
170
+ export class CollModCommand extends MongoAstNode {
171
+ readonly kind = 'collMod' as const;
172
+ readonly collection: string;
173
+ readonly validator: Record<string, unknown> | undefined;
174
+ readonly validationLevel: 'strict' | 'moderate' | undefined;
175
+ readonly validationAction: 'error' | 'warn' | undefined;
176
+ readonly changeStreamPreAndPostImages: { enabled: boolean } | undefined;
177
+
178
+ constructor(collection: string, options: CollModOptions) {
179
+ super();
180
+ this.collection = collection;
181
+ this.validator = options.validator;
182
+ this.validationLevel = options.validationLevel;
183
+ this.validationAction = options.validationAction;
184
+ this.changeStreamPreAndPostImages = options.changeStreamPreAndPostImages;
185
+ this.freeze();
186
+ }
187
+
188
+ accept<R>(visitor: MongoDdlCommandVisitor<R>): R {
189
+ return visitor.collMod(this);
190
+ }
191
+ }
192
+
193
+ export type AnyMongoDdlCommand =
194
+ | CreateIndexCommand
195
+ | DropIndexCommand
196
+ | CreateCollectionCommand
197
+ | DropCollectionCommand
198
+ | CollModCommand;
@@ -0,0 +1,21 @@
1
+ import type {
2
+ CollModCommand,
3
+ CreateCollectionCommand,
4
+ CreateIndexCommand,
5
+ DropCollectionCommand,
6
+ DropIndexCommand,
7
+ } from './ddl-commands';
8
+ import type { ListCollectionsCommand, ListIndexesCommand } from './inspection-commands';
9
+
10
+ export interface MongoDdlCommandVisitor<R> {
11
+ createIndex(command: CreateIndexCommand): R;
12
+ dropIndex(command: DropIndexCommand): R;
13
+ createCollection(command: CreateCollectionCommand): R;
14
+ dropCollection(command: DropCollectionCommand): R;
15
+ collMod(command: CollModCommand): R;
16
+ }
17
+
18
+ export interface MongoInspectionCommandVisitor<R> {
19
+ listIndexes(command: ListIndexesCommand): R;
20
+ listCollections(command: ListCollectionsCommand): R;
21
+ }
@@ -0,0 +1,33 @@
1
+ export type { MongoIndexKey, MongoIndexKeyDirection } from '@prisma-next/mongo-contract';
2
+ export type {
3
+ AnyMongoDdlCommand,
4
+ CollModOptions,
5
+ CreateCollectionOptions,
6
+ CreateIndexOptions,
7
+ } from '../ddl-commands';
8
+ export {
9
+ CollModCommand,
10
+ CreateCollectionCommand,
11
+ CreateIndexCommand,
12
+ DropCollectionCommand,
13
+ DropIndexCommand,
14
+ } from '../ddl-commands';
15
+ export type { MongoDdlCommandVisitor, MongoInspectionCommandVisitor } from '../ddl-visitors';
16
+ export type { MongoFilterExpr } from '../filter-expressions';
17
+ export {
18
+ MongoAndExpr,
19
+ MongoExistsExpr,
20
+ MongoExprFilter,
21
+ MongoFieldFilter,
22
+ MongoNotExpr,
23
+ MongoOrExpr,
24
+ } from '../filter-expressions';
25
+ export type { AnyMongoInspectionCommand } from '../inspection-commands';
26
+ export { ListCollectionsCommand, ListIndexesCommand } from '../inspection-commands';
27
+ export { buildIndexOpId, defaultMongoIndexName, keysToKeySpec } from '../migration-helpers';
28
+ export type {
29
+ MongoMigrationCheck,
30
+ MongoMigrationPlanOperation,
31
+ MongoMigrationStep,
32
+ } from '../migration-operation-types';
33
+ export type { MongoFilterVisitor } from '../visitors';
@@ -28,6 +28,7 @@ export {
28
28
  } from '../commands';
29
29
  export type { MongoFilterExpr } from '../filter-expressions';
30
30
  export {
31
+ isMongoFilterExpr,
31
32
  MongoAndExpr,
32
33
  MongoExistsExpr,
33
34
  MongoExprFilter,