UNPKG

adk-typescript

Version:

TypeScript port of Google's Agent Development Kit (ADK)

78 lines (77 loc) 1.91 kB
"use strict"; /** * Utils module - Provides utility functions and helpers */ Object.defineProperty(exports, "__esModule", { value: true }); exports.Logger = void 0; exports.formatDate = formatDate; exports.sleep = sleep; exports.deepClone = deepClone; exports.generateId = generateId; /** * Format a date to ISO string * @param date Date to format * @returns Formatted date string */ function formatDate(date = new Date()) { return date.toISOString(); } /** * Sleep for a specified number of milliseconds * @param ms Milliseconds to sleep * @returns Promise that resolves after the specified time */ function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); } /** * Deep clone an object * @param obj Object to clone * @returns Cloned object */ function deepClone(obj) { return JSON.parse(JSON.stringify(obj)); } /** * Generate a random ID * @param length Length of the ID (default: 10) * @returns Random ID string */ function generateId(length = 10) { const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; let result = ''; for (let i = 0; i < length; i++) { result += characters.charAt(Math.floor(Math.random() * characters.length)); } return result; } /** * Logger utility */ class Logger { constructor(prefix = 'ADK') { this.prefix = prefix; } /** * Log an informational message * @param message Message to log */ info(message) { console.log(`[${this.prefix}] [INFO] ${message}`); } /** * Log a warning message * @param message Message to log */ warn(message) { console.warn(`[${this.prefix}] [WARN] ${message}`); } /** * Log an error message * @param message Message to log */ error(message) { console.error(`[${this.prefix}] [ERROR] ${message}`); } } exports.Logger = Logger;