A music player that connects to your cloud/distributed storage.
1port module Brain.Ports exposing (..)
2
3import Alien
4import Json.Encode as Json
5import Sources.Processing exposing (ContextForTags, ContextForTagsSync)
6
7
8
9-- 📣
10
11
12port downloadTracks : Json.Value -> Cmd msg
13
14
15port removeTracksFromCache : Json.Value -> Cmd msg
16
17
18port requestSearch : String -> Cmd msg
19
20
21port requestTags : ContextForTags -> Cmd msg
22
23
24port storeTracksInCache : Json.Value -> Cmd msg
25
26
27port syncTags : ContextForTagsSync -> Cmd msg
28
29
30port toUI : Alien.Event -> Cmd msg
31
32
33port updateSearchIndex : Json.Value -> Cmd msg
34
35
36
37-- 📣 ░░ USER LAYER SERVICES
38
39
40port deconstructRemoteStorage : () -> Cmd msg
41
42
43port provideArtworkTrackUrls : Json.Value -> Cmd msg
44
45
46port requestDropbox : Alien.Event -> Cmd msg
47
48
49port requestIpfs : Alien.Event -> Cmd msg
50
51
52port requestRemoteStorage : Alien.Event -> Cmd msg
53
54
55port toDropbox : Alien.Event -> Cmd msg
56
57
58port toIpfs : Alien.Event -> Cmd msg
59
60
61port toRemoteStorage : Alien.Event -> Cmd msg
62
63
64
65-- 📰
66
67
68port fromAlien : (Alien.Event -> msg) -> Sub msg
69
70
71port makeArtworkTrackUrls : (Json.Value -> msg) -> Sub msg
72
73
74port receiveSearchResults : (List String -> msg) -> Sub msg
75
76
77port refreshedAccessToken : (Json.Value -> msg) -> Sub msg
78
79
80port receiveTags : (ContextForTags -> msg) -> Sub msg
81
82
83port replaceTags : (ContextForTagsSync -> msg) -> Sub msg