z^cCkS=)m
z%Z~-;Z3}mbO&ZIqz_d|>SuN)Mkrei6ht!CivQXb(yN2-CenbB*J5M5^tv{r@6IU-5
zp32B>J*4rVaVuX%n~{=c@0x^TWMSnre^MoEcuu!w7v;v21LFlUD@e=bb50S>^`Edp
z^+->sfklce8IcqCizz?5Dz9+8?QNDteH3o$9JG_MB!>z+H{wFREdm4ax}`>M#&lG9
z8O?@%m`ybsZ00m72#s(sArd{5y(ZH-3@HG?$<5J%7v{?^EM3i_@^bAoxQsFK!|`xb
zAty0K`e+WeDnY%!wbjuF#)nxNa$^^ZDCm-g*ogMdbsA?`nR^oPWI}H6Xt9bzFieU>
zZ6^|mvorar-=y@7e*4ANi@q{27*#AUGdqFkyu&eNN9pKAmlj=HdAbT`br{B7bkCd2
z@8ZW9XUGaZSWHH;C2;qxTzUtJHMH!vNch1tKDdo^ZjVgR+l{+rdLT?iSH^eUz)CpGYf+?R`Kyu9wkZ7=*!sr;S(;?
z6fWV5Gjp6Z%UD#1s8pr!h|8@p8w3Vq-qKvCZ&!byXXxWS_KHh^`w
zb(X?xF-vyA*ErocY=7>Ku1a|F9Ndy`Iqc#1t>oCbcCrDqcd3``RrMPI;Cp%JOhva;vsU(YDy!NZSoybTv!$
zR=sLgv${EPx(6#GJgyb(6-b5!w-=c5`@82pmu>70oh$QSwHi*1dGv2v|LPoCjxi+{
zJ0>G@9c!~Zgp6oneWQg`FNfO|S3#E}=m_Vc$XL)!!pzh}wMm)B@S^p{@bYg3Vn!h6
zFTxfx`f<>%)32G<+gMpyrGeNGbY(}rp(4(Qk^dShmAQ95Q9dnsjZD^@S%C7u^$y%9
zfLllyNgB#(z&Vw`U-UX84!-EfMSBMqTDN(4__}Xy#PWTf_iT}P6alv+E|>U&7@!C(
zxh=);@s>c=bMO8%`sfrjR3b67Y>TF6ZOOfC^57oDd}yi6xIinIbjvKAVz}9zQz30B
z#2@QcFK(hf8##p6^+260HY7PvOsQ7f6ID^|925QMl$sOz`ISx`VN>m+h`b!69L%O!
zuo|1TI3Zz?^6CKE(D?KvnUX=1mcx=2=IfdpK;n)_Dmqu_EuNg8(1i+87Oyf9?DDnN
zGz?+e_7l`;hXp2Hv0XFxut@R~j`vx%@Et@e8Y@qfNw35sdH>I$2k3979K(DQ(bs14
zZx4%EO9^Tjn5RY|9AkOKQC$!^6f!FsbS7nqT2*A@>Qt^-O?Upt`zg~+F!*G@nQTYx
z>8X?w+Ttrxq;mYH))j~Ys|
zGV#ghn>N}~^)mBkpJYkoMuV~Qg`CFH=3B?DUM_TT4Zj%{&QCl#i
zfquwqPQ??hyNXo!*>{f@K4*k}dCyg5Lq)7BNL@d$d|LT);fGhTwvU=@le)sr+6rxu
z1bivqPB<5Kh6c+5@2^2J)I!O6bIHdfmBk@y&S%2cO51UxL0s_R>$&_LBui;;y;o5>
z;=~?n51`;hiEo_FP@kERi>tT)E`}0w;tirT@4x2jBV3}>YkB8Fg9)wx;^#-KF&+f*
z`XczW#0rmoq^W1&^L<}jS5@O}99B{F@Ck@}|A>iixW@kOJ4#Of+~M=Q&Lf6?**5wg
zDb?Z+ibbMs<~f=y1)_!%&-a+sOLNv8fiXms>I70ahv+ku7aRqd-lmPDL2%M
zf&Vn;OiWIO<04`M0(z$%27P!PoA@=KZ4LN6v
zOl&oP8mIagCLT_w@q(qzIf^CW7*1Z*1`+67wEKj+ZVxAZbWV+|;@;ET}n0?A$5@f#~l~oJ+}-
zX-v!s@|3Hh*rOcg$96TT*AF4RUiAHk0r=}r7dO~b;>#GNa8Q+M->lE|h>W_d{t)R5
zFZ;-I-COIO&DwSBWhUcB3-xR_sO|+Bgq~rYgL8W=GPJ&hoe#}FfL!o^{)(Biuhxvl
z#lGMd*Fbw*r&}Ah?J?;XpE?nqp@yQS}`#h|0
z4@V{rOfWPaI+XU_dcO%
-import { ref } from 'vue'
-
-defineProps<{ msg: string }>()
-
-const count = ref(0)
-
-
-
- {{ msg }}
-
-
-
-
- Edit
- components/HelloWorld.vue
to test HMR
-
-
-
-
- Check out
- create-vue, the official Vue + Vite starter
-
-
- Install
- Volar
- in your IDE for a better DX
-
- Click on the Vite and Vue logos to learn more
-
-
-
diff --git a/src/entities/Auth.ts b/src/entities/Auth.ts
new file mode 100644
index 0000000..f222322
--- /dev/null
+++ b/src/entities/Auth.ts
@@ -0,0 +1,3 @@
+export enum Auth {
+ user,admin
+}
\ No newline at end of file
diff --git a/src/entities/User.ts b/src/entities/User.ts
new file mode 100644
index 0000000..1b2519a
--- /dev/null
+++ b/src/entities/User.ts
@@ -0,0 +1,7 @@
+import {Auth} from "./Auth";
+
+export interface User {
+ id: string
+ name: string;
+ auth: Auth;
+}
\ No newline at end of file
diff --git a/src/main.ts b/src/main.ts
index 2425c0f..3c7f557 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,5 +1,16 @@
import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
-
-createApp(App).mount('#app')
+import Mobile from './views/AppMobile.vue'
+import PC from './views/AppPC.vue'
+import {createRouter, createWebHashHistory} from "vue-router";
+const router = createRouter({
+ history: createWebHashHistory(),
+ routes: [
+ {path: "/", component: PC},
+ {path: "/mobile", component: Mobile}
+ ]
+})
+const app = createApp(App);
+app.use(router);
+app.mount('#app');
diff --git a/src/style.css b/src/style.css
index 7294765..6e1b86e 100644
--- a/src/style.css
+++ b/src/style.css
@@ -1,80 +1,3 @@
:root {
- font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
- line-height: 1.5;
- font-weight: 400;
-
- color-scheme: light dark;
- color: rgba(255, 255, 255, 0.87);
- background-color: #242424;
-
- font-synthesis: none;
- text-rendering: optimizeLegibility;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-text-size-adjust: 100%;
-}
-
-a {
- font-weight: 500;
- color: #646cff;
- text-decoration: inherit;
-}
-a:hover {
- color: #535bf2;
-}
-
-body {
- margin: 0;
- display: flex;
- place-items: center;
- min-width: 320px;
- min-height: 100vh;
-}
-
-h1 {
- font-size: 3.2em;
- line-height: 1.1;
-}
-
-button {
- border-radius: 8px;
- border: 1px solid transparent;
- padding: 0.6em 1.2em;
- font-size: 1em;
- font-weight: 500;
- font-family: inherit;
- background-color: #1a1a1a;
- cursor: pointer;
- transition: border-color 0.25s;
-}
-button:hover {
- border-color: #646cff;
-}
-button:focus,
-button:focus-visible {
- outline: 4px auto -webkit-focus-ring-color;
-}
-
-.card {
- padding: 2em;
-}
-
-#app {
- max-width: 1280px;
- margin: 0 auto;
- padding: 2rem;
- text-align: center;
-}
-
-@media (prefers-color-scheme: light) {
- :root {
- color: #213547;
- background-color: #ffffff;
- }
- a:hover {
- color: #747bff;
- }
- button {
- background-color: #f9f9f9;
- }
-}
+ background-color: #242424;
+}
\ No newline at end of file
diff --git a/src/views/AppMobile.vue b/src/views/AppMobile.vue
new file mode 100644
index 0000000..4fc2e0a
--- /dev/null
+++ b/src/views/AppMobile.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
登录/注册
+
欢迎来到文件分享站
+
+
+
+
+
+ 登录
+ 注册
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/AppPC.vue b/src/views/AppPC.vue
new file mode 100644
index 0000000..afd1a65
--- /dev/null
+++ b/src/views/AppPC.vue
@@ -0,0 +1,11 @@
+
+ PC
+
+
+
+
+
diff --git a/vite.config.ts b/vite.config.ts
index 05c1740..787daf5 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -1,7 +1,20 @@
-import { defineConfig } from 'vite'
+import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'
+import Components from 'unplugin-vue-components/vite';
+import {VantResolver} from '@vant/auto-import-resolver';
+import {readFileSync} from "node:fs";
+import AutoImport from 'unplugin-auto-import/vite'
+import {ElementPlusResolver} from 'unplugin-vue-components/resolvers'
// https://vitejs.dev/config/
export default defineConfig({
- plugins: [vue()],
+ server: {
+ host: "0.0.0.0",
+ port: 5173,
+ https: {
+ key: readFileSync("keys/agent2-key.pem"),
+ cert: readFileSync("keys/agent2-cert.pem"),
+ }
+ },
+ plugins: [AutoImport({resolvers: [ElementPlusResolver()],}), Components({resolvers: [ElementPlusResolver(), VantResolver()],}), vue()],
})