Commit Graph

10 Commits

Author SHA1 Message Date
Bas van Rossem
4de0b1cb2a feat(web): weapon templates for Add Weapon modal
Add 19 weapon templates from Appendix A (9 mundane + 10 spellcannons)
with pre-filled damage, range, and notes. Template picker in Add Weapon
modal is grouped by type (Mundane / Spellcannons). Selecting a template
auto-fills all fields; "Custom" option for manual entry. Also adds
notes field and two-column form layout to the modal.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 17:26:04 +01:00
Bas van Rossem
86134a34bb fix(web): use "max N" label and center combat stat cards
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 17:23:57 +01:00
Bas van Rossem
836a5d7a49 refactor(web): split dashboard into combat stats and reference stats
Hull and Armor current are always editable with steppers at the top
of the dashboard — these are the values that change every combat round.

All other stats (AC, Con, Speed, Class, Size, Max values, Crew,
Hardpoints, Cargo) are shown in a compact read-only reference grid
with an Edit button to toggle into editable mode when needed.

Removes separate MobilitySection and CrewSection in favor of a unified
ShipStatsSection that combines all reference stats in one place.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 17:22:42 +01:00
Bas van Rossem
642f1f70e8 feat: ship templates, crew fields, and read/edit dashboard
- Add crew_req, hardpoints, cargo fields (DB migration + server + types)
- Add 10 ship templates from Appendix A (Caravel, Galleon, Sloop, etc.)
- Enhanced CreateShipModal with template picker that auto-fills all stats
- Dashboard defaults to compact read-only view; Edit button toggles to
  editable steppers/dropdowns
- New CrewSection showing crew required, hardpoints, and cargo
- Two-column form layout in create modal for better use of space
- Fix .gitignore data/ pattern to only match root-level data directory

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 17:16:44 +01:00
Bas van Rossem
275137cdbb feat(web): make stepper values tappable for direct number input
Tap the number to type a value directly instead of clicking +/- repeatedly.
Input auto-selects, commits on Enter/blur, cancels on Escape, and clamps
to min/max constraints.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:41:35 +01:00
Bas van Rossem
b3a55d9fac feat(web): add reusable ConfirmDialog and polish delete interactions
Extracts reusable ConfirmDialog component, refactors ship delete to show
the ship name in confirmation, and improves interaction consistency.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:27:43 +01:00
Bas van Rossem
1ef2f6338c feat(web): implement weapons section with add/edit/detail modals and notes
Adds WeaponCard with inline ammo stepper and status dropdown, AddWeaponModal,
WeaponDetailModal with full editing, and debounced NotesSection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:26:47 +01:00
Bas van Rossem
88e9bf7f05 feat(web): implement Ship Dashboard with vitals and mobility sections
Adds NumericStepper and EnumDropdown UI components, VitalsSection (hull/armor/AC/con),
MobilitySection (speed/maneuver class/size), with debounced real-time updates.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:24:53 +01:00
Bas van Rossem
130cffd3c1 feat(web): implement Ship List page with create and delete modals
Adds ship cards with navigation, create ship modal with initial stats,
inline delete confirmation, and supporting CSS for modals and cards.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:23:00 +01:00
Bas van Rossem
5f275bfcc7 feat(web): set up React app shell with routing and layout
Adds react-router-dom with routes for ship list, dashboard, and rules pages.
Includes TopBar with navigation and mobile-first dark theme CSS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:20:22 +01:00