diff --git a/src/svelte-interface/components/Switch.svelte b/src/svelte-interface/components/Switch.svelte
index b7d959d7..6345d011 100644
--- a/src/svelte-interface/components/Switch.svelte
+++ b/src/svelte-interface/components/Switch.svelte
@@ -29,7 +29,7 @@
onChange(!state)}
onkeydown={(e) => e.key === "Enter" && onChange(!state)}
diff --git a/src/svelte-interface/pages/themeCreator.svelte b/src/svelte-interface/pages/themeCreator.svelte
index 7ac4b59f..dff4ce44 100644
--- a/src/svelte-interface/pages/themeCreator.svelte
+++ b/src/svelte-interface/pages/themeCreator.svelte
@@ -64,7 +64,7 @@
})
- type SettingType = 'switch' | 'button' | 'slider' | 'colourPicker' | 'select' | 'codeEditor';
+ type SettingType = 'switch' | 'button' | 'slider' | 'colourPicker' | 'select' | 'codeEditor' | 'imageUpload';
type SwitchProps = { state: boolean; onChange: (value: boolean) => void };
type ButtonProps = { onClick: () => void; text: string };
@@ -100,6 +100,30 @@
{:else if item.type === 'codeEditor'}
+ {:else if item.type === 'imageUpload'}
+ {#each theme.CustomImages as image (image.id)}
+
+
+
})
+
+
onImageVariableChange(image.id, e.currentTarget.value)}
+ placeholder="CSS Variable Name"
+ class="flex-grow flex-[3] w-full p-2 transition-all duration-300 rounded-lg focus:outline-none ring-0 focus:ring-1 ring-zinc-100 dark:ring-zinc-700 dark:bg-zinc-800/50 dark:text-white"
+ />
+
+
+ {/each}
+
+
+ {'\uec60'}
+ Add image
+
+
{/if}
{/snippet}
@@ -137,6 +161,23 @@
+
+
+ {'\uec60'}
+
+
{theme.coverImage ? 'Change' : 'Add'} cover image
+
+ {#if !theme.hideThemeName && theme.coverImage}
+
{theme.name}
+ {/if}
+ {#if theme.coverImage}
+
+
})
+ {/if}
+
+
+
+
{#each [
{
type: 'switch',
@@ -166,6 +207,12 @@
customOnChange: (color: string) => theme = { ...theme, defaultColour: color }
}
},
+ {
+ type: 'imageUpload',
+ title: 'Custom Images',
+ description: 'Add custom images to your theme',
+ direction: 'vertical',
+ },
{
type: 'codeEditor',
title: 'Custom CSS',
@@ -179,44 +226,5 @@
] as SettingItem[] as setting}
{@render settingItem(setting)}
{/each}
-
-
-
- {'\ueb44'}
-
-
{theme.coverImage ? 'Change' : 'Add'} cover image
-
- {#if !theme.hideThemeName && theme.coverImage}
-
{theme.name}
- {/if}
- {#if theme.coverImage}
-
-
})
- {/if}
-
-
- {#each theme.CustomImages as image (image.id)}
-
-
-
})
-
-
onImageVariableChange(image.id, e.currentTarget.value)}
- placeholder="CSS Variable Name"
- class="flex-grow flex-[3] w-full p-2 transition-all duration-300 rounded-lg focus:outline-none ring-0 focus:ring-1 ring-zinc-100 dark:ring-zinc-700 dark:bg-zinc-800/50 dark:text-white"
- />
-
-
- {/each}
-
-
-
- Add image
-
-