feat(storybook/JoinCommunityViewPage): Created new storybook page
Created new storybook page for `JoinCommunityView` component.
This commit is contained in:
parent
8e45d6c50e
commit
b777e20bff
|
@ -65,6 +65,10 @@ ListModel {
|
|||
title: "CommunityColumnHeaderPanel"
|
||||
section: "Panels"
|
||||
}
|
||||
ListElement {
|
||||
title: "JoinPermissionsOverlayPanel"
|
||||
section: "Panels"
|
||||
}
|
||||
ListElement {
|
||||
title: "InviteFriendsToCommunityPopup"
|
||||
section: "Popups"
|
||||
|
|
|
@ -93,5 +93,10 @@
|
|||
],
|
||||
"JoinPermissionsOverlayPanel": [
|
||||
"https://www.figma.com/file/17fc13UBFvInrLgNUKJJg5/Kuba%E2%8E%9CDesktop?node-id=2365%3A291788&t=UOvsb3QLi26KmVrk-0"
|
||||
],
|
||||
"JoinCommunityView": [
|
||||
"https://www.figma.com/file/17fc13UBFvInrLgNUKJJg5/Kuba%E2%8E%9CDesktop?node-id=2365%3A317901&t=05yQWHWBWOs2DUTp-0",
|
||||
"https://www.figma.com/file/17fc13UBFvInrLgNUKJJg5/Kuba%E2%8E%9CDesktop?node-id=2698%3A380426&t=UOvsb3QLi26KmVrk-0",
|
||||
"https://www.figma.com/file/17fc13UBFvInrLgNUKJJg5/Kuba%E2%8E%9CDesktop?node-id=2365%3A291788&t=UOvsb3QLi26KmVrk-0"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -0,0 +1,224 @@
|
|||
import QtQuick 2.14
|
||||
import QtQuick.Controls 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
import AppLayouts.Chat.views.communities 1.0
|
||||
|
||||
import Storybook 1.0
|
||||
import Models 1.0
|
||||
|
||||
import utils 1.0
|
||||
|
||||
SplitView {
|
||||
|
||||
QtObject {
|
||||
id: d
|
||||
|
||||
// General properties:
|
||||
property string name: "Uniswap"
|
||||
property string communityDesc: "General channel for the community"
|
||||
property color color: "orchid"
|
||||
property string channelName: joinCommunity ? "general" : "#vip"
|
||||
property string channelDesc: "VIP members only"
|
||||
property bool joinCommunity: true // Otherwise it means join channel action
|
||||
|
||||
// Overlay component:
|
||||
property bool requirementsMet: true
|
||||
property bool isInvitationPending: false
|
||||
property bool isJoinRequestRejected: false
|
||||
property bool requiresRequest: false
|
||||
property var communityHoldings: PermissionsModel.shortPermissionsModel
|
||||
property var viewOnlyHoldings: PermissionsModel.shortPermissionsModel
|
||||
property var viewAndPostHoldings: PermissionsModel.shortPermissionsModel
|
||||
property var moderateHoldings: PermissionsModel.shortPermissionsModel
|
||||
|
||||
// Blur background:
|
||||
property int membersCount: 184
|
||||
property bool amISectionAdmin: false
|
||||
property url image: Style.png("tokens/UNI")
|
||||
property var communityItemsModel: model1
|
||||
property string chatDateTimeText: "Dec 31, 2020"
|
||||
property string listUsersText: "simon, Mark Cuban "
|
||||
readonly property ListModel model1: ListModel {
|
||||
ListElement { name: "welcome"; selected: false; notificationsCount: 0; hasUnreadMessages: false}
|
||||
ListElement { name: "general"; selected: false; notificationsCount: 0; hasUnreadMessages: true}
|
||||
ListElement { name: "design"; selected: true; notificationsCount: 3; hasUnreadMessages: true}
|
||||
ListElement { name: "random"; selected: false; notificationsCount: 0; hasUnreadMessages: false}
|
||||
ListElement { name: "vip"; selected: false; notificationsCount: 0; hasUnreadMessages: true}
|
||||
}
|
||||
readonly property ListModel model2: ListModel {
|
||||
ListElement { name: "general"; selected: false; notificationsCount: 3; hasUnreadMessages: false}
|
||||
ListElement { name: "blockchain"; selected: true; notificationsCount: 3; hasUnreadMessages: true}
|
||||
ListElement { name: "faq"; selected: false; notificationsCount: 0; hasUnreadMessages: false}
|
||||
}
|
||||
readonly property var messagesModel: ListModel {
|
||||
ListElement {
|
||||
timestamp: 1656937930
|
||||
senderDisplayName: "simon"
|
||||
contentType: StatusMessage.ContentType.Text
|
||||
message: "Hello, this is awesome! Feels like decentralized Discord!"
|
||||
isContact: true
|
||||
trustIndicator: StatusContactVerificationIcons.TrustedType.Verified
|
||||
colorId: 4
|
||||
}
|
||||
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
|
||||
colorId: 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Logs { id: logs }
|
||||
|
||||
SplitView {
|
||||
orientation: Qt.Vertical
|
||||
SplitView.fillWidth: true
|
||||
|
||||
Rectangle {
|
||||
SplitView.fillWidth: true
|
||||
SplitView.fillHeight: true
|
||||
color: Theme.palette.statusAppLayout.rightPanelBackgroundColor
|
||||
clip: true
|
||||
|
||||
JoinCommunityView {
|
||||
anchors.fill: parent
|
||||
anchors.margins: 50
|
||||
|
||||
// General properties:
|
||||
name: d.name
|
||||
communityDesc: d.communityDesc
|
||||
color: d.color
|
||||
channelName: d.channelName
|
||||
channelDesc: d.channelDesc
|
||||
joinCommunity: d.joinCommunity
|
||||
|
||||
// Blur background properties:
|
||||
membersCount: d.membersCount
|
||||
image: d.image
|
||||
amISectionAdmin: d.amISectionAdmin
|
||||
openCreateChat: false
|
||||
communityItemsModel: d.communityItemsModel
|
||||
chatDateTimeText: d.chatDateTimeText
|
||||
listUsersText: d.listUsersText
|
||||
messagesModel: d.messagesModel
|
||||
|
||||
// Permissions properties
|
||||
requirementsMet: d.requirementsMet
|
||||
isInvitationPending: d.isInvitationPending
|
||||
isJoinRequestRejected: d.isJoinRequestRejected
|
||||
requiresRequest: d.requiresRequest
|
||||
communityHoldings: d.communityHoldings
|
||||
viewOnlyHoldings: d.viewOnlyHoldings
|
||||
viewAndPostHoldings: d.viewAndPostHoldings
|
||||
moderateHoldings: d.moderateHoldings
|
||||
|
||||
onInfoButtonClicked: logs.logEvent("JoinCommunityView::onInfoButtonClicked()")
|
||||
onAdHocChatButtonClicked: {
|
||||
logs.logEvent("JoinCommunityView::store.openCloseCreateChatView(): " + openCreateChat.toString())
|
||||
openCreateChat = !openCreateChat
|
||||
}
|
||||
onNotificationButtonClicked: logs.logEvent("JoinCommunityView::onNotificationButtonClicked()")
|
||||
onRevealAddressClicked: logs.logEvent("JoinCommunityView::onRevealAddressClicked()")
|
||||
onInvitationPendingClicked: logs.logEvent("JoinCommunityView::onInvitationPendingClicked()")
|
||||
}
|
||||
}
|
||||
|
||||
LogsAndControlsPanel {
|
||||
id: logsAndControlsPanel
|
||||
|
||||
SplitView.minimumHeight: 100
|
||||
SplitView.preferredHeight: 150
|
||||
|
||||
logsView.logText: logs.logText
|
||||
}
|
||||
}
|
||||
|
||||
Pane {
|
||||
SplitView.minimumWidth: 300
|
||||
SplitView.preferredWidth: 300
|
||||
|
||||
ScrollView {
|
||||
anchors.fill: parent
|
||||
|
||||
ColumnLayout {
|
||||
spacing: 16
|
||||
|
||||
// Blur info editor:
|
||||
Label {
|
||||
Layout.fillWidth: true
|
||||
text: "BLUR INFO EDITOR"
|
||||
font.bold: true
|
||||
font.pixelSize: 18
|
||||
}
|
||||
|
||||
CommunityInfoEditor {
|
||||
name: d.name
|
||||
membersCount: d.membersCount
|
||||
amISectionAdmin: d.amISectionAdmin
|
||||
color: d.color
|
||||
image: d.image
|
||||
colorVisible: true
|
||||
|
||||
onNameChanged: d.name = name
|
||||
onMembersCountChanged: d.membersCount = membersCount
|
||||
onAmISectionAdminChanged: d.amISectionAdmin = amISectionAdmin
|
||||
onColorChanged: d.color = color
|
||||
onImageChanged: d.image = image
|
||||
}
|
||||
|
||||
ColumnLayout {
|
||||
Label {
|
||||
Layout.fillWidth: true
|
||||
text: "Community items model:"
|
||||
}
|
||||
|
||||
RadioButton {
|
||||
checked: true
|
||||
text: qsTr("Model 1")
|
||||
onCheckedChanged: if(checked) d.communityItemsModel = d.model1
|
||||
}
|
||||
RadioButton {
|
||||
text: qsTr("Model 2")
|
||||
onCheckedChanged: if(checked) d.communityItemsModel = d.model2
|
||||
}
|
||||
}
|
||||
|
||||
// Join community overlay editor:
|
||||
Label {
|
||||
Layout.fillWidth: true
|
||||
text: "JOIN HOLDINGS EDITOR"
|
||||
font.bold: true
|
||||
font.pixelSize: 18
|
||||
}
|
||||
|
||||
JoinCommunityPermissionsEditor {
|
||||
channelName: d.chanelName
|
||||
joinCommunity: d.joinCommunity
|
||||
requirementsMet: d.requirementsMet
|
||||
isInvitationPending: d.isInvitationPending
|
||||
isJoinRequestRejected: d.isJoinRequestRejected
|
||||
requiresRequest: d.requiresRequest
|
||||
|
||||
onChannelNameChanged: d.channelName = channelName
|
||||
onJoinCommunityChanged: d.joinCommunity = joinCommunity
|
||||
onRequirementsMetChanged: d.requirementsMet = requirementsMet
|
||||
onIsInvitationPendingChanged: d.isInvitationPending = isInvitationPending
|
||||
onIsJoinRequestRejectedChanged: d.isJoinRequestRejected = isJoinRequestRejected
|
||||
onRequiresRequestChanged: d.requiresRequest = requiresRequest
|
||||
onCommunityHoldingsChanged: d.communityHoldings = communityHoldings
|
||||
onViewOnlyHoldingsChanged: d.viewOnlyHoldings = viewOnlyHoldings
|
||||
onViewAndPostHoldingsChanged: d.viewAndPostHoldings = viewAndPostHoldings
|
||||
onModerateHoldingsChanged: d.moderateHoldings = moderateHoldings
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue