@* WP6 "Browse device…" re-target for the v3 /raw tree. Opens a live driver-browse session against the merged Driver+Device config (endpoint lives in DeviceConfig in v3), renders the shared DriverBrowseTree in multi-select mode, and commits the selected leaves as raw Tag rows under the target Device/TagGroup via IRawTreeService.ImportTagsAsync. Each selected leaf's driver reference is written into the driver-typed TagConfig as an address field (NOT identity — identity is the RawPath). An opt-in toggle mirrors the captured browse-folder nesting onto nested TagGroups. Visibility is @bind-Visible; a successful commit raises OnSaved so the host refreshes the tree. Two-tier browse gate (reused from BrowserSessionService): a bespoke IDriverBrowser (OpcUaClient, Galaxy) wins; otherwise the universal DiscoveryDriverBrowser serves any driver whose ITagDiscovery reports SupportsOnlineDiscovery (AbCip/TwinCAT/FOCAS); otherwise browse is unavailable and the modal grays out with a tooltip. *@ @implements IAsyncDisposable @using ZB.MOM.WW.OtOpcUa.AdminUI.Browsing @using ZB.MOM.WW.OtOpcUa.AdminUI.Components.Shared.Drivers @using ZB.MOM.WW.OtOpcUa.AdminUI.Uns @using ZB.MOM.WW.OtOpcUa.Commons.Browsing @inject IBrowserSessionService BrowserService @inject IRawTreeService Svc @inject RawTagCsvExportReader ExportReader @if (Visible) {