From 8d55b878da63a581a716325d4ca2964b07d01db3 Mon Sep 17 00:00:00 2001 From: SethBurkart123 Date: Sun, 31 Mar 2024 18:26:28 +1100 Subject: [PATCH] Add className prop to CodeEditor component and update styles in ThemeCreator page --- src/interface/components/CodeEditor.tsx | 4 +-- src/interface/pages/ThemeCreator.tsx | 41 ++++++++++++++++++------- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/interface/components/CodeEditor.tsx b/src/interface/components/CodeEditor.tsx index 887531ad..43250d60 100644 --- a/src/interface/components/CodeEditor.tsx +++ b/src/interface/components/CodeEditor.tsx @@ -5,7 +5,7 @@ import { less } from '@codemirror/lang-less' import { useCallback, useEffect, useState } from 'react'; import './CodeEditor.css' -export default function CodeEditor({ callback, initialState, height }: { callback: (value: string) => void, initialState: string, height: string }) { +export default function CodeEditor({ callback, initialState, height, className }: { callback: (value: string) => void, initialState: string, height: string, className?: string}) { const [value, setValue] = useState(initialState) const [darkMode, setDarkMode] = useState(false) @@ -31,7 +31,7 @@ export default function CodeEditor({ callback, initialState, height }: { callbac }} theme={ darkMode ? githubDark : githubLight } placeholder={"Happy coding!"} - className='rounded-lg text-[13px]' + className={`rounded-lg text-[13px] ${className}`} value={value} height={height} extensions={[less(), color]} diff --git a/src/interface/pages/ThemeCreator.tsx b/src/interface/pages/ThemeCreator.tsx index e64b8e70..1e652150 100644 --- a/src/interface/pages/ThemeCreator.tsx +++ b/src/interface/pages/ThemeCreator.tsx @@ -15,6 +15,15 @@ export default function ThemeCreator() { CustomImages: [] }); + function saveTheme() { + console.log(theme); + } + + function CodeUpdate(value: string) { + console.log(value); + setTheme((previousTheme) => ({ ...previousTheme, CustomCSS: value })); + } + return (
@@ -28,7 +37,7 @@ export default function ThemeCreator() { placeholder='Whatcha calling it?' value={theme.name} onChange={e => setTheme({ ...theme, name: e.target.value })} - className='w-full p-2 mb-4 rounded-lg dark:border-gray-700 dark:bg-zinc-900 dark:text-white' /> + className='w-full p-2 mb-4 transition-all duration-300 rounded-lg focus:outline-none ring-0 focus:ring-1 ring-zinc-100 dark:ring-zinc-700 dark:bg-zinc-900 dark:text-white' />
@@ -37,11 +46,11 @@ export default function ThemeCreator() { id='themeDescription' value={theme.description} onChange={e => setTheme({ ...theme, description: e.target.value })} - className='w-full p-2 mb-4 rounded-lg dark:border-gray-700 dark:bg-zinc-900 dark:text-white' /> + className='w-full p-2 mb-4 rounded-lg focus:outline-none ring-0 focus:ring-1 ring-zinc-100 dark:ring-zinc-700 dark:bg-zinc-900 dark:text-white' />
-
+
setTheme({ ...theme, defaultColour: color })} />
-
-
Allow users to change the colour
+
+
+
Customisable
+
Allow users to change the theme colour
+
setTheme({ ...theme, CanChangeColour: value })} /> @@ -60,14 +72,21 @@ export default function ThemeCreator() {
- - setTheme({ ...theme, CustomCSS: code })} /> + + child -