[WIP] Stories

This commit is contained in:
Ali
2023-05-16 22:16:22 +04:00
parent e6ebc89b85
commit a1e59a8bff
8 changed files with 76 additions and 12 deletions

View File

@@ -579,6 +579,24 @@ private class AdMessagesHistoryContextImpl {
}
self.maskAsSeenDisposables.set(signal.start(), forKey: opaqueId)
}
func markAction(opaqueId: Data) {
let account = self.account
let signal: Signal<Never, NoError> = account.postbox.transaction { transaction -> Api.InputChannel? in
return transaction.getPeer(self.peerId).flatMap(apiInputChannel)
}
|> mapToSignal { inputChannel -> Signal<Never, NoError> in
guard let inputChannel = inputChannel else {
return .complete()
}
return account.network.request(Api.functions.channels.clickSponsoredMessage(channel: inputChannel, randomId: Buffer(data: opaqueId)))
|> `catch` { _ -> Signal<Api.Bool, NoError> in
return .single(.boolFalse)
}
|> ignoreValues
}
let _ = signal.start()
}
}
public class AdMessagesHistoryContext {
@@ -612,4 +630,10 @@ public class AdMessagesHistoryContext {
impl.markAsSeen(opaqueId: opaqueId)
}
}
public func markAction(opaqueId: Data) {
self.impl.with { impl in
impl.markAction(opaqueId: opaqueId)
}
}
}