Commit Graph
8 Commits
Author SHA1 Message Date
john-okeefe 45dd783964 refactor(nav): migrate header, dashboard chrome and discovery UI to v3
- Header/MobileBar: MenuRoot/Positioner/Content + Portal + Tooltip
  shims, ghost icon buttons, 2rem padded user/settings menus, hover
  token gray.700; MobileBar drawer API (open/onOpenChange/finalFocusEl)
- FilterBar/ActiveFilters: DrawerRoot/CloseTrigger, Divider -> Separator,
  Tag shim, FixedSelect with typed handlers and width-preserving
  chakraStyles, blue active-filter pills untouched
- Pagination: NumberInputRoot/Field + NativeSelect shims, first/last
  arrows back to double chevrons (LuChevronsLeft/Right), single chevrons
  kept for prev/next
- Search/SearchModal, Home, NoGames, LoadingModal, DashboardLoadingModal:
  Dialog/Toaster-era props, gap/align/textAlign renames; App.test target
  content updated accordingly
2026-09-06 10:30:21 -04:00
john-okeefe 7bdf42ac07 refactor(forms): port game form to Chakra v3 with v4-style selects
- New FixedSelect wrapper over chakra-react-select v6 restoring the v4
  look everywhere: single gray.500 control border, flush addon chevron
  zone with rounded inner corners, hidden indicator separator, v4 option
  padding/type scale, gray subtle pills, brighter unselected hover
- GameForm: FormControl/InputGroup -> Field/Flex, Button
  colorScheme/isLoading -> colorPalette/loading, Stack spacing -> gap,
  Container container.md -> 768px, Steam Scrape row rebuilt as nowrap
  Flex, select wrappers de-bordered (control owns the border)
- formFields: Field/Checkbox/Switch shims in, required asterisk dropped
  to match legacy labels, Select/Creatable wrappers de-bordered,
  TS-typed select callbacks
2026-09-06 10:29:41 -04:00
john-okeefe 4574dfb8f1 feat(theme): migrate to Chakra v3 system with v2 look restoration
- Replace extendTheme/ColorModeScript with createSystem Provider +
  Toaster shims (components/ui, provider, color-mode) and next-themes;
  index.tsx renders Provider, App reads useColorMode from the shim and
  clears both chakra and legacy theme storage keys on preference change
- theme.tsx restores the v2 identity on v3 primitives: v2 gray/blue/
  green/red scales, v2 solid/contrast fills, v2 text-per-size for
  button/input/native-select/tag, v2 input heights, v2 heading scale
  (xl->4xl etc), v2 switch track/thumb, brighter link underlines
  (currentColor/60), +1px tag top padding, 17px body base font
- Default new-user theme light -> dark to match the established dark UI
- App.test rewritten around Provider + MemoryRouter + Home (old CRA
  'learn react' assertion no longer applies)
2026-09-06 10:29:04 -04:00
john-okeefe 050e72bc8a chore(deps): upgrade to React 19, Chakra UI v3, router v7 and modern tooling
- React 18 -> 19 (react, react-dom, @types), react-router 6 -> 7,
  vite 5 -> 8, typescript 5.5 -> 5.9 with Bundler module resolution,
  esModuleInterop and @/* path alias
- Chakra 2.8 -> 3.37 (+cli), chakra-react-select 4.9 -> 6.1,
  next-themes for color mode; drop @chakra-ui/icons,
  chakra-ui-contextmenu, framer-motion and react-device-detect
- axios, jodit-react, hookform, toast, testing-library, node types
  bumped alongside; bun.lockb regenerated
- web-vitals 4 -> 6: ReportHandler/getCLS/getFID removed, migrate to
  MetricType with onCLS/onINP/onFCP/onLCP/onTTFB
2026-09-06 10:28:30 -04:00
john-okeefe 406c508de0 added docker build script for deploying 2024-09-23 12:26:35 -04:00
john-okeefe af3c779b32 upgraded to router v6 2024-09-12 19:20:26 -04:00
john-okeefe 3af14dee95 moved frontend from monorepo 2024-09-12 15:55:38 -04:00
john-okeefe 0e84e37a74 Initial commit 2024-09-12 15:50:45 -04:00