Commit Graph
58 Commits
Author SHA1 Message Date
c9e66b221e Frontend: Lint warning cleanup part 1 (#43411)
## Issue
- First batch of @iansltx 's work of cleaning up lint warnings #43387 

## Description
- Quick PR review and grabbed as many confirmed low-risk quick wins as I
could `git checkout lint-cleanup <file/path/1> <file/path/2>`

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Release Notes

This release contains internal code improvements with one minor UI
tweak:

* **Style**
* Dropdown menu background color adjusted for clearer contrast in action
lists
* **Refactor**
* Improved type safety across the codebase with stricter TypeScript
annotations
  * Removed unused imports and constants to reduce code clutter
* Enhanced React hook dependency arrays for more consistent component
behavior
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Rachel Perkins <rachel@Rachels-MacBook-Pro.local>
Co-authored-by: Ian Littman <iansltx@gmail.com>
2026-04-10 19:49:52 -05:00
Magnus Jensen 0d723adf4c more done to close frontend pieces (#43113)
Follow up PR from QA'ing https://github.com/fleetdm/fleet/issues/41756
2026-04-07 09:41:52 -05:00
Victor Lyuboslavsky e9ee26e70d Added Android cert activity logging (#42608)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #37546 

Noah approved design here:
https://fleetdm.slack.com/archives/C09HG9VMRSS/p1774895365069069?thread_ts=1774647818.613419&cid=C09HG9VMRSS
Docs: https://github.com/fleetdm/fleet/pull/42609

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.

## Testing

- [x] QA'd all new/changed functionality manually


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Certificate installation activity logging for Android hosts (success &
failure)
* "Installed certificate" activity type displayed in host activity feed
with status
* Host activity card enabled on Android host details page to show
installs
  * Detailed install modal with error detail reveal when failures occur
  * Upcoming activities tab disabled for Android hosts where unsupported
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-31 16:26:39 -05:00
RachelElysia 9bfef5dec3 Fleet UI: Remove incorrect copy (#42586)
## Issue
Closes #40683 

## Description
- Removed from 2 modals that were rendering it

## Testing

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
2026-03-28 15:27:28 -05:00
RachelElysia 36d03596f4 Fleet UI: MDM Status modal (#42379) 2026-03-27 14:43:26 -04:00
e1fc1b08a8 Update modal 'Done' buttons to say 'Close' (#41751)
## Summary

- Changed all modal "Done" dismiss/close button labels to "Close" across
48 frontend component files
- Updated instructional text in `AutoEnrollMdmModal` that referenced the
"Done" button to say "Close" instead
- Updated 7 test files to assert "Close" instead of "Done" for modal
button names

## Excluded (intentionally not changed)

- `LiveResultsHeading.tsx` — "Done" button is a page-level navigation
action, not a modal dismiss
- `AddAbmModal.tsx` — Instructional text referencing Apple Business
Manager's "Done" button
- `Calendars.tsx` — Instructional text referencing Google Calendar's
"Done" button
- `ModalFooter.stories.tsx` — Storybook demo example

Built for
[Mel](https://fleetdm.slack.com/archives/D0AKX7DJFCN/p1773674157011109?thread_ts=1773673149.649299&cid=D0AKX7DJFCN)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: melpike <mel@fleetdm.com>
Co-authored-by: melpike <79950145+melpike@users.noreply.github.com>
2026-03-23 09:59:18 -06:00
Carlo 04980e8a5b Improve VPP errors for large install failures (#41997)
Fixes #39066
2026-03-20 15:37:42 -04:00
RachelElysia 5724342147 Fleet UI: Show installed status icon if installed (#41358)
## Issue
Closes #39983 

## Description

This is so long because installation details are within 3 modals and so
all 3 had to be updated:

- SoftwareInstallDetailsModal
  - Updated variables and naming for readability
  -  Added icons to tests
- `shouldShowInventoryVersions` will show if
`overrideFailedMessageWithInstalledMessage` (bug fix)
- SoftwareIpaInstallDetailsModal
  - Updated variables and naming for readability
  - Added icons to tests
  - Use reusable component `IconStatusMessage`
  -  Added pre-4.57 "pending" case just in case to match VPP
- Override icon to success icon if
`overrideFailedMessageWithInstalledMessage || isInstalledManual` (bug
fix)
- `shouldShowInventoryVersions` will show if
`overrideFailedMessageWithInstalledMessage` (bug fix)
- VPPInstallDetailsModal
  - Updated variables and naming for readability
  - TODO: Create tests to add icons to
  -  Use reusable component `IconStatusMessage`
- Override icon to success icon if
`overrideFailedMessageWithInstalledMessage || isInstalledManual` (bug
fix)
- `shouldShowInventoryVersions` will show if
`overrideFailedMessageWithInstalledMessage` (bug fix)

## Screenshots

### BEFORE


https://github.com/user-attachments/assets/3472daef-47bd-4dbb-9ce9-afbf3d13302b



### AFTER


https://github.com/user-attachments/assets/c3212f58-6172-4437-9d60-76c42b98f451


## Testing

- [x] Added/updated automated tests
 Tests already exist, ensured they still passed

- [x] QA'd all new/changed functionality manually
2026-03-12 16:56:48 -05:00
jacobshandling 0db86ef2f1 UI housekeeping: Update Modal.children from JSX.Element to React.ReactNode, remove empty fragment wrappers (#41394)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Simplified modal structures across multiple dialog components for
improved code maintainability.
* Enhanced modal component's flexibility to support broader content
types.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-10 15:30:55 -07:00
RachelElysia 6bbac7cd83 Fleet UI: Script-only package support for macOS (#39626) 2026-02-11 12:18:32 -05:00
RachelElysia efeb90910d Fleet UI: installed sw in inventory do not show failures (#38458) 2026-02-02 12:19:55 -05:00
RachelElysia 38e27970af Fleet UI: Microsoft.CompanyPortal > Company Portal (#38958) 2026-01-29 20:59:27 -05:00
RachelElysia 6edf96291f Fleet UI: Fix decoding mdm output (#37608) 2025-12-24 09:22:07 -05:00
Konstantin SykulevandScott Gress 99a56e2514 Added messaging around VPP update failures (#37083)
Due to a fundamental OS limitation with macos, when trying to update an
application via mdm, the os cannot replace app files while the app is
running. When this state is detected explicitly raise an error message
stating that the application needs to be closed prior to updating.

**Related issue:** Resolves #31972

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)

## Testing

- [x] Added/updated automated tests
- [x] Where appropriate, [automated tests simulate multiple hosts and
test for host
isolation](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/reference/patterns-backend.md#unit-testing)
(updates to one hosts's records do not affect another)
- [ ] QA'd all new/changed functionality manually

---------

Co-authored-by: Scott Gress <scottmgress@gmail.com>
2025-12-18 21:02:28 -06:00
Sarah Gillespie 589f5e67cb Update UI for command results in host activity feed (#37417) 2025-12-18 11:52:25 -06:00
RachelElysia 0dd7b6ce87 Fleet UI: Add, view, install Google Play Apps (#35177) 2025-11-14 13:24:41 -05:00
RachelElysia 4939979f55 Fleet UI: Return pre-install query output in Install Details modal (#35754) 2025-11-14 11:35:03 -05:00
RachelElysia 3efeeb1ad0 Fleet UI: Ability to edit software display names (#34872) 2025-11-07 09:59:30 -05:00
RachelElysia 9f174b7cdc Fleet UI: Host details activity script package uses correct modal (#35050) 2025-10-31 10:55:16 -04:00
RachelElysia 03ddd18758 Fleet UI: Hide install modals' details button if no details to display (#34954) 2025-10-29 16:04:44 -04:00
RachelElysia f83b8ca064 Fleet UI: IPA - ability to upload, call mdm command API for activity details (#34886)
resolves #34826 

## Issue
Followup for #34012 

## Description
- Fix client side error happening when uploading Custom Package > IPA 
- Fix IPA details modal to call mdm command API instead of software
install result API
2025-10-28 17:48:10 -04:00
RachelElysia e1b325130a Fleet UI: IPA custom packages (#34220) 2025-10-28 12:44:17 -04:00
RachelElysia b91d13416e Fleet UI: Icon + status message refactored as a component (#34442) 2025-10-24 09:38:59 -04:00
RachelElysiaandCarlo DiCelico 1ef91fe4e3 Feature: Script only package e2e followup (#34271)
Co-authored-by: Carlo DiCelico <carlo@fleetdm.com>
2025-10-17 10:54:00 -04:00
RachelElysia 17245ab0ac Fleet UI: Payload-free software installs (#33979) 2025-10-15 09:41:43 -04:00
RachelElysia f21e9f67b2 Fleet UI: Remove install tooltip and add timestamp to InstallDetails modal (#33991) 2025-10-08 13:30:58 -04:00
RachelElysia 6edc78d8ec Fleet UI: Resurface post-install script output (#33765) 2025-10-07 11:02:39 -04:00
RachelElysia 7d51f646dc Fleet UI: Surface timestamp VPP device user page, remove vpp acknowledged tooltip (#32732) 2025-09-08 14:14:52 -04:00
0d29f2bfc0 Add custom software icons (#32652)
For #29478, sans GitOps.

---------

Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
Co-authored-by: Konstantin Sykulev <konst@sykulev.com>
2025-09-05 17:31:03 -05:00
RachelElysia b71df4f223 FE: Cleanup lint warnings (#32086) 2025-08-21 16:21:45 -05:00
RachelElysia dae35c887b FE: Add tests to install/uninstall modals (#31992) 2025-08-19 09:04:07 -04:00
RachelElysia be928e2c19 Fleet UI: Fix VPP pending bugs (#31787) 2025-08-11 13:12:56 -04:00
RachelElysia 974bc00862 Fleet UI: Shows right status for vpp apps installed manually (#31674) 2025-08-08 11:05:54 -04:00
RachelElysia 9ac650c24c Fleet UI: Add back uninstall script content for uninstalls with no script output (#31669) 2025-08-06 15:34:11 -04:00
edf7bec845 UI: Make consistent and update the Install and Uninstall detail modals for VPP and non-VPP apps across the Fleet UI (#31420)
# #30860 

## Summary
* **New Features**
* Introduced dedicated modals for viewing install and uninstall details
for both VPP and non-VPP software, providing clearer and more consistent
information.
* Added support for displaying detailed install information for VPP host
software and improved handling of install status actions.
* Added an Inventory Versions modal to display detailed version history
for installed software on a host.

* **Improvements**
* Standardized and improved the design and behavior of install/uninstall
detail modals across the app.
* Refined callbacks and state management for launching modals from host
and self-service software tables.

* **Bug Fixes**
* Addressed issues with property naming and callback signatures in
install status handling.
* Addressed inconsistencies in displaying software details and status
across different components.

* **Refactor**
* Streamlined component props, callback signatures, and data models for
improved maintainability.
* Updated test cases and interfaces to align with the new modal and
callback structure.
* Removed legacy software details modal and related code, streamlining
the user interface.

* **Style**
* Updated modal and table styles for improved readability and
consistency.


## *Important note: Host software library modals for VPP apps currently
show only installed versions due to [an API bug that is being
addressed](https://github.com/fleetdm/fleet/issues/31459)


## Install details modal in various locations and states :

### Activity feeds (global, host details), non-VPP:

![ezgif-7af8221d19cd91](https://github.com/user-attachments/assets/bb90dcb6-6d99-455b-8e70-0cd905dd7b2d)

### Device user page self-service, non-VPP (with Retry functionality):

![ezgif-7d1b107f56dc16](https://github.com/user-attachments/assets/e4b91bf6-01bf-423e-9542-3ae4d2d17422)

### Host software library, non-VPP:

![ezgif-76c029bd028544](https://github.com/user-attachments/assets/931b6076-87d5-4e77-92ab-86fad323d396)

### Activity feeds (global, host details), VPP apps:

![ezgif-75eb0ebecb1893](https://github.com/user-attachments/assets/084eca68-4cf7-423a-8cb9-b14ea6d4c2d3)

### Device user page self-service, VPP apps (with Retry functionality):

![ezgif-728e4e8c2a595e](https://github.com/user-attachments/assets/969d1d49-b014-49a2-9c64-3c0dd88b05cc)

### Uninstall modal samples - TODO

- [x] Changes file added for user-visible changes in `changes/`

## Testing

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: RachelElysia <rachel@fleetdm.com>
2025-08-01 12:45:09 -07:00
Jahziel Villasana-Espinoza 1fced5184e update self service modals to use api data (#31094)
> Closes #31003 

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-07-21 14:13:46 -04:00
Jahziel Villasana-Espinoza da697eb0c4 update logic and copy in case of vpp verification failure (#30964)
> Closes #30938 

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-07-17 08:31:36 -04:00
RachelElysiaandIan Littman 933909f489 Fleet UI: VPP command copy includes command verification nuance (#30431)
## Issue
Closes #29893 

## Description
- Update text for VPP command for pending_install and failed_install to
include verification nuance
- Add related tests

## Note
- Original PR pointing to `vpp-verify-followup` but should be repointed
to `main` once that branch is merged in


# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-07-01 12:07:13 -05:00
RachelElysia 8fc1468d37 Fleet UI: Host details > Software > Library statuses clickable, add software button (#30318) 2025-06-30 13:26:01 -04:00
RachelElysia e16785f517 Fleet UI uninstall self service followup (#29407) 2025-06-06 15:40:52 -04:00
RachelElysia 7463fb18b4 Fleet Desktop: Update component level error states (#28816) 2025-05-12 09:25:09 -04:00
RachelElysia 03a2198bf6 Fleet UI: Pass device user to use correct device user API (#28782) 2025-05-05 09:16:38 -04:00
RachelElysia ea165b65e2 Fleet Desktop: Self-service search, status, errors updates (#27731) 2025-04-30 10:02:09 -04:00
RachelElysia 7f71866571 FE: Button renaming, better storybook view, remove unused code (#28245) 2025-04-16 09:56:09 -04:00
RachelElysia aa5d668893 Fleet UI (unreleased bugs): Related to code fields in modals (#28173) 2025-04-11 15:52:38 -04:00
RachelElysia ae94bc88c6 Fleet UI: Add textarea variant 'code' and apply to various modals (#27930) 2025-04-10 11:25:28 -04:00
RachelElysia 12ca927d43 Fleet UI: Fix overflow of software title in 2 more modals (#25294) 2025-01-09 13:42:58 -05:00
RachelElysia 576dcff1a7 Fleet UI: Add script content modal to UI in various places (#23461) 2024-11-06 12:48:11 -05:00
Ian Littman 98f2d15c59 Provide better error messages on 404s for install or uninstall results (#23106)
#22965

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-10-22 17:51:11 -05:00
Ian Littman 91eef00d05 Fall back to pending-outline when we see an unexpected or blank host software install status (#23069)
#23068

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-10-21 18:20:34 -05:00