LibreChat/api/server/services
Yuichi Oneda 8c404ae056
💬 feat: Temporary Chats (#5493)
* feat: add expiredAt property to Conversation and Message models

Added `expiredAt` property to both Conversation and Message schemas.
Configured `expireAfterSeconds` index in MongoDB to automatically delete documents after a specified period.

* feat(data-provider): add isTemporary and expiredAt properties to support temporary chats

Added `isTemporary` property to TPayload and TSubmission for API calls for temporary chat.
Additionally, added `expiredAt` property to `tConversationSchema` to determine if a chat is temporary.

* feat: implement isTemporary state management

Add Recoil state for tracking temporary conversations, update event handlers to respect temporary chat status

* feat: add configuration to interfaceconfig to hide the temporary chat switch

* feat: add Temporary Chat UI with switch and modify related behaviors

- Added a Temporary Chat switch button at the end of dropdown lists in each model.
- Updated the form background color to black when Temporary Chat is enabled.
- Modified Navigation to exclude Temporary Chats from the chat list.

* fix: exclude Temporary Chats from search results

Updated the getConvosQueried query to ensure that Temporary Chats are not included in the search results.

* fix: hide bookmark button for Temporary Chats

Updated the UI to ensure that the bookmark button is not displayed when a chat is as Temporary Chat.

* chore: update isTemporary state management in ChatRoute

* chore: fix to pass the tests
2025-02-06 11:11:47 -05:00
..
Artifacts 🏄‍♂️ refactor: Optimize Reasoning UI & Token Streaming (#5546) 2025-01-29 19:46:58 -05:00
Config 🎥 feat: YouTube Tool (#5582) 2025-01-31 19:11:04 -05:00
Endpoints 🤖 fix: GoogleClient Context Handling & GenAI Parameters (#5503) 2025-01-27 12:21:33 -05:00
Files 🏄‍♂️ refactor: Optimize Reasoning UI & Token Streaming (#5546) 2025-01-29 19:46:58 -05:00
Runs 🏄‍♂️ refactor: Optimize Reasoning UI & Token Streaming (#5546) 2025-01-29 19:46:58 -05:00
start 💬 feat: Temporary Chats (#5493) 2025-02-06 11:11:47 -05:00
Threads 🧵 fix: Assistants API Thread ID Handling (#4912) 2024-12-09 08:38:39 -05:00
ActionService.js 🔧 refactor: Improve Agent Context & Minor Fixes (#5349) 2025-01-17 12:55:48 -05:00
ActionService.spec.js 🔐 feat: Implement Allowed Action Domains (#4964) 2024-12-12 12:52:42 -05:00
AppService.interface.spec.js 🧠 feat: Prompt caching switch, prompt query params; refactor: static cache, prompt/markdown styling, trim copied code, switch new chat to convo URL (#3784) 2024-08-26 15:34:46 -04:00
AppService.js 🐛 fix: Ensure Default ModelSpecs Are Set Correctly (#5218) 2025-01-08 21:57:00 -05:00
AppService.spec.js 🧠 feat: Prompt caching switch, prompt query params; refactor: static cache, prompt/markdown styling, trim copied code, switch new chat to convo URL (#3784) 2024-08-26 15:34:46 -04:00
AssistantService.js 🤖 feat: OpenAI Assistants v2 (initial support) (#2781) 2024-05-19 12:56:55 -04:00
AuthService.js ♻️ fix: Prevent Instructions from Removal when nearing Max Context (#5516) 2025-01-27 20:37:38 -05:00
cleanup.js 🧹 fix: Resolve Unarchive Conversation Bug, Archive Pagination (#4189) 2024-09-22 17:21:50 -04:00
createRunBody.js feat: Add Current Datetime to Assistants (v1/v2) (#4952) 2024-12-11 15:26:18 -05:00
domains.js 🔐 feat: Implement Allowed Action Domains (#4964) 2024-12-12 12:52:42 -05:00
domains.spec.js 🔐 feat: Implement Allowed Action Domains (#4964) 2024-12-12 12:52:42 -05:00
MCP.js 🔧 feat: Initial MCP Support (Tools) (#5015) 2024-12-17 13:12:57 -05:00
ModelService.js 🔧 refactor: Revamp Model and Tool Filtering Logic (#5637) 2025-02-03 16:08:34 -05:00
ModelService.spec.js 🕒 feat: Add 5-second timeout for Fetching Model Lists (#4423) 2024-10-15 19:37:41 -04:00
PluginService.js 🎉 feat: Code Interpreter API and Agents Release (#4860) 2024-12-04 15:48:13 -05:00
signPayload.js chore: remove jose as Bun now supports JWT 🍞 (#1167) 2023-11-12 00:44:46 -05:00
Tokenizer.js 🔄 refactor: Consolidate Tokenizer; Fix Jest Open Handles (#5175) 2025-01-03 18:11:14 -05:00
Tokenizer.spec.js 🔄 refactor: Consolidate Tokenizer; Fix Jest Open Handles (#5175) 2025-01-03 18:11:14 -05:00
ToolService.js 🔧 refactor: Revamp Model and Tool Filtering Logic (#5637) 2025-02-03 16:08:34 -05:00
UserService.js 🛠️ fix: Remove expiresAt field when setting expiry to "never" (#4294) 2024-10-03 07:17:21 -04:00