@antseed/provider-core 0.2.10 → 0.2.12
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 +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/middleware.d.ts +0 -23
- package/dist/middleware.d.ts.map +0 -1
- package/dist/middleware.js +0 -81
- package/dist/middleware.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,5 +3,4 @@ export { swapAuthHeader, validateRequestService, KNOWN_AUTH_HEADERS } from './au
|
|
|
3
3
|
export { StaticTokenProvider, OAuthTokenProvider, createTokenProvider, type AuthType } from './token-providers.js';
|
|
4
4
|
export type { TokenProvider, TokenProviderState } from './token-providers.js';
|
|
5
5
|
export { BaseProvider, type BaseProviderConfig } from './base-provider.js';
|
|
6
|
-
export { applyMiddleware, detectRequestFormat, type ProviderMiddleware, type MiddlewarePosition, type RequestFormat } from './middleware.js';
|
|
7
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACnH,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACnH,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,5 +2,4 @@ export { HttpRelay } from './http-relay.js';
|
|
|
2
2
|
export { swapAuthHeader, validateRequestService, KNOWN_AUTH_HEADERS } from './auth-swap.js';
|
|
3
3
|
export { StaticTokenProvider, OAuthTokenProvider, createTokenProvider } from './token-providers.js';
|
|
4
4
|
export { BaseProvider } from './base-provider.js';
|
|
5
|
-
export { applyMiddleware, detectRequestFormat } from './middleware.js';
|
|
6
5
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyC,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAiB,MAAM,sBAAsB,CAAC;AAEnH,OAAO,EAAE,YAAY,EAA2B,MAAM,oBAAoB,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyC,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAiB,MAAM,sBAAsB,CAAC;AAEnH,OAAO,EAAE,YAAY,EAA2B,MAAM,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@antseed/provider-core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"description": "Shared provider infrastructure for Antseed plugins",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"devDependencies": {
|
|
15
15
|
"typescript": "^5.5.0",
|
|
16
16
|
"vitest": "^2.0.0",
|
|
17
|
-
"@antseed/node": "0.2.
|
|
17
|
+
"@antseed/node": "0.2.16"
|
|
18
18
|
},
|
|
19
19
|
"scripts": {
|
|
20
20
|
"prebuild": "rm -rf dist",
|
package/dist/middleware.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export type RequestFormat = 'anthropic' | 'openai';
|
|
2
|
-
/** Detect request format from the request path. */
|
|
3
|
-
export declare function detectRequestFormat(path?: string): RequestFormat;
|
|
4
|
-
export type MiddlewarePosition = 'system-prepend' | 'system-append' | 'prepend' | 'append';
|
|
5
|
-
export interface ProviderMiddleware {
|
|
6
|
-
/** Markdown content to inject. */
|
|
7
|
-
content: string;
|
|
8
|
-
position: MiddlewarePosition;
|
|
9
|
-
/** Role for 'prepend'/'append' positions. Default: 'user'. */
|
|
10
|
-
role?: string;
|
|
11
|
-
/** If set, only inject for requests targeting one of these service IDs. Applies to all services when omitted. */
|
|
12
|
-
services?: string[];
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Inject middleware content into an already-parsed request body.
|
|
16
|
-
* Handles both Anthropic format (top-level `system` string) and
|
|
17
|
-
* OpenAI format (system role inside `messages` array).
|
|
18
|
-
*
|
|
19
|
-
* @param format - 'anthropic' (default) for Anthropic-style requests, 'openai' for
|
|
20
|
-
* OpenAI-compatible requests where system prompts live inside `messages`.
|
|
21
|
-
*/
|
|
22
|
-
export declare function applyMiddleware(body: Record<string, unknown>, middlewares: ProviderMiddleware[], format?: RequestFormat): Record<string, unknown>;
|
|
23
|
-
//# sourceMappingURL=middleware.d.ts.map
|
package/dist/middleware.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEnD,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,CAEhE;AAED,MAAM,MAAM,kBAAkB,GAC1B,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,QAAQ,CAAC;AAEb,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iHAAiH;IACjH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,EAAE,kBAAkB,EAAE,EACjC,MAAM,GAAE,aAA2B,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAczB"}
|
package/dist/middleware.js
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/** Detect request format from the request path. */
|
|
2
|
-
export function detectRequestFormat(path) {
|
|
3
|
-
return path?.includes('/chat/completions') ? 'openai' : 'anthropic';
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Inject middleware content into an already-parsed request body.
|
|
7
|
-
* Handles both Anthropic format (top-level `system` string) and
|
|
8
|
-
* OpenAI format (system role inside `messages` array).
|
|
9
|
-
*
|
|
10
|
-
* @param format - 'anthropic' (default) for Anthropic-style requests, 'openai' for
|
|
11
|
-
* OpenAI-compatible requests where system prompts live inside `messages`.
|
|
12
|
-
*/
|
|
13
|
-
export function applyMiddleware(body, middlewares, format = 'anthropic') {
|
|
14
|
-
if (!middlewares.length)
|
|
15
|
-
return body;
|
|
16
|
-
let result = { ...body };
|
|
17
|
-
for (const mw of middlewares) {
|
|
18
|
-
if (mw.position === 'system-prepend' || mw.position === 'system-append') {
|
|
19
|
-
result = applySystemMiddleware(result, mw, format);
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
result = applyMessagesMiddleware(result, mw);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return result;
|
|
26
|
-
}
|
|
27
|
-
function applySystemMiddleware(body, mw, format) {
|
|
28
|
-
const prepend = mw.position === 'system-prepend';
|
|
29
|
-
if (format !== 'openai') {
|
|
30
|
-
// Anthropic format: top-level `system` string or array of content blocks
|
|
31
|
-
if (typeof body.system === 'string') {
|
|
32
|
-
return {
|
|
33
|
-
...body,
|
|
34
|
-
system: prepend
|
|
35
|
-
? `${mw.content}\n\n${body.system}`
|
|
36
|
-
: `${body.system}\n\n${mw.content}`,
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
if (Array.isArray(body.system)) {
|
|
40
|
-
const block = { type: 'text', text: mw.content };
|
|
41
|
-
return {
|
|
42
|
-
...body,
|
|
43
|
-
system: prepend
|
|
44
|
-
? [block, ...body.system]
|
|
45
|
-
: [...body.system, block],
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
// No system field yet — create one
|
|
49
|
-
return { ...body, system: mw.content };
|
|
50
|
-
}
|
|
51
|
-
// OpenAI format: system prompt lives inside the messages array
|
|
52
|
-
const messages = Array.isArray(body.messages) ? [...body.messages] : [];
|
|
53
|
-
const systemMsg = { role: 'system', content: mw.content };
|
|
54
|
-
if (prepend) {
|
|
55
|
-
// Insert before existing system messages (at index 0)
|
|
56
|
-
messages.unshift(systemMsg);
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
// Insert after the last existing system message, or at the end
|
|
60
|
-
const lastSystem = messages.reduceRight((acc, msg, i) => acc === -1 && msg.role === 'system' ? i : acc, -1);
|
|
61
|
-
if (lastSystem === -1) {
|
|
62
|
-
messages.push(systemMsg);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
messages.splice(lastSystem + 1, 0, systemMsg);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return { ...body, messages };
|
|
69
|
-
}
|
|
70
|
-
function applyMessagesMiddleware(body, mw) {
|
|
71
|
-
const messages = Array.isArray(body.messages) ? [...body.messages] : [];
|
|
72
|
-
const injected = { role: mw.role ?? 'user', content: mw.content };
|
|
73
|
-
if (mw.position === 'prepend') {
|
|
74
|
-
messages.unshift(injected);
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
messages.push(injected);
|
|
78
|
-
}
|
|
79
|
-
return { ...body, messages };
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=middleware.js.map
|
package/dist/middleware.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"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"}
|