A music player that connects to your cloud/distributed storage.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add basic track types

+132 -12
+4
src/Library/Authentication.elm
··· 7 7 = Local 8 8 9 9 10 + 11 + -- ⚡️ 12 + 13 + 10 14 methodToString : Method -> String 11 15 methodToString method = 12 16 case method of
+128
src/Library/Track.elm
··· 1 + module Track exposing (Collection, Favourite, IdentifiedTrack, Identifiers, Tags, Track, emptyCollection, emptyIdentifiedTrack, emptyTags, emptyTrack, missingId) 2 + 3 + -- 🌳 4 + 5 + 6 + type alias Track = 7 + { id : String 8 + , path : String 9 + , sourceId : String 10 + , tags : Tags 11 + } 12 + 13 + 14 + 15 + -- PIECES 16 + 17 + 18 + type alias Tags = 19 + { disc : Int 20 + , nr : Int 21 + 22 + -- Main 23 + , album : String 24 + , artist : String 25 + , title : String 26 + 27 + -- Extra 28 + , genre : Maybe String 29 + , picture : Maybe String 30 + , year : Maybe Int 31 + } 32 + 33 + 34 + 35 + -- DERIVATIVES & SUPPLEMENTS 36 + 37 + 38 + type alias Favourite = 39 + { artist : String 40 + , title : String 41 + } 42 + 43 + 44 + type alias IdentifiedTrack = 45 + ( Identifiers, Track ) 46 + 47 + 48 + type alias Identifiers = 49 + { isFavourite : Bool 50 + , isMissing : Bool 51 + , isNowPlaying : Bool 52 + , isSelected : Bool 53 + 54 + -- 55 + , indexInList : Int 56 + , indexInPlaylist : Maybe Int 57 + } 58 + 59 + 60 + 61 + -- COLLECTIONS 62 + 63 + 64 + type alias Collection = 65 + { untouched : List Track 66 + 67 + -- `Track`s with `Identifiers` 68 + , identified : List IdentifiedTrack 69 + 70 + -- Sorted and filtered by playlist (if not auto-generated) 71 + , arranged : List IdentifiedTrack 72 + 73 + -- Filtered by search results, favourites, etc. 74 + , harvested : List IdentifiedTrack 75 + } 76 + 77 + 78 + 79 + -- ⚡️ 80 + 81 + 82 + emptyTrack : Track 83 + emptyTrack = 84 + { id = "" 85 + , path = "" 86 + , sourceId = "" 87 + , tags = emptyTags 88 + } 89 + 90 + 91 + emptyTags : Tags 92 + emptyTags = 93 + { disc = 1 94 + , nr = 0 95 + , album = "Empty" 96 + , artist = "Empty" 97 + , title = "Empty" 98 + , genre = Nothing 99 + , picture = Nothing 100 + , year = Nothing 101 + } 102 + 103 + 104 + emptyIdentifiedTrack : IdentifiedTrack 105 + emptyIdentifiedTrack = 106 + ( { isFavourite = False 107 + , isMissing = False 108 + , isNowPlaying = False 109 + , isSelected = False 110 + , indexInList = 0 111 + , indexInPlaylist = Nothing 112 + } 113 + , emptyTrack 114 + ) 115 + 116 + 117 + emptyCollection : Collection 118 + emptyCollection = 119 + { untouched = [] 120 + , identified = [] 121 + , arranged = [] 122 + , harvested = [] 123 + } 124 + 125 + 126 + missingId : String 127 + missingId = 128 + "<missing>"
-12
src/Library/Tracks.elm
··· 1 - module Tracks exposing (Track) 2 - 3 - -- 🌳 4 - 5 - 6 - type alias Track = 7 - {} 8 - 9 - 10 - type alias Model = 11 - { collection : List Track 12 - }