Commit graph

1778 commits

Author SHA1 Message Date
f4b1309149 [WV2] Stabilize IDs for pose picker outfit viewers
This should help with the morphing for the main preview
2026-02-06 19:27:22 -08:00
f13481783d Merge branch 'main' into feature/wardrobe-v2 2026-02-06 19:24:30 -08:00
0691153101 Stabilize IDs for outfit viewer component 2026-02-06 19:22:02 -08:00
6f7b307e39 [WV2] Fix bug with play/pause visibility 2026-02-06 17:50:32 -08:00
b462272dc3 [WV2] Add search keyboard shortcuts 2026-02-06 17:20:10 -08:00
10e2140045 [WV2] Progressive enhancement for item search 2026-02-06 17:05:01 -08:00
36a28cff10 [WV2] Add progressive enhancement for outfit item list toggles
Rather than just buttons, upgrade to radio buttons when we have JS.
2026-02-06 16:42:42 -08:00
81b60eefad [WV2] Unify auto-submit behaviors into a shared web component 2026-02-06 11:29:04 -08:00
9baa64d39a [WV2] Unify common CSS patterns 2026-02-06 09:17:37 -08:00
3582b3674b [WV2] Remove unnecessary worn/closeted state tracking from helper fn 2026-02-06 09:10:37 -08:00
d0acb1c7e5 [WV2] Use variables for colors 2026-02-06 09:09:58 -08:00
0a82ed7b68 [WV2] Reorganize partials into subdirectories 2026-02-06 08:11:19 -08:00
fd881ee31d [WV2] Support closeted items as well as worn items 2026-02-06 07:54:09 -08:00
f5ad5d2b17 [WV2] Simplify canceling outfit renaming
Don't need a button anymore, with focusout and escape doing it
2026-02-05 22:01:45 -08:00
d7c561f91d [WV2] Use outfit name for page title 2026-02-05 21:58:27 -08:00
6fa4e57184 [WV2] Outfit renaming as an atomic operation 2026-02-05 21:56:23 -08:00
0d4b553162 [WV2] Outfit saving first draft 2026-02-05 20:47:05 -08:00
5e68d3809c [WV2] Fix syncing for play/pause state across page morphs
Reproduce:
1. Add an item with animations, and play them.
2. Remove the item.
3. Add it back.
4. Observe the button shows up in "Paused" state, even though it's playing.

This is because the server-side template wasn't doing anything to try to keep the play/pause button it renders in sync with the current saved state in the cookies, so it was always causing a morph to the pause state. Now we listen to the cookie instead!

I also updated the JS behavior to be a bit more consistent: treat the behavior as defaulting to true, unless it's explicitly set to the string "false".
2026-02-05 19:15:09 -08:00
ff3dd2249e [WV2] Fix Safari-specific bug for play/pause button state 2026-02-05 19:03:17 -08:00
97a035b3a3 [WV2] Fix bug where play/pause button shows even after anims removed 2026-02-05 18:59:08 -08:00
d7b1f0e067 [WV2] Minor tweaks to look more like the real wardrobe 2026-02-05 18:49:07 -08:00
4503c12a1f [WV2] Make show.css a bit more manageable 2026-02-05 18:43:02 -08:00
e694bc5d05 [WV2] Minor UI improvements to pose picker 2026-02-05 18:35:10 -08:00
fc93239482 [WV2] Scroll selected alt style into view 2026-02-05 18:17:34 -08:00
b7bbd1ace3 [WV2] Simplify pose vs style picking
Rather than surface the fact that pose and style are independent values, in this change we treat them as basically mutually exclusive appearance options.

If there's no alt style selected, a pose option is visibly selected instead. If there's an alt style selected, no pose option is visibly selected (even though the data model contains one), and selecting one removes the alt style.
2026-02-05 18:11:01 -08:00
3b471fcb05 [WV2] Add alt style picker 2026-02-05 18:04:49 -08:00
df043b939e Support GET requests for /pets/load 2026-02-05 17:17:46 -08:00
366158b698 Add time frames to the Top Contributors list
Note that these queries are a bit slow. I don't think these new subpages will be accessed anywhere near often enough for their ~2sec query time to be a big deal. But if we start getting into trouble with it (e.g. someone starts slamming us for fun), we can look into how how cache these values over time.
2026-01-20 19:54:22 -08:00
b03b32c538 Merge branch 'main' into feature/wardrobe-v2
# Conflicts:
#	app/models/outfit.rb
#	spec/models/outfit_spec.rb
2026-01-20 18:53:21 -08:00
04ed182cef First draft of auto-modeling
Run `rails items:auto_model`! We'll set this up on a cron if we continue to be satisfied with the results.
2026-01-20 18:37:17 -08:00
dd2f6be79f Fix HTML5 rendering differences in us vs Neopets
I pulled the source map for the Neopets renderer, and had Claude compare it to ours. It noticed the key issue responsible for a high number of unsolved rendering issues: we weren't setting up the `MotionGuidePlugin`, which I've never heard of before. Whoops!

In addition to this, we made some other minor fixes for consistency:
- Use whatever Stage object the library exports (will sometimes be StageGL)
- Resize the stage rather than the clip (shouldn't matter?)
- Send a callback to the library when done (I'm not aware of any anims that use this but some may!)

The specific item I was debugging was "Food Fight Shower", and it works now! But I also know we've had a solid handful of similar inexplicable wild rendering bugs, which I imagine this solves as well.

We might want to consider auditing our Known Glitches on SWF assets to see how many of them can be removed, now that this is resolved.
2026-01-19 11:00:59 -08:00
6aff39dfed Always show rack-mini-profiler in development 2026-01-17 22:16:33 -08:00
7430e12655 Extend rails pets:load to look up arbitrary pets & items 2026-01-04 18:38:01 -08:00
a9c9f94dde Fix PB item handling for Christmas Varwolf
It says "This item is part of a deluxe paint brush set.", with a period instead of exclamation mark.

There are also a couple cases where the paint brush item additionally has an "inspired by" credit after the first sentence. Rather than get picky about the pattern, we expand the `pb?` method to just check for the sentence as a substring, like the DB filter logic for `Item.is_pb` already does.
2026-01-04 14:22:35 -08:00
4e00f5d1af Add basic item JSON response (with trade values + counts) 2026-01-04 13:55:33 -08:00
55fa50c22a Add basic image generation route /outfits/new.png 2026-01-03 11:44:43 -08:00
f823bac717 Add alt style support to Outfit#visible_layers 2026-01-03 11:05:23 -08:00
f545510edc [WV2] Custom play/pause animations button 2026-01-03 10:44:10 -08:00
23e951edcd Add Lebron links when there is no known trade value
because the new site has useful trade info anyway!
2025-12-27 19:24:09 -08:00
aac3e5a5a9 Update Lebron links to new Stylisher site 2025-12-27 19:09:38 -08:00
cbf69e1189 [WV2] Split template into partials 2025-12-26 23:19:39 -08:00
9ea48f6e8c [WV2] Improve pose picker button styles
Make it more subtle, to create clearer hierarchy between species/color and pose
2025-12-26 23:11:22 -08:00
812e8226bb [WV2] Unify button styles 2025-12-26 23:01:40 -08:00
955aeb984e [WV2] Simplify item search layout 2025-12-26 22:43:17 -08:00
74386b45d7 [WV2] More advanced mobile layout 2025-12-26 22:32:20 -08:00
ba0612b694 [WV2] Fix controls area width on mobile 2025-12-26 22:28:24 -08:00
b36b1577b5 [WV2] Fix cursor for outfit viewer play/pause 2025-12-26 22:19:06 -08:00
fb8fb4b27e [WV2] Fix anchor positioning for pose picker popover 2025-12-26 22:15:57 -08:00
7459037c8a [WV2] Simplify item search pagination
I'll want to do it smarter than this, but for now, just getting rid of the page links altogether seems best
2025-11-26 16:58:38 -08:00
6eace54c34 [WV2] Pose picker popover 2025-11-11 18:07:06 -08:00