For whatever reason, the Angel does not normally allow streaming on the first world.
I hacked around it, but would be good to figure out why that restriction is there
in the first place.
Attempting to use a react-component-like system, where the Surface simply emits everything that
happens through the shared GameUIState, and the parent (in this case the ThangsTabView, but theoretically
anything that uses the surface) handles the events manually, to enforce desired behavior for that particular
context.
It's nice that all the event handling is centralized, but it's still a bit of a mess, and not thoroughly
stateful. But it's a start. This is in preparation for allowing multi-thang selection and manipulation
in the level editor.
Use selected hero in Course mode play
Show selected hero on Courses (in progress)
Add hero select modal
Use short names, only show warriors
Use box-shadow instead of borders
Add tests for HeroSelectModal
Refactor modal opening test
Address code review feedback
Fix link to /teachers/classes (fixes bugquest#20)
Fix edit button color/icon (bugquest#23)
Fix bugquest#34
Fix password input width (bugquest#33)
Center new pasword text
Fix teacher password reset endpoint (bugquest#4)
Refactor+use NewHomeView logic for user page button (Fixes bugquest#2)
Refactor teacher-password-reset endpoint
This makes it much easier to prevent collisions with other logic when PUTing new User attributes.
Add regression test for converting to teacher account
Fix email verified links, require login (fix bugquest#16)
Fix me having stale emailVerified value (Fixes bugquest#40)
Don't show JoinClassModal to students
Add paragraph to JoinClassModal (fixes bugquest#14)
Update change-password label text (fixes bugquest#30)
Fix prompting for login on Account Settings page (bugquest #10)
Show validation errors for teacher password reset (bugquest#36)
Show yellow progress dot in My Classes if anyone has started (bugquest#55)
Remove confusing text (bugquest#100)