Cleanup/Perf: Float32Array/Float64Array removal (#5877)

## Summary

Redoing https://github.com/Comfy-Org/ComfyUI_frontend/pull/5567, without
the link rendering changes.

## Changes

- **What**: Standardizing the Point/Size/Rect logic around numeric
tuples instead of typed arrays.

## Review Focus

Cutting here and going to continue in a second PR.

Do the simpler types make sense?
Do we want to keep the behavior of Rectangle as it is now?

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-5877-WIP-Float32Array-Float64Array-removal-27f6d73d36508169a39eff1e4a87a61c)
by [Unito](https://www.unito.io)

---------

Co-authored-by: filtered <176114999+webfiltered@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
This commit is contained in:
Alexander Brown
2025-10-02 17:20:31 -07:00
committed by GitHub
parent 720de8cc8a
commit 4b1c165d43
24 changed files with 166 additions and 218 deletions

View File

@@ -93,16 +93,16 @@ const mountSlots = (nodeData: VueNodeData, readonly = false) => {
describe('NodeSlots.vue', () => {
it('filters out inputs with widget property and maps indexes correctly', () => {
// Two inputs without widgets (object and string) and one with widget (filtered)
const inputObjNoWidget = {
const inputObjNoWidget: INodeInputSlot = {
name: 'objNoWidget',
type: 'number',
boundingRect: new Float32Array([0, 0, 0, 0]),
boundingRect: [0, 0, 0, 0],
link: null
}
const inputObjWithWidget = {
const inputObjWithWidget: INodeInputSlot = {
name: 'objWithWidget',
type: 'number',
boundingRect: new Float32Array([0, 0, 0, 0]),
boundingRect: [0, 0, 0, 0],
widget: { name: 'objWithWidget' },
link: null
}
@@ -147,16 +147,16 @@ describe('NodeSlots.vue', () => {
})
it('maps outputs and passes correct indexes', () => {
const outputObj = {
const outputObj: INodeOutputSlot = {
name: 'outA',
type: 'any',
boundingRect: new Float32Array([0, 0, 0, 0]),
boundingRect: [0, 0, 0, 0],
links: []
}
const outputObjB = {
const outputObjB: INodeOutputSlot = {
name: 'outB',
type: 'any',
boundingRect: new Float32Array([0, 0, 0, 0]),
boundingRect: [0, 0, 0, 0],
links: []
}
const outputs: INodeOutputSlot[] = [outputObj, outputObjB]