diff --git a/src/AppMobile.svelte b/src/AppMobile.svelte
index 85de615..5de223d 100644
--- a/src/AppMobile.svelte
+++ b/src/AppMobile.svelte
@@ -9,14 +9,16 @@
import "framework7/css/bundle"
import "./scss/global.scss";
+ import MainToolbar from './mobile/MainToolbar.svelte'
import GenToolbar from './mobile/GenToolbar.svelte'
- import HomePage from './mobile/routes/home.svelte';
+ import WorkflowsPage from './mobile/routes/workflows.svelte';
import AboutPage from './mobile/routes/about.svelte';
import LoginPage from './mobile/routes/login.svelte';
import GraphPage from './mobile/routes/graph.svelte';
import WorkflowPage from './mobile/routes/workflow.svelte';
import type { Framework7Parameters, Modal } from "framework7/types";
+ import interfaceState from "$lib/stores/interfaceState";
export let app: ComfyApp;
@@ -82,7 +84,14 @@
routes: [
{
path: '/',
- component: HomePage,
+ component: WorkflowsPage,
+ options: {
+ props: { app }
+ }
+ },
+ {
+ path: '/workflows',
+ component: WorkflowsPage,
options: {
props: { app }
}
@@ -138,14 +147,17 @@
{:then}
-
+
+ {#if $interfaceState.selectedWorkflowID && $interfaceState.showingWorkflow}
+
+ {/if}
{:catch error}
diff --git a/src/lib/stores/interfaceState.ts b/src/lib/stores/interfaceState.ts
index c792dd5..61c43dc 100644
--- a/src/lib/stores/interfaceState.ts
+++ b/src/lib/stores/interfaceState.ts
@@ -1,6 +1,7 @@
import { debounce } from '$lib/utils';
import { get, writable } from 'svelte/store';
import type { Readable, Writable } from 'svelte/store';
+import type { WorkflowInstID } from './workflowState';
export type InterfaceState = {
// Show a large indicator of the currently editing number value for mobile
@@ -10,8 +11,11 @@ export type InterfaceState = {
showIndicator: boolean,
indicatorValue: any,
- graphTransitioning: boolean
- isJumpingToNode: boolean
+ graphTransitioning: boolean,
+ isJumpingToNode: boolean,
+
+ selectedWorkflowID: WorkflowInstID | null
+ showingWorkflow: boolean
}
type InterfaceStateOps = {
@@ -28,6 +32,9 @@ const store: Writable
= writable(
graphTransitioning: false,
isJumpingToNode: false,
+
+ selectedWorkflowID: null,
+ showingWorkflow: false
})
const debounceDrag = debounce(() => { store.update(s => { s.showIndicator = false; return s }) }, 1000)
diff --git a/src/mobile/GenToolbar.svelte b/src/mobile/GenToolbar.svelte
index ded4825..6112ac1 100644
--- a/src/mobile/GenToolbar.svelte
+++ b/src/mobile/GenToolbar.svelte
@@ -3,13 +3,14 @@
import queueState from "$lib/stores/queueState";
import workflowState, { ComfyBoxWorkflow } from "$lib/stores/workflowState";
import { getNodeInfo } from "$lib/utils"
+ import { Image, LayoutTextSidebarReverse } from "svelte-bootstrap-icons";
import { Link, Toolbar } from "framework7-svelte"
import ProgressBar from "$lib/components/ProgressBar.svelte";
import Progressbar from "$lib/components/f7/progressbar.svelte";
- import Indicator from "./Indicator.svelte";
- import interfaceState from "$lib/stores/interfaceState";
- import type { WritableLayoutStateStore } from "$lib/stores/layoutStates";
+ import Indicator from "./Indicator.svelte";
+ import interfaceState from "$lib/stores/interfaceState";
+ import type { WritableLayoutStateStore } from "$lib/stores/layoutStates";
export let subworkflowID: number = -1;
export let app: ComfyApp = undefined;
@@ -74,31 +75,21 @@
progressText = "??.?%"
}
+ let centerHref = "/workflows/"
+ $: if ($interfaceState.selectedWorkflowID) {
+ centerHref = `/workflows/${$interfaceState.selectedWorkflowID}/`
+ }
+ else {
+ centerHref = "/workflows/";
+ }
+
-
-
- {#if queued}
-
- Node: {getNodeInfo($queueState.runningNodeID)} ({progressText})
-
- {/if}
-
-
- {#if queued}
- {#if progress}
-
- {:else if running}
-
- {/if}
- {/if}
-
-
-
+
{#if workflow != null && workflow.attrs.queuePromptButtonName != ""}
{workflow.attrs.queuePromptButtonName}
-
+
{/if}
🔄
Save
@@ -106,56 +97,9 @@
Load
-{#if $interfaceState.showIndicator}
-
-{/if}
diff --git a/src/mobile/MainToolbar.svelte b/src/mobile/MainToolbar.svelte
new file mode 100644
index 0000000..0d32306
--- /dev/null
+++ b/src/mobile/MainToolbar.svelte
@@ -0,0 +1,167 @@
+
+
+
+
+ {#if queued}
+
+ Node: {getNodeInfo($queueState.runningNodeID)} ({progressText})
+
+ {/if}
+
+
+ {#if queued}
+ {#if progress}
+
+ {:else if running}
+
+ {/if}
+ {/if}
+
+
+
+ Tab 1
+
+
+
+{#if $interfaceState.showIndicator}
+
+{/if}
+
+
diff --git a/src/mobile/routes/list-subworkflows.svelte b/src/mobile/routes/list-subworkflows.svelte
deleted file mode 100644
index 1e2138a..0000000
--- a/src/mobile/routes/list-subworkflows.svelte
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/mobile/routes/workflow.svelte b/src/mobile/routes/workflow.svelte
index 908839c..b1909d0 100644
--- a/src/mobile/routes/workflow.svelte
+++ b/src/mobile/routes/workflow.svelte
@@ -1,10 +1,13 @@
-
-
+
+
+
+ {title}
+
+
+
+
{#if workflow}
{#if root}
diff --git a/src/mobile/routes/home.svelte b/src/mobile/routes/workflows.svelte
similarity index 82%
rename from src/mobile/routes/home.svelte
rename to src/mobile/routes/workflows.svelte
index ec7fe31..9899647 100644
--- a/src/mobile/routes/home.svelte
+++ b/src/mobile/routes/workflows.svelte
@@ -1,6 +1,8 @@
-
+
{#if $workflowState.openedWorkflows}
{#each $workflowState.openedWorkflows as workflow}
-
+
onClickDelete(workflow, e)}>