Files
Ewald a4154ccf05 Fix P0 bugs, remove Append V2/Lens Artifacts, and fix crop reload reset
- Fix batch bypass tuple handling, memory budget device-awareness, grain
  RNG device, roto payload limits, preview temp-file cleanup, and route
  double-registration.
- Add native VIDEO output (fps/audio) to effect nodes that previously
  only returned IMAGE/MASK when fed a VIDEO input.
- Split the oversized src/preview/ops/geometry.ts and add a starting
  golden-fixture test harness (spherize, transform) comparing backend
  and frontend math.
- Remove ImageOpsAppendV2 (Autogrow) and ImageOpsLensArtifacts; inline
  Append's helper back into its single caller.
- Collapse the Color Correct curve widget behind a toggle so the node
  no longer grows too tall.
- Fix Crop/generic-node video preview playback running at the RAF rate
  instead of the source video's real fps.
- Fix Crop losing its saved output size after a workflow reload:
  syncCropWidgets recomputed height from width and a preset aspect
  ratio on every resync (including onConfigure on load), discarding
  the restored value. It now only refreshes aspect-ratio bookkeeping
  on a resync.
2026-09-30 12:49:42 +02:00

162 lines
2.8 KiB
JavaScript

const IMAGEOPS_NODE_METADATA = [
{
"className": "ImageOpsColorAjust",
"ui": "custom",
"minPreviewHeight": 490
},
{
"className": "ImageOpsBlur",
"ui": "native"
},
{
"className": "ImageOpsCameraShake",
"ui": "native"
},
{
"className": "ImageOpsChannel",
"ui": "native"
},
{
"className": "ImageOpsCornerPin",
"ui": "native"
},
{
"className": "ImageOpsComp",
"ui": "custom",
"minPreviewHeight": 400
},
{
"className": "ImageOpsConstant",
"ui": "custom",
"minPreviewHeight": 390
},
{
"className": "ImageOpsCrop",
"ui": "custom"
},
{
"className": "ImageOpsCropStitch",
"ui": "native"
},
{
"className": "ImageOpsDistort",
"ui": "native"
},
{
"className": "ImageOpsDraw",
"ui": "custom",
"minPreviewHeight": 220
},
{
"className": "ImageOpsFrameRange",
"ui": "custom",
"minPreviewHeight": 390
},
{
"className": "ImageOpsGrain",
"ui": "custom",
"minPreviewHeight": 390
},
{
"className": "ImageOpsTransform",
"ui": "native"
},
{
"className": "ImageOpsInvert",
"ui": "native"
},
{
"className": "ImageOpsAppend",
"ui": "custom",
"minPreviewHeight": 430
},
{
"className": "ImageOpsKeyer",
"ui": "custom",
"minPreviewHeight": 420
},
{
"className": "ImageOpsClamp",
"ui": "native"
},
{
"className": "ImageOpsMerge",
"ui": "native"
},
{
"className": "ImageOpsMaskConvert",
"ui": "native"
},
{
"className": "ImageOpsNoise",
"ui": "native"
},
{
"className": "ImageOpsPadOut",
"ui": "custom",
"minPreviewHeight": 430
},
{
"className": "ImageOpsPreview",
"ui": "custom",
"minPreviewHeight": 360
},
{
"className": "ImageOpsRamp",
"ui": "custom",
"minPreviewHeight": 430
},
{
"className": "ImageOpsSpherize",
"ui": "native"
},
{
"className": "ImageOpsText",
"ui": "custom",
"minPreviewHeight": 470
},
{
"className": "ImageOpsVignette",
"ui": "native"
},
{
"className": "ImageOpsChromaticAberration",
"ui": "native"
},
{
"className": "ImageOpsBloom",
"ui": "native"
},
{
"className": "ImageOpsDefocus",
"ui": "native"
},
{
"className": "ImageOpsRoto",
"ui": "custom",
"minPreviewHeight": 560
}
];
const IMAGEOPS_DEFAULT_PREVIEW_MIN_HEIGHT = 320;
const IMAGEOPS_DEFAULT_NODE_WIDTH = 360;
const IMAGEOPS_CLASS_ALIASES = /* @__PURE__ */ new Map([
[
"checker",
"ImageOpsConstant"
],
[
"checkerboard",
"ImageOpsConstant"
],
[
"radial",
"ImageOpsRamp"
]
]);
export {
IMAGEOPS_CLASS_ALIASES,
IMAGEOPS_DEFAULT_NODE_WIDTH,
IMAGEOPS_DEFAULT_PREVIEW_MIN_HEIGHT,
IMAGEOPS_NODE_METADATA
};