513c7660f5
add svelte-sonner for toast notifications
2025-12-02 06:54:12 -08:00
1933f3d8e9
add new fields to batch import pages
2025-12-02 05:26:10 -08:00
23ae7f70ba
add promotions to summon database views
2025-12-02 05:25:56 -08:00
8c45c21939
add promotions to weapon database views
2025-12-02 05:25:49 -08:00
cf694bb1ce
add season, series, gacha_available, recruited_by to character database views
2025-12-02 05:25:43 -08:00
96f040a91b
add CheckboxGroup component for multiselect fields
2025-12-02 05:25:35 -08:00
f26d3e3883
add season, series, promotions filters to search adapter
2025-12-02 05:25:29 -08:00
67b87c7d1b
add season, series, promotions to entity types
2025-12-02 05:25:23 -08:00
b6db09bcc4
add formal promotion to enums
2025-12-02 05:25:10 -08:00
afb81e0f55
add nicknames, links sections to entity detail pages; show recruits in weapon metadata
2025-12-02 02:15:03 -08:00
4fdc859941
add scroll-triggered gradient to nav background
2025-12-02 01:45:16 -08:00
c8c076e707
add calendar icon for DatePicker
2025-12-02 01:37:38 -08:00
69395672af
move dates section before skills/auras on detail pages
2025-12-02 01:28:23 -08:00
28aa547c89
fix: summon granblueId binding in edit mode
2025-12-02 01:28:16 -08:00
6683a9e53a
import pages: add wiki_raw to payload, misc fixes
2025-12-02 01:25:28 -08:00
5edcf6473a
cleanup: remove unused CharacterImagesSection, tweak metadata
2025-12-02 01:25:23 -08:00
38762c8946
add image download buttons to detail scaffold
2025-12-02 01:25:18 -08:00
2771e202cb
add CopyableText component for raw data tab
2025-12-02 01:25:14 -08:00
dea02ef359
fix ougiRatio display - access nested object properties
2025-12-02 01:24:57 -08:00
1b8232ed5a
show dates on entity detail pages
2025-12-02 01:24:53 -08:00
6f1f0c60a2
add date fields to entity edit pages
2025-12-02 01:24:48 -08:00
da26645df0
add DatePicker component with type='date' support
2025-12-02 01:24:36 -08:00
9ace2eb1e2
fix type errors in import pages
2025-12-02 00:08:55 -08:00
64e50e1b50
add batch import button to database index pages
2025-12-02 00:08:47 -08:00
2dd643e92e
add batch import pages for characters/weapons/summons
2025-12-02 00:00:41 -08:00
1ea0eee86c
add suggestion props to all database section components
2025-12-01 23:52:06 -08:00
bba78d5781
feat: add suggestion UI components for batch import
...
- SuggestionBadge: sparkle icon with tooltip for accept/dismiss actions
- SuggestionDetailItem: detail item wrapper with suggestion badge support
- TabbedEntitySelector: entity image grid for batch selection
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:43:56 -08:00
b28ba551de
add batch preview adapter methods
2025-12-01 23:40:55 -08:00
c8c4693e08
Switch font from Goalking to AGrot
...
- Import fonts.css in app.html
- Update --font-family CSS variable to use AGrot
- Adjust $bold weight from 600 to 700 to match AGrot's available weights
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 13:52:55 -08:00
7a639effaa
database: add entity edit page scaffolds
2025-12-01 09:57:53 -08:00
1cbcd91f94
entity adapter: add raw data fetch methods
2025-12-01 09:54:39 -08:00
be75fcbcbd
database detail pages: add Info/Images/Raw tabs
2025-12-01 09:54:35 -08:00
395a5c166f
SegmentedControl: add size prop (default/small)
2025-12-01 09:54:06 -08:00
7a57680ec1
use ElementLabel/ProficiencyLabel, show all fields in detail pages
2025-12-01 08:35:34 -08:00
371cb7d102
fix: use camelCase granblueId in view mode
2025-12-01 08:35:30 -08:00
20705cc3b2
SegmentedControl: only fire onValueChange on actual changes
...
Prevents onValueChange from firing during initialization, which
caused pushState errors before router was ready.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 05:02:56 -08:00
83b18645c8
fix: guard pushState until router is initialized
2025-12-01 04:59:16 -08:00
4fda863339
fix: use pushState + popstate for instant tab switching
2025-12-01 04:57:22 -08:00
21bda28910
fix: always use explicit tab path in URL
2025-12-01 04:36:17 -08:00
5063e8e73c
fix: use goto() instead of pushState for tab URL sync
2025-12-01 04:33:28 -08:00
af27f0fbbc
add URL-based tab routing with pushState sync
2025-12-01 04:29:21 -08:00
5b0d41a020
move teams/[id] route into [[tab=tab]] optional segment
2025-12-01 04:27:42 -08:00
6ab74b43b1
add tab param matcher for URL routing
2025-12-01 04:27:01 -08:00
a9dcbd18f8
DetailItem: adjust padding and remove hover styles
2025-12-01 04:11:22 -08:00
ef534164f0
database/[id]: add page wrapper styles
2025-12-01 04:11:11 -08:00
3df5564772
database/new: remove newSeries, use contained TagInput
2025-12-01 04:11:07 -08:00
068d9f0991
weapons: auto-update max level/skill based on uncap
2025-12-01 04:10:45 -08:00
dea8a3bc24
weapons: move extra/limit/ax to taxonomy, fix uncap stars
2025-12-01 04:10:41 -08:00
c2b2de9e96
TagInput: add contained prop with max-width
2025-12-01 04:10:36 -08:00
6409de0c29
feat(weapons): add edit mode to weapon detail page
...
- Add edit mode state management (editMode, editData, isSaving)
- Use DetailScaffold wrapper for consistent edit UI
- Import and integrate section components:
- WeaponMetadataSection, WeaponUncapSection
- WeaponTaxonomySection, WeaponStatsSection
- Add Nicknames, Dates, Links, Character (recruits) sections in edit mode
- Connect saveChanges to entityAdapter.updateWeapon()
- Invalidate TanStack Query cache after successful save
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:29:47 -08:00
fda2b3188f
feat(summons): add edit mode to summon detail page
...
- Add edit mode state management (editMode, editData, isSaving)
- Use DetailScaffold wrapper for consistent edit UI
- Import and integrate section components:
- SummonMetadataSection, SummonUncapSection
- SummonTaxonomySection, SummonStatsSection
- Add Nicknames, Dates, Links sections in edit mode
- Connect saveChanges to entityAdapter.updateSummon()
- Invalidate TanStack Query cache after successful save
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:28:01 -08:00
3e23585ee7
characters: connect edit page to real API
...
Replace simulated save with actual API call to updateCharacter().
Invalidates TanStack Query cache on successful update.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:25:14 -08:00
179cc13725
adapters: add update methods for characters, weapons, and summons
...
Add updateCharacter(), updateSummon(), and updateWeapon() methods to
entity adapter. Each method uses PATCH and clears the entity cache
after successful update.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:24:15 -08:00
7a86790670
weapons: add recruits character search field
...
Add CharacterTypeahead component for async character search using Svelecte.
The component debounces input and queries the search API for matching
characters. Added recruits field to weapon creation page.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:17:17 -08:00
0d0163edec
characters: add nicknames to creation page
...
Backfill nicknames support to character creation page:
- Add nicknamesEn and nicknamesJp fields to editData
- Import and use TagInput component for nickname entry
- Add nicknames section to form UI
- Update CreateCharacterPayload interface with nickname fields
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:10:31 -08:00
fdc50906dc
weapons: add creation page and update section components
...
Create /database/weapons/new route with full weapon creation form:
- Granblue ID validation
- Basic info (name, rarity)
- Uncap settings with cascade logic (Transcendence → ULB → FLB)
- Taxonomy (element, proficiency, series, new_series)
- Stats (HP/ATK with FLB/ULB variants)
- Caps (max_level, max_skill_level, max_awakening_level)
- Nicknames via TagInput
- Dates and external links
Update section components:
- WeaponUncapSection: Add cascade logic, extra/limit/ax fields
- WeaponTaxonomySection: Add series dropdowns with options
- WeaponStatsSection: Add ULB stats, caps section
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:08:52 -08:00
d1c40ee38d
use dynamic image path for auth background
2025-12-01 03:08:11 -08:00
901fd5a157
weapons: add frontend adapter methods and interfaces
...
Add weapon creation infrastructure to entity adapter:
- WeaponValidationResult interface for validation response
- CreateWeaponPayload interface for weapon creation
- WeaponDownloadStatus interface for download status
- validateWeaponGranblueId() method
- createWeapon() method
- downloadWeaponImages() method
- getWeaponDownloadStatus() method
Also add getWeaponSeriesOptions() utility function.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:06:04 -08:00
1fa6429749
summons: add creation page and section components
...
- /database/summons/new route with full form
- UncapSection with FLB/ULB/Transcendence cascade
- TaxonomySection with element and series
- StatsSection with HP/ATK at all uncap levels
- Nicknames via TagInput component
- getSummonMaxUncapLevel() utility function
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 03:00:58 -08:00
4973643ee6
entity adapter: add summon creation methods
...
- SummonValidationResult, CreateSummonPayload, SummonDownloadStatus types
- validateSummonGranblueId(), createSummon(), downloadSummonImages(), getSummonDownloadStatus()
- Matches character creation pattern
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 02:44:45 -08:00
fbe43490d7
ui: add TagInput component for nicknames
...
- Chip/tag style input for string arrays
- Add/remove tags with Enter or comma
- Backspace removes last tag when input empty
- Supports label, error, maxTags, disabled
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 02:43:44 -08:00
39b1ed9f64
nav: context-aware New button for database routes
...
- Show "New character/weapon/summon" pill button on database pages
- Keep existing circular + button for team creation elsewhere
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 02:27:47 -08:00
43c291327c
components: use centralized image URL helpers
2025-12-01 02:26:29 -08:00
e9463ae5ba
api config: add getImageBaseUrl, fix api path for prod/dev
2025-12-01 02:26:16 -08:00
19a2b9e77f
utils: use getBasePath for image URLs
2025-12-01 02:26:08 -08:00
220432b40a
entity adapter: expand CreateCharacterPayload with all fields
2025-12-01 02:25:52 -08:00
754d5a633c
new character page: add all fields, uncap cascade logic, validation
2025-12-01 02:25:46 -08:00
28ad2fb37e
DetailItem: add sublabel, width, onchange props; Input: add validation state
2025-12-01 02:25:41 -08:00
e9ba90d656
add image download section to character edit page
...
- new CharacterImagesSection component
- download button with progress polling
- force re-download option
- status display with progress bar
2025-12-01 00:57:03 -08:00
5f5b579ff0
add /database/characters/new page + API methods
...
- new page with granblue_id validation
- role check (>= 7) on server
- API methods: validate, create, download images
- permanent edit mode with create button
2025-12-01 00:55:53 -08:00
b58cbbe72f
refactor character edit page to use section components
...
- use DetailScaffold wrapper
- extract metadata, uncap, taxonomy, stats sections
- standardize field naming (camelCase)
- add element-themed checkboxes
2025-12-01 00:52:12 -08:00
817084cee5
teams/new: fix css leak on prefetch, remove open search button
2025-12-01 00:22:52 -08:00
1024e155c3
fix button: no translate on circular, fix elemental hover colors
2025-12-01 00:22:52 -08:00
a262388fc7
fix api path for prod (/v1) vs dev (/api/v1)
2025-11-30 23:34:32 -08:00
e50ba8ffad
Fix auth titles
2025-11-30 23:22:04 -08:00
07f57d20fb
routes: redirect root to /teams/explore
2025-11-30 23:16:07 -08:00
d412e760ab
nav: show register/login when logged out, move guides/collection to menu
2025-11-30 23:16:04 -08:00
7e02884941
input: add no1password prop, tweak counter styling
2025-11-30 23:16:00 -08:00
de616755f5
auth: use placeholders instead of labels, add username note
2025-11-30 23:15:56 -08:00
e3e9ccdd6c
auth: add port-breeze background and back-to-home link
2025-11-30 23:15:52 -08:00
4b96633f69
simplify root layout for route group structure
2025-11-30 22:29:08 -08:00
f79e3f2a10
update auth store redirect to /auth/login
2025-11-30 22:29:08 -08:00
a1bcb0e523
update Navigation login link to /auth/login
2025-11-30 22:29:08 -08:00
0f50d9fd73
remove old login route (moved to /auth/login)
2025-11-30 22:28:59 -08:00
9ace6f0862
remove old routes (moved to app group)
2025-11-30 22:28:59 -08:00
b78ee7ca20
move routes to (app) route group
2025-11-30 22:28:17 -08:00
3498b7d966
add signup redirect to register
2025-11-30 22:28:13 -08:00
93efc9946a
add registration page with validation
2025-11-30 22:26:32 -08:00
fd10dcfb15
add login page with contained inputs
2025-11-30 22:26:32 -08:00
762d5c0fc0
add auth layout with centered container
2025-11-30 22:26:32 -08:00
06dd832ada
add AuthCard component for auth pages
2025-11-30 22:26:25 -08:00
33fa9f9c9c
reset fieldset border/padding/margin in Input component
2025-11-30 22:26:25 -08:00
d2cb4c5052
routes: update layout and teams page
2025-11-30 20:06:49 -08:00
af659b9760
components: update party and character components
2025-11-30 20:06:44 -08:00
c3ed9b2885
api: update entity adapter and queries
2025-11-30 20:06:40 -08:00
db5bfe9f7f
sidebar: remove unused modification components
2025-11-30 20:06:36 -08:00
a858877545
sidebar: refactor details components
2025-11-30 20:06:31 -08:00
47885b1429
sidebar: wire up edit sidebars in openDetailsSidebar feature
2025-11-30 20:06:26 -08:00
8ac9dea2d3
sidebar: add EditCharacterSidebar and EditWeaponSidebar
2025-11-30 20:06:21 -08:00
4f132f9947
sidebar: add edit form components for character/weapon modifications
2025-11-30 20:06:15 -08:00