Feat/3d dropdown (#8765)

## Summary
Add mesh_upload and upload_subfolder to combo input schema so
WidgetSelect detects mesh uploads generically instead of hardcoding node
type checks. Inject these flags in load3dLazy.ts so they are available
before THREE.js loads.

Also unify SUPPORTED_EXTENSIONS_ACCEPT across load3d and dropdown, pass
uploadSubfolder prop through to WidgetSelectDropdown for correct upload
path, and update error message to list all supported extensions.

replacement for https://github.com/Comfy-Org/ComfyUI_frontend/pull/7975

(We should include thumbnail but not yet, will do it later)

## Screenshots (if applicable)


https://github.com/user-attachments/assets/2cb4b1da-af4f-439b-9786-3ac780c2480d

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8765-Feat-3d-dropdown-3036d73d365081d8a10ee19d3ed7d295)
by [Unito](https://www.unito.io)

---------

Co-authored-by: Kelly Yang <124ykl@gmail.com>
This commit is contained in:
Terry Jia
2026-02-10 15:36:57 -05:00
committed by GitHub
parent 581452d312
commit 9ecbb3af27
11 changed files with 83 additions and 15 deletions

View File

@@ -1,7 +1,13 @@
import { inject } from 'vue'
import type { InjectionKey } from 'vue'
export type AssetKind = 'image' | 'video' | 'audio' | 'model' | 'unknown'
export type AssetKind =
| 'image'
| 'video'
| 'audio'
| 'model'
| 'mesh'
| 'unknown'
export const OnCloseKey: InjectionKey<() => void> = Symbol()