Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

"Add a slot" adds an empty row without opening it

Aperta
#596 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
react, typescript
Ambito
frontend

Direzione di ricerca

Start with BuildWysiwyg.tsx and src/components/build-shared/useBuildState.ts, then read how Duplicate opens a slot and uses focusRequest. Update the Add a slot flow and pin its behavior in BuildWysiwyg.test.tsx; adjust tests/e2e/help/create-and-publish-a-signup.spec.ts and the help article. Done when the new slot opens with focus in its first empty field in flat and grouped lists, the walkthrough passes, and the listed checks pass.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement pipeline:proposed pipeline:ux

Needs your OK: this changes what Add a slot does on the Build tab: the new slot opens in the editor, with focus in its first empty field. Swap pipeline:proposed for pipeline:ready to have it built.

What happens

On the Build tab, Add a slot (WysiwygGroup in src/components/build-wysiwyg/WysiwygGroup.tsx) calls handleAddSlot in BuildWysiwyg.tsx, which calls addRow in src/components/build-shared/useBuildState.ts. The new slot appears as a closed, empty row, and nothing opens. The organizer has to find it and choose it before typing anything. With the keyboard, focus stays on Add a slot, below the new row.

Duplicate works the other way since #557: the copy opens in the editor with focus in its first field. Two buttons that both make a slot leave the organizer in different places. A new slot left closed and empty is also how "Untitled slot" ends up on a published page.

To see it: create a signup by hand, fill in its first slot, choose Done, then choose Add a slot.

Fix, in outline

  • Open the new slot. Have addRow resolve to the new slot's id, and have handleAddSlot open that slot's editor and close any other, as Duplicate does with its copy. #580 already makes addRow resolve to the id, and its openSlot adds a slot and opens it for Publish's check; use that path.
  • Put focus in the first empty field. A slot added under a group already has the group's value (its day, say), so focus skips that box and lands on the first one without a value. #580's focusRequest takes a field for this.
  • Help page. In src/help/articles/create-and-publish-a-signup.tsx, "For the next slot, choose Add a slot and fill it in the same way." still holds. Add that the new slot opens, ready to fill in.

Watch for

  • The help walkthrough tests/e2e/help/create-and-publish-a-signup.spec.ts chooses Add a slot and then expects two "Edit slot" rows. With the new slot open, one of them is an editor. Update it, and re-run pnpm help:screenshots if a screenshot changes.
  • A refused add opens nothing and keeps its error on the rail, as now.
  • Add date, on a signup grouped by a date field, adds a slot under a new "Set a date" heading. Leave it as it is (see Choices).
  • Overlap with #580 and #581, which change BuildWysiwyg.tsx and useBuildState.ts, and with #595 (Escape and focus in the slot editor).
  • CHANGELOG entry.

Choices this makes

  • Add a slot opens the new slot. Default: yes. It matches Duplicate, and the organizer can type into it straight away.
  • Where focus goes: the first field without a value. Default: the first empty field, so a slot added under a day starts at What, not at the date it already has.
  • Add date stays as it is. Default: unchanged. Its slot sits under a "Set a date" heading, and setting that heading is the next step.

Order

After #580, which changes addRow to resolve to the new slot's id and adds openSlot and focusRequest to BuildWysiwyg.tsx. Built on main first, this would make the same changes twice.

Done when

  • Choosing Add a slot opens the new slot's editor, closes any other, and puts focus in its first empty field, in a flat list and under a group.
  • A unit test in BuildWysiwyg.test.tsx pins it, and the help walkthrough passes with the new step.
  • pnpm lint && pnpm typecheck && pnpm knip && pnpm test pass.

Found by the UX walkthrough (scenario O4) on 2026-10-24, and checked against the code on main at 4ed27a9.


Generated by Claude Code

Lingua principale
TypeScript
Stelle
19
Fork
4
Merge medio
21h 3m
PR unite (30g)
176

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di richshaw/OpenSignup

Tutte le issue di richshaw/OpenSignup

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.