@mastra/core
Version:
35 lines (34 loc) • 1.23 kB
JavaScript
import { n as isUrlString } from "./content-DX_6irdy.js";
import { convertBase64ToUint8Array, convertUint8ArrayToBase64 } from "@ai-sdk/provider-utils-v5";
//#region src/stream/aisdk/v5/file.ts
var DefaultGeneratedFile = class {
base64Data;
uint8ArrayData;
mediaType;
constructor({ data, mediaType }) {
const isUint8Array = data instanceof Uint8Array;
this.base64Data = isUint8Array ? void 0 : data;
this.uint8ArrayData = isUint8Array ? data : void 0;
this.mediaType = mediaType;
}
get base64() {
if (this.base64Data == null) this.base64Data = convertUint8ArrayToBase64(this.uint8ArrayData);
return this.base64Data;
}
get uint8Array() {
if (this.uint8ArrayData == null) {
if (isUrlString(this.base64Data)) throw new Error(`Cannot convert URL-backed generated file to Uint8Array. Download the file from ${this.base64Data} instead.`);
this.uint8ArrayData = convertBase64ToUint8Array(this.base64Data);
}
return this.uint8ArrayData;
}
};
var DefaultGeneratedFileWithType = class extends DefaultGeneratedFile {
type = "file";
constructor(options) {
super(options);
}
};
//#endregion
export { DefaultGeneratedFileWithType as n, DefaultGeneratedFile as t };
//# sourceMappingURL=file-C2ghzAMN.js.map