Commit graph

284 commits

Author SHA1 Message Date
Dante Catalfamo
6393c284fa
Fixed inconsistent subtitle text style in Custom Settings (#32712)
#32273
2025-09-18 13:04:22 -04:00
jacobshandling
7085a731d6
UI: Labels page (#33079)
## For #29721 
- Build the new Labels page
- Forward to the Labels page after saving a label

### [Demo
video](https://drive.google.com/file/d/1iArnSiVn7CSwOpCrKEdO9HByHu9qga3L/view?usp=sharing)

<img width="1798" height="1082" alt="Screenshot 2025-09-17 at 4 00
55 PM"
src="https://github.com/user-attachments/assets/6a51f48c-07c3-44d9-b2bf-07025ffa61ed"
/>



- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-18 09:38:45 -07:00
jacobshandling
da98679a3d
UI: Windows setup experience > install software (#32934)
## For #32541
_This cannot be end-to-end tested until associated
[server](https://github.com/fleetdm/fleet/issues/32542) and
[agent](https://github.com/fleetdm/fleet/issues/32544) work is complete_
- Include windows as a valid platform with all logic for setup
experience > software install

IT Admin flow:

![ezgif-26a18af23eb78b](https://github.com/user-attachments/assets/da294e8d-6992-41fa-b1f5-9e7b9500b8b7)

- [x] Changes file added for user-visible changes in `changes/`
- [ ] QA'd all new/changed functionality manually

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-16 10:12:25 -07:00
jacobshandling
4b484dbfd1
UI: Add linux setup software end-user demo video, fix positioning (#32880)
- Add video asset
- Update component rendering it to have unique copy and video for each
platform
- Fix a [padding
issue](https://fleetdm.slack.com/archives/C084F4MKYSJ/p1757600659471109)
- Adjust vertical position of tab nav to compensate for library-specific
positioning

<img width="1505" height="1153" alt="Screenshot 2025-09-11 at 12 01
20 PM"
src="https://github.com/user-attachments/assets/c26e8ff5-97fd-4430-ba59-1a86a9756a1c"
/>

<img width="1505" height="1153" alt="Screenshot 2025-09-11 at 12 01
26 PM"
src="https://github.com/user-attachments/assets/cbfb72ae-6b00-4f5d-bda2-5ef6b737a0b0"
/>

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-11 15:18:12 -07:00
jacobshandling
64d23817ad
UI: Make more specific and move down a level gating of Setup Experience UX to facilitate appropriate granular access to Linux and Android features (#32754)
## For #32683 

- Gate Setup experience steps for MDM and ABM being enabled at the
individual sidenav level instead of the entire section
- Allow Linux software installation even when MDM/ABM not enabled
- Improve typing of sidenav 

### Setup experience > Install software > Linux can be accessed without
MDM/ABM, but not macOS:

![ezgif-1c8bb8d13011ea](https://github.com/user-attachments/assets/56ffdbc5-2b49-4263-9483-0ebfc1b2754f)

### Other setup experience tabs gated without MDM/ABM configured (note
specific conditions for End user authentication - Apple MDM OR Android
MDM, with informative Tooltips:

![ezgif-1d194f6b298edd](https://github.com/user-attachments/assets/79450034-b278-46e9-9089-330c126336f3)


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-10 16:51:02 -07:00
Sarah Gillespie
3d11d2ef17
UI: Show updated_at instead of created_at for profile upload time (#32679) 2025-09-10 10:49:20 -05:00
Sarah Gillespie
684efd6dbb
UI: Fix link icon color for Setup Assistant uploader (#32674) 2025-09-09 09:48:10 -05:00
Dante Catalfamo
30a2fa3307
Remove extra spacing from under disk encryption table (#32665)
#31755
2025-09-08 10:02:29 -04:00
jacobshandling
32c60fe69d
UI: Linux setup experience - End user (#32639)
## 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


![ezgif-6b54f32a7103ec](https://github.com/user-attachments/assets/cd94f92f-2daa-40a2-8fa1-643ed69a198c)

## 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>
2025-09-05 15:53:01 -07:00
Ian Littman
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
jacobshandling
32d43a1a73
UI: Update setup experience software IT admin endpoints (#32670)
## For #32037 

Align setup experience software endpoints with
https://github.com/fleetdm/fleet/pull/32317/files - only merge with
associated server and agent PRs

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-05 14:49:05 -07:00
jacobshandling
8b09e9d239
UI: Linux setup experience - IT admin updates (#32569)
## PR 1/2 for #32037 

- Implements update for the Linux setup experience from the IT admin's
point of view. Updates for the end-user ("My device" page) to follow
- Works in concert with the new endpoints implemented in
https://github.com/fleetdm/fleet/pull/32493

- Splits Controls > Setup experience > Install software into 3 tabbed
sections, one for each of macOS, Windows (placeholder state for now, to
be implemented in following iteration), and Linux.
- Dynamically calls new GET and PUT endpoints and routes data
accordingly depending on which platform software for install is being
updated for.
- Update the software selection modal to display software package
versions, including the package type (deb, rpm, or tar) for Linux
software packges.
- New activity feed item
- Update relevant tests


![ezgif-86da6f2b97d770](https://github.com/user-attachments/assets/6ae95bb7-f629-472e-b996-fcba1cf83e76)
_Note that the lower-right-hand image in this GIF is outdated and will
be updated with new content once this entire feature is integrated_


~- [ ] Changes file added for user-visible changes in `changes/`~ will
include in PR 2/2
- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

- [x] Verified that any relevant UI is disabled when GitOps mode is
enabled

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-04 10:24:05 -07:00
jacobshandling
669aaa7f2d
UI - Delete secret modal: Close modal on error/success, truncate long var names, add missing copy, fix copy alignment (#32508)
## For #32465 

Modal closes when delete errors:
<img width="1350" height="877" alt="Screenshot 2025-09-02 at 10 20
35 AM"
src="https://github.com/user-attachments/assets/daa97771-ba2f-49a7-9324-a2ce3f5bbe46"
/>

and when it succeeds:
<img width="1350" height="877" alt="Screenshot 2025-09-02 at 10 22
01 AM"
src="https://github.com/user-attachments/assets/94404529-bf8c-4c3a-bd0f-af3bab8bdc35"
/>

Short variable names render inline, additional copy underneath:
<img width="1074" height="610" alt="Screenshot 2025-09-02 at 11 33
16 AM"
src="https://github.com/user-attachments/assets/61958099-4450-4e2f-9ee8-f6ed15be8f2b"
/>

While long ones are truncated with the full value displayed in a
tooltip, also inline with additional copy underneath:
<img width="1074" height="610" alt="Screenshot 2025-09-02 at 11 33
55 AM"
src="https://github.com/user-attachments/assets/1fb45cb1-9252-45c9-a62e-c39cae05caaa"
/>

- [x] QA'd all new/changed functionality manually
- [x] Updated tests
- [x] Confirmed that the fix is not expected to adversely impact load
test results

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-09-02 12:55:47 -07:00
jacobshandling
166e5ed663
UI: Batch script run detail page (#32333)
## For #31226 

New features:
- Dynamic header for each possible state of a batch script run: Started,
Scheduled, and Finished (corresponds to tabs at
`/controls/scripts/progress`
- Unique tabs for each possible status of hosts targeted by a batch
script run: Ran, Errored, Pending, Incompatible, Canceled.
- Within each tab, sortable, paginated host results with output preview
and execution time.
- View script/run details, cancel a batch, view manage hosts page
filtered for the script batch run and a status.
- Global script batch runs activities and and Scripts progress rows now
navigate to this details page.

Cleanups and improvements:
- Expand tab count badge options using “alert”/“pending” variants across
hosts, policies, and query results.
- Misc cleanups and improvements


![ezgif-1438d4041f694f](https://github.com/user-attachments/assets/2d93127b-dea4-4ca6-abcc-7c888b2e0b93)


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


- [x] Updated automated tests - new tests tracked for follow-up work
- [x] QA'd all new/changed functionality manually

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-08-29 09:37:05 -06:00
Lucas Manuel Rodriguez
7341249025
Fix one-off error in secret variable length check (#32386)
For #32381.
2025-08-27 20:33:22 -03:00
Lucas Manuel Rodriguez
0b0e8c2aa2
Add success notifications for variables (#32251)
Nit: Missing feedback to user after creation or deletion of variables.
Found while testing #29235.

Added similar text used when creating or deleting other entities like
queries or scripts.
2025-08-26 17:45:02 -03:00
Scott Gress
4d31fe1c5e
Custom Variables UI updates (#32304)
for #32269 
for #32271 
for #32285

# Details

This PR addresses some front-end issues found during QA testing of the
new Custom Variables UI

# Checklist for submitter

## Testing

- [X] Added/updated automated tests

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

* Spaces allowed in custom variable values:
<img width="659" height="399" alt="image"
src="https://github.com/user-attachments/assets/e849636f-d91c-4649-a6f1-82bc2397cbbe"
/>

* Overflow in add var modal
<img width="657" height="412" alt="image"
src="https://github.com/user-attachments/assets/d04563e1-df29-457d-976a-b6b05b3aa623"
/>

* If it's too long, show error
<img width="664" height="414" alt="image"
src="https://github.com/user-attachments/assets/91100d0c-35b5-4cd2-a779-6a34bfdc9fc3"
/>

* Overflow in table too
<img width="1031" height="178" alt="image"
src="https://github.com/user-attachments/assets/4833bd64-2f3f-4de7-9392-1955341a5a96"
/>

* Added "Learn More" button and correct margin between tabs and
description
<img width="1053" height="224" alt="image"
src="https://github.com/user-attachments/assets/4db5116c-0a77-4427-ad61-9bde6e94679b"
/>

* Team admins / maintainers can no longer see "Add" or "Delete" var
buttons
<img width="1031" height="374" alt="image"
src="https://github.com/user-attachments/assets/a15ab358-a6de-4d0b-9df9-aa2e7ed5c0cb"
/>

For unreleased bug fixes in a release candidate, one of:

- [X] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed
2025-08-26 14:08:15 -05:00
Juan Fernandez
56c0773ff3
Validate Require BitLocker PIN (#32240)
For #28133

Validate that if 'Require BitLocker PIN' is enabled, disk encryption
must be enabled as well.
2025-08-26 13:23:24 -04:00
Lucas Manuel Rodriguez
632f731233
Remove text from remove variable dialog (#32249)
Missing change from #29235.
See decision
[here](https://github.com/fleetdm/fleet/issues/29235#issuecomment-3208040863).

<img width="675" height="264" alt="Screenshot 2025-08-25 at 10 14 29 AM"
src="https://github.com/user-attachments/assets/0446412e-7d13-40fc-ae2c-94e8bab04b9e"
/>
2025-08-25 15:02:37 -03:00
Lucas Manuel Rodriguez
969a08aea2
Fix script library pagination (#32232)
## #32236 

Found this bug while testing > 10 scripts or so per-team for another
story.

@jacobshandling mentioned we were missing passing `currentPage` to
`SideNav`.

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-08-25 14:49:04 -03:00
Scott Gress
4ce8a095c7
Reload view after canceling script, and update time validation (#32242)
for #32238

# Details

* After a script is canceled, refresh the current tab to show that the
canceled script is no longer there
* When scheduling a script, check the specified time against UTC, not
current timezone time of day.

# Checklist for submitter

## Testing

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

For unreleased bug fixes in a release candidate, one of:

- [X] Confirmed that the fix is not expected to adversely impact load
test results
2025-08-25 09:15:12 -05:00
jacobshandling
2ed68ed118
UI: handle null response from batch script summary endpoint (#32106)
## For #32094 

<img width="1800" height="1088" alt="Screenshot 2025-08-19 at 8 08
12 PM"
src="https://github.com/user-attachments/assets/3f83e4bf-af58-48bf-868f-d1417f420f50"
/>


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

For unreleased bug fixes in a release candidate, one of:
- [x] Confirmed that the fix is not expected to adversely impact load
test results
- ~[ ] Alerted the release DRI if additional load testing is needed~

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-08-22 10:44:46 -07:00
Lucas Manuel Rodriguez
53b7a0628a
Prevent IT admins from deleting a secret variable in use (#32161)
#31977

Tested with:
224 scripts, 102 Apple configuration profiles, 105 Apple declarations,
37 Windows configuration profiles. Scattered in 7 teams.

No variables on profiles/scripts:
- scan scripts: 22.079416ms
- scan apple profiles: 1.865083ms
- scan apple declarations: 683.75µs
- scan windows profiles: 531.167µs

A variable "X" on with profiles/scripts that have variable "Y":
- scan scripts: 26.305459ms
- scan apple profiles: 1.841708ms
- scan apple declarations: 756.917µs
- scan windows profiles: 571.875µs

---

## Testing

- [X] Added/updated automated tests

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

For unreleased bug fixes in a release candidate, one of:

- [X] Confirmed that the fix is not expected to adversely impact load
test results
- [X] Alerted the release DRI if additional load testing is needed

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

## Summary by CodeRabbit

- New Features
- Prevents deleting a secret that’s still in use. The system now checks
scripts, Apple/Windows MDM profiles, and Apple declarations across teams
before allowing deletion.
- The delete dialog now shows a clear message indicating which item (and
team) is using the secret, replacing the previous generic error.
- Deletion succeeds once all references are removed, ensuring safer
secret management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-22 11:22:37 -03:00
Gabriel Hernandez
6ffaaaae31
UI fixes correcting links on end user auth form and showing fields in user card for ios and ipad (#32198)
fixes #32135, #32132

this is two fixes for the IdP story:

1. splits out the links for the view idp and eula on the end user auth
form.
2. shows the user card fields for ios and ipad

- [x] QA'd all new/changed functionality manually
2025-08-22 14:01:10 +01:00
RachelElysia
b71df4f223
FE: Cleanup lint warnings (#32086) 2025-08-21 16:21:45 -05:00
jacobshandling
013c1af161
UI: Disable add var in gitops mode (#32170)
## #32166 

<img width="1000" height="576" alt="Screenshot 2025-08-21 at 10 47
05 AM"
src="https://github.com/user-attachments/assets/e1ca3ca4-c679-4d17-9143-d83a5301129e"
/>


## Testing

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

For unreleased bug fixes in a release candidate, one of:

- [x] Confirmed that the fix is not expected to adversely impact load
test results

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-08-21 14:12:40 -07:00
Scott Gress
ba9b204875
Fix flaky UI test for custom variables list (#32114)
# Details

Fixes a flaky UI test introduced with the Secrets page. The failure was
due to some bugs in the test code (see comments).
2025-08-20 13:56:39 -05:00
Magnus Jensen
9a859736c2
IdP Authentication before BYOD (#32017)
fixes: #29222 

This is a feature branch that was completed last week, but did not get
merged in time.

All pr's going in was approved, and reviewed.

I will after this is merged, do a cherry pick onto the RC 4.73 branch,
and initiate the FR merge process.

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
Co-authored-by: Sarah Gillespie <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2025-08-18 18:31:53 +02:00
Gabriel Hernandez
5d8973d484
fix issue wih showing os updates page with user being admin on one team and maintainer on another (#31963) 2025-08-15 15:36:35 -05:00
Scott Gress
2e1ce02796
UI for managing custom variables (#31875)
for #31054

# 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.

## Testing

- [ ] Added/updated automated tests
- [ ] 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)

- [X] QA'd all new/changed functionality manually
2025-08-15 08:24:55 -05:00
Scott Gress
466d1382e7
remove feature flag from bitlocker (#31886)
# Details

Realized we left the feature flag in for BitLocker, so this PR removes
it. We also discussed during the last demo that "Advanced" should always
be visible, even when the "Turn on disk encryption" is not checked.

# Checklist for submitter

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

- [ ] 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.
n/a

## Testing

- [ ] Added/updated automated tests
- [ ] 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)

- [X] QA'd all new/changed functionality manually
2025-08-14 10:11:00 -05:00
Scott Gress
e985d20b1d
UI for scheduling batch scripts (#31885)
# Details

This PR merges the feature branch for the scheduled scripts UI into
main. This includes the following previously-approved PRs:

* https://github.com/fleetdm/fleet/pull/31750
* https://github.com/fleetdm/fleet/pull/31604
* https://github.com/fleetdm/fleet/pull/31797


# 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.

## 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)

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

---------

Co-authored-by: jacobshandling <61553566+jacobshandling@users.noreply.github.com>
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-08-14 10:10:45 -05:00
Gabriel Hernandez
24e7934646
dont show os updates page for users who are not global admin or the team admin (#31410)
fixes #25367 

this doesnt show the os updates page for users who are not global admins
or the current team admin. we also redirect users to the os settings
page if they try to navigate to the os updates page and dont have
permission

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] QA'd all new/changed functionality manually
2025-07-31 12:04:06 +01:00
Scott Gress
fcdd01d78d
Add "Require BitLocker PIN" checkbox to disk encryption page (#31132)
for #31064 

# Details

This PR adds a "Require BitLocker PIN" checkbox under a new "Advanced"
section on the Disk Encryption page. This UI will only be visible if:

* "Turn on disk encryption" is checked
* The front-end was compiled using the `SHOW_BITLOCKER_PIN_OPTION=true`
env var, e.g.:
```
SHOW_BITLOCKER_PIN_OPTION=true NODE_ENV=development yarn run webpack --progress --watch
```

See Figma for reference:
https://www.figma.com/design/XbhlPuEJxQtOgTZW9EOJZp/-28133-Enforce-BitLocker-PIN?node-id=5334-1026&t=NuPo1M5fJepyCCRy-0

With encryption off:
<img width="569" height="233" alt="image"
src="https://github.com/user-attachments/assets/558e74cc-ce3d-47e3-aa14-1391e1cb4146"
/>

With encryption on:
<img width="551" height="285" alt="image"
src="https://github.com/user-attachments/assets/adfe2ead-4c5c-43a0-a5aa-9566635aba5f"
/>

Expanded:
<img width="534" height="297" alt="image"
src="https://github.com/user-attachments/assets/ac0620a2-528f-4118-ae46-992a646c97d8"
/>

Tooltip:
<img width="579" height="317" alt="image"
src="https://github.com/user-attachments/assets/23d13820-9bcb-49fb-b32b-2b5c60e7e55c"
/>



# 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. -->

- [ ] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
   - will add changelog when feature is complete
- [x] Manual QA for all new/changed functionality
2025-07-23 14:36:28 -05:00
Lucas Manuel Rodriguez
52ada033a1
Fix a few UI typos (#30559)
Found one during testing of Entra Conditional Access and then ran
https://github.com/crate-ci/typos to fix a few more.

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

## Summary by CodeRabbit

* **Bug Fixes**
* Corrected various typographical errors in user-facing text, tooltips,
table headers, and messages across the application to improve clarity
and professionalism.
* Fixed spelling mistakes in success and error messages, tooltips, and
descriptive text on multiple pages.
* Updated test setup to use the correct sort type value for CSV
conversion tests.
  * Improved consistency in UI labels and documentation comments.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 08:44:57 -03:00
jacobshandling
f0d3809b22
UI: Allow editing the name and team of a "Save as new" query (#30544)
## #14801 
### [Demo
video](https://drive.google.com/file/d/1Lovk7iwvgUv1NpfsqSt-Is0yTBt0SZ5O/view?usp=sharing)
<img width="1624" alt="Screenshot 2025-07-02 at 4 58 33 PM"
src="https://github.com/user-attachments/assets/86c7b214-e8e4-4e58-9969-b1373ed97691"
/>


* **New Features**
* Added the ability to select a team and update the name when saving a
query as a new copy, using a dedicated modal dialog.

* **Improvements**
* Enhanced the team selection dropdown with new styling options and
clarified prop names.
* Updated query editing workflow to use a modal for "Save as new"
actions.
* Improved type safety and clarity in several interfaces and utility
functions.

* **Bug Fixes**
  * Fixed inconsistencies in prop naming for team dropdown components.
* Ensured "Discard data" setting is maintained when "Save as new"ing a
query - it was previously not maintained correctly

* **Tests**
* Updated and removed tests to align with the new "Save as new" query
workflow and prop changes.
  * Added utilities for creating mock location objects in tests.

* **Style**
  * Added a new light grey color to the UI color palette.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-07-03 13:11:06 -07:00
Jordan Montgomery
5263e95067
29867 Block profile PayloadScope changes (#30429)
For #29867 . Includes latest copy requested by product.

# 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/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)
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-07-02 10:54:54 -04:00
Marko Lisica
a5857cf6ef
Update tooltip to exclude link (#28559)
This isn't supposed to be link. We use bold text to reference UI
elements, but it's not expected to have links in tooltip.

---------

Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2025-06-09 13:10:28 +01:00
Luke Heath
c8bd0673bb
Remove couldn't add string addition from frontend helper utility (#29736) 2025-06-03 15:24:23 -06:00
jacobshandling
e25c1c3728
UI: Add ability to run a script on all hosts that match a set of supported filters; Add UI to view batch run summaries (#29025)
_Only merge to `main` after [back
end](https://github.com/fleetdm/fleet/pull/29149) and [back end
extension](https://github.com/fleetdm/fleet/pull/29312)_

## For #28699, #29143, #29281

- Run scripts by filter
- View batch script run summary via activity feed
- Code clean up

### Run scripts by filter:
<img width="1280" alt="Screenshot 2025-05-09 at 5 21 51 PM"
src="https://github.com/user-attachments/assets/bcf2e275-f229-461b-8411-0e99c34af5bf"
/>
<img width="1280" alt="Screenshot 2025-05-09 at 5 22 47 PM"
src="https://github.com/user-attachments/assets/d4882ed3-cfa6-4952-acbe-89c60d65d482"
/>

### View script run summary:

![ezgif-4ebaf9c57d6e57](https://github.com/user-attachments/assets/4201ff85-04e3-473f-8a82-969f85e59558)

- [x] Changes file added for user-visible changes in `changes/`
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-22 16:45:43 -07:00
RachelElysia
7fe5dcd045
Fleet UI components; Editor copy button added, File details/uploader gitopsCompatible can now be false (#29307) 2025-05-21 13:32:18 -04:00
Gabriel Hernandez
5815dc4e54
Feat UI host filter by custom profiles (#29038)
For #28759

This is the UI work for being able to filter hosts by a configuration
profile status. There are also added tests in this PR.


![image](https://github.com/user-attachments/assets/b2585093-b191-4dc5-a11e-55ad4156d713)


- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-05-15 12:37:45 +01:00
jacobshandling
262832bfff
UI: Warn before saving script contents (#29026)
## For #28699 auxiliary feature


![ezgif-28c6ba4048c004](https://github.com/user-attachments/assets/2631286a-b4bd-431a-8ea1-5b962af933dd)

- [x] Changes file added for user-visible changes in `changes/`
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-12 13:51:38 -07:00
jacobshandling
3049d3c3d0
UI: Add configuration option for customer-preston (#28941)
## For #28221, frontend portion

- In desired places, read new config option and render desired UI
accordingly
- Code refactors to more elegantly support this functionality
- Backend branch [here](https://github.com/fleetdm/fleet/pull/28893) for
testing
![Screenshot 2025-05-07 at 2 38
14 PM](https://github.com/user-attachments/assets/5130a96d-ee6e-480f-a1f7-9ff0b3c0dda3)
![Screenshot 2025-05-07 at 2 37
36 PM](https://github.com/user-attachments/assets/f487212d-2620-4c01-9f9d-534fc34396e5)
![Screenshot 2025-05-07 at 2 29
17 PM](https://github.com/user-attachments/assets/d3814704-8d72-4a57-9d81-3f5345d60d46)
<img width="1012" alt="Screenshot 2025-05-07 at 12 00 04 PM"
src="https://github.com/user-attachments/assets/81519388-7696-4a7e-a55a-0d0874c17aad"
/>

**Teams dropdowns:**

![ezgif-7e20570dcd7c58](https://github.com/user-attachments/assets/2bf2b8ca-0d55-495d-8653-ab564320aa13)


- [x] Changes file added for user-visible changes in `changes/
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-12 13:36:38 -07:00
RachelElysia
7463fb18b4
Fleet Desktop: Update component level error states (#28816) 2025-05-12 09:25:09 -04:00
Gabriel Hernandez
b9e321e545
Add UI for viewing config profile install status and enable resending profiles to failed hosts. (#28964)
For [#28757](https://github.com/fleetdm/fleet/issues/28757)

implements UI for viewing a config profiles install status info as well
as allows user to resend the profile to hosts that it failed on. this
includes

**New info icon on the profile list item**

<img width="618" alt="image"
src="https://github.com/user-attachments/assets/2eb515fe-caea-43da-8e1c-02672825cf84"
/>

**modal to show config profile install status**

<img width="656" alt="image"
src="https://github.com/user-attachments/assets/21b6c483-1d36-40d9-9e5c-a74e7a9fcd50"
/>

**modal to confirm resending profile to failed hosts** 

<img width="666" alt="image"
src="https://github.com/user-attachments/assets/c29d0d24-f6ba-4567-b954-f3908cdfed85"
/>



- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [ ] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-05-09 16:46:09 +01:00
Jordan Montgomery
844723bfbc
Add NDES error message (#28960)
For #28948 adds LearnMoreLink for NDES error messages as well. Also
refactored the code that creates the errors slightly to genericize in
case we need to add more links in the future

- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [ ] 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-05-08 12:19:08 -04:00
Jordan Montgomery
0be4e4db39
Add learn more links for Custom SCEP profile errors (#28905)
For #28870 

Adds the proper "learn more" links to these errors as shown in the
Custom SCEP renewal Figma
https://www.figma.com/design/R4HhMXjwTjRelmq3V6n8aS/-27984-Renew-certificates-from-custom-SCEP-certificate-authority-on-macOS?node-id=7304-92:
![Screenshot 2025-05-07 at 9 50
59 AM](https://github.com/user-attachments/assets/f11fb064-0fab-42ad-b8b0-c28705eda921)
![Screenshot 2025-05-07 at 9 51
16 AM](https://github.com/user-attachments/assets/c8822e03-71f7-4fb1-b323-02422f8497b2)


# 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] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [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-05-07 12:20:58 -04:00
Victor Lyuboslavsky
8ad9da71d6
Only allow distribution packages for bootstrap package (#28787)
For #27700 
When uploading bootstrap package for macOS setup experience, validate
that it is a Distribution package since that is required by Apple's
InstallEnterpriseApplication MDM command.


# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
2025-05-06 11:02:13 -05:00
RachelElysia
5e05fd4dac
FE: Error messages in Storybook (#28640) 2025-05-06 09:20:03 -04:00