refactor: extract ColorManipulation component and pass icon/summary to AppPage
- Rename ColorPage → ColorManipulation (no AppPage wrapper inside) - Move AppPage + title/description/icon to color/page.tsx, consistent with other tools - AppPage now accepts icon prop directly; removes internal usePathname lookup and 'use client' - All tool pages pass tool.summary as description and tool.icon as icon Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -25,7 +25,7 @@ export const tools: Tool[] = [
|
||||
title: 'Color Manipulation',
|
||||
navTitle: 'Color Manipulation',
|
||||
href: '/color',
|
||||
description: 'Interactive color manipulation and analysis tool',
|
||||
description: 'Interactive color manipulation and analysis tool.',
|
||||
summary:
|
||||
'Modern color manipulation toolkit with palette generation, accessibility testing, and format conversion. Supports hex, RGB, HSL, Lab, and more.',
|
||||
icon: ColorIcon,
|
||||
@@ -36,7 +36,7 @@ export const tools: Tool[] = [
|
||||
title: 'Units Converter',
|
||||
navTitle: 'Units Converter',
|
||||
href: '/units',
|
||||
description: 'Smart unit converter with 187 units across 23 categories',
|
||||
description: 'Smart unit converter with 187 units across 23 categories.',
|
||||
summary:
|
||||
'Smart unit converter with 187 units across 23 categories. Real-time bidirectional conversion with fuzzy search.',
|
||||
icon: UnitsIcon,
|
||||
@@ -47,7 +47,7 @@ export const tools: Tool[] = [
|
||||
title: 'ASCII Art Generator',
|
||||
navTitle: 'ASCII Art',
|
||||
href: '/ascii',
|
||||
description: 'ASCII Art Text Generator with 373 Fonts',
|
||||
description: 'ASCII Art Text Generator with 373 Fonts.',
|
||||
summary:
|
||||
'ASCII art text generator with 373 fonts. Create stunning text banners, terminal art, and retro designs with live preview and multiple export formats.',
|
||||
icon: ASCIIIcon,
|
||||
@@ -58,7 +58,7 @@ export const tools: Tool[] = [
|
||||
title: 'Media Converter',
|
||||
navTitle: 'Media Converter',
|
||||
href: '/media',
|
||||
description: 'Professional browser-based media conversion for video, audio, and images',
|
||||
description: 'Browser-based media conversion for video, audio, and images.',
|
||||
summary:
|
||||
'Modern browser-based file converter powered by WebAssembly. Convert videos, images, and audio locally without server uploads. Privacy-first with no file size limits.',
|
||||
icon: MediaIcon,
|
||||
@@ -69,7 +69,7 @@ export const tools: Tool[] = [
|
||||
title: 'Favicon Generator',
|
||||
navTitle: 'Favicon Generator',
|
||||
href: '/favicon',
|
||||
description: 'Create a complete set of icons for your website including PWA manifest and HTML code.',
|
||||
description: 'Create a complete set of icons for your website.',
|
||||
summary:
|
||||
'Generate a complete set of favicons for your website. Includes PWA manifest and HTML embed code. All processing happens locally in your browser.',
|
||||
icon: FaviconIcon,
|
||||
@@ -80,7 +80,7 @@ export const tools: Tool[] = [
|
||||
title: 'QR Code Generator',
|
||||
navTitle: 'QR Code Generator',
|
||||
href: '/qrcode',
|
||||
description: 'Generate QR codes with custom colors, error correction, and multi-format export.',
|
||||
description: 'Generate QR codes with custom colors and error correction.',
|
||||
summary:
|
||||
'Generate QR codes with live preview, customizable colors, error correction levels, and export as PNG or SVG. All processing happens locally in your browser.',
|
||||
icon: QRCodeIcon,
|
||||
|
||||
Reference in New Issue
Block a user