+{
+ public dynamic GetData(Div element) => element.InnerText.Trim();
+
+ public void ValidateValueIs(Div element, string expectedValue) => element.ValidateInnerTextIs(expectedValue);
+}
\ No newline at end of file
diff --git a/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/EmailControlDataHandler.cs b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/EmailControlDataHandler.cs
new file mode 100644
index 00000000..6f89406f
--- /dev/null
+++ b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/EmailControlDataHandler.cs
@@ -0,0 +1,29 @@
+//
+// Copyright 2022 Automate The Planet Ltd.
+// Licensed under the Apache License, Version 2.0 (the "License");
+// You may not use this file except in compliance with the License.
+// You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
Anton Angelov
+//
https://bellatrix.solutions/
+
+using System;
+
+namespace Bellatrix.Playwright.Controls.Advanced.ControlDataHandlers;
+
+public class EmailControlDataHandler : IEditableControlDataHandler
+{
+ public dynamic GetData(Email element) => element.GetEmail();
+
+ public void SetData(Email element, string data)
+ {
+ element.SetEmail(data);
+ }
+
+ public void ValidateValueIs(Email element, string expectedValue) => element.ValidateEmailIs(expectedValue);
+}
\ No newline at end of file
diff --git a/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/ImageControlDataHandler.cs b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/ImageControlDataHandler.cs
new file mode 100644
index 00000000..89cae806
--- /dev/null
+++ b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/ImageControlDataHandler.cs
@@ -0,0 +1,22 @@
+//
+// Copyright 2022 Automate The Planet Ltd.
+// Licensed under the Apache License, Version 2.0 (the "License");
+// You may not use this file except in compliance with the License.
+// You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Anton Angelov
+// https://bellatrix.solutions/
+
+namespace Bellatrix.Playwright.Controls.Advanced.ControlDataHandlers;
+
+public class ImageControlDataHandler : IReadonlyControlDataHandler
+{
+ public dynamic GetData(Image element) => element.Src;
+
+ public void ValidateValueIs(Image element, string expectedValue) => element.ValidateSrcIs(expectedValue);
+}
\ No newline at end of file
diff --git a/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/LabelControlDataHandler.cs b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/LabelControlDataHandler.cs
new file mode 100644
index 00000000..22a16ece
--- /dev/null
+++ b/src/Bellatrix.Playwright/components/advanced/ComponentsDataHandlers/LabelControlDataHandler.cs
@@ -0,0 +1,22 @@
+//
+// Copyright 2022 Automate The Planet Ltd.
+// Licensed under the Apache License, Version 2.0 (the "License");
+// You may not use this file except in compliance with the License.
+// You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Anton Angelov
+// https://bellatrix.solutions/
+
+namespace Bellatrix.Playwright.Controls.Advanced.ControlDataHandlers;
+
+public class LabelControlDataHandler : IReadonlyControlDataHandler