@ai-sdk/google 3.0.70 → 3.0.71

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.
@@ -1288,7 +1288,7 @@ var GoogleGenerativeAILanguageModel = class {
1288
1288
  };
1289
1289
  }
1290
1290
  async doGenerate(options) {
1291
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
1291
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
1292
1292
  const { args, warnings, providerOptionsName } = await this.getArgs(options);
1293
1293
  const mergedHeaders = combineHeaders(
1294
1294
  await resolve(this.config.headers),
@@ -1356,12 +1356,12 @@ var GoogleGenerativeAILanguageModel = class {
1356
1356
  providerMetadata: thoughtSignatureMetadata
1357
1357
  });
1358
1358
  }
1359
- } else if ("functionCall" in part && part.functionCall.name != null && part.functionCall.args != null) {
1359
+ } else if ("functionCall" in part && part.functionCall.name != null) {
1360
1360
  content.push({
1361
1361
  type: "tool-call",
1362
1362
  toolCallId: this.config.generateId(),
1363
1363
  toolName: part.functionCall.name,
1364
- input: JSON.stringify(part.functionCall.args),
1364
+ input: JSON.stringify((_e = part.functionCall.args) != null ? _e : {}),
1365
1365
  providerMetadata: part.thoughtSignature ? {
1366
1366
  [providerOptionsName]: {
1367
1367
  thoughtSignature: part.thoughtSignature
@@ -1383,13 +1383,13 @@ var GoogleGenerativeAILanguageModel = class {
1383
1383
  } : void 0
1384
1384
  });
1385
1385
  } else if ("toolCall" in part && part.toolCall) {
1386
- const toolCallId = (_e = part.toolCall.id) != null ? _e : this.config.generateId();
1386
+ const toolCallId = (_f = part.toolCall.id) != null ? _f : this.config.generateId();
1387
1387
  lastServerToolCallId = toolCallId;
1388
1388
  content.push({
1389
1389
  type: "tool-call",
1390
1390
  toolCallId,
1391
1391
  toolName: `server:${part.toolCall.toolType}`,
1392
- input: JSON.stringify((_f = part.toolCall.args) != null ? _f : {}),
1392
+ input: JSON.stringify((_g = part.toolCall.args) != null ? _g : {}),
1393
1393
  providerExecuted: true,
1394
1394
  dynamic: true,
1395
1395
  providerMetadata: part.thoughtSignature ? {
@@ -1406,12 +1406,12 @@ var GoogleGenerativeAILanguageModel = class {
1406
1406
  }
1407
1407
  });
1408
1408
  } else if ("toolResponse" in part && part.toolResponse) {
1409
- const responseToolCallId = (_g = lastServerToolCallId != null ? lastServerToolCallId : part.toolResponse.id) != null ? _g : this.config.generateId();
1409
+ const responseToolCallId = (_h = lastServerToolCallId != null ? lastServerToolCallId : part.toolResponse.id) != null ? _h : this.config.generateId();
1410
1410
  content.push({
1411
1411
  type: "tool-result",
1412
1412
  toolCallId: responseToolCallId,
1413
1413
  toolName: `server:${part.toolResponse.toolType}`,
1414
- result: (_h = part.toolResponse.response) != null ? _h : {},
1414
+ result: (_i = part.toolResponse.response) != null ? _i : {},
1415
1415
  providerMetadata: part.thoughtSignature ? {
1416
1416
  [providerOptionsName]: {
1417
1417
  thoughtSignature: part.thoughtSignature,
@@ -1428,10 +1428,10 @@ var GoogleGenerativeAILanguageModel = class {
1428
1428
  lastServerToolCallId = void 0;
1429
1429
  }
1430
1430
  }
1431
- const sources = (_i = extractSources({
1431
+ const sources = (_j = extractSources({
1432
1432
  groundingMetadata: candidate.groundingMetadata,
1433
1433
  generateId: this.config.generateId
1434
- })) != null ? _i : [];
1434
+ })) != null ? _j : [];
1435
1435
  for (const source of sources) {
1436
1436
  content.push(source);
1437
1437
  }
@@ -1445,19 +1445,19 @@ var GoogleGenerativeAILanguageModel = class {
1445
1445
  (part) => part.type === "tool-call" && !part.providerExecuted
1446
1446
  )
1447
1447
  }),
1448
- raw: (_j = candidate.finishReason) != null ? _j : void 0
1448
+ raw: (_k = candidate.finishReason) != null ? _k : void 0
1449
1449
  },
1450
1450
  usage: convertGoogleGenerativeAIUsage(usageMetadata),
1451
1451
  warnings,
1452
1452
  providerMetadata: {
1453
1453
  [providerOptionsName]: {
1454
- promptFeedback: (_k = response.promptFeedback) != null ? _k : null,
1455
- groundingMetadata: (_l = candidate.groundingMetadata) != null ? _l : null,
1456
- urlContextMetadata: (_m = candidate.urlContextMetadata) != null ? _m : null,
1457
- safetyRatings: (_n = candidate.safetyRatings) != null ? _n : null,
1454
+ promptFeedback: (_l = response.promptFeedback) != null ? _l : null,
1455
+ groundingMetadata: (_m = candidate.groundingMetadata) != null ? _m : null,
1456
+ urlContextMetadata: (_n = candidate.urlContextMetadata) != null ? _n : null,
1457
+ safetyRatings: (_o = candidate.safetyRatings) != null ? _o : null,
1458
1458
  usageMetadata: usageMetadata != null ? usageMetadata : null,
1459
- finishMessage: (_o = candidate.finishMessage) != null ? _o : null,
1460
- serviceTier: (_p = response.serviceTier) != null ? _p : null
1459
+ finishMessage: (_p = candidate.finishMessage) != null ? _p : null,
1460
+ serviceTier: (_q = response.serviceTier) != null ? _q : null
1461
1461
  }
1462
1462
  },
1463
1463
  request: { body: args },
@@ -1716,6 +1716,7 @@ var GoogleGenerativeAILanguageModel = class {
1716
1716
  const isStreamingChunk = part.functionCall.partialArgs != null || part.functionCall.name != null && part.functionCall.willContinue === true;
1717
1717
  const isTerminalChunk = part.functionCall.name == null && part.functionCall.args == null && part.functionCall.partialArgs == null && part.functionCall.willContinue == null;
1718
1718
  const isCompleteCall = part.functionCall.name != null && part.functionCall.args != null && part.functionCall.partialArgs == null;
1719
+ const isNoArgsCompleteCall = part.functionCall.name != null && part.functionCall.args == null && part.functionCall.partialArgs == null && part.functionCall.willContinue !== true;
1719
1720
  if (isStreamingChunk) {
1720
1721
  if (part.functionCall.name != null && part.functionCall.willContinue === true) {
1721
1722
  const toolCallId = generateId2();
@@ -1812,6 +1813,28 @@ var GoogleGenerativeAILanguageModel = class {
1812
1813
  providerMetadata: providerMeta
1813
1814
  });
1814
1815
  hasToolCalls = true;
1816
+ } else if (isNoArgsCompleteCall) {
1817
+ const toolCallId = generateId2();
1818
+ const toolName = part.functionCall.name;
1819
+ controller.enqueue({
1820
+ type: "tool-input-start",
1821
+ id: toolCallId,
1822
+ toolName,
1823
+ providerMetadata: providerMeta
1824
+ });
1825
+ controller.enqueue({
1826
+ type: "tool-input-end",
1827
+ id: toolCallId,
1828
+ providerMetadata: providerMeta
1829
+ });
1830
+ controller.enqueue({
1831
+ type: "tool-call",
1832
+ toolCallId,
1833
+ toolName,
1834
+ input: "{}",
1835
+ providerMetadata: providerMeta
1836
+ });
1837
+ hasToolCalls = true;
1815
1838
  }
1816
1839
  }
1817
1840
  }