2 Commits

Author SHA1 Message Date
32e26138f9 5.21 2026-02-26 15:24:11 +07:00
23a9ea0820 5.20 2026-02-26 14:58:55 +07:00
25 changed files with 706 additions and 346 deletions

View File

@ -6,17 +6,20 @@
<array>
<dict>
<key>BinaryPath</key>
<string>M2Kit.framework/M2Kit</string>
<string>M2Kit.framework/Versions/A/M2Kit</string>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<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>
@ -37,20 +40,17 @@
</dict>
<dict>
<key>BinaryPath</key>
<string>M2Kit.framework/Versions/A/M2Kit</string>
<string>M2Kit.framework/M2Kit</string>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-maccatalyst</string>
<string>ios-arm64</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>

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>5.19</string>
<string>5.21</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -451,7 +451,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannelsEx(result: @escaping (_ channels: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategoryEx(result: @escaping (_ categories: [(category_id: Swift.String, title: Swift.String)]) -> Swift.Void)
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategoryEx(categoryId: Swift.String, result: @escaping (_ videos: [[Swift.AnyHashable : Any]]) -> Swift.Void)
}
extension M2Kit.M2API {
@ -516,7 +518,9 @@ extension M2Kit.M2API {
@_Concurrency.MainActor public static func topChannels() async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func listCategory() async -> [(category_id: Swift.String, title: Swift.String)]
@available(*, deprecated, message: "Old API, not used.")
@_Concurrency.MainActor public static func getVideosOfCategory(categoryId: Swift.String) async -> [[Swift.AnyHashable : Any]]
}
extension M2Kit.M2API {

View File

@ -10,15 +10,15 @@
</data>
<key>Info.plist</key>
<data>
UXMZjh4ELCu6mC7nxGOV0V4ryy0=
5ad3DMtvSy+UiEqQL5L3IpvbNwM=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
<data>
KMCl485QL45y0FDKG4m0qq/9jbk=
TC+vEsyjaMZg96UqgISIGVuGq7E=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
<data>
ltByyKO+uLqXI7r0b6cnFGkMQYQ=
ZNnL2sIUmJOqPgBhQbE6NTkaP2Y=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
<data>
@ -26,19 +26,19 @@
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
<data>
ltByyKO+uLqXI7r0b6cnFGkMQYQ=
ZNnL2sIUmJOqPgBhQbE6NTkaP2Y=
</data>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
<data>
FjElR28wb53QN248dkGaLtEiEgI=
CU2iSq/IfDqQUDZrsSO2gtOd4g8=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
<data>
KMCl485QL45y0FDKG4m0qq/9jbk=
TC+vEsyjaMZg96UqgISIGVuGq7E=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
<data>
L03OL9vhttYnH6q0x88bI7VOKRA=
XHVDZHBijtnz9qSt5ZU+wpNNpsI=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
<data>
@ -46,11 +46,11 @@
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
<data>
L03OL9vhttYnH6q0x88bI7VOKRA=
XHVDZHBijtnz9qSt5ZU+wpNNpsI=
</data>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
<data>
4ych5qeRmbMxbjkXila6VeqAiPk=
6zXDMD4fnoXg1MDldV4x7OTqbmw=
</data>
<key>Modules/module.modulemap</key>
<data>
@ -70,14 +70,14 @@
<dict>
<key>hash2</key>
<data>
RtG4yNwpGU9EBZGzam8y8jsitAl7merf7XGqNWzPV5g=
JktVC2KBC3JPg8VWOZLvCJhvWj4JHHUNfBfzNqsyfDY=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
h6I2DIe3SsG549SkUO+2inxCl2iG/UGuB+IwtWj2ikA=
d3iNWU0sljx2dtRpvXfvRekNgrvPo0NyXOyVgjEBhWg=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
@ -91,28 +91,28 @@
<dict>
<key>hash2</key>
<data>
h6I2DIe3SsG549SkUO+2inxCl2iG/UGuB+IwtWj2ikA=
d3iNWU0sljx2dtRpvXfvRekNgrvPo0NyXOyVgjEBhWg=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
<dict>
<key>hash2</key>
<data>
hIEH2wbpKx4m4IsckwXqZe9gos7iXELOSCq4Sgv/D+Q=
fTxQB2cpLY0xhLwpZ5Fa0uvc/byVoQfdPiaejua86ts=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
<dict>
<key>hash2</key>
<data>
RtG4yNwpGU9EBZGzam8y8jsitAl7merf7XGqNWzPV5g=
JktVC2KBC3JPg8VWOZLvCJhvWj4JHHUNfBfzNqsyfDY=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
<dict>
<key>hash2</key>
<data>
GX2SsSbGCHgGJ627S2XHU+R+7Z1C7dQL1XU5GFGi11A=
xOw7fMNaRORUv3s7HbNx/ZlZSWICl3p+IvlHUwZDhkI=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
@ -126,14 +126,14 @@
<dict>
<key>hash2</key>
<data>
GX2SsSbGCHgGJ627S2XHU+R+7Z1C7dQL1XU5GFGi11A=
xOw7fMNaRORUv3s7HbNx/ZlZSWICl3p+IvlHUwZDhkI=
</data>
</dict>
<key>Modules/M2Kit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
<dict>
<key>hash2</key>
<data>
a+TB+O9kgMJSljsSkaDrbOS3onmFLIRiGzyxhT82d30=
IujFwsfIWwBQ5nma1tFW4VVG1xBgHoM7wg+8ZVPWn3s=
</data>
</dict>
<key>Modules/module.modulemap</key>

View File

@ -1,3 +1,3 @@
M2Kit
=====
5.19
5.21