{
  "version": 1,
  "fileId": "file:qt46oq:webplatformservice-cs",
  "fingerprint": "1y7wfm0",
  "path": "NexusReader.Web.Client/Services/WebPlatformService.cs",
  "absolutePath": "c:/Users/micht/source/repos/Nexus.Reader/src/NexusReader.Web.Client/Services/WebPlatformService.cs",
  "shortLabel": "WebPlatformService",
  "longLabel": "NexusReader.Web.Client/Services/WebPlatformService.cs",
  "purpose": "Concrete Web platform implementation of IPlatformService for the Blazor Web client: exposes device context and a vibration API via JS interop, returning FluentResults for error propagation.",
  "classification": {
    "role": "service",
    "layer": "infrastructure",
    "confidence": 0.8,
    "evidence": [
      "Service naming pattern",
      "Application/service path heuristic",
      "Implements IPlatformService (line 7)",
      "Uses IJSRuntime to call browser APIs (line 23)",
      "Provides platform-specific behaviors (vibrate, device context)"
    ]
  },
  "className": "WebPlatformService",
  "domainConcepts": [
    "DeviceContext",
    "DeviceType",
    "DisplayOrientation"
  ],
  "patterns": [
    "Platform Abstraction",
    "Adapter (JS interop adapter)"
  ],
  "keyDetails": "Provides browser-specific platform features for the Blazor client via IJSRuntime with simple try/catch error mapping to FluentResults; default device type is Desktop and vibrations call navigator.vibrate.",
  "coverage": {
    "symbolCount": 5,
    "executableSymbolCount": 4,
    "executableSymbolsWithControlFlowCount": 4,
    "groundedEdgeCount": 5,
    "unresolvedReferenceCount": 7,
    "controlFlowFragmentCount": 4,
    "unresolvedJumpCount": 0,
    "unsupportedConstructCount": 0,
    "controlFlowCoverage": 1,
    "requiredDiagramCount": 2,
    "generatedDiagramCount": 3,
    "missingRequiredDiagramCount": 0
  }
}