By index instead of workflow ID

This commit is contained in:
space-nuko
2023-05-31 17:04:00 -05:00
parent d8ac97cb87
commit 263d62cb34
8 changed files with 83 additions and 30 deletions

View File

@@ -13,9 +13,8 @@
import GenToolbar from './mobile/GenToolbar.svelte' import GenToolbar from './mobile/GenToolbar.svelte'
import WorkflowsPage from './mobile/routes/workflows.svelte'; import WorkflowsPage from './mobile/routes/workflows.svelte';
import AboutPage from './mobile/routes/about.svelte'; import QueuePage from './mobile/routes/queue.svelte';
import LoginPage from './mobile/routes/login.svelte'; import GalleryPage from './mobile/routes/gallery.svelte';
import GraphPage from './mobile/routes/graph.svelte';
import WorkflowPage from './mobile/routes/workflow.svelte'; import WorkflowPage from './mobile/routes/workflow.svelte';
import type { Framework7Parameters, Modal } from "framework7/types"; import type { Framework7Parameters, Modal } from "framework7/types";
import interfaceState from "$lib/stores/interfaceState"; import interfaceState from "$lib/stores/interfaceState";
@@ -106,12 +105,12 @@
} }
}, },
{ {
path: '/about/', path: '/queue/',
component: AboutPage, component: QueuePage,
}, },
{ {
path: '/login/', path: '/gallery/',
component: LoginPage, component: GalleryPage,
}, },
// { // {
// path: '/graph/', // path: '/graph/',
@@ -179,7 +178,7 @@
browserHistoryRoot="/mobile/" browserHistoryRoot="/mobile/"
> >
<MainToolbar {app} /> <MainToolbar {app} />
{#if $interfaceState.selectedWorkflowID && $interfaceState.showingWorkflow} {#if $interfaceState.selectedWorkflowIndex && $interfaceState.showingWorkflow}
<GenToolbar {app} /> <GenToolbar {app} />
{/if} {/if}
</View> </View>

View File

@@ -14,7 +14,7 @@ export type InterfaceState = {
graphTransitioning: boolean, graphTransitioning: boolean,
isJumpingToNode: boolean, isJumpingToNode: boolean,
selectedWorkflowID: WorkflowInstID | null selectedWorkflowIndex: number | null
showingWorkflow: boolean showingWorkflow: boolean
isDarkMode: boolean isDarkMode: boolean
@@ -35,7 +35,7 @@ const store: Writable<InterfaceState> = writable(
graphTransitioning: false, graphTransitioning: false,
isJumpingToNode: false, isJumpingToNode: false,
selectedWorkflowID: null, selectedWorkflowIndex: null,
showingWorkflow: false, showingWorkflow: false,
isDarkMode: false, isDarkMode: false,

View File

@@ -74,15 +74,6 @@
progressPercent = 0 progressPercent = 0
progressText = "??.?%" progressText = "??.?%"
} }
let centerHref = "/workflows/"
$: if ($interfaceState.selectedWorkflowID) {
centerHref = `/workflows/${$interfaceState.selectedWorkflowID}/`
}
else {
centerHref = "/workflows/";
}
</script> </script>
<Toolbar bottom color="red" style="bottom: calc(var(--f7-toolbar-height))"> <Toolbar bottom color="red" style="bottom: calc(var(--f7-toolbar-height))">

View File

@@ -76,8 +76,8 @@
} }
let centerHref = "/workflows/" let centerHref = "/workflows/"
$: if ($interfaceState.selectedWorkflowID) { $: if ($interfaceState.selectedWorkflowIndex) {
centerHref = `/workflows/${$interfaceState.selectedWorkflowID}/` centerHref = `/workflows/${$interfaceState.selectedWorkflowIndex}/`
} }
else { else {
centerHref = "/workflows/"; centerHref = "/workflows/";
@@ -108,13 +108,13 @@
</div> </div>
</div> </div>
<Toolbar bottom tabbar color="blue" class={toolbarCount > 1 ? "hasGenToolbar" : ""}> <Toolbar bottom tabbar color="blue" class={toolbarCount > 1 ? "hasGenToolbar" : ""}>
<Link transition="f7-dive" href="/about/"> <Link transition="f7-dive" href="/queue/">
<LayoutTextSidebarReverse width={ICON_SIZE} height={ICON_SIZE} /> <LayoutTextSidebarReverse width={ICON_SIZE} height={ICON_SIZE} />
</Link> </Link>
<Link transition="f7-dive" href={centerHref} tabLinkActive> <Link transition="f7-dive" href={centerHref} tabLinkActive>
<Image width={ICON_SIZE} height={ICON_SIZE} /> <Image width={ICON_SIZE} height={ICON_SIZE} />
</Link> </Link>
<Link transition="f7-dive" href="/login/"> <Link transition="f7-dive" href="/gallery/">
<Grid width={ICON_SIZE} height={ICON_SIZE} /> <Grid width={ICON_SIZE} height={ICON_SIZE} />
</Link> </Link>
</Toolbar> </Toolbar>

View File

@@ -0,0 +1,34 @@
<script lang="ts">
import { Page, Navbar, Tabs, Tab, NavLeft, NavTitle, NavRight, Link } from "framework7-svelte"
import WidgetContainer from "$lib/components/WidgetContainer.svelte";
import type ComfyApp from "$lib/components/ComfyApp";
import { writable, type Writable } from "svelte/store";
import type { IDragItem, WritableLayoutStateStore } from "$lib/stores/layoutStates";
import workflowState, { type ComfyBoxWorkflow, type WorkflowInstID } from "$lib/stores/workflowState";
import interfaceState from "$lib/stores/interfaceState";
import { onMount } from "svelte";
import GenToolbar from '../GenToolbar.svelte'
</script>
<Page name="gallery">
<Navbar title="Gallery" />
</Page>
<style lang="scss">
.container {
overflow-x: hidden;
// Disable pull to refresh
overscroll-behavior-y: contain;
// framework7's css conflicts with gradio's
:global(.block) {
z-index: unset; // f7 sets it to 1
}
}
// TODO generalize this to all properties!
:global(.root-container.mobile > .block > .v-pane) {
flex-direction: column !important;
}
</style>

View File

@@ -0,0 +1,34 @@
<script lang="ts">
import { Page, Navbar, Tabs, Tab, NavLeft, NavTitle, NavRight, Link } from "framework7-svelte"
import WidgetContainer from "$lib/components/WidgetContainer.svelte";
import type ComfyApp from "$lib/components/ComfyApp";
import { writable, type Writable } from "svelte/store";
import type { IDragItem, WritableLayoutStateStore } from "$lib/stores/layoutStates";
import workflowState, { type ComfyBoxWorkflow, type WorkflowInstID } from "$lib/stores/workflowState";
import interfaceState from "$lib/stores/interfaceState";
import { onMount } from "svelte";
import GenToolbar from '../GenToolbar.svelte'
</script>
<Page name="queue">
<Navbar title="Queue" />
</Page>
<style lang="scss">
.container {
overflow-x: hidden;
// Disable pull to refresh
overscroll-behavior-y: contain;
// framework7's css conflicts with gradio's
:global(.block) {
z-index: unset; // f7 sets it to 1
}
}
// TODO generalize this to all properties!
:global(.root-container.mobile > .block > .v-pane) {
flex-direction: column !important;
}
</style>

View File

@@ -18,12 +18,7 @@
function onPageBeforeIn() { function onPageBeforeIn() {
workflow = $workflowState.openedWorkflows[workflowIndex-1] workflow = $workflowState.openedWorkflows[workflowIndex-1]
if (workflow) { $interfaceState.selectedWorkflowIndex = workflowIndex
$interfaceState.selectedWorkflowID = workflow.id;
}
else {
$interfaceState.selectedWorkflowID = null;
}
$interfaceState.showingWorkflow = true; $interfaceState.showingWorkflow = true;
} }

View File

@@ -23,7 +23,7 @@
() => { app.closeWorkflow(workflow.id); })} () => { app.closeWorkflow(workflow.id); })}
function onPageBeforeIn() { function onPageBeforeIn() {
$interfaceState.selectedWorkflowID = null; $interfaceState.selectedWorkflowIndex = null;
} }
</script> </script>