Skip to content

Shorten the File menu with submenus for Download as / Export / Import - #429

Merged
maboa merged 1 commit into
mainfrom
enhancement/file-menu-submenus
Jul 28, 2026
Merged

Shorten the File menu with submenus for Download as / Export / Import#429
maboa merged 1 commit into
mainfrom
enhancement/file-menu-submenus

Conversation

@maboa

@maboa maboa commented Jul 28, 2026

Copy link
Copy Markdown
Member

Fixes #428.

Problem

The File menu had grown into a long flat list — Upload & Transcribe, Add Transcript, six Download as entries, and six Export / Import entries (plus the appended Local Storage section).

Change

Group the two largest sections into DaisyUI <details> submenus that expand inline (touch-friendly, keyboard-accessible), so the top level collapses to:

  • Upload & Transcribe
  • Add Transcript
  • Download as ›
  • Export / Import ›

Mirrors the Glider native File menu for cross-product consistency. All item ids, download hrefs, modal toggles, and custom elements (<export-json> etc.) are preserved — only the nesting changes — so every action still works and editor-file-menu.js keeps appending Local Storage at the end. Both submenus can be open at once (no exclusive accordion).

Menu width is set inline rather than a Tailwind w-* class: the prebuilt/purged tailwind-min.css only ships width utilities used at build time, so an unbuilt class silently collapses the menu to content width and every item wraps.

Tests

__TEST__/e2e/file-menu-submenus.spec.mjs:

  • submenus present, collapsed by default, every action still reachable;
  • a submenu expands on click and its nested label→modal wiring fires;
  • the menu keeps a real rendered width (guards the purge-collapse).

Full suite green; a11y and dom-hygiene specs unaffected.

…/ Export / Import (#428)

The File menu had grown into a long flat list. Group the two largest sections —
"Download as" (VTT/word-level VTT/SRT/HTML/Interactive/Media) and "Export /
Import" (JSON/Ionosphere/Deepgram/SRT/VTT) — into DaisyUI <details> submenus that
expand inline, so the top level collapses to Upload & Transcribe, Add Transcript,
and the two submenus. Mirrors the Glider native File menu.

All item ids, download hrefs, modal toggles, and custom elements (<export-json>
etc.) are preserved — only the nesting changes — so every action still works and
editor-file-menu.js keeps appending the Local Storage section at the end.

Menu width is set inline (not a Tailwind w-* class): the prebuilt/purged
tailwind-min.css only ships width utilities used at build time, so an unbuilt
class silently collapses the menu to content width and every item wraps.

Adds e2e tests: submenus present and collapsed by default with every action still
reachable, a submenu expands on click and its nested label→modal wiring fires, and
the menu keeps a real rendered width.
@maboa
maboa merged commit 60f356c into main Jul 28, 2026
1 check passed
@maboa
maboa deleted the enhancement/file-menu-submenus branch July 28, 2026 21:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Shorten the File menu using submenus for Download as / Export / Import

1 participant