@@ -27,6 +27,7 @@ import {
2727import {
2828 loadDiscordModelPickerData ,
2929 renderDiscordModelPickerModelsView ,
30+ resolveDiscordModelPickerPageForModel ,
3031 toDiscordModelPickerMessagePayload ,
3132 type DiscordModelPickerCommandContext ,
3233} from "./model-picker.js" ;
@@ -311,18 +312,26 @@ export async function replyWithDiscordModelPickerProviders(params: {
311312 allowedModelRefs : buildDiscordModelPickerAllowedModelRefs ( data ) ,
312313 limit : 5 ,
313314 } ) ;
314- const currentProvider = splitDiscordModelRef ( currentModel ?? "" ) ?. provider ;
315+ const parsedCurrentRef = splitDiscordModelRef ( currentModel ?? "" ) ;
315316 const initialProvider =
316- currentProvider && data . byProvider . has ( currentProvider )
317- ? currentProvider
317+ parsedCurrentRef && data . byProvider . has ( parsedCurrentRef . provider )
318+ ? parsedCurrentRef . provider
318319 : ( data . providers [ 0 ] ?? data . resolvedDefault . provider ) ;
320+ const initialPage =
321+ parsedCurrentRef && parsedCurrentRef . provider === initialProvider
322+ ? resolveDiscordModelPickerPageForModel ( {
323+ data,
324+ provider : initialProvider ,
325+ model : parsedCurrentRef . model ,
326+ } )
327+ : 1 ;
319328
320329 const rendered = renderDiscordModelPickerModelsView ( {
321330 command : params . command ,
322331 userId : params . userId ,
323332 data,
324333 provider : initialProvider ,
325- page : 1 ,
334+ page : initialPage ,
326335 providerPage : 1 ,
327336 currentModel,
328337 currentRuntime,
0 commit comments