From c6f2ae3130480de01cc3db32263934c401892fef Mon Sep 17 00:00:00 2001 From: Alexander Brown Date: Mon, 12 Jan 2026 17:25:01 -0800 Subject: [PATCH] fix(upload-model): UI/UX improvements for Upload Model Dialog (#7969) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Addresses UI/UX feedback on the Upload Model Dialog (BYOM feature). ## Changes 1. **Standardize link styling** - Use consistent `text-muted-foreground underline` for all links in both URL input variants 2. **Increase warning/example text font size** - Changed from 12px (`text-xs`) to 14px (`text-sm`) for better readability 3. **Fix padding inconsistency** - Aligned padding between model name box and SingleSelect dropdown; moved "Not sure?" help text inline with the label 4. **Add "Upload Another" button** - Allows users to upload multiple models without closing and reopening the dialog ## Testing - Verified link styling consistency across both Civitai and generic URL input components - Confirmed padding alignment in confirmation step - Tested Upload Another button resets wizard to step 1 ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7969-fix-upload-model-UI-UX-improvements-for-Upload-Model-Dialog-2e66d73d3650815c8184cedb3d02672d) by [Unito](https://www.unito.io) --- src/locales/en/main.json | 1 + .../components/UploadModelConfirmation.vue | 18 +++++----- .../assets/components/UploadModelDialog.vue | 4 ++- .../assets/components/UploadModelFooter.vue | 33 +++++++++++++------ .../assets/components/UploadModelUrlInput.vue | 6 ++-- .../components/UploadModelUrlInputCivitai.vue | 8 ++--- .../composables/useUploadModelWizard.ts | 17 +++++++++- 7 files changed, 60 insertions(+), 27 deletions(-) diff --git a/src/locales/en/main.json b/src/locales/en/main.json index 6ef5343ac..81e73b986 100644 --- a/src/locales/en/main.json +++ b/src/locales/en/main.json @@ -2311,6 +2311,7 @@ "filterBy": "Filter by", "findInLibrary": "Find it in the {type} section of the models library.", "finish": "Finish", + "importAnother": "Import Another", "genericLinkPlaceholder": "Paste link here", "jobId": "Job ID", "loadingModels": "Loading {type}...", diff --git a/src/platform/assets/components/UploadModelConfirmation.vue b/src/platform/assets/components/UploadModelConfirmation.vue index 881b47d32..53beb03a1 100644 --- a/src/platform/assets/components/UploadModelConfirmation.vue +++ b/src/platform/assets/components/UploadModelConfirmation.vue @@ -5,7 +5,7 @@ {{ $t('assetBrowser.modelAssociatedWithLink') }}

- +
+ + + + {{ $t('assetBrowser.notSureLeaveAsIs') }} + +
-
- - {{ $t('assetBrowser.notSureLeaveAsIs') }} -
diff --git a/src/platform/assets/components/UploadModelDialog.vue b/src/platform/assets/components/UploadModelDialog.vue index 5013e418d..f7ad5de71 100644 --- a/src/platform/assets/components/UploadModelDialog.vue +++ b/src/platform/assets/components/UploadModelDialog.vue @@ -48,6 +48,7 @@ @fetch-metadata="handleFetchMetadata" @upload="handleUploadModel" @close="handleClose" + @import-another="resetWizard" /> @@ -85,7 +86,8 @@ const { canUploadModel, fetchMetadata, uploadModel, - goToPreviousStep + goToPreviousStep, + resetWizard } = useUploadModelWizard(modelTypes) async function handleFetchMetadata() { diff --git a/src/platform/assets/components/UploadModelFooter.vue b/src/platform/assets/components/UploadModelFooter.vue index 04c27c394..95ca59e45 100644 --- a/src/platform/assets/components/UploadModelFooter.vue +++ b/src/platform/assets/components/UploadModelFooter.vue @@ -80,21 +80,33 @@ {{ $t('assetBrowser.upload') }} - + + + () diff --git a/src/platform/assets/components/UploadModelUrlInput.vue b/src/platform/assets/components/UploadModelUrlInput.vue index 8b814c0e5..d2c743d7a 100644 --- a/src/platform/assets/components/UploadModelUrlInput.vue +++ b/src/platform/assets/components/UploadModelUrlInput.vue @@ -20,7 +20,7 @@ :href="civitaiUrl" target="_blank" rel="noopener noreferrer" - class="text-muted underline" + class="text-muted-foreground underline" > {{ $t('assetBrowser.providerCivitai') }}, @@ -35,7 +35,7 @@ :href="huggingFaceUrl" target="_blank" rel="noopener noreferrer" - class="text-muted underline" + class="text-muted-foreground underline" > {{ $t('assetBrowser.providerHuggingFace') }} @@ -58,7 +58,7 @@ class="icon-[lucide--circle-check-big] absolute top-1/2 right-3 size-5 -translate-y-1/2 text-green-500" /> -

+

{{ error }}

diff --git a/src/platform/assets/components/UploadModelUrlInputCivitai.vue b/src/platform/assets/components/UploadModelUrlInputCivitai.vue index 39e244c86..82c1dcf31 100644 --- a/src/platform/assets/components/UploadModelUrlInputCivitai.vue +++ b/src/platform/assets/components/UploadModelUrlInputCivitai.vue @@ -11,7 +11,7 @@ {{ $t('assetBrowser.uploadModelDescription2Link') }} @@ -51,14 +51,14 @@ class="icon-[lucide--circle-check-big] absolute top-1/2 right-3 size-5 -translate-y-1/2 text-green-500" /> -

+

{{ error }}