From e13ab54398a939a5e05ebae392d160e7c010c190 Mon Sep 17 00:00:00 2001 From: SrGooglo Date: Sat, 8 Jul 2023 19:39:47 +0000 Subject: [PATCH] improve badges display --- .../app/src/components/UserBadges/index.jsx | 30 +++---- .../app/src/components/UserBadges/index.less | 28 ++++++- .../app/src/pages/account/tabs/details.jsx | 78 ++++++++++++++----- .../app/src/pages/account/tabs/details.less | 53 +++++++++++++ 4 files changed, 153 insertions(+), 36 deletions(-) diff --git a/packages/app/src/components/UserBadges/index.jsx b/packages/app/src/components/UserBadges/index.jsx index 302a4e5a..78f57437 100755 --- a/packages/app/src/components/UserBadges/index.jsx +++ b/packages/app/src/components/UserBadges/index.jsx @@ -24,19 +24,23 @@ export default React.memo((props) => { return null } - return () => badgesData.map((badge, index) => { - return - - {badge.label} - - - }) + return () =>
+ { + badgesData.map((badge, index) => { + return + + {badge.label} + + + }) + } +
}, loading: antd.Skeleton, })) diff --git a/packages/app/src/components/UserBadges/index.less b/packages/app/src/components/UserBadges/index.less index db3e915e..fb246054 100644 --- a/packages/app/src/components/UserBadges/index.less +++ b/packages/app/src/components/UserBadges/index.less @@ -1,8 +1,32 @@ +#root { + &.mobile { + .badges { + .ant-tag { + padding: 10px; + font-size: 0.9rem; + width: 100%; + + svg { + font-size: 1.2rem; + } + } + } + } +} + .badges { display: flex; flex-direction: column; - padding: 10px; - gap: 7px; + + .ant-tag { + display: inline-flex; + + flex-direction: row; + + align-items: center; + + margin: 0 !important; + } } \ No newline at end of file diff --git a/packages/app/src/pages/account/tabs/details.jsx b/packages/app/src/pages/account/tabs/details.jsx index 7c7b9e24..97c5952f 100755 --- a/packages/app/src/pages/account/tabs/details.jsx +++ b/packages/app/src/pages/account/tabs/details.jsx @@ -1,12 +1,14 @@ import React from "react" +import classnames from "classnames" + import { DateTime } from "luxon" import { Skeleton } from "antd" import { UserBadges } from "components" -import "./details.less" - import { Icons } from "components/Icons" +import "./details.less" + function getJoinLabel(jsDate) { const date = DateTime.fromJSDate(new Date(jsDate)) @@ -16,6 +18,38 @@ function getJoinLabel(jsDate) { return `${month} ${year}` } +const DroppableField = (props) => { + const [collapsed, setCollapsed] = React.useState(true) + + return
+
setCollapsed(!collapsed)}> + { + collapsed + ? + : + } +
+
+ { + props.header + } +
+ +
+ { + props.children + } +
+
+} + export default (props) => { return
{ @@ -88,26 +122,28 @@ export default (props) => {
-
-
-
- + +
+
+ +
+ + + Badges collected +
- - Badges collected - -
- -
-

- {props.state.user?.badges.length} -

-
-
- - }> - - +
+

+ {props.state.user?.badges.length} +

+
+ } + > + }> + + +
} \ No newline at end of file diff --git a/packages/app/src/pages/account/tabs/details.less b/packages/app/src/pages/account/tabs/details.less index 055ee9c8..a35d4842 100644 --- a/packages/app/src/pages/account/tabs/details.less +++ b/packages/app/src/pages/account/tabs/details.less @@ -66,6 +66,7 @@ font-size: 1rem; svg { + color: var(--text-color); margin: 0; } } @@ -73,6 +74,58 @@ .field_value { font-family: "DM Mono", monospace; + user-select: text; + } + } +} + +.droppableField { + position: relative; + + display: flex; + flex-direction: column; + + justify-content: center; + + background-color: var(--background-color-primary); + + border-radius: 12px; + + transition: all 150ms ease-in-out; + + &.collapsed { + .field_body { + height: 0; + opacity: 0; + padding: 0; + + pointer-events: none; + } + } + + .inline_field { + margin-left: 20px; + } + + .field_body { + display: flex; + flex-direction: column; + + padding: 10px; + transition: all 150ms ease-in-out; + } + + .collapse_btn { + position: absolute; + + top: 0; + left: 0; + + transform: translate(100%, 90%); + + svg { + color: var(--text-color); + margin: 0 !important; } } } \ No newline at end of file