@openrouter/ai-sdk-provider 2.3.1 → 2.3.2

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/index.mjs CHANGED
@@ -2802,12 +2802,126 @@ function getToolResultContent(input) {
2802
2802
  return input.output.value;
2803
2803
  case "json":
2804
2804
  case "error-json":
2805
- case "content":
2806
2805
  return JSON.stringify(input.output.value);
2806
+ case "content":
2807
+ return mapToolResultContentParts(input.output.value);
2807
2808
  case "execution-denied":
2808
2809
  return (_a16 = input.output.reason) != null ? _a16 : "Tool execution denied";
2809
2810
  }
2810
2811
  }
2812
+ function mapToolResultContentParts(parts) {
2813
+ return parts.map((part) => {
2814
+ var _a16, _b16, _c;
2815
+ switch (part.type) {
2816
+ case "text":
2817
+ return { type: "text", text: part.text };
2818
+ case "image-data":
2819
+ return {
2820
+ type: "image_url",
2821
+ image_url: {
2822
+ url: buildFileDataUrl({
2823
+ data: part.data,
2824
+ mediaType: part.mediaType,
2825
+ defaultMediaType: "image/jpeg"
2826
+ })
2827
+ }
2828
+ };
2829
+ case "image-url":
2830
+ return {
2831
+ type: "image_url",
2832
+ image_url: { url: part.url }
2833
+ };
2834
+ case "file-data": {
2835
+ const dataUrl = buildFileDataUrl({
2836
+ data: part.data,
2837
+ mediaType: part.mediaType,
2838
+ defaultMediaType: "application/octet-stream"
2839
+ });
2840
+ if ((_a16 = part.mediaType) == null ? void 0 : _a16.startsWith("image/")) {
2841
+ return {
2842
+ type: "image_url",
2843
+ image_url: { url: dataUrl }
2844
+ };
2845
+ }
2846
+ if ((_b16 = part.mediaType) == null ? void 0 : _b16.startsWith("audio/")) {
2847
+ const rawFormat = part.mediaType.replace("audio/", "");
2848
+ const format = MIME_TO_FORMAT[rawFormat];
2849
+ if (format !== void 0) {
2850
+ return {
2851
+ type: "input_audio",
2852
+ input_audio: {
2853
+ data: getBase64FromDataUrl(dataUrl),
2854
+ format
2855
+ }
2856
+ };
2857
+ }
2858
+ }
2859
+ return {
2860
+ type: "file",
2861
+ file: {
2862
+ filename: (_c = part.filename) != null ? _c : "",
2863
+ file_data: dataUrl
2864
+ }
2865
+ };
2866
+ }
2867
+ case "file-url": {
2868
+ if (looksLikeImageUrl(part.url)) {
2869
+ return {
2870
+ type: "image_url",
2871
+ image_url: { url: part.url }
2872
+ };
2873
+ }
2874
+ return {
2875
+ type: "file",
2876
+ file: {
2877
+ filename: filenameFromUrl(part.url),
2878
+ file_data: part.url
2879
+ }
2880
+ };
2881
+ }
2882
+ case "file-id":
2883
+ case "image-file-id":
2884
+ case "custom":
2885
+ return { type: "text", text: JSON.stringify(part) };
2886
+ default: {
2887
+ const _exhaustiveCheck = part;
2888
+ return { type: "text", text: JSON.stringify(_exhaustiveCheck) };
2889
+ }
2890
+ }
2891
+ });
2892
+ }
2893
+ var IMAGE_EXTENSIONS = /* @__PURE__ */ new Set([
2894
+ "jpg",
2895
+ "jpeg",
2896
+ "png",
2897
+ "gif",
2898
+ "webp",
2899
+ "svg",
2900
+ "bmp",
2901
+ "ico",
2902
+ "tif",
2903
+ "tiff",
2904
+ "avif"
2905
+ ]);
2906
+ function looksLikeImageUrl(url) {
2907
+ var _a16;
2908
+ try {
2909
+ const pathname = new URL(url).pathname;
2910
+ const ext = (_a16 = pathname.split(".").pop()) == null ? void 0 : _a16.toLowerCase();
2911
+ return ext !== void 0 && IMAGE_EXTENSIONS.has(ext);
2912
+ } catch (e) {
2913
+ return false;
2914
+ }
2915
+ }
2916
+ function filenameFromUrl(url) {
2917
+ try {
2918
+ const pathname = new URL(url).pathname;
2919
+ const last = pathname.split("/").pop();
2920
+ return (last == null ? void 0 : last.includes(".")) ? last : "";
2921
+ } catch (e) {
2922
+ return "";
2923
+ }
2924
+ }
2811
2925
  function findFirstReasoningDetails(content) {
2812
2926
  var _a16, _b16, _c;
2813
2927
  for (const part of content) {
@@ -4577,7 +4691,7 @@ function withUserAgentSuffix2(headers, ...userAgentSuffixParts) {
4577
4691
  }
4578
4692
 
4579
4693
  // src/version.ts
4580
- var VERSION2 = false ? "0.0.0-test" : "2.3.1";
4694
+ var VERSION2 = false ? "0.0.0-test" : "2.3.2";
4581
4695
 
4582
4696
  // src/provider.ts
4583
4697
  function createOpenRouter(options = {}) {