Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Threema/ThreemaFramework/Utilities/   (Social Medium ©)  Datei vom 26.9.2026 mit Größe 1 kB image not shown  

Quelle  ReactionsModalDelegate.swift   Sprache: JAVA

 

import Combine
import Foundation
import SwiftUI
import ThreemaMacros

public protocol ReactionsModalDelegate {
    var currentReactionsByCreatorPublisher: AnyPublisher<[ReactionsManager.ReactionInfo], Never> { get }
    func send(_ reaction: EmojiVariant?)
}

public struct ReactionEntry: Identifiable, Hashable, Equatable {
    public let id = UUID()
    public let reaction: String
    public var userReactionEntries: [UserReactionEntry]
    public let canBeRemoved: Bool
    
    public var reactedByMe: Bool {
        userReactionEntries.map(\.isMe).contains(true)
    }
    
    public var displayValue: String {
        guard let emoji = EmojiVariant(rawValue: reaction), emoji.base.isAvailable else {
            return "�"
        }
        return emoji.rawValue
    }
    
    public init(reaction: String, userReactionEntries: [UserReactionEntry], canBeRemoved: Bool) {
        self.reaction = reaction
        self.userReactionEntries = userReactionEntries
        self.canBeRemoved = canBeRemoved
    }
}

public struct UserReactionEntry: Identifiable, Hashable, Equatable {
    public let id = UUID()
    public let sortDate: Date
    
    private(set) var user: Contact?
    
    public var name: String {
        user?.displayName ?? #localize("me")
    }
    
    public var profileImage: Image {
        if let user {
            Image(uiImage: user.profilePicture)
        }
        else {
            Image(uiImage: MyIdentityStore.shared().resolvedProfilePicture)
        }
    }
    
    public var isMe: Bool {
        user == nil
    }
    
    public init(user: Contact?, sortDate: Date) {
        self.user = user
        self.sortDate = sortDate
    }
}

Messung
CHZG
849510093

¤ Dauer der Verarbeitung: 0.0 Sekunden  (vorverarbeitet am  2026-11-04) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover


Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.