ICMP and ICMPv6 types should only show where proto is ICMP(v6)
Current firewall_rules_edit.php shows the ICMP and ICMPv6 type boxes where appropriate protocol(s) are selected. If IP version IPv4, protocol ICMP, the ICMP box shows up. If IPv6, protocol ICMP, only the ICMPv6 box shows. If IP version is v4+v6, and ICMP is selected, the type fields are both hidden (as current implementation can't choose a type if using both protos).