Commit Graph
8 Commits
Author SHA1 Message Date
Æmotion StudioandClaude Opus 5.5 4b06ee92bb Update the Inspector panel look, navigation and editing
Restyle the panel on ComfyUI palette tokens and drop the built-in themes.
Add a header with Back/Forward, Prev/Next, Focus, Lock and a searchable
Go to node picker, a subgraph/group breadcrumb, and simplified modes:
Follow glass or Float, plus Sticky, Follow selection and Lock to node
(replaces Hold).

Fix widget edits (step2 steps, INT/FLOAT, commit on Enter/blur, undo),
subgraph lookups, orphaned dropdown menus, global arrow-key capture,
the pop-out editor, and remove Google Fonts loading and dead code.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 06:47:21 -08:00
google-labs-jules[bot]andAEmotionStudio 09da6a1d7b feat(security): enhance DOM sanitization to strip dangerous URIs
Updated `sanitizeElement` to strictly remove whitespace and control characters from URI attributes before validation.
This prevents bypasses like `java\tscript:` in `href`, `src`, `action`, and `formaction` attributes.
Added comprehensive unit tests covering these bypass vectors.

Co-authored-by: AEmotionStudio <163354043+AEmotionStudio@users.noreply.github.com>
2026-02-10 03:35:57 +00:00
google-labs-jules[bot]andAEmotionStudio 49f1efeeb1 feat(security): sanitize cloned DOM elements to prevent XSS
Added `sanitizeElement` utility to recursively remove inline event handlers (on*) and javascript: URIs from HTML elements.
Applied sanitization in `MagnifyGlass.renderHtmlOverlays` when cloning nodes for the magnifying glass view.
Added unit tests to verify sanitization logic.

Co-authored-by: AEmotionStudio <163354043+AEmotionStudio@users.noreply.github.com>
2026-02-10 03:24:55 +00:00
google-labs-jules[bot]andAEmotionStudio 6e1740e72b feat(security): sanitize cloned DOM elements to prevent XSS
Added `sanitizeElement` utility to recursively remove inline event handlers (on*) from HTML elements.
Applied sanitization in `MagnifyGlass.renderHtmlOverlays` when cloning nodes for the magnifying glass view.
Added unit tests to verify sanitization logic.

Co-authored-by: AEmotionStudio <163354043+AEmotionStudio@users.noreply.github.com>
2026-02-09 23:28:33 +00:00
google-labs-jules[bot] f6a9e5faa7 security(ui): eliminate XSS vector by replacing isHtml bypass with strict specialType
Removed the `isHtml` flag support in `UIManager`, which allowed bypassing HTML escaping.
Replaced it with a `specialType` mechanism (specifically 'focus-node') to render trusted
HTML structures internally while ensuring dynamic values are always escaped.
Updated `Security.test.ts` to verify the fix and prevent regression.

Fixes: Potential XSS vulnerability via unchecked HTML injection.
2026-01-19 05:05:28 +00:00
google-labs-jules[bot] 5e5c49a99c fix(security): handle non-string inputs in escapeHtml to prevent crashes
- Update `escapeHtml` to explicitly coerce input to string
- Handle null/undefined values safely
- Add unit tests for non-string input types (numbers, booleans, objects)
2026-01-14 05:56:33 +00:00
google-labs-jules[bot] 4cf3e9f50b fix(security): allow trusted html in info panel while sanitizing user input
- Add `isHtml` flag to `Focus Node` button to bypass escaping
- Update `UIManager` to check for `isHtml` flag before formatting/escaping
- Add regression tests for trusted HTML rendering logic
2026-01-14 04:56:25 +00:00
google-labs-jules[bot] 416090376e feat(security): sanitize user input in info panel to prevent XSS
- Add `escapeHtml` utility to `src/shared/utils.ts`
- Sanitize rendered values in `src/info-panel/ValueFormatter.ts`
- Sanitize node titles, types, and labels in `src/info-panel/UIManager.ts`
- Add unit tests verifying XSS prevention in `tests/unit/Security.test.ts`
2026-01-14 04:38:38 +00:00