696d792a8b
auto-populate series from wiki suggestions
2025-12-16 21:12:49 -08:00
52d9591f07
use more import suggestions for weapons/summons
2025-12-16 17:04:52 -08:00
8646a494f4
truncate long names in database cells
2025-12-16 17:04:43 -08:00
4da92fbb31
tweak crew header spacing
2025-12-16 14:54:34 -08:00
10359152a3
remove page padding on crew pages
2025-12-16 14:46:06 -08:00
c875f3cefb
refactor members page, add pending filter tab
2025-12-16 14:45:49 -08:00
5fb2331958
add backHref prop to CrewHeader, fix title alignment
2025-12-16 14:45:32 -08:00
e1d8c92a5b
add phantom claiming modals
2025-12-16 14:45:28 -08:00
32eab5bcae
extract MemberRow and PhantomRow components
2025-12-16 14:45:23 -08:00
07d276e469
pass entity type to buildWikiJaUrl calls
2025-12-16 11:44:00 -08:00
552c73823d
add entity type prefix to buildWikiJaUrl for weapons/summons
2025-12-16 11:44:00 -08:00
321e7585b8
extract CharacterTags component, use in unit and search
2025-12-15 19:51:38 -08:00
d0fc56d00c
hide summer tag when yukata is present
2025-12-15 19:42:03 -08:00
0cf537fbd4
move uncap and transcendence icons to src/assets
2025-12-15 19:39:53 -08:00
a6e87e8d30
add gap to related units layout
2025-12-15 19:27:57 -08:00
d5a2d4e4c8
add element tag to related characters section
2025-12-15 19:23:04 -08:00
cde15428da
add element styling to link buttons on db detail pages
2025-12-15 19:12:28 -08:00
2ace9590ab
fix external link URLs in db detail pages
2025-12-15 18:49:18 -08:00
0aaf93e573
add link buttons to db edit pages
2025-12-15 18:49:13 -08:00
6f17a69e26
fix: show both tags if unique
2025-12-15 18:30:50 -08:00
7b3bf2c51e
fix: show series tag if season tag is empty
2025-12-15 18:21:44 -08:00
a50929acf7
fix: only show one charactertag in db list
2025-12-15 17:56:08 -08:00
cfcda8f01e
remove Standard from series enum, shift IDs
2025-12-15 17:48:56 -08:00
cbef8f5518
add CharacterTag component, show tags in db list
2025-12-15 17:48:29 -08:00
d1376396b4
minor layout cleanup
2025-12-15 16:09:30 -08:00
ed282dfea4
update getJobSkillIcon to accept skill object
2025-12-15 16:09:21 -08:00
adf38c0c28
add job skill edit sidebar
2025-12-15 16:09:15 -08:00
acd784fe2d
add downloadSkillImage to job adapter
2025-12-15 16:09:11 -08:00
57b90ac724
add imageId/actionId to JobSkill type
2025-12-15 16:09:07 -08:00
28c12d23c7
remove card styling from skill groups
2025-12-15 14:37:33 -08:00
0eeb7e5274
fix skill category colors with fallback values
2025-12-15 14:35:30 -08:00
b2e374fefa
style job skills tab: smaller headers, more name spacing
2025-12-15 14:33:59 -08:00
767eda424e
fix job skills adapter to expect array, add emp_skills method
2025-12-15 14:30:47 -08:00
3717288cc2
add jobs to database dropdown menu
2025-12-15 14:21:45 -08:00
3f87d51a55
add jobs database pages (list, detail, edit)
2025-12-15 14:21:40 -08:00
0cf7982809
fix job adapter response handling, update tier names
2025-12-15 14:21:35 -08:00
18b60f2c9b
add job type support to detail scaffold/header
2025-12-15 14:21:30 -08:00
695f76a3be
reconcile summon detail and edit pages with consistent section order
2025-12-15 13:17:09 -08:00
5ec31ade2d
add Name fields to SummonMetadata, create SummonGachaSection, remove Promotions from Taxonomy
2025-12-15 13:16:56 -08:00
a295175b36
weapon pages: reorder sections, always show all fields
2025-12-15 13:08:22 -08:00
70c0881bb4
weapon sections: add name fields to metadata, move recruits to gacha
2025-12-15 13:08:17 -08:00
0812e3b2d4
add name EN/JP fields to character detail and edit pages
2025-12-15 12:58:35 -08:00
38b5c4903c
sync character import page with edit page
...
- remove CharacterGachaSection (gacha moved to weapons)
- remove promotions/gacha_available from form data
- match section order with edit page
2025-12-15 12:55:33 -08:00
cc60a57e3e
minor ui tweaks
...
- fix datepicker css class name conflict
- remove border and margin from detail header/scaffold
2025-12-15 12:51:19 -08:00
6da599403c
fix links format on weapon/summon detail pages
...
use wiki.en/ja + gamewith/kamigame at top level
2025-12-15 12:49:20 -08:00
9243d133cd
reconcile character detail and edit pages
...
- same section order on both pages
- show all fields (empty shows dash)
- add editable nicknames/links to edit page
- handle CharacterSeriesRef[] -> number[] conversion
2025-12-15 12:49:00 -08:00
32c4880180
refactor character section components
...
- move series from taxonomy to metadata section
- rename uncap label to "Uncap Level"
- show all uncap flags in view mode
2025-12-15 12:48:51 -08:00
34c3dd6aa6
update entity types for new api format
...
- remove links property, use wiki/gamewith/kamigame at top level
- add seriesNames to Character
2025-12-15 12:48:16 -08:00
6ba89dc216
use granblueId in database URLs instead of UUID
...
- rename route folders from [id] to [granblueId]
- update all server load functions to use params.granblueId
- update detail/edit/new pages to navigate with granblueId
- update cross-entity links (recruits, recruitedBy)
- update TanStack Query keys to use granblueId
backend's IdResolvable already supports fetching by granblueId
2025-12-15 11:26:52 -08:00
4d7d2c563e
fix CharacterTypeahead initial value display on page load
...
derive options from initialCharacter directly instead of using
effect-based initialization which had race conditions with SSR
2025-12-15 11:16:13 -08:00
80bcbd59db
fix CharacterTypeahead usage in weapon forms
2025-12-15 11:03:12 -08:00
ba17a17224
style CharacterTypeahead to match Select, use granblueId as value
2025-12-15 11:03:06 -08:00
3d75c22f3b
fix CharacterTypeahead width in DetailItem
2025-12-15 11:03:02 -08:00
3a9e1f8845
prefill gacha fields from wiki data in import forms
2025-12-15 09:52:13 -08:00
b5f832191f
add gacha suggestion types and use CharacterGachaSection
2025-12-15 09:52:08 -08:00
879a3bd8bd
move season field to Metadata section
2025-12-15 09:52:03 -08:00
75a97cabaa
add CharacterGachaSection component
2025-12-15 09:51:58 -08:00
dd16718c03
add Holiday to CHARACTER_SERIES, remove Standard season
2025-12-15 09:51:54 -08:00
8a44d588c8
add page titles to database pages
2025-12-14 21:56:01 -08:00
0336fabaa8
add dynamic page titles for profiles and teams
2025-12-14 21:55:54 -08:00
8541f54f90
add page titles to static pages
2025-12-14 21:55:45 -08:00
1a21828815
add PageMeta component and i18n keys for page titles
2025-12-14 21:55:37 -08:00
b50c1854d6
fetch wiki data client-side to bypass cloudflare
2025-12-14 21:50:45 -08:00
ed6a9fd2f4
send wiki_raw when creating entities from import
2025-12-14 21:50:40 -08:00
cfb62447a0
move Recruits and Promotions to Gacha section
2025-12-14 21:50:35 -08:00
850c5dd771
auto-update summon max level based on uncap
...
same behavior as weapons: 100/150/200/250 for base/flb/ulb/trans
2025-12-14 21:14:03 -08:00
d6160d0bae
auto-download images after entity creation
2025-12-14 20:00:23 -08:00
9fb66e731e
auto-download images after batch import
2025-12-14 20:00:23 -08:00
64725bd4e8
add link buttons to import form fields
...
- add URL builders for wiki/gamewith/kamigame
- add hasLinkButton prop to DetailItem components
- show disabled link button when value is empty
- store page names instead of full URLs
- fix DetailItem to render children when editable
- remove focus background styling
2025-12-14 19:35:33 -08:00
e1ba34048a
improve import form components
...
- fix Select reactivity with external value changes
- add series/promotions to taxonomy sections
- add onDataChange callbacks to uncap sections
- add game CDN image helpers for batch imports
- expand suggestion type definitions
2025-12-14 19:35:20 -08:00
37f2178d4a
pre-fill summon ID from wiki data in batch import
2025-12-14 17:01:16 -08:00
6e6121cb71
use DetailItem for Granblue ID (already pre-populated)
2025-12-14 13:41:34 -08:00
3ec5e9f48a
fix: preserve wiki_data keys during request transform
2025-12-14 13:28:43 -08:00
5c870b148e
use client-side wiki fetch for batch preview imports
2025-12-14 13:17:34 -08:00
34db76fbdc
add client-side wiki fetcher to bypass cloudflare
2025-12-14 13:17:21 -08:00
b2f4cf5246
fix placeholder images to use CDN url
2025-12-14 12:59:29 -08:00
42f7722e50
batch import: use individual inputs instead of comma-separated
...
- start with 3 inputs, add/remove as needed
- avoids issues with item names containing commas
2025-12-14 12:41:05 -08:00
dd1591d5b3
update nav to point to consolidated series page
2025-12-14 11:59:39 -08:00
f429988981
consolidate series pages into single page with tabs
2025-12-14 11:59:35 -08:00
50ee6b80ff
add character/summon series to entity adapter and queries
2025-12-14 11:59:31 -08:00
d921d37362
add character and summon series types
2025-12-14 11:59:26 -08:00
77339a2b27
add name, proficiency, and level badge to artifact cards
2025-12-14 02:06:42 -08:00
c90da7ad4e
show item names in collection cards
2025-12-14 02:06:34 -08:00
7f9398efbd
add retired toggle to member/phantom edit dialog
2025-12-14 01:52:19 -08:00
7fdb07cacf
fix collection card image sizing
2025-12-14 01:52:15 -08:00
04b91a638d
pass showGranblueId to ProfileHeader
2025-12-14 01:52:10 -08:00
930627c71c
use lighter bg and darker text for settings tabs
2025-12-14 01:31:36 -08:00
106b9261f8
fix Select placeholder check for falsy values
2025-12-14 01:24:07 -08:00
e8608ff32d
respect showGranblueId setting in ProfileHeader
2025-12-14 01:24:03 -08:00
376e915ade
refactor UserSettingsModal to tabbed layout
2025-12-14 01:23:59 -08:00
9ee90fc6fc
add /users/me endpoint to user adapter
2025-12-14 01:23:55 -08:00
242aa7c0a9
add settings section components
2025-12-14 01:23:50 -08:00
c785d1d0ab
add SettingsNav and SettingsRow components
2025-12-14 01:23:47 -08:00
8e57cdc2a5
add missing crewStore import
2025-12-13 23:27:48 -08:00
9429ccff53
use AWS for placeholder images in production
2025-12-13 23:26:35 -08:00
9c69db640e
hide invitations menu item when user is in a crew
2025-12-13 23:20:58 -08:00
b844012f3b
use neutral ViewModeToggle in collection pages
2025-12-13 23:17:58 -08:00
f20c99bdac
add ViewModeToggle component with element theming and neutral mode
2025-12-13 23:17:50 -08:00
04469ee202
fix icon svg handling, update grid/list icons
2025-12-13 23:17:42 -08:00
4745baca1c
add bulk phantom creation, delete confirmation, default to all filter
...
- bulk create phantoms with individual join dates
- confirm before deleting phantoms
- reorder filters with All first and as default
2025-12-13 23:12:40 -08:00
7dcb100412
add medium size to Dialog, leftIcon/rightIcon props to Button
2025-12-13 23:12:34 -08:00
0e5f7e1642
fix modal content overflow pushing footer out of view
2025-12-13 23:12:30 -08:00
7e0f66d9cc
fix registration availability checks and signup endpoint
...
- correct api paths for username/email availability checks
- use singleton userAdapter instead of creating new instance
- use getApiBaseUrl() for signup to include /api/v1 prefix
2025-12-13 22:15:31 -08:00
30128107fb
cache user settings in cookie for faster modal loading
...
store granblueId and showCrewGamertag in cookie at login,
use as initial values so modal opens instantly
2025-12-13 22:14:49 -08:00
362db1238f
fix input focus loss when error state changes
...
always wrap in fieldset to keep DOM structure stable
2025-12-13 22:14:32 -08:00
9787af9c42
fix party avatar to use shared image utilities
2025-12-13 21:50:25 -08:00
c57f84b1b4
fix avatar images to respect remote/local hosting config
2025-12-13 21:49:14 -08:00
586dd84a01
remove unused page test
2025-12-13 21:25:06 -08:00
da7299625c
misc type and style fixes
2025-12-13 21:25:02 -08:00
4f1b8872c0
fix database edit page type errors
2025-12-13 21:24:47 -08:00
318db82ce7
fix storybook mock types
2025-12-13 21:24:39 -08:00
70df592890
fix svelecte event handling for svelte 5
2025-12-13 21:24:31 -08:00
0c973785d1
move favorites to separate route
2025-12-13 21:24:22 -08:00
aee62522e9
redesign profile header with gamertag + gbf profile link
2025-12-13 21:24:09 -08:00
14819f0b73
fix null check for layout data during error scenarios
2025-12-13 21:18:50 -08:00
e5dec76a84
fix image paths for production (use AWS URLs)
2025-12-13 20:58:34 -08:00
60cbc03edf
select/multiselect: remove hover shadow, use elemental checkmarks
2025-12-13 20:58:30 -08:00
20dabc5aa1
collection page card styling + contained filters
2025-12-13 20:58:20 -08:00
c54c959522
rework ModalFooter to use action props
...
- onCancel callback with fixed "Nevermind" label
- optional primaryAction object (label, onclick, destructive, disabled)
- optional left snippet for custom content
2025-12-13 20:02:25 -08:00
7dae71965a
extract DeleteTeamDialog component
2025-12-13 20:02:18 -08:00
492307530a
fix nav highlight for profile sub-routes
2025-12-13 20:02:14 -08:00
82c3f3c471
add scout button and pending invitations to crew members
...
- wire scout button to open ScoutUserModal
- collapsible section showing sent invitations for officers
2025-12-13 18:07:15 -08:00
013c1b5eb2
add invite to crew action on user profiles
...
officers can invite users without a crew via context menu
2025-12-13 18:07:11 -08:00
d2c16d908d
add invitation notifications to nav
...
badge on profile icon + dropdown item to open invitations modal
2025-12-13 18:07:06 -08:00
c9f31f9059
add crew invitation modals
...
- InvitationsModal: view/accept/decline pending invitations
- InviteUserModal: confirm invite from profile page
- ScoutUserModal: search users by username to invite
2025-12-13 18:07:02 -08:00
27a98274c1
add NotificationBadge component
...
reusable red dot/count badge for notifications
2025-12-13 18:06:56 -08:00
b3ec56648c
fix mock file imports to use correct type modules
2025-12-13 14:55:56 -08:00
9e547d66df
fix button variant and visibility enum usage
2025-12-13 14:55:51 -08:00
789494e773
migrate dialog consumers to ModalHeader/Body/Footer pattern
2025-12-13 14:55:46 -08:00
a3c5676c4c
add missing type props: dates, wiki links, editKey, gw stats
2025-12-13 14:55:40 -08:00
6f16b41d35
misc: util tweaks, database page fixes, mock updates
2025-12-13 14:35:29 -08:00
46d48132bd
sidebar: fix proficiency list spacing
2025-12-13 14:35:25 -08:00
b6fb3ec0a0
add new theme color variables
2025-12-13 14:35:11 -08:00
015650104e
teams/new: reformat and restructure page
2025-12-13 14:35:03 -08:00
47563634b3
nav: add crew link and gw-events database link
2025-12-13 14:34:49 -08:00
b5d0b7c0e7
collection panes: add delete action, fix edit mode state
...
- add remove from collection with confirmation
- sidebar overflow menu for delete action
- better tracking of which item is selected to avoid state bugs
2025-12-13 14:34:40 -08:00
7558aef509
edit panes: remove footer buttons, export save() for header
...
parent components now call save() from sidebar header action
instead of embedded cancel/save buttons
2025-12-13 14:34:30 -08:00
4418157ca0
refactor modal components to use header/body/footer pattern
...
UserSettingsModal now uses ModalHeader, ModalBody, ModalFooter.
Dialog simplified. Button tweaks.
2025-12-13 14:34:20 -08:00
eaea344db4
add crew pages: dashboard, create, join, settings, gw events admin
2025-12-04 03:03:33 -08:00
aee0690b2d
add crew UI components, store, queries, and mutations
2025-12-04 03:03:27 -08:00
32af6a7788
crew members page improvements
...
- edit join date dialog
- add phantom with join date
- dropdown menus for member actions
- disable scout when roster full (30)
- invalidate gw queries on join date change
2025-12-04 03:03:04 -08:00
f4d04a7073
gw event page improvements
...
- total honors instead of total score
- muted style for players with existing scores
- by-event score endpoints
2025-12-04 03:02:58 -08:00
e7dfca992a
add muted and suffixSnippet props to Select component
2025-12-04 03:02:51 -08:00
0a2a3894bf
Add sync from collection menu and highlight owned items in search
...
- Party.svelte: Add 'Sync from collection' to overflow menu for parties
with linked collection items, with proper menu grouping
- SearchContent.svelte: Highlight items user owns in 'All Items' mode
with subtle green background and checkmark indicator
2025-12-03 23:24:30 -08:00
f5d0bbe7da
Add sync UI to Party and edit sidebars
...
- Party.svelte: Pass authUserId to openSearchSidebar, link collection
items when adding to party via collectionId
- DetailsSidebar: Show sync banner for out-of-sync items, add sync
functionality for characters, weapons, and summons
- EditCharacterSidebar/EditWeaponSidebar: Add sync banner and button
for items linked to collection
- party.ts types: Add collectionId and outOfSync fields to grid types
2025-12-03 23:13:59 -08:00
bf2bf8663f
add search mode toggle for collection items
2025-12-03 22:58:46 -08:00
43f9f37ccc
add sync mutations for grid items
2025-12-03 22:52:31 -08:00
48121612fc
add collection refs and sync methods to frontend types and adapters
2025-12-03 22:51:23 -08:00
4a89f43d05
use small select for artifact rarity filter
2025-12-03 21:28:15 -08:00
7c93cf8aab
fix skill lookup for slots 3-4 by matching skill group
2025-12-03 21:10:22 -08:00
3f13f16998
add artifact header with wide image and relief background
2025-12-03 21:05:42 -08:00
2f0bb76531
add grid and list view toggle icons
2025-12-03 20:52:23 -08:00
ff4b63a542
show remaining chars counter only when near limit
2025-12-03 20:52:14 -08:00
edbfd14843
tweak DetailRow min-width, fix DisclosureRow label wrapping
2025-12-03 20:52:09 -08:00
8759afb83c
fix infinite loop in sidebar action effects with untrack
2025-12-03 20:52:03 -08:00
eaae29f007
simplify artifact mutation, remove optimistic update
2025-12-03 20:51:58 -08:00
5bac8a0b53
add element-based styling to modifier selection
2025-12-03 20:51:52 -08:00
dc4c2c3117
move artifact image/name to header, use DetailRows for skills
2025-12-03 20:51:16 -08:00
ee2e51affd
add image support to sidebar header
2025-12-03 20:51:10 -08:00
399480db9f
put grade recommendation reason inline with action badge
2025-12-03 20:51:05 -08:00
91b2a61ac9
simplify skill display to value-only, highlight max rolls in element color
2025-12-03 20:50:59 -08:00
f55303039c
auto-redistribute skill levels when artifact level changes
2025-12-03 20:50:53 -08:00
f34f2c4dc9
show calculated skill values in dropdown, add level constraints
2025-12-03 20:50:47 -08:00
4b2d1b7dc0
add calculateSkillDisplayValue helper for artifact skills
2025-12-03 20:50:42 -08:00
ea09f325a0
fix slider value handling and track width
...
- Use single value instead of array for type="single" slider
- Pass onValueChange directly without array wrapping
- Use flex-grow: 1 for track width instead of width: 100%
2025-12-03 18:50:11 -08:00
8ddfe58369
fix slider range width by adding track wrapper element
...
The bits-ui Slider.Range component needs to be inside a proper
track element for the range fill to display correctly. Added a
span wrapper with slider-track class and updated styles.
2025-12-03 18:45:53 -08:00
23b1d091f5
add Slider component with elemental styling for level selection
2025-12-03 18:41:04 -08:00
a1bc125521
add element-ghost button variant for sidebar header
2025-12-03 18:33:56 -08:00
9b59a22a43
stretch header buttons to fill height, add gap between accessories
2025-12-03 18:25:24 -08:00
f5f7743055
move delete to detail pane overflow, add disabled save button to edit
2025-12-03 18:20:13 -08:00
db71e6dc80
add overflow menu support to pane stack
2025-12-03 18:20:09 -08:00
100f506c44
move add artifact button to header as elemental button
2025-12-03 18:11:34 -08:00
99644c1730
use color dots instead of images for element dropdown
2025-12-03 18:08:15 -08:00
3527bc820f
make Edit button elemental based on artifact element
2025-12-03 18:08:08 -08:00
abf7a36d8a
remove translateY(1px) from button active state
2025-12-03 18:07:59 -08:00
b047552d7d
fix infinite loop: use onMount instead of $effect for sidebar action
2025-12-03 17:57:50 -08:00
34821aa487
split artifact pane into detail and edit views
...
- CollectionArtifactDetailPane: read-only view with Edit button in header
- CollectionArtifactEditPane: editable form pushed onto pane stack
- ArtifactSkillDisplay: new read-only skill display component
2025-12-03 17:54:18 -08:00
190e2140b1
artifact images: add square/wide variants
...
use artifact-square for thumbnails, artifact-wide for grid display.
defaults to square for backwards compat.
2025-12-03 17:44:01 -08:00
f23779b664
pane stack: each pane is now its own card
...
move card styling (bg, radius, shadow, border) from sidebar
container to individual panes so they visually stack as
separate cards. behind pane peeks out from the left.
2025-12-03 17:38:53 -08:00
df045ecd2b
add AddArtifactSidebar for collection artifacts
...
flow: proficiency -> element (color dots) -> artifact dropdown
(filtered by proficiency) -> level/nickname -> skills config
using pane stack for iOS-style navigation
2025-12-03 17:14:26 -08:00
ed32b7e924
add color dot support to Select component
2025-12-03 17:14:19 -08:00
e595196172
clean up debug logs from skill filtering investigation
2025-12-03 17:14:05 -08:00
9bdcc7818b
remove polarity indicator from skill list
2025-12-03 17:14:01 -08:00
a29cdbb454
fix cache key to include query params
...
was generating same cache key for /artifact_skills and
/artifact_skills?group=group_i causing filtered requests
to return cached unfiltered results
2025-12-03 17:13:54 -08:00
644c596173
fix Icon import path in DisclosureRow
2025-12-03 16:33:47 -08:00
122b07e827
fix edit sidebars to use pane stack push/pop
2025-12-03 16:33:16 -08:00
a02db87988
fix @const placement in PaneStack
2025-12-03 16:28:26 -08:00
e502c8128d
add artifact validation utilities
2025-12-03 16:23:58 -08:00
2b572d07a7
add artifact selection components for pane stack
2025-12-03 16:22:33 -08:00
e7354479f7
add artifact section to TeamView sidebar
2025-12-03 16:20:31 -08:00
ef22bcb6c1
add artifact indicator icon next to character name
2025-12-03 16:18:48 -08:00
52660f3fb1
add collection artifact feature (cards, rows, pane, route)
...
- CollectionArtifactCard for grid view
- CollectionArtifactRow for list view
- CollectionArtifactPane for sidebar details
- artifacts collection page with filters and infinite scroll
- getArtifactImage util
- update collection layout for artifacts tab
2025-12-03 16:17:15 -08:00
3a41adc4f2
add artifact UI components for phase 4
...
- DisclosureRow: iOS-style disclosure row for navigation
- ArtifactSkillRow: shows skill with modifiers and level/value controls
- ArtifactModifierList: selectable list of skills by polarity
- ArtifactGradeDisplay: shows letter grade, breakdown, recommendation
- ArtifactEditPane: main edit pane combining base props, skills, grade
2025-12-03 16:08:17 -08:00
ab1243190b
add artifact queries and mutations
...
- artifactQueries: reference data (cached 1hr), collection infinite, skills by slot
- artifactKeys: cache invalidation helpers
- mutations: collection CRUD, grid CRUD, equip, and grading
2025-12-03 15:59:19 -08:00
1e708e1064
add artifact adapter for API communication
...
covers reference data, collection artifacts, grid artifacts,
and stateless grading endpoints.
2025-12-03 15:57:29 -08:00
d907e32d12
integrate pane stack into sidebar store
...
sidebar now uses PaneStackStore internally - openWithComponent
creates root pane, and child components can push/pop via context.
simplified Sidebar.svelte to render PaneStack when stack has items.
2025-12-03 15:55:47 -08:00
096214bc52
add artifact types and add artifact field to GridCharacter
2025-12-03 15:49:16 -08:00
84e1fb4a8a
add pane stack store and component for ios-style navigation
2025-12-03 15:47:34 -08:00
e3cc2df45c
fix missing promotions field in weapon edit data
2025-12-03 12:36:02 -08:00
b2a606554f
simplify weapon series page to read-only list with styled table
2025-12-03 12:33:53 -08:00
108b662e33
make weapon series flags non-optional in type
2025-12-03 12:33:46 -08:00
ab4c8058f4
add ... dropdown to database nav with weapon series link
2025-12-03 12:33:42 -08:00
0259a8ad68
update test mocks to use WeaponSeriesRef
2025-12-03 11:59:40 -08:00
2e2574f749
add weapon series admin CRUD page
2025-12-03 11:59:36 -08:00
166ef8ff6f
update conflict dialog and database pages for series objects
2025-12-03 11:59:31 -08:00
139e602808
fetch weapon series from API in collection filters
2025-12-03 11:59:26 -08:00
a251240331
complete handleSave for weapon modifiers, update key select to use slug
2025-12-03 11:59:16 -08:00
c5f6963ca7
update search and party schemas for weapon series objects
2025-12-03 11:59:12 -08:00
23a2481190
update entity adapter to use seriesSlug, add weapon series CRUD methods
2025-12-03 11:59:07 -08:00
745c162529
remove legacy integer series fallbacks from utils
2025-12-03 11:59:02 -08:00
a8d97479ff
update Weapon.series to use WeaponSeriesRef, remove unused type files
2025-12-03 11:58:58 -08:00
58d8899075
add WeaponSeriesRef type definitions
2025-12-03 11:58:54 -08:00
a580f179e1
clean up error handling in add modal
2025-12-03 10:51:17 -08:00
a4572df406
refactor characters page to use card/row components
...
- use CollectionCharacterCard and CollectionCharacterRow
- add grid/list view toggle with viewMode store
2025-12-03 10:51:13 -08:00
5db9181afc
left-align uncap indicators in cells
2025-12-03 10:50:41 -08:00
f54c5f012e
improve collection row layouts
...
- wrap thumbnail + name in core-info container
- use layout tokens for border radius
- add proficiency column to weapon rows
- wider thumbnails, consistent sizing
2025-12-03 10:50:36 -08:00
6d8e1849eb
add viewMode store for grid/list toggle persistence
2025-12-03 10:50:29 -08:00
b7fdde2025
add list cell background color tokens
2025-12-03 10:50:25 -08:00
e0a41102fd
fix infinite scroll pagination in collection queries
...
use pageParam instead of response.page (which was undefined)
2025-12-03 09:03:52 -08:00
debf502a6c
use batch endpoints for collection add operations
...
single request instead of one per item
2025-12-03 09:03:47 -08:00
c37c4f0101
fix request cancellation issue in batch add weapons/summons
...
The addWeapons/addSummons methods were using Promise.all with Array.fill()
which created arrays where all elements referenced the same object. This
caused the request deduplication logic in BaseAdapter to cancel previous
requests since they all had the same body/requestId.
Fix:
- Use Array.from() with spread to create unique object instances
- Execute requests sequentially to avoid deduplication conflicts
- Improve error handling in AddToCollectionModal to filter CancelledErrors
2025-12-03 07:37:03 -08:00
d9dd8f58ee
fix Svelte 5 event modifier syntax in selectable components
...
Replace deprecated onclick|stopPropagation with onclick={(e) => e.stopPropagation()}
2025-12-03 07:31:32 -08:00
d11362ff57
add weapons and summons collection routes with layout updates
...
- Create weapons route with page, server load, and grid/list views
- Create summons route with page, server load, and grid/list views
- Enable weapons/summons tabs in collection layout (remove disabled)
- Add dynamic "Add" button text based on active entity type
- Pass entityType to AddToCollectionModal based on current route
2025-12-03 07:29:38 -08:00
60947a7911
add detail and edit panes for weapon/summon collections
...
- WeaponEditPane: edit component with uncap, transcendence, element,
weapon keys, AX skills, and awakening support
- SummonEditPane: simple edit component with uncap and transcendence
- CollectionWeaponPane: full detail pane with Info/My Collection tabs
- CollectionSummonPane: full detail pane with Info/My Collection tabs
2025-12-03 07:26:53 -08:00
033bc1c8f7
add collection display components for weapons and summons
...
- CollectionWeaponCard: grid view with uncap indicator and transcendence
- CollectionWeaponRow: list view with element, uncap, and awakening/keys info
- CollectionSummonCard: grid view with uncap indicator
- CollectionSummonRow: list view with element and uncap info
2025-12-03 07:21:53 -08:00
957dd16e5e
add quantity counter and selectable components for weapons/summons
...
- QuantityCounter: +/- buttons for multi-copy selection
- SelectableWeaponCard/Row: weapon selection with quantity
- SelectableSummonCard/Row: summon selection with quantity
- AddToCollectionModal: support entityType prop, Map for quantities
- CollectionFilters: entityType-aware filter visibility
2025-12-03 07:19:04 -08:00
13a3905776
add batch weapon/summon methods to collection adapter and mutations
2025-12-03 07:14:30 -08:00
a2e0015a85
minor cleanup: remove unused import, add font-tiny variable
2025-12-02 17:19:49 -08:00
5e5d9e93ec
refactor CollectionCharacterPane: use DetailSections, fix reactivity on char switch
2025-12-02 17:19:45 -08:00
0f46960de6
add uncap level editing to CharacterEditPane
2025-12-02 17:19:41 -08:00
2a4789c72a
add empty state support to DetailsSection
2025-12-02 17:19:38 -08:00
000cfd2332
add setAction/clearAction to sidebar store for dynamic header buttons
2025-12-02 17:19:34 -08:00
cc2b2c1f95
convert collection filters from buttons to dropdowns
2025-12-02 17:19:31 -08:00
9f18ff0a4d
add small size variant to segmented control
2025-12-02 17:19:22 -08:00
6f21018bca
add MultiSelect component, refactor Select for consistency
2025-12-02 17:19:19 -08:00
d053a9377e
add race/proficiency/gender to CollectionFilters type
2025-12-02 15:32:11 -08:00
4bbe2ed188
simplify collection page to single code path
...
- use unified api for all users (no owner/viewer branching)
- remove client-side filtering (api handles it)
- pass userId to AddToCollectionModal
2025-12-02 15:31:58 -08:00
b8a48771dd
update collection adapter/queries for unified api
...
- add userId param to list methods
- remove public collection methods (now unified)
- update query keys to include userId
2025-12-02 15:31:46 -08:00
35b0560749
add ProfileHeader component, add collection link to profile nav
2025-12-02 15:07:01 -08:00
9ed505623e
fix collection page grid: use correct 280x160 aspect ratio for character images
2025-12-02 15:06:56 -08:00
a6a0a38d75
fix collection modal search: use query factory pattern, remove broken debounce
2025-12-02 15:06:47 -08:00
491026399f
fix search api: wrap body in search key, use X-Per-Page header, 50 per page
2025-12-02 15:06:38 -08:00
7808c75452
fix cache key generation for POST requests with object bodies
2025-12-02 15:06:33 -08:00
3b071a1864
fix collection page width to match teams page
...
Remove explicit max-width: 1400px so the collection page uses the
default --main-max-width (820px) like the teams page.
2025-12-02 11:46:38 -08:00
a664d41e63
fix character card aspect ratio to match actual image dimensions
...
Character grid images are 280x160 (7:4 ratio, wider than tall).
The previous ratio was inverted. Now using 100px width with correct
aspect-ratio: 280/160.
2025-12-02 11:35:00 -08:00
408f729976
switch modal results grid to flexbox for better layout
...
Use flexbox with fixed-width cards (70px) instead of CSS Grid. This
prevents excessive vertical spacing when using tall aspect ratio items.
2025-12-02 11:32:04 -08:00
7de75ec8d0
fix character card aspect ratio and duplicate key error
...
- Use proper 16:33 aspect ratio for character cards instead of square
- Change object-fit from cover to contain to prevent cropping
- Deduplicate search results across pages to prevent duplicate key errors
2025-12-02 11:31:09 -08:00
d107d56f82
fix collection nav link to point to user's collection
...
The Collection nav link now points to /{username}/collection/characters
instead of /collection. Also updates isNavSelected to properly detect
when on any collection page.
2025-12-02 11:29:09 -08:00
2aa961b5e6
refactor EditCharacterSidebar to use shared CharacterEditPane
...
Reduces ~240 lines to ~85 lines by using the shared CharacterEditPane
component for edit controls. Both party grid and collection character
editing now use the same underlying UI component.
2025-12-02 11:26:23 -08:00
dea784780a
add collection page route and character pane components
...
- Add collection route structure at [username]/collection/characters
- Create CharacterEditPane as shared component for character customizations
- Create CollectionCharacterPane with Info and My Collection tabs
- Add character grid with filters and infinite scroll
- Fix CollectionFilters a11y warnings
2025-12-02 09:43:31 -08:00