fix(core): move @cfworker/json-schema out of main barrel into /validators/cf-worker subpath (#1897)

This commit is contained in:
Felix Weinberger 2026-04-28 13:40:18 +01:00 • committed by GitHub
commit 434b2f11ec
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 38 additions and 12 deletions

View file

@ -3,7 +3,7 @@
*
* This file is selected via package.json export conditions when running in a browser.
*/
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core';
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core/validators/cfWorker';
/**
* Whether `fetch()` may throw `TypeError` due to CORS. Only true in browser contexts

View file

@ -3,7 +3,7 @@
*
* This file is selected via package.json export conditions when running in workerd.
*/
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core';
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core/validators/cfWorker';
/**
* Whether `fetch()` may throw `TypeError` due to CORS. CORS is a browser-only concept —

View file

@ -6,5 +6,5 @@
* import { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/client/validators/cf-worker';
* ```
*/
export { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/core';
export type { CfWorkerSchemaDraft } from '@modelcontextprotocol/core';
export type { CfWorkerSchemaDraft } from '@modelcontextprotocol/core/validators/cfWorker';
export { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/core/validators/cfWorker';

View file

@ -7,6 +7,9 @@
"*": ["./*"],
"@modelcontextprotocol/core": ["./node_modules/@modelcontextprotocol/core/src/index.ts"],
"@modelcontextprotocol/core/public": ["./node_modules/@modelcontextprotocol/core/src/exports/public/index.ts"],
"@modelcontextprotocol/core/validators/cfWorker": [
"./node_modules/@modelcontextprotocol/core/src/validators/cfWorkerProvider.ts"
],
"@modelcontextprotocol/test-helpers": ["./node_modules/@modelcontextprotocol/test-helpers/src/index.ts"],
"@modelcontextprotocol/client/_shims": ["./src/shimsNode.ts"]
}

View file

@ -26,7 +26,8 @@ export default defineConfig({
baseUrl: '.',
paths: {
'@modelcontextprotocol/core': ['../core/src/index.ts'],
'@modelcontextprotocol/core/public': ['../core/src/exports/public/index.ts']
'@modelcontextprotocol/core/public': ['../core/src/exports/public/index.ts'],
'@modelcontextprotocol/core/validators/cfWorker': ['../core/src/validators/cfWorkerProvider.ts']
}
}
},

View file

@ -32,6 +32,10 @@
"./public": {
"types": "./src/exports/public/index.ts",
"import": "./src/exports/public/index.ts"
},
"./validators/cfWorker": {
"types": "./src/validators/cfWorkerProvider.ts",
"import": "./src/validators/cfWorkerProvider.ts"
}
},
"scripts": {

View file

@ -19,7 +19,11 @@ export * from './util/standardSchema.js';
// experimental exports
export * from './experimental/index.js';
export * from './validators/ajvProvider.js';
export * from './validators/cfWorkerProvider.js';
// cfWorkerProvider is intentionally NOT re-exported here: it statically imports
// `@cfworker/json-schema` (an optional peer), and bundling it into the main barrel
// would force that import on all Node consumers. Import via `@modelcontextprotocol/core/validators/cfWorker`
// (used by the workerd/browser `_shims` and the public `/validators/cf-worker` subpaths).
export type { CfWorkerSchemaDraft } from './validators/cfWorkerProvider.js';
export * from './validators/fromJsonSchema.js';
/**
* JSON Schema validation
@ -30,7 +34,7 @@ export * from './validators/fromJsonSchema.js';
* - {@linkcode AjvJsonSchemaValidator}: Best for Node.js (default, fastest)
* Bundled — no additional dependencies required.
*
* - {@linkcode CfWorkerJsonSchemaValidator}: Best for edge runtimes
* - `CfWorkerJsonSchemaValidator`: Best for edge runtimes
* Import from: `@modelcontextprotocol/server/validators/cf-worker` or `@modelcontextprotocol/client/validators/cf-worker`
* Bundled — no additional dependencies required.
*

View file

@ -3,7 +3,7 @@
*
* This file is selected via package.json export conditions when running in workerd.
*/
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core';
export { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core/validators/cfWorker';
/**
* Stub process object for non-Node.js environments.

View file

@ -6,5 +6,5 @@
* import { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/server/validators/cf-worker';
* ```
*/
export { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/core';
export type { CfWorkerSchemaDraft } from '@modelcontextprotocol/core';
export type { CfWorkerSchemaDraft } from '@modelcontextprotocol/core/validators/cfWorker';
export { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/core/validators/cfWorker';

View file

@ -7,6 +7,9 @@
"*": ["./*"],
"@modelcontextprotocol/core": ["./node_modules/@modelcontextprotocol/core/src/index.ts"],
"@modelcontextprotocol/core/public": ["./node_modules/@modelcontextprotocol/core/src/exports/public/index.ts"],
"@modelcontextprotocol/core/validators/cfWorker": [
"./node_modules/@modelcontextprotocol/core/src/validators/cfWorkerProvider.ts"
],
"@modelcontextprotocol/test-helpers": ["./node_modules/@modelcontextprotocol/test-helpers/src/index.ts"],
"@modelcontextprotocol/server/_shims": ["./src/shimsNode.ts"]
}

View file

@ -26,7 +26,8 @@ export default defineConfig({
baseUrl: '.',
paths: {
'@modelcontextprotocol/core': ['../core/src/index.ts'],
'@modelcontextprotocol/core/public': ['../core/src/exports/public/index.ts']
'@modelcontextprotocol/core/public': ['../core/src/exports/public/index.ts'],
'@modelcontextprotocol/core/validators/cfWorker': ['../core/src/validators/cfWorkerProvider.ts']
}
}
},