filtered
539fa91b0d
[TS] Use strict mode in LGraphCanvas ( #664 )
...
- Prefer `undefined` over `null`
- Primarily nullable type updates
2025-03-01 21:58:50 +00:00
Chenlei Hu
09ab14ac81
[Type] Disallow type upcasting for node input spec ( #2790 )
2025-03-01 16:58:45 -05:00
filtered
bca0af82a3
[TS] Update type to reflect actual usage ( #2788 )
2025-03-01 16:44:33 -05:00
bymyself
9b8f9bd597
Allow passthrough to root component when creating dialog ( #2787 )
2025-03-01 16:43:32 -05:00
filtered
ab25d1fc6e
[Cleanup] Remove redundant code ( #663 )
...
Removes:
- Unused option from public API `getWidgetAtCursor` - use without params
- Unused workaround impl. for WebGL
- Invalid code (incorrect `tabIndex` casing)
2025-03-01 17:54:35 +00:00
filtered
7b4bea8e62
Remove deprecated code - webGL ( #660 )
...
Removes long-deprecated WebGL code.
2025-03-01 16:33:17 +00:00
Chenlei Hu
2b212f9701
S&R improved filename sanitizing ( #2784 )
...
Co-authored-by: typpos <28550406+typpos@users.noreply.github.com >
2025-03-01 10:47:42 -05:00
filtered
177a5a0d54
[CodeHealth] Remove wheel listener & event wrapper ( #656 )
...
- Replaces the long-deprecated `mousewheel` and `DOMMouseScroll` event
listeners with `wheel` listener
- Verified no change in Chromium behaviour (desktop, mouse)
- Removes redundant pointer listener wrapper
- Fixes types
2025-03-01 13:18:15 +00:00
Miguel C
5721b1c27c
[Refactor] Fix step calculation in Knob Widget ( #651 )
...
Removes a stray console.log and fixes the step calculation.
2025-03-01 23:36:55 +11:00
filtered
c473130499
[TS] Use strict mode in LGraphCanvas ( #654 )
...
- Prefer creating HTML elements in JS and `append()` over innerHTML &
`querySelector()`
- Removes redundant code
- Adds/fixes TS types
2025-03-01 11:52:42 +00:00
filtered
bad923a7f0
[Refactor] Remove deprecated mousewheel events ( #652 )
...
Prefer "wheel" event (added around Chrome v31).
2025-03-01 11:34:23 +00:00
filtered
b71a851a35
[TS] Use Litegraph strict narrowed type ( #2781 )
2025-03-01 21:52:34 +11:00
Chenlei Hu
a814f9f902
[Test] Run unittest with vitest ( #2779 )
2025-02-28 22:09:17 -05:00
filtered
b36bf3d4a2
[CodeHealth] Apply modern standards to LGraphCanvas ( #650 )
...
- Prefer template string
- Prefer explicit throw to undefined TypeError
- Remove unnecessary `this` assignment
2025-02-28 22:08:23 +00:00
bymyself
792c5f2246
Load workflows from webm files ( #2772 )
...
Co-authored-by: github-actions <github-actions@github.com >
2025-02-28 16:00:02 -05:00
filtered
c4faaf4210
[TS] Fix ContextMenu types ( #649 )
...
- No runtime changes
- Drastically improves ContextMenu type accuracy / safety
- Allows TS strict conversion
2025-02-28 14:52:07 +00:00
filtered
b877312336
[Refactor] Fix TS types, remove redundant code ( #648 )
...
Minor clean up and graph null deref checks.
Minor runtime change: due to optional chaining, it is possible a
downstream consumer is catching this extremely rare behaviour on purpose
and handling it.
2025-02-28 11:13:23 +00:00
filtered
4365873039
[Refactor] Prefer NullGraphError & standardisation ( #647 )
...
- Best effort code search for convert explicit `null` to `undefined`
- Prefer explicit throw over `TypeError`
- Prefer template strings
2025-02-28 20:16:34 +11:00
filtered
b4688e18f9
[Refactor] Prefer includes over indexOf -1 ( #646 )
...
Enables ESLint auto-fix rule.
2025-02-28 08:53:29 +00:00
filtered
7b19abf83a
[TS] Use strict mode in Canvas: initializers ( #645 )
...
- Code search verified no consumers expecting explicit null on callbacks
(best effort)
- Removes redundant code
2025-02-28 08:48:53 +00:00
Chenlei Hu
fc39ce9624
Rewrite/Test rounding logic of numeric widgets ( #2758 )
2025-02-27 17:52:16 -05:00
Chenlei Hu
cb4a5b88fc
Remove magic 10% scale on numeric widget step ( #2759 )
2025-02-27 16:56:22 -05:00
Chenlei Hu
c66ca2ae66
Remove magic 10% scale on numeric widget step ( #643 )
...
There are external code still dependent on the fact that
Widget.options.step is scaled 10x, so the 10x-ed value is still kept
there, while we use the new unscaled step2 within our code now.
Ref:
https://cs.comfy.org/search?q=context:global+%22step+/+10%22&patternType=keyword&sm=0
2025-02-27 16:23:53 -05:00
bymyself
8775c1d930
Add video_upload to combo input schema ( #2760 )
2025-02-27 16:22:14 -05:00
Chenlei Hu
1dab413473
[Schema] Expose input options types ( #2757 )
2025-02-27 14:22:42 -05:00
filtered
0a09ecc7ac
[TS] Use strict mode in LGraphNode ( #642 )
...
- Adds minor type coercions to resolve type errors
- Deprecates unused public APIs
- 7a0336e3ad7239b7bb588bbbe7912322257e9ae2 works around a bug in the tsc
strict plugin
- Adds ts-ignore that must be removed later
* [ ] #578
2025-02-27 19:03:42 +00:00
Chenlei Hu
1d95d639e9
[Refactor] Extract nodeDefSchema from apiSchema ( #2756 )
2025-02-27 13:39:23 -05:00
bymyself
e380d792c7
Support models metadata in node properties ( #2754 )
2025-02-27 13:25:16 -05:00
Chenlei Hu
cdf42d5ad7
[Refactor] Move zod schemas to schemas/ folder ( #2753 )
2025-02-27 13:05:01 -05:00
filtered
fab386275c
[Refactor] Clean up LGraphNode ahead of TS strict ( #641 )
...
Preparation for TS strict conversion. Simplifies code & improves
readability.
2025-02-27 17:55:11 +00:00
Chenlei Hu
96f02dbf80
[Refactor] Use util.clone in mergeIfValid ( #2752 )
2025-02-27 11:47:56 -05:00
filtered
38dd7b7089
[Refactor] Prefer for..of to incremental for loops ( #640 )
...
- Converts incremental for loops to for..of loops
- Improves readability
2025-02-27 16:28:10 +00:00
bymyself
f9157ee05f
Update workflow schema to include node pack ID and version ( #2751 )
2025-02-27 11:15:31 -05:00
filtered
be8dc6867e
[Refactor] Prefer event listeners to callback props ( #637 )
...
N.B.: `onerror` replacement is not a `window` or `Element` instance.
2025-02-27 14:50:39 +00:00
Terry Jia
cb6f2e4398
[3d] fix preview camera not sync up issue ( #2747 )
2025-02-27 08:42:07 -05:00
bymyself
71f3f720bf
Lower floor on max history items setting ( #2748 )
2025-02-27 08:41:50 -05:00
filtered
97bf9de83a
[Refactor] Standardise code style - modern JS ( #636 )
...
Uses unicorn rules to auto-refactor code. All verified.
2025-02-27 13:13:32 +00:00
filtered
6737828a2b
Lint module entry point ( #635 )
...
- Adds module entry point tests
- Manually resolved lint rules for module entry point imports / exports
(autofix could not resolve without causing issues)
2025-02-27 12:02:03 +00:00
filtered
2d9c811aa9
[Cleanup] Remove downstream type ( #632 )
...
Removes group node type. Now exists downstream where it is used.
2025-02-27 10:38:24 +00:00
filtered
0d8e0fce17
[Refactor] Fix assignment of this to const ( #631 )
...
Refactors using arrows funcs or storing the once-off requirement as an
action, removing the need to dereference this inside the function.
2025-02-27 10:32:53 +00:00
filtered
2104f2a8a9
[Refactor] Prefer textContent over innerText ( #630 )
...
Only setters are used, so getter differences aren't involved. This may
result in a runtime change to consumers passing a Node that isn't
actually a HTMLElement.
2025-02-27 10:11:07 +00:00
filtered
1e8938ceff
Add unicorn lint rules - DOM built-in functions ( #628 )
...
- Prefer append(), remove(), replaceAll()
- Wrap nested ternaries in parenthesis
2025-02-27 09:18:25 +00:00
filtered
6f51767451
Add ESLint unicorn plugin ( #627 )
...
Rules disabled by default to allow incremental integration.
2025-02-27 08:41:51 +00:00
Chenlei Hu
d1fead298f
[Revert] Restrict applyToGraph to PrimitiveNode ( #2746 )
2025-02-26 22:29:13 -05:00
Chenlei Hu
0bc66965f0
[Cleanup] Remove LiteGraph global type declarations ( #2745 )
2025-02-26 21:50:41 -05:00
Terry Jia
e843f53799
[3d] temp fix preview camera not sync up ( #2743 )
2025-02-26 21:39:19 -05:00
Chenlei Hu
ab9c65f28b
Type widgetInputs ( #2741 )
2025-02-26 18:01:56 -05:00
Chenlei Hu
e8c238b70e
Update serialisation.ts ( #624 )
...
Update ISerialisedNodeInputSlot.widget type. Overwrite original widget
prop type.
2025-02-26 16:40:36 -05:00
Chenlei Hu
bdfa2efa50
[BugFix] Remove outputs.animated in queueStore ( #2740 )
2025-02-26 16:04:01 -05:00
Miguel C
fbcc396880
Knob ( #600 )
...
Resolved issues with history due to merges, opened a new pull request.
A more visual widget that the usual number/slider. Differentiates itself
from the functionality of a slider by not setting the value on click,
only stepping, emulating an actual knob.
- Left/Right takes 1 step at a time
- Up/Down moves 1% or 1 step, whichever is larger
- Move + Shift moves by 10% or 1 step, whichever is larger
This also includes a fixes to some size logic.
- [x] ~~Still missing being able to drag the knob itself, as the
clicking of the widget is not recognized if it's outside of where a
normal height widget would be.~~

2025-02-26 15:07:32 -05:00