Chris McCord
4a5728daf5
Styling tweaks and optimize initial file drop
2022-01-26 11:33:20 -05:00
Chris McCord
53bd0a3cd1
Fix visual bouncing quirk on load
2022-01-26 11:33:20 -05:00
Chris McCord
8ab0dd04a0
Update lib/live_beats/application.ex
2022-01-18 12:29:08 -05:00
Berenice Medel
bd4d57377b
delete repeated code
2022-01-18 11:12:44 -06:00
Chris McCord
545594f1e5
Guard against valid units
2022-01-17 14:13:59 -05:00
Chris McCord
e4dd585e39
Remove need for timex
2022-01-17 14:11:26 -05:00
Berenice Medel
ffee2bf6f3
Init SongsCleaner on startup
2022-01-17 10:27:18 -06:00
Berenice Medel
1cb2e7454c
add functions to delete expired songs
2022-01-17 10:02:19 -06: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
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
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
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
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
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
Chris McCord
57c193e490
Merge pull request #14 from ndarilek/accessible-routing
...
Initial work on making routing more accessible
2021-12-13 13:21:04 -05:00
Chris McCord
7db38a70ab
Merge pull request #15 from ndarilek/sidebar-a11y
...
Improve accessibility of mobile sidebar
2021-12-13 13:19:53 -05:00
Berenice Medel
9262895d13
fix typo
2021-11-30 09:03:08 -06:00
Berenice Medel
e5c663ab38
show stop button when listening someone else playlist
2021-11-29 19:23:23 -06:00
Berenice Medel
0e0d349e31
hide play button on playlist
2021-11-29 19:21:35 -06:00
Chris McCord
5e3149ad8e
Only active tab user's own profile
2021-11-23 22:06:48 -05:00
Nolan Darilek
ca311dd11d
Further sidebar accessibility improvements.
...
* Set `aria-controls` to the sidebar container.
* Swap button focus as sidebar is revealed/hidden.
2021-11-23 11:41:07 -06:00
Nolan Darilek
ad13a8c364
Partial implementation of ARIA disclosure pattern for sidebar.
...
* Hide/show buttons to reveal sidebar as appropriate.
* Hard-code `aria-expanded`, since by default only one button is exposed at a given time.
2021-11-23 11:29:49 -06:00
Chris McCord
a325b385b3
Rename link attrs
2021-11-23 09:34:46 -05:00
Chris McCord
7f9b7c5f9a
Assign active_tab in handle_params to handle live patches
2021-11-23 09:34:46 -05:00
Nolan Darilek
7096b98cc2
Add alert role on connection status so it is read automatically on change.
...
Note: not currently tested since I'm not sure how to force these states, but I did notice them happening from time to time so wanted to try addressing them..
2021-11-22 15:24:10 -06:00
Nolan Darilek
6d95137d1f
Set aria-current
on active tab to indicate to screen readers which is selected.
2021-11-22 14:20:10 -06:00
Nolan Darilek
ef1355f897
Set aria-hidden="true"
on more SVG graphics, and hide icons by default.
...
The original icon fix assumed that the `<svg>` tag had an `alt` attribute, which it does not. Instead, SVG requires a child element to specify a description. A complete fix involves patching upstream to allow for setting this element, but since we don't seem to have actionable icons without associated textual controls, set `aria-hidden="true"` by default and require it to be overridden if needed.
2021-11-22 13:50:20 -06:00
Nolan Darilek
5cf58b2b77
Minor cleanup to make navigating by region easier.
...
* Make `<main>` the part of the page that actually changes when the route updates, thus making navigation to page content easier.
* Add labelled region for persistent audio player.
2021-11-22 13:18:06 -06:00
Chris McCord
d35554ee0e
Link logo placeholder
2021-11-22 13:04:05 -05:00
Chris McCord
55a1e1f02a
Logo placeholder
2021-11-22 12:50:42 -05:00
Chris McCord
7209a3121c
Add dropdown component
2021-11-22 11:21:11 -05:00
Chris McCord
198846433b
Resolve conflicts
2021-11-22 10:37:56 -05:00
Chris McCord
aec76630d1
Remove unnecessary attr
2021-11-22 10:36:18 -05:00
Chris McCord
a7c319c035
Use live_action instead of params
2021-11-22 10:31:40 -05:00
Chris McCord
632b211c44
Merge pull request #7 from chrismccord/fix/avoid_raise_error_on_duplicated_song
...
Handle unique song title constraint error on upload
2021-11-22 09:58:02 -05:00
Chris McCord
bb23d8e071
Rename SongLive modules to ProfileLive
2021-11-22 09:57:24 -05:00
Chris McCord
8b5c77ca90
Tweak highlight hover styles
2021-11-22 09:44:56 -05:00
Chris McCord
8ee6b39ad5
Show connection status flash
2021-11-22 09:24:41 -05:00
Berenice Medel
1a1bbe295e
show active tab in navbar
2021-11-19 13:50:36 -06:00
Berenice Medel
11d5cd8cdd
add unique constraint on songs changeset
2021-11-19 13:01:15 -06:00
Chris McCord
023ddc2806
Rename songs_number to songs_count and refactor error messages
2021-11-19 10:51:50 -05:00
Chris McCord
19241308ae
Merge pull request #5 from chrismccord/feature/validate_max_songs_per_account
...
Limit # of songs per account
2021-11-19 10:22:28 -05:00
Chris McCord
07d1dbf744
Fixup flash hiding
2021-11-19 09:55:26 -05:00
Berenice Medel
43bb03fb42
decrement songs_number with multi.update_all
2021-11-18 15:50:05 -06:00
Berenice Medel
64969fca31
handle raise conditions in multiple uploads
2021-11-18 15:36:51 -06:00
Chris McCord
f52eeb22c3
aria popup
2021-11-18 15:22:22 -05:00
Chris McCord
1dc43ac366
Fix focus and keyboard nav
...
Only enable keyboard nav and focus if button is
triggered by keyboard event
2021-11-18 15:21:07 -05:00
Chris McCord
d1f57d7514
Fix bad url recovery
2021-11-18 11:50:15 -05:00
Chris McCord
30b46e95e5
Add aria menu hook and use in sidebar
2021-11-18 09:55:09 -05:00
Berenice Medel
984c1c8523
decrement songs_number when a song is deleted
2021-11-17 15:32:09 -06:00
Berenice Medel
74c720180e
validate max songs per account in upload form
2021-11-17 15:31:34 -06:00
Nolan Darilek
c31a2ea8e0
Remove unused menu.
2021-11-17 10:09:04 -06:00
Nolan Darilek
72501c90b4
Remove aria-hidden
on icons in favor of empty alt text.
...
This matches better with adding alt text to images, which is probably better than either manually opting out of the accessibility tree or creating some less-compatible implementation.
2021-11-17 09:30:33 -06:00
Chris McCord
44a36a8763
Fix icon alignment
2021-11-16 22:26:33 -05:00
Chris McCord
11d48dea95
Rotate session key
2021-11-16 22:16:58 -05:00
Chris McCord
ee571b19a7
Allow configurable upload dir per env
2021-11-16 22:11:11 -05:00
Chris McCord
2f4940fab6
Fixup profiles
2021-11-16 15:54:40 -05:00
Nolan Darilek
fad37064db
Label player controls.
2021-11-16 14:26:10 -06:00
Nolan Darilek
f7db67f636
Hide icons with associated buttons from accessibility tree.
2021-11-16 14:14:17 -06:00
Chris McCord
364b0659e1
Deploy and presence stub
2021-11-16 11:58:28 -05:00
Kurt
d1a6f5d0cd
fix id3 tag parsing, extract title
2021-11-15 18:24:52 -06:00
Chris McCord
e496ff0a4e
Docs
2021-11-15 13:06:04 -05:00
Chris McCord
8f63fa842b
Docs
2021-11-15 12:42:12 -05:00
Chris McCord
458900b522
MP3 decoding tweaks
2021-11-15 12:06:45 -05:00
Chris McCord
1fc60aae2a
Replace ffmpeg with elixir mp3 decoder 🔥 🔥 🔥
2021-11-12 21:59:29 -05:00
Chris McCord
1960343cba
Use __MODULE__
2021-11-12 14:20:37 -05:00
Chris McCord
e873619a66
Add event dispatch system with more profile updates
2021-11-12 12:41:16 -05:00
Chris McCord
5ca7357665
Show active users in sidebar
2021-11-12 10:10:04 -05:00
Chris McCord
b3fe0ab666
Use event structs
2021-11-12 06:42:07 -05:00
Chris McCord
ed8ad74141
Only render delete song button if owner
2021-11-12 06:21:12 -05:00