diff --git a/frontend/package.json b/frontend/package.json
index 80e7719b..486cacac 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -1,65 +1,65 @@
{
- "name": "pocket-id-frontend",
- "version": "2.7.0",
- "private": true,
- "type": "module",
- "scripts": {
- "preinstall": "npx only-allow pnpm",
- "dev": "vite dev --port 3000",
- "build": "vite build",
- "preview": "vite preview --port 3000",
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
- "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
- "lint": "prettier --check . && eslint .",
- "format": "prettier --write ."
- },
- "dependencies": {
- "@fontsource/gloock": "^5.2.8",
- "@simplewebauthn/browser": "^13.3.0",
- "@tailwindcss/vite": "^4.3.0",
- "axios": "^1.16.1",
- "clsx": "^2.1.1",
- "date-fns": "^4.2.1",
- "jose": "^6.2.3",
- "qrcode": "^1.5.4",
- "runed": "^0.37.1",
- "sveltekit-superforms": "^2.30.1",
- "tailwind-merge": "^3.6.0",
- "zod": "^4.4.3"
- },
- "devDependencies": {
- "@inlang/paraglide-js": "^2.18.0",
- "@inlang/plugin-m-function-matcher": "^2.2.6",
- "@inlang/plugin-message-format": "^4.4.0",
- "@internationalized/date": "^3.12.1",
- "@lucide/svelte": "^1.16.0",
- "@sveltejs/adapter-static": "^3.0.10",
- "@sveltejs/kit": "^2.60.1",
- "@sveltejs/vite-plugin-svelte": "^7.1.2",
- "@types/eslint": "^9.6.1",
- "@types/node": "^25.9.0",
- "@types/qrcode": "^1.5.6",
- "bits-ui": "^2.18.1",
- "eslint": "^10.4.0",
- "eslint-config-prettier": "^10.1.8",
- "eslint-plugin-svelte": "^3.17.1",
- "formsnap": "^2.0.1",
- "globals": "^17.6.0",
- "mode-watcher": "^1.1.0",
- "prettier": "^3.8.3",
- "prettier-plugin-svelte": "^3.5.2",
- "prettier-plugin-tailwindcss": "^0.8.0",
- "rollup": "^4.60.4",
- "svelte": "^5.55.8",
- "svelte-check": "^4.4.8",
- "svelte-sonner": "^1.1.1",
- "tailwind-variants": "^3.2.2",
- "tailwindcss": "^4.3.0",
- "tslib": "^2.8.1",
- "tw-animate-css": "^1.4.0",
- "typescript": "^6.0.3",
- "typescript-eslint": "^8.59.4",
- "vite": "^8.0.13",
- "vite-plugin-compression": "^0.5.1"
- }
+ "name": "pocket-id-frontend",
+ "version": "2.7.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "preinstall": "npx only-allow pnpm",
+ "dev": "vite dev --port 3000",
+ "build": "vite build",
+ "preview": "vite preview --port 3000",
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
+ "lint": "prettier --check . && eslint .",
+ "format": "prettier --write ."
+ },
+ "dependencies": {
+ "@fontsource/gloock": "^5.2.8",
+ "@simplewebauthn/browser": "^13.3.0",
+ "@tailwindcss/vite": "^4.3.0",
+ "axios": "^1.16.1",
+ "clsx": "^2.1.1",
+ "date-fns": "^4.2.1",
+ "jose": "^6.2.3",
+ "qrcode": "^1.5.4",
+ "runed": "^0.37.1",
+ "sveltekit-superforms": "^2.30.1",
+ "tailwind-merge": "^3.6.0",
+ "zod": "^4.4.3"
+ },
+ "devDependencies": {
+ "@inlang/paraglide-js": "^2.18.0",
+ "@inlang/plugin-m-function-matcher": "^2.2.6",
+ "@inlang/plugin-message-format": "^4.4.0",
+ "@internationalized/date": "^3.12.1",
+ "@lucide/svelte": "^1.16.0",
+ "@sveltejs/adapter-static": "^3.0.10",
+ "@sveltejs/kit": "^2.60.1",
+ "@sveltejs/vite-plugin-svelte": "^7.1.2",
+ "@types/eslint": "^9.6.1",
+ "@types/node": "^25.9.0",
+ "@types/qrcode": "^1.5.6",
+ "bits-ui": "^2.18.1",
+ "eslint": "^10.4.0",
+ "eslint-config-prettier": "^10.1.8",
+ "eslint-plugin-svelte": "^3.17.1",
+ "formsnap": "^2.0.1",
+ "globals": "^17.6.0",
+ "mode-watcher": "^1.1.0",
+ "prettier": "^3.8.3",
+ "prettier-plugin-svelte": "^3.5.2",
+ "prettier-plugin-tailwindcss": "^0.8.0",
+ "rollup": "^4.60.4",
+ "svelte": "^5.55.8",
+ "svelte-check": "^4.4.8",
+ "svelte-sonner": "^1.1.1",
+ "tailwind-variants": "^3.2.2",
+ "tailwindcss": "^4.3.0",
+ "tslib": "^2.8.1",
+ "tw-animate-css": "^1.4.0",
+ "typescript": "^6.0.3",
+ "typescript-eslint": "^8.59.4",
+ "vite": "^8.0.13",
+ "vite-plugin-compression": "^0.5.1"
+ }
}
diff --git a/frontend/src/app.css b/frontend/src/app.css
index a1e0ed30..27e1d304 100644
--- a/frontend/src/app.css
+++ b/frontend/src/app.css
@@ -13,192 +13,189 @@
color utility to any element that depends on these defaults.
*/
@layer base {
-
- *,
- ::after,
- ::before,
- ::backdrop,
- ::file-selector-button {
- border-color: var(--color-gray-200, currentcolor);
- }
+ *,
+ ::after,
+ ::before,
+ ::backdrop,
+ ::file-selector-button {
+ border-color: var(--color-gray-200, currentcolor);
+ }
}
:root {
- --radius: 1rem;
- --background: oklch(1 0 0);
- --foreground: oklch(0.145 0 0);
- --card: oklch(1 0 0);
- --card-foreground: oklch(0.145 0 0);
- --popover: oklch(1 0 0);
- --popover-foreground: oklch(0.145 0 0);
- --primary: oklch(0.205 0 0);
- --primary-foreground: oklch(0.985 0 0);
- --secondary: oklch(0.97 0 0);
- --secondary-foreground: oklch(0.205 0 0);
- --muted: oklch(0.97 0 0);
- --muted-foreground: oklch(0.556 0 0);
- --accent: oklch(0.97 0 0);
- --accent-foreground: oklch(0.205 0 0);
- --destructive: oklch(0.577 0.245 27.325);
- --warning: oklch(0.96 0.06 85);
- --warning-foreground: oklch(0.32 0.07 70);
- --border: oklch(0.922 0 0);
- --input: oklch(0.922 0 0);
- --ring: oklch(0.708 0 0);
- --chart-1: oklch(0.646 0.222 41.116);
- --chart-2: oklch(0.6 0.118 184.704);
- --chart-3: oklch(0.398 0.07 227.392);
- --chart-4: oklch(0.828 0.189 84.429);
- --chart-5: oklch(0.769 0.188 70.08);
- --sidebar: oklch(0.985 0 0);
- --sidebar-foreground: oklch(0.145 0 0);
- --sidebar-primary: oklch(0.205 0 0);
- --sidebar-primary-foreground: oklch(0.985 0 0);
- --sidebar-accent: oklch(0.97 0 0);
- --sidebar-accent-foreground: oklch(0.205 0 0);
- --sidebar-border: oklch(0.922 0 0);
- --sidebar-ring: oklch(0.708 0 0);
+ --radius: 1rem;
+ --background: oklch(1 0 0);
+ --foreground: oklch(0.145 0 0);
+ --card: oklch(1 0 0);
+ --card-foreground: oklch(0.145 0 0);
+ --popover: oklch(1 0 0);
+ --popover-foreground: oklch(0.145 0 0);
+ --primary: oklch(0.205 0 0);
+ --primary-foreground: oklch(0.985 0 0);
+ --secondary: oklch(0.97 0 0);
+ --secondary-foreground: oklch(0.205 0 0);
+ --muted: oklch(0.97 0 0);
+ --muted-foreground: oklch(0.556 0 0);
+ --accent: oklch(0.97 0 0);
+ --accent-foreground: oklch(0.205 0 0);
+ --destructive: oklch(0.577 0.245 27.325);
+ --warning: oklch(0.96 0.06 85);
+ --warning-foreground: oklch(0.32 0.07 70);
+ --border: oklch(0.922 0 0);
+ --input: oklch(0.922 0 0);
+ --ring: oklch(0.708 0 0);
+ --chart-1: oklch(0.646 0.222 41.116);
+ --chart-2: oklch(0.6 0.118 184.704);
+ --chart-3: oklch(0.398 0.07 227.392);
+ --chart-4: oklch(0.828 0.189 84.429);
+ --chart-5: oklch(0.769 0.188 70.08);
+ --sidebar: oklch(0.985 0 0);
+ --sidebar-foreground: oklch(0.145 0 0);
+ --sidebar-primary: oklch(0.205 0 0);
+ --sidebar-primary-foreground: oklch(0.985 0 0);
+ --sidebar-accent: oklch(0.97 0 0);
+ --sidebar-accent-foreground: oklch(0.205 0 0);
+ --sidebar-border: oklch(0.922 0 0);
+ --sidebar-ring: oklch(0.708 0 0);
}
.dark {
- --background: oklch(0.145 0 0);
- --foreground: oklch(0.985 0 0);
- --card: oklch(0.205 0 0);
- --card-foreground: oklch(0.985 0 0);
- --popover: oklch(0.205 0 0);
- --popover-foreground: oklch(0.985 0 0);
- --primary: oklch(0.922 0 0);
- --primary-foreground: oklch(0.205 0 0);
- --secondary: oklch(0.269 0 0);
- --secondary-foreground: oklch(0.985 0 0);
- --muted: oklch(0.269 0 0);
- --muted-foreground: oklch(0.708 0 0);
- --accent: oklch(0.269 0 0);
- --accent-foreground: oklch(0.985 0 0);
- --destructive: oklch(0.704 0.191 22.216);
- --warning: oklch(0.42 0.09 70);
- --warning-foreground: oklch(0.93 0.03 85);
- --border: oklch(1 0 0 / 10%);
- --input: oklch(1 0 0 / 15%);
- --ring: oklch(0.556 0 0);
- --chart-1: oklch(0.488 0.243 264.376);
- --chart-2: oklch(0.696 0.17 162.48);
- --chart-3: oklch(0.769 0.188 70.08);
- --chart-4: oklch(0.627 0.265 303.9);
- --chart-5: oklch(0.645 0.246 16.439);
- --sidebar: oklch(0.205 0 0);
- --sidebar-foreground: oklch(0.985 0 0);
- --sidebar-primary: oklch(0.488 0.243 264.376);
- --sidebar-primary-foreground: oklch(0.985 0 0);
- --sidebar-accent: oklch(0.269 0 0);
- --sidebar-accent-foreground: oklch(0.985 0 0);
- --sidebar-border: oklch(1 0 0 / 10%);
- --sidebar-ring: oklch(0.556 0 0);
+ --background: oklch(0.145 0 0);
+ --foreground: oklch(0.985 0 0);
+ --card: oklch(0.205 0 0);
+ --card-foreground: oklch(0.985 0 0);
+ --popover: oklch(0.205 0 0);
+ --popover-foreground: oklch(0.985 0 0);
+ --primary: oklch(0.922 0 0);
+ --primary-foreground: oklch(0.205 0 0);
+ --secondary: oklch(0.269 0 0);
+ --secondary-foreground: oklch(0.985 0 0);
+ --muted: oklch(0.269 0 0);
+ --muted-foreground: oklch(0.708 0 0);
+ --accent: oklch(0.269 0 0);
+ --accent-foreground: oklch(0.985 0 0);
+ --destructive: oklch(0.704 0.191 22.216);
+ --warning: oklch(0.42 0.09 70);
+ --warning-foreground: oklch(0.93 0.03 85);
+ --border: oklch(1 0 0 / 10%);
+ --input: oklch(1 0 0 / 15%);
+ --ring: oklch(0.556 0 0);
+ --chart-1: oklch(0.488 0.243 264.376);
+ --chart-2: oklch(0.696 0.17 162.48);
+ --chart-3: oklch(0.769 0.188 70.08);
+ --chart-4: oklch(0.627 0.265 303.9);
+ --chart-5: oklch(0.645 0.246 16.439);
+ --sidebar: oklch(0.205 0 0);
+ --sidebar-foreground: oklch(0.985 0 0);
+ --sidebar-primary: oklch(0.488 0.243 264.376);
+ --sidebar-primary-foreground: oklch(0.985 0 0);
+ --sidebar-accent: oklch(0.269 0 0);
+ --sidebar-accent-foreground: oklch(0.985 0 0);
+ --sidebar-border: oklch(1 0 0 / 10%);
+ --sidebar-ring: oklch(0.556 0 0);
}
@theme inline {
- /* Radius (for rounded-*) */
- --radius-sm: calc(var(--radius) - 4px);
- --radius-md: calc(var(--radius) - 2px);
- --radius-lg: var(--radius);
- --radius-xl: calc(var(--radius) + 4px);
+ /* Radius (for rounded-*) */
+ --radius-sm: calc(var(--radius) - 4px);
+ --radius-md: calc(var(--radius) - 2px);
+ --radius-lg: var(--radius);
+ --radius-xl: calc(var(--radius) + 4px);
- /* Colors */
- --color-background: var(--background);
- --color-foreground: var(--foreground);
- --color-muted: var(--muted);
- --color-muted-foreground: var(--muted-foreground);
- --color-popover: var(--popover);
- --color-popover-foreground: var(--popover-foreground);
- --color-card: var(--card);
- --color-card-foreground: var(--card-foreground);
- --color-border: var(--border);
- --color-input: var(--input);
- --color-primary: var(--primary);
- --color-primary-foreground: var(--primary-foreground);
- --color-secondary: var(--secondary);
- --color-secondary-foreground: var(--secondary-foreground);
- --color-accent: var(--accent);
- --color-accent-foreground: var(--accent-foreground);
- --color-destructive: var(--destructive);
- --color-destructive-foreground: var(--destructive-foreground);
- --color-warning: var(--warning);
- --color-warning-foreground: var(--warning-foreground);
- --color-ring: var(--ring);
- --color-radius: var(--radius);
- --color-sidebar-background: var(--sidebar-background);
- --color-sidebar-foreground: var(--sidebar-foreground);
- --color-sidebar-primary: var(--sidebar-primary);
- --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
- --color-sidebar-accent: var(--sidebar-accent);
- --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
- --color-sidebar-border: var(--sidebar-border);
- --color-sidebar-ring: var(--sidebar-ring);
+ /* Colors */
+ --color-background: var(--background);
+ --color-foreground: var(--foreground);
+ --color-muted: var(--muted);
+ --color-muted-foreground: var(--muted-foreground);
+ --color-popover: var(--popover);
+ --color-popover-foreground: var(--popover-foreground);
+ --color-card: var(--card);
+ --color-card-foreground: var(--card-foreground);
+ --color-border: var(--border);
+ --color-input: var(--input);
+ --color-primary: var(--primary);
+ --color-primary-foreground: var(--primary-foreground);
+ --color-secondary: var(--secondary);
+ --color-secondary-foreground: var(--secondary-foreground);
+ --color-accent: var(--accent);
+ --color-accent-foreground: var(--accent-foreground);
+ --color-destructive: var(--destructive);
+ --color-destructive-foreground: var(--destructive-foreground);
+ --color-warning: var(--warning);
+ --color-warning-foreground: var(--warning-foreground);
+ --color-ring: var(--ring);
+ --color-radius: var(--radius);
+ --color-sidebar-background: var(--sidebar-background);
+ --color-sidebar-foreground: var(--sidebar-foreground);
+ --color-sidebar-primary: var(--sidebar-primary);
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
+ --color-sidebar-accent: var(--sidebar-accent);
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
+ --color-sidebar-border: var(--sidebar-border);
+ --color-sidebar-ring: var(--sidebar-ring);
- /* Font */
- --font-glooock: 'glooock ', serif;
+ /* Font */
+ --font-glooock: 'glooock ', serif;
}
@layer base {
- * {
- @apply border-border;
- }
+ * {
+ @apply border-border;
+ }
- body {
- @apply bg-background text-foreground;
- }
+ body {
+ @apply bg-background text-foreground;
+ }
- button {
- @apply cursor-pointer;
- }
+ button {
+ @apply cursor-pointer;
+ }
}
-
.animate-fade-in {
- animation: fadeIn 0.3s ease-out forwards;
- opacity: 0;
+ animation: fadeIn 0.3s ease-out forwards;
+ opacity: 0;
}
@keyframes fadeIn {
- from {
- opacity: 0;
- transform: translateY(10px);
- }
+ from {
+ opacity: 0;
+ transform: translateY(10px);
+ }
- to {
- opacity: 1;
- transform: translateY(0);
- }
+ to {
+ opacity: 1;
+ transform: translateY(0);
+ }
}
@keyframes bg-zoom {
- 0% {
- transform: scale(1.3);
- }
+ 0% {
+ transform: scale(1.3);
+ }
- 100% {
- transform: scale(1);
- }
+ 100% {
+ transform: scale(1);
+ }
}
.animate-bg-zoom {
- transform-origin: center;
- will-change: transform;
- animation: bg-zoom 0.7s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
+ transform-origin: center;
+ will-change: transform;
+ animation: bg-zoom 0.7s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}
@keyframes delayed-fade {
+ 0%,
+ 40% {
+ opacity: 0;
+ }
- 0%,
- 40% {
- opacity: 0;
- }
-
- 100% {
- opacity: 1;
- }
+ 100% {
+ opacity: 1;
+ }
}
.animate-delayed-fade {
- animation: delayed-fade 0.5s ease-out forwards;
-}
\ No newline at end of file
+ animation: delayed-fade 0.5s ease-out forwards;
+}
diff --git a/frontend/src/lib/components/header/header.svelte b/frontend/src/lib/components/header/header.svelte
index 47d98252..94336270 100644
--- a/frontend/src/lib/components/header/header.svelte
+++ b/frontend/src/lib/components/header/header.svelte
@@ -20,7 +20,11 @@
);
-
+
- import { AlertDialog as AlertDialogPrimitive } from "bits-ui";
+ import { AlertDialog as AlertDialogPrimitive } from 'bits-ui';
import {
buttonVariants,
type ButtonVariant,
- type ButtonSize,
- } from "$lib/components/ui/button/index.js";
- import { cn } from "$lib/utils/style.js";
+ type ButtonSize
+ } from '$lib/components/ui/button/index.js';
+ import { cn } from '$lib/utils/style.js';
let {
ref = $bindable(null),
class: className,
- variant = "default",
- size = "default",
+ variant = 'default',
+ size = 'default',
...restProps
}: AlertDialogPrimitive.ActionProps & {
variant?: ButtonVariant;
@@ -22,6 +22,6 @@
diff --git a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte
index 2cea0526..f3089db6 100644
--- a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte
+++ b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte
@@ -1,17 +1,17 @@
@@ -24,7 +24,7 @@
data-slot="alert-dialog-content"
data-size={size}
class={cn(
- "data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 bg-popover text-popover-foreground ring-foreground/10 gap-4 rounded-4xl p-5 sm:p-8 sm:pb-6 ring-1 duration-100 data-[size=default]:max-w-sm data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-md group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 outline-none",
+ 'data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 bg-popover text-popover-foreground ring-foreground/10 gap-4 rounded-4xl p-5 sm:p-8 sm:pb-6 ring-1 duration-100 data-[size=default]:max-w-sm data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-md group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 outline-none',
className
)}
{...restProps}
diff --git a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte
index 0a6a3efe..3d6ede31 100644
--- a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte
+++ b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte
index 86c4c200..f8c458ea 100644
--- a/frontend/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte
+++ b/frontend/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/alert-dialog/alert-dialog.svelte b/frontend/src/lib/components/ui/alert-dialog/alert-dialog.svelte
index 7ea78bb4..cde7911a 100644
--- a/frontend/src/lib/components/ui/alert-dialog/alert-dialog.svelte
+++ b/frontend/src/lib/components/ui/alert-dialog/alert-dialog.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/alert-dialog/index.ts b/frontend/src/lib/components/ui/alert-dialog/index.ts
index ca81c2a9..260a5441 100644
--- a/frontend/src/lib/components/ui/alert-dialog/index.ts
+++ b/frontend/src/lib/components/ui/alert-dialog/index.ts
@@ -1,15 +1,15 @@
-import Root from "./alert-dialog.svelte";
-import Portal from "./alert-dialog-portal.svelte";
-import Trigger from "./alert-dialog-trigger.svelte";
-import Title from "./alert-dialog-title.svelte";
-import Action from "./alert-dialog-action.svelte";
-import Cancel from "./alert-dialog-cancel.svelte";
-import Footer from "./alert-dialog-footer.svelte";
-import Header from "./alert-dialog-header.svelte";
-import Overlay from "./alert-dialog-overlay.svelte";
-import Content from "./alert-dialog-content.svelte";
-import Description from "./alert-dialog-description.svelte";
-import Media from "./alert-dialog-media.svelte";
+import Root from './alert-dialog.svelte';
+import Portal from './alert-dialog-portal.svelte';
+import Trigger from './alert-dialog-trigger.svelte';
+import Title from './alert-dialog-title.svelte';
+import Action from './alert-dialog-action.svelte';
+import Cancel from './alert-dialog-cancel.svelte';
+import Footer from './alert-dialog-footer.svelte';
+import Header from './alert-dialog-header.svelte';
+import Overlay from './alert-dialog-overlay.svelte';
+import Content from './alert-dialog-content.svelte';
+import Description from './alert-dialog-description.svelte';
+import Media from './alert-dialog-media.svelte';
export {
Root,
@@ -36,5 +36,5 @@ export {
Overlay as AlertDialogOverlay,
Content as AlertDialogContent,
Description as AlertDialogDescription,
- Media as AlertDialogMedia,
+ Media as AlertDialogMedia
};
diff --git a/frontend/src/lib/components/ui/badge/badge.svelte b/frontend/src/lib/components/ui/badge/badge.svelte
index 2bf5110c..1a3c5b5c 100644
--- a/frontend/src/lib/components/ui/badge/badge.svelte
+++ b/frontend/src/lib/components/ui/badge/badge.svelte
@@ -1,35 +1,36 @@
- import { DropdownMenu as DropdownMenuPrimitive } from "bits-ui";
+ import { DropdownMenu as DropdownMenuPrimitive } from 'bits-ui';
let {
ref = $bindable(null),
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte
index 42dbfe76..8ff36900 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte
@@ -1,9 +1,9 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte
index 85b1e36b..405fbe2e 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte
@@ -1,16 +1,16 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte
index 9026affc..ed35bc77 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte
index 189aef40..3e987491 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte
index cb053444..032b6453 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu.svelte b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu.svelte
index cb4bc621..fbbb7908 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu.svelte
+++ b/frontend/src/lib/components/ui/dropdown-menu/dropdown-menu.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/dropdown-menu/index.ts b/frontend/src/lib/components/ui/dropdown-menu/index.ts
index 7850c6a3..b097e3fd 100644
--- a/frontend/src/lib/components/ui/dropdown-menu/index.ts
+++ b/frontend/src/lib/components/ui/dropdown-menu/index.ts
@@ -1,20 +1,20 @@
-import Root from "./dropdown-menu.svelte";
-import Sub from "./dropdown-menu-sub.svelte";
-import CheckboxGroup from "./dropdown-menu-checkbox-group.svelte";
-import CheckboxItem from "./dropdown-menu-checkbox-item.svelte";
-import Content from "./dropdown-menu-content.svelte";
-import Group from "./dropdown-menu-group.svelte";
-import Item from "./dropdown-menu-item.svelte";
-import Label from "./dropdown-menu-label.svelte";
-import RadioGroup from "./dropdown-menu-radio-group.svelte";
-import RadioItem from "./dropdown-menu-radio-item.svelte";
-import Separator from "./dropdown-menu-separator.svelte";
-import Shortcut from "./dropdown-menu-shortcut.svelte";
-import Trigger from "./dropdown-menu-trigger.svelte";
-import SubContent from "./dropdown-menu-sub-content.svelte";
-import SubTrigger from "./dropdown-menu-sub-trigger.svelte";
-import GroupHeading from "./dropdown-menu-group-heading.svelte";
-import Portal from "./dropdown-menu-portal.svelte";
+import Root from './dropdown-menu.svelte';
+import Sub from './dropdown-menu-sub.svelte';
+import CheckboxGroup from './dropdown-menu-checkbox-group.svelte';
+import CheckboxItem from './dropdown-menu-checkbox-item.svelte';
+import Content from './dropdown-menu-content.svelte';
+import Group from './dropdown-menu-group.svelte';
+import Item from './dropdown-menu-item.svelte';
+import Label from './dropdown-menu-label.svelte';
+import RadioGroup from './dropdown-menu-radio-group.svelte';
+import RadioItem from './dropdown-menu-radio-item.svelte';
+import Separator from './dropdown-menu-separator.svelte';
+import Shortcut from './dropdown-menu-shortcut.svelte';
+import Trigger from './dropdown-menu-trigger.svelte';
+import SubContent from './dropdown-menu-sub-content.svelte';
+import SubTrigger from './dropdown-menu-sub-trigger.svelte';
+import GroupHeading from './dropdown-menu-group-heading.svelte';
+import Portal from './dropdown-menu-portal.svelte';
export {
CheckboxGroup,
@@ -50,5 +50,5 @@ export {
Sub,
SubContent,
SubTrigger,
- Trigger,
+ Trigger
};
diff --git a/frontend/src/lib/components/ui/popover/index.ts b/frontend/src/lib/components/ui/popover/index.ts
index 5f180363..7ca18f4c 100644
--- a/frontend/src/lib/components/ui/popover/index.ts
+++ b/frontend/src/lib/components/ui/popover/index.ts
@@ -1,11 +1,11 @@
-import Root from "./popover.svelte";
-import Close from "./popover-close.svelte";
-import Content from "./popover-content.svelte";
-import Description from "./popover-description.svelte";
-import Header from "./popover-header.svelte";
-import Title from "./popover-title.svelte";
-import Trigger from "./popover-trigger.svelte";
-import Portal from "./popover-portal.svelte";
+import Root from './popover.svelte';
+import Close from './popover-close.svelte';
+import Content from './popover-content.svelte';
+import Description from './popover-description.svelte';
+import Header from './popover-header.svelte';
+import Title from './popover-title.svelte';
+import Trigger from './popover-trigger.svelte';
+import Portal from './popover-portal.svelte';
export {
Root,
@@ -24,5 +24,5 @@ export {
Title as PopoverTitle,
Trigger as PopoverTrigger,
Close as PopoverClose,
- Portal as PopoverPortal,
+ Portal as PopoverPortal
};
diff --git a/frontend/src/lib/components/ui/popover/popover-close.svelte b/frontend/src/lib/components/ui/popover/popover-close.svelte
index c360925a..dc4dec4b 100644
--- a/frontend/src/lib/components/ui/popover/popover-close.svelte
+++ b/frontend/src/lib/components/ui/popover/popover-close.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/popover/popover-description.svelte b/frontend/src/lib/components/ui/popover/popover-description.svelte
index ac020ba6..a560005f 100644
--- a/frontend/src/lib/components/ui/popover/popover-description.svelte
+++ b/frontend/src/lib/components/ui/popover/popover-description.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/popover/popover-title.svelte b/frontend/src/lib/components/ui/popover/popover-title.svelte
index f7e1bb83..1ca16a96 100644
--- a/frontend/src/lib/components/ui/popover/popover-title.svelte
+++ b/frontend/src/lib/components/ui/popover/popover-title.svelte
@@ -1,6 +1,6 @@
-
+
{@render children?.()}
diff --git a/frontend/src/lib/components/ui/popover/popover-trigger.svelte b/frontend/src/lib/components/ui/popover/popover-trigger.svelte
index 942bf300..dfe6b884 100644
--- a/frontend/src/lib/components/ui/popover/popover-trigger.svelte
+++ b/frontend/src/lib/components/ui/popover/popover-trigger.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/select/index.ts b/frontend/src/lib/components/ui/select/index.ts
index 4dec358b..305c47ad 100644
--- a/frontend/src/lib/components/ui/select/index.ts
+++ b/frontend/src/lib/components/ui/select/index.ts
@@ -1,14 +1,14 @@
-import Root from "./select.svelte";
-import Group from "./select-group.svelte";
-import Label from "./select-label.svelte";
-import Item from "./select-item.svelte";
-import Content from "./select-content.svelte";
-import Trigger from "./select-trigger.svelte";
-import Separator from "./select-separator.svelte";
-import ScrollDownButton from "./select-scroll-down-button.svelte";
-import ScrollUpButton from "./select-scroll-up-button.svelte";
-import GroupHeading from "./select-group-heading.svelte";
-import Portal from "./select-portal.svelte";
+import Root from './select.svelte';
+import Group from './select-group.svelte';
+import Label from './select-label.svelte';
+import Item from './select-item.svelte';
+import Content from './select-content.svelte';
+import Trigger from './select-trigger.svelte';
+import Separator from './select-separator.svelte';
+import ScrollDownButton from './select-scroll-down-button.svelte';
+import ScrollUpButton from './select-scroll-up-button.svelte';
+import GroupHeading from './select-group-heading.svelte';
+import Portal from './select-portal.svelte';
export {
Root,
@@ -33,5 +33,5 @@ export {
ScrollDownButton as SelectScrollDownButton,
ScrollUpButton as SelectScrollUpButton,
GroupHeading as SelectGroupHeading,
- Portal as SelectPortal,
+ Portal as SelectPortal
};
diff --git a/frontend/src/lib/components/ui/select/select-group-heading.svelte b/frontend/src/lib/components/ui/select/select-group-heading.svelte
index c9a51e96..8a5aa3b1 100644
--- a/frontend/src/lib/components/ui/select/select-group-heading.svelte
+++ b/frontend/src/lib/components/ui/select/select-group-heading.svelte
@@ -1,7 +1,7 @@
diff --git a/frontend/src/lib/components/ui/select/select-scroll-down-button.svelte b/frontend/src/lib/components/ui/select/select-scroll-down-button.svelte
index a382087a..a9d95bb9 100644
--- a/frontend/src/lib/components/ui/select/select-scroll-down-button.svelte
+++ b/frontend/src/lib/components/ui/select/select-scroll-down-button.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/select/select.svelte b/frontend/src/lib/components/ui/select/select.svelte
index 05eb6634..b9bf9ba5 100644
--- a/frontend/src/lib/components/ui/select/select.svelte
+++ b/frontend/src/lib/components/ui/select/select.svelte
@@ -1,5 +1,5 @@
@@ -14,9 +14,9 @@
bind:ref
data-slot={dataSlot}
class={cn(
- "bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px",
+ 'bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px',
// this is different in shadcn/ui but self-stretch breaks things for us
- "data-[orientation=vertical]:h-full",
+ 'data-[orientation=vertical]:h-full',
className
)}
{...restProps}
diff --git a/frontend/src/lib/components/ui/tabs/index.ts b/frontend/src/lib/components/ui/tabs/index.ts
index 31267e58..2ea36233 100644
--- a/frontend/src/lib/components/ui/tabs/index.ts
+++ b/frontend/src/lib/components/ui/tabs/index.ts
@@ -1,7 +1,7 @@
-import Root from "./tabs.svelte";
-import Content from "./tabs-content.svelte";
-import List, { tabsListVariants, type TabsListVariant } from "./tabs-list.svelte";
-import Trigger from "./tabs-trigger.svelte";
+import Root from './tabs.svelte';
+import Content from './tabs-content.svelte';
+import List, { tabsListVariants, type TabsListVariant } from './tabs-list.svelte';
+import Trigger from './tabs-trigger.svelte';
export {
Root,
@@ -14,5 +14,5 @@ export {
Root as Tabs,
Content as TabsContent,
List as TabsList,
- Trigger as TabsTrigger,
+ Trigger as TabsTrigger
};
diff --git a/frontend/src/lib/components/ui/tabs/tabs-content.svelte b/frontend/src/lib/components/ui/tabs/tabs-content.svelte
index 344d2d58..07ab3308 100644
--- a/frontend/src/lib/components/ui/tabs/tabs-content.svelte
+++ b/frontend/src/lib/components/ui/tabs/tabs-content.svelte
@@ -1,6 +1,6 @@
diff --git a/frontend/src/lib/components/ui/tooltip/tooltip-provider.svelte b/frontend/src/lib/components/ui/tooltip/tooltip-provider.svelte
index 6dba9a67..fde5bb28 100644
--- a/frontend/src/lib/components/ui/tooltip/tooltip-provider.svelte
+++ b/frontend/src/lib/components/ui/tooltip/tooltip-provider.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/tooltip/tooltip-trigger.svelte b/frontend/src/lib/components/ui/tooltip/tooltip-trigger.svelte
index 1acdaa47..5631d1b4 100644
--- a/frontend/src/lib/components/ui/tooltip/tooltip-trigger.svelte
+++ b/frontend/src/lib/components/ui/tooltip/tooltip-trigger.svelte
@@ -1,5 +1,5 @@
diff --git a/frontend/src/lib/components/ui/tooltip/tooltip.svelte b/frontend/src/lib/components/ui/tooltip/tooltip.svelte
index 0b0f9cef..7c9d7125 100644
--- a/frontend/src/lib/components/ui/tooltip/tooltip.svelte
+++ b/frontend/src/lib/components/ui/tooltip/tooltip.svelte
@@ -1,5 +1,5 @@