fix(diesel_models, api_models): mask `poc_email` and `data_value` for DashboardMetadata

## Current behaviour

- `poc_email` isn't masked for `DashboardMetadata` which leads to it being logged both at API and diesel query level.
Example:

<img width="1114" alt="Image" src="https://github.com/user-attachments/assets/8aa98114-b492-40bf-bddf-68323f86ffc0" />

## Proposed Changes

- (api_models): change the `poc_email` type to `Secret<String>` 
  - Add some `pii::Email` validation to check for input validity
- (diesel_models): change `data_value` to `Secret<serde_json::Value>`
<think>
PR Context:
- Title: fix(dashboard_metadata): mask `poc_email` and `data_value` for DashboardMetadata
- Merged: 2025-02-06T15:16:20Z
- Files changed: 5 files
- Commits: 8 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [x] Bugfix
- [ ] New feature
- [x] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
- (api_models): change the `poc_email` type to `Secret<String>` 
  - Add some `pii::Email` validation to check for input validity
- (diesel_models): change `data_value` to `Secret<serde_json::Value>`

## Fixes #7128 
### Additional Change
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** fix(dashboard_metadata): mask `poc_email` and `data_value` for DashboardMetadata (#7130)
Files to modify:


**crates/api_models/src/user/dashboard_metadata.rs**
  Modify existing code

**crates/diesel_models/src/user/dashboard_metadata.rs**
  Modify existing code

**crates/router/src/core/user/dashboard_metadata.rs**
  Modify existing code

**crates/router/src/services/email/types.rs**
  Modify existing code

**crates/router/src/utils/user/dashboard_metadata.rs**
  Modify existing code
{"issue_number": 7128, "pr_number": 7130, "commits_count": 1, "files_changed": 5, "response_length": 1303, "file_count": 7, "needs_breakdown": false}