Commit Graph

1006 Commits

Author SHA1 Message Date
dmx
cb6e80a645 update gitignore 2024-11-03 06:57:25 +04:00
Chenlei Hu
9ec17c04a9 Update test ci action (#255) 2024-11-02 13:11:32 -04:00
filtered
1dfe824239 Shared measure functions (#254)
* Add findPointOnCurve function

* Add measure functions: contains centre/rect

* Improve measure interfaces (ReadOnlyPoint/Rect)

* nit - Doc

* Add TS strict types

* Add TS strict types

* Add TS strict types

* Add TS type
2024-11-02 10:35:36 -04:00
filtered
c0217dbb7e Remove _ctor pattern from Node & Group (#248)
Convert to initializers
2024-11-01 23:12:03 -04:00
filtered
94f1ca4279 Remove future test (#249) 2024-11-01 19:00:02 -04:00
Chenlei Hu
d3f1b9b125 0.8.14 (#253) 2024-10-31 21:57:13 -04:00
Chenlei Hu
ca5a4f37c6 Add release script (#252) 2024-10-31 21:56:26 -04:00
filtered
020c912a8d Convert Links to ES6 Map & LLink Serialisation (#246)
* Fix intermittent links bug - graph.links Map()

Replaces graph.links with Map()
Adds a Proxy to provide for...in and indexer access
Temporarily uses merged Map+Record type, to ease downstream migration

* nit - Remove redundant code

* nit - Remove redundant null checks

* Add Serializable interface, used in LLink

Allows LLink to be serialised as an object rather than an array, bringing it inline with the rest of LiteGraph.
2024-10-31 21:53:00 -04:00
pythongosssss
eaaa0a4c39 Support for hidden & advanced widgets (#250) 2024-10-31 21:41:31 -04:00
filtered
d9d0837423 Code clean up (#244)
* Replace global var with enums

* Remove unused interface

* Add TS types

* Remove unused code

* nit - Clean up

* Add TS types

* nit - Refactor / clean up

* nit - Add TS types, clean up

* nit - Doc

* nit

* nit

* nit

* nit - Doc

* nit

* nit

* nit - let/const

* nit - Remove redundant code
2024-10-31 14:17:13 -04:00
filtered
002c955bf3 Minor bug fixes & refactors (#245)
* Fix TS errors - use correct property

* Fix graph version bumped without change

* Fix onDrawForeground callback has wrong area

* Move node pos getter/setter to class decl
2024-10-31 14:16:24 -04:00
Chenlei Hu
c444ee2c44 0.8.13 (#243) 2024-10-30 19:49:47 -04:00
filtered
2bea13443d Fix types not resolving through '@/imports' (#215) 2024-10-30 19:49:02 -04:00
filtered
b74662fbad Fix group order unexpectedly reversing (#242) 2024-10-30 19:48:48 -04:00
filtered
116b21e8f5 Add / fix canvas TS strict types, doc (#237)
* Fix circular depdency in global

* Add TS type guard private function

* Add TS type

* Add TS types & doc

* Add TS type initialisers

* Add NullableProperties type

* Add TS types

* Split node arrange code out to separate file
2024-10-30 14:32:55 -04:00
Chenlei Hu
e163724e64 0.8.12 (#241) 2024-10-30 12:05:14 -04:00
filtered
95af20c1c4 Snaps for Comfy 🫰 (#239)
* Add Snaps for Comfy

* Add snap visual effects

* Update node measure to work everywhere

* Fix findConnectByTypeSlot does not work for "*"

* Fix regression in fast widget conversion
2024-10-30 12:02:41 -04:00
filtered
94223b2846 Fix minor debug log spam when dragging link (#238) 2024-10-29 22:08:47 -04:00
Chenlei Hu
4ae80c6f79 0.8.11 (#240) 2024-10-29 21:40:54 -04:00
filtered
0b174adfeb Move canvas state to plain object (#233)
* Move canvas state to plain object

POCO that can be proxied without side-effects.
LGraphCanvasState interface added to package exports

* Add item dragging to canvas state
2024-10-29 21:39:46 -04:00
Chenlei Hu
a2c705897f 0.8.10 (#236) 2024-10-28 19:19:39 -04:00
filtered
21b9cb6089 Multi-link drag keeps links bundled properly (#224) 2024-10-28 19:00:08 -04:00
filtered
5070866299 Add / improve Node interfaces: Find slots & before connect callback (#226)
* Add connectByType wrappers

Can find slots without actually connecting.  Will be used for link snapping.

* Refactor - generic find free slot

* Fix link/links TS types - should not be undefined

* Fix / add TS types, docs

* Refactor - fix overloads TS types

* Refactor - optional chaining

* Extend node before-connect callback

The callback can now determine if connection is to a specific input, or just trying to connect any valid slot on the node.

* Add TS types - finish IOptionalInputsData
2024-10-28 18:59:43 -04:00
Chenlei Hu
4c6e6adce1 0.8.9 (#232) 2024-10-27 21:39:46 -04:00
filtered
83cb795301 Fix group deselected on title click (#230) 2024-10-27 21:10:08 -04:00
Chenlei Hu
92ac193640 0.8.8 (#228) 2024-10-27 16:59:10 -04:00
filtered
748d35b610 Add hover highlight and link dragging features (#222)
* Add new hover highlight and link dragging features

- Hovering effects added for node inputs and outputs
- Adds "mouseout" handler to properly clear node state when mousing off a node
- Fixes bug that causes outputs to always be dimmed out when connecting from inputs
- Slight performance improvement

* Add node highlight text colour option

* Add slot highlight colour fallback
2024-10-27 16:57:41 -04:00
Chenlei Hu
e27bbb1e71 0.8.7 (#227) 2024-10-26 18:18:26 -04:00
filtered
d3e0582c52 Add multi-group select & drag (#225) 2024-10-26 18:12:38 -04:00
Chenlei Hu
fa35fe4f7c 0.8.6 (#223) 2024-10-26 13:17:59 -04:00
filtered
3f5499f955 Canvas refactors - standardising (#221)
* Add distribute nodes

* Fix node alt-clone does not work like copy/paste

* Impl. emitEvent across LGraphCanvas

- Create TS types and union for all events
- Replaces all relevant dispatchEvent calls with emitEvent()

* Remove unused code

- showShowGraphOptionsPanel throws an exception when run.  Safe to assume this function not in use.
- Remove old commented code

* Refactor - minor changes to clear TS errors

* Add TS types

* nit - ts-expect-error, comments

* Remove legacy hook

* Refactor - prefer typeof / instanceof / isArray

* Refactor - TS type narrowing

* nit
2024-10-26 13:13:42 -04:00
filtered
70edfe2a33 Fix node shape not set by menu / setter (#214) 2024-10-25 21:07:26 -04:00
filtered
b86d40d8ad Update npm packages: TypeScript, DTS, audit fix (#218) 2024-10-25 20:17:55 -04:00
filtered
955daac9e6 Fix circular dependency (#219)
* Fix circular dependency - LGraphCanvas static init

* Remove dependency workaround
2024-10-25 20:17:31 -04:00
Chenlei Hu
86fb5339e8 0.8.5 (#217) 2024-10-25 07:54:31 -04:00
filtered
eb98a36d47 Typescript LiteGraphGlobal (#210)
* nit - Format

* Refactor - prefer typeof over constructor check

* Fix initialisers

* Add TS types

* nit - auto const/let

* nit - manual const/let

* nit

* Add TS types

* nit - Remove redundant JSDoc

* nit

* Use enums in LiteGraph global

* Fix TS type - node shape

* Add TS types

* Remove unused vars

* nit - Refactor / format

* nit - Refactor

* Refactor - optional chaining
2024-10-24 20:00:29 -04:00
filtered
c0afb1306e Convert CurveEditor to TypeScript (#211) 2024-10-24 19:59:36 -04:00
filtered
dd8cda7862 Typescript DragAndScale (#212)
* nit - Format

* Add TS types

* nit - auto const/let

* nit

* nit - Refactor / format

* Refactor - optional chaining
2024-10-24 18:41:21 -04:00
filtered
4d87476905 Typescript ContextMenu (#206)
* Format only

* Refactor TS narrowing & coercion

* nit - Refactor

* nit - Refactor

* Refactor optional chaining

* Add TS narrowing

* nit - Add base interface

* Add TS types

* Refactor - TS type narrowing

* Convert to arrow funcs for this ref
2024-10-12 11:00:50 -04:00
Chenlei Hu
9ba292da4a 0.8.4 (#209) 2024-10-12 10:59:17 -04:00
filtered
c34299f1d7 Typescript LGraphGroup (#208)
* nit - Format

* nit - auto const/let

* nit - Refactor / format

* Add TS types

* Replace dynamic getter/setter with class decls

* Make group move nodes param optional
2024-10-12 10:57:45 -04:00
filtered
96866e8624 Typescript LGraphNode (#207)
* nit - Fix whitespace

* nit - Remove outdated comments

* nit - Remove redundant jsdoc tag

* Format only

* Add TS types

* nit - Auto let/const

* Convert special-case vars

* nit - Redeclared params / vars

* nit - const/let

* Refactor - minor logic change

* Add TS types - overloads w/workaround

* Refactor - prefer typeof over constructor check

* Add TS types

* Remove unused params

* nit - Refactor

* Refactor LGraphNode.findSlotByType

* nit - Refactor / format

* Refactor - optional chaining

* Fix TS type - node shape
2024-10-12 10:53:25 -04:00
Chenlei Hu
f1bb7153da 0.8.3 (#205) 2024-10-11 12:22:56 -04:00
filtered
d69a2ae9b0 Typescript LGraphCanvas (#202)
* Format only

* Revert accidental change

* Fix redundant falsy check - uninit. var

* nit - Refactor const/let

* nit - Refactor const/let (manual)

* nit - Redeclared params

* Add TS types & minor refactor only

* Refactor - Clean up / reformat

- Add strings.ts helper functions
- Remove unused vars & local function params
- Simplifies code
- Rename vars for clarity
- Add TODOs and other comments
- Add ts-expect-error

* Redirect draw.ts enums to global file (temp.)

Should be revisited after TS merge complete
Corrects import of types from draw.ts into interfaces

* Add measure.ts - move util funcs from Global

* Add all imports required for TS conversion

* Refactor - TS narrowing

* nit - TS types & minor refactor

* Add missing types from recent PRs

Removes duplicate declarations
Fixes some type mismatches

* nit - Refactor recent PRs

* Revert incorrect decls backported

* Remove unused params

* Add TS types only

* Fix minor TS type coercion issues

Also removes redundant code

* nit - Refactor

* Remove @ts-nocheck

* Fix refactor regression - drag link to output

Issue was the result of fixing var declared outside of closure

* Restore original logic

---------

Co-authored-by: huchenlei <huchenlei@proton.me>
2024-10-11 12:21:10 -04:00
filtered
edfa5e70f2 ES2022 Output & whitespace-only minification (#201)
* Change vite output to ES2022

* Add whitespace-only minify using default esbuild

Does not work for .es.js output - limitation of vite.
Workaround for .es.js involves adding terser & a plugin.

* Remove @ts-expect-error from tests

* Update vite.config.mts

---------

Co-authored-by: Chenlei Hu <huchenlei@proton.me>
2024-10-10 21:00:45 -04:00
Chenlei Hu
1ddb80d291 0.8.2 (#204) 2024-10-10 17:46:05 -04:00
filtered
64518a300b Typescript LLink (#199)
* Format only

* Refactor array check, add TS types
2024-10-10 17:45:13 -04:00
Chenlei Hu
76e6f9366d 0.8.1 (#203) 2024-10-10 09:43:23 -04:00
filtered
9d0e06ac01 Typescript LGraph (#200)
* Format only

* nit - Refactor

* Refactor & reformat only

* Refactor TS narrowing & coercion

* Remove ts-nocheck

* Fix downstream break when node id is string
2024-10-08 16:36:39 -04:00
filtered
5d510cd674 Revert "Format all code with prettier (#197)" (#198)
This reverts commit 28382b7e45.
2024-10-08 13:14:36 -04:00