1
0
Fork 0
Commit graph

29 commits

Author SHA1 Message Date
d583fe6de6 feat(logistics): add shipment action controls to shipment detail page 2026-08-02 02:04:51 -04:00
6cce6116b8 refactor(sidebar): use next/link for client-side navigation 2026-08-02 02:04:12 -04:00
01f4820f2e feat(logistics): enforce structure storage rules on deposits, transfers, and shipments 2026-08-02 02:04:07 -04:00
a9af0b5246 feat(auth): add frontend login page and guest landing gate 2026-08-02 02:04:02 -04:00
d3afc6a0c1 feat(realtime): add game-tick SSE notification pipeline 2026-08-02 02:03:56 -04:00
75a1c8ed9a feat(logistics): add shipments collection with dispatch, transit, and arrival processing 2026-08-02 02:03:50 -04:00
827a36e901 fix: update grid cell and item component styling
- Increase grid cell border opacity from 30% to 60% for better visibility
- Change item alignment from items-center to items-start for better layout
2026-07-31 20:04:44 -04:00
9c89831f20 refactor: update sidebar navigation with new sections
- Add Intelligence section with Campaigns, Missions, and Factions links
- Add Roster link to main navigation
- Update Logistics section with Resources and Vehicles links
- Update XPDisplay prop from xp to xpLevel for level resolution
- Remove commented-out navigation items
2026-07-31 20:04:28 -04:00
f16b76a198 feat: add profile page with service record
- Add profile page at /profile/[username] showing user service record
- Update NavUser dropdown to link to Service Record instead of Upgrade to Pro
- Remove unused Billing menu item from user dropdown
2026-07-31 20:03:03 -04:00
f645eb16e5 feat: add roster page with member management
- Add roster page displaying unit members with rank and assignment info
- Add RosterView component with sortable member table
2026-07-31 20:02:43 -04:00
3797cbcc03 feat: add logistics pages for resources and vehicles
- Add resources list page with resource cards and detail pages
- Add vehicles list page with vehicle cards, filters, and detail pages
- Add ResourceCard, VehicleCard, and VehicleFilters components
- Widen structure detail page max-width from 4xl to 7xl
2026-07-31 20:02:25 -04:00
28a148c06f feat: add intelligence section with campaigns, missions, and factions
- Add campaigns list page with campaign cards
- Add missions list page with filtering and mission cards
- Add factions list page with faction cards
- Add mission detail components: briefing, comms, factions, logistics, objectives, roles
- Add MissionFilters for status and type filtering
2026-07-31 20:02:07 -04:00
25c088aebf feat: add operations dashboard with mission briefing and stats
- Redesign homepage as authenticated operations dashboard
- Add ProfileSummary, MissionBriefing, RecentEvents, QuickStats components
- Add UpcomingMissions and ActiveCampaigns sidebar widgets
- Redirect /dashboard to / (homepage is now the dashboard)
- Show welcome screen with login link for unauthenticated users
2026-07-31 20:01:50 -04:00
98e171d088 feat: add XP level system with resolveLevel utility
- Add resolveLevel utility to compute level name, progress, and XP thresholds
- Add seedExperience script for populating experience levels
- Update XPDisplay to show level name, progress bar, and percentage to next level
- Update layout to fetch experience levels and pass resolved XP data to sidebar
2026-07-31 20:01:23 -04:00
dfbe0cb6c5 feat: add EventLedger UI component with live updates and filtering
- Client-side EventLedger component that queries game-event-logs REST API
  for a given structureId and renders a scrollable feed
- Actor name prefix with 'You' substitution for the current user, messages
  lowercased to fit sentence syntax
- Multi-select dropdown filter (shadcn DropdownMenuCheckboxItem) for event
  types with PascalCase formatting
- Narrative/GM events (system: false) styled with amber accent + book icon
- Smart refresh: smooth re-fetch without clearing existing entries, 30s
  polling interval, and instant refreshKey trigger from parent actions
2026-07-28 16:08:13 -04:00
59769076ff feat: add GameEventLogs collection and event emission infrastructure
- New game-event-logs collection with timestamp, type, message, actor,
  structure, targetCollection/targetId, and data (JSON) fields
- EventTypes constants registry for modular event category management
- emitGameEvent() utility for emitting events from server actions and hooks
- Register collection in Payload config
- Document event log system architecture in AGENTS.md
2026-07-28 16:08:04 -04:00
d88fe04b56 fix(grid): prevent split collision by including source in overlap check
Server action: remove 'other.id === entryId' exclusion from the
split overlap scan so the source item's own footprint is treated
as occupied, forcing the split to find a different position.

UI: disable the split button via findEmptySpot check when no room
exists for the split stack, preventing a failed action.
2026-07-28 14:51:56 -04:00
256e5bd68a fix: use arbitrary box-shadow for hover inset effect 2026-07-28 14:47:47 -04:00
f1871ec889 feat(ui): add hover scale and shadow to structure cards 2026-07-28 14:37:24 -04:00
a456c8a246 refactor(nav): replace Storage page with Structures list at /logistics
- Move storage overview from /logistics/storage to /logistics root
- Rename page heading and sidebar label from Storage to Structures
- Update back link on structure detail page
- Remove old /logistics/storage route
2026-07-28 14:23:04 -04:00
01ac20f44f fix(ui): add router.refresh after storage mutations, pluralize labels
ManageStorageDialog now calls router.refresh() after deposit,
withdraw, and transfer so the grid view reflects changes.
Await fetchData() before refreshing.

Resource labels now use pluralize() for correct unit display
(e.g. "1 liter" vs "3 liters").
2026-07-28 14:03:43 -04:00
9175b103c2 feat(grid): add drag-and-drop grid UI components
GridCell — droppable cell with hover/valid/invalid state
GridItem — draggable item with grip icon, visual feedback
GridToolbar — view toggle, auto-arrange, selected-item actions
InventoryGrid — DndContext wiring, R-key rotation, ResizeObserver
  cell sizing, drag overlay
StructureStorageView — client wrapper with grid/list mode toggle,
  action handlers, resource-to-GridItem mapping
2026-07-28 14:03:34 -04:00
866a470750 feat: cap Amount input max to stored amount and remaining capacity
- Withdraw/Transfer tabs: max = currently stored amount of selected resource
- Deposit tab: max = remaining capacity divided by resource massPerUnit
- Amount auto-clamps when resource selection changes
- Show 'Max: X' hint below each amount input
2026-07-27 19:34:47 -04:00
b719f25ff2 feat: use resource unitOfMeasure instead of hardcoded kg, add capacity preview to manage dialog
- Replace hardcoded 'kg' labels with resource.unitOfMeasure in ResourceList
- Rename 'Max Mass' to 'Max Capacity' on structure detail page
- Add dynamic capacity preview bar to ManageStorageDialog deposit/withdraw/transfer tabs
- Add baseline capacity display above tabs in manage dialog
- Clean up unused imports across storage components
2026-07-27 19:27:53 -04:00
12d276d44d feat: implement storage system with capacity tracking and resource management
- Rebuild /logistics/storage overview with capacity bars, filters, and structure cards
- Add /logistics/structures/[id] detail page with resource list, storage rules, upkeep
- Add server actions for deposit, withdraw, and transfer of resources
- Add ManageStorageDialog with deposit/withdraw/transfer tabs
- Add capacity bar component with color-coded utilization
- Add StorageGrid, StructureCard, StorageFilters, ResourceList, StorageRules components
- Add logistics utility functions for mass calculations
- Install shadcn dialog, select, tabs, label components
2026-07-27 19:19:48 -04:00
2f00722f30 chore: clean up unused imports in AppSidebar 2026-01-09 01:26:58 -05:00
d04630ca65 feat: add XP display component and experience collection, integrate user XP in layout 2026-01-09 01:26:40 -05:00
def59ee1fb fix: move Dashboard to frontend, pin dependencies in bun.lock to specific versions for stability 2025-12-17 15:15:07 -05:00
dd6bcd30dc feat: switch to Bun, add fonts and styling, update components and UI, add basic front-end
- Added Google Fonts import for `Geist` and `Geist Mono` to `styles.css`.
- Aligned, cleaned styling variables and properties consistently.
- Updated `seedUsers.ts` to include a developer role.
- Introduced `bun.lock` file for dependency management.
2025-12-16 23:26:52 -05:00