This commit is contained in:
Casey Wittrock 2025-10-20 09:26:47 -05:00
parent d76ee19be7
commit 26609eb46c
11 changed files with 251 additions and 70 deletions

View file

@ -1,43 +1,38 @@
<script setup>
import { ref } from 'vue'
import { ref } from "vue";
import SideBar from "./SideBar.vue";
defineProps({
msg: String,
})
msg: String,
});
const count = ref(0)
const count = ref(0);
</script>
<template>
<h1>{{ msg }}</h1>
<SideBar />
<h1>{{ msg }}</h1>
<div class="card">
<button type="button" @click="count++">count is {{ count }}</button>
<p>
Edit
<code>components/HelloWorld.vue</code> to test HMR
</p>
</div>
<div class="card">
<button type="button" @click="count++">count is {{ count }}</button>
<p>
Edit
<code>components/HelloWorld.vue</code> to test HMR
</p>
</div>
<p>
Check out
<a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
>create-vue</a
>, the official Vue + Vite starter
</p>
<p>
Learn more about IDE Support for Vue in the
<a
href="https://vuejs.org/guide/scaling-up/tooling.html#ide-support"
target="_blank"
>Vue Docs Scaling up Guide</a
>.
</p>
<p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
<p></p>
<p>
Learn more about IDE Support for Vue in the
<a href="https://vuejs.org/guide/scaling-up/tooling.html#ide-support" target="_blank"
>Vue Docs Scaling up Guide</a
>.
</p>
<p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
</template>
<style scoped>
.read-the-docs {
color: #888;
color: #888;
}
</style>

View file

@ -0,0 +1,15 @@
<script setup>
import { ref } from "vue";
const isOpen = ref(true);
const selectedItem = ref("home");
const onDisclosure = () => {
isOpen = !isOpen;
};
</script>
<template>
<div class="snw-side-bar">
<button @click="onDisclosure">{{ isOpen ? "Close" : "Open" }}</button>
</div>
</template>

View file

View file

@ -0,0 +1,11 @@
import { createRouter, createWebHashHistory } from "vue-router";
import Home from "../components/pages/Home.vue";
const routes = [{ path: "/", component: Home }];
const router = createRouter({
history: createWebHashHistory(),
routes,
});
export default router;

View file

@ -0,0 +1,16 @@
import { defineStore } from "pinia";
export const useUserStore = defineStore("user", {
state: () => ({
username: "",
roles: [],
}),
actions: {
check_permission(role) {
if (this.roles.includes(role)) {
return true;
}
return false;
},
},
});

View file

@ -13,15 +13,6 @@
-moz-osx-font-smoothing: grayscale;
}
a {
font-weight: 500;
color: #646cff;
text-decoration: inherit;
}
a:hover {
color: #535bf2;
}
h1 {
font-size: 3.2em;
line-height: 1.1;
@ -50,10 +41,11 @@ button:focus-visible {
padding: 2em;
}
#app {
#custom-ui-app {
max-width: 1280px;
margin: 0 auto;
padding: 2rem;
/* border: 1px solid #444; */
text-align: center;
}