@ai-sdk/openai 2.0.61 → 2.0.63

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.
@@ -220,7 +220,7 @@ function getResponseMetadata({
220
220
  return {
221
221
  id: id != null ? id : void 0,
222
222
  modelId: model != null ? model : void 0,
223
- timestamp: created != null ? new Date(created * 1e3) : void 0
223
+ timestamp: created ? new Date(created * 1e3) : void 0
224
224
  };
225
225
  }
226
226
 
@@ -853,7 +853,7 @@ var OpenAIChatLanguageModel = class {
853
853
  outputTokens: void 0,
854
854
  totalTokens: void 0
855
855
  };
856
- let isFirstChunk = true;
856
+ let metadataExtracted = false;
857
857
  let isActiveText = false;
858
858
  const providerMetadata = { openai: {} };
859
859
  return {
@@ -878,12 +878,15 @@ var OpenAIChatLanguageModel = class {
878
878
  controller.enqueue({ type: "error", error: value.error });
879
879
  return;
880
880
  }
881
- if (isFirstChunk) {
882
- isFirstChunk = false;
883
- controller.enqueue({
884
- type: "response-metadata",
885
- ...getResponseMetadata(value)
886
- });
881
+ if (!metadataExtracted) {
882
+ const metadata = getResponseMetadata(value);
883
+ if (Object.values(metadata).some(Boolean)) {
884
+ metadataExtracted = true;
885
+ controller.enqueue({
886
+ type: "response-metadata",
887
+ ...getResponseMetadata(value)
888
+ });
889
+ }
887
890
  }
888
891
  if (value.usage != null) {
889
892
  usage.inputTokens = (_a = value.usage.prompt_tokens) != null ? _a : void 0;