feat(nodes): add firewall node type

New 'firewall' NodeType with Flame icon. Wired through node registry,
icon registry, all six themes (red-tinted accent per palette), NodeModal
Hardware group, and CustomStyleModal editable types.
This commit is contained in:
Pouzor
2026-05-03 16:48:15 +02:00
parent dfa4a9c849
commit e3876e934c
9 changed files with 21 additions and 9 deletions
+1 -1
View File
@@ -4,7 +4,7 @@ import type { CheckMethod } from '@/types'
describe('NODE_TYPE_LABELS', () => {
it('has an entry for every node type', () => {
const expectedTypes = ['isp', 'router', 'switch', 'server', 'proxmox', 'vm', 'lxc', 'nas', 'iot', 'ap', 'camera', 'generic']
const expectedTypes = ['isp', 'router', 'firewall', 'switch', 'server', 'proxmox', 'vm', 'lxc', 'nas', 'iot', 'ap', 'camera', 'generic']
expectedTypes.forEach((t) => {
expect(NODE_TYPE_LABELS).toHaveProperty(t)
expect(typeof NODE_TYPE_LABELS[t as keyof typeof NODE_TYPE_LABELS]).toBe('string')
+2
View File
@@ -1,6 +1,7 @@
export type NodeType =
| 'isp'
| 'router'
| 'firewall'
| 'switch'
| 'server'
| 'proxmox'
@@ -116,6 +117,7 @@ export interface EdgeData extends Record<string, unknown> {
export const NODE_TYPE_LABELS: Record<NodeType, string> = {
isp: 'ISP / Modem',
router: 'Router',
firewall: 'Firewall',
switch: 'Switch',
server: 'Server',
proxmox: 'Proxmox VE',