mirror of
https://github.com/neon443/StickerSlack.git
synced 2026-03-11 13:26:17 +00:00
images for testdata, adding alias handling
This commit is contained in:
@@ -12,6 +12,14 @@ struct SlackResponse: Codable {
|
||||
var emoji: [String:String]
|
||||
|
||||
func toEmojis() -> [Emoji] {
|
||||
let initialMap = emoji.map {
|
||||
Emoji(name: $0.key, url: $0.value)
|
||||
}
|
||||
initialMap.map {
|
||||
var ret = $0
|
||||
ret.urlString = ret.urlString.prefix(6) == "alias:" ? initialMap.first(where: { $0.name == ret.name })!.url : ret.urlString
|
||||
return ret
|
||||
}
|
||||
return emoji.map {
|
||||
Emoji(name: $0.key, url: $0.value)
|
||||
}
|
||||
@@ -20,10 +28,13 @@ struct SlackResponse: Codable {
|
||||
|
||||
struct Emoji: Codable, Hashable {
|
||||
var name: String
|
||||
var url: String
|
||||
var urlString: String
|
||||
var url: URL {
|
||||
return URL(string: urlString) ?? URL(string: "https://")!
|
||||
}
|
||||
|
||||
init(name: String, url: String) {
|
||||
self.name = name
|
||||
self.url = url
|
||||
self.urlString = url
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ struct ContentView: View {
|
||||
List {
|
||||
ForEach(hoarder.testBundle.toEmojis(), id: \.self) { emoji in
|
||||
Text(emoji.name)
|
||||
Text(emoji.url)
|
||||
AsyncImage(url: emoji.url)
|
||||
}
|
||||
}
|
||||
.tabItem {
|
||||
|
||||
Reference in New Issue
Block a user