mirror of
https://github.com/langgenius/dify.git
synced 2026-08-31 04:53:19 +08:00
| .. | ||
| __tests__ | ||
| analytics.ts | ||
| coachmark.tsx | ||
| dropdown-menu.ts | ||
| floating-widget.tsx | ||
| mount.tsx | ||
| README.md | ||
| state.ts | ||
| storage.ts | ||
| target-registry.ts | ||
| tasks.ts | ||
| types.ts | ||
| use-coachmark-position.ts | ||
| use-target-rect.ts | ||
| use-tour-target.ts | ||
Step-by-step Tour
This directory owns the cross-route Step-by-step Tour capability.
state.tsowns the server query graph, the in-memory tour session, and domain commands.storage.tsowns only the persisted shell preference.target-registry.tsowns guide target registration and lookup across route content.mount.tsxcomposes the checklist, coachmarks, navigation, and analytics.coachmark.tsxowns the feature-specific portal, spotlight geometry, pointer blockers, and target interaction policy.- Route consumers resolve only the guide branch and targets that depend on their page data.
Server state remains canonical in the TanStack Query cache. Components consume narrow derived atoms and write-only commands instead of a combined account-state facade.
The checklist uses Dify UI Popover. The coachmark is a deliberate feature-owned exception because ordinary overlay primitives do not model an arbitrary-page spotlight; it is not a reusable overlay primitive.