Skip to content

AIDK API Reference / aidk/content / bufferToBase64Source

Function: bufferToBase64Source() ​

ts
function bufferToBase64Source(buffer: 
  | Uint8Array<ArrayBufferLike>
  | {
  buffer: ArrayBufferLike;
  byteLength: number;
  byteOffset: number;
}, mimeType?: string): Base64Source;

Defined in: packages/shared/src/blocks.ts:542

Convert a Buffer or Uint8Array to a serializable Base64Source.

Browser-compatible: works in both Node.js and browser environments. Uses globalThis to avoid requiring @types/node in browser environments.

Parameters ​

ParameterType
buffer| Uint8Array<ArrayBufferLike> | { buffer: ArrayBufferLike; byteLength: number; byteOffset: number; }
mimeType?string

Returns ​

Base64Source

Example ​

typescript
// Node.js
const imageBuffer = await fs.readFile('image.png');
const imageBlock: ImageBlock = {
  type: 'image',
  source: bufferToBase64Source(imageBuffer, 'image/png'),
};

// Browser
const response = await fetch('image.png');
const arrayBuffer = await response.arrayBuffer();
const uint8Array = new Uint8Array(arrayBuffer);
const imageBlock: ImageBlock = {
  type: 'image',
  source: bufferToBase64Source(uint8Array, 'image/png'),
};

Released under the MIT License.