191 windows path is wrong when dragging to create lora node from manager (#195)

* fix: match system path style

* fix: only match dragToAddModelNode
This commit is contained in:
Hayden
2025-08-11 09:09:51 +08:00
committed by GitHub
parent 8d7e32eaf6
commit 8b9f3a0e65
2 changed files with 18 additions and 5 deletions

View File

@@ -6,7 +6,7 @@ import { defineStore } from 'hooks/store'
import { useToast } from 'hooks/toast' import { useToast } from 'hooks/toast'
import { castArray, cloneDeep } from 'lodash' import { castArray, cloneDeep } from 'lodash'
import { TreeNode } from 'primevue/treenode' import { TreeNode } from 'primevue/treenode'
import { app } from 'scripts/comfyAPI' import { api, app } from 'scripts/comfyAPI'
import { BaseModel, Model, SelectEvent, WithResolved } from 'types/typings' import { BaseModel, Model, SelectEvent, WithResolved } from 'types/typings'
import { bytesToSize, formatDate, previewUrlToFile } from 'utils/common' import { bytesToSize, formatDate, previewUrlToFile } from 'utils/common'
import { ModelGrid } from 'utils/legacy' import { ModelGrid } from 'utils/legacy'
@@ -27,16 +27,18 @@ import {
import { useI18n } from 'vue-i18n' import { useI18n } from 'vue-i18n'
import { configSetting } from './config' import { configSetting } from './config'
const systemStat = ref()
type ModelFolder = Record<string, string[]> type ModelFolder = Record<string, string[]>
const modelFolderProvideKey = Symbol('modelFolder') as InjectionKey< const modelFolderProvideKey = Symbol('modelFolder') as InjectionKey<
Ref<ModelFolder> Ref<ModelFolder>
> >
export const genModelFullName = (model: BaseModel) => { export const genModelFullName = (model: BaseModel, splitter = '/') => {
return [model.subFolder, `${model.basename}${model.extension}`] return [model.subFolder, `${model.basename}${model.extension}`]
.filter(Boolean) .filter(Boolean)
.join('/') .join(splitter)
} }
export const genModelUrl = (model: BaseModel) => { export const genModelUrl = (model: BaseModel) => {
@@ -234,6 +236,12 @@ export const useModels = defineStore('models', (store) => {
return [prefixPath, fullname].filter(Boolean).join('/') return [prefixPath, fullname].filter(Boolean).join('/')
} }
onMounted(() => {
api.getSystemStats().then((res) => {
systemStat.value = res
})
})
return { return {
initialized: initialized, initialized: initialized,
folders: folders, folders: folders,
@@ -717,11 +725,12 @@ export const useModelNodeAction = () => {
// Use the legacy method instead // Use the legacy method instead
const removeEmbeddingExtension = true const removeEmbeddingExtension = true
const strictDragToAdd = false const strictDragToAdd = false
const splitter = systemStat.value?.system.os === 'nt' ? '\\' : '/'
ModelGrid.dragAddModel( ModelGrid.dragAddModel(
event, event,
model.type, model.type,
genModelFullName(model), genModelFullName(model, splitter),
removeEmbeddingExtension, removeEmbeddingExtension,
strictDragToAdd, strictDragToAdd,
) )

View File

@@ -1,6 +1,10 @@
declare namespace ComfyAPI { declare namespace ComfyAPI {
namespace api { namespace api {
class ComfyApi { class ComfyApiEvent {
getSystemStats: () => Promise<any>
}
class ComfyApi extends ComfyApiEvent {
socket: WebSocket socket: WebSocket
fetchApi: (route: string, options?: RequestInit) => Promise<Response> fetchApi: (route: string, options?: RequestInit) => Promise<Response>
addEventListener: ( addEventListener: (