Files
Swiftgram/submodules/TelegramCore/Sources/TelegramEngine/Resolve/DeepLinkInfo.swift
2026-01-18 23:22:34 +08:00

24 lines
885 B
Swift

import Foundation
import SwiftSignalKit
import TelegramApi
public struct DeepLinkInfo {
public let message: String
public let entities: [MessageTextEntity]
public let updateApp: Bool
}
func _internal_getDeepLinkInfo(network: Network, path: String) -> Signal<DeepLinkInfo?, NoError> {
return network.request(Api.functions.help.getDeepLinkInfo(path: path)) |> retryRequest
|> map { value -> DeepLinkInfo? in
switch value {
case .deepLinkInfoEmpty:
return nil
case let .deepLinkInfo(deepLinkInfoData):
let (flags, message, entities) = (deepLinkInfoData.flags, deepLinkInfoData.message, deepLinkInfoData.entities)
return DeepLinkInfo(message: message, entities: entities != nil ? messageTextEntitiesFromApiEntities(entities!) : [], updateApp: (flags & (1 << 0)) != 0)
}
}
}