feat: add WeChat sharing and invite flow

This commit is contained in:
2026-07-07 16:53:39 +08:00
parent f1937e23d4
commit a80c181bd7
160 changed files with 7557 additions and 849 deletions

View File

@ -18,6 +18,8 @@ final class NetworkServices {
let homeAPI: HomeAPI
let paymentAPI: PaymentAPI
let taskAPI: TaskAPI
let inviteAPI: InviteAPI
let walletAPI: WalletAPI
let scenicQueueAPI: ScenicQueueAPI
let uploadAPI: UploadAPI
let ossUploadService: OSSUploadService
@ -32,6 +34,8 @@ final class NetworkServices {
homeAPI = HomeAPI(client: client)
paymentAPI = PaymentAPI(client: client)
taskAPI = TaskAPI(client: client)
inviteAPI = InviteAPI(client: client)
walletAPI = WalletAPI(client: client)
scenicQueueAPI = ScenicQueueAPI(client: client)
uploadAPI = UploadAPI(client: client)
ossUploadService = OSSUploadService(configService: uploadAPI)
@ -51,6 +55,8 @@ final class NetworkServices {
homeAPI = HomeAPI(client: apiClient)
paymentAPI = PaymentAPI(client: apiClient)
taskAPI = TaskAPI(client: apiClient)
inviteAPI = InviteAPI(client: apiClient)
walletAPI = WalletAPI(client: apiClient)
scenicQueueAPI = ScenicQueueAPI(client: apiClient)
uploadAPI = UploadAPI(client: apiClient)
ossUploadService = OSSUploadService(configService: uploadAPI)

View File

@ -0,0 +1,34 @@
//
// WeChatConfig.swift
// suixinkan
//
import Foundation
/// AppIDUniversal Link AASA
enum WeChatConfig {
/// AppID Info.plist URL Scheme
static let appID = "wxdd80ec12c4fee322"
/// OpenSDK 使 Universal Link HTTPS `/`
static let universalLink = "https://www.zhifly.cn/suixinkan/"
/// Associated Domains 使 `applinks:`
static let associatedDomain = "www.zhifly.cn"
/// AASA paths
static let aasaPathPattern = "/suixinkan/*"
/// AASA Team ID + Bundle ID
static let aasaAppID = "56GVN5RNVN.com.yuanzhixiang.suixinkan"
/// Universal Link SDK
static func validateUniversalLink(_ link: String) -> Bool {
guard let url = URL(string: link),
url.scheme?.lowercased() == "https",
link.hasSuffix("/") else {
return false
}
return true
}
}