init
This commit is contained in:
67
docs/ai/Common/DTS.CommonCore/Interface/CustomerDetails.md
Normal file
67
docs/ai/Common/DTS.CommonCore/Interface/CustomerDetails.md
Normal file
@@ -0,0 +1,67 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Interface/CustomerDetails/ICustomerDetailsView.cs
|
||||
- Common/DTS.CommonCore/Interface/CustomerDetails/ICustomerDetailsViewModel.cs
|
||||
generated_at: "2026-04-17T16:36:39.753469+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "68517ff654ee10bc"
|
||||
---
|
||||
|
||||
# Documentation: Customer Details Interfaces
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines two marker interfaces, `ICustomerDetailsView` and `ICustomerDetailsViewModel`, which establish the View and ViewModel contracts for a Customer Details feature within an MVVM (Model-View-ViewModel) architecture. These interfaces extend base framework types (`IBaseView` and `IBaseViewModel`) without adding additional members, serving primarily as type identifiers for dependency injection, navigation, or view-binding purposes within the DTS.CommonCore system.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `ICustomerDetailsView`
|
||||
**Namespace:** `DTS.Common.Interface`
|
||||
**Declaration:**
|
||||
```csharp
|
||||
public interface ICustomerDetailsView : IBaseView { }
|
||||
```
|
||||
**Description:** A marker interface representing the View component for customer details. Inherits from `IBaseView` (defined in `DTS.Common.Base`). Declares no additional members beyond its base interface.
|
||||
|
||||
---
|
||||
|
||||
### `ICustomerDetailsViewModel`
|
||||
**Namespace:** `DTS.Common.Interface`
|
||||
**Declaration:**
|
||||
```csharp
|
||||
public interface ICustomerDetailsViewModel : IBaseViewModel { }
|
||||
```
|
||||
**Description:** A marker interface representing the ViewModel component for customer details. Inherits from `IBaseViewModel` (defined in `DTS.Common.Base`). Declares no additional members beyond its base interface.
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- Both interfaces are empty marker interfaces; any invariants are inherited from their respective base interfaces (`IBaseView` and `IBaseViewModel`).
|
||||
- **Unclear from source:** The specific contracts, properties, or methods guaranteed by `IBaseView` and `IBaseViewModel` are not defined in the provided source files.
|
||||
|
||||
---
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
### This module depends on:
|
||||
- `DTS.Common.Base` namespace
|
||||
- `IBaseView` — base interface for `ICustomerDetailsView`
|
||||
- `IBaseViewModel` — base interface for `ICustomerDetailsViewModel`
|
||||
|
||||
### What depends on this module:
|
||||
- **Unclear from source alone.** Consumers would typically include:
|
||||
- Concrete View implementations (e.g., WPF windows, pages, or user controls implementing `ICustomerDetailsView`)
|
||||
- Concrete ViewModel implementations implementing `ICustomerDetailsViewModel`
|
||||
- DI container registrations or navigation service configurations
|
||||
|
||||
---
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
- **Empty marker interfaces:** Neither interface defines any members. All functionality must come from the base interfaces (`IBaseView`, `IBaseViewModel`) or be added via extension methods elsewhere in the codebase.
|
||||
- **No explicit contract:** Without visibility into `IBaseView` and `IBaseViewModel`, the actual capabilities and requirements of these interfaces cannot be determined from the provided source.
|
||||
- **Naming convention:** The interfaces follow a strict naming pattern (`ICustomerDetailsView` / `ICustomerDetailsViewModel`) suggesting a paired relationship, but this pairing is not enforced at the type level.
|
||||
Reference in New Issue
Block a user