|
bb1164d081
|
song: enrich metadata from API
This should be the last of the API interactions we need.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-18 04:10:38 +09:00 |
|
|
d4789d958b
|
composite: flatten album and song data
This establishes relation between album and song.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-18 01:46:07 +09:00 |
|
|
2d6b87702d
|
generic: move StringInt padding to string method
This allows the implementation to be reused for url and filename
formatting in the downloader.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 08:02:18 +09:00 |
|
|
ea54772c03
|
song: struct for /api/song/%d
This also includes tests against a sample response from the
https://monster-siren.hypergryph.com/api/song/048794 endpoint.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 07:49:06 +09:00 |
|
|
c2c4171a3a
|
generic: emulate nullable string behaviour
This fills the gap for nullable strings returned by the API.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 07:47:57 +09:00 |
|
|
7dd470f9ae
|
generic: struct for response common fields
This is common across all responses.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:57:16 +09:00 |
|
|
033357459f
|
songs: struct for /api/songs
This also includes tests against a sample response from the
https://monster-siren.hypergryph.com/api/songs endpoint.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:41:57 +09:00 |
|
|
b001ef50aa
|
generic: pad for different lengths
This can be autodetected based on existing string.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:40:35 +09:00 |
|
|
2f34599823
|
generic: generalise json check
This code is shared for all json checks.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:33:11 +09:00 |
|
|
821e46d405
|
albums: struct for /api/albums
This also includes tests against a sample response from the
https://monster-siren.hypergryph.com/api/albums endpoint.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:15:59 +09:00 |
|
|
cc45f04800
|
generic: pad string representation
This replicates api behaviour.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 06:01:00 +09:00 |
|
|
5b9d1e4fe8
|
generic: parse string representation of integer
This makes the data easier to handle down the pipeline.
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 05:41:40 +09:00 |
|
|
bddce42723
|
go: initialise go module
Signed-off-by: Yonah <contrib@gensokyo.uk>
|
2025-09-17 04:51:52 +09:00 |
|