aboutsummaryrefslogtreecommitdiff
path: root/src-vue/src/App.vue
diff options
context:
space:
mode:
authorGeckoEidechse <gecko.eidechse+git@pm.me>2024-12-23 00:23:09 +0100
committerGeckoEidechse <gecko.eidechse+git@pm.me>2024-12-23 00:23:09 +0100
commita1da748f9d635a02d5f4248becb9d609ef6cf7ab (patch)
tree4ab13819a3ae570af269b6b63f5f07186419c970 /src-vue/src/App.vue
parentf1dee718da95836ffa5c0985c9e8f5643e0f3f6f (diff)
downloadFlightCore-a1da748f9d635a02d5f4248becb9d609ef6cf7ab.tar.gz
FlightCore-a1da748f9d635a02d5f4248becb9d609ef6cf7ab.zip
refactor: Restructure UI logic folder structure to match main branch
Diffstat (limited to 'src-vue/src/App.vue')
-rw-r--r--src-vue/src/App.vue151
1 files changed, 151 insertions, 0 deletions
diff --git a/src-vue/src/App.vue b/src-vue/src/App.vue
new file mode 100644
index 00000000..0426defe
--- /dev/null
+++ b/src-vue/src/App.vue
@@ -0,0 +1,151 @@
+<script setup lang="ts">
+import { ref } from "vue";
+import { invoke } from "@tauri-apps/api/core";
+
+const greetMsg = ref("");
+const name = ref("");
+
+async function greet() {
+ // Learn more about Tauri commands at https://tauri.app/develop/calling-rust/
+ greetMsg.value = await invoke("greet", { name: name.value });
+}
+</script>
+
+<template>
+ <main class="container">
+ <h1>Welcome to Tauri + Vue</h1>
+
+ <div class="row">
+ </div>
+ <p>Click on the Tauri, Vite, and Vue logos to learn more.</p>
+
+ <form class="row" @submit.prevent="greet">
+ <input id="greet-input" v-model="name" placeholder="Enter a name..." />
+ <button type="submit">Greet</button>
+ </form>
+ <p>{{ greetMsg }}</p>
+ </main>
+</template>
+
+<style scoped>
+.logo.vite:hover {
+ filter: drop-shadow(0 0 2em #747bff);
+}
+
+.logo.vue:hover {
+ filter: drop-shadow(0 0 2em #249b73);
+}
+
+</style>
+<style>
+:root {
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
+ font-size: 16px;
+ line-height: 24px;
+ font-weight: 400;
+
+ color: #0f0f0f;
+ background-color: #f6f6f6;
+
+ font-synthesis: none;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-text-size-adjust: 100%;
+}
+
+.container {
+ margin: 0;
+ padding-top: 10vh;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ text-align: center;
+}
+
+.logo {
+ height: 6em;
+ padding: 1.5em;
+ will-change: filter;
+ transition: 0.75s;
+}
+
+.logo.tauri:hover {
+ filter: drop-shadow(0 0 2em #24c8db);
+}
+
+.row {
+ display: flex;
+ justify-content: center;
+}
+
+a {
+ font-weight: 500;
+ color: #646cff;
+ text-decoration: inherit;
+}
+
+a:hover {
+ color: #535bf2;
+}
+
+h1 {
+ text-align: center;
+}
+
+input,
+button {
+ border-radius: 8px;
+ border: 1px solid transparent;
+ padding: 0.6em 1.2em;
+ font-size: 1em;
+ font-weight: 500;
+ font-family: inherit;
+ color: #0f0f0f;
+ background-color: #ffffff;
+ transition: border-color 0.25s;
+ box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
+}
+
+button {
+ cursor: pointer;
+}
+
+button:hover {
+ border-color: #396cd8;
+}
+button:active {
+ border-color: #396cd8;
+ background-color: #e8e8e8;
+}
+
+input,
+button {
+ outline: none;
+}
+
+#greet-input {
+ margin-right: 5px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ color: #f6f6f6;
+ background-color: #2f2f2f;
+ }
+
+ a:hover {
+ color: #24c8db;
+ }
+
+ input,
+ button {
+ color: #ffffff;
+ background-color: #0f0f0f98;
+ }
+ button:active {
+ background-color: #0f0f0f69;
+ }
+}
+
+</style>