convert container from Messages-only app to regular iOS app, move shared code (models, api client, store) to Shared/ group, add app group entitlements for cross-process data sharing, rewrite StickerStore for shared UserDefaults + container, create SwiftUI app entry point, simplify extension to read-only browser Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
28 lines
503 B
Swift
28 lines
503 B
Swift
import Foundation
|
|
|
|
// MARK: - API response types (matches backend /api/stickersets/{name})
|
|
|
|
struct StickerSetResponse: Codable {
|
|
let name: String
|
|
let title: String
|
|
let stickerCount: Int
|
|
let stickers: [StickerResponse]
|
|
}
|
|
|
|
struct StickerResponse: Codable {
|
|
let id: String
|
|
let emoji: String
|
|
let emojiName: String
|
|
let isAnimated: Bool
|
|
let pngUrl: String
|
|
let gifUrl: String?
|
|
}
|
|
|
|
// MARK: - Local persistence
|
|
|
|
struct SavedPack: Codable {
|
|
let name: String
|
|
let title: String
|
|
let stickerCount: Int
|
|
}
|