Commit graph

870 commits

Author SHA1 Message Date
89705975ab raid detail: add IDs section, use centralized images 2026-01-08 00:39:44 -08:00
76ef2e575b fix raid form saving + add IDs section 2026-01-08 00:39:39 -08:00
5bc1869715 centralize raid image urls with env-aware paths 2026-01-08 00:39:35 -08:00
bf921ada94 Merge branch 'svelte-main' of github.com:jedmund/hensei-web into svelte-main 2026-01-08 00:38:47 -08:00
b4608846f5
Add game_id to raid pages (#457)
Adds game_id field to raid database pages.

Changes:
- Updated TypeScript types for Raid
- Added game_id display on raid detail page
- Added game_id input on raid edit page
- Added game_id input on raid create page
2026-01-07 23:58:59 -08:00
f905dc99a9 reorganize party edit sidebar and refactor YouTubeUrlInput
- move description above sharing section
- move raid selector into top fields section, remove battle section
- add edge-to-edge dividers between sections
- add Details section title
- refactor YouTubeUrlInput to use Input component internally
2026-01-06 02:03:38 -08:00
2444fcf92a hide gradient fade on short descriptions 2026-01-06 01:28:42 -08:00
d72a1f8738 fix spacing on /teams/new to match party detail page 2026-01-06 01:20:16 -08:00
30a1c2dc65 fix sidebar disappearing on spa navigation to /teams/new 2026-01-06 01:12:39 -08:00
59db1ec054 fix empty summon placeholder sizing with transparent svg 2026-01-06 00:58:54 -08:00
77949edd9d use aws cdn for picker images 2026-01-06 00:24:36 -08:00
505f209fae fix DetailRow styling for form controls 2026-01-05 02:50:20 -08:00
f56272c51c fix visibility select and crew share toggle in party edit 2026-01-05 02:50:20 -08:00
b88fbf60f6 use numeric visibility values to match rails api 2026-01-05 02:50:20 -08:00
234b7809fe fix: remove padding from page on jobs database 2026-01-05 02:46:59 -08:00
b5d30997b8
Party sharing frontend (#455)
## Summary
- Add visibility dropdown (Public/Private/Unlisted) to party edit
sidebar
- Add "Share with Crew" switch for crew members
- Implement /crew/teams page showing parties shared with crew
- Add API layer for party shares and crew shared parties

## Test plan
- [ ] Open party settings, verify visibility dropdown appears
- [ ] For users in a crew, verify "Share with Crew" switch appears
- [ ] Toggle crew share on/off, verify it persists
- [ ] Navigate to /crew/teams, verify shared parties load
- [ ] Test infinite scroll pagination on crew teams page
2026-01-05 02:39:10 -08:00
a6d77a4463
search result item labels (#456)
## Summary
- show element and proficiency labels below item name in search results
- remove element text from right side of row
- update hover to use background color instead of border
- clean up unused filter CSS

## Type changes
- update proficiency type to `number | number[]` to handle both weapons
(single) and characters (array)
2026-01-05 02:38:45 -08:00
5edb225d2d
Add picker components and refine search filters (#454)
## Summary
- Add Element, Rarity, and Proficiency picker components
- Refactor SearchContent filter layout with inline clear links
- Add theme-aware CSS variables for picker hover/selected states
- Add series filter support to search queries

## New Components
- **ElementPicker** - segmented/dropdown with element-specific colors
- **RarityPicker** - segmented/dropdown for R/SR/SSR
- **ProficiencyPicker** - segmented/dropdown for weapon types

## Picker Features
- Single and multi-select modes
- Auto-responsive: segmented on desktop, dropdown on mobile
- Manual mode override via `mode` prop
- Optional "Any" element for ElementPicker
- Contained/default style variants
- Tooltips on hover in segmented mode

## SearchContent Changes
- Rarity and Element filters on same row with space-between
- Clear links in filter headers (not buttons)
- Flexbox layout with consistent gaps
- Series dropdown filter
2026-01-04 20:56:04 -08:00
0fbdd24491
Job accessories and DatabaseGridWithProvider for jobs (#453)
## Summary

Add job accessories feature and migrate jobs list to
DatabaseGridWithProvider pattern:

- Jobs list now uses DatabaseGridWithProvider (consistent with
weapons/characters/summons)
- Segmented control to switch between jobs and accessories views
- Full CRUD pages for job accessories (detail, edit, new)
- Job creation page for editors
- Navigation dropdown for jobs section

## Changes

### DatabaseGridWithProvider extension
- Extended to support `jobs` resource
- Added `searchJobs` method to search adapter
- Job-specific filters (row, proficiency, master_level, etc.)
- Collection filters hidden for jobs (no element/rarity/series)

### Job grid cells
- `JobIconCell` - portrait thumbnail
- `JobTierCell` - row tier badge
- `JobProficienciesCell` - weapon proficiency icons
- `JobFeaturesCell` - master/ultimate/accessory badges

### Job accessories
- Detail page with job info
- Edit/new pages for editors
- Type utilities (Shield/Manatura)

### Navigation
- Dropdown with "New job" and "New job accessory" options

## Dependencies

Requires hensei-api#206 for backend endpoints.

## Test plan

- [ ] Jobs list loads with DatabaseGridWithProvider
- [ ] Segmented control switches between jobs/accessories
- [ ] Job accessory detail/edit/new pages work
- [ ] Job creation page works for editors
- [ ] Navigation dropdown appears on job pages
2026-01-04 14:44:12 -08:00
90e5ded942
add maxExorcismLevel to weapons (#452)
## Summary
- add `maxExorcismLevel` to Weapon type
- add field to WeaponStatsSection in database pages (with min=1
validation)
- include in new/edit/import page payloads
- make BefoulmentSelect exorcism options dynamic (0 to maxExorcismLevel)
- pass maxExorcismLevel to BefoulmentSelect from edit panes

## Test plan
- [ ] verify maxExorcismLevel field appears in weapon stats section
- [ ] verify min=1 validation works
- [ ] verify exorcism dropdown shows correct options based on weapon's
maxExorcismLevel
2026-01-04 14:43:53 -08:00
36e3b39a20
remove suggestion UI from batch import (#451)
## Summary
Removes the suggestion badge/accept/dismiss UI from batch import pages.
Form fields are still pre-populated with parsed wiki data, but users no
longer see sparkle icons or have to accept/dismiss individual
suggestions.

Changes:
- Rename type aliases: `*Suggestions` → `ParsedData*`
- Delete `SuggestionBadge.svelte` and `SuggestionDetailItem.svelte`
- Remove suggestion props from all section components
- Simplify import pages by removing dismissed state tracking and
handlers

**Requires:** jedmund/hensei-api#204

## Test plan
- [ ] Test batch import for characters, weapons, and summons
- [ ] Verify form fields still pre-populate from wiki data
- [ ] Verify edit pages still work (they share section components)
2026-01-04 14:41:27 -08:00
d079070ae8
import page improvements (#450)
## Summary
- add suggestion support to metadata sections for name fields
- remove duplicate basic info sections from import pages
- auto-generate wikiJa and kamigame URLs from name (jp) field

## Test plan
- [ ] test batch import flow still works
- [ ] verify wikiJa/kamigame auto-populate when typing japanese name
- [ ] check metadata sections show suggestion badges
2026-01-04 14:28:30 -08:00
23527c727e add weapon series to new dropdown with separator 2026-01-01 20:40:08 -08:00
7e6f5b5282 add new weapon series form page 2026-01-01 20:40:08 -08:00
1b00889e81
weapon series detail/edit pages (#449)
## Summary
- add detail and edit pages for weapon series at
`/database/series/weapons/[slug]`
- fix series table navigation to use slug instead of uuid
- add `?view=series` URL param for bookmarkable series view
- remove redundant `/database/series` page
- rename augment type `none` → `no_augment` for consistency

## Test plan
- [ ] navigate to /database/weapons, toggle to series view
- [ ] verify URL updates to ?view=series
- [ ] click a series row, should go to detail page
- [ ] back button returns to series view
- [ ] edit page saves correctly
2025-12-31 23:55:03 -08:00
839365a5a1
Add weapon stat modifier UI for AX skills and befoulments (#448)
## Summary
- Add weapon stat modifier types and API layer
- Rewrite AX skill components to fetch modifiers from API instead of
local data
- Add befoulment select component for weapon editing
- Update weapon edit views to use new modifier system
- Remove old hardcoded ax skill definitions

This is the frontend counterpart to the API weapon stat modifiers
feature. AX skills and befoulments are now fetched from the API instead
of being hardcoded in the frontend.

## Test plan
- [ ] Edit a weapon with AX skills, verify dropdown shows correct
options
- [ ] Add/remove AX skills on a weapon, verify saves correctly
- [ ] Add befoulment to a weapon, verify UI and save work
- [ ] Verify existing weapons with AX skills display correctly
2025-12-31 22:21:22 -08:00
5d7e8334f9
orphaned item indicators (#447)
shows when collection items got nuked

- red badge + dimmed look on orphaned weapons/summons/characters
- amber banner at party level if anything's orphaned
- types updated for `orphaned` field
2025-12-23 22:42:20 -08:00
d0592935be replace home button hover expand with tooltip 2025-12-23 15:03:15 -08:00
a234004303 tweak home button size and padding 2025-12-23 14:58:09 -08:00
3cfb1e77ee use home icon for database back-to-site button 2025-12-23 14:41:22 -08:00
27e9b959ab match grid header/footer padding, use Button component for pagination 2025-12-23 14:24:03 -08:00
3f2f6abefa preserve list filters when navigating back from detail pages 2025-12-23 13:55:04 -08:00
469cf66ad4 clean up duplicate border-radius/box-shadow in detail components 2025-12-23 13:41:54 -08:00
2898740cb2 add DatabasePageHeader to entity detail/edit pages 2025-12-23 13:41:50 -08:00
5c2203af42 remove unused border-color css var, format 2025-12-23 12:59:48 -08:00
268ece6e96 add View in Database menu item for admins 2025-12-23 12:59:39 -08:00
a6f7d92b99 fix database edit not refreshing data after save 2025-12-23 12:59:31 -08:00
4d94137bbd fix character series filter field name mismatch 2025-12-23 12:57:17 -08:00
ac583c3382 summon grid: remove labels, align grid rows with main/friend summons 2025-12-22 23:32:50 -08:00
9a34e19d48 remove summon badges, rename subaura label to "Subaura Summons" 2025-12-22 23:32:36 -08:00
4129a43103 summon rep: show subauras + friend summon, 3x2 grid layout 2025-12-22 23:21:57 -08:00
b710f81d94 fix character rep sizing in segmented control, add forced gap between squares 2025-12-22 23:01:45 -08:00
59f79262d5 rework character rep layout: 3 portraits + 2 stacked squares 2025-12-22 20:16:00 -08:00
db39b07414 remove forge order field, now auto-computed by api 2025-12-22 19:53:42 -08:00
da189e1fa4 fix weapon typeahead width in detail items 2025-12-22 19:53:22 -08:00
97e122c45d color filter badge by element when single element selected 2025-12-22 16:26:12 -08:00
0fef8a69e4 fix select typeahead highlighting
add label prop to items for open-state typeahead, use explicit global selector for data-highlighted
2025-12-22 16:26:04 -08:00
b1c88ac483 move Clear button to right side of filters row 2025-12-22 14:00:32 -08:00
30c2539766 move database filters to collapsible row with toggle button
- add Filters button next to search input
- show filter count badge when filters are active
- auto-expand filters when URL has filter params
2025-12-22 13:58:25 -08:00
ce495a9145 feat: persist database filters in URL query params
- Add filterParams.ts with human-readable URL mappings
- Parse filters from URL on page load
- Update URL when filters/search/page change
- Support element, rarity, proficiency, season, series, search
- Handle weapon series slug <-> UUID mapping
2025-12-22 13:52:22 -08:00