Skip to content

Commit bb7a3ff

Browse files
committed
feat: implement settings page in theme generator
1 parent 9156c50 commit bb7a3ff

File tree

1 file changed

+114
-5
lines changed

1 file changed

+114
-5
lines changed

src/components/themes/windows/SettingsThemed.vue

Lines changed: 114 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<script setup lang="ts">
22
import Image from "@/components/base/Image.vue";
3+
import { useCatPackState } from "@/lib/stores/launcher/cat-pack-state.ts";
34
45
const {
56
highlight,
@@ -15,6 +16,8 @@ const {
1516
"base" : string;
1617
}>();
1718
19+
const catPackStore = useCatPackState();
20+
1821
const buttons = [
1922
{ "name": "Launcher", "icon": "special" },
2023
{ "name": "Minecraft", "icon": "i-lucide-box" },
@@ -27,6 +30,11 @@ const buttons = [
2730
{ "name": "Accounts", "icon": "i-lucide-users" },
2831
{ "name": "APIs", "icon": "i-lucide-folder" },
2932
];
33+
const itemsThemesSettings = [
34+
{ "name": "Icons", "input": "Lucide (White)" },
35+
{ "name": "Widgets", "input": "Custom" },
36+
{ "name": "Cat", "input": catPackStore.name },
37+
];
3038
</script>
3139

3240
<template>
@@ -67,21 +75,122 @@ const buttons = [
6775
<Image class-names="size-6" src="/favicon.webp" alt="Freesm Launcher logo" />
6876
</div>
6977
<div class="h-full w-full flex flex-col">
70-
<div class="flex flex-nowrap items-end">
78+
<div class="flex flex-nowrap items-end px-[2px]">
7179
<div
7280
v-for="name in ['Features', 'User Interface', 'Console']"
7381
:key="name"
7482
:class="[
75-
'mix-blend-lighten text-sm p-2 leading-none rounded-t-sm',
83+
'mix-blend-lighten text-sm p-2 leading-none rounded-t-sm text-xs',
7684
name === 'User Interface'
77-
? 'border-t-2 border-x-2'
78-
: '',
85+
? 'h-[32px] border-x-2 border-t-2'
86+
: 'h-[30px] border-b-2 opacity-80',
7987
]"
80-
:style="{ background: buttonColor }"
88+
:style="{
89+
background : buttonColor,
90+
borderColor: background,
91+
}"
8192
>
8293
{{ name }}
8394
</div>
8495
</div>
96+
<div
97+
class="h-full w-full flex flex-col border-x-2 border-b-2 rounded-sm p-2 mix-blend-lighten"
98+
:style="{
99+
background : buttonColor,
100+
borderColor: base,
101+
}"
102+
>
103+
<p class="text-xs">
104+
Instance view sorting mode
105+
</p>
106+
<div
107+
class="grid cols-1 border border-black rounded-md px-2 py-3 sm:cols-2"
108+
>
109+
<div
110+
v-for="item in ['By last launched', 'By name']"
111+
:key="item"
112+
class="flex flex-nowrap items-center gap-1"
113+
>
114+
<div v-if="item === 'By last launched'" class="size-4 rounded-full bg-black" />
115+
<div v-else class="grid size-4 place-items-center rounded-full bg-black">
116+
<div class="size-2 rounded-full bg-white" />
117+
</div>
118+
<p class="text-xs">
119+
{{ item }}
120+
</p>
121+
</div>
122+
</div>
123+
<p class="pt-2 text-xs">
124+
Theme
125+
</p>
126+
<div
127+
class="flex flex-col gap-1 border border-black rounded-md px-2 py-3 sm:cols-2"
128+
>
129+
<div
130+
v-for="item in itemsThemesSettings"
131+
:key="item.name"
132+
class="flex flex-nowrap items-center gap-2"
133+
>
134+
<p class="w-11 shrink-0 text-xs">
135+
{{ item.name }}
136+
</p>
137+
<div
138+
class="w-full border rounded-md p-1 text-xs leading-none brightness-85"
139+
:style="{
140+
background : buttonColor,
141+
borderColor: background,
142+
}"
143+
>
144+
{{ item.input }}
145+
</div>
146+
<div class="i-lucide-folder size-4 shrink-0" />
147+
</div>
148+
</div>
149+
<p class="pt-2 text-xs">
150+
Cat
151+
</p>
152+
<div
153+
class="border border-black rounded-md px-2 py-3 sm:cols-2"
154+
>
155+
<div class="flex flex-nowrap items-center justify-between">
156+
<p class="text-xs">
157+
Opacity
158+
</p>
159+
<div
160+
class="h-5 flex flex-nowrap rounded-md"
161+
:style="{
162+
background: base,
163+
}"
164+
>
165+
<p class="p-1 text-xs leading-none">
166+
100%
167+
</p>
168+
<div
169+
class="h-full w-4 flex flex-col items-center justify-center rounded-md"
170+
:style="{
171+
background: background,
172+
}"
173+
>
174+
<div class="i-fluent-caret-up-16-filled size-2" />
175+
<div class="i-fluent-caret-down-16-filled size-2" />
176+
</div>
177+
</div>
178+
</div>
179+
</div>
180+
<p class="pt-2 text-xs">
181+
Tools
182+
</p>
183+
<div
184+
class="border border-black rounded-md px-2 py-3 sm:cols-2"
185+
>
186+
<div class="flex flex-nowrap items-center gap-1">
187+
<div class="size-4 bg-black" />
188+
<p class="text-xs">
189+
Replace toolbar with menubar
190+
</p>
191+
</div>
192+
</div>
193+
</div>
85194
</div>
86195
</div>
87196
</div>

0 commit comments

Comments
 (0)