diff --git a/apps/desktop/src/routes/extension/store/+layout.svelte b/apps/desktop/src/routes/extension/store/+layout.svelte
index f1c04bd..965001f 100644
--- a/apps/desktop/src/routes/extension/store/+layout.svelte
+++ b/apps/desktop/src/routes/extension/store/+layout.svelte
@@ -8,7 +8,9 @@
let flipState: Flip.FlipState
beforeNavigate(() => {
- flipState = Flip.getState(`.${Constants.CLASSNAMES.EXT_LOGO}`)
+ flipState = Flip.getState(
+ `.${Constants.CLASSNAMES.EXT_LOGO}, .${Constants.CLASSNAMES.BACK_BUTTON}`
+ )
})
afterNavigate(() => {
@@ -17,7 +19,7 @@
}
Flip.from(flipState, {
- targets: ".kk-ext-logo",
+ targets: `.${Constants.CLASSNAMES.EXT_LOGO}, .${Constants.CLASSNAMES.BACK_BUTTON}`,
duration: 0.5,
absolute: true,
scale: true,
diff --git a/apps/desktop/src/routes/extension/store/+page.svelte b/apps/desktop/src/routes/extension/store/+page.svelte
index 74f3680..7f53ef9 100644
--- a/apps/desktop/src/routes/extension/store/+page.svelte
+++ b/apps/desktop/src/routes/extension/store/+page.svelte
@@ -2,21 +2,19 @@
import { getExtensionsFolder } from "@/constants"
import { appState, extensions } from "@/stores"
import { supabaseAPI } from "@/supabase"
- import { goBackOnEscape, goBackOnEscapeClearSearchTerm } from "@/utils/key"
+ import { goBackOnEscapeClearSearchTerm } from "@/utils/key"
import { goBack } from "@/utils/route"
- import { isCompatible } from "@kksh/api"
import { SBExt } from "@kksh/api/supabase"
import { isUpgradable } from "@kksh/extension"
- import { Command } from "@kksh/svelte5"
- import { StoreListing } from "@kksh/ui/extension"
- import { greaterThan, parse as parseSemver } from "@std/semver"
+ import { Button, Command } from "@kksh/svelte5"
+ import { Constants } from "@kksh/ui"
+ import { ExtListItem } from "@kksh/ui/extension"
+ import { CustomCommandInput, GlobalCommandPaletteFooter } from "@kksh/ui/main"
import { goto } from "$app/navigation"
- import { onMount } from "svelte"
+ import { ArrowLeft } from "lucide-svelte"
import { toast } from "svelte-sonner"
- import { get } from "svelte/store"
- import { type PageData } from "./$types"
- let { data }: { data: PageData } = $props()
+ let { data } = $props()
const { storeExtList, installedStoreExts, installedExtsMap, upgradableExpsMap } = data
// function isUpgradeable(item: DbExtItem): boolean {
@@ -67,15 +65,37 @@
-
+
+{#snippet leftSlot()}
+
+{/snippet}
+
+
+
+ No results found.
+ {#each storeExtList as ext}
+ onExtItemSelected(ext)}
+ onUpgrade={() => onExtItemUpgrade(ext)}
+ onInstall={() => onExtItemInstall(ext)}
+ />
+ {/each}
+
+
+
diff --git a/apps/desktop/src/routes/extension/store/[identifier]/+page.svelte b/apps/desktop/src/routes/extension/store/[identifier]/+page.svelte
index 23d82af..67ce854 100644
--- a/apps/desktop/src/routes/extension/store/[identifier]/+page.svelte
+++ b/apps/desktop/src/routes/extension/store/[identifier]/+page.svelte
@@ -4,6 +4,8 @@
import { supabaseAPI } from "@/supabase"
import { goBack } from "@/utils/route.js"
import { Button } from "@kksh/svelte5"
+ import { cn } from "@kksh/svelte5/utils"
+ import { Constants } from "@kksh/ui"
import { StoreExtDetail } from "@kksh/ui/extension"
import { greaterThan, parse as parseSemver } from "@std/semver"
import { error } from "@tauri-apps/plugin-log"
@@ -139,7 +141,13 @@
-