From ac0dbc5b1c9b48079e3a450794030b3e0bc6096a Mon Sep 17 00:00:00 2001
From: 简律纯 <i@jyunko.cn>
Date: Sat, 2 Mar 2024 03:09:10 +0800
Subject: refactor(site): rewrite with vuejs (#93)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* chore: update package version

* Refactor site (#87)

* 补全changelog文件

* 补全changelog文件

* 补全changelog文件

* 完成基本的markdown渲染

* 提交新的css (#88)

* 补全changelog文件

* 补全changelog文件

* 补全changelog文件

* 完成基本的markdown渲染

* 添加新的css

* Refactor site (#92)

* 补全changelog文件

* 补全changelog文件

* 补全changelog文件

* 完成基本的markdown渲染

* 添加新的css

* 修复倒计时居中

* 初步完成右侧窗口切换

* 优化进度条

* 导入element-plus

* 导入element-plus

* 导入element-plus

* 加入选中提示和禁用提示

* 修改背景颜色

---------

Co-authored-by: 白咕咕 <67865300+baimianxiao@users.noreply.github.com>
---
 site/src/components/Right.vue | 203 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 203 insertions(+)
 create mode 100644 site/src/components/Right.vue

(limited to 'site/src/components/Right.vue')

diff --git a/site/src/components/Right.vue b/site/src/components/Right.vue
new file mode 100644
index 0000000..055d11b
--- /dev/null
+++ b/site/src/components/Right.vue
@@ -0,0 +1,203 @@
+<script lang="ts">
+import ChangeLog from './ChangeLog.vue'
+import RightPage1 from './RightPage1.vue'
+import DocumentationIcon from './icons/IconDocumentation.vue'
+
+export default {
+  data() {
+    return {
+      mainPage: 1,
+      changelogDisplay: "",
+      page2Display: "none",
+      page3Display: "none",
+      page4Display: "none",
+      icon1Back: "var(--icon-highlight)",
+      icon2Back: "",
+      icon3Back: "",
+      icon4Back: "",
+    }
+  },
+  components: {
+    ChangeLog,
+    RightPage1,
+    DocumentationIcon
+  },
+  methods: {
+    control_page(type: string, n: number) {
+      if (type == "over") {
+        this.mainPage = n
+        this.change_page(n)
+      }
+      if (type == "click") {
+        this.mainPage = n
+        this.change_page(n)
+      }
+      if (type == "out") {
+        this.change_page(this.mainPage)
+      }
+    },
+    change_page(n: number) {
+      if (n == 1) {
+        this.changelogDisplay = "";
+        this.page2Display = "none";
+        this.page3Display = "none";
+        this.page4Display = "none";
+        this.icon1Back = "var(--icon-highlight)";
+        this.icon2Back = "var(--color-border)";
+        this.icon3Back = "var(--color-border-hover)";
+        this.icon4Back = "var(--color-border-hover)";
+      } else if (n == 2) {
+        this.changelogDisplay = "none";
+        this.page2Display = "";
+        this.page3Display = "none";
+        this.page4Display = "none";
+        this.icon1Back = "var(--color-border)";
+        this.icon2Back = "var(--icon-highlight)";
+        this.icon3Back = "var(--color-border-hover)";
+        this.icon4Back = "var(--color-border-hover)";
+      } else if (n == 3) {
+        this.changelogDisplay = "none";
+        this.page2Display = "none";
+        this.page3Display = "";
+        this.page4Display = "none";
+        this.icon1Back = "var(--color-border)";
+        this.icon2Back = "var(--color-border)";
+        this.icon3Back = "var(--color-border-hover)";
+        this.icon4Back = "var(--color-border-hover)";
+      } else if (n == 4) {
+        this.changelogDisplay = "none";
+        this.page2Display = "none";
+        this.page3Display = "none";
+        this.page4Display = "";
+        this.icon1Back = "var(--color-border)";
+        this.icon2Back = "var(--color-border)";
+        this.icon3Back = "var(--color-border-hover)";
+        this.icon4Back = "var(--color-border-hover)";
+      }
+
+    }
+  }
+}
+
+</script>
+
+<template>
+  <div class="item">
+    <el-tooltip content="ChangeLog" placement="left">
+      <i :style="{background:icon1Back}" @mouseover="control_page('over',1)" @click="control_page('click',1)"
+         @mouseout="control_page('out',1)">
+        <DocumentationIcon/>
+      </i>
+    </el-tooltip>
+    <el-tooltip content="Page2" placement="left">
+      <i :style="{background:icon2Back}" @mouseover="control_page('over',2)" @click="control_page('click',2)"
+         @mouseout="control_page('out',2)">
+        <DocumentationIcon/>
+      </i>
+    </el-tooltip>
+    <el-tooltip content="敬请期待" placement="left">
+      <i :style="{background:icon3Back}" @mouseover="control_page('over',3)" @click="control_page('click',3)"
+         @mouseout="control_page('out',3)">
+        <DocumentationIcon/>
+      </i>
+    </el-tooltip>
+    <el-tooltip content="敬请期待" placement="left">
+      <i :style="{background:icon4Back}" @mouseover="control_page('over',4)" @click="control_page('click',4)"
+         @mouseout="control_page('out',4)">
+        <DocumentationIcon/>
+      </i>
+    </el-tooltip>
+    <div>
+      <ChangeLog :style="{display:changelogDisplay}"/>
+      <RightPage1 title="Test Page 2" :style="{display:page2Display}"/>
+      <RightPage1 title="Test Page 3" :style="{display:page3Display}"/>
+      <RightPage1 title="Test Page 4" :style="{display:page4Display}"/>
+    </div>
+  </div>
+
+</template>
+
+<style>
+
+.item {
+  height: 600px;
+  margin-top: 2rem;
+  display: flex;
+  position: relative;
+}
+
+
+i {
+  display: flex;
+  place-items: center;
+  place-content: center;
+  width: 32px;
+  height: 32px;
+  color: var(--color-text);
+}
+
+
+h3 {
+  font-size: 1.2rem;
+  font-weight: 500;
+  margin-bottom: 0.4rem;
+  color: var(--color-heading);
+}
+
+@media (min-width: 1024px) {
+  .item {
+    margin-top: 0;
+    padding: 0.4rem 0 1rem calc(var(--section-gap) / 2);
+  }
+
+  i {
+    left: -26px;
+    position: absolute;
+    border-radius: 8px;
+    width: 50px;
+    height: 50px;
+  }
+
+  div i:nth-child(1) {
+    top: calc(20% - 25px);
+  }
+
+  div i:nth-child(2) {
+    top: calc(40% - 25px);
+  }
+
+  div i:nth-child(3) {
+    top: calc(60% - 25px);
+  }
+
+  div i:nth-child(4) {
+    top: calc(80% - 25px);
+  }
+
+  .item:before {
+    content: ' ';
+    border-left: 1px solid var(--color-border);
+    position: absolute;
+    left: 0;
+    bottom: calc(50% + 25px);
+    height: calc(50% - 25px);
+  }
+
+  .item:after {
+    content: ' ';
+    border-left: 1px solid var(--color-border);
+    position: absolute;
+    left: 0;
+    top: calc(50% + 25px);
+    height: calc(50% - 25px);
+  }
+
+  .item:first-of-type:before {
+    display: none;
+  }
+
+  .item:last-of-type:after {
+    display: none;
+  }
+}
+</style>
-- 
cgit v1.2.3-70-g09d2

