Repository navigation
feat(devices): show discovered devices in a read-only side pane - #3670
ShradhaGupta31 wants to merge 5 commits into
Conversation
Clicking a device on the Discovered tab opened the device page, which talks to Intel AMT over WS-MAN. A discovered device has been found by rpc-go and reported to console but never activated, so console has no credentials for it and that page could never work. Discovered rows now open a side pane instead; managed rows still open the device page. The pane shows what rpc-go reported, straight from the deviceInfo console already returns with the device list, so no new API call is needed. The hostname heads the pane with the GUID beneath it. Details are grouped as platform (processor and adapters), Intel AMT (with a Unique Platform ID subsection and the trusted certificate hashes in a collapsible panel), operating system, and network (Intel AMT and OS interfaces as nested subsections). Fields that were not reported are left out. The pane renders through the CDK overlay so the side nav cannot cover it, closes on Escape, returns focus to the row, follows the page direction for RTL languages, and respects reduced motion. Rows are now keyboard-activatable, and the per-cell navigate handlers are collapsed into one row handler. DeviceInfo gains the optional fields console's DTO already sends. An empty friendlyName no longer renders as "()" next to the hostname. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Mike Johanson <michael.johanson@intel.com>
Resolve conflicts in devices.component.html and devices.component.ts by keeping main's versions and re-applying the discovered-device pane changes (row click/keyboard handler, pane overlay template, openDevice, closePane, pane refresh on reload and reset on tab change). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟡 Changes recommended
Reported fields can disappear, focus and direction handling need correction, and fixture-dependent tests are not restricted to isolated runs.
7 open issues
Isolate fixture-dependent tests from live Console deployments · New Synchronize pane direction with language changes · New Restore focus to the current row after device refresh · New Preserve LMS version when installation status is omitted · New Display both OS name and distribution · New Preserve named network adapters when pruning empty sections · New Avoid claiming discovered devices were never activated · New
What changed in this PR
Adds a read-only discovery-details pane for Console devices, supporting #3612 without making Intel AMT requests that require management credentials.
Changes:
- Opens discovered devices in an overlay pane while preserving managed-device navigation.
- Displays grouped discovery details with localized labels, keyboard interaction, RTL styling, and reduced-motion support.
- Extends discovery models and adds unit and end-to-end coverage.
| File | Description |
|---|---|
src/models/models.ts |
Adds optional discovery fields and network interfaces. |
src/assets/i18n/sv.json |
Adds Swedish pane translations. |
src/assets/i18n/ru.json |
Adds Russian pane translations. |
src/assets/i18n/nl.json |
Adds Dutch pane translations. |
src/assets/i18n/ja.json |
Adds Japanese pane translations. |
src/assets/i18n/it.json |
Adds Italian pane translations. |
src/assets/i18n/he.json |
Adds Hebrew pane translations. |
src/assets/i18n/fr.json |
Adds French pane translations. |
src/assets/i18n/fi.json |
Adds Finnish pane translations. |
src/assets/i18n/es.json |
Adds Spanish pane translations. |
src/assets/i18n/en.json |
Adds English pane labels and explanations. |
src/assets/i18n/de.json |
Adds German pane translations. |
src/assets/i18n/ar.json |
Adds Arabic pane translations. |
src/app/devices/discovered-device-pane/discovered-device-pane.component.ts |
Builds discovery sections and handles pane focus. |
src/app/devices/discovered-device-pane/discovered-device-pane.component.spec.ts |
Tests detail rendering and pane interactions. |
src/app/devices/discovered-device-pane/discovered-device-pane.component.scss |
Styles the responsive pane and animations. |
src/app/devices/discovered-device-pane/discovered-device-pane.component.html |
Renders grouped details and certificate hashes. |
src/app/devices/devices.component.ts |
Integrates overlay lifecycle and device selection. |
src/app/devices/devices.component.spec.ts |
Tests navigation, refresh handling, and focus restoration. |
src/app/devices/devices.component.scss |
Adds row indicators and pane exit animation. |
src/app/devices/devices.component.html |
Adds row activation and pane bindings; hides empty friendly names. |
cypress/e2e/integration/device/discovered-pane.spec.ts |
Covers pane opening, mobile layout, closing, and managed navigation. |
Review effort: Balanced
d05303e to
d8df64a
Compare
- Show isElevated and heciAvailable, which console reports in deviceInfo since device-management-toolkit/console#1306 - Translate the fixed values rpc-go reports: control mode reuses the devices table labels, TLS mode reuses the profile tlsModes labels, and new labels cover TLS disabled, DHCP mode and link status - Theme the pane and the row it opens from with Material 3 system tokens so they follow light/dark mode and the chosen palette - Drop a redundant optional chain that triggered NG8107 Signed-off-by: ShradhaGupta31 <shradha.gupta@intel.com>
|
@ShradhaGupta31 : Tried out this PR for the discovery part. Most of the functionality seems to be working good. Few Observations
|
@sudhir-intc - Thanks for testing, I have fixed these issues in the latest commits. Pls check. |
- fix the device data refresh issue Signed-off-by: ShradhaGupta31 <shradha.gupta@intel.com>
@ShradhaGupta31 : thanks for working on the observations I have reported. |


Clicking a device on the Discovered tab opened the device page, which talks to Intel AMT over WS-MAN. A discovered device has been found by rpc-go and reported to console but never activated, so console has no credentials for it and that page could never work. Discovered rows now open a side pane instead; managed rows still open the device page.
The pane shows what rpc-go reported, straight from the deviceInfo console already returns with the device list, so no new API call is needed. The hostname heads the pane with the GUID beneath it. Details are grouped as platform (processor and adapters), Intel AMT (with a Unique Platform ID subsection and the trusted certificate hashes in a collapsible panel), operating system, and network (Intel AMT and OS interfaces as nested subsections). Fields that were not reported are left out.
The pane renders through the CDK overlay so the side nav cannot cover it, closes on Escape, returns focus to the row, follows the page direction for RTL languages, and respects reduced motion.
Rows are now keyboard-activatable, and the per-cell navigate handlers are collapsed into one row handler. DeviceInfo gains the optional fields console's DTO already sends. An empty friendlyName no longer renders as "()" next to the hostname.
fixes: #3612
PR Checklist
What are you changing?
Anything the reviewer should know when reviewing this PR?
If the there are associated PRs in other repositories, please link them here (i.e. device-management-toolkit/repo#365 )