feat(storybook/StatusMessage): Added new `StatusMessagePage`
It adds new page for `StatusMessage` and just only basic validations.
This commit is contained in:
parent
3d8cf574fb
commit
fd67989c2d
|
@ -109,6 +109,10 @@ ListModel {
|
|||
title: "StatusScrollView"
|
||||
section: "Components"
|
||||
}
|
||||
ListElement {
|
||||
title: "StatusMessage"
|
||||
section: "Components"
|
||||
}
|
||||
ListElement {
|
||||
title: "BrowserSettings"
|
||||
section: "Settings"
|
||||
|
|
|
@ -0,0 +1,103 @@
|
|||
import QtQuick 2.14
|
||||
import QtQuick.Controls 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
import Storybook 1.0
|
||||
import Models 1.0
|
||||
|
||||
SplitView {
|
||||
id: root
|
||||
|
||||
Logs { id: logs }
|
||||
|
||||
QtObject {
|
||||
id: d
|
||||
|
||||
property var messagesModel: ListModel {
|
||||
ListElement {
|
||||
timestamp: 1656937930
|
||||
senderDisplayName: "simon"
|
||||
profileImage: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
contentType: StatusMessage.ContentType.Text
|
||||
message: "Hello, this is awesome! Feels like decentralized Discord!"
|
||||
isContact: true
|
||||
trustIndicator: StatusContactVerificationIcons.TrustedType.Verified
|
||||
}
|
||||
ListElement {
|
||||
timestamp: 1657937930
|
||||
senderDisplayName: "Mark Cuban"
|
||||
contentType: StatusMessage.ContentType.Text
|
||||
message: "I know a lot of you really seem to get off or be validated by arguing with strangers online but please know it's a complete waste of your time and energy"
|
||||
isContact: false
|
||||
trustIndicator: StatusContactVerificationIcons.TrustedType.Untrustworthy
|
||||
}
|
||||
}
|
||||
property var colorHash: ListModel {
|
||||
ListElement { colorId: 13; segmentLength: 5 }
|
||||
ListElement { colorId: 31; segmentLength: 5 }
|
||||
ListElement { colorId: 10; segmentLength: 1 }
|
||||
ListElement { colorId: 2; segmentLength: 5 }
|
||||
ListElement { colorId: 26; segmentLength: 2 }
|
||||
ListElement { colorId: 19; segmentLength: 4 }
|
||||
ListElement { colorId: 28; segmentLength: 3 }
|
||||
}
|
||||
}
|
||||
|
||||
SplitView {
|
||||
orientation: Qt.Vertical
|
||||
SplitView.fillWidth: true
|
||||
|
||||
|
||||
Rectangle {
|
||||
SplitView.fillWidth: true
|
||||
SplitView.fillHeight: true
|
||||
color: Theme.palette.statusAppLayout.rightPanelBackgroundColor
|
||||
|
||||
ListView {
|
||||
anchors.margins: 50
|
||||
anchors.fill: parent
|
||||
spacing: 16
|
||||
model: d.messagesModel
|
||||
delegate: StatusMessage {
|
||||
width: ListView.view.width
|
||||
timestamp: model.timestamp
|
||||
messageDetails: StatusMessageDetails {
|
||||
messageText: model.message
|
||||
contentType: model.contentType
|
||||
sender.displayName: model.senderDisplayName
|
||||
sender.isContact: model.isContact
|
||||
sender.trustIndicator: model.trustIndicator
|
||||
sender.profileImage: StatusProfileImageSettings {
|
||||
width: 40
|
||||
height: 40
|
||||
name: model.profileImage || ""
|
||||
colorId: 1
|
||||
colorHash: d.colorHash
|
||||
}
|
||||
}
|
||||
onSenderNameClicked: logs.logEvent("StatusMessage::onSenderNameClicked(): ")
|
||||
onProfilePictureClicked: logs.logEvent("StatusMessage::profilePictureClicked(): ")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LogsAndControlsPanel {
|
||||
id: logsAndControlsPanel
|
||||
|
||||
SplitView.minimumHeight: 100
|
||||
SplitView.preferredHeight: 200
|
||||
|
||||
logsView.logText: logs.logText
|
||||
}
|
||||
}
|
||||
|
||||
Pane {
|
||||
SplitView.minimumWidth: 300
|
||||
SplitView.preferredWidth: 300
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue