@effect-uai/google 0.17.0 → 0.19.0-dev-20261109183959
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/README.md +4 -4
- package/dist/Gemini.d.mts +1 -1
- package/dist/Gemini.mjs +1 -1
- package/dist/Gemini.mjs.map +1 -1
- package/dist/GeminiEmbedding.d.mts +1 -1
- package/dist/GeminiEmbedding.d.mts.map +1 -1
- package/dist/GeminiEmbedding.mjs +4 -3
- package/dist/GeminiEmbedding.mjs.map +1 -1
- package/dist/GeminiImageGenerator.d.mts +1 -1
- package/dist/GeminiImageGenerator.d.mts.map +1 -1
- package/dist/GeminiImageGenerator.mjs +4 -3
- package/dist/GeminiImageGenerator.mjs.map +1 -1
- package/dist/GeminiLiveSession.d.mts +1 -1
- package/dist/GeminiSynthesizer.d.mts +1 -1
- package/dist/GeminiSynthesizer.mjs +1 -1
- package/dist/GeminiSynthesizer.mjs.map +1 -1
- package/dist/GeminiSynthesizer.test.mjs +1 -1
- package/dist/GoogleDeepResearch.d.mts +1 -1
- package/dist/GoogleDeepResearch.mjs +1 -1
- package/dist/GoogleDeepResearch.mjs.map +1 -1
- package/dist/GoogleDeepResearch.test.mjs +1 -1
- package/dist/LyriaGenerator.d.mts +1 -1
- package/dist/LyriaGenerator.d.mts.map +1 -1
- package/dist/LyriaGenerator.mjs +4 -3
- package/dist/LyriaGenerator.mjs.map +1 -1
- package/dist/LyriaGenerator.test.mjs +4 -142
- package/dist/LyriaGenerator.test.mjs.map +1 -1
- package/dist/codec.d.mts +28 -7
- package/dist/codec.d.mts.map +1 -1
- package/dist/codec.mjs +55 -12
- package/dist/codec.mjs.map +1 -1
- package/dist/codec.test.d.mts +1 -0
- package/dist/codec.test.mjs +61 -0
- package/dist/codec.test.mjs.map +1 -0
- package/dist/dist-DHer1cql.mjs +1533 -0
- package/dist/dist-DHer1cql.mjs.map +1 -0
- package/dist/geminiSpeechCodec.d.mts.map +1 -1
- package/dist/geminiSpeechCodec.mjs +4 -3
- package/dist/geminiSpeechCodec.mjs.map +1 -1
- package/dist/geminiSpeechCodec.test.mjs +5 -4
- package/dist/geminiSpeechCodec.test.mjs.map +1 -1
- package/dist/geminiTools.test.mjs +2 -1
- package/dist/geminiTools.test.mjs.map +1 -1
- package/dist/{test.DNmyFkvJ-BPz3G1HS.mjs → index.C4tKZ0yW-DjxCdpW_.mjs} +9115 -5993
- package/dist/index.C4tKZ0yW-DjxCdpW_.mjs.map +1 -0
- package/dist/{realtimeSession-7HSIjWh4.d.mts → realtimeSession-BlBgLDdp.d.mts} +2 -2
- package/dist/{realtimeSession-7HSIjWh4.d.mts.map → realtimeSession-BlBgLDdp.d.mts.map} +1 -1
- package/dist/realtimeSession.d.mts +1 -1
- package/dist/realtimeSession.mjs +8 -7
- package/dist/realtimeSession.mjs.map +1 -1
- package/dist/realtimeSession.test.mjs +120 -98
- package/dist/realtimeSession.test.mjs.map +1 -1
- package/package.json +5 -5
- package/src/Gemini.ts +1 -1
- package/src/GeminiEmbedding.ts +4 -3
- package/src/GeminiImageGenerator.ts +4 -3
- package/src/GeminiSynthesizer.ts +1 -1
- package/src/GoogleDeepResearch.ts +1 -1
- package/src/LyriaGenerator.test.ts +1 -1
- package/src/LyriaGenerator.ts +4 -14
- package/src/codec.test.ts +54 -0
- package/src/codec.ts +93 -23
- package/src/geminiSpeechCodec.test.ts +4 -3
- package/src/geminiSpeechCodec.ts +4 -3
- package/src/geminiTools.test.ts +1 -0
- package/src/realtimeSession.test.ts +9 -8
- package/src/realtimeSession.ts +7 -7
- package/dist/magic-string.es-CUAnjKYC.mjs +0 -1014
- package/dist/magic-string.es-CUAnjKYC.mjs.map +0 -1
- package/dist/test.DNmyFkvJ-BPz3G1HS.mjs.map +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { functionResponseBody } from "./codec.mjs";
|
|
2
|
+
import { c as it, n as globalExpect, s as describe } from "./index.C4tKZ0yW-DjxCdpW_.mjs";
|
|
3
|
+
import { imageBytes } from "@effect-uai/core/Image";
|
|
4
|
+
import * as Items from "@effect-uai/core/Items";
|
|
5
|
+
import { fileUrl } from "@effect-uai/core/File";
|
|
6
|
+
//#region src/codec.test.ts
|
|
7
|
+
const body = (output, isError) => functionResponseBody({
|
|
8
|
+
type: "function_call_output",
|
|
9
|
+
call_id: "c1",
|
|
10
|
+
output,
|
|
11
|
+
...isError !== void 0 && { isError }
|
|
12
|
+
});
|
|
13
|
+
describe("functionResponseBody", () => {
|
|
14
|
+
it("puts one JSON value under output as an object, never a string", () => {
|
|
15
|
+
globalExpect(body([Items.json({
|
|
16
|
+
city: "Lisbon",
|
|
17
|
+
temp: 18
|
|
18
|
+
})])).toEqual({ response: { output: {
|
|
19
|
+
city: "Lisbon",
|
|
20
|
+
temp: 18
|
|
21
|
+
} } });
|
|
22
|
+
});
|
|
23
|
+
it("puts a failure under error", () => {
|
|
24
|
+
globalExpect(body([Items.json({
|
|
25
|
+
_tag: "CityNotFound",
|
|
26
|
+
city: "Atlantis"
|
|
27
|
+
})], true)).toEqual({ response: { error: {
|
|
28
|
+
_tag: "CityNotFound",
|
|
29
|
+
city: "Atlantis"
|
|
30
|
+
} } });
|
|
31
|
+
});
|
|
32
|
+
it("keeps several values as an array and moves media to parts", () => {
|
|
33
|
+
globalExpect(body([
|
|
34
|
+
Items.text("Home"),
|
|
35
|
+
Items.json({ hits: 2 }),
|
|
36
|
+
Items.image(imageBytes(new Uint8Array([
|
|
37
|
+
1,
|
|
38
|
+
2,
|
|
39
|
+
3
|
|
40
|
+
]), "image/png")),
|
|
41
|
+
Items.file(fileUrl("gs://bucket/a.pdf", "application/pdf"), "a.pdf")
|
|
42
|
+
])).toEqual({
|
|
43
|
+
response: { output: ["Home", { hits: 2 }] },
|
|
44
|
+
parts: [{ inlineData: {
|
|
45
|
+
mimeType: "image/png",
|
|
46
|
+
data: "AQID"
|
|
47
|
+
} }, { fileData: {
|
|
48
|
+
fileUri: "gs://bucket/a.pdf",
|
|
49
|
+
mimeType: "application/pdf",
|
|
50
|
+
displayName: "a.pdf"
|
|
51
|
+
} }]
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
it("sends an empty response for media-only output", () => {
|
|
55
|
+
globalExpect(body([Items.image(imageBytes(new Uint8Array([1]), "image/png"))]).response).toEqual({});
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//#endregion
|
|
59
|
+
export {};
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=codec.test.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codec.test.mjs","names":[],"sources":["../src/codec.test.ts"],"sourcesContent":["import { fileUrl } from \"@effect-uai/core/File\"\nimport { imageBytes } from \"@effect-uai/core/Image\"\nimport * as Items from \"@effect-uai/core/Items\"\nimport { describe, expect, it } from \"vitest\"\nimport { functionResponseBody } from \"./codec.js\"\n\nconst body = (output: Items.ToolCallOutput[\"output\"], isError?: boolean) =>\n functionResponseBody({\n type: \"function_call_output\",\n call_id: \"c1\",\n output,\n ...(isError !== undefined && { isError }),\n })\n\ndescribe(\"functionResponseBody\", () => {\n it(\"puts one JSON value under output as an object, never a string\", () => {\n expect(body([Items.json({ city: \"Lisbon\", temp: 18 })])).toEqual({\n response: { output: { city: \"Lisbon\", temp: 18 } },\n })\n })\n\n it(\"puts a failure under error\", () => {\n expect(body([Items.json({ _tag: \"CityNotFound\", city: \"Atlantis\" })], true)).toEqual({\n response: { error: { _tag: \"CityNotFound\", city: \"Atlantis\" } },\n })\n })\n\n it(\"keeps several values as an array and moves media to parts\", () => {\n expect(\n body([\n Items.text(\"Home\"),\n Items.json({ hits: 2 }),\n Items.image(imageBytes(new Uint8Array([1, 2, 3]), \"image/png\")),\n Items.file(fileUrl(\"gs://bucket/a.pdf\", \"application/pdf\"), \"a.pdf\"),\n ]),\n ).toEqual({\n response: { output: [\"Home\", { hits: 2 }] },\n parts: [\n { inlineData: { mimeType: \"image/png\", data: \"AQID\" } },\n {\n fileData: {\n fileUri: \"gs://bucket/a.pdf\",\n mimeType: \"application/pdf\",\n displayName: \"a.pdf\",\n },\n },\n ],\n })\n })\n\n it(\"sends an empty response for media-only output\", () => {\n expect(body([Items.image(imageBytes(new Uint8Array([1]), \"image/png\"))]).response).toEqual({})\n })\n})\n"],"mappings":";;;;;;AAMA,MAAM,QAAQ,QAAwC,YACpD,qBAAqB;CACnB,MAAM;CACN,SAAS;CACT;CACA,GAAI,YAAY,KAAA,KAAa,EAAE,QAAQ;AACzC,CAAC;AAEH,SAAS,8BAA8B;CACrC,GAAG,uEAAuE;EACxE,aAAO,KAAK,CAAC,MAAM,KAAK;GAAE,MAAM;GAAU,MAAM;EAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAC/D,UAAU,EAAE,QAAQ;GAAE,MAAM;GAAU,MAAM;EAAG,EAAE,EACnD,CAAC;CACH,CAAC;CAED,GAAG,oCAAoC;EACrC,aAAO,KAAK,CAAC,MAAM,KAAK;GAAE,MAAM;GAAgB,MAAM;EAAW,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EACnF,UAAU,EAAE,OAAO;GAAE,MAAM;GAAgB,MAAM;EAAW,EAAE,EAChE,CAAC;CACH,CAAC;CAED,GAAG,mEAAmE;EACpE,aACE,KAAK;GACH,MAAM,KAAK,MAAM;GACjB,MAAM,KAAK,EAAE,MAAM,EAAE,CAAC;GACtB,MAAM,MAAM,WAAW,IAAI,WAAW;IAAC;IAAG;IAAG;GAAC,CAAC,GAAG,WAAW,CAAC;GAC9D,MAAM,KAAK,QAAQ,qBAAqB,iBAAiB,GAAG,OAAO;EACrE,CAAC,CACH,CAAC,CAAC,QAAQ;GACR,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE;GAC1C,OAAO,CACL,EAAE,YAAY;IAAE,UAAU;IAAa,MAAM;GAAO,EAAE,GACtD,EACE,UAAU;IACR,SAAS;IACT,UAAU;IACV,aAAa;GACf,EACF,CACF;EACF,CAAC;CACH,CAAC;CAED,GAAG,uDAAuD;EACxD,aAAO,KAAK,CAAC,MAAM,MAAM,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;CAC/F,CAAC;AACH,CAAC"}
|