Compare commits
2 Commits
dfa0a6a7e8
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| aead788292 | |||
| e639604ef6 |
4
Cargo.lock
generated
4
Cargo.lock
generated
@@ -242,7 +242,10 @@ checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"android-tzdata",
|
"android-tzdata",
|
||||||
"iana-time-zone",
|
"iana-time-zone",
|
||||||
|
"js-sys",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
|
"serde",
|
||||||
|
"wasm-bindgen",
|
||||||
"windows-targets",
|
"windows-targets",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -504,6 +507,7 @@ version = "1.3.58"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"bcrypt",
|
"bcrypt",
|
||||||
|
"chrono",
|
||||||
"futures-util",
|
"futures-util",
|
||||||
"poem",
|
"poem",
|
||||||
"poem-openapi",
|
"poem-openapi",
|
||||||
|
|||||||
@@ -15,4 +15,5 @@ serde = "1.0.190"
|
|||||||
thiserror = "1.0.50"
|
thiserror = "1.0.50"
|
||||||
anyhow = "1.0.75"
|
anyhow = "1.0.75"
|
||||||
serde_json = "1.0.108"
|
serde_json = "1.0.108"
|
||||||
|
chrono = { version = "0.4.31", features = ["serde"] }
|
||||||
|
|
||||||
|
|||||||
@@ -52,8 +52,11 @@ onMounted(async () => {
|
|||||||
</div>
|
</div>
|
||||||
-->
|
-->
|
||||||
<div v-for="msg in msgs" class="d-flex text-body-secondary pt-2 px-3 border-bottom">
|
<div v-for="msg in msgs" class="d-flex text-body-secondary pt-2 px-3 border-bottom">
|
||||||
<p class="pb-2 mb-0 small lh-sm">
|
<p class="pb-2 mb-0 small lh-sm word-wrap">
|
||||||
|
<div class="d-flex justify-content-between">
|
||||||
<strong class="d-block text-gray-dark">{{ msg.username }}</strong>
|
<strong class="d-block text-gray-dark">{{ msg.username }}</strong>
|
||||||
|
<div>{{ msg.timestamp }}</div>
|
||||||
|
</div>
|
||||||
{{ msg.message }}
|
{{ msg.message }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
@@ -68,3 +71,10 @@ onMounted(async () => {
|
|||||||
</main>
|
</main>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.word-wrap {
|
||||||
|
word-break: break-all;
|
||||||
|
width: 100vw;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
use chrono::{offset::Utc, DateTime};
|
||||||
use futures_util::{SinkExt, StreamExt};
|
use futures_util::{SinkExt, StreamExt};
|
||||||
use poem::{
|
use poem::{
|
||||||
endpoint::StaticFilesEndpoint,
|
endpoint::StaticFilesEndpoint,
|
||||||
@@ -129,6 +130,7 @@ impl Api {
|
|||||||
.send(ChatMsg {
|
.send(ChatMsg {
|
||||||
username: name.clone(),
|
username: name.clone(),
|
||||||
message: text,
|
message: text,
|
||||||
|
timestamp: Utc::now(),
|
||||||
})
|
})
|
||||||
.is_err()
|
.is_err()
|
||||||
{
|
{
|
||||||
@@ -255,6 +257,7 @@ impl Api {
|
|||||||
struct ChatMsg {
|
struct ChatMsg {
|
||||||
username: String,
|
username: String,
|
||||||
message: String,
|
message: String,
|
||||||
|
timestamp: DateTime<Utc>,
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Api {
|
struct Api {
|
||||||
|
|||||||
Reference in New Issue
Block a user