From 0432fa743d681f7b0831c3b17511385ca5ef9296 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lucas=20T=C3=A4kker?= Date: Sun, 9 Nov 2025 16:27:50 +0100 Subject: [PATCH] Finished button component for now --- app/styles/_colors.scss | 2 + app/ui/Button.vue | 78 +++++++++++++++++++++- nuxt.config.ts | 2 +- package-lock.json | 140 ++++++++++++++++++++++++++++++++++++++++ package.json | 1 + 5 files changed, 220 insertions(+), 3 deletions(-) diff --git a/app/styles/_colors.scss b/app/styles/_colors.scss index 96e61ff..80ca2eb 100644 --- a/app/styles/_colors.scss +++ b/app/styles/_colors.scss @@ -1,3 +1,5 @@ $color-background: #1a202c; $color-text: rgba(255, 255, 255, 0.92); $color-border: rgba(255, 255, 255, 0.16); +$color-button: rgba(255, 255, 255, 0.08); +$color-button-hover: rgba(255, 255, 255, 0.16); diff --git a/app/ui/Button.vue b/app/ui/Button.vue index 8fcc742..43d9ff9 100644 --- a/app/ui/Button.vue +++ b/app/ui/Button.vue @@ -1,5 +1,79 @@ + + + + diff --git a/nuxt.config.ts b/nuxt.config.ts index 9fabf86..3ec24eb 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -4,7 +4,7 @@ import { fileURLToPath } from "node:url" export default defineNuxtConfig({ compatibilityDate: "2025-07-15", devtools: { enabled: true }, - modules: ["@nuxt/fonts"], + modules: ["@nuxt/fonts", "@nuxt/icon"], components: [ { path: "~/ui", diff --git a/package-lock.json b/package-lock.json index 478db23..9e24314 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "hasInstallScript": true, "dependencies": { "@nuxt/fonts": "0.11.4", + "@nuxt/icon": "^2.1.0", "nuxt": "^4.2.0", "vue": "^3.5.22", "vue-router": "^4.6.3" @@ -17,6 +18,28 @@ "sass-embedded": "^1.93.2" } }, + "node_modules/@antfu/install-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.1.0.tgz", + "integrity": "sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==", + "license": "MIT", + "dependencies": { + "package-manager-detector": "^1.3.0", + "tinyexec": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/utils": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-9.3.0.tgz", + "integrity": "sha512-9hFT4RauhcUzqOE4f1+frMKLZrgNog5b06I7VmZQV1BkvwvqrbC8EBZf3L1eEL2AKb6rNKjER0sEvJiSP1FXEA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/@babel/code-frame": { "version": "7.27.1", "license": "MIT", @@ -467,6 +490,52 @@ "node": ">=18" } }, + "node_modules/@iconify/collections": { + "version": "1.0.615", + "resolved": "https://registry.npmjs.org/@iconify/collections/-/collections-1.0.615.tgz", + "integrity": "sha512-OBBvPu0CAdl042CfDBxt4zWVUxTwnK2kRBatab/y8d/t2XML9QGrA8A2hpaIFpYPPILSs6a4+gBkAGVXSKkBsQ==", + "license": "MIT", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "license": "MIT" + }, + "node_modules/@iconify/utils": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-3.0.2.tgz", + "integrity": "sha512-EfJS0rLfVuRuJRn4psJHtK2A9TqVnkxPpHY6lYHiB9+8eSuudsxbwMiavocG45ujOo6FJ+CIRlRnlOGinzkaGQ==", + "license": "MIT", + "dependencies": { + "@antfu/install-pkg": "^1.1.0", + "@antfu/utils": "^9.2.0", + "@iconify/types": "^2.0.0", + "debug": "^4.4.1", + "globals": "^15.15.0", + "kolorist": "^1.8.0", + "local-pkg": "^1.1.1", + "mlly": "^1.7.4" + } + }, + "node_modules/@iconify/vue": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@iconify/vue/-/vue-5.0.0.tgz", + "integrity": "sha512-C+KuEWIF5nSBrobFJhT//JS87OZ++QDORB6f2q2Wm6fl2mueSTpFBeBsveK0KW9hWiZ4mNiPjsh6Zs4jjdROSg==", + "license": "MIT", + "dependencies": { + "@iconify/types": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/cyberalien" + }, + "peerDependencies": { + "vue": ">=3" + } + }, "node_modules/@ioredis/commands": { "version": "1.4.0", "license": "MIT" @@ -884,6 +953,59 @@ "unstorage": "^1.16.0" } }, + "node_modules/@nuxt/icon": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nuxt/icon/-/icon-2.1.0.tgz", + "integrity": "sha512-m+XQrgzeK5gQ1HkB7G7u1os6egoD07fiHKijG7NPxqT5yZUGOjKJ7X/Le10l3QWRKyCB+IiU0t+eUqSvh+SULg==", + "license": "MIT", + "dependencies": { + "@iconify/collections": "^1.0.608", + "@iconify/types": "^2.0.0", + "@iconify/utils": "^3.0.2", + "@iconify/vue": "^5.0.0", + "@nuxt/devtools-kit": "^2.6.5", + "@nuxt/kit": "^4.1.3", + "consola": "^3.4.2", + "local-pkg": "^1.1.2", + "mlly": "^1.8.0", + "ohash": "^2.0.11", + "pathe": "^2.0.3", + "picomatch": "^4.0.3", + "std-env": "^3.10.0", + "tinyglobby": "^0.2.15" + } + }, + "node_modules/@nuxt/icon/node_modules/@nuxt/kit": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-4.2.0.tgz", + "integrity": "sha512-1yN3LL6RDN5GjkNLPUYCbNRkaYnat6hqejPyfIBBVzrWOrpiQeNMGxQM/IcVdaSuBJXAnu0sUvTKXpXkmPhljg==", + "license": "MIT", + "dependencies": { + "c12": "^3.3.1", + "consola": "^3.4.2", + "defu": "^6.1.4", + "destr": "^2.0.5", + "errx": "^0.1.0", + "exsolve": "^1.0.7", + "ignore": "^7.0.5", + "jiti": "^2.6.1", + "klona": "^2.0.6", + "mlly": "^1.8.0", + "ohash": "^2.0.11", + "pathe": "^2.0.3", + "pkg-types": "^2.3.0", + "rc9": "^2.1.2", + "scule": "^1.3.0", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ufo": "^1.6.1", + "unctx": "^2.4.1", + "untyped": "^2.0.0" + }, + "engines": { + "node": ">=18.12.0" + } + }, "node_modules/@nuxt/kit": { "version": "3.19.3", "license": "MIT", @@ -3528,6 +3650,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/globby": { "version": "15.0.0", "license": "MIT", @@ -4004,6 +4138,12 @@ "version": "1.2.0", "license": "MIT" }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "license": "MIT" + }, "node_modules/launch-editor": { "version": "2.11.1", "license": "MIT", diff --git a/package.json b/package.json index ba1ce55..736fa17 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ }, "dependencies": { "@nuxt/fonts": "0.11.4", + "@nuxt/icon": "^2.1.0", "nuxt": "^4.2.0", "vue": "^3.5.22", "vue-router": "^4.6.3"