- Root-level eslint.config.js (flat config): typescript-eslint,
eslint-plugin-svelte, eslint-config-prettier, @eslint/js
- Root-level prettier.config.js with prettier-plugin-svelte
- svelte-check added to frontend for Svelte/TS type checking
- lint, lint:fix, format, format:check, check scripts in root
and both packages
- All 60 lint errors fixed across backend and frontend:
- Consistent type imports
- Removed unused imports/variables
- Added keys to all {#each} blocks for Svelte performance
- Replaced mutable Set/Map with SvelteSet/SvelteMap
- Fixed useless assignments and empty catch blocks
- 64 remaining warnings are intentional any usages in the
Pothos/Drizzle GraphQL resolver layer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
18 lines
399 B
Svelte
18 lines
399 B
Svelte
<script lang="ts">
|
|
interface Props {
|
|
onclick: () => void;
|
|
icon: string;
|
|
label: string;
|
|
}
|
|
|
|
let { onclick, icon, label }: Props = $props();
|
|
</script>
|
|
|
|
<button
|
|
{onclick}
|
|
aria-label={label}
|
|
class="w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center hover:bg-primary/20 transition-colors cursor-pointer"
|
|
>
|
|
<span class={icon + " w-4 h-4 text-primary"}></span>
|
|
</button>
|