mirror of
https://github.com/siteboon/claudecodeui.git
synced 2025-12-08 22:59:39 +00:00
49 lines
2.0 KiB
JavaScript
Executable File
49 lines
2.0 KiB
JavaScript
Executable File
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
// Icon sizes needed
|
|
const sizes = [72, 96, 128, 144, 152, 192, 384, 512];
|
|
|
|
// SVG template function
|
|
function createIconSVG(size) {
|
|
const cornerRadius = Math.round(size * 0.25); // 25% corner radius
|
|
const strokeWidth = Math.max(2, Math.round(size * 0.06)); // Scale stroke width
|
|
|
|
// MessageSquare path scaled to size
|
|
const padding = Math.round(size * 0.25);
|
|
const iconSize = size - (padding * 2);
|
|
const startX = padding;
|
|
const startY = Math.round(padding * 0.7);
|
|
const endX = startX + iconSize;
|
|
const endY = startY + Math.round(iconSize * 0.6);
|
|
const tailX = startX;
|
|
const tailY = endY + Math.round(iconSize * 0.3);
|
|
|
|
return `<svg width="${size}" height="${size}" viewBox="0 0 ${size} ${size}" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<!-- Background with rounded corners -->
|
|
<rect width="${size}" height="${size}" rx="${cornerRadius}" fill="hsl(262.1 83.3% 57.8%)"/>
|
|
|
|
<!-- MessageSquare icon -->
|
|
<path d="M${startX} ${startY}C${startX} ${startY - 10} ${startX + 10} ${startY - 20} ${startX + 20} ${startY - 20}H${endX - 20}C${endX - 10} ${startY - 20} ${endX} ${startY - 10} ${endX} ${startY}V${endY - 20}C${endX} ${endY - 10} ${endX - 10} ${endY} ${endX - 20} ${endY}H${startX + Math.round(iconSize * 0.4)}L${tailX} ${tailY}V${startY}Z"
|
|
stroke="white"
|
|
stroke-width="${strokeWidth}"
|
|
stroke-linecap="round"
|
|
stroke-linejoin="round"
|
|
fill="none"/>
|
|
</svg>`;
|
|
}
|
|
|
|
// Generate SVG files for each size
|
|
sizes.forEach(size => {
|
|
const svgContent = createIconSVG(size);
|
|
const filename = `icon-${size}x${size}.svg`;
|
|
const filepath = path.join(__dirname, 'icons', filename);
|
|
|
|
fs.writeFileSync(filepath, svgContent);
|
|
console.log(`Created ${filename}`);
|
|
});
|
|
|
|
console.log('\nSVG icons created! To convert to PNG, you can use:');
|
|
console.log('1. Online converter like cloudconvert.com');
|
|
console.log('2. If you have ImageMagick: convert icon.svg icon.png');
|
|
console.log('3. If you have Inkscape: inkscape --export-type=png icon.svg'); |