Make the assets/themes folder if it doesn't exist

Nate Butler and Mikayla Maki created

- Also only run clearThemes if the folder exists

Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>

Change summary

styles/src/buildThemes.ts | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)

Detailed changes

styles/src/buildThemes.ts 🔗

@@ -17,11 +17,15 @@ const tempDirectory = fs.mkdtempSync(path.join(tmpdir(), "build-themes"));
 
 // Clear existing themes
 function clearThemes(themeDirectory: string) {
-  for (const file of fs.readdirSync(themeDirectory)) {
-    if (file.endsWith(".json")) {
-      const name = file.replace(/\.json$/, "");
-      if (!colorSchemes.find((colorScheme) => colorScheme.name === name)) {
-        fs.unlinkSync(path.join(themeDirectory, file));
+  if (!fs.existsSync(themeDirectory)) {
+    fs.mkdirSync(themeDirectory, { recursive: true });
+  } else {
+    for (const file of fs.readdirSync(themeDirectory)) {
+      if (file.endsWith(".json")) {
+        const name = file.replace(/\.json$/, "");
+        if (!colorSchemes.find((colorScheme) => colorScheme.name === name)) {
+          fs.unlinkSync(path.join(themeDirectory, file));
+        }
       }
     }
   }