fleet/frontend/components
jacobshandling 096d67dd5a
Linux disk encryption: frontend changes, backend missing private key errors, remove disk encryption endpoints dependence on MDM being enabled (#23714)
## Addresses #22702,  #23713, #23756, #23746, #23747, and #23876
_-Note that much of this code as is will render as expected only once
integrated with the backend or if manipulated manually for testing
purposes_

**Frontend**:
- Update banners on my device page, tests
- Build new logic for calling endpoint to trigger linux key escrow on
clicking `Create key`
- Add `CreateLinuxKeyModal` to inform user of next steps after clicking
`Create key`
- Update banners on host details page, tests
- Update the Controls > OS settings section with new logic related to
linux disk encryption
- Expect and include counts of Linux hosts in aggregate disk encryption
stats UI
- Add "Linux" column to the disk encryption table
- Show disk encryption related UI for supported Linux platforms
- TODO: confirm platform string matching functionality in manual e2e
testing
- Expand capabilities of `SectionHeader` component, apply to new UI
- Flash "missing private key" error, with clickable link, when trying to
update disk encryption enabled while no server private key is present.
- TODO: QA this once other endpoints on Controls > Disk encryption are
enabled even when MDM not turned on
- Update Disk encryption key modal copy


-Other TODO:
  - Confirm when integrated with API:
    - Aggregate disk encryption counts
    - Disk encryption table Linux column
    - Show disk encryption key action on host details page when expected
    - Opens Disk encryption key modal, displays key as expected
  
**Backend**:
- For "No team" and teams, error when trying to update disk encryption
enabled while no server private key is present.
- Remove requirement of mdm being enabled for use of various endpoints
related to Linux disk encryption
- Update tests


_________
**Host details and my device page banners**

![banners](https://github.com/user-attachments/assets/b76fbfbd-0969-40eb-b8b1-9fd0d4fd0f4f)

**Create key modal**
<img width="1799" alt="create-key-modal"
src="https://github.com/user-attachments/assets/81a55ccb-b6b9-4eb6-b2ff-a463c60724c0">

**Enabling disk encryption**

![turning-on-enforcement](https://github.com/user-attachments/assets/005010b9-2238-46f8-9579-f07823898a78)

**Disk encryption: Fleet free**
<img width="1912" alt="free"
src="https://github.com/user-attachments/assets/9f9cace3-8955-47c2-87d9-24ff9387ac1a">

**Custom settings: turn on MDM**
<img width="1912" alt="turn on mdm"
src="https://github.com/user-attachments/assets/4d3ad47b-4035-4d93-86f0-dc2691b38bb4">

**Device status indicators**

![host-status-indicators](https://github.com/user-attachments/assets/5fc72c1e-816b-45b3-a650-5c1fcc48f09e)

**Encryption key action and modal**

![de-key-action-and-modal](https://github.com/user-attachments/assets/632f7b2c-c07e-4e30-87ef-e6437ae42a78)



- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
  - [ ] Full e2e testing to do when integrated with backend

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
2024-11-20 11:58:47 -08:00
..
ActionsDropdown Fleet UI: Add script content modal to UI in various places (#23461) 2024-11-06 12:48:11 -05:00
ActivityDetails/InstallDetails Fleet UI: Add script content modal to UI in various places (#23461) 2024-11-06 12:48:11 -05:00
AddHostsModal Set minimum height for the Add hosts > ChromeOS > Policy for extension field to avoid scrollbar (#23642) 2024-11-11 10:15:47 -08:00
App UI - Improve UX of Flash messages (#22836) 2024-10-22 10:52:20 -07:00
AuthenticationFormWrapper UI – refactor forms and form fields (#16159) 2024-01-18 10:48:44 -05:00
Avatar Frontend tech debt: Cleanup {} around strings (#16592) 2024-02-23 09:57:18 -05:00
AvatarTopNav Frontend tech debt: Cleanup {} around strings (#16592) 2024-02-23 09:57:18 -05:00
BackLink UI – Host query report page (#15511) 2023-12-08 16:54:24 -08:00
buttons FE: 22916 followup code cleanup (#23306) 2024-10-31 11:14:55 -04:00
Card implement add Vpp software UI to new add software pages (#22264) 2024-09-20 16:15:10 +01:00
ClickableUrls UI – Make download CSR "missing private key" error link clickable (#21515) 2024-08-23 08:20:36 -07:00
ClickOutside
CustomLink Fleet UI: Disabled forms cannot be accessed via keyboard (#23727) 2024-11-13 15:38:28 -05:00
DataError UI - improve comment syntax for better VSCode hints (#20864) 2024-07-31 11:06:02 -07:00
DataSet UI – Make spacing between DataSet label and value on Firefox consistent with other browsers (#20366) 2024-07-11 10:18:48 -07:00
DeviceUserError Frontend: Cleanup 42 js warnings (#16219) 2024-01-23 09:16:10 -05:00
Editor Fleet UI: Ability to Esc out of SQL/YML editors (#23201) 2024-10-25 10:17:31 -04:00
EmailTokenRedirect Merge branch 'main' into 15919-vulnerabilities-page 2024-02-22 16:27:15 -06:00
EmptyTable Fleet UI: Improve CVE search responses (#21286) 2024-08-14 11:41:56 -04:00
EnrollSecrets Fleet UI: Update delete secret copy (#20048) 2024-06-27 10:40:49 -04:00
FileDetails Update add software UI to move software package modal into new tabbed layout (#22553) 2024-10-02 10:43:20 -05:00
FileProgressModal Update add software UI to move software package modal into new tabbed layout (#22553) 2024-10-02 10:43:20 -05:00
FileUploader fix file uplader being shown twice when clicking button (#23297) 2024-10-28 18:53:03 +00:00
FlashMessage UI - Improve UX of Flash messages (#22836) 2024-10-22 10:52:20 -07:00
FleetAce Fleet UI: Ability to Esc out of SQL/YML editors (#23201) 2024-10-25 10:17:31 -04:00
FleetMarkdown Frontend: Cleanup 42 js warnings (#16219) 2024-01-23 09:16:10 -05:00
forms Fix teams modal only showing two options (#23889) 2024-11-20 11:13:46 -06:00
Graphic Create new ListItem and FileUploader component and use on controls page (#15103) 2023-11-13 15:30:22 -08:00
graphics Fleet UI: Improve CVE search responses (#21286) 2024-08-14 11:41:56 -04:00
HumanTimeDiffWithDateTip [Unreleased tiny bugs] Vuln feature: Tooltip locations, requested copy change (#17536) 2024-03-11 15:39:33 -04:00
Icon Icons improvements (making frontend consistent with Figma component library) (#14185) 2023-10-31 16:06:38 +00:00
icons Fleet UI: Checkbox and accessibility styling, tab through select targets (#22943) 2024-10-17 10:01:23 -04:00
InfoBanner Linux disk encryption: frontend changes, backend missing private key errors, remove disk encryption endpoints dependence on MDM being enabled (#23714) 2024-11-20 11:58:47 -08:00
InheritedBadge Fleet UI: Merge queries/policies tests and polish (#18737) 2024-05-07 15:44:55 -04:00
LastUpdatedText Add host's next maintenance window to the hosts/{id} and hosts/identifier/{identifier} endpoints, and render that data on the host details page (#19820) 2024-06-28 10:51:13 -07:00
LicenseExpirationBanner Add UI banner when VPP token is about to expire/has expired (#20734) 2024-07-26 15:39:27 +01:00
LinkWithContext Install software setup experience UI (#22651) 2024-10-09 16:09:38 +01:00
ListItem Fleet UI: Add script content modal to UI in various places (#23461) 2024-11-06 12:48:11 -05:00
LiveQuery Fleet UI: Checkbox and accessibility styling, tab through select targets (#22943) 2024-10-17 10:01:23 -04:00
LogDestinationIndicator [tiny released bugs] Fleet UI: Fix 2 typos that include a random character (#17908) 2024-03-27 16:17:16 -04:00
MainContent feat: enable multiple ABM and VPP tokens (#21693) 2024-08-29 18:51:46 -04:00
MDM feat: enable multiple ABM and VPP tokens (#21693) 2024-08-29 18:51:46 -04:00
Modal Fix teams modal only showing two options (#23889) 2024-11-20 11:13:46 -06:00
modals/ShowQueryModal Frontend tech debt: Cleanup {} around strings (#16592) 2024-02-23 09:57:18 -05:00
NotSupported
Pagination Disable final Next when no more results; cleanup (#20517) 2024-07-16 14:28:35 -05:00
PlatformCompatibility Frontend of iOS/iPadOS as platforms/labels (#20157) 2024-07-09 09:18:00 -04:00
PlatformSelector Fleet UI: AI autofill policy description and resolution (#18646) 2024-05-02 11:57:00 -05:00
PremiumFeatureIconWithTooltip
PremiumFeatureMessage feat: enable multiple ABM and VPP tokens (#21693) 2024-08-29 18:51:46 -04:00
ProbabilityOfExploit Fleet UI: /software/vulnerabilities page (#16676) 2024-02-15 10:35:43 -07:00
queries Fleet UI: Accessibility button actions, tabbing (#22916) 2024-10-25 11:02:52 -04:00
QueryFrequencyIndicator Fleet UI: Tooltip shows dynamically on truncated text only (#20420) 2024-07-15 12:08:26 -04:00
Sandbox Frontend tech debt: Cleanup {} around strings (#16592) 2024-02-23 09:57:18 -05:00
SectionHeader Linux disk encryption: frontend changes, backend missing private key errors, remove disk encryption endpoints dependence on MDM being enabled (#23714) 2024-11-20 11:58:47 -08:00
side_panels Fleet UI: Close modals with no CTA, and query sidebar, using enter key (#22907) 2024-10-16 11:24:08 -04:00
SidePanelContent [small unreleased bug] Fleet UI: Fix Show schema button location (#18284) 2024-04-17 13:48:48 -04:00
Spinner
StackedWhiteBoxes UI – refactor forms and form fields (#16159) 2024-01-18 10:48:44 -05:00
StatusIndicator feat: enable multiple ABM and VPP tokens (#21693) 2024-08-29 18:51:46 -04:00
StatusIndicatorWithIcon Icons improvements (making frontend consistent with Figma component library) (#14185) 2023-10-31 16:06:38 +00:00
TableContainer chore: dump sql schema 2024-10-25 18:01:19 -04:00
TabsWrapper Queued scripts feature (#16300) 2024-01-29 11:37:54 -03:00
TeamsDropdown Fleet UI: Fix unreleased bug of team dropdown width being static 80px (#23923) 2024-11-18 16:35:51 -05:00
TeamsHeader Fleet UI: No team view for software pages (#20641) 2024-07-30 13:20:13 -04:00
Textarea fix formatting of script output (#15757) 2023-12-21 11:17:03 -06:00
TooltipTruncatedText Fleet UI: Tooltip shows dynamically on truncated text only (#20420) 2024-07-15 12:08:26 -04:00
TooltipWrapper Fleet UI: Add SCEP integration to MDM settings (#22275) 2024-10-15 09:23:59 -04:00
top_nav Fleet UI: Accessibility button actions, tabbing (#22916) 2024-10-25 11:02:52 -04:00
TurnOnMdmMessage better messaging for setup experience when mdm is turned off (#23008) 2024-10-21 12:28:44 +01:00
ViewAllHostsLink Fleet UI: Tabbing through hdp tabs and global view all host links fixed (#23101) 2024-10-23 09:24:42 -04:00
YamlAce Fleet UI: Ability to Esc out of SQL/YML editors (#23201) 2024-10-25 10:17:31 -04:00
generate