@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.
Files changed (70) hide show
  1. package/README.md +4 -4
  2. package/dist/Gemini.d.mts +1 -1
  3. package/dist/Gemini.mjs +1 -1
  4. package/dist/Gemini.mjs.map +1 -1
  5. package/dist/GeminiEmbedding.d.mts +1 -1
  6. package/dist/GeminiEmbedding.d.mts.map +1 -1
  7. package/dist/GeminiEmbedding.mjs +4 -3
  8. package/dist/GeminiEmbedding.mjs.map +1 -1
  9. package/dist/GeminiImageGenerator.d.mts +1 -1
  10. package/dist/GeminiImageGenerator.d.mts.map +1 -1
  11. package/dist/GeminiImageGenerator.mjs +4 -3
  12. package/dist/GeminiImageGenerator.mjs.map +1 -1
  13. package/dist/GeminiLiveSession.d.mts +1 -1
  14. package/dist/GeminiSynthesizer.d.mts +1 -1
  15. package/dist/GeminiSynthesizer.mjs +1 -1
  16. package/dist/GeminiSynthesizer.mjs.map +1 -1
  17. package/dist/GeminiSynthesizer.test.mjs +1 -1
  18. package/dist/GoogleDeepResearch.d.mts +1 -1
  19. package/dist/GoogleDeepResearch.mjs +1 -1
  20. package/dist/GoogleDeepResearch.mjs.map +1 -1
  21. package/dist/GoogleDeepResearch.test.mjs +1 -1
  22. package/dist/LyriaGenerator.d.mts +1 -1
  23. package/dist/LyriaGenerator.d.mts.map +1 -1
  24. package/dist/LyriaGenerator.mjs +4 -3
  25. package/dist/LyriaGenerator.mjs.map +1 -1
  26. package/dist/LyriaGenerator.test.mjs +4 -142
  27. package/dist/LyriaGenerator.test.mjs.map +1 -1
  28. package/dist/codec.d.mts +28 -7
  29. package/dist/codec.d.mts.map +1 -1
  30. package/dist/codec.mjs +55 -12
  31. package/dist/codec.mjs.map +1 -1
  32. package/dist/codec.test.d.mts +1 -0
  33. package/dist/codec.test.mjs +61 -0
  34. package/dist/codec.test.mjs.map +1 -0
  35. package/dist/dist-DHer1cql.mjs +1533 -0
  36. package/dist/dist-DHer1cql.mjs.map +1 -0
  37. package/dist/geminiSpeechCodec.d.mts.map +1 -1
  38. package/dist/geminiSpeechCodec.mjs +4 -3
  39. package/dist/geminiSpeechCodec.mjs.map +1 -1
  40. package/dist/geminiSpeechCodec.test.mjs +5 -4
  41. package/dist/geminiSpeechCodec.test.mjs.map +1 -1
  42. package/dist/geminiTools.test.mjs +2 -1
  43. package/dist/geminiTools.test.mjs.map +1 -1
  44. package/dist/{test.DNmyFkvJ-BPz3G1HS.mjs → index.C4tKZ0yW-DjxCdpW_.mjs} +9115 -5993
  45. package/dist/index.C4tKZ0yW-DjxCdpW_.mjs.map +1 -0
  46. package/dist/{realtimeSession-7HSIjWh4.d.mts → realtimeSession-BlBgLDdp.d.mts} +2 -2
  47. package/dist/{realtimeSession-7HSIjWh4.d.mts.map → realtimeSession-BlBgLDdp.d.mts.map} +1 -1
  48. package/dist/realtimeSession.d.mts +1 -1
  49. package/dist/realtimeSession.mjs +8 -7
  50. package/dist/realtimeSession.mjs.map +1 -1
  51. package/dist/realtimeSession.test.mjs +120 -98
  52. package/dist/realtimeSession.test.mjs.map +1 -1
  53. package/package.json +5 -5
  54. package/src/Gemini.ts +1 -1
  55. package/src/GeminiEmbedding.ts +4 -3
  56. package/src/GeminiImageGenerator.ts +4 -3
  57. package/src/GeminiSynthesizer.ts +1 -1
  58. package/src/GoogleDeepResearch.ts +1 -1
  59. package/src/LyriaGenerator.test.ts +1 -1
  60. package/src/LyriaGenerator.ts +4 -14
  61. package/src/codec.test.ts +54 -0
  62. package/src/codec.ts +93 -23
  63. package/src/geminiSpeechCodec.test.ts +4 -3
  64. package/src/geminiSpeechCodec.ts +4 -3
  65. package/src/geminiTools.test.ts +1 -0
  66. package/src/realtimeSession.test.ts +9 -8
  67. package/src/realtimeSession.ts +7 -7
  68. package/dist/magic-string.es-CUAnjKYC.mjs +0 -1014
  69. package/dist/magic-string.es-CUAnjKYC.mjs.map +0 -1
  70. 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"}