Spaces:
Running
Running
File size: 2,582 Bytes
6ce4ca6 8173aa6 6ce4ca6 8173aa6 6ce4ca6 8173aa6 6ce4ca6 8173aa6 6ce4ca6 8173aa6 6ce4ca6 2d0da8c 6ce4ca6 3cdf7b9 2d0da8c 3cdf7b9 6ce4ca6 2d0da8c 6ce4ca6 2d0da8c 6ce4ca6 2d0da8c 6ce4ca6 2d0da8c 8173aa6 2d0da8c 6ce4ca6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
<script lang="ts">
import AddRobotButton from "@/components/interface/overlay/AddRobotButton.svelte";
import AddSensorButton from "@/components/interface/overlay/AddSensorButton.svelte";
import AddAIButton from "@/components/interface/overlay/AddAIButton.svelte";
import SettingsButton from "@/components/interface/overlay/SettingsButton.svelte";
import SettingsSheet from "@/components/interface/overlay/SettingsSheet.svelte";
import WorkspaceIdButton from "@/components/interface/overlay/WorkspaceIdButton.svelte";
interface Props {
workspaceId: string;
addRobotDropdownMenuOpen?: boolean;
addSensorDropdownMenuOpen?: boolean;
addAIDropdownMenuOpen?: boolean;
settingsOpen?: boolean;
workspaceIdMenuOpen?: boolean;
}
let {
workspaceId,
addRobotDropdownMenuOpen = $bindable(false),
addSensorDropdownMenuOpen = $bindable(false),
addAIDropdownMenuOpen = $bindable(false),
settingsOpen = $bindable(false),
workspaceIdMenuOpen = $bindable(false)
}: Props = $props();
</script>
<div class="select-none">
<!-- Responsive Button Bar Container -->
<div class="fixed top-2 left-2 right-2 z-50 flex flex-wrap items-center justify-between gap-1 select-none md:top-4 md:left-4 md:right-4 md:gap-2">
<!-- Left Group: Logo + Add Buttons -->
<div class="flex items-center gap-1 flex-wrap md:gap-2">
<!-- Logo/Favicon -->
<div class="flex items-center justify-center">
<img
src="/favicon_1024.png"
alt="Logo"
draggable="false"
class="h-8 w-8 invert-0 filter dark:invert md:h-10 md:w-10"
/>
</div>
<!-- Add Robot Button Group -->
<div class="flex items-center justify-center overflow-hidden rounded-lg">
<AddRobotButton bind:open={addRobotDropdownMenuOpen} />
</div>
<!-- Add Sensor Button Group - Hidden on very small screens -->
<div class="hidden min-[480px]:flex items-center justify-center overflow-hidden rounded-lg">
<AddSensorButton bind:open={addSensorDropdownMenuOpen} />
</div>
<!-- Add AI Button Group - Hidden on small screens -->
<div class="hidden min-[560px]:flex items-center justify-center overflow-hidden rounded-lg">
<AddAIButton bind:open={addAIDropdownMenuOpen} workspaceId={workspaceId} />
</div>
</div>
<!-- Right Group: Workspace ID + Settings -->
<div class="flex items-center gap-1 md:gap-2">
<!-- Workspace ID Button -->
<WorkspaceIdButton {workspaceId} bind:open={workspaceIdMenuOpen} />
<!-- Settings Button -->
<SettingsButton bind:open={settingsOpen} />
</div>
</div>
</div>
<SettingsSheet bind:open={settingsOpen} />
|