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

View File

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