Skip to content

Commit 82dde54

Browse files
committed
feat: Add WelcomeView component and guided tour steps
Assisted-by: Claude Opus 4.7
1 parent 186efe7 commit 82dde54

9 files changed

Lines changed: 1965 additions & 46 deletions

File tree

‎src/App.tsx‎

Lines changed: 284 additions & 43 deletions
Large diffs are not rendered by default.

‎src/actions/registry.ts‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import { getHelpIconUrl } from "../assets/helpIcons";
1616
import { getIoIconUrl } from "../assets/ioIcons";
1717
import { getRoiIconUrl } from "../assets/roiIcons";
1818
import { getRootIconUrl } from "../assets/rootIcons";
19+
import datalabIconUrl from "../assets/DataLab.svg?url";
1920
import type { ActionDescriptor, ActionState } from "./types";
2021

2122
/** Callbacks needed to build the static (non-feature) actions. */
@@ -181,18 +182,37 @@ export interface HelpActionCallbacks {
181182
onShowShortcuts: () => void;
182183
onShowConsole: () => void;
183184
onOpenUserGuide: () => void;
185+
onOpenWelcome: () => void;
186+
onStartTour: () => void;
184187
}
185188

186189
/** Wire Help / "?" menu actions. */
187190
export function buildHelpActions(cb: HelpActionCallbacks): ActionDescriptor[] {
188191
// Help entries are always available (no runtime dependency).
189192
const always = () => true;
190193
return [
194+
{
195+
id: "help.welcome",
196+
label: "Welcome",
197+
menuPath: "Help/Welcome",
198+
iconUrl: datalabIconUrl,
199+
enabled: always,
200+
run: cb.onOpenWelcome,
201+
},
202+
{
203+
id: "help.tour",
204+
label: "Take the guided tour",
205+
menuPath: "Help/Take the guided tour",
206+
iconUrl: getHelpIconUrl("libre-gui-questions.svg"),
207+
enabled: always,
208+
run: cb.onStartTour,
209+
},
191210
{
192211
id: "help.userguide",
193212
label: "User guide",
194213
menuPath: "Help/User guide",
195214
iconUrl: getHelpIconUrl("libre-gui-help.svg"),
215+
beginGroup: true,
196216
enabled: always,
197217
run: cb.onOpenUserGuide,
198218
},

‎src/assets/DataLab-Banner2.svg‎

Lines changed: 111 additions & 0 deletions
Loading

‎src/components/MenuBar.tsx‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ export function MenuBar(props: Props) {
7474
key={node.label}
7575
className={"menubar-top" + (isOpen ? " open" : "")}
7676
role="menuitem"
77+
data-menu-top={node.label}
7778
aria-haspopup="true"
7879
aria-expanded={isOpen}
7980
onClick={(event) => {

0 commit comments

Comments
 (0)