Commit Graph

6231 Commits

Author SHA1 Message Date
Austin Mroz
0addee8fb1 Improve mediaType handling 2025-12-31 12:20:44 -08:00
Austin Mroz
eee096120a Preview dimensions for images
Need to put some further thought into handling other types

Adding a global ref here is bad.
Creating stub components for each preview type is bad
Each preview type needs different handling for calculation of it's
dimensions/type
2025-12-31 11:41:07 -08:00
Austin Mroz
38479c4a40 Persist enabling of linear mode to workflow 2025-12-31 11:17:05 -08:00
Austin Mroz
8f83468eaa Round linear toggle, fix scoll reset padding 2025-12-31 11:15:47 -08:00
Austin Mroz
d1dd276335 Allow center image to expand beyond initial size 2025-12-31 11:02:56 -08:00
Austin Mroz
9202b80ee2 Inset border, default dropIndicator for LoadImage 2025-12-30 22:04:37 -08:00
Austin Mroz
1151350ee4 Drag/drop support for linear mode
Causes some border woes which need fixing
2025-12-30 21:09:05 -08:00
Austin Mroz
09021b605c Disable display of markdown/note nodes 2025-12-30 19:51:47 -08:00
Austin Mroz
3cbdc30517 Allow navigating history with up/down keys 2025-12-30 19:48:13 -08:00
Austin Mroz
cdb422fefc Placeholder support for text output
Since text outputs are not currently exposed in history, there's not way
to test this and the label doesn't actually exist
2025-12-30 19:14:44 -08:00
Austin Mroz
b145566a7f Placeholder icons for non-image outputs 2025-12-30 18:30:54 -08:00
Austin Mroz
76c722c656 Support right sidebar 2025-12-30 17:02:57 -08:00
Austin Mroz
aa6a0580ec Analog scrolling for touchpad 2025-12-30 16:38:48 -08:00
Austin Mroz
a9e5989a3a Add Popover component,with extra options
Extra options are implemented through commands that seem to not
function. Further investigation is needed
2025-12-30 15:30:29 -08:00
Austin Mroz
c7d1869e41 Preview and rerun cleanup 2025-12-30 10:09:49 -08:00
Austin Mroz
df974e56a2 Implement reuse and rerun buttons 2025-12-29 14:34:57 -08:00
Austin Mroz
79bd8a4dd2 Update histroy for new outputs, spinner for active
A spinner is now displayed when  a job is actively executing
- Spinner has slightly incorrect sizing
- Only one spinner is displayed regardless of output count

History tracking change makes me very unhappy. I want to clean this up
to correctly leverage vue reactivity in the future, but required
functionality comes first
2025-12-29 11:16:58 -08:00
Austin Mroz
5e740c6efe Re-enable previews in naive way 2025-12-29 10:14:38 -08:00
Austin Mroz
0beebd0302 Display audio outputs, div cleanup 2025-12-29 09:52:33 -08:00
Austin Mroz
63ad1b289b Reset zoom on preview change 2025-12-27 19:09:23 -08:00
Austin Mroz
7051b5e491 Center zoom on mouse 2025-12-27 18:35:29 -08:00
Austin Mroz
a7a7ea348f Minor fixes: video size, no job toast on enter 2025-12-23 20:30:24 -08:00
Austin Mroz
a96e0dec0c Initial pan/zoom implementation 2025-12-23 17:52:18 -08:00
Austin Mroz
1f17f5f1b5 Popover cleanup - a working queue indicator 2025-12-23 15:49:04 -08:00
Austin Mroz
49ede05221 Skeleton queue button changes 2025-12-23 15:49:04 -08:00
Austin Mroz
d5d995de80 Initial main panel video support 2025-12-23 15:49:04 -08:00
Austin Mroz
75cc8b8b59 Toggle button cleanup
Experimented with ToggleGroups, but it was too much effort and YAGNI

Add icon and descriptions for other media types
2025-12-23 15:49:04 -08:00
Austin Mroz
b77f028097 Prune unused export 2025-12-23 15:49:04 -08:00
Austin Mroz
4cb0eb6fec Setup infinite scroll for outputs 2025-12-23 15:49:04 -08:00
Austin Mroz
d1b4ec44df Fix node reactivity in linear mode 2025-12-23 15:49:04 -08:00
Austin Mroz
1c007d650d Add sidebar
Conflicted on this one. Will likely argue for inlining history
2025-12-23 15:49:04 -08:00
Austin Mroz
24523a5397 Ugly growth hack 2025-12-23 15:49:04 -08:00
Austin Mroz
7ef03de7fb Add icon for image mediatype 2025-12-23 15:49:04 -08:00
Austin Mroz
842043999c Scoll into view for history panel
Functional, but I don't like the implementation specifics,
will return to later
2025-12-23 15:49:04 -08:00
Austin Mroz
461ee6c6d6 Side panel cleanup 2025-12-23 15:49:04 -08:00
Austin Mroz
302990ca9b Buttons, new and old 2025-12-23 15:49:03 -08:00
Austin Mroz
a35b87354f Add generation info display 2025-12-23 15:49:03 -08:00
Austin Mroz
735a60e6d7 Allow resizing history 2025-12-23 15:49:03 -08:00
Austin Mroz
5455c85a29 Initial scorll implementation 2025-12-23 15:49:03 -08:00
Austin Mroz
323649557f WIP sidebar update 2025-12-23 15:49:03 -08:00
AustinMroz
f9b58904d9 Ensure widgets always get a single callback (#7579)
The other side of reactivity. Ensure that vue mode always registers a
callback on litegraph nodes and never registers more than one.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7579-Ensure-widgets-always-get-a-single-callback-2cc6d73d365081e2a488c38ae394efc0)
by [Unito](https://www.unito.io)
2025-12-23 15:48:01 -08:00
Terry Jia
25b9c51237 fix: correct Vue node selection box detection accuracy (#7741)
## Summary
Remove double-counting of NODE_TITLE_HEIGHT in layout sync. The title
height was being added both in useLayoutSync and in LiteGraph's
measure() function, causing boundingRect to be 30px taller than actual
DOM.

This caused selection box to detect nodes ~30px below their actual
bottom.

fix https://github.com/Comfy-Org/ComfyUI_frontend/issues/7580

## Screenshots (if applicable)
before


https://github.com/user-attachments/assets/babf0b9d-174e-4ec3-a3bb-18e4f9d88d09

after


https://github.com/user-attachments/assets/4f9989a5-4d3c-4303-bd1b-70ca70cb8f15

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7741-fix-correct-Vue-node-selection-box-detection-accuracy-2d26d73d3650817cbe80f98a3bf1abf1)
by [Unito](https://www.unito.io)

---------

Co-authored-by: github-actions <github-actions@github.com>
2025-12-23 17:36:06 -05:00
Comfy Org PR Bot
12dc32b019 1.36.9 (#7735)
Patch version increment to 1.36.9

**Base branch:** `main`

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7735-1-36-9-2d26d73d36508175a1b6f191f59cdbf8)
by [Unito](https://www.unito.io)

---------

Co-authored-by: christian-byrne <72887196+christian-byrne@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
v1.36.9
2025-12-22 17:13:29 -08:00
Luke Mino-Altherr
47884c623e [feat] Add HuggingFace model import support (#7540)
## Summary
Adds HuggingFace as a model import source alongside CivitAI, with
improved UX for model type selection and UTF-8 filename support.

## Changes
- **Import Sources**: Implemented extensible import source handler
pattern supporting both CivitAI and HuggingFace
- **UTF-8 Support**: Decode URL-encoded filenames to properly display
international characters (e.g., Chinese)
- **UX**: Sort model types alphabetically for easier selection
- **Feature Flag**: Added `huggingfaceModelImportEnabled` flag for
gradual rollout
- **i18n**: Use proper template parameters for localized error messages

## Technical Details
- Created `ImportSourceHandler` interface for extensibility
- Refactored existing CivitAI logic into handler pattern
- Added URL validation per source
- Filename decoding handles malformed URLs gracefully

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7540-feat-Add-HuggingFace-model-import-support-2cb6d73d3650818f966cca89244e8c36)
by [Unito](https://www.unito.io)

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: GitHub Action <action@github.com>
2025-12-22 11:34:49 -08:00
Hunter
176c8e110b feat: pass target tier to billing portal for subscription updates (#7692)
## Summary

Pass target tier to billing portal API for deep linking to Stripe's
subscription update confirmation screen when user has an active
subscription.

## Changes

- **What**: When a user with an active subscription clicks a tier in
PricingTable, pass the target tier (including billing cycle) to
`accessBillingPortal` which sends it as `target_tier` in the request
body. This enables the backend to create a Stripe billing portal deep
link directly to the subscription update confirmation screen.
- **Dependencies**: Requires comfy-api PR for `POST /customers/billing`
`target_tier` support

## Review Focus

- PricingTable now differentiates between new subscriptions (checkout
flow) and existing subscriptions (billing portal with deep link)
- Type derivation uses `Parameters<typeof
authStore.accessBillingPortal>[0]` to avoid duplicating the tier union
(matches codebase pattern)
- Registry types manually updated to include `target_tier` field (will
be regenerated when API is deployed)

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7692-feat-pass-target-tier-to-billing-portal-for-subscription-updates-2d06d73d365081b38fe4c81e95dce58c)
by [Unito](https://www.unito.io)

---------

Co-authored-by: Christian Byrne <cbyrne@comfy.org>
Co-authored-by: GitHub Action <action@github.com>
2025-12-22 11:43:44 -07:00
Christian Byrne
959c1990b5 update partner nodes from USD to comfy credits (#7451)
## Summary

Show in comfy credits

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7451-WIP-update-partner-nodes-from-USD-to-comfy-credits-2c86d73d3650818f9b2deda45e4968e1)
by [Unito](https://www.unito.io)

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: bigcat88 <bigcat88@icloud.com>
2025-12-22 19:59:35 +02:00
Christian Byrne
e2c8478025 fix: show yearly labels in subscription panel for annual subscribers (#7706)
## Summary

Updates SubscriptionPanel to display yearly-appropriate labels for
annual subscribers:

- "Credits remaining this year" instead of "this month"
- "Yearly credits" instead of "Monthly credits" in the "Your plan
includes" section

## Changes

- Added `creditsRemainingThisYear` i18n key
- Added `creditsRemainingLabel` computed that switches based on
`isYearlySubscription`
- Updated `tierBenefits` to use `yearlyCreditsLabel` for annual
subscribers

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7706-fix-show-yearly-labels-in-subscription-panel-for-annual-subscribers-2d16d73d365081488552c2c0b03d862e)
by [Unito](https://www.unito.io)
2025-12-22 08:19:17 -07:00
Christian Byrne
0762985ca7 cleanup: remove the legacy mask editor and all related code (#7370)
## Summary

Removes the legacy mask editor. May also want to remove the "Beta" tags
on all the current mask editor components/mentions in the app now as
well.

## Context

Telemetry data shows zero users using the legacy mask editor. It has
been considerable time since we switched to the new one, and there
really is no reason to use the legacy version given how lacking it is.

In https://github.com/Comfy-Org/ComfyUI_frontend/pull/7332 (v1.35.2 -
Dec 11, 2025), we added a final warning that the legacy mask editor is
being removed.

On 1.36, this PR can be merged, as more than enough warning will have
been given.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7370-cleanup-remove-the-legacy-mask-editor-and-all-related-code-2c66d73d365081d58fbed0f3c84bcb0d)
by [Unito](https://www.unito.io)
2025-12-22 07:17:31 -07:00
Simula_r
9514e5d36c Fix(cloud)/pricing annual misc (#7701)
## Summary

Fix: PricingTable showed "Current Plan" on the wrong billing cycle
(e.g., showing it on Yearly when subscribed to Monthly) because we
weren't checking subscription_duration. Now we check for ANNUAL |
MONTHLY match.

Fix: Subscribed users were being sent to billing portal instead of
checkout. Now routes to checkout.

Improved: Types now use openapi.yml as source of truth. Tier names in
user popover and subscription panels now reflect the billing cycle
(YEARLY/MONTHLY).

Recommended to merge this before
https://github.com/Comfy-Org/ComfyUI_frontend/pull/7692

---------

Co-authored-by: bymyself <cbyrne@comfy.org>
2025-12-22 05:01:32 -07:00
Comfy Org PR Bot
970861e677 [chore] Update Comfy Registry API types from comfy-api@ade7a7d (#7702)
## Automated API Type Update

This PR updates the Comfy Registry API types from the latest comfy-api
OpenAPI specification.

- API commit: ade7a7d
- Generated on: 2025-12-22T11:30:15Z

These types are automatically generated using openapi-typescript.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7702-chore-Update-Comfy-Registry-API-types-from-comfy-api-ade7a7d-2d16d73d3650814b9b9ad0793ea44926)
by [Unito](https://www.unito.io)

Co-authored-by: christian-byrne <72887196+christian-byrne@users.noreply.github.com>
2025-12-22 04:48:58 -07:00