From 3795a1d0dba5e76e40dd92011f5393235d17eb7f Mon Sep 17 00:00:00 2001 From: Shigma <1700011071@pku.edu.cn> Date: Thu, 10 Feb 2022 19:00:26 +0800 Subject: [PATCH] feat(manager): support market cards --- .../frontend/components/client/icons/index.ts | 8 ++ .../components/client/icons/svg/balance.vue | 5 + .../client/icons/svg/file-archive.vue | 5 + .../components/client/icons/svg/tag.vue | 5 + .../components/client/icons/svg/user.vue | 5 + .../components/client/layout/card.vue | 5 +- plugins/frontend/components/client/style.scss | 7 ++ .../console/client/components/markdown.vue | 13 ++- plugins/frontend/console/client/index.scss | 2 - .../frontend/console/client/layout/index.vue | 2 +- .../client/{dependencies => deps}/index.vue | 0 .../client/{dependencies => deps}/package.vue | 0 plugins/frontend/manager/client/index.ts | 20 ++-- .../frontend/manager/client/market/index.vue | 104 ++++++++++-------- .../manager/client/settings/dep-link.vue | 7 +- plugins/frontend/manager/src/market.ts | 9 +- plugins/frontend/manager/src/utils.ts | 14 +++ 17 files changed, 148 insertions(+), 63 deletions(-) create mode 100644 plugins/frontend/components/client/icons/svg/balance.vue create mode 100644 plugins/frontend/components/client/icons/svg/file-archive.vue create mode 100644 plugins/frontend/components/client/icons/svg/tag.vue create mode 100644 plugins/frontend/components/client/icons/svg/user.vue rename plugins/frontend/manager/client/{dependencies => deps}/index.vue (100%) rename plugins/frontend/manager/client/{dependencies => deps}/package.vue (100%) diff --git a/plugins/frontend/components/client/icons/index.ts b/plugins/frontend/components/client/icons/index.ts index 90ca19d0d6..78f1034f6d 100644 --- a/plugins/frontend/components/client/icons/index.ts +++ b/plugins/frontend/components/client/icons/index.ts @@ -4,6 +4,7 @@ import ArrowDown from './svg/arrow-down.vue' import ArrowLeft from './svg/arrow-left.vue' import ArrowRight from './svg/arrow-right.vue' import ArrowUp from './svg/arrow-up.vue' +import Balance from './svg/balance.vue' import Book from './svg/book.vue' import BoxOpen from './svg/box-open.vue' import CheckFull from './svg/check-full.vue' @@ -21,6 +22,7 @@ import Expand from './svg/expand.vue' import External from './svg/external.vue' import EyeSlash from './svg/eye-slash.vue' import Eye from './svg/eye.vue' +import FileArchive from './svg/file-archive.vue' import Filter from './svg/filter.vue' import Flask from './svg/flask.vue' import Hdd from './svg/hdd.vue' @@ -44,10 +46,12 @@ import StarEmpty from './svg/star-empty.vue' import StarFull from './svg/star-full.vue' import Sun from './svg/sun.vue' import Tachometer from './svg/tachometer.vue' +import Tag from './svg/tag.vue' import TimesFull from './svg/times-full.vue' import Tools from './svg/tools.vue' import Undo from './svg/undo.vue' import Users from './svg/users.vue' +import User from './svg/user.vue' import './style.scss' @@ -58,6 +62,7 @@ registerIcon('arrow-down', ArrowDown) registerIcon('arrow-left', ArrowLeft) registerIcon('arrow-right', ArrowRight) registerIcon('arrow-up', ArrowUp) +registerIcon('balance', Balance) registerIcon('book', Book) registerIcon('box-open', BoxOpen) registerIcon('check-full', CheckFull) @@ -75,6 +80,7 @@ registerIcon('expand', Expand) registerIcon('external', External) registerIcon('eye-slash', EyeSlash) registerIcon('eye', Eye) +registerIcon('file-archive', FileArchive) registerIcon('filter', Filter) registerIcon('flask', Flask) registerIcon('hdd', Hdd) @@ -98,10 +104,12 @@ registerIcon('star-empty', StarEmpty) registerIcon('star-full', StarFull) registerIcon('sun', Sun) registerIcon('tachometer', Tachometer) +registerIcon('tag', Tag) registerIcon('times-full', TimesFull) registerIcon('tools', Tools) registerIcon('undo', Undo) registerIcon('users', Users) +registerIcon('user', User) export function registerIcon(name: string, component: Component) { icons[name] = component diff --git a/plugins/frontend/components/client/icons/svg/balance.vue b/plugins/frontend/components/client/icons/svg/balance.vue new file mode 100644 index 0000000000..5562c6bf7e --- /dev/null +++ b/plugins/frontend/components/client/icons/svg/balance.vue @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/plugins/frontend/components/client/icons/svg/file-archive.vue b/plugins/frontend/components/client/icons/svg/file-archive.vue new file mode 100644 index 0000000000..485ab43e29 --- /dev/null +++ b/plugins/frontend/components/client/icons/svg/file-archive.vue @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/plugins/frontend/components/client/icons/svg/tag.vue b/plugins/frontend/components/client/icons/svg/tag.vue new file mode 100644 index 0000000000..17812f96e0 --- /dev/null +++ b/plugins/frontend/components/client/icons/svg/tag.vue @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/plugins/frontend/components/client/icons/svg/user.vue b/plugins/frontend/components/client/icons/svg/user.vue new file mode 100644 index 0000000000..1cd8b598ea --- /dev/null +++ b/plugins/frontend/components/client/icons/svg/user.vue @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/plugins/frontend/components/client/layout/card.vue b/plugins/frontend/components/client/layout/card.vue index d121632b9f..bde255a71a 100644 --- a/plugins/frontend/components/client/layout/card.vue +++ b/plugins/frontend/components/client/layout/card.vue @@ -32,10 +32,12 @@ $paddingY: 1.5rem; border-radius: 8px; overflow: hidden; background-color: var(--card-bg); + border: 1px solid var(--card-border); box-shadow: var(--card-shadow); - transition: background-color 0.3s ease, box-shadow 0.3s ease; + transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease; header { + position: relative; font-size: 1.25rem; font-weight: bolder; margin: $paddingX 0; @@ -44,6 +46,7 @@ $paddingY: 1.5rem; } footer { + position: relative; margin: $paddingX 0; padding: 0 $paddingY; } diff --git a/plugins/frontend/components/client/style.scss b/plugins/frontend/components/client/style.scss index 5d08b51b44..1b1ef236d6 100644 --- a/plugins/frontend/components/client/style.scss +++ b/plugins/frontend/components/client/style.scss @@ -9,6 +9,8 @@ $white: #ffffff; --border-dark: #c8c9cc; --card-bg: #ffffff; --page-bg: #f2f3f5; + --card-border: var(--card-bg); + --card-shadow: 0 6px 10px -4px rgb(0 0 0 / 15%); --loading-mask-bg: #f2f3f5bf; @mixin apply-color($name, $base) { @@ -30,6 +32,7 @@ html.dark { --border: #4f515cbf; --card-bg: #2f3034; --page-bg: #202225; + --card-border: var(--border); --loading-mask-bg: #202225bf; @mixin apply-color($name, $base) { @@ -64,6 +67,10 @@ html.dark { --el-input-bg-color: transparent; } +.el-input__prefix-inner, .el-input__suffix-inner { + align-items: center; +} + .el-loading-mask { background-color: var(--loading-mask-bg); transition: 0.3s ease; diff --git a/plugins/frontend/console/client/components/markdown.vue b/plugins/frontend/console/client/components/markdown.vue index d73dde081c..88e111fd51 100644 --- a/plugins/frontend/console/client/components/markdown.vue +++ b/plugins/frontend/console/client/components/markdown.vue @@ -1,19 +1,28 @@