Skip to content

Commit

Permalink
feat(eden): scss 颜色变量
Browse files Browse the repository at this point in the history
  • Loading branch information
mark9804 committed Jan 1, 2024
1 parent 44541c2 commit 1adc3f0
Show file tree
Hide file tree
Showing 15 changed files with 579 additions and 61 deletions.
10 changes: 10 additions & 0 deletions .github/workflows/deploy-eden-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,13 @@ jobs:
REMOTE_USER: ${{ secrets.SERVER_USER_PRODUCTION }}
TARGET: "/var/www/eden-docs"
EXCLUDE: ".git*"
- name: Demo rsync deploy
uses: easingthemes/ssh-deploy@main
with:
SSH_PRIVATE_KEY: ${{ secrets.SERVER_PASS_PRODUCTION }}
ARGS: "-rltgoDzvO --delete"
SOURCE: "./lib/eden-design/dist/"
REMOTE_HOST: ${{ secrets.SERVER_HOST_PRODUCTION }}
REMOTE_USER: ${{ secrets.SERVER_USER_PRODUCTION }}
TARGET: "/var/www/eden-docs/demo"
EXCLUDE: ".git*"
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"cSpell.words": ["lintstagedrc", "unocss"]
}
90 changes: 77 additions & 13 deletions common/config/rush/pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions lib/eden-design/docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ hero:
text: 设计规范
link: /guideline/design/
- theme: alt
text: 设计语言
link: /guideline/design/design-language
text: Demo
link: https://eden.blue-archive.io/demo/index.html/button
# image:
# src: /cover.png
# alt: eden-cover
Expand Down
6 changes: 5 additions & 1 deletion lib/eden-design/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@
"@vue/eslint-config-typescript": "^11.0.3",
"prettier": "^2.8.8",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-sort-exports": "^0.8.0"
"eslint-plugin-sort-exports": "^0.8.0",
"@typescript-eslint/eslint-plugin": "^5.60.1",
"@typescript-eslint/parser": "^5.60.1",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-vue": "^9.15.1"
}
}
20 changes: 19 additions & 1 deletion lib/eden-design/packages/eden-ui/components/Menu/index.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,27 @@
import Menu from "./src/Menu.vue";
import MenuItem from "./src/MenuItem.vue";
import MenuItemGroup from "./src/MenuItemGroup.vue";
import SubMenu from "./src/SubMenu.vue";
import type { App } from "vue";
Menu.name = "menu";
MenuItem.name = "menu-item";
MenuItemGroup.name = "menu-item-group";
SubMenu.name = "sub-menu";

Menu.install = (app: App) => {
app.component(Menu.name, Menu);
};

export { Menu };
MenuItem.install = (app: App) => {
app.component(MenuItem.name, MenuItem);
};

MenuItemGroup.install = (app: App) => {
app.component(MenuItemGroup.name, MenuItemGroup);
};

SubMenu.install = (app: App) => {
app.component(SubMenu.name, SubMenu);
};

export { Menu, MenuItem, MenuItemGroup, SubMenu };
73 changes: 48 additions & 25 deletions lib/eden-design/packages/eden-ui/components/Menu/src/Menu.vue
Original file line number Diff line number Diff line change
@@ -1,9 +1,22 @@
<script setup lang="ts">
<script setup lang="tsx">
import { IMenuData } from "../types/Menu";
import SubMenu from "./SubMenu.vue";
import MenuItem from "./MenuItem.vue";
const props = defineProps<{
title?: string;
data?: IMenuData[];
}>();
const menuItemTriage = [
{
keyIs: "groupName",
component: SubMenu,
},
{
keyIs: "title",
component: MenuItem,
},
];
</script>

<template>
Expand All @@ -15,39 +28,49 @@ const props = defineProps<{
<div class="eden-ui__menu__header--title">
<slot name="title"></slot>
</div>
<div class="eden--ui__menu__header--content" v-if="!props.data">
<slot></slot>
</div>
<div class="eden--ui__menu__header--content" v-else></div>
</div>
<div class="eden--ui__menu__content" v-if="!props.data">
<slot></slot>
</div>
<div class="eden--ui__menu__content" v-else>
<component
v-for="item in props.data"
:is="menuItemTriage.find(triage => item[triage.keyIs])?.component"
/>
</div>
</div>
</template>
<style scoped lang="scss">
.eden-ui__menu {
font-family: var(--eden-main-font);
width: 256px;
padding-left: 20px;
padding-top: 32px;
border-right: 1px solid #00000010;
display: flex;
flex-direction: column;
gap: 16px;
@import "../../../style/color.scss";
&__header {
@include theme {
.eden-ui__menu {
font-family: var(--eden-main-font);
width: 256px;
padding-left: 20px;
padding-top: 32px;
border-right: 1px solid #00000010;
display: flex;
gap: 12px;
align-items: center;
flex-direction: column;
gap: 16px;
&--logo {
max-width: 48px;
max-height: 48px;
object-fit: contain;
}
&__header {
display: flex;
gap: 12px;
align-items: center;
color: themeColor("color-text-5");
&--logo {
max-width: 48px;
max-height: 48px;
object-fit: contain;
}
&--title {
font-family: var(--eden-title-font);
font-weight: var(--eden-title-font-weight);
&--title {
font-family: var(--eden-title-font);
font-weight: var(--eden-title-font-weight);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<script setup lang="ts"></script>

<template>
<div></div>
<div>MenuItem</div>
</template>

<style scoped lang="scss"></style>
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {

<template>
<CollapsibleRoot>
<CollapsibleTrigger>111</CollapsibleTrigger>
<CollapsibleTrigger>MenuItemGroup</CollapsibleTrigger>
</CollapsibleRoot>
</template>

Expand Down
22 changes: 22 additions & 0 deletions lib/eden-design/packages/eden-ui/components/Menu/src/SubMenu.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<script setup lang="ts">
import {
CollapsibleContent,
CollapsibleRoot,
CollapsibleTrigger,
} from "radix-vue";
import { IMenuData } from "../types/Menu";
const props = withDefaults(defineProps<IMenuData>(), {
title: "SubMenu",
route: {
path: "/",
},
});
</script>

<template>
<CollapsibleRoot>
<CollapsibleTrigger>{{ props.title }}</CollapsibleTrigger>
</CollapsibleRoot>
</template>

<style scoped lang="scss"></style>
Loading

0 comments on commit 1adc3f0

Please sign in to comment.