@@ -136,6 +136,11 @@ export const useModelSelectStore = defineStore('modelSelect', {
136136 console . log ( 'setSelectedModelTypes' , page , types )
137137 this . mine [ page ] . filterState . model_types = types
138138 } ,
139+
140+ setSelectedBaseModels ( page : ModeTabType , models : string [ ] ) {
141+ console . log ( 'setSelectedBaseModels' , page , models )
142+ this . mine [ page ] . filterState . base_models = models
143+ } ,
139144 resetPageState ( page : ModeTabType ) {
140145 this . mine [ page ] = {
141146 modelTypes : [ ] ,
@@ -171,6 +176,9 @@ export const useModelSelectStore = defineStore('modelSelect', {
171176 ] )
172177
173178 if ( modelTypesResponse ?. data ) {
179+ // 总是显示所有模型类型
180+ this . modelTypes = modelTypesResponse . data
181+
174182 if ( modelTypes && modelTypes . length > 0 ) {
175183 const predefinedTypes = modelTypesResponse . data . map ( ( e : CommonModelType ) => e . value )
176184 const matchedTypes = modelTypes . map ( inputType => {
@@ -186,27 +194,35 @@ export const useModelSelectStore = defineStore('modelSelect', {
186194 } )
187195 return matchedType || 'Other'
188196 } )
189- this . modelTypes = modelTypesResponse . data . filter ( ( type : CommonModelType ) =>
190- matchedTypes . includes ( type . value )
191- )
197+ // 只设置传入的类型为选中状态
192198 this . setSelectedModelTypes ( 'posts' , matchedTypes )
193199 this . setSelectedModelTypes ( 'forked' , matchedTypes )
194200 this . setSelectedModelTypes ( 'community' , matchedTypes )
195201 } else {
196- this . modelTypes = modelTypesResponse . data
202+ // 如果没有传入类型,则清空选中状态
203+ this . setSelectedModelTypes ( 'posts' , [ ] )
204+ this . setSelectedModelTypes ( 'forked' , [ ] )
205+ this . setSelectedModelTypes ( 'community' , [ ] )
197206 }
198207 if ( this . modelTypes . length > 0 && this . baseModelTypes . length > 0 ) {
199208 this . filterDataLoaded = true
200209 }
201210 }
202211
203212 if ( baseModelResponse ?. data ) {
213+ // 总是显示所有基础模型类型
214+ this . baseModelTypes = baseModelResponse . data
215+
204216 if ( baseModelTypes && baseModelTypes . length > 0 ) {
205- this . baseModelTypes = baseModelResponse . data . filter ( ( type : CommonModelType ) =>
206- baseModelTypes . includes ( type . value )
207- )
217+ // 只设置传入的基础模型类型为选中状态
218+ this . setSelectedBaseModels ( 'posts' , baseModelTypes )
219+ this . setSelectedBaseModels ( 'forked' , baseModelTypes )
220+ this . setSelectedBaseModels ( 'community' , baseModelTypes )
208221 } else {
209- this . baseModelTypes = baseModelResponse . data
222+ // 如果没有传入基础模型类型,则清空选中状态
223+ this . setSelectedBaseModels ( 'posts' , [ ] )
224+ this . setSelectedBaseModels ( 'forked' , [ ] )
225+ this . setSelectedBaseModels ( 'community' , [ ] )
210226 }
211227 if ( this . modelTypes . length > 0 && this . baseModelTypes . length > 0 ) {
212228 this . filterDataLoaded = true
0 commit comments