implement data model binding

This commit is contained in:
2026-01-16 08:12:11 +01:00
parent 67b337b84e
commit ac5ca2beb6
18 changed files with 1219 additions and 551 deletions

View File

@@ -86,50 +86,9 @@
justify-content: center;
margin-left: 8px;
}
/* Chat View Styles */
.chat-header {
display: flex;
align-items: center;
padding: 8px 0;
}
.chat-header-avatar {
width: 36px;
height: 36px;
border-radius: 18px;
background-color: #BB86FC;
margin-right: 12px;
display: flex;
align-items: center;
justify-content: center;
font-size: 16px;
color: #000000;
}
.chat-header-info {
flex: 1;
}
.chat-header-name {
font-size: 16px;
font-weight: 500;
color: #FFFFFF;
}
.chat-header-status {
font-size: 12px;
color: #B3B3B3;
}
.chat-messages {
flex: 1;
overflow: auto;
padding: 16px;
}
</style>
</head>
<body class="messages-screen">
<body class="messages-screen" data-model="messages">
<!-- App Bar -->
<div class="app-bar">
<div class="btn-icon" onclick="goBack()"><img src="../icons/back.tga" style="width: 24px; height: 24px;"/></div>
@@ -139,82 +98,16 @@
<!-- Conversations List -->
<div class="conversations-list">
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #4CAF50;">J</div>
<div class="conversation-item" data-for="conv : conversations" data-event-click="select_conversation(conv.id); navigateTo('chat')">
<div class="conversation-avatar" data-style-background-color="conv.color">{{ conv.name | slice(0, 1) }}</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">John Wilson</span>
<span class="conversation-time">2:30 PM</span>
<span class="conversation-name">{{ conv.name }}</span>
<span class="conversation-time">{{ conv.time }}</span>
</div>
<div class="conversation-preview">Hey, are you coming to the party tonight?</div>
</div>
<div class="conversation-unread">2</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #673AB7;">M</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">Mom</span>
<span class="conversation-time">1:15 PM</span>
</div>
<div class="conversation-preview">Don't forget to call your grandmother!</div>
</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #E91E63;">A</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">Alice Johnson</span>
<span class="conversation-time">Yesterday</span>
</div>
<div class="conversation-preview">Thanks for the help with the project!</div>
</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #2196F3;">B</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">Bob Williams</span>
<span class="conversation-time">Yesterday</span>
</div>
<div class="conversation-preview">Did you see the game last night?</div>
</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #FF9800;">W</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">Work Group</span>
<span class="conversation-time">Mon</span>
</div>
<div class="conversation-preview">Sarah: Meeting moved to 3pm</div>
</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #009688;">S</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">Sarah Taylor</span>
<span class="conversation-time">Sun</span>
</div>
<div class="conversation-preview">See you at the coffee shop!</div>
</div>
</div>
<div class="conversation-item">
<div class="conversation-avatar" style="background-color: #F44336;">D</div>
<div class="conversation-content">
<div class="conversation-header">
<span class="conversation-name">David Lee</span>
<span class="conversation-time">Sat</span>
</div>
<div class="conversation-preview">Great talking to you!</div>
<div class="conversation-preview">{{ conv.last_message }}</div>
</div>
<div class="conversation-unread" data-if="conv.unread > 0">{{ conv.unread }}</div>
</div>
</div>