mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-01-17 16:05:32 +01:00
* fix: apply mongoMeili when models are created to use main runtime mongoose * chore: update @librechat/data-schemas version to 0.0.8 * refactor: remove unused useDebounceCodeBlock * fix: ensure setter function is stable and handle numeric conversion in useDebouncedInput * refactor: replace useCallback with useMemo for stable debounced function in useDebouncedInput
22 lines
777 B
TypeScript
22 lines
777 B
TypeScript
import type * as t from '~/types';
|
|
import mongoMeili from '~/models/plugins/mongoMeili';
|
|
import convoSchema from '~/schema/convo';
|
|
|
|
/**
|
|
* Creates or returns the Conversation model using the provided mongoose instance and schema
|
|
*/
|
|
export function createConversationModel(mongoose: typeof import('mongoose')) {
|
|
if (process.env.MEILI_HOST && process.env.MEILI_MASTER_KEY) {
|
|
convoSchema.plugin(mongoMeili, {
|
|
mongoose,
|
|
host: process.env.MEILI_HOST,
|
|
apiKey: process.env.MEILI_MASTER_KEY,
|
|
/** Note: Will get created automatically if it doesn't exist already */
|
|
indexName: 'convos',
|
|
primaryKey: 'conversationId',
|
|
});
|
|
}
|
|
return (
|
|
mongoose.models.Conversation || mongoose.model<t.IConversation>('Conversation', convoSchema)
|
|
);
|
|
}
|