Berenice Medel
ec6606f29c
test delete_expired_songs/2
2022-01-17 10:02:19 -06:00
Berenice Medel
1cb2e7454c
add functions to delete expired songs
2022-01-17 10:02:19 -06:00
Chris McCord
be420bdc44
Match topbar with theme
2022-01-14 11:05:41 -05:00
Chris McCord
a39bb0a5ac
Return updated metas to client.
...
Fixes presences being removed when user has
active tabs
2022-01-12 14:15:06 -05:00
Chris McCord
924da28b6b
Move presence tracking to player
2022-01-12 12:27:30 -05:00
Chris McCord
a30e311645
Merge branch 'feature/presence'
2022-01-11 14:58:05 -05:00
Chris McCord
9998e06caa
Optimize presence.
...
Avoid fetching each user by passing in full pre-fetched
presences from Presence.fetch/2 callback.
Use temporary assigns in ProfileLive to avoid duping
presences in memeory.
Handle removes by a small hook event
2022-01-11 14:57:06 -05:00
Berenice Medel Sánchez
a65c789748
add presence client behaviour callbacks
2022-01-11 14:04:27 -05:00
Chris McCord
b8bbba8ecb
Fix tests
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
dcaf024042
change tests description
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
4d0665679c
add metas tests
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
8dfb96c78a
fix tests
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
84d4eead7a
use genserver pid or name in client API
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
0bde8f40d6
don't start presence client on tests
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
028c619047
keep client state in the phoenix presence client
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
9b5587d484
implement fetch callback to list users
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
defb8ccf92
update/remove metas
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
6b5e820130
initial tests added
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
bdb4319f16
unsubscribe is no more handled in untrack_pid
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
0579f9f293
handle leaves and joins in the same function
2022-01-11 14:04:27 -05:00
Berenice Medel Sánchez
c22e104a24
change key to string when tracking and untrackin presences
2022-01-11 14:04:27 -05:00
Berenice Medel
463faafe71
Implement handle_leave and handle_join in presence_client
...
- The profile Liveview is subscribed to active_users topic
- user_joined and user_left events are sent
- Users are added and removed from presences assign
2022-01-11 14:04:27 -05:00
Berenice Medel
4634d32295
update phoenix client state
...
-add topics
- remove_topics
- add_presences
- remove_presences
2022-01-11 14:04:27 -05:00
Berenice Medel
bd927bf8b2
add presence client
2022-01-11 14:04:27 -05:00
Berenice Medel
216916817b
configure presence for tracking the users listening a playlist
2022-01-11 14:04:27 -05:00
Chris McCord
a0f3b76f61
Merge pull request #18 from ndarilek/hide-empty-metadata
...
Hide title/artist metadata when empty.
2022-01-10 14:56:32 -05:00
Chris McCord
ad3cab4d29
Merge pull request #20 from ndarilek/playlist-a11y
...
Improve playlist accessibility
2022-01-07 15:24:00 -05:00
Chris McCord
cb781d855e
Merge branch 'cm-tailwind-standalone'
2022-01-07 13:42:26 -05:00
Chris McCord
fba89209bd
Merge branch 'master' of github.com:chrismccord/live_beats
2022-01-07 13:42:12 -05:00
Chris McCord
c5b25aa5be
Add standalone tailwind
2022-01-07 13:42:04 -05:00
Chris McCord
dff06cf171
Merge pull request #21 from ndarilek/misc-a11y
...
Add additional region for search region when mobile sidebar is displayed.
2022-01-05 16:02:08 -05:00
Chris McCord
a774838355
Merge pull request #22 from ndarilek/trim-a11y
...
Simplify a few things
2022-01-05 15:50:22 -05:00
Nolan Darilek
7b48c2fbaf
Further simplify post-route handler.
...
* Use `HtmlElement.tabIndex` directly rather than going through attributes.
* Always restore `tabIndex` after focus.
* Remove `setTimeout` to simplify implementation.
This does have a disadvantage in that it leaves unnecessary `tabindex="1"` instances around. On the other hand, it does simplify the implementation and get the job done' so is probably a more clear example of how to do this correctly.
2021-12-22 12:41:19 -06:00
Nolan Darilek
7d09845b8c
Remove unnecessary window.requestAnimationFrame
.
2021-12-22 12:06:08 -06:00
Nolan Darilek
57150a4f7a
Add additional region for search region when mobile sidebar is displayed.
2021-12-20 12:13:49 -06:00
Nolan Darilek
159363fb4b
Add button role to icons to hint that they are actionable.
2021-12-20 11:02:36 -06:00
Nolan Darilek
3860c79ec7
If an icon has aria-label
set, don't set aria-hidden
. Also, label some icons.
2021-12-16 15:26:12 -06:00
Chris McCord
bbb9693e8c
WIP
2021-12-16 11:06:22 -05:00
Chris McCord
67a291ac3a
Revert temporary assign
2021-12-15 22:03:18 -05:00
Chris McCord
8da032fed3
Make songs temporary assigns
2021-12-15 21:51:09 -05:00
Chris McCord
ce1a1fdc5f
Do not focus outline h1 in title bar
2021-12-15 12:48:05 -05:00
Chris McCord
9958ba97d0
TODO
2021-12-14 21:09:36 -05:00
Chris McCord
803f0b52cc
Test bad inputs
2021-12-14 21:07:02 -05:00
Chris McCord
816eb78064
Add mp3stat test
2021-12-14 21:02:50 -05:00
Chris McCord
c089302881
TODO
2021-12-14 15:40:46 -05:00
Chris McCord
b2950adb2a
TODO
2021-12-14 15:31:02 -05:00
Chris McCord
570e86d02c
Test song deletion
2021-12-14 15:29:07 -05:00
Chris McCord
dda0cdaa3f
Test basic uploads
2021-12-14 15:19:03 -05:00
Nolan Darilek
7fdb30520e
Hide title/artist metadata when empty.
...
From an accessibility perspective, having an empty `<h2/>` is confusing. Even though it lacks text, it remains visible to scree readers and is still navigable.
I'm not sure whether wrapping the entire `<div/>` in this check breaks the layout, or if the individual elements should have `aria-hidden` set if their values are empty.
2021-12-14 12:17:40 -06:00
Chris McCord
c8a6035a02
Fixup tests
2021-12-14 10:35:51 -05:00