App Mode - Progress/outputs - 5 (#9028)

## Summary

Adds new store for tracking outputs lin linear mode and reworks outputs
to display the following: skeleton -> latent preview -> node output ->
job result.

## Changes

- **What**: 
- New store for wrangling various events into a usable list of live
outputs
- Replace manual list with reka-ui list box
- Extract various composables

## Review Focus
Getting all the events and stores aligned to happen consistently and in
the correct order was a challenge, unifying the various sources. so
suggestions there would be good

## Screenshots (if applicable)


https://github.com/user-attachments/assets/13449780-ee48-4d9a-b3aa-51dca0a124c7

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-9028-App-Mode-Progress-outputs-5-30d6d73d3650817aaa9dee622fffe426)
by [Unito](https://www.unito.io)

---------

Co-authored-by: GitHub Action <action@github.com>
This commit is contained in:
pythongosssss
2026-02-23 18:43:25 +00:00
committed by GitHub
parent b29dbec916
commit f811b173c6
20 changed files with 1484 additions and 392 deletions

View File

@@ -113,6 +113,7 @@
--color-interface-panel-job-progress-secondary: var(
--color-alpha-azure-600-30
);
--color-interface-panel-job-progress-border: var(--base-foreground);
--color-blue-selection: rgb(from var(--color-azure-600) r g b / 0.3);
--color-node-hover-100: rgb(from var(--color-charcoal-800) r g b/ 0.15);
@@ -412,6 +413,7 @@
--color-interface-panel-job-progress-secondary: var(
--color-alpha-azure-600-30
);
--color-interface-panel-job-progress-border: var(--base-foreground);
--text-secondary: var(--color-slate-100);
--text-primary: var(--color-white);
@@ -1877,3 +1879,22 @@ audio.comfy-audio.empty-audio-widget {
margin-left: 15px;
}
/* ===================== End of Mask Editor Styles ===================== */
/* ===================== Skeleton Shimmer ===================== */
.skeleton-shimmer {
background:
linear-gradient(135deg, rgb(188 188 188 / 0.5) 0%, rgb(0 0 0 / 0.5) 100%) 0
0 / 200% 200%,
#000;
animation: skeleton-shimmer 2s ease-in-out infinite;
}
@keyframes skeleton-shimmer {
0%,
100% {
background-position: 100% 100%;
}
50% {
background-position: 0 0;
}
}