woolball-client
Version:
Client-side library for Woolball enabling secure browser resource sharing for distributed AI task processing
42 lines (41 loc) • 2.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.htmlToImage = exports.charToImage = exports.imageTextToText = exports.textGeneration = exports.translation = exports.tts = exports.asr = exports.taskProcessors = void 0;
const asr_1 = require("./ai/asr");
Object.defineProperty(exports, "asr", { enumerable: true, get: function () { return asr_1.asr; } });
const tts_1 = require("./ai/tts");
Object.defineProperty(exports, "tts", { enumerable: true, get: function () { return tts_1.tts; } });
const translation_1 = require("./ai/translation");
Object.defineProperty(exports, "translation", { enumerable: true, get: function () { return translation_1.translation; } });
const text_generation_1 = require("./ai/text-generation");
Object.defineProperty(exports, "textGeneration", { enumerable: true, get: function () { return text_generation_1.textGeneration; } });
// import { imageGeneration } from './ai/browser/image-generation';
const image_text_to_text_1 = require("./ai/image-text-to-text");
Object.defineProperty(exports, "imageTextToText", { enumerable: true, get: function () { return image_text_to_text_1.imageTextToText; } });
const createDomTaskLoader = (taskPath) => {
return async (data) => {
try {
if (typeof window === 'undefined' || typeof document === 'undefined') {
throw new Error('DOM not available in this environment');
}
const module = await import(taskPath);
const taskFunction = module.default || Object.values(module)[0];
return taskFunction(data);
}
catch (error) {
console.warn(`Failed to load DOM-dependent task: ${error instanceof Error ? error.message : String(error)}`);
return { error: 'This task requires DOM access which is not available in this environment' };
}
};
};
exports.taskProcessors = {
'automatic-speech-recognition': asr_1.asr,
'text-to-speech': tts_1.tts,
'translation': translation_1.translation,
'text-generation': text_generation_1.textGeneration,
'image-text-to-text': image_text_to_text_1.imageTextToText,
'char-to-image': createDomTaskLoader('./browser/canvas/char-to-image'),
'html-to-image': createDomTaskLoader('./browser/canvas/html-to-image'),
};
exports.charToImage = createDomTaskLoader('./browser/canvas/char-to-image');
exports.htmlToImage = createDomTaskLoader('./browser/canvas/html-to-image');