From e9f1e731d78b68355d6b0bb168d73322de7e30c9 Mon Sep 17 00:00:00 2001 From: bill Date: Mon, 8 Jun 2026 23:23:36 +0200 Subject: [PATCH 1/3] fix: add hover cursor pointer on tabs button and scroll horizontal when overflow --- .../Widget/ecs-tree/scenes/entities/entity-tree.svelte | 2 +- src/lib/components/Widget/ecs-tree/widget.svelte | 2 +- src/lib/components/ui/tabs/tabs-trigger.svelte | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree.svelte b/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree.svelte index 434285e..d4ac701 100644 --- a/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree.svelte +++ b/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree.svelte @@ -313,7 +313,7 @@ {/if} -
+
{#each tree as node (node.kind === 'entity' ? node.id : node.path)} {#if node.kind === 'entity'} diff --git a/src/lib/components/Widget/ecs-tree/widget.svelte b/src/lib/components/Widget/ecs-tree/widget.svelte index 22d26a6..4846683 100644 --- a/src/lib/components/Widget/ecs-tree/widget.svelte +++ b/src/lib/components/Widget/ecs-tree/widget.svelte @@ -17,7 +17,7 @@ > Scenes Components diff --git a/src/lib/components/ui/tabs/tabs-trigger.svelte b/src/lib/components/ui/tabs/tabs-trigger.svelte index eb385f6..2b380b4 100644 --- a/src/lib/components/ui/tabs/tabs-trigger.svelte +++ b/src/lib/components/ui/tabs/tabs-trigger.svelte @@ -13,7 +13,7 @@ bind:ref data-slot="tabs-trigger" class={cn( - "gap-1.5 border-b-2 border-transparent duration-300 px-1.5 py-0.5 text-sm font-medium has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg:not([class*='size-'])]:size-4 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0", + "gap-1.5 border-b-2 border-transparent duration-300 px-1.5 py-0.5 text-sm font-medium hover:cursor-pointer has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg:not([class*='size-'])]:size-4 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0", 'group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent', 'data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-input data-[state=active]:border-primary dark:data-[state=active]:bg-input/30 data-[state=active]:text-foreground', 'after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100', From 531b39130fc31d8a5001e0328a9092dc7a79030a Mon Sep 17 00:00:00 2001 From: bill Date: Tue, 9 Jun 2026 16:16:38 +0200 Subject: [PATCH 2/3] fix: delete color visibility, bigger entities item, cursor pointer on button, current game name --- src/app.css | 2 +- .../Widget/EditorGame/EditorGame.svelte | 4 +-- .../scenes/entities/entity-tree-node.svelte | 4 +-- .../scenes/entities/folder-tree-node.svelte | 4 +-- .../scenes/systems/scene-system-row.svelte | 2 +- src/routes/dashboard/+page.svelte | 27 +++++++------------ 6 files changed, 17 insertions(+), 26 deletions(-) diff --git a/src/app.css b/src/app.css index 591fee1..3c723ff 100644 --- a/src/app.css +++ b/src/app.css @@ -67,7 +67,7 @@ --success: 0.4546 0.1348 141.88; --success-foreground: 0.9461 0 0; - --destructive: 0.3958 0.1331 25.72; + --destructive: 0.551 0.222 28.915; --destructive-foreground: 0.9461 0 0; } diff --git a/src/lib/components/Widget/EditorGame/EditorGame.svelte b/src/lib/components/Widget/EditorGame/EditorGame.svelte index d3a50c3..1c03a82 100644 --- a/src/lib/components/Widget/EditorGame/EditorGame.svelte +++ b/src/lib/components/Widget/EditorGame/EditorGame.svelte @@ -93,8 +93,8 @@ >
diff --git a/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree-node.svelte b/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree-node.svelte index 1643716..9b90843 100644 --- a/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree-node.svelte +++ b/src/lib/components/Widget/ecs-tree/scenes/entities/entity-tree-node.svelte @@ -85,7 +85,7 @@ : 'text-neutral-300 hover:bg-neutral-800', hovered && !isDragging ? 'ring-2 ring-inset ring-primary' : '', isDragging ? 'opacity-40' : '', - 'flex w-full items-center gap-1.5 py-0.5 pr-2 transition-colors group', + 'flex w-full items-center gap-1.5 py-0.5 pr-2 transition-colors group hover:cursor-pointer', ]} style="padding-left:{pl}px" onclick={onSelect} @@ -114,7 +114,7 @@ > - + {$entity.name} +
-
-
+
{#key $tabsStore.selectedTabId} {#if Component && tab} From a43170e92fc5b22c673edb3c56865d57b260fa98 Mon Sep 17 00:00:00 2001 From: bill Date: Tue, 9 Jun 2026 22:30:21 +0200 Subject: [PATCH 3/3] fix: use project object for get project name --- src/routes/dashboard/+page.svelte | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/routes/dashboard/+page.svelte b/src/routes/dashboard/+page.svelte index 4813156..654732a 100644 --- a/src/routes/dashboard/+page.svelte +++ b/src/routes/dashboard/+page.svelte @@ -15,12 +15,13 @@ import { page } from '$app/state'; import { runSafe } from '@utils-client/error'; import { FullPageProjectSpinner } from '$lib/components/project-loader'; - import { infoStore } from '$lib/client/info/info.store'; let tab = $derived($tabsStore.tabs.find((t) => t.id === $tabsStore.selectedTabId)); let Component = $derived(tab ? tabRegistry[tab.type]?.component : null); let loaded: boolean = $state(false); + let projectName = $state('untitled'); + onMount(async (): Promise => { let project = getProject(); @@ -51,6 +52,8 @@ if (!project) return; } + projectName = (await project.info.get()).name; + if (!project.isReady()) { await runSafe( 'init project', @@ -82,7 +85,7 @@ class="w-42 flex cursor-pointer items-center justify-between gap-2 rounded-md px-4 py-2 font-medium text-sm outline-2 outline-neutral-700 outline-solid hover:outline-3 hover:font-semibold" > game cover - {$infoStore?.name || 'untitled'} + {projectName}