diff --git a/app.vue b/app.vue index 13f24c7..6933776 100644 --- a/app.vue +++ b/app.vue @@ -119,13 +119,13 @@ html.theme-changing * { box-shadow 1s ease !important; } -.slide-down-enter-active, -.slide-down-leave-active { +.slide-up-enter-active, +.slide-up-leave-active { transition: transform 0.3s ease; } -.slide-down-enter-from, -.slide-down-leave-to { - transform: translateY(-100%); +.slide-up-enter-from, +.slide-up-leave-to { + transform: translateY(100%); } diff --git a/bun.lock b/bun.lock index f064092..4984415 100644 --- a/bun.lock +++ b/bun.lock @@ -50,6 +50,7 @@ "vee-validate": "^4.15.0", "virtua": "^0.40.4", "vue": "^3.5.13", + "vue-draggable-plus": "^0.6.0", "vue-router": "^4.5.1", "vue-sonner": "^1.3.2", "zod": "^3.24.3", @@ -720,6 +721,8 @@ "@types/resolve": ["@types/resolve@1.20.2", "", {}, "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q=="], + "@types/sortablejs": ["@types/sortablejs@1.15.8", "", {}, "sha512-b79830lW+RZfwaztgs1aVPgbasJ8e7AXtZYHTELNXZPsERt4ymJdjV4OccDbHQAvHrCcFpbF78jkm0R6h/pZVg=="], + "@types/trusted-types": ["@types/trusted-types@2.0.7", "", {}, "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw=="], "@types/video.js": ["@types/video.js@7.3.58", "", {}, "sha512-1CQjuSrgbv1/dhmcfQ83eVyYbvGyqhTvb2Opxr0QCV+iJ4J6/J+XWQ3Om59WiwCd1MN3rDUHasx5XRrpUtewYQ=="], @@ -2098,6 +2101,8 @@ "vue-devtools-stub": ["vue-devtools-stub@0.1.0", "", {}, "sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ=="], + "vue-draggable-plus": ["vue-draggable-plus@0.6.0", "", { "dependencies": { "@types/sortablejs": "^1.15.8" } }, "sha512-G5TSfHrt9tX9EjdG49InoFJbt2NYk0h3kgjgKxkFWr3ulIUays0oFObr5KZ8qzD4+QnhtALiRwIqY6qul4egqw=="], + "vue-router": ["vue-router@4.5.1", "", { "dependencies": { "@vue/devtools-api": "^6.6.4" }, "peerDependencies": { "vue": "^3.2.0" } }, "sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw=="], "vue-sonner": ["vue-sonner@1.3.2", "", {}, "sha512-UbZ48E9VIya3ToiRHAZUbodKute/z/M1iT8/3fU8zEbwBRE11AKuHikssv18LMk2gTTr6eMQT4qf6JoLHWuj/A=="], diff --git a/components/form/switch.vue b/components/form/switch.vue index 019307c..20ab220 100644 --- a/components/form/switch.vue +++ b/components/form/switch.vue @@ -5,9 +5,9 @@ {{ title }} - + {{ description }} - + @@ -19,7 +19,13 @@ diff --git a/components/preferences2/category.vue b/components/preferences/category.vue similarity index 97% rename from components/preferences2/category.vue rename to components/preferences/category.vue index 371741a..56aa2e1 100644 --- a/components/preferences2/category.vue +++ b/components/preferences/category.vue @@ -18,7 +18,7 @@ diff --git a/components/preferences2/developer.vue b/components/preferences/developer.vue similarity index 100% rename from components/preferences2/developer.vue rename to components/preferences/developer.vue diff --git a/components/preferences2/dialog.vue b/components/preferences/dialog.vue similarity index 92% rename from components/preferences2/dialog.vue rename to components/preferences/dialog.vue index 6b324d7..92a182e 100644 --- a/components/preferences2/dialog.vue +++ b/components/preferences/dialog.vue @@ -25,16 +25,17 @@ import Developer from "./developer.vue"; import Emojis from "./emojis/index.vue"; import Page from "./page.vue"; import { preferences } from "./preferences"; +import Profile from "./profile.vue"; import Stats from "./stats.vue"; const pages = Object.values(preferences) .map((p) => p.options.category) .filter((c) => c !== undefined) .map((c) => c.split("/")[0] as string) - .concat(["Account", "Emojis", "Roles", "Developer", "About"]) + .concat(["Account", "Emojis", "Developer", "About"]) // Remove duplicates .filter((c, i, a) => a.indexOf(c) === i); -const extraPages = ["Account", "Emojis", "Roles", "Developer", "About"]; +const extraPages = ["Account", "Emojis", "Developer", "About"]; const icons: Record = { Account: UserIcon, @@ -75,11 +76,17 @@ const { account: author3 } = useAccountFromAcct( client, "lina@social.lysand.org", ); + +const open = ref(false); + +useListen("preferences:open", () => { + open.value = true; +});