c4d87ef64a
Merge branch 'feat/model-plugins-implementing' into deploy/dev
2026-03-17 16:47:55 +08:00
111d82bbb4
fix: align plugin error badge with card icon
...
- anchor the error status badge to the plugin card icon wrapper
- keep the badge positioned at the icon's bottom-right corner
- add a layout regression test for plugin task items
2026-03-17 16:43:23 +08:00
c3664540f2
Merge branch 'feat/model-plugins-implementing' into deploy/dev
2026-03-11 22:23:12 +08:00
f0086888e3
fix
2026-03-11 21:17:35 +08:00
421f6f2ad5
Merge branch 'feat/model-plugins-implementing' into deploy/dev
...
# Conflicts:
# web/app/components/header/account-setting/model-provider-page/model-parameter-modal/presets-parameter.tsx
# web/app/components/header/account-setting/model-provider-page/model-parameter-modal/trigger.tsx
2026-03-11 17:27:10 +08:00
3f27c8a9d2
fix(plugin-tasks): handle error actions by source and clear item after marketplace install
2026-03-11 15:59:37 +08:00
0ff8539c97
Merge branch 'feat/model-plugins-implementing' into deploy/dev
...
# Conflicts:
# web/contract/router.ts
2026-03-10 23:29:41 +08:00
45c96dc254
feat(model-provider): add plugin update indicators and migrate to oRPC contracts
...
Problem: Model provider settings page (/plugins?action=showSettings&tab=provider)
was missing plugin update indicators (red dot badge, Update button) that the
/plugins page correctly displayed, because it only fetched installation data
without querying for latest marketplace versions.
Decision: Extract a shared usePluginsWithLatestVersion hook and migrate plugin
API endpoints to oRPC contracts, ensuring both pages use identical data flows.
Model: Both pages now follow the same pattern — fetch installed plugins via
consoleQuery.plugins.checkInstalled, enrich with latest version metadata via
usePluginsWithLatestVersion, then pass complete PluginDetail objects downstream
where useDetailHeaderState computes hasNewVersion for UI indicators.
Impact:
- Update badge red dot and Update button now appear on provider settings page
- Shared hook eliminates 15 lines of duplicate enrichment logic in plugins-panel
- oRPC contracts replace legacy post() calls for plugin endpoints
- Operation dropdown uses auto-width to prevent "View on Marketplace" text wrapping
- Version badge aligned to use Badge component consistently across both pages
- Update button tooltip added with bilingual i18n support
- Deprecated Tooltip migrated to Base UI Tooltip in detail-header
2026-03-10 23:28:09 +08:00
55a80bda5d
chore: merge in site message
2026-03-10 15:32:30 +08:00
0e0a6ad043
test(web): enhance unit tests for credential and popup components
...
- Updated tests for CredentialItem to improve delete button interaction and check icon rendering.
- Enhanced PopupItem tests by mocking credential panel state for various scenarios, ensuring accurate rendering based on credit status.
- Adjusted Popup tests to include trial credits mock for better coverage of credit management logic.
- Refactored model list item tests to include wrapper for consistent rendering context.
2026-03-09 14:20:12 +08:00
8c0875322e
mrege
2026-03-09 10:14:23 +08:00
53f122f717
Merge branch 'feat/model-provider-refactor' into feat/model-plugins-implementing
2026-03-06 17:33:38 +08:00
fced2f9e65
refactor: enhance plugin management UI with error handling, improved rendering, and new components
2026-03-06 16:27:26 +08:00
f487b680f5
refactor: spilt context for better hmr ( #33033 )
2026-03-05 15:54:56 +08:00
1a90c4d81b
refactor(web): migrate document list query state to nuqs ( #32339 )
2026-03-03 18:29:23 +08:00
d6b025e91e
test(web): add comprehensive unit and integration tests for plugins and tools modules ( #32220 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-02-12 10:04:56 +08:00
e2d7fe9c72
fix(web): use Array.from() for FileList to fix tsc type errors ( #31398 )
2026-01-22 19:51:24 +08:00
aa68966b55
test: fix test in #30849 ( #31350 )
2026-01-21 16:46:42 +08:00
061feebd87
fix: check and update doc links ( #30849 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-21 16:31:48 +08:00
77366f33a4
feat(web): add loading indicators for infinite scroll pagination ( #31110 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-17 17:36:07 +08:00
e3b0918dd9
test(web): add global zustand mock for tests ( #31149 )
2026-01-17 17:29:13 +08:00
c98870c3f4
refactor: always preserve marketplace search state in URL ( #31069 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-16 08:52:53 +09:00
bdd8d5b470
test: add unit tests for PluginPage and related components ( #30908 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2026-01-15 10:56:02 +08:00
d4432ed80f
refactor: marketplace state management ( #30702 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-09 14:31:24 +08:00
d4baf078f7
fix(plugins): enhance search to match name, label and description ( #30501 )
2026-01-04 16:07:04 +08:00
2aaaa4bd34
feat(web): migrate from es-toolkit/compat to native es-toolkit ( #30244 ) ( #30246 )
2025-12-31 11:13:22 +08:00
2399d00d86
refactor(i18n): about locales ( #30336 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2025-12-30 14:38:23 +08:00
43758ec85d
test: add some tests for marketplace ( #30326 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2025-12-30 09:21:19 +08:00
9a6b4147bc
test: add comprehensive tests for plugin authentication components ( #30094 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2025-12-29 16:45:25 +08:00
6d0e36479b
refactor(i18n): use JSON with flattened key and namespace ( #30114 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-29 14:52:32 +08:00
3ae7788933
refactor(query-state): migrate query param state management to nuqs ( #30184 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-29 11:24:54 +08:00
3cbbb06dc4
chore(web): migrate lodash-es to es-toolkit compat ( #30126 )
2025-12-25 09:44:57 +08:00
403adefc07
chore: lint require and how to import react ( #30041 )
2025-12-23 18:02:10 +08:00
f2842da397
chore(web): new lint setup ( #30020 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2025-12-23 16:58:55 +08:00
a26881cb24
refactor: unified cn utils ( #29916 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2025-12-19 12:08:34 +08:00
b7bdd5920b
fix: add secondary text color to plugin task headers ( #29529 )
2025-12-15 10:13:59 +08:00
0867c1800b
refactor: simplify plugin task handling and improve UI feedback ( #26293 )
2025-12-10 13:34:05 +08:00
744b287e67
fix: avoid passing empty uniqueIdentifier to InstallFromMarketplace ( #27802 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-11-05 10:22:22 +08:00
95471b1188
fix(ui): fixed the bug about empty placeholder when plugin install successfully ( #27780 )
2025-11-04 09:35:14 +08:00
8c298b33cd
Fix frontend type error ( #27116 )
2025-10-20 11:27:18 +08:00
85cda47c70
feat: knowledge pipeline ( #25360 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
Co-authored-by: jyong <718720800@qq.com >
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com >
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: quicksand <quicksandzn@gmail.com >
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zxhlyh <jasonapring2015@outlook.com >
Co-authored-by: Yongtao Huang <yongtaoh2022@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: nite-knite <nkCoding@gmail.com >
Co-authored-by: Hanqing Zhao <sherry9277@gmail.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Harry <xh001x@hotmail.com >
2025-09-18 12:49:10 +08:00
a4d17cb585
fix: add backdrop-blur-sm to plugin dropdown filters for consistent dark mode styling ( #24454 )
2025-08-25 13:55:41 +08:00
09b0dd5583
fix: Optimize scrolling experience on plugin page ( #24314 ) ( #24322 )
2025-08-22 16:09:10 +08:00
e298eee822
feat: add select-none class to tag filter components to prevent text selection ( #23774 )
2025-08-12 09:23:59 +08:00
371fe7a700
fix: type error in list-operator ( #22803 )
2025-07-24 12:21:20 +08:00
eaae79a581
feat: plugin auto upgrade strategy ( #19758 )
...
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: crazywoola <427733928@qq.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Novice <novice12185727@gmail.com >
2025-07-23 15:33:39 +08:00
2d8eace34b
feat: plugin deprecation notice ( #22685 )
...
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com >
Co-authored-by: twwu <twwu@dify.ai >
2025-07-22 10:27:35 +08:00
785c4caa67
fix: allow update plugin install settings ( #22111 )
2025-07-10 09:58:48 +08:00
43f5b21852
feat: add config for max-tree-depth ( #21291 )
2025-06-23 13:55:57 +08:00
614c5e087e
Feat: add check before install plugin ( #20014 )
2025-06-18 15:51:23 +08:00