(
})
);
},
+
+ toggleQueue: () => {
+ set(
+ produce((state: ImageCreationUIOptions) => {
+ state.showQueue = !state.showQueue;
+ })
+ );
+ },
+
}),
{
name: "createUI",
diff --git a/ui/frontend/build_src/src/components/organisms/creationPanel/index.tsx b/ui/frontend/build_src/src/components/organisms/creationPanel/index.tsx
index 883b21b3..141e0001 100644
--- a/ui/frontend/build_src/src/components/organisms/creationPanel/index.tsx
+++ b/ui/frontend/build_src/src/components/organisms/creationPanel/index.tsx
@@ -1,25 +1,39 @@
import React, { ChangeEvent } from "react";
+import BasicCreation from "./basicCreation";
import AdvancedSettings from "./advancedSettings";
import ImageModifiers from "./imageModifiers";
import InpaintingPanel from "./inpaintingPanel";
+import QueueDisplay from "../queueDisplay";
+
// this works but causes type errors so its not worth it for now
// import { useImageCreate } from "@stores/imageCreateStore.ts";
import { useImageCreate } from "../../../stores/imageCreateStore";
+import { useImageQueue } from "../../../stores/imageQueueStore";
-import "./creationPanel.css";
+import { useCreateUI } from "./creationPanelUIStore";
+
+// import "./creationPanel.css";
import {
CreationPaneMain,
InpaintingSlider,
-} from "./creationpane.css";
+ QueueSlider,
+} from "./creationPanel.css";
+
-import BasicCreation from "./basicCreation";
export default function CreationPanel() {
const isInPaintingMode = useImageCreate((state) => state.isInpainting);
+
+ const showQueue = useCreateUI((state) => state.showQueue);
+ const hasQueue = useImageQueue((state) => state.hasQueuedImages());
+
+ // console.log('hasQueue', hasQueue);
+ console.log('showQueue', showQueue);
+
return (
<>
@@ -33,6 +47,13 @@ export default function CreationPanel() {
)}
+
+ {(showQueue) && (
+
+
+
+ )}
+
>
);
}
diff --git a/ui/frontend/build_src/src/components/organisms/queueDisplay/index.tsx b/ui/frontend/build_src/src/components/organisms/queueDisplay/index.tsx
new file mode 100644
index 00000000..46e0cc82
--- /dev/null
+++ b/ui/frontend/build_src/src/components/organisms/queueDisplay/index.tsx
@@ -0,0 +1,25 @@
+import React from "react";
+
+import { useImageQueue } from "../../../stores/imageQueueStore";
+
+
+import {
+ QueueDisplayMain
+} from "./queueDisplay.css";
+
+import QueueItem from "./queueItem";
+
+export default function QueueDisplay() {
+
+ const images = useImageQueue((state) => state.images);
+ console.log('images', images);
+
+
+ return (
+
+ {images.map((image) => {
+ return ;
+ })}
+
+ );
+}
diff --git a/ui/frontend/build_src/src/components/organisms/queueDisplay/queueDisplay.css.ts b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueDisplay.css.ts
new file mode 100644
index 00000000..f2d6d204
--- /dev/null
+++ b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueDisplay.css.ts
@@ -0,0 +1,10 @@
+import { style } from "@vanilla-extract/css";
+
+export const QueueDisplayMain = style({
+ display: "flex",
+ flexDirection: "column",
+ width: '400px',
+ height: '100%',
+ backgroundColor: 'rgba(0, 0, 0, 0.5)',
+
+});
diff --git a/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/index.tsx b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/index.tsx
new file mode 100644
index 00000000..15d95508
--- /dev/null
+++ b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/index.tsx
@@ -0,0 +1,38 @@
+import React from "react";
+
+import {
+ QueueItemMain
+} from "./queueItem.css";
+
+import {
+ ImageRequest
+} from '../../../../api'
+
+interface QueueItemProps {
+ info: ImageRequest
+}
+
+export default function QueueItem({ info }: QueueItemProps) {
+
+ console.log('info', info);
+
+ const {
+ id,
+ options: {
+ prompt,
+ seed,
+ sampler,
+ },
+ // status,
+ } = info;
+
+ return (
+
+
{id}
+
{prompt}
+
{seed}
+
{sampler}
+
+
+ );
+}
\ No newline at end of file
diff --git a/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/queueItem.css.ts b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/queueItem.css.ts
new file mode 100644
index 00000000..6fd48e1c
--- /dev/null
+++ b/ui/frontend/build_src/src/components/organisms/queueDisplay/queueItem/queueItem.css.ts
@@ -0,0 +1,9 @@
+import { style } from "@vanilla-extract/css";
+
+
+export const QueueItemMain = style({
+ display: "flex",
+ flexDirection: "column",
+ width: "100%",
+ padding: "0.5rem",
+});
\ No newline at end of file