Commit Graph

492 Commits

Author SHA1 Message Date
CodingOnStar
803c3cd2df fix(web): restore creator profile contracts and i18n
The standalone and embedded creator pages call marketplaceClient.creatorDetail,
but those routes were dropped from the marketplace contract. Restore them, skip
avatar fetches when none was uploaded, and add creatorProfile strings to every
plugin locale.
2026-08-19 16:37:14 +08:00
CodingOnStar
62cb8a9c74 fix(web): resume trending autoplay after pointer pagination
Pointer clicks leave hover/focus on the dots, which kept rotation
paused until blur. Keyboard selection still keeps the focus pause.
2026-08-19 09:32:39 +08:00
CodingOnStar
3713581520 Merge remote-tracking branch 'origin/main' into feat/creator-profile-home
# Conflicts:
#	.editorconfig
#	oxlint-suppressions.json
#	web/app/components/base/markdown-blocks/code-block.tsx
#	web/app/layout.tsx
2026-08-18 21:30:57 +08:00
yyh
9ce463fc24
refactor(web): compose search prefixes with input group (#40922) 2026-08-18 06:04:37 +00:00
CodingOnStar
803d5d3fe5 fix(web): keep marketplace autocomplete open during async search
Tie controlled open to the typing session so outside press can dismiss
during debounce, and keep Status/Empty mounted for the pending live region.
2026-08-18 11:39:23 +08:00
CodingOnStar
6ab0c21172 refactor(web): split marketplace autocomplete onto main popup anatomy
Use Autocomplete Portal/Positioner/Popup after the dify-ui split, restore
creator-profile selection, and move the language filter search to InputGroup.
2026-08-18 10:44:16 +08:00
CodingOnStar
4d8bd40058 merge: bring origin/main into feat/creator-profile-home
Keep marketplace workspace-skill runtime tests and take main's
autocomplete popup anatomy plus input-group composition.
2026-08-18 10:39:42 +08:00
yyh
6d89557355
feat(dify-ui): add input group composition (#40890) 2026-08-18 02:14:39 +00:00
CodingOnStar
5712cf91dc feat(web): emit marketplace site events from the shared catalog
Forward standalone marketplace Amplitude events from shared catalog
UI, including banner, card, filter, search, and creator/partner clicks.
2026-08-17 21:22:38 +08:00
CodingOnStar
ec9eb308ef feat(web): animate marketplace hero icons with grouped spring swaps
Cycle the four hero marks as a group every 4s, retracting toward the
title and expanding back out so later 4-set icon lists can drop in.
2026-08-17 17:15:56 +08:00
CodingOnStar
55dcaea347 merge: restore marketplace catalog tag and language filters
Combine homepage catalog filters with the later marketplace hero icon fixes.
2026-08-17 16:19:08 +08:00
CodingOnStar
d4c265551a fix(web): swap marketplace hero icons for themed Figma brand marks
Replace the homepage hero decorations with light/dark Dropbox, DuckDuckGo, GitHub, and Google assets, and hide them on narrow viewports.
2026-08-17 16:12:12 +08:00
姜涵煦
9b2368ca6b feat(web): restore templates language filter on the catalog bar 2026-08-17 15:27:32 +08:00
姜涵煦
fdc7338431 feat(web): put TagFilter to the left of marketplace plugin categories 2026-08-17 15:14:00 +08:00
CodingOnStar
2ee3927a10 fix(web): render the marketplace hero Gmail mark
The iconify CSS class masks to currentColor, so the multi-color Gmail
logo was an empty tile. Use the SVG asset the same way as DuckDuckGo.
2026-08-17 15:12:54 +08:00
姜涵煦
7440e27381 feat(web): restore marketplace languages query state 2026-08-17 15:08:35 +08:00
CodingOnStar
7ed77c05d0 feat(web): track marketplace banner impressions and clicks
Count a frame impression after the current slide stays 50% visible for 1s, and emit Amplitude click/item_click events that match the banner export schema.
2026-08-17 14:28:49 +08:00
CodingOnStar
fab9d78c48 fix(web): request templates banners on the templates page 2026-08-17 14:14:30 +08:00
CodingOnStar
24b977da27 Merge branch 'feat/marketplace-homepage-redesign' into feat/creator-profile-home 2026-08-17 13:01:32 +08:00
CodingOnStar
f5ac519089 Merge branch 'main' into feat/marketplace-homepage-redesign 2026-08-17 12:54:54 +08:00
YungLe
219596c4df
feat(plugin-auth): visibility picker for OAuth credentials (#39840)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com>
Co-authored-by: twwu <twwu@dify.ai>
2026-08-17 02:41:26 +00:00
yyh
facb60abfe
fix(web): align combobox interaction semantics (#40826) 2026-08-17 02:13:08 +00:00
CodingOnStar
90692c2d92 fix(web): show marketplace search results without a searching placeholder
Keep the suggestion popup closed until results settle so the standalone
site does not flash the missing gotoAnything.searching key. Render
plugin and template icons from the marketplace asset URLs.
2026-08-16 17:14:59 +08:00
CodingOnStar
0746dcc354 fix(web): keep Creator Center on the matching marketplace environment
Prefer the current marketplace origin so marketplace.dify.dev opens creators.dify.dev instead of inheriting a baked-in .ai URL.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 16:31:03 +08:00
CodingOnStar
ea6935060b fix(web): keep embedded marketplace search live without suggestions
The public marketplace owns the suggestion dropdown. Console plugin and
template search keep updating results as the query changes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 16:28:01 +08:00
CodingOnStar
cf121dcc10 refactor(web): share the marketplace home shell and validate banners with zod
Compose the Plugins and Templates catalog homes from one HomeShell so the
page scaffold cannot drift, split the templates page into category
navigation, pagination and link helpers, and hand the collection list
pre-filtered locale data instead of filtering twice. Replace the
hand-rolled banner payload guards with a zod schema keeping the same
lenient semantics, share the partner-collection constants, label the
plugin type filter group as categories, and backfill the missing Lao
trending title.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 15:22:51 +08:00
CodingOnStar
0fc3791bb6 refactor(web): split marketplace home trending and share catalog constants
Break the trending banner into navigation and slide modules with shared
home constants, hoist the marketplace container id and partner-collection
constants for reuse across the catalog, and drop the i18n keys the
redesigned home no longer renders.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 15:04:39 +08:00
CodingOnStar
66f63a074b fix(web): stop marketplace carousel autoplay from crashing on a single page
The autoplay plugin skips its own setup when a carousel has one page, so
the eager play() path dereferenced an undefined delay list and crashed
the standalone marketplace templates tab. Keep autoplay stopped for
single-page carousels and pause rotation permanently once focus enters,
dropping the play/pause toggle that resumed it.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 15:03:10 +08:00
CodingOnStar
5f52b94aa0 fix(web): declare webp assets and drop an unused carousel export
CI type-checks without the Next-generated image declarations, so *.webp
needs an explicit module declaration like the other formats. Also keep
getCarouselItemsPerPage module-private since only the hook consumes it,
which unblocks the knip production check.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 14:01:08 +08:00
CodingOnStar
a4a57ec662 fix(web): address marketplace review follow-ups on assets, locale and a11y
- resample the 3MB trending background to a 97KB webp and serve a frozen
  recommend banner from the E2E stub so the benchmark covers the carousel
- show the on-page filtered count in template search and redirect
  out-of-range pages to the last available page
- localize the carousel controls across all 24 locales and replace the
  i18n type casts with typed selectors
- surface Marketplace API failures with a retry action instead of
  rendering them as empty results
- use iconify marks for the hero decorations, share the carousel
  page-size hook to avoid a hydration mismatch, move banner types into
  @dify/contracts, scope the Cmd+K shortcut to the standalone platform,
  point the embedded logo at /marketplace, pass resolvedTheme to the
  detail dialogs, and reveal the detail iframe after a loading timeout

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 13:48:34 +08:00
CodingOnStar
3087b45017 fix(web): render marketplace Creator Center from a client module
home-header.tsx is a server component on the standalone marketplace
homepage, where calling buttonVariants() from the client-marked
dify-ui button module crashes SSR with a 500. Extract the Creator
Center link into its own 'use client' file, mirroring home-guide.tsx.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 11:35:18 +08:00
CodingOnStar
618f2b8e00 style: remove gray border lines from marketplace home header
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-15 19:46:59 +08:00
CodingOnStar
7eb37099d9 fix: restore marketplace entry modules consumed by dify-marketplace
The knip production check flagged these as unused, but the outer
dify-marketplace repository imports them via path aliases into its own
Next.js app, so deleting them broke that build. Restore them and
declare them as knip entries with the cross-repo consumer documented.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-15 16:06:57 +08:00
CodingOnStar
71d0462287 fix: remove dead marketplace entry files and relax long-task budget
knip production flagged web/app/components/plugins/marketplace/index.tsx
and home/marketplace-live-search.tsx as unused after the homepage page
composed EmbeddedMarketplace directly; drop them with their specs. Raise
LONG_TASK_BUDGET_MS to 300ms since hydration peaks ~220ms on shared CI
runners under 4x CPU throttling.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-15 14:53:19 +08:00
CodingOnStar
e7ca2735bf fix: address marketplace review feedback on CI lane, templates and carousel a11y
- move the marketplace performance E2E lane out of main CI (opt-in workflow_dispatch)
- add server-rendered pagination for template search and validate page/view/sort params at the route boundary
- match template locale filtering by language prefix with an explicit English fallback
- cache the template collection fan-out (TTL + in-flight dedupe), lower per-collection limit and batch requests
- reset the forced search mode atom when the plugin catalog mounts
- clear stale search suggestions during the debounce window
- let the trending Play control override focus/hover pause reasons
- honor prefers-reduced-motion on the eagerly playing first-collection carousel
- give the Creator Center link an accessible, localized name
- replace the nested main landmark on the templates page with a div
- localize banner read-more actions and backfill marketplace.home keys across all 24 locales

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-15 14:40:03 +08:00
CodingOnStar
d825dd75dc Merge remote-tracking branch 'origin/main' into feat/marketplace-homepage-redesign
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	oxlint-suppressions.json
#	web/app/account/oauth/authorize/__tests__/page.spec.tsx
#	web/app/account/oauth/authorize/page.tsx
#	web/app/components/plugins/marketplace/list/__tests__/list-with-collection.spec.tsx
2026-08-15 13:44:00 +08:00
CodingOnStar
f033532d7b fix(web): address marketplace review feedback and clean up login code
Resolve the review comments on the marketplace homepage: restore list SSR
hydration with an eager first collection, make the loading detail iframe
inert, drop stale search suggestions, add carousel pause controls and
off-screen a11y handling, widen the trending pause boundary, bind initial
banners to the server locale, and remove nested interactive links plus dead
CSS scan config. Refactor the marketplace silent-authorize hook to be
self-contained, extract shared OAuth URL helpers, and delete the unused
allowedAbsoluteOrigins option. Serve the performance benchmark from a frozen
local marketplace API stub and gate it with a dedicated Chromium CI lane.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 18:03:10 +08:00
CodingOnStar
cade438670 fix(web): unblock marketplace homepage CI
Stop exporting unused marketplace helpers and remove the leftover
Trigger plugin icon. Assert the card icon through its img src instead
of a background-image style the marketplace variant no longer uses.
2026-08-14 13:44:25 +08:00
CodingOnStar
14e26b3768 fix(web): make the blog banner fully clickable
Wrap the entire blog banner slide in the destination link so the
title, body, artwork, and Read more label all open the same URL.
2026-08-14 13:21:43 +08:00
yyh
0f63a05d04
chore: upgrade Vite+ to 0.2.9 (#40762) 2026-08-14 04:42:28 +00:00
yyh
f8e05ebfc0
docs(web): consolidate maintainer guidance (#40758) 2026-08-14 03:40:05 +00:00
CodingOnStar
f1d8d00ab7 fix(web): align marketplace hero decoration icons with Figma
Use the design-frame coordinates for Dropbox, DuckDuckGo, GitHub, and Gmail.
2026-08-14 10:53:31 +08:00
CodingOnStar
889bd18da4 Merge branch 'feat/marketplace-homepage-redesign' into feat/creator-profile-home 2026-08-14 10:34:47 +08:00
autofix-ci[bot]
8dcd7073de
[autofix.ci] apply automated fixes 2026-08-14 02:34:31 +00:00
CodingOnStar
83805282fd Merge branch 'main' into feat/marketplace-homepage-redesign 2026-08-14 10:30:13 +08:00
Jingyi
e3b3165e9a
feat(web): embed marketplace in integration categories (#40744) 2026-08-14 01:55:51 +00:00
yyh
1cf8db8395
refactor(web): clarify model selector trigger ownership (#40732)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-14 01:03:50 +00:00
CodingOnStar
d69ba7a8ee feat(web): add marketplace search decoration icons
Place Dropbox, DuckDuckGo, GitHub, and Gmail marks around the marketplace home search field.
2026-08-13 23:14:39 +08:00
CodingOnStar
47d3663989 fix: remove marketplace detail dialog gradient 2026-08-13 14:52:43 +08:00
CodingOnStar
eac3d01f78 fix(web): match Creator Center dark text 2026-08-13 14:52:43 +08:00