## PR 2/2 for #32037
- Implements update for the Linux setup experience from the end-user's
point of view (the "My device" page).
- Works in concert with the new endpoints implemented in
https://github.com/fleetdm/fleet/pull/32493
- My device page calls a new endpoint to get in-progress setup
experience software installations. If there are any, the page is
replaced with a "Setting up your device" page
- The UI polls this endpoint until all such installations are either
successful or failed (including canceled)
- Setting up your device page includes a table displaying the name and
status of each software installation
- Once all installations are finished (succeed/fail), renders the
regular My device page
- Add a handler for the new API call for relevant tests

## Testing
Can use [this branch with fake
data](https://github.com/fleetdm/fleet/tree/32037-end-user-fake-data) to
help test this PR
- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated automated tests - additional tests coming in
follow-up
- [x] QA'd all new/changed functionality manually
---------
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
For #29478, sans GitOps.
---------
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
Co-authored-by: Konstantin Sykulev <konst@sykulev.com>
## Issue
Closes#31629
## Description
- Added temporary "Updated" status requires a new UI status and to check
refetch time stamps against `last_install` WITH updates available to
ensure showing "Updated" instead of "Updates available'
- wrote tests
- Added temporary "Installed" status requires a new UI status and to
check refetch time stamps against `last_install` to ensure "installed"
vs. "whatever other status would show"
- wrote tests
- Added temporary "---" status requires a new UI status and to check
refetch time stamps against `last_uninstall` to ensure "---" vs.
"whatever other status would show"
- wrote tests
- Added tooltips to all 3 temporary statuses to ensure users know it's a
temporary status "Fleet successfully [installed/uninstalled/updated]
software and is fetching latest software inventory."
## Screenrecording of mini feature
It works!
https://fleetdm.zoom.us/clips/share/6EPbQs2_R4mqWaqbNpd1iQ
All 3 temporary statuses (watch in 2x)
https://fleetdm.zoom.us/clips/share/iRSdgb5HQ6uEJv3wkhmXtA
# Checklist for submitter
## Testing
- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
---------
Co-authored-by: Ian Littman <iansltx@gmail.com>
# #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:

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

### Host software library, non-VPP:

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

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

### 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>
relates to #25067, #25061
includes two fixes for the scoped software via labels feature:
1. update the delete label modal copy
2. don't show the confirm changes modal if only the self service value
has changed.
- [x] Manual QA for all new/changed functionality
relates to #24828, #24792
This updates the UI activities software including a new software details
show details modal:
<img width="825" alt="image"
src="https://github.com/user-attachments/assets/3dd3019b-c94c-427b-9c52-d678a311c4bc"
/>
It also includes tests and api integration work for the creating and
reading of scoped software via labels.
> NOTE: still need to do the editing which we can do in another PR when
the API is ready.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
relates to #23137, #23136
implements to the rest of the UI for automatically creating fleet
policies when adding a fleet maintained app. Also includes the API
changes needed for this which include changing the `GET
/software/titles` and `GET /software/titles/:id` endpoints to include
the `automatic_install_policies` data.
UI added includes:
**Adding tag for automatic install software titles**

**Adding modal to show the policies associated with that software
title**

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
---------
Co-authored-by: Jahziel Villasana-Espinoza <jahziel@fleetdm.com>
relates to #23136
This is the UI for the creating of policies when adding fleet maintained
software. This includes only the creating of the policy and there will
be another PR for viewing more information on the software titles
details page.
**new install type options. this determines if a policy should be
created or not.**

there are also some new icons for the software titles.
- [] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
#22269
# 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] Added/updated tests
- [x] Manual QA for all new/changed functionality
This PR fixes two issues:
1. `PUT /setup_experience/software` will now take the correct json body
of `software_title_ids` to update the software to install during setup
experience
2. include the `install_during_setup` attribute on the software titles
software package results from `GET /setup_experience` endpoint
## #22656
- Tighten software `source` and `browser` types
- Include package extensions, when present, in help text
<img width="1271" alt="Screenshot 2024-10-07 at 3 09 47 PM"
src="https://github.com/user-attachments/assets/d401498b-41d0-4afe-8bca-4e52b821939c">
- [x] Manual QA for all new/changed functionality
---------
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
#22473
- [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] Added/updated tests
- [X] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [x] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
---------
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
## #22088
- Hosts page filters were using the same type that had been updated with
additional, more granular options, but the filters for that page still
only support the aggregate options "install", "pending" or "failed".
Updated hosts page to use new type `SoftwareAggregateStatus` to maintain
functionality.
- Note that this does _not_ fix this related but distinct _released_
bug: https://github.com/fleetdm/fleet/issues/22136
- [x] Manual QA for all new/changed functionality
---------
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
## Front end for #19551
Feature branch merge to `main` – all work as been previously approved in
individual PRs to the feature branch.
- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
---------
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
## 1st part of #20467
- Update types/interfaces
- Update MDM copy from "macOS" to "Apple"
- Update MDM file, variable, classnames from "Mac" to "Apple"
- Enable refetch for iPads and iPhones
<img width="1341" alt="Screenshot 2024-07-23 at 4 14 46 PM"
src="https://github.com/user-attachments/assets/3c322680-3c7f-40eb-a9da-6a14d0f1a358">
# 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 tests
- [x] Manual QA for all new/changed functionality
---------
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>