Add missing Water Heater device to matter-devices.xml (#36125)

* Add missing Water Heater device to matter-devices.xml

This PR adds the missing Water Heater device to matter-devices.xml.

The description was generated using the Alchemy tool
(https://github.com/project-chip/alchemy) with the following command:

`alchemy zap --attribute="in-progress"  --sdkRoot=./connectedhomeip/
--specRoot=./connectedhomeip-spec/
./connectedhomeip-spec/src/device_types/WaterHeater.adoc`

I manually fixed the device nae from `Matter Water Heater` to `Water
Heater`.

* zap regen
diff --git a/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml b/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
index f7f5699..ff485bb 100644
--- a/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/matter-devices.xml
@@ -2698,4 +2698,47 @@
             <include cluster="Device Energy Management Mode" client="false" server="true" clientLocked="true" serverLocked="false"></include>
         </clusters>
     </deviceType>
+    <deviceType>
+        <name>MA-waterheater</name>
+        <domain>CHIP</domain>
+        <typeName>Water Heater</typeName>
+        <profileId editable="false">0x0103</profileId>
+        <deviceId editable="false">0x050F</deviceId>
+        <class>Simple</class>
+        <scope>Endpoint</scope>
+        <clusters>
+            <include cluster="Descriptor" client="false" server="true" clientLocked="true" serverLocked="true">
+                <requireAttribute>CLIENT_LIST</requireAttribute>
+                <requireAttribute>DEVICE_TYPE_LIST</requireAttribute>
+                <requireAttribute>PARTS_LIST</requireAttribute>
+                <requireAttribute>SERVER_LIST</requireAttribute>
+            </include>
+            <include cluster="Identify" client="false" server="true" clientLocked="true" serverLocked="false">
+                <requireAttribute>IDENTIFY_TIME</requireAttribute>
+                <requireAttribute>IDENTIFY_TYPE</requireAttribute>
+                <requireCommand>Identify</requireCommand>
+            </include>
+            <include cluster="Thermostat" client="false" server="true" clientLocked="true" serverLocked="true">
+                <requireAttribute>CONTROL_SEQUENCE_OF_OPERATION</requireAttribute>
+                <requireAttribute>LOCAL_TEMPERATURE</requireAttribute>
+                <requireAttribute>SYSTEM_MODE</requireAttribute>
+                <requireCommand>SetpointRaiseLower</requireCommand>
+            </include>
+            <include cluster="Water Heater Management" client="false" server="true" clientLocked="true" serverLocked="true">
+                <requireAttribute>BOOST_STATE</requireAttribute>
+                <requireAttribute>HEATER_TYPES</requireAttribute>
+                <requireAttribute>HEAT_DEMAND</requireAttribute>
+                <requireEvent>BoostEnded</requireEvent>
+                <requireEvent>BoostStarted</requireEvent>
+                <requireCommand>Boost</requireCommand>
+                <requireCommand>CancelBoost</requireCommand>
+            </include>
+            <include cluster="Water Heater Mode" client="false" server="true" clientLocked="true" serverLocked="true">
+                <requireAttribute>CURRENT_MODE</requireAttribute>
+                <requireAttribute>SUPPORTED_MODES</requireAttribute>
+                <requireCommand>ChangeToMode</requireCommand>
+                <requireCommand>ChangeToModeResponse</requireCommand>
+            </include>
+        </clusters>
+    </deviceType>
 </configurator>
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
index b1d26e9..da2ce72 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
@@ -7625,6 +7625,7 @@
     MTRDeviceTypeIDTypeHumiditySensorID MTR_NEWLY_AVAILABLE = 0x00000307,
     MTRDeviceTypeIDTypeEVSEID MTR_NEWLY_AVAILABLE = 0x0000050C,
     MTRDeviceTypeIDTypeDeviceEnergyManagementID MTR_NEWLY_AVAILABLE = 0x0000050D,
+    MTRDeviceTypeIDTypeWaterHeaterID MTR_PROVISIONALLY_AVAILABLE = 0x0000050F,
     MTRDeviceTypeIDTypeElectricalSensorID MTR_NEWLY_AVAILABLE = 0x00000510,
     MTRDeviceTypeIDTypeControlBridgeID MTR_NEWLY_AVAILABLE = 0x00000840,
     MTRDeviceTypeIDTypeOnOffSensorID MTR_NEWLY_AVAILABLE = 0x00000850,
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm b/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
index f0530c4..b4ea67c 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRDeviceTypeMetadata.mm
@@ -85,6 +85,7 @@
     { 0x00000307, MTRDeviceTypeClass::Simple, "Humidity Sensor" },
     { 0x0000050C, MTRDeviceTypeClass::Simple, "EVSE" },
     { 0x0000050D, MTRDeviceTypeClass::Simple, "Device Energy Management" },
+    { 0x0000050F, MTRDeviceTypeClass::Simple, "Water Heater" },
     { 0x00000510, MTRDeviceTypeClass::Utility, "Electrical Sensor" },
     { 0x00000840, MTRDeviceTypeClass::Simple, "Control Bridge" },
     { 0x00000850, MTRDeviceTypeClass::Simple, "On/Off Sensor" },
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp b/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
index 0b5178d..7c4c38a 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
+++ b/zzz_generated/chip-tool/zap-generated/cluster/logging/EntryToText.cpp
@@ -6495,6 +6495,8 @@
         return "EVSE";
     case 0x0000050D:
         return "Device Energy Management";
+    case 0x0000050F:
+        return "Water Heater";
     case 0x00000510:
         return "Electrical Sensor";
     case 0x00000840: