diff --git a/frontend/src/components/canvas/nodes/BaseNode.tsx b/frontend/src/components/canvas/nodes/BaseNode.tsx index bce6d6f..58f1d51 100644 --- a/frontend/src/components/canvas/nodes/BaseNode.tsx +++ b/frontend/src/components/canvas/nodes/BaseNode.tsx @@ -56,7 +56,7 @@ export function BaseNode({ id, data, selected, icon: typeIcon, width, height }: return (
!o && onClose()}> - + {title}
-
+
+ {/* ── LEFT column: identity & network ── */} +
+
Information
+
{/* Type + Icon on the same row */}
@@ -287,6 +292,7 @@ export function NodeModal({ open, onClose, onSubmit, initial, title = 'Add Node'
+
{/* end Type/Icon subgrid */} {/* Inline icon picker - full width, shown below the type+icon row */} {iconPickerOpen && ( @@ -384,6 +390,7 @@ export function NodeModal({ open, onClose, onSubmit, initial, title = 'Add Node' {labelError &&

Label is required

}
+
{/* Hostname */}
@@ -406,7 +413,9 @@ export function NodeModal({ open, onClose, onSubmit, initial, title = 'Add Node' /> comma-separated
+
{/* end Hostname/IP subgrid */} +
{/* Check method — hidden for zigbee nodes (always none/online) */} {!ZIGBEE_TYPES.includes((form.type ?? '') as NodeType) && (
@@ -436,6 +445,7 @@ export function NodeModal({ open, onClose, onSubmit, initial, title = 'Add Node' />
)} +
{/* end Check method/target subgrid */} {/* Parent Container */} {(() => { @@ -502,7 +512,22 @@ export function NodeModal({ open, onClose, onSubmit, initial, title = 'Add Node'
)} + {/* Notes */} +
+ +