Skip to content

Commit 80e02c0

Browse files
committed
chore: fix build with CJS
1 parent 2813618 commit 80e02c0

File tree

7 files changed

+17
-17
lines changed

7 files changed

+17
-17
lines changed

src/common/config.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import type { CliOptions, ConnectionInfo } from "@mongosh/arg-parser";
33
import { generateConnectionInfoFromCliArgs } from "@mongosh/arg-parser";
44
import { Keychain } from "./keychain.js";
55
import type { Secret } from "./keychain.js";
6-
76
import { z as z4 } from "zod/v4";
87
import {
98
commaSeparatedToArray,
@@ -14,7 +13,7 @@ import {
1413
validateConfigKey,
1514
} from "./configUtils.js";
1615
import { OPTIONS } from "./argsParserOptions.js";
17-
import { similarityEnumV4 } from "./schemas.js";
16+
import { similarityValues, previewFeatureValues } from "./schemas.js";
1817

1918
export const configRegistry = z4.registry<ConfigFieldMeta>();
2019

@@ -164,20 +163,19 @@ export const UserConfigSchema = z4.object({
164163
.number()
165164
.default(1024)
166165
.describe("Default number of dimensions for vector search embeddings."),
167-
vectorSearchSimilarityFunction: similarityEnumV4
166+
vectorSearchSimilarityFunction: z4
167+
.enum(similarityValues)
168168
.default("euclidean")
169169
.describe("Default similarity function for vector search: 'euclidean', 'cosine', or 'dotProduct'."),
170170
previewFeatures: z4
171171
.preprocess(
172172
(val: string | string[] | undefined) => commaSeparatedToArray(val),
173-
z4.array(z4.enum(["vectorSearch"]))
173+
z4.array(z4.enum(previewFeatureValues))
174174
)
175175
.default([])
176176
.describe("An array of preview features that are enabled."),
177177
});
178178

179-
export type Similarity = z4.infer<typeof UserConfigSchema>["vectorSearchSimilarityFunction"];
180-
export type PreviewFeature = z4.infer<typeof UserConfigSchema>["previewFeatures"][number];
181179
export type UserConfig = z4.infer<typeof UserConfigSchema> & CliOptions;
182180

183181
export const config = setupUserConfig({

src/common/schemas.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
import z4 from "zod/v4";
2-
import z3 from "zod/v3";
1+
export const previewFeatureValues = ["vectorSearch"] as const;
2+
export type PreviewFeature = (typeof previewFeatureValues)[number];
33

4-
const similarityValues = ["cosine", "euclidean", "dotProduct"] as const;
4+
export const similarityValues = ["cosine", "euclidean", "dotProduct"] as const;
55

6-
export const similarityEnumV4 = z4.enum(similarityValues);
7-
export const similarityEnum = z3.enum(similarityValues);
6+
export type Similarity = (typeof similarityValues)[number];

src/common/search/vectorSearchEmbeddingsManager.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import type { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver";
22
import { BSON, type Document } from "bson";
3-
import type { Similarity, UserConfig } from "../config.js";
3+
import type { UserConfig } from "../config.js";
44
import type { ConnectionManager } from "../connectionManager.js";
55
import z from "zod";
66
import { ErrorCodes, MongoDBError } from "../errors.js";
77
import { getEmbeddingsProvider } from "./embeddingsProvider.js";
88
import type { EmbeddingParameters, SupportedEmbeddingParameters } from "./embeddingsProvider.js";
99
import { formatUntrustedData } from "../../tools/tool.js";
10+
import type { Similarity } from "../schemas.js";
1011

1112
export const quantizationEnum = z.enum(["none", "scalar", "binary"]);
1213
export type Quantization = z.infer<typeof quantizationEnum>;

src/tools/mongodb/create/createIndex.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
44
import { type ToolArgs, type OperationType } from "../../tool.js";
55
import type { IndexDirection } from "mongodb";
66
import { quantizationEnum } from "../../../common/search/vectorSearchEmbeddingsManager.js";
7-
import { similarityEnum } from "../../../common/schemas.js";
7+
import { similarityValues, type Similarity } from "../../../common/schemas.js";
88

99
export class CreateIndexTool extends MongoDBToolBase {
1010
private vectorSearchIndexDefinition = z.object({
@@ -39,7 +39,8 @@ export class CreateIndexTool extends MongoDBToolBase {
3939
.describe(
4040
"Number of vector dimensions that MongoDB Vector Search enforces at index-time and query-time"
4141
),
42-
similarity: similarityEnum
42+
similarity: z
43+
.enum(similarityValues)
4344
.default(this.config.vectorSearchSimilarityFunction)
4445
.describe(
4546
"Vector similarity function to use to search for top K-nearest neighbors. You can set this field only for vector-type fields."

src/tools/tool.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@ import type { Session } from "../common/session.js";
66
import { LogId } from "../common/logger.js";
77
import type { Telemetry } from "../telemetry/telemetry.js";
88
import { type ToolEvent } from "../telemetry/types.js";
9-
import type { PreviewFeature, UserConfig } from "../common/config.js";
9+
import type { UserConfig } from "../common/config.js";
1010
import type { Server } from "../server.js";
1111
import type { Elicitation } from "../elicitation.js";
12+
import type { PreviewFeature } from "../common/schemas.js";
1213

1314
export type ToolArgs<Args extends ZodRawShape> = z.objectOutputType<Args, ZodNever>;
1415
export type ToolCallbackArgs<Args extends ZodRawShape> = Parameters<ToolCallback<Args>>;

tests/unit/toolBase.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ import { z } from "zod";
33
import { ToolBase, type OperationType, type ToolCategory, type ToolConstructorParams } from "../../src/tools/tool.js";
44
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
55
import type { Session } from "../../src/common/session.js";
6-
import type { PreviewFeature, UserConfig } from "../../src/common/config.js";
6+
import type { UserConfig } from "../../src/common/config.js";
77
import type { Telemetry } from "../../src/telemetry/telemetry.js";
88
import type { Elicitation } from "../../src/elicitation.js";
99
import type { CompositeLogger } from "../../src/common/logger.js";
1010
import type { TelemetryToolMetadata, ToolCallbackArgs } from "../../src/tools/tool.js";
11+
import type { PreviewFeature } from "../../src/common/schemas.js";
1112

1213
describe("ToolBase", () => {
1314
let mockSession: Session;

tsconfig.cjs.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"extends": "./tsconfig.build.json",
33
"compilerOptions": {
4-
"noCheck": true,
54
"module": "commonjs",
65
"moduleResolution": "node",
76
"outDir": "./dist/cjs"

0 commit comments

Comments
 (0)