diff --git a/DanXiUI/Forum/Presentation/FloorPresentation.swift b/DanXiUI/Forum/Presentation/FloorPresentation.swift index adfd924a..65d5c221 100644 --- a/DanXiUI/Forum/Presentation/FloorPresentation.swift +++ b/DanXiUI/Forum/Presentation/FloorPresentation.swift @@ -95,7 +95,7 @@ func parseFloorImageURLs(content: String) -> [URL] { var imageURLs: [URL] = [] for run in attributed.runs { if let imageURL = run.imageURL, - Sticker(rawValue: imageURL.absoluteString) == nil { + imageURL.absoluteString.starts(with: "http") { imageURLs.append(imageURL) } } diff --git a/DanXiUI/Forum/Presentation/Sticker.swift b/DanXiUI/Forum/Presentation/Sticker.swift deleted file mode 100644 index 48199d0c..00000000 --- a/DanXiUI/Forum/Presentation/Sticker.swift +++ /dev/null @@ -1,57 +0,0 @@ -import SwiftUI - -enum Sticker: String, CaseIterable { - case angry = "dx_angry" - case call = "dx_call" - case cate = "dx_cate" - case dying = "dx_dying" - case egg = "dx_egg" - case fright = "dx_fright" - case heart = "dx_heart" - case hug = "dx_hug" - case overwhelm = "dx_overwhelm" - case roll = "dx_roll" - case roped = "dx_roped" - case sleep = "dx_sleep" - case swim = "dx_swim" - case thrill = "dx_thrill" - case touchFish = "dx_touch_fish" - case twin = "dx_twin" - case kiss = "dx_kiss" - case onlooker = "dx_onlooker" - case craving = "dx_craving" - case caught = "dx_caught" - case worn = "dx_worn" - case murderous = "dx_murderous" - case confused = "dx_confused" - case like = "dx_like" - - var image: Image { - switch self { - case .angry: Image("angry", bundle: .module) - case .call: Image("alarm", bundle: .module) - case .cate: Image("cat", bundle: .module) - case .dying: Image("dying", bundle: .module) - case .egg: Image("shield", bundle: .module) - case .fright: Image("scared", bundle: .module) - case .heart: Image("flipped", bundle: .module) - case .hug: Image("hug", bundle: .module) - case .overwhelm: Image("broken", bundle: .module) - case .roll: Image("roll", bundle: .module) - case .roped: Image("hung", bundle: .module) - case .sleep: Image("asleep", bundle: .module) - case .swim: Image("swimming", bundle: .module) - case .thrill: Image("happy", bundle: .module) - case .touchFish: Image("slacking", bundle: .module) - case .twin: Image("dd", bundle: .module) - case .kiss: Image("kiss", bundle: .module) - case .onlooker: Image("onlooker", bundle: .module) - case .craving: Image("craving", bundle: .module) - case .caught: Image("caught", bundle: .module) - case .worn: Image("worn", bundle: .module) - case .murderous: Image("murderous", bundle: .module) - case .confused: Image("confused", bundle: .module) - case .like: Image("like", bundle: .module) - } - } -} diff --git a/DanXiUI/Forum/Store/StickerStore.swift b/DanXiUI/Forum/Store/StickerStore.swift new file mode 100644 index 00000000..0300524f --- /dev/null +++ b/DanXiUI/Forum/Store/StickerStore.swift @@ -0,0 +1,84 @@ +import Utils +import SwiftUI +import Disk + +class StickerStore: ObservableObject { + static let shared = StickerStore() + + var stickers: [Sticker] + var stickerSet: Set + var stickerImage: [String: LoadedImage] + + init() { + stickers = [] + stickerImage = [:] + stickerSet = [] + } + + func initialize() async throws { + if ConfigurationCenter.configuration.stickers.isEmpty { + try await ConfigurationCenter.refresh() + } + + self.stickers = ConfigurationCenter.configuration.stickers + self.stickerSet = Set(stickers.map(\.id)) + + for sticker in stickers { + do { + let loadedImage = try await retrieveImage(sticker: sticker) + stickerImage[sticker.id] = loadedImage + } catch _ as URLError { + continue // ignore network error, sticker loading failed should not be fatal + } + } + + Task { + try clearUnunsed(stickers: stickers) + } + } + + private func retrieveImage(sticker: Sticker) async throws -> LoadedImage { + let filename = "stickers/\(sticker.sha256).jpg" + + let fileURL = try Disk.url(for: filename, in: .caches) + + // retrieved from disk + if let uiImage = try? Disk.retrieve(filename, from: .caches, as: UIImage.self) { + let image = Image(uiImage: uiImage) + return LoadedImage(image: image, uiImage: uiImage, fileURL: fileURL) + } + + // download image from internet + let (data, _) = try await URLSession.shared.data(from: sticker.url) + guard let uiImage = UIImage(data: data) else { + throw LocatableError() + } + try Disk.save(uiImage, to: .caches, as: filename) + let image = Image(uiImage: uiImage) + + return LoadedImage(image: image, uiImage: uiImage, fileURL: fileURL) + } + + private func clearUnunsed(stickers: [Sticker]) throws { + let fileManager = FileManager.default + let paths = fileManager.urls(for: .cachesDirectory, in: .userDomainMask) + guard var path = paths.first else { return } + path.append(path: "stickers") + + let items = try fileManager.contentsOfDirectory(at: path, includingPropertiesForKeys: nil) + for item in items { + let filename = item.lastPathComponent + for sticker in stickers { + if filename.starts(with: sticker.sha256) { + try? fileManager.removeItem(at: item) + } + } + } + } +} + +struct LoadedImage { + let image: Image + let uiImage: UIImage + let fileURL: URL +} diff --git a/DanXiUI/Forum/Views/ForumEditor.swift b/DanXiUI/Forum/Views/ForumEditor.swift index 2468443e..ad0f7a26 100644 --- a/DanXiUI/Forum/Views/ForumEditor.swift +++ b/DanXiUI/Forum/Views/ForumEditor.swift @@ -7,6 +7,7 @@ import DanXiKit public struct ForumEditor: View { @EnvironmentObject.Optional private var holeModel: HoleModel? + @ObservedObject private var stickerStore = StickerStore.shared @StateObject private var model: ForumEditorModel @Binding var content: String @State private var textHeight: CGFloat = .zero @@ -118,7 +119,7 @@ public struct ForumEditor: View { .useSafariController() } } - + private var stickerPicker: some View { NavigationStack { Form { @@ -127,12 +128,16 @@ public struct ForumEditor: View { GridItem(.flexible()), GridItem(.flexible()), GridItem(.flexible())]) { - ForEach(Sticker.allCases, id: \.self.rawValue) { sticker in + ForEach(StickerStore.shared.stickers) { sticker in Button { - model.insertTextAtCursor("![](\(sticker.rawValue))") + model.insertTextAtCursor("![](\(sticker.id))") showStickers = false } label: { - sticker.image + if let loadedImage = stickerStore.stickerImage[sticker.id] { + loadedImage.image + } else { + Image(systemName: "photo.badge.exclamationmark") + } } } } diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/Contents.json deleted file mode 100644 index 73c00596..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/Contents.json deleted file mode 100644 index 565b000e..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "alarm.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "alarm@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "alarm@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm.png deleted file mode 100644 index 42fc68c0..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@2x.png deleted file mode 100644 index f6f7dd9e..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@3x.png deleted file mode 100644 index 93bb072d..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/alarm.imageset/alarm@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/Contents.json deleted file mode 100644 index bc0a6ebc..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "angry.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "angry@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "angry@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry.png deleted file mode 100644 index 19a6fd8a..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@2x.png deleted file mode 100644 index 6a66a0fa..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@3x.png deleted file mode 100644 index 2171ee94..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/angry.imageset/angry@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/Contents.json deleted file mode 100644 index a5a3dead..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "asleep.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "asleep@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "asleep@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep.png deleted file mode 100644 index f93710cd..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@2x.png deleted file mode 100644 index 22ab0bb2..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@3x.png deleted file mode 100644 index 72b1a198..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/asleep.imageset/asleep@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/Contents.json deleted file mode 100644 index 8cb8bee9..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "broken.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "broken@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "broken@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken.png deleted file mode 100644 index 894425e1..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@2x.png deleted file mode 100644 index ddd890ab..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@3x.png deleted file mode 100644 index ce3dcce0..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/broken.imageset/broken@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/Contents.json deleted file mode 100644 index 46fe8d47..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "cat.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "cat@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "cat@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat.png deleted file mode 100644 index 82f8fb6b..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@2x.png deleted file mode 100644 index bd5c542d..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@3x.png deleted file mode 100644 index cfef6920..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/cat.imageset/cat@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/Contents.json deleted file mode 100644 index 08f4f3ee..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "学术垃圾_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "学术垃圾_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "学术垃圾_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_1x.png" deleted file mode 100644 index 141c7128..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_2x.png" deleted file mode 100644 index d03c2980..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_3x.png" deleted file mode 100644 index 4cf73da9..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/caught.imageset/\345\255\246\346\234\257\345\236\203\345\234\276_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/Contents.json deleted file mode 100644 index 96f3205f..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "疑惑_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "疑惑_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "疑惑_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_1x.png" deleted file mode 100644 index f313c4d8..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_2x.png" deleted file mode 100644 index c9ed5e04..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_3x.png" deleted file mode 100644 index 11c37853..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/confused.imageset/\347\226\221\346\203\221_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/Contents.json deleted file mode 100644 index 374e3258..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "大吃特吃_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "大吃特吃_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "大吃特吃_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_1x.png" deleted file mode 100644 index bb700c67..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_2x.png" deleted file mode 100644 index 8af117e4..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_3x.png" deleted file mode 100644 index 3434b1df..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/craving.imageset/\345\244\247\345\220\203\347\211\271\345\220\203_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/Contents.json deleted file mode 100644 index 1769ea03..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "dd.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "dd@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "dd@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd.png deleted file mode 100644 index ba0d9b15..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@2x.png deleted file mode 100644 index bf5defdd..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@3x.png deleted file mode 100644 index 1b370730..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dd.imageset/dd@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/Contents.json deleted file mode 100644 index 85f86de3..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "dying.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "dying@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "dying@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying.png deleted file mode 100644 index 04a0b0e8..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@2x.png deleted file mode 100644 index a6d4bca3..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@3x.png deleted file mode 100644 index eafbaec2..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/dying.imageset/dying@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/Contents.json deleted file mode 100644 index b8d87b1f..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "flipped.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "flipped@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "flipped@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped.png deleted file mode 100644 index 9e089b40..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@2x.png deleted file mode 100644 index afd047c8..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@3x.png deleted file mode 100644 index d9c4ef4b..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/flipped.imageset/flipped@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/Contents.json deleted file mode 100644 index 68d3aefb..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "happy.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "happy@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "happy@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy.png deleted file mode 100644 index 0f62edff..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@2x.png deleted file mode 100644 index 8613f289..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@3x.png deleted file mode 100644 index 7fe0a564..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/happy.imageset/happy@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/Contents.json deleted file mode 100644 index 35510cc7..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "hug.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "hug@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "hug@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug.png deleted file mode 100644 index 78c26cda..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@2x.png deleted file mode 100644 index 73696eab..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@3x.png deleted file mode 100644 index 3b092b71..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hug.imageset/hug@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/Contents.json deleted file mode 100644 index 99b62a01..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "hung.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "hung@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "hung@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung.png deleted file mode 100644 index 1d187c32..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@2x.png deleted file mode 100644 index 3517790e..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@3x.png deleted file mode 100644 index f905dc43..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/hung.imageset/hung@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/Contents.json deleted file mode 100644 index 4f9a3d72..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "亲亲_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "亲亲_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "亲亲_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_1x.png" deleted file mode 100644 index 6f6cb2db..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_2x.png" deleted file mode 100644 index fb7d6c06..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_3x.png" deleted file mode 100644 index 10338e46..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/kiss.imageset/\344\272\262\344\272\262_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/Contents.json deleted file mode 100644 index 02902a05..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "赞_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "赞_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "赞_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_1x.png" deleted file mode 100644 index 48e19fea..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_2x.png" deleted file mode 100644 index 4db78225..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_3x.png" deleted file mode 100644 index ff55bdce..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/like.imageset/\350\265\236_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/Contents.json deleted file mode 100644 index d9153909..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "有杀气_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "有杀气_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "有杀气_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_1x.png" deleted file mode 100644 index 487c43d8..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_2x.png" deleted file mode 100644 index 5ee094c4..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_3x.png" deleted file mode 100644 index 4b083a77..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/murderous.imageset/\346\234\211\346\235\200\346\260\224_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/Contents.json deleted file mode 100644 index b1a08a22..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "吃瓜_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "吃瓜_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "吃瓜_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_1x.png" deleted file mode 100644 index 9e2d036c..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_2x.png" deleted file mode 100644 index ade10e7d..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_3x.png" deleted file mode 100644 index 86ee8adf..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/onlooker.imageset/\345\220\203\347\223\234_3x.png" and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/Contents.json deleted file mode 100644 index ca83ab22..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "roll.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "roll@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "roll@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll.png deleted file mode 100644 index 01480920..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@2x.png deleted file mode 100644 index 8e621b94..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@3x.png deleted file mode 100644 index 0d573927..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/roll.imageset/roll@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/Contents.json deleted file mode 100644 index 9073ba47..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "scared.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "scared@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "scared@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared.png deleted file mode 100644 index 060efd29..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@2x.png deleted file mode 100644 index 30116276..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@3x.png deleted file mode 100644 index 0d82f933..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/scared.imageset/scared@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/Contents.json deleted file mode 100644 index a7e12748..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "shield.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "shield@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "shield@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield.png deleted file mode 100644 index e91bd1af..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@2x.png deleted file mode 100644 index f60f6dfe..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@3x.png deleted file mode 100644 index 30cfa3e4..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/shield.imageset/shield@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/Contents.json deleted file mode 100644 index 94c5d84b..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "slacking.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "slacking@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "slacking@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking.png deleted file mode 100644 index 1818a75a..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@2x.png deleted file mode 100644 index 874bf421..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@3x.png deleted file mode 100644 index 3eaf8214..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/slacking.imageset/slacking@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/Contents.json deleted file mode 100644 index e79b816b..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "swimming.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "swimming@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "swimming@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming.png deleted file mode 100644 index bb952196..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@2x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@2x.png deleted file mode 100644 index 45b0b7de..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@2x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@3x.png b/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@3x.png deleted file mode 100644 index d6054e9b..00000000 Binary files a/DanXiUI/Resouces/Assets.xcassets/Stickers/swimming.imageset/swimming@3x.png and /dev/null differ diff --git a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/Contents.json b/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/Contents.json deleted file mode 100644 index 0da754d6..00000000 --- a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "憔悴_1x.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "憔悴_2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "憔悴_3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_1x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_1x.png" deleted file mode 100644 index 4de404e1..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_1x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_2x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_2x.png" deleted file mode 100644 index 821abfb0..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_2x.png" and /dev/null differ diff --git "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_3x.png" "b/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_3x.png" deleted file mode 100644 index 2c77478c..00000000 Binary files "a/DanXiUI/Resouces/Assets.xcassets/Stickers/worn.imageset/\346\206\224\346\202\264_3x.png" and /dev/null differ diff --git a/DanXiUI/Utils/CustomMarkdown.swift b/DanXiUI/Utils/CustomMarkdown.swift index 1952ecbd..a7a72e43 100644 --- a/DanXiUI/Utils/CustomMarkdown.swift +++ b/DanXiUI/Utils/CustomMarkdown.swift @@ -43,12 +43,12 @@ public struct CustomMarkdown: View { struct ImageProviderWithSticker: InlineImageProvider { func image(with url: URL, label: String) async throws -> Image { - guard let sticker = Sticker(rawValue: url.absoluteString) else { + guard let loadedImage = StickerStore.shared.stickerImage[url.absoluteString] else { // This is not a sticker let description = String(localized: "Sticker parse failed.", bundle: .module) throw LocatableError(description) } - return sticker.image + return loadedImage.image } } @@ -56,8 +56,8 @@ struct CustomImageProvider: ImageProvider { func makeImage(url: URL?) -> some View { Group { if let url { - if let sticker = Sticker(rawValue: url.absoluteString) { - sticker.image + if let loadedImage = StickerStore.shared.stickerImage[url.absoluteString] { + loadedImage.image } else if Proxy.shared.shouldTryProxy, Proxy.shared.outsideCampus { ImageView(url, proxiedURL: Proxy.shared.createProxiedURL(url: url)) } else { @@ -75,7 +75,7 @@ func replaceMarkdownTags(_ content: String) -> String { var markdown = content markdown.replace(/\${1,2}[\s\S]*?\${1,2}/, with: String(localized: "[Formula]", bundle: .module)) markdown.replace(/!\[.*?\]\((?.*?)\)/) { match in - if Sticker(rawValue: String(match.link)) != nil { + if StickerStore.shared.stickerSet.contains(String(match.link)) { return String(localized: "[Sticker]", bundle: .module) } else { return String(localized: "[Image]", bundle: .module) diff --git a/Utils/App/ConfigurationCenter.swift b/Utils/App/ConfigurationCenter.swift index 3c08f0f9..31f30e3c 100644 --- a/Utils/App/ConfigurationCenter.swift +++ b/Utils/App/ConfigurationCenter.swift @@ -87,18 +87,21 @@ public struct AppConfiguration: Codable { public let semesterStartDate: [Int: Date] public let banners: [Banner] public let userAgent: String + public let stickers: [Sticker] /// Initializer that creates an empty configuration init() { semesterStartDate = [:] banners = [] userAgent = "DXSwift" + stickers = [] } init(semesterStartDate: [Int: Date], banners: [Banner], userAgent: String) { self.semesterStartDate = semesterStartDate self.banners = banners self.userAgent = userAgent + self.stickers = [] } } @@ -110,3 +113,10 @@ public struct Banner: Codable, Equatable { /// Text that should be displayed on the button. public let button: String } + +/// Remote-controlled sticker image +public struct Sticker: Identifiable, Codable, Hashable { + public let id: String + public let sha256: String + public let url: URL +}