@absolutejs/ai 0.0.26 → 0.0.27

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/dist/ai/index.js CHANGED
@@ -571,10 +571,15 @@ var flushPendingToolCalls = function* (pendingToolCalls) {
571
571
  }
572
572
  pendingToolCalls.clear();
573
573
  };
574
- var extractUsage = (parsedUsage) => ({
575
- inputTokens: parsedUsage.prompt_tokens ?? 0,
576
- outputTokens: parsedUsage.completion_tokens ?? 0
577
- });
574
+ var extractUsage = (parsedUsage) => {
575
+ const prompt = parsedUsage.prompt_tokens ?? 0;
576
+ const cached = parsedUsage.cached_tokens ?? 0;
577
+ return {
578
+ cacheReadInputTokens: cached,
579
+ inputTokens: Math.max(0, prompt - cached),
580
+ outputTokens: parsedUsage.completion_tokens ?? 0
581
+ };
582
+ };
578
583
  var resolveToolCallIndex = (toolCall) => {
579
584
  const raw = typeof toolCall.index === "number" ? toolCall.index : NOT_FOUND;
580
585
  return raw < 0 ? undefined : raw;
@@ -644,7 +649,9 @@ var narrowUsageRecord = (parsed) => {
644
649
  const { usage } = parsed;
645
650
  const promptTokens = typeof usage.prompt_tokens === "number" ? usage.prompt_tokens : 0;
646
651
  const completionTokens = typeof usage.completion_tokens === "number" ? usage.completion_tokens : 0;
652
+ const cachedTokens = isRecord(usage.prompt_tokens_details) && typeof usage.prompt_tokens_details.cached_tokens === "number" ? usage.prompt_tokens_details.cached_tokens : 0;
647
653
  return extractUsage({
654
+ cached_tokens: cachedTokens,
648
655
  completion_tokens: completionTokens,
649
656
  prompt_tokens: promptTokens
650
657
  });
@@ -978,8 +985,11 @@ var extractUsage2 = (response) => {
978
985
  return;
979
986
  }
980
987
  const { usage } = response;
988
+ const input = typeof usage.input_tokens === "number" ? usage.input_tokens : 0;
989
+ const cached = isRecord2(usage.input_tokens_details) && typeof usage.input_tokens_details.cached_tokens === "number" ? usage.input_tokens_details.cached_tokens : 0;
981
990
  return {
982
- inputTokens: typeof usage.input_tokens === "number" ? usage.input_tokens : 0,
991
+ cacheReadInputTokens: cached,
992
+ inputTokens: Math.max(0, input - cached),
983
993
  outputTokens: typeof usage.output_tokens === "number" ? usage.output_tokens : 0
984
994
  };
985
995
  };
@@ -4400,5 +4410,5 @@ export {
4400
4410
  PROVIDER_STATUS_PAGES
4401
4411
  };
4402
4412
 
4403
- //# debugId=90792F1972AEBAA464756E2164756E21
4413
+ //# debugId=4EA405589A58240564756E2164756E21
4404
4414
  //# sourceMappingURL=index.js.map