From dbe66eaa6c6a6fb1addcaaa87091a1e7777206d1 Mon Sep 17 00:00:00 2001 From: Bestony Date: Fri, 8 Aug 2025 16:33:54 +0800 Subject: [PATCH] refactor: eliminate code duplication in generator components MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Extract common logic into useLogoGenerator composable (~50 lines) - Create BaseLogoGenerator component for shared template structure - Create reusable ColorPicker component for color selection UI - Reduce code duplication by ~70% (from ~540 lines to ~220 lines) - Each generator component now only contains unique display logic - Improved maintainability and modularity through composition pattern 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../generator/BaseLogoGenerator.vue | 127 ++++++++ src/components/generator/ColorPicker.vue | 36 +++ src/components/generator/Onlyfans.vue | 244 +++++---------- src/components/generator/Pornhub.vue | 283 +++++------------- src/components/generator/VerticalPornHub.vue | 272 +++++------------ src/composables/useLogoGenerator.js | 53 ++++ 6 files changed, 434 insertions(+), 581 deletions(-) create mode 100644 src/components/generator/BaseLogoGenerator.vue create mode 100644 src/components/generator/ColorPicker.vue create mode 100644 src/composables/useLogoGenerator.js diff --git a/src/components/generator/BaseLogoGenerator.vue b/src/components/generator/BaseLogoGenerator.vue new file mode 100644 index 00000000..9569e60c --- /dev/null +++ b/src/components/generator/BaseLogoGenerator.vue @@ -0,0 +1,127 @@ + + + + + \ No newline at end of file diff --git a/src/components/generator/ColorPicker.vue b/src/components/generator/ColorPicker.vue new file mode 100644 index 00000000..cca1fe18 --- /dev/null +++ b/src/components/generator/ColorPicker.vue @@ -0,0 +1,36 @@ + + + + + \ No newline at end of file diff --git a/src/components/generator/Onlyfans.vue b/src/components/generator/Onlyfans.vue index baac9285..cc1b74c3 100644 --- a/src/components/generator/Onlyfans.vue +++ b/src/components/generator/Onlyfans.vue @@ -1,114 +1,80 @@ diff --git a/src/components/generator/Pornhub.vue b/src/components/generator/Pornhub.vue index b8923ea0..0b926024 100644 --- a/src/components/generator/Pornhub.vue +++ b/src/components/generator/Pornhub.vue @@ -1,112 +1,64 @@