wip: zen
This commit is contained in:
@@ -119,6 +119,9 @@ export async function handler(
|
|||||||
Object.entries(providerInfo.headerMappings ?? {}).forEach(([k, v]) => {
|
Object.entries(providerInfo.headerMappings ?? {}).forEach(([k, v]) => {
|
||||||
headers.set(k, headers.get(v)!)
|
headers.set(k, headers.get(v)!)
|
||||||
})
|
})
|
||||||
|
Object.entries(providerInfo.headers ?? {}).forEach(([k, v]) => {
|
||||||
|
headers.set(k, v)
|
||||||
|
})
|
||||||
headers.delete("host")
|
headers.delete("host")
|
||||||
headers.delete("content-length")
|
headers.delete("content-length")
|
||||||
headers.delete("x-opencode-request")
|
headers.delete("x-opencode-request")
|
||||||
@@ -250,13 +253,18 @@ export async function handler(
|
|||||||
part = part.trim()
|
part = part.trim()
|
||||||
usageParser.parse(part)
|
usageParser.parse(part)
|
||||||
|
|
||||||
if (providerInfo.format !== opts.format) {
|
if (providerInfo.bodyModifier) {
|
||||||
|
for (const [k, v] of Object.entries(providerInfo.bodyModifier)) {
|
||||||
|
part = part.replace(k, v)
|
||||||
|
}
|
||||||
|
c.enqueue(encoder.encode(part + "\n\n"))
|
||||||
|
} else if (providerInfo.format !== opts.format) {
|
||||||
part = streamConverter(part)
|
part = streamConverter(part)
|
||||||
c.enqueue(encoder.encode(part + "\n\n"))
|
c.enqueue(encoder.encode(part + "\n\n"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (providerInfo.format === opts.format) {
|
if (!providerInfo.bodyModifier && providerInfo.format === opts.format) {
|
||||||
c.enqueue(value)
|
c.enqueue(value)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -53,7 +53,8 @@ export namespace ZenData {
|
|||||||
weight: z.number().optional(),
|
weight: z.number().optional(),
|
||||||
disabled: z.boolean().optional(),
|
disabled: z.boolean().optional(),
|
||||||
storeModel: z.string().optional(),
|
storeModel: z.string().optional(),
|
||||||
headerMappings: z.record(z.string(), z.string()).optional(),
|
headers: z.record(z.string(), z.string()).optional(),
|
||||||
|
bodyModifier: z.record(z.string(), z.string()).optional(),
|
||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user