feat(web): wire gerbview tool (file-less launch, wizard-skip, UI)
Register the newly WASM-ported Gerber Viewer in the web app the same way as
the other tools — registry entries only, no UI edits (ProjectDetailPage renders
launch links generically from FILELESS_TOOLS).
GERBVIEW_FRAME opens gerber/drill files through its own File→Open UI and projects
carry no gerber files to auto-open, so it's treated as file-less (boot standalone),
mirroring symbol_editor. It boots through single_top.cpp's STARTWIZARD, so it seeds
config to skip the first-run wizard (TOOL_NEEDS_CONFIG_SEED) and gets a
/usr/bin/gerbview argv0.
- contract: add "gerbview" to TOOLS, TOOL_LABELS ("Gerber Viewer"), FILELESS_TOOLS
- frontend: add gerbview to TOOL_ARGV0 and TOOL_NEEDS_CONFIG_SEED
- e2e: add file-less gerbview case to tools-open.spec.ts (title "Gerber Viewer",
canvas painted, wizard-free, no WASM abort)
Verified in-browser via npm run test:web: gerbview boots wizard-free with the
viewer chrome (toolbars + layers manager), 0 console errors.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
4467bcd2c4
commit
03fbd73e99
3 changed files with 8 additions and 0 deletions
|
|
@ -26,6 +26,7 @@ const CASES: Record<string, ToolCase> = {
|
|||
pl_editor: { route: 'pl_editor/demo.kicad_wks', titleRe: /demo — Drawing Sheet Editor/i, fileless: false },
|
||||
calculator: { route: 'calculator/', titleRe: /Calculator Tools/i, fileless: true },
|
||||
symbol_editor: { route: 'symbol_editor/', titleRe: /Symbol Editor/i, fileless: true },
|
||||
gerbview: { route: 'gerbview/', titleRe: /Gerber Viewer/i, fileless: true },
|
||||
};
|
||||
|
||||
/** Console text that must never appear (wizard-crash + URL-regex modal markers). */
|
||||
|
|
|
|||
Loading…
Reference in a new issue