New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
๐ fix: plugins with multiple settings cannot be correctly configured #1991
Conversation
@YangHanlin is attempting to deploy a commit to the LobeHub Team on Vercel. A member of the Team first needs to authorize it. |
๐ @YangHanlin Thank you for raising your pull request and contributing to our Community |
Codecov ReportAll modified and coverable lines are covered by tests โ
Additional details and impacted files@@ Coverage Diff @@
## main #1991 +/- ##
========================================
Coverage 92.56% 92.56%
========================================
Files 279 279
Lines 15973 15978 +5
Branches 1153 1851 +698
========================================
+ Hits 14785 14790 +5
Misses 1188 1188 โ View full report in Codecov by Sentry. |
@@ -74,7 +74,7 @@ const PluginSettingsConfig = memo<PluginSettingsConfigProps>(({ schema, id }) => | |||
maximum={item.maximum} | |||
minimum={item.minimum} | |||
onChange={(value) => { | |||
updatePluginSettings(id, { [item.name]: value }); | |||
updatePluginSettings(id, { ...pluginSetting, [item.name]: value }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ๅๅนถๅบ่ฏฅๅๅจ่ฟ้๏ผ่ฟๆฏๅบ่ฏฅๅๅฐๆดๅ ๅบๅฑ็ไฝ็ฝฎ๏ผ
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
้ๆฐ็ไบไธ็กฎๅฎๅๅนถๅๅฐๆดๅบๅฑไธ็น็ Zustand action ๅฑๆฏ่พๅ้๏ผๅฆ PreferenceAction#updatePreference
:
lobe-chat/src/store/global/slices/preference/action.ts
Lines 69 to 75 in 904a3df
updatePreference: (preference, action) => { | |
const nextPreference = merge(get().preference, preference); | |
set({ preference: nextPreference }, false, action || n('updatePreference')); | |
get().preferenceStorage.saveToLocalStorage(nextPreference); | |
}, |
ๅทฒๆดๆนใ
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ๅฆๅคๅฆๆญคๆนๅจๆไธไธชๅฏไฝ็จ๏ผLobeChat Plugin SDK ๆไพ็ๆไปถไพงไฟฎๆน่ฎพ็ฝฎ็ธๅ ณ API ไนไพ่ตไบ่ฟ้็้ป่พ๏ผๅ ๆญค่ฏฅ API ็่กไธบไนไผไปๅ จ้ๆดๆฐๆไปถ่ฎพ็ฝฎๆนไธบๅข้ๆดๆฐ๏ผไฝ็ฎๅๆไปถๅธๅบไธญไผผไน่ฟๆฒกๆ้่ฆๅคไธช่ฎพ็ฝฎ้กน็ๆไปถ๏ผๅ ๆญคๅฝฑๅๅฏๆงใ
The latest updates on your projects. Learn more about Vercel for Git โ๏ธ
|
e6ab2e7
to
b1e131a
Compare
b1e131a
to
862d0f6
Compare
@YangHanlin ๆๅทฒ็ป่งฆๅ้จ็ฝฒไบไธไธช็ๆฌ๏ผ https://lobe-chat-community-git-fork-yanghanlin-fix-plug-d8e44a-lobehub.vercel.app/ ไฝ ็ไธๅจ่ฟไธช็ๆฌไธญ setting ็้ ็ฝฎๆฏๅฆ็ฌฆๅ mj ๆไปถ้ฃไธชPRไธญ็้ขๆ๏ผ |
@arvinxx ็ปๆต่ฏ็ฌฆๅ้ขๆ๏ผMJ ๆไปถ่ฝ้กบๅฉๆฅๆถๅฐๅฎฟไธปไพง้ ็ฝฎ็ API URL ไธ secretใ |
@arvinxx The test is in line with expectations. The MJ plug-in can successfully receive the API URL and secret configured on the host side. |
โค๏ธ Great PR @YangHanlin โค๏ธ The growth of project is inseparable from user feedback and contribution, thanks for your contribution! If you are interesting with the lobehub developer community, please join our discord and then dm @arvinxx or @canisminor1990. They will invite you to our private developer channel. We are talking about the lobe-chat development or sharing ai newsletter around the world. |
### [Version 0.151.6](v0.151.5...v0.151.6) <sup>Released on **2024-04-30**</sup> #### ๐ Bug Fixes - **misc**: Plugins with multiple settings cannot be correctly configured. <br/> <details> <summary><kbd>Improvements and Fixes</kbd></summary> #### What's fixed * **misc**: Plugins with multiple settings cannot be correctly configured, closes [#1991](#1991) ([0c041aa](0c041aa)) </details> <div align="right"> [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top) </div>
๐ This PR is included in version 0.151.6 ๐ The release is available on: Your semantic-release bot ๐ฆ๐ |
### [Version 1.31.1](v1.31.0...v1.31.1) <sup>Released on **2024-04-30**</sup> #### โป Code Refactoring - **misc**: Move app page to the `(main)` layout group. #### ๐ Bug Fixes - **misc**: Effectively interrupt auto scrolling, fix only inject welcome question in inbox, plugins with multiple settings cannot be correctly configured. #### ๐ Styles - **misc**: Add 404 and Error page, patching models info, Revise some text. <br/> <details> <summary><kbd>Improvements and Fixes</kbd></summary> #### Code refactoring * **misc**: Move app page to the `(main)` layout group, closes [lobehub#2297](https://github.com/bentwnghk/lobe-chat/issues/2297) ([6cc2c38](6cc2c38)) #### What's fixed * **misc**: Effectively interrupt auto scrolling, closes [lobehub#2223](https://github.com/bentwnghk/lobe-chat/issues/2223) ([afe4974](afe4974)) * **misc**: Fix only inject welcome question in inbox, closes [lobehub#2289](https://github.com/bentwnghk/lobe-chat/issues/2289) ([cc8edd3](cc8edd3)) * **misc**: Plugins with multiple settings cannot be correctly configured, closes [lobehub#1991](https://github.com/bentwnghk/lobe-chat/issues/1991) ([0c041aa](0c041aa)) #### Styles * **misc**: Add 404 and Error page, closes [lobehub#2299](https://github.com/bentwnghk/lobe-chat/issues/2299) ([938a3e9](938a3e9)) * **misc**: Patching models info, closes [lobehub#2269](https://github.com/bentwnghk/lobe-chat/issues/2269) [#22802280](https://github.com/bentwnghk/lobe-chat/issues/22802280) ([03bcb06](03bcb06)) * **misc**: Revise some text, closes [lobehub#2296](https://github.com/bentwnghk/lobe-chat/issues/2296) ([018427f](018427f)) </details> <div align="right"> [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top) </div>
๐ป ๅๆด็ฑปๅ | Change Type
๐ ๅๆด่ฏดๆ | Description of Change
Currently, when a LobeChat plugin provides multiple fields in its settings, and the user edits one of the fields, the other fields will be cleared.
For example, the following screenshot demonstrates a plugin
Midjourney DEV
providing 2 fields in the settingsMIDJOURNEY_PROXY_URL
andMIDJOURNEY_PROXY_API_SECRET
. By adding a logging statement inPluginService.updatePluginSettings
, it can be seen that editing either of them will result in the other being cleared.This PR fixes this issue by merging the edited field into the existing settings object.
๐ ่กฅๅ ไฟกๆฏ | Additional Information