[WIP] Stories

This commit is contained in:
Ali
2023-06-06 23:23:48 +04:00
parent 7dc3dc078e
commit af19d3f4b5
55 changed files with 1114 additions and 361 deletions

View File

@@ -72,6 +72,7 @@ public enum ParsedInternalPeerUrlParameter {
case replyThread(Int32, Int32)
case voiceChat(String?)
case appStart(String, String?)
case story(Int32)
}
public enum ParsedInternalUrl {
@@ -246,6 +247,10 @@ public func parseInternalUrl(query: String) -> ParsedInternalUrl? {
}
}
return .startAttach(peerName, value, choose)
} else if queryItem.name == "story" {
if let id = Int32(value) {
return .peer(.name(peerName), .story(id))
}
}
} else if ["voicechat", "videochat", "livestream"].contains(queryItem.name) {
return .peer(.name(peerName), .voiceChat(nil))
@@ -697,6 +702,8 @@ private func resolveInternalUrl(context: AccountContext, url: ParsedInternalUrl)
}
case let .voiceChat(invite):
return .single(.joinVoiceChat(peer.id, invite))
case let .story(id):
return .single(.story(peerId: peer.id, id: id))
}
} else {
return .single(.peer(peer, .chat(textInputState: nil, subject: nil, peekData: nil)))