Spaces:
Running
Running
File size: 1,826 Bytes
5f3e9f5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | // HTML to Image Tool — Uses shared GenerationManager
// Initialize the html-to-image manager
const htmlManager = new GenerationManager({
mode: 'html',
inputId: 'htmlInput',
loadingId: 'htmlLoading',
errorId: 'htmlError',
resultId: 'htmlResult',
buttonContainerId: 'htmlButtonContainer',
generateEndpoint: '/generate-html',
inputField: 'html',
useSSE: false, // HTML mode uses direct fetch (no AI step)
hasPreview: false
});
// Generate from HTML — delegates to shared manager
function generateFromHtml() {
// Validate settings before generating (#18)
if (typeof SettingsManager !== 'undefined') {
SettingsManager.validateAll('html');
SettingsManager.saveToolSettings('html');
}
htmlManager.generate();
}
// Regenerate from HTML form — delegates to shared manager
function regenerateFromHtmlForm() {
htmlManager.regenerate();
}
// Toggle advanced settings for HTML mode
function toggleAdvancedHtml() {
const settings = document.getElementById('advancedSettingsHtml');
const icon = document.getElementById('advancedIconHtml');
const isHidden = settings.classList.contains('hidden');
settings.classList.toggle('hidden');
if (isHidden) {
icon.style.transform = 'rotate(180deg)';
} else {
icon.style.transform = 'rotate(0)';
}
}
// Reset advanced settings for HTML mode
function resetAdvancedHtml() {
if (confirm('Reset advanced settings to defaults?')) {
document.getElementById('htmlZoom').value = '2.1';
document.getElementById('htmlOverlap').value = '20';
document.getElementById('htmlViewportWidth').value = '1920';
document.getElementById('htmlViewportHeight').value = '1080';
document.getElementById('htmlMaxScreenshots').value = '50';
}
}
|