diff --git a/packages/bbui/src/ActionMenu/ActionMenu.svelte b/packages/bbui/src/ActionMenu/ActionMenu.svelte index 642ec4932a..c55d1cb43d 100644 --- a/packages/bbui/src/ActionMenu/ActionMenu.svelte +++ b/packages/bbui/src/ActionMenu/ActionMenu.svelte @@ -38,7 +38,7 @@
- + diff --git a/packages/builder/src/components/common/NavItem.svelte b/packages/builder/src/components/common/NavItem.svelte index 0819bcb86b..7180b149de 100644 --- a/packages/builder/src/components/common/NavItem.svelte +++ b/packages/builder/src/components/common/NavItem.svelte @@ -71,6 +71,7 @@ class:scrollable class:highlighted class:selectedBy + class:actionsOpen={highlighted && withActions} on:dragend on:dragstart on:dragover @@ -168,8 +169,9 @@ --avatars-background: var(--spectrum-global-color-gray-300); } .nav-item:hover .actions, - .hovering .actions { - visibility: visible; + .hovering .actions, + .nav-item.withActions.actionsOpen .actions { + opacity: 1; } .nav-item-content { flex: 1 1 auto; @@ -272,7 +274,6 @@ position: relative; display: grid; place-items: center; - visibility: hidden; order: 3; opacity: 0; width: 20px; diff --git a/packages/builder/src/components/start/AppRowContext.svelte b/packages/builder/src/components/start/AppRowContext.svelte index f2b9d2e04c..3d24aeb542 100644 --- a/packages/builder/src/components/start/AppRowContext.svelte +++ b/packages/builder/src/components/start/AppRowContext.svelte @@ -5,11 +5,11 @@ import DuplicateAppModal from "./DuplicateAppModal.svelte" export let app + export let align = "right" let deleteModal let exportModal let duplicateModal - let exportPublishedVersion = false @@ -28,7 +28,7 @@ - +
diff --git a/packages/builder/src/pages/builder/portal/apps/_components/PortalSideBar.svelte b/packages/builder/src/pages/builder/portal/apps/_components/PortalSideBar.svelte index 3ece483425..b6f66ff8e7 100644 --- a/packages/builder/src/pages/builder/portal/apps/_components/PortalSideBar.svelte +++ b/packages/builder/src/pages/builder/portal/apps/_components/PortalSideBar.svelte @@ -3,8 +3,11 @@ import { params, goto } from "@roxi/routify" import NavItem from "components/common/NavItem.svelte" import NavHeader from "components/common/NavHeader.svelte" + import AppRowContext from "components/start/AppRowContext.svelte" + import { AppStatus } from "constants" let searchString + let opened $: filteredApps = $apps .filter(app => { @@ -13,6 +16,12 @@ app.name.toLowerCase().includes(searchString.toLowerCase()) ) }) + .map(app => { + return { + ...app, + deployed: app.status === AppStatus.DEPLOYED, + } + }) .sort((a, b) => { const lowerA = a.name.toLowerCase() const lowerB = b.name.toLowerCase() @@ -42,8 +51,20 @@ icon={app.icon?.name || "Apps"} iconColor={app.icon?.color} selected={$params.appId === app.appId} + highlighted={opened == app.appId} on:click={() => $goto(`./${app.appId}`)} - /> + > + { + opened = app.appId + }} + on:close={() => { + opened = null + }} + /> + {/each}