From 6bf583151c611f85ca6e75fec73d6d905eb6ecac Mon Sep 17 00:00:00 2001 From: jackfiled Date: Sat, 7 Oct 2023 18:55:22 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E5=9F=BA=E7=A1=80=E7=9A=84=E8=81=8A?= =?UTF-8?q?=E5=A4=A9=E5=AF=B9=E8=AF=9D=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.idea.Katheryne/.idea/vcs.xml | 6 +++ Frontend/MainLayout.razor | 3 -- Frontend/Models/ChatMessage.cs | 10 +++++ Frontend/Pages/Index.razor | 54 ++++++++++++++++++++++++- Frontend/Pages/index.razor.css | 12 ++++++ Frontend/Shared/MainLayout.razor | 27 +++++++++++++ Frontend/Shared/MainLayout.razor.css | 11 +++++ Frontend/Shared/MessageBubble.razor | 50 +++++++++++++++++++++++ Frontend/Shared/MessageBubble.razor.css | 7 ++++ Frontend/_Imports.razor | 3 +- 10 files changed, 178 insertions(+), 5 deletions(-) create mode 100644 .idea/.idea.Katheryne/.idea/vcs.xml delete mode 100644 Frontend/MainLayout.razor create mode 100644 Frontend/Models/ChatMessage.cs create mode 100644 Frontend/Pages/index.razor.css create mode 100644 Frontend/Shared/MainLayout.razor create mode 100644 Frontend/Shared/MainLayout.razor.css create mode 100644 Frontend/Shared/MessageBubble.razor create mode 100644 Frontend/Shared/MessageBubble.razor.css diff --git a/.idea/.idea.Katheryne/.idea/vcs.xml b/.idea/.idea.Katheryne/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/.idea.Katheryne/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Frontend/MainLayout.razor b/Frontend/MainLayout.razor deleted file mode 100644 index d629542..0000000 --- a/Frontend/MainLayout.razor +++ /dev/null @@ -1,3 +0,0 @@ -@inherits LayoutComponentBase - -
@Body
\ No newline at end of file diff --git a/Frontend/Models/ChatMessage.cs b/Frontend/Models/ChatMessage.cs new file mode 100644 index 0000000..4158455 --- /dev/null +++ b/Frontend/Models/ChatMessage.cs @@ -0,0 +1,10 @@ +namespace Frontend.Models; + +public class ChatMessage +{ + public required string Sender { get; init; } + + public required string Text { get; init; } + + public required bool Left { get; init; } +} \ No newline at end of file diff --git a/Frontend/Pages/Index.razor b/Frontend/Pages/Index.razor index add825e..06f181e 100644 --- a/Frontend/Pages/Index.razor +++ b/Frontend/Pages/Index.razor @@ -1,3 +1,55 @@ @page "/" +@using Frontend.Models -

Hello, world!

\ No newline at end of file + + + + + + +
+ + + @if (context.Left) + { +
+ +
+ } + else + { +
+ +
+ } +
+
+
+
+
+ +@code +{ + private readonly List _messages = new() + { + new ChatMessage + { + Sender = "凯瑟琳", + Text = "向着星辰和深渊!", + Left = true + }, + new ChatMessage + { + Sender = "凯瑟琳", + Text = "欢迎来到冒险家协会。", + Left = true + }, + new ChatMessage + { + Sender = "旅行者", + Text = "领取每日委托奖励。", + Left = false + } + }; + +} \ No newline at end of file diff --git a/Frontend/Pages/index.razor.css b/Frontend/Pages/index.razor.css new file mode 100644 index 0000000..ea57325 --- /dev/null +++ b/Frontend/Pages/index.razor.css @@ -0,0 +1,12 @@ +.chat-column { + margin-left: auto; +} + +.chat-zone { + min-width: inherit; + background: linear-gradient(180deg, + #f5f4f6, + #b5bddf); + min-height: calc(100vh - 64px); + padding: 20px; +} \ No newline at end of file diff --git a/Frontend/Shared/MainLayout.razor b/Frontend/Shared/MainLayout.razor new file mode 100644 index 0000000..ed18d08 --- /dev/null +++ b/Frontend/Shared/MainLayout.razor @@ -0,0 +1,27 @@ +@inherits LayoutComponentBase + +
+ +
+ + +

+ 自律型可重编程对话机器人 +

+
+ + +

+ a.k.a 凯瑟琳 +

+
+
+
+ + + + @Body + + +
+
\ No newline at end of file diff --git a/Frontend/Shared/MainLayout.razor.css b/Frontend/Shared/MainLayout.razor.css new file mode 100644 index 0000000..688abd1 --- /dev/null +++ b/Frontend/Shared/MainLayout.razor.css @@ -0,0 +1,11 @@ +.title-text { + font-size: 2rem; + color: white; + margin: 0; +} + +.subtitle-text { + font-size: 0.8rem; + color: grey; + margin: 0; +} \ No newline at end of file diff --git a/Frontend/Shared/MessageBubble.razor b/Frontend/Shared/MessageBubble.razor new file mode 100644 index 0000000..5f474ce --- /dev/null +++ b/Frontend/Shared/MessageBubble.razor @@ -0,0 +1,50 @@ +@using Frontend.Models +@if (Message.Left) +{ + + + + + + +
+

+ @Message.Text +

+

+ @Message.Sender +

+
+
+
+} +else +{ + + +
+

+ @Message.Text +

+

+ @Message.Sender +

+
+
+ + + + +
+} + +@code { + + [Parameter] + public ChatMessage Message { get; set; } = new() + { + Left = true, + Sender = "default", + Text = "default" + }; +} \ No newline at end of file diff --git a/Frontend/Shared/MessageBubble.razor.css b/Frontend/Shared/MessageBubble.razor.css new file mode 100644 index 0000000..d7d112d --- /dev/null +++ b/Frontend/Shared/MessageBubble.razor.css @@ -0,0 +1,7 @@ +.bubble { + background-color: white; + border-radius: 10px; + padding: 5px; + display: flex; + flex-direction: column; +} \ No newline at end of file diff --git a/Frontend/_Imports.razor b/Frontend/_Imports.razor index 8deb6df..ce2123f 100644 --- a/Frontend/_Imports.razor +++ b/Frontend/_Imports.razor @@ -2,4 +2,5 @@ @using Microsoft.AspNetCore.Components.Web @using Microsoft.JSInterop @using AntDesign -@using Frontend \ No newline at end of file +@using Frontend +@using Frontend.Shared \ No newline at end of file