Files
EwaldandClaude Sonnet 5 019a5c9172 Load through comfy_entrypoint and adopt current ComfyUI APIs
Defining NODE_CLASS_MAPPINGS made ComfyUI skip comfy_entrypoint, so
/imageops/viewmedia and node replacements were never registered. Load
as a V3 extension only, move server.py to routes.py so it stops
shadowing ComfyUI's server module, and transcode animated previews
with PyAV instead of an external ffmpeg.

- Require ComfyUI 0.19.0 (has_intermediate_output); CI floor updated.
- Process 11 nodes on ComfyUI's torch device when the frames fit in
  free memory (IMAGEOPS_COMPUTE_DEVICE=cpu disables it).
- Add core CURVE input to Color Correct, BOUNDING_BOX output/input to
  Crop and Crop Stitch, LAYERS output to Comp (ComfyUI 0.31+),
  essentials_category, and Merge blend modes with golden parity.
- Report progress through the public set_progress API and drop the
  hidden unique_id input.
- Add ImageOps settings and a refresh-previews command.
- Fix ImageOpsComp rotation and preview saving (undefined
  to_display_range) and masked Transform edge colors.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-28 14:53:14 +02:00

29 lines
908 B
JavaScript

const PREVIEW_STORAGE_KEYS = {
canvasSize: "imageops.preview.canvasSize",
playbackCanvasSize: "imageops.preview.playbackCanvasSize",
interactionCanvasSize: "imageops.preview.interactionCanvasSize",
debounceMs: "imageops.preview.debounceMs",
maxGraphNodes: "imageops.preview.maxGraphNodes"
};
const PREVIEW_SETTING_IDS = {
canvasSize: "Majoor.ImageOps.Preview.CanvasSize",
playbackCanvasSize: "Majoor.ImageOps.Preview.PlaybackCanvasSize",
interactionCanvasSize: "Majoor.ImageOps.Preview.InteractionCanvasSize",
debounceMs: "Majoor.ImageOps.Preview.DebounceMs",
maxGraphNodes: "Majoor.ImageOps.Preview.MaxGraphNodes"
};
const PREVIEW_DEFAULTS = {
minCanvasSize: 128,
maxCanvasSize: 2048,
canvasSize: 1024,
playbackCanvasSize: 640,
interactionCanvasSize: 448,
debounceMs: 120,
maxGraphNodes: 140
};
export {
PREVIEW_DEFAULTS,
PREVIEW_SETTING_IDS,
PREVIEW_STORAGE_KEYS
};