import QtQuick 2.15 import StatusQ.Core 0.1 import StatusQ.Core.Theme 0.1 import StatusQ.Core.Utils 0.1 as StatusQUtils import StatusQ.Components 0.1 import utils 1.0 import shared 1.0 import shared.panels 1.0 Column { id: root spacing: Theme.padding anchors.horizontalCenter: parent.horizontalCenter topPadding: visible ? Theme.bigPadding : 0 bottomPadding: visible? 50 : 0 property bool amIChatAdmin: false property string chatName: "" property string chatId: "" property int chatType: -1 property string chatColor: "" property string chatEmoji: "" property string chatIcon: "" StatusSmartIdenticon { objectName: "channelIdentifierSmartIdenticon" anchors.horizontalCenter: parent.horizontalCenter name: root.chatName asset { width: 120 height: 120 color: root.chatType === Constants.chatType.oneToOne ? Utils.colorForPubkey(root.chatId) : root.chatColor emoji: root.chatEmoji name: root.chatIcon isImage: true charactersLen: root.chatType === Constants.chatType.oneToOne ? 2 : 1 } ringSettings.ringSpecModel: root.chatType === Constants.chatType.oneToOne ? Utils.getColorHashAsJson(root.chatId) : undefined } StyledText { id: channelName objectName: "channelIdentifierNameText" width: parent.width wrapMode: Text.Wrap text: root.chatName font.weight: Font.Bold font.pixelSize: 22 color: Theme.palette.textColor horizontalAlignment: Text.AlignHCenter } StatusBaseText { id: descText width: parent.width wrapMode: Text.Wrap text: { switch(root.chatType) { case Constants.chatType.privateGroupChat: return qsTr("Welcome to the beginning of the %2 group!").arg(Theme.palette.textColor).arg(root.chatName); case Constants.chatType.communityChat: return qsTr("Welcome to the beginning of the #%2 channel!").arg(Theme.palette.textColor).arg(root.chatName); case Constants.chatType.oneToOne: return qsTr("Any messages you send here are encrypted and can only be read by you and %2").arg(Theme.palette.textColor).arg(root.chatName) default: return ""; } } font.pixelSize: Theme.primaryTextFontSize color: Theme.palette.secondaryText horizontalAlignment: Text.AlignHCenter textFormat: Text.RichText } }