3 Commits

Author SHA1 Message Date
cd16fd3ce3 5.25 2026-03-20 11:04:19 +07:00
e6c206197c 5.24 2026-03-12 22:41:32 +07:00
a53e238bb1 5.23 2026-03-05 12:25:08 +07:00
32 changed files with 3971 additions and 132 deletions

View File

@ -4,23 +4,6 @@
<dict>
<key>AvailableLibraries</key>
<array>
<dict>
<key>BinaryPath</key>
<string>M2Kit.framework/Versions/A/M2Kit</string>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-maccatalyst</string>
<key>LibraryPath</key>
<string>M2Kit.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>maccatalyst</string>
</dict>
<dict>
<key>BinaryPath</key>
<string>M2Kit.framework/M2Kit</string>
@ -52,6 +35,23 @@
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>BinaryPath</key>
<string>M2Kit.framework/Versions/A/M2Kit</string>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-maccatalyst</string>
<key>LibraryPath</key>
<string>M2Kit.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>maccatalyst</string>
</dict>
</array>
<key>CFBundlePackageType</key>
<string>XFWK</string>

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>25D125</string>
<string>25D2128</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>5.22</string>
<string>5.25</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -595,6 +595,24 @@ public let m2Version: Swift.String
@_Concurrency.MainActor public static func getImageData(url: Foundation.URL) async -> Foundation.Data?
#endif
}
@_Concurrency.MainActor public struct M2IAP {
@_Concurrency.MainActor public static let IAPPurchasedSuccessNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPPurchasedFailNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductStatusUpdatedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let IAPProductsAvailableChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func setup(iapId: Swift.String)
@_Concurrency.MainActor public static var isProVersion: Swift.Bool {
get
}
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static var priceProVersion: Swift.String? {
get
}
#endif
@_Concurrency.MainActor public static func fetch()
@_Concurrency.MainActor public static func purchaseProVersion()
@_Concurrency.MainActor public static func restorePurchase()
}
@_Concurrency.MainActor public struct M2Image {
#if compiler(>=5.3) && $NonescapableTypes
@_Concurrency.MainActor public static func uploadImage(_ image: UIKit.UIImage, result: @escaping (_ url: Swift.String?) -> Swift.Void)
@ -973,6 +991,7 @@ public enum M2VideoStatus {
@_Concurrency.MainActor public struct M2Utils {
@_Concurrency.MainActor public static func workFor(trackID: Swift.String)
@_Concurrency.MainActor public static let workForChangedNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static let workForBeginNotification: Foundation.Notification.Name
@_Concurrency.MainActor public static func checkExisted(trackID: Swift.String) -> Swift.Bool
@_Concurrency.MainActor public static func checkStatus(trackID: Swift.String) -> M2Kit.M2VideoStatus
@_Concurrency.MainActor public static func deleteDataOf(trackID: Swift.String)
@ -987,6 +1006,9 @@ extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func randomCode7() -> Swift.String
@_Concurrency.MainActor public static func randomCode11() -> Swift.String
}
extension M2Kit.M2Utils {
@_Concurrency.MainActor public static func weightedRandom(from items: [Swift.String], weights: [Swift.Int]) -> Swift.String
}
@objc @_inheritsConvenienceInitializers @_Concurrency.MainActor public class M2WebVC : UIKit.UIViewController {
@_Concurrency.MainActor @objc override dynamic public func viewDidLoad()
#if compiler(>=5.3) && $NonescapableTypes
@ -1036,6 +1058,7 @@ extension M2Kit.M2API : Swift.Sendable {}
extension M2Kit.M2Backup : Swift.Sendable {}
extension M2Kit.M2Feedback : Swift.Sendable {}
extension M2Kit.M2HTTP : Swift.Sendable {}
extension M2Kit.M2IAP : Swift.Sendable {}
extension M2Kit.M2Image : Swift.Sendable {}
extension M2Kit.M2K : Swift.Sendable {}
extension M2Kit.M2Log : Swift.Sendable {}

View File

@ -10,47 +10,47 @@
</data>
<key>Info.plist</key>
<data>
LfA0nTwFtHFBnEoBU6rIouNEWig=
FRjNoxjlQ0HHFtj+xiPYLxsC4+Q=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
<data>
Al409eWlcygW+cadIEPE5YaIHsk=
h+ZdUC/y+/SbJnC1H05D/x0D2ME=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
<data>
xPT6AKzGduUiWCNmhOUXz6AJPlY=
OcFGPcgxy3roT4fVDIuhjSGcLLY=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
<data>
7zUGoWcOGxcgDXh4tnMB+TM8Fso=
rlhF4Sz85tsVwXP20cC7sxNVfdU=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
<data>
xPT6AKzGduUiWCNmhOUXz6AJPlY=
OcFGPcgxy3roT4fVDIuhjSGcLLY=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
<data>
1YXWu7DVrCRBqTh0gr9xujOCMQE=
mMG8n8Xb/FuwSAe6tXQyUr8lCUI=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
<data>
Al409eWlcygW+cadIEPE5YaIHsk=
h+ZdUC/y+/SbJnC1H05D/x0D2ME=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
<data>
cHnxnfX22fOv4xH3d+qFGT8YpVY=
XadabFR8pCLxM/8uvKye4N5kTUM=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
<data>
NvmPpZAxo4QvjCiueKIoWjJcULc=
Zzze8UGkFrW7XhH60dG4nj8V5Gg=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
<data>
cHnxnfX22fOv4xH3d+qFGT8YpVY=
XadabFR8pCLxM/8uvKye4N5kTUM=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
<data>
uIzU7Q0cGJzF1HAF1uWQe00F068=
HzHkZpOsmRcX/6rVtUt1Th9eO+I=
</data>
<key>Modules/module.modulemap</key>
<data>
@ -70,70 +70,70 @@
<dict>
<key>hash2</key>
<data>
FEDN8OdF9+BeGeF/Hacl7L0Q4vTlhIHWI6P3m8WYCRA=
ob5Jsi9geYadWUeV85kX/cI3KLBRsbfyd9nUdZQovAY=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
kC2yPuZqoL8BO4agX7ewsCUSNoQo8hpJ4Oo0mTrGSfU=
cwfjW3BIFRJiUdxACLBrvrxqDrhsXkIaLPFnyC9xvcM=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
<dict>
<key>hash2</key>
<data>
PBwNjIF+EjLCxabdGUPE7n0NiuEp3GgzONhj7M+apOo=
HkOh7YMxbzgmADJSjeS6vE/GEBHJjmNIwp59t2yolt0=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
kC2yPuZqoL8BO4agX7ewsCUSNoQo8hpJ4Oo0mTrGSfU=
cwfjW3BIFRJiUdxACLBrvrxqDrhsXkIaLPFnyC9xvcM=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
<dict>
<key>hash2</key>
<data>
0+dD1mAcQ/904E7SCgAqFElAwU5H3h3xrIbn/rrKMZ8=
kqNVRVW11QmJeY3GaAfqhhqwp5Lu+DFG/b1JSnvaz60=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
<dict>
<key>hash2</key>
<data>
FEDN8OdF9+BeGeF/Hacl7L0Q4vTlhIHWI6P3m8WYCRA=
ob5Jsi9geYadWUeV85kX/cI3KLBRsbfyd9nUdZQovAY=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
2Bh/EWqgIP/Bx2t0Xw0UWYBRCBZJ1LE9+nKKwKj+svY=
0YIE1xj3KR075SX8jupikjyqMvQnnpCSEx2iqRNYEaA=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
<dict>
<key>hash2</key>
<data>
DFt9TXzprLPBGoKJFFqRQyYPxDfV2IzMUFzIwxtMxGo=
XH0bXNW1ZMj5LIOrWPrDm8pg+nh6d78GNxYSnS5wpzY=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
2Bh/EWqgIP/Bx2t0Xw0UWYBRCBZJ1LE9+nKKwKj+svY=
0YIE1xj3KR075SX8jupikjyqMvQnnpCSEx2iqRNYEaA=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
<dict>
<key>hash2</key>
<data>
d6rIQTXSflc0U8LWd9typ2JH4p4OdRHzN+WkoH3SBfk=
tCBElf68iYsYRJ6+CzvQVAHG70q7J+77ZjNGAOIqkt4=
</data>
</dict>
<key>Modules/module.modulemap</key>

View File

@ -11,7 +11,7 @@ let package = Package(
products: [
.library(
name: "M2Kit",
targets: ["M2Kit"]
targets: ["M2KitWrapper"]
),
],
targets: [
@ -19,5 +19,13 @@ let package = Package(
name: "M2Kit",
path: "./Frameworks/M2Kit.xcframework"
),
.target(
name: "M2KitWrapper",
dependencies: ["M2Kit"],
path: "Sources/M2KitWrapper",
resources: [
.copy("Resources/M2Kit.bundle")
]
),
]
)

View File

@ -1,3 +1,3 @@
M2Kit
=====
5.22
5.25

View File

@ -0,0 +1 @@
@_exported import M2Kit