From 98cf701ff6043ff43501e6bff1f506e59f2356e0 Mon Sep 17 00:00:00 2001 From: Zhang Minghan Date: Wed, 21 Feb 2024 11:09:57 +0800 Subject: [PATCH] feat: optimize sharing feature, add mobile adapter, add maximized screen and minized screen feature --- app/src/assets/pages/sharing.less | 27 ++++++++++++++-- app/src/components/Message.tsx | 1 + .../admin/assemblies/ModelUsageChart.tsx | 3 +- app/src/routes/Sharing.tsx | 32 +++++++++++-------- 4 files changed, 46 insertions(+), 17 deletions(-) diff --git a/app/src/assets/pages/sharing.less b/app/src/assets/pages/sharing.less index 498596d..06ff2af 100644 --- a/app/src/assets/pages/sharing.less +++ b/app/src/assets/pages/sharing.less @@ -3,7 +3,6 @@ display: flex; width: 100%; height: calc(100vh - 56px); - padding: 0 2rem; } .loading { @@ -127,6 +126,17 @@ .shot-content { padding: 2rem; + @media (max-width: 768px) { + padding: 1.5rem; + } + @media (max-width: 520px) { + padding: 1rem; + } + + .message-toolbar { + display: none; + } + & > * { margin-bottom: 0.5rem; @@ -151,6 +161,18 @@ width: 80vw; height: 70vh; background: hsl(var(--background)); + transition: 0.25s; + + .message-toolbar { + display: none !important; + } + + &.maximized { + width: 100vw; + height: 100%; + margin: 0; + border-radius: 0; + } .header { display: flex; @@ -226,7 +248,8 @@ flex-wrap: wrap; justify-content: flex-end; gap: 6px; - padding: 0.75rem 1.5rem 1rem; + padding: 1.25rem 1rem; + border-top: 1px solid hsl(var(--border)); button { white-space: nowrap; diff --git a/app/src/components/Message.tsx b/app/src/components/Message.tsx index 8574068..0f2e7fa 100644 --- a/app/src/components/Message.tsx +++ b/app/src/components/Message.tsx @@ -35,6 +35,7 @@ type MessageProps = { end?: boolean; onEvent?: (event: string, index?: number, message?: string) => void; ref?: Ref; + sharing?: boolean; }; function MessageSegment(props: MessageProps) { diff --git a/app/src/components/admin/assemblies/ModelUsageChart.tsx b/app/src/components/admin/assemblies/ModelUsageChart.tsx index 3331692..2cb1964 100644 --- a/app/src/components/admin/assemblies/ModelUsageChart.tsx +++ b/app/src/components/admin/assemblies/ModelUsageChart.tsx @@ -50,7 +50,7 @@ function ModelUsageChart({ labels, datasets }: ModelChartProps) { const categories = useMemo(() => { return chart.map( (item) => `${item.name} (${getReadableNumber(item.value, 1)})`, - ) + ); }, [chart]); type CustomTooltipTypeDonut = { @@ -104,6 +104,7 @@ function ModelUsageChart({ labels, datasets }: ModelChartProps) { showAnimation={true} valueFormatter={(value) => getReadableNumber(value, 1)} customTooltip={customTooltip} + colors={chart.map((item) => getModelColor(item.name))} /> (null); const date = new Date(data.time); const time = `${ date.getMonth() + 1 }-${date.getDate()} ${date.getHours()}:${date.getMinutes()}`; - const value = JSON.stringify(data, null, 2); - const saveImage = async () => { toast({ title: t("message.saving-image-prompt"), @@ -68,7 +71,7 @@ function SharingForm({ refer, data }: SharingFormProps) { }; return ( -
+
@@ -78,7 +81,9 @@ function SharingForm({ refer, data }: SharingFormProps) {

{t("message.sharing.title")}

-

{data.name}

+

+ {mobile ? extractMessage(data.name, 12) : data.name} +

@@ -126,15 +131,14 @@ function SharingForm({ refer, data }: SharingFormProps) {