- Add search pane with artwork/tag search and artist search, both with
infinite scroll and tab caching
- Replace CSS columns masonry with JS shortest-column algorithm to
eliminate gaps caused by column-fill:balance
- Add /pixiv/search/illusts and /pixiv/search/users API endpoints
- Search results: illusts use masonry grid, artists use list layout
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Bookmark button now toggles: ♥ click cancels bookmark via bookmark_delete API
- Add is_followed to user data in _fmt_illusts
- Add POST /pixiv/bookmark_delete and POST /pixiv/follow endpoints
- Add '↗' artist button on each card (hover): jumps to artists tab and
loads that artist's works with name header + follow/已关注 badge
- Follow button in artist works header; replaces itself with 已关注 on success
- Artist works area restructured to flex-column for header + scrollable grid
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Include is_bookmarked in _fmt_illusts response
- Add POST /pixiv/bookmark endpoint (add-only, never removes)
- Show heart button on each card: filled pink if already bookmarked,
hidden until hover if not; clicking only adds, never toggles off
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Track auth time; re-auth after 55 min so node execution doesn't hit
expired access tokens (1-hour TTL)
- Use API's additional_headers in download_image_bytes for consistency
- Collect per-image error messages and include them in the ValueError
so the ComfyUI error dialog shows the actual failure reason
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add POST /pixiv/auth/set_token endpoint for direct refresh_token auth.
Redesign login page with two tabs: recommended gppt token flow and
fallback OAuth flow with pixiv:// URL validation.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>