Commit graph

3725 commits

Author SHA1 Message Date
Lucas Manuel Rodriguez
608f768dd7
Add support for IdP department to SCIM and add FLEET_VAR_HOST_END_USER_IDP_DEPARTMENT fleet variable (#30375)
#29609

Verified the changes with [Entra ID's
validator](https://scimvalidator.microsoft.com/) and adding the
department attribute to the tester:
<img width="1312" alt="Screenshot 2025-06-27 at 8 54 32 AM"
src="https://github.com/user-attachments/assets/45a5deb8-7c65-49df-b3e8-eb05bea11f6b"
/>
<img width="1312" alt="Screenshot 2025-06-27 at 8 54 21 AM"
src="https://github.com/user-attachments/assets/91b554b5-b0b9-4bb6-a0cf-4e3b40e6ce21"
/>

- Tested with Okta
- TODO: Test with Entra ID and Google Workspace.
- I decided to not fail profile deployment if a user has no department
because it's not a required attribute, instead the
`FLEET_VAR_HOST_END_USER_IDP_DEPARTMENT` will be replaced with the empty
string.

---

- [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] If database migrations are included, checked table schema to
confirm autoupdate

(https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- For database migrations:
- [X] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [X] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [X] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [X] Added/updated automated tests
- [X] Manual QA for all new/changed functionality
2025-06-29 15:23:03 -03:00
jacobshandling
e74e30105b
UI: In Primo mode, enforce No team or All teams, depending on the page, to preserve premium functionality (#30291)
## #30198 

[Video
demo](https://drive.google.com/file/d/1RBk5QNQdQvXTHJveCNkIeMXj5hWFA5Ft/view?usp=sharing)

- Implement the following logic for `teamId` in the UI when in Primo
mode:
<img width="870" alt="Screenshot 2025-06-24 at 12 47 48 PM"
src="https://github.com/user-attachments/assets/8ae81c3f-223f-4dda-954d-c42c7008de45"
/>
- Above logic is enforced - if trying to change/add/remove `team_id`,
automatically pushed to appropriate team

- Fixes originally reported issue - user in Primo mode can access
installable software (on the hidden "No team" which is now enforced):
  - Software page on No team
    - Update header help text 

![ezgif-49ce1977ab6474](https://github.com/user-attachments/assets/0d011f94-7c90-4d42-92ec-135baafe7927)


- Handle UI edge cases the above surfaces:
  - Queries page on All teams (No team not supported):
<img width="1624" alt="Screenshot 2025-06-24 at 1 10 40 PM"
src="https://github.com/user-attachments/assets/84bb2ca0-b8e7-44e8-9bf5-9f8f243d5584"
/>

  - Policies page on No team:
<img width="1624" alt="Screenshot 2025-06-24 at 1 10 53 PM"
src="https://github.com/user-attachments/assets/144d745f-e9b0-4933-be45-2db4fe428cfe"
/>

- update `useTeamIdParam` hook's strip query params on change team logic
to optionally also consider the current team

**Important notes**
- Software page: Software automations are only accessible via All teams,
while Add software is only accessible on a team, including No team. In
lieu of specs around this, I decided to favor Add software functionality
over Software automations functionality, aka, push to "No team" on this
page. Enabling _both_ functionalities would be a very large ticket and
need to go through a proper drafting process, since Fleet doesn't
currently support both in any state.
- Policies page:
- "Other workflows" (tickets and webhooks) is available on All Teams and
specific teams, but not on No Team, so "Other workflows" is currently
unavailable in Primo mode
- If any of the Primo customers have created policies on All Teams
already, they won't be able to manage automations on them anymore. All
Teams policies can only have ticket/webhook workflows


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-25 09:26:36 -07:00
Noah Talerman
a51f074ecf
Software page: Hide "Available for install / Self-service" dropdown for "All teams" and Fleet Free (#30274)
---------

Co-authored-by: RachelElysia <rachel.elysia.perkins@gmail.com>
2025-06-25 09:24:36 -04:00
github-actions[bot]
e86e096071
Fleet UI: Update osquery version options (#30299)
Automated update of MIN_OSQUERY_VERSION_OPTIONS with any new osquery
release. (Note: This automatic update is the solution to issue #21431)

Co-authored-by: RachelElysia <RachelElysia@users.noreply.github.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-06-24 20:41:03 -05:00
Juan Fernandez
e7519eef48
29762: Fixed bug with run script modal on FreeTier. (#30138)
For #29762 

When running on FreeTier do not apply teamId criteria on end-point used by the Run Script modal.
2025-06-23 13:03:22 -04:00
jacobshandling
0c139c98e7
UI: Hide teams dropdown on software details pages in Primo mode (#30218)
## #30200 


![ezgif-73f99c5eaa3368](https://github.com/user-attachments/assets/77e10692-04c8-4021-b9dc-8bd4fcd90726)


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-23 09:55:36 -07:00
RachelElysia
3d8b89bdf0
Fleet UI: Host software followup (#30205) 2025-06-23 11:09:20 -04:00
Gabriel Hernandez
34270c23bd
disable uploading EULA in UI when gitops is enabled (#30174)
Relates to #28143

remove ability to upload a EULA in the UI if gitops is enabled

- [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.
- [s] Manual QA for all new/changed functionality
2025-06-23 14:27:33 +01:00
RachelElysia
3715545e67
Fleet UI: Revamp host > software page with inventory/library tabs (#29759) 2025-06-20 15:02:22 -04:00
Gabriel Hernandez
63ace13b11
Fix issue where you cant delete a bootstrap package (#30146)
Fixes [#30059](https://github.com/fleetdm/fleet/issues/30059)

Fixes an issue where you couldn't delete a bootstrap package. The issue
was an unused json struct tag for DryRun on the
`deleteBootstrapPackageRequest` struct.

I also updated the UI to use the current endpoint to delete a bootstrap
package

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
2025-06-20 17:05:16 +01:00
Gabriel Hernandez
a5c69a60a4
Fix bug for not being to reenable end user migration in UI (#30106)
Fixes #30063

This fixes an issue added in the
[PR](https://github.com/fleetdm/fleet/pull/29968) where the user was not
able to reenable the end user migration form.

I've also added improved a11y attributes to the slider component,
ensured we are functionally disabling the form controls during gitops
mode and not just visually, and updated/added tests for the
EndUserMigrationSection component.


- [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-06-20 17:04:30 +01:00
Ian Littman
36bf6d91e5
Drop a few more font size overrides (#30168)
For #27951.

### Host enroll

Before:

<img width="759" alt="image"
src="https://github.com/user-attachments/assets/df7aa542-724c-4e61-a4c9-49f794c470ec"
/>

After:

<img width="750" alt="image"
src="https://github.com/user-attachments/assets/c23d6403-9c47-4af5-80f2-5fce712cec8c"
/>

### SQL editor (placeholder on software pre-install query in edit modal)

Before:

<img width="761" alt="image"
src="https://github.com/user-attachments/assets/32218586-fe3e-4531-afad-766e659a304f"
/>

After:

<img width="760" alt="image"
src="https://github.com/user-attachments/assets/22e3a693-e017-4f62-9f27-4f9e0747520b"
/>

Bootstrap package modal only shows up on failed bootstrap package loads,
so rather difficult to get to where this can be tested, but other
outputs are 14px so this should be fine.

- [x] Manual QA for all new/changed functionality
2025-06-19 22:16:39 -05:00
Scott Gress
becb7a3b5b
Add null check to fix manage automations issue (#30154)
For #30001

# Details

When Fleet is started with logging configured in a way such that the
logging plugin has no `config`, clicking "Manage Automations" on the
manage queries page results in a 500 page. An example config would be:

```
fdm up --server_address=localhost:8080 --dev --dev_license --logging_debug --osquery_result_log_plugin=stdout --osquery_status_log_plugin=stdout --activity_audit_log_plugin=stdout
```

This PR fixes the issue by adding null protection for cases where the
`config` object is empty for the logging plugin.

# 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] Manual QA for all new/changed functionality
2025-06-19 14:51:49 -05:00
Scott Gress
7549defa28
Fix issue saving labels (#30126)
# Details 
This PR fixes an issue where the user is redirected to a 500 error page
after saving a new label if they were on the All Teams host page before
creating the label. The issue was due to the redirect having
`team_id=-1` in it, and the fix is to detect that All Teams is selected
and, if so, not set `team_id` in the URL at all.

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

# Testing

Tested adding a new and dynamic label from All Teams, No team and a
custom team. Vids below for "All Team":

Before:

![30036-before](https://github.com/user-attachments/assets/f958f31d-9b8d-4a61-8b3d-8d55590628fe)

After:

![30036-after](https://github.com/user-attachments/assets/0b424ed7-9bab-45cd-b4e5-2a6ae4a1309a)
2025-06-19 11:17:20 -05:00
Dante Catalfamo
f25ed917d3
Fixed tooltip not showing the correct log destination (#30124)
#28613
2025-06-19 10:39:07 -04:00
Gabriel Hernandez
afffad11a0
fix typos and add premium feature message to idp integration page (#30079)
Fixes #29505

Quick fix to show the premium feature message for idp integrations card

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
2025-06-19 12:34:53 +01:00
Gabriel Hernandez
8b25a1bae7
fix truncation of mdm server url value in about card (#30085)
Fixes #29696

fixes truncation of the mdm server url value on the about card.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
2025-06-19 12:34:06 +01:00
github-actions[bot]
b1fe6b485c
Fleet UI: Update osquery version options (#30139)
Automated update of MIN_OSQUERY_VERSION_OPTIONS with any new osquery
release. (Note: This automatic update is the solution to issue #21431)

Co-authored-by: RachelElysia <RachelElysia@users.noreply.github.com>
2025-06-18 19:14:49 -05:00
Dante Catalfamo
78ba04ff10
Fix policy autofill using incorrect media-type for query (#30112)
#30066
2025-06-18 13:12:58 -04:00
RachelElysia
b29cb6bfd3
Fleet UI: Fix os settings tooltips from flashing during refetch (#30080) 2025-06-17 09:35:03 -04:00
jacobshandling
ec9bc87207
UI: Fix dropdown width (#30025)
https://fleetdm.slack.com/archives/C02A8BRABB5/p1749832741812749?thread_ts=1749830953.421299&cid=C02A8BRABB5


![ezgif-29df3a41863e6d](https://github.com/user-attachments/assets/15687ee6-7117-4286-93fd-e271cacbcba6)

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-16 15:54:35 -07:00
RachelElysia
999207bd33
Fleet UI: Improved error and loading state for self-service page (#30042) 2025-06-16 11:23:19 -04:00
Ian Littman
6f772a4405
Clean up "here" link anchors for docs, ee, and frontend dirs (#29742)
More work to fix #29720.

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2025-06-13 15:05:52 -05:00
jacobshandling
69cd060b9a
UI: Consistent password field styling (#29984) 2025-06-13 11:37:26 -04:00
Gabriel Hernandez
03a7b27633
update host details cert card (#29827)
Relates to  [#29324](https://github.com/fleetdm/fleet/issues/29324)

updates certificates card UI on the host details and my devices page.
changes some copy and adds a new Keychain column.


![image](https://github.com/user-attachments/assets/3310cd61-4447-499b-8d03-9a987fbcaed7)

- [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] Manual QA for all new/changed functionality
2025-06-13 13:00:41 +01:00
Victor Lyuboslavsky
cca4d2440d
Remove Android feature flag from frontend (#29890)
Fixes #26519

- Removed Android feature flag from the frontend
- Added custom error message when Android enterprise already exists, per
https://fleetdm.slack.com/archives/C084F4MKYSJ/p1748981589180829?thread_ts=1748638333.353069&cid=C084F4MKYSJ

# Checklist for submitter

- [x] Manual QA for all new/changed functionality
2025-06-12 20:05:56 -05:00
jacobshandling
37856d28b8
UI: Disable MDM > End user migration section when GitOps mode enabled (#29968)
## For #28823

<img width="1071" alt="Screenshot 2025-06-12 at 11 29 29 AM"
src="https://github.com/user-attachments/assets/f8ea9022-9bbd-4405-943b-923910265be5"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-12 15:21:01 -07:00
RachelElysia
840f620089
Fleet UI: Remove hover border on non-clickable dashboard card (#29967) 2025-06-12 16:42:19 -04:00
RachelElysia
4277a9e93e
Fleet UI: Remove unsupported sorting arrows from host software table (#29966) 2025-06-12 14:30:38 -04:00
jacobshandling
b4311f735d
UI: Make teams dropdowns searchable (#29928)
## For #28822 

- Enable searching the teams dropdown
- Ensure right-scrolling per usual text input fields when search text is
long
- Ensure neighboring elements are not moved when search text is long


![ezgif-5b014b0a03dc31](https://github.com/user-attachments/assets/30f98ea6-c7f8-4566-bfef-4e1a6eb0b55d)

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-11 15:11:12 -07:00
Lucas Manuel Rodriguez
1c5700a8c4
Microsoft Compliance Partner backend changes (#29540)
For #27042.

Ready for review, just missing integration tests that I will be writing
today.

- [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)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [X] If database migrations are included, checked table schema to
confirm autoupdate
- For new Fleet configuration settings
- [X] Verified that the setting can be managed via GitOps, or confirmed
that the setting is explicitly being excluded from GitOps. If managing
via Gitops:
- [X] Verified that the setting is exported via `fleetctl
generate-gitops`
- [X] Added the setting to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [X] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [x] Verified that any relevant UI is disabled when GitOps mode is
enabled
- For database migrations:
- [X] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [X] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [X] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [x] Added/updated automated tests
- [X] Manual QA for all new/changed functionality

---------

Co-authored-by: jacobshandling <61553566+jacobshandling@users.noreply.github.com>
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-11 14:22:46 -03:00
RachelElysia
44e6f27736
Fleet UI: Cover data with header tooltips to be consistent (#29887) 2025-06-10 16:06:07 -04:00
RachelElysia
c574c4db25
Fleet UI: Consistent font size across input fields and dropdowns (#29865) 2025-06-10 15:04:18 -04:00
RachelElysia
8cdda4819f
Fleet UI: Add 24px gap between banner text and CTA (#29864) 2025-06-10 14:47:03 -04:00
jacobshandling
e57452de6c
UI: Filter hosts by batch execution status (#29612)
## For #29444

- Update script batch summary modal status rows to link to the hosts
page filtered by the appropriate batch script run and status
- Add above filtering capabilities to the hosts page

<img width="1912" alt="Screenshot 2025-05-30 at 12 39 54 PM"
src="https://github.com/user-attachments/assets/4299ecaa-10bd-49f4-b0f8-cd0e71108e04"
/>

<img width="1912" alt="Screenshot 2025-05-30 at 12 40 22 PM"
src="https://github.com/user-attachments/assets/8252560e-59a2-42a9-bd0c-e5ca05c53390"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-06-09 10:53:17 -07:00
RachelElysia
268771c9b1
Fleet UI: Follow up for GitOps YAML (#29800) 2025-06-09 10:05:03 -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
Juan Fernandez
1c7d2a0c8a
Removes duplicates when listing software titles on 'All teams' (#29459)
For #26375. 

When listing software titles for 'All teams', do not join against
software installers nor vpps to avoid duplicates.

Since filters related to software installers/VPP apps are no longer used
when viewing titles for 'All teams', the filter dropdown is disabled if
'All teams' is selected.
2025-06-07 10:47:53 -04:00
RachelElysia
e16785f517
Fleet UI uninstall self service followup (#29407) 2025-06-06 15:40:52 -04:00
Luke Heath
c8bd0673bb
Remove couldn't add string addition from frontend helper utility (#29736) 2025-06-03 15:24:23 -06:00
Juan Fernandez
ec42e2d416
Fixes 29044: UI bug due to missing style for tooltip. (#29556)
For #29044 

Fixed styling issues with 'Observers can run this query' tooltip on the queries page.
2025-05-30 19:02:58 -04:00
Luke Heath
3ef7caef9d
Apply starter library during new Fleet instance setup (#29564) 2025-05-30 16:27:33 -05:00
Juan Fernandez
d6b3caf1db
Fixes 28109: UI bug related to policy reported results (#29562)
For #28109 

When running a policy, base the number of results on the number of 'sucessful' hosts.
2025-05-30 16:34:52 -04:00
jacobshandling
2e8168149d
UI: Fix tooltip logic of FilterPill (#29630)
## Closes #29613 

- Previous changes intended to add `TooltipTruncatedText`-like
functionality accidentally broke existing functionality when pill
content was not truncated
- This restores the previous functionality when explicit tooltip content
is passed in, and adds fall back behavior to act like
`TooltipTruncatedText`, where when the element content is truncated, its
full content is rendered as a tooltip on hover.

### Tooltip content is explicitly passed in and rendered in the tooltip.
Notice the tooltip content differs from the underlying element content:
<img width="675" alt="Screenshot 2025-05-30 at 11 21 49 AM"
src="https://github.com/user-attachments/assets/b0f8e72e-9925-4844-80ca-672b6efeb443"
/>

### No tooltip content passed in, falls back to
`TooltipTruncatedText`-like behavior. Notice the truncated element
content is the prefix of the full content rendered in the tooltip:
<img width="675" alt="Screenshot 2025-05-30 at 11 21 25 AM"
src="https://github.com/user-attachments/assets/e5fe7d74-3674-478c-8e33-7e84006e7390"
/>

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-30 11:57:54 -07:00
RachelElysia
8971d966bb
Fleet UI: Unreleased handle multiple hash (#29607) 2025-05-30 14:19:25 -04:00
jacobshandling
b96ce7cdfd
fix conditions for batch run ui disabling (#29599)
## For #29595 

- Only depend on total filtered hosts count when selecting all hosts on
all pages


![ezgif-3acee2170765d3](https://github.com/user-attachments/assets/4581409f-b8d7-45cf-94a4-24826bc0aec0)

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-29 13:06:21 -07:00
RachelElysia
9ba16421cc
Fleet UI: Squish bug final fix (#29597) 2025-05-29 15:53:26 -04:00
RachelElysia
f209d98d08
Fleet UI: Inverse order of vulnerability level filtering (#29591) 2025-05-29 15:47:50 -04:00
RachelElysia
ead33ade53
Fleet UI: Fix vuln page banner padding and flex direction (#29589) 2025-05-29 15:47:19 -04:00
RachelElysia
b3ee06c5c4
Fleet UI: Unreleased handle undefined signature_information (#29550) 2025-05-29 07:24:25 -04:00
RachelElysia
21f7a0001f
Fleet UI: View YAML modal updated (#29545) 2025-05-29 07:20:26 -04:00
RachelElysia
fd1a1cccf3
Fleet UI: Fix responsiveness with added installer data (#29541) 2025-05-29 07:19:54 -04:00
RachelElysia
94ae5ab8dd
Fleet UI: Consistent icon for device user error as data error (#29535) 2025-05-29 07:19:34 -04:00
jacobshandling
d51ea2279e
UI: Update query automations modal (#29517)
## For #28884 

<img width="803" alt="Screenshot 2025-05-27 at 6 45 14 PM"
src="https://github.com/user-attachments/assets/f4bd431e-3df8-464b-b871-8baeba5cf86c"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-28 13:06:33 -07:00
jacobshandling
4b5f5e9406
UI: Update disk encryption key font (#29514)
## For #28865 

**Before**:
<img width="656" alt="Screenshot 2025-05-27 at 4 08 48 PM"
src="https://github.com/user-attachments/assets/42a97b6a-2612-47f0-8a04-ef2864a4b896"
/>

**Now**:
<img width="656" alt="Screenshot 2025-05-27 at 4 13 07 PM"
src="https://github.com/user-attachments/assets/f65c399b-16b8-498b-90ba-454333543c19"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-28 09:44:04 -07:00
jacobshandling
b7d84bca33
UI: Query "frequency" -> "interval" (#29518)
## For #28821 

- Update UI-rendered references to `/(F|f)requency/` to refer to
`/(I|i)nterval/` instead


![ezgif-60c1b29b41ce29](https://github.com/user-attachments/assets/d2012116-bfe7-4a0c-8056-e4d3e61e623d)

- More info: Note that this PR only changes copy actually rendered in
the UI (and an associated test), and is low-risk, so can be merged and
QAed quickly. [This
branch](https://github.com/fleetdm/fleet/tree/28821-add-on-update-code)
contains updates to variables, constants, and class names, more
error-prone changes that, if review and QA capacity allow, can be PRed
for consistency between the code and the copy, but is not critical for
the desired UI updates.

- [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-05-28 09:40:13 -07:00
RachelElysia
bd51c35ba6
Fleet UI: Help text button font size fix (#29489) 2025-05-27 15:52:19 -04:00
Rachael Shaw
e97971fc28
UI: Fix "Last seen" hover text on host list (#29499)
Copy change to fix this bug:
https://github.com/fleetdm/fleet/issues/29423

+ Sentence cases text
+ Removes unnecessary "UTC" after timeago
2025-05-27 14:19:10 -05:00
RachelElysia
87576e796d
Fleet UI: Consistent script naming, enable copy button (#29422) 2025-05-23 12:19:43 -04:00
RachelElysia
6753655998
Fleet UI: Uninstall self service status change bug (#29412) 2025-05-23 09:33:44 -04:00
RachelElysia
6336309972
Fleet UI: Suface SHA256 in software details modal (#29408) 2025-05-23 09:09:06 -04: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
29e937ffbf
FE: Followup gitops YAML code nits (#29383) 2025-05-22 15:59:15 -04:00
Dante Catalfamo
a202e31929
Add SMTP settings save tooltip (#29112) 2025-05-22 14:47:38 -04:00
Dante Catalfamo
437c8114b1
Allow certain licenses to disable telemetry (#29093)
#28220
---------

Co-authored-by: Scott Gress <scott@fleetdm.com>
2025-05-22 14:27:07 -04:00
jacobshandling
831e06e8d7
UI: User menu- restore 2 dividers, remove border radius (#29376)
## For #27609 

<img width="179" alt="Screenshot 2025-05-21 at 4 53 45 PM"
src="https://github.com/user-attachments/assets/acfb15c1-a743-4a3a-9e6b-c2a7c9521f5b"
/>

This PR implements [the desired
UI](https://github.com/fleetdm/fleet/issues/27609#issuecomment-2885250756)
for the user menu

- ~[ ] Changes file added for user-visible changes in `changes/`~ [added
in previous
PR](https://github.com/fleetdm/fleet/pull/29066/files#diff-a072b167801f952e1d37dc5fdb98a4c292f95832b4d9c5e4eff40161ca3a40eaR1)
- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-22 10:19:38 -07:00
RachelElysia
0ae3abd5d6
Fleet UI: Allow gitOps mode to add package to view YAML (#29274) 2025-05-22 09:47:57 -04:00
Scott Gress
2e89780c6d
add HostIDs to label API (#29185)
for #27701

# Checklist for submitter

- [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

## Details

This PR fixes an issue where adding or removing a single host on a
manual label in the UI had unexpected results when that host's serial
number was not unique. When adding the host, all other hosts with the
same serial # would be added. When removing the host, _no_ hosts would
be removed unless _all_ the hosts with the matching serial # were
removed. The fix here is to introduce a new API param `host_ids` which
allows sending explicit Fleet host IDs to the add/update label APIs.
These are guaranteed to be unique.

## Testing

* Added new automated tests for the `NewLabel` and `ModifyLabel`
services
* Manually tested adding and modifying labels using hosts with duplicate
serials (I manually updated serials in my local db to get duplicates)

## Notes

* The existing `hosts` param is preserved (and tested) since API-only
users may rely on it.
* A separate API docs PR will be opened.
2025-05-22 08:20:35 -05:00
Dante Catalfamo
405dd55371
Make read_host_disk_encryption_key a host activity (#28858)
#28521
2025-05-21 16:47:11 -04:00
jacobshandling
bf9e9566a8
UI: Fix permissions for accessing queries table Edit UX (#29319)
## For #28532 

#### As global observer:
![Screenshot 2025-05-20 at 10 03
59 PM](https://github.com/user-attachments/assets/8ad9d01d-d0cb-402c-b32b-1928a494054e)

#### As global admin:
![Screenshot 2025-05-20 at 10 04
01 PM](https://github.com/user-attachments/assets/6f8fdfd5-9255-4865-b91a-0d2fd4a22121)


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-21 10:40:57 -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
725e7336b9
add host filtering by mdm config profile and the profile status (#29287)
For [#28761](https://github.com/fleetdm/fleet/issues/28761)

This adds the ability to filter the hosts by `profile_uuid` and
`profile_status` query params. This was added for the following
endpoints:

```
GET /hosts
GET /hosts/count
GET /hosts/reports
```

This also adds the UI needed to send the query params to the API
correctly when exporting a CSV of the hosts

- [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-21 18:29:13 +01:00
RachelElysia
b710d7cab3
Fleet UI: Reroute to software details page on add of FMA, VPP, custom pkg (#29336) 2025-05-21 11:31:39 -04:00
Martin Angers
df58fd1402
BRP: Fix bad path used in batch-resend call (#29305) 2025-05-21 11:14:20 -04:00
jacobshandling
19fe0ff5ce
UI: Improve TooltipTruncatedText and now underlying useCheckTruncatedElement (#29232)
## For #27667 

- Have `TooltipTruncatedText` component use `useCheckTruncatedElement`
to track its current state of truncation.
- Update `useCheckTruncatedElement` to re-evaluate truncation state
based on changes to the width of
the element itself as opposed to changes to viewport width. This
facilitates truncation when the
width of the element is updated due to user interaction / change in UI
state other than window resize, e.g. checking a policy in the policy
software automations modal (see issue description for details
reproduction instructions there).

**Truncation with tooltip successful for UI state changes:**

![ezgif-27969fb4a17d3e](https://github.com/user-attachments/assets/66156bd5-7948-4e73-9c11-4a08fde44189)

Truncation with tooltip successful for viewport resizing:

![ezgif-2515f715b05436](https://github.com/user-attachments/assets/8ef70579-1e89-4a4b-9fd0-93a4776d3151)

![ezgif-24a953c65500d9](https://github.com/user-attachments/assets/fc2f302b-6f7e-463e-97d2-9978b97c5601)

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-20 15:41:53 -07:00
Scott Gress
28ba274f1f
Fix SQL query editor cursor alignment issue (#28878)
for #27233 

# Checklist for submitter

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

## Details

This PR fixes an issue where the cursor in the SQL editor would become
misaligned under some circumstances. I was never able to reproduce this
personally, but big thanks to @mason-buettner for both the reproduction
and testing this fix.

The issue seems to stem from the Ace editor having a hard time dealing
with CSS scaling. I'm not sure what circumstances actually cause this to
occur, but a combination of Google and ChatGPT lead me to
https://github.com/securingsincity/react-ace/issues/750 and
https://github.com/ajaxorg/ace/issues/4794 which I combined for this fix
which seems to work.
2025-05-20 16:56:52 -05:00
Jahziel Villasana-Espinoza
0e030eb458
handle case when fleet maintained apps list is null (#29296)
> For #29197 

# 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] Manual QA for all new/changed functionality
2025-05-20 15:42:35 -04:00
RachelElysia
7c69c69728
Fleet UI: Dashboard > Software fix cached data not updating UI (#29288) 2025-05-20 13:34:08 -04:00
Sarah Gillespie
aea4406b4f
Improve MDM device-to-user mapping for Apple devices (#29239) 2025-05-19 13:29:46 -05:00
Luke Heath
9156ce35dd
Fix activity feed padding (#29234) 2025-05-17 15:07:05 -05:00
Luke Heath
7380919dc3
Organize contributor docs and establish ADR process and template (#29101) 2025-05-17 15:03:52 -05:00
RachelElysia
3d17c81018
Fleet UI: Clarify Host software/self-service status and version columns (#29008) 2025-05-16 15:09:24 -04:00
RachelElysia
f30d8e1bb8
Fleet UI: Confirmed toast messages to end user for self-service install/uninstall (#29179) 2025-05-15 14:35:49 -04:00
RachelElysia
4dc5f30dc1
Fleet UI: Surface copyable SHA256 hash on software details page (#29152) 2025-05-15 12:20:22 -04:00
Kenny Botelho
2e1cc48925
feat: add NICE DCV Viewer as a maintained app (#28332)
This PR adds NICE DCV Viewer as a new maintained app for macOS. The app
is available through homebrew and is used for connecting to NICE DCV
remote display protocol.

---------

Co-authored-by: Kenny Botelho <kbotelho@nvidia.com>
Co-authored-by: Eugene <eugkuo@gmail.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
Co-authored-by: Noah Talerman <noahtal@umich.edu>
Co-authored-by: Jahziel Villasana-Espinoza <jahzielv@gmail.com>
2025-05-15 12:12:53 -04:00
Gabriel Hernandez
63b2e19630
allow turning off mdm for iphone and ipad hosts (#29087)
For [#23784](https://github.com/fleetdm/fleet/issues/23784)

This adds the "turn off mdm" option don't he host details page for
iPhone and iPad devices.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-05-15 12:38:07 +01: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
eac2b575f8
UI - singular for single host targeted in bulk run (#29097)
Small clean up

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-14 12:59:58 -07:00
RachelElysia
56b34eb29f
Fleet UI: Allow self-service uninstallations of FMA and custom packages (#29055) 2025-05-14 11:42:37 -04:00
RachelElysia
49ff65b859
Fleet UI: Unreleased bug separating card from details summary component (#29113) 2025-05-13 17:16:37 -04:00
jacobshandling
28ea0f0589
UI: User menu style fix (#29066)
## For #27609 

<img width="180" alt="Screenshot 2025-05-12 at 4 00 52 PM"
src="https://github.com/user-attachments/assets/1aabd897-ecae-45f0-9b53-c81677a47d55"
/>

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-13 11:49:48 -07:00
jacobshandling
9bd3a3df8d
UI: Hide script contents for saved script run activity details (#29064)
## For #27255 

- Hide script contents when a saved script was run
- Clean up code

<img width="1276" alt="Screenshot 2025-05-12 at 3 39 32 PM"
src="https://github.com/user-attachments/assets/e057820e-3db0-4ac0-be7c-38abf20cfadc"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-13 11:16:27 -07:00
RachelElysia
8df6ea1fd0
Fleet UI: Add policies table to the sw title details page (#28886) 2025-05-13 13:41:44 -04:00
RachelElysia
175f110f86
Fleet UI: Created consistent UI for the copy button of an input field (#29056) 2025-05-13 10:24:32 -04:00
Katheryn Satterlee
9ea5ecde68
Add neon to Linux platform list (#28977)
Added `neon` to list of Linux platforms associated with hosts so that
Linux-specific detail queries and policies will be sent to hosts running
the XDE Neon operating system.

This does not guarantee full compatibility with Neon, but will improve
telemetry.

Resolves #28560 


# 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 automated tests
- [ ] 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
2025-05-12 17:37:21 -05: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
Martin Angers
6e65078b86
BRP: add the batch resend activity support to the frontend (#28900) 2025-05-12 08:32:05 -04:00
RachelElysia
025678a869
Fleet UI: Default to All in dropdown instead of Select place holder (#29015) 2025-05-09 15:34:34 -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
jacobshandling
1cf68356b1
Update test structure (#28874)
Organizational improvement to a test, no functional changes to the
product

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-08 10:01:02 -07:00
RachelElysia
fe087db01b
Fleet UI: Hide edit tarballs package (#28965) 2025-05-08 12:26:35 -04: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
RachelElysia
7a66e37ec4
Fleet UI: Add FMA gitops to FMA details and update activity feed (#27878) 2025-05-08 09:22:55 -04:00
RachelElysia
5ec2deba9c
Fleet UI: Fix unreleased app store app timestamp broken (#28934) 2025-05-08 09:16:51 -04:00
RachelElysia
f64753f72b
Fleet UI: Fix unreleased VPP icon bug in self-service (#28926) 2025-05-07 14:51:07 -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
RachelElysia
37511be3a5
Fleet UI: Dashboard vuln bugginess (#28848) 2025-05-07 11:39:32 -04:00
RachelElysia
55f308663a
Fleet desktop: Self-service stale time causing previous searches not to recall API (#28910) 2025-05-07 11:39:10 -04:00
jacobshandling
07869b8ad4
Test RunScriptBatchPaginatedList (#28839)
## For #28159

### Follow-up to #28563 

- Add tests
- Misc cleanup

- [x] Added/updated automated tests

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-06 11:42:04 -07:00
jacobshandling
260b9ee6c3
UI: Fix condition for modal rendering (#28866)
## For #28861 

- Correctly interpret `0` as a valid team id for rendering the modal

![Screenshot 2025-05-06 at 10 04
46 AM](https://github.com/user-attachments/assets/50c890d5-8cd1-4452-b14f-864907ae53f3)

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-06 10:24:15 -07: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
RachelElysia
cd7da066ac
Fleet UI: More pixel grace for zoomed out screensize (#28778) 2025-05-05 13:42:26 -04:00
RachelElysia
03a2198bf6
Fleet UI: Pass device user to use correct device user API (#28782) 2025-05-05 09:16:38 -04:00
jacobshandling
722f4a03d8
UI: Premium feature message when viewing GitOps Mode toggle on Fleet Free (#28744)
## For #28743 

<img width="1350" alt="Screenshot 2025-05-01 at 3 19 24 PM"
src="https://github.com/user-attachments/assets/1fb56a1b-ce8c-4e8c-b8b6-be1d23f91380"
/>

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-02 09:34:37 -07:00
jacobshandling
19c2e9197d
UI: Enable Integrations > Advanced save button in GitOps Mode (#28748)
## For #28747 

<img width="639" alt="Screenshot 2025-05-01 at 4 28 22 PM"
src="https://github.com/user-attachments/assets/0808d9fd-8866-4eb1-a84e-bef1efdd6919"
/>

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-02 09:32:34 -07:00
jacobshandling
dfa5573469
UI: Allow VPP token upload in GitOps mode (#28746)
## For #27941  


![ezgif-45eb8e193cea86](https://github.com/user-attachments/assets/4dee3f31-e087-4c3c-a101-3c228c5be38b)

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-02 09:31:36 -07:00
jacobshandling
dc490c236d
UI: Clean up various states on the Settings page (#28752)
## For #28266 

<img width="1912" alt="Screenshot 2025-05-01 at 9 48 06 PM"
src="https://github.com/user-attachments/assets/f8b66d86-79c5-4166-b328-4befc3bd51f9"
/>
<img width="1912" alt="Screenshot 2025-05-01 at 9 48 44 PM"
src="https://github.com/user-attachments/assets/c7ddf782-4cfe-45a3-b291-86a61d127264"
/>
<img width="1912" alt="Screenshot 2025-05-01 at 9 49 43 PM"
src="https://github.com/user-attachments/assets/354ccdb6-f7f9-41c6-aceb-b08d2c8b76f0"
/>
<img width="1912" alt="Screenshot 2025-05-01 at 9 51 42 PM"
src="https://github.com/user-attachments/assets/d9405f9b-1146-47ea-a18c-8047cbfecffd"
/>

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-02 09:14:30 -07:00
RachelElysia
57a2fb4341
Fleet UI: Add Self-service categories key and filtering (#28506) 2025-05-02 12:11:48 -04:00
jacobshandling
5c082647bc
UI: Support webhook logging configuration (#28737)
## For #28166 

- Support new webhook logging configuration
- Update and improve types

<img width="420" alt="Screenshot 2025-05-01 at 12 15 25 PM"
src="https://github.com/user-attachments/assets/0e624c6a-3d69-4c9d-a64b-2a27533e6d44"
/>

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-02 09:04:05 -07:00
RachelElysia
38c84be9b1
Fleet UI: Clean up Policies > Manage automation > Software options .tar.gz / missing version (#28770) 2025-05-02 11:59:45 -04:00
RachelElysia
12a14ea2a9
Fleet UI: Surface policy count triggering automatic installations (#28726) 2025-05-02 11:01:26 -04:00
RachelElysia
e5f56fc9fa
Fleet UI: VPP apps with self service shows correct install status (#28739) 2025-05-02 10:41:06 -04:00
RachelElysia
c68de7c953
Fleet UI: Upload and install tarball archives (#27839) 2025-05-02 10:17:09 -04:00
jacobshandling
1f1ef3f8ef
Update Google Calendar event bodies and relevant previews in the Fleet UI (#28715)
## For #27458 

- Update Calendar events modal:
  - not-configured preview image
  - preview modal
- Update Google calendar event body

### In Google Calendar:
<img width="453" alt="Screenshot 2025-04-29 at 3 48 38 PM"
src="https://github.com/user-attachments/assets/6f7a7486-ab8d-448c-8e12-3ab9ac32b5ac"
/>

### In Fleet UI:
<img width="736" alt="Screenshot 2025-04-30 at 4 03 28 PM"
src="https://github.com/user-attachments/assets/5850f062-3ae9-4523-9c02-e2c52c3586c0"
/>


<img width="736" alt="Screenshot 2025-04-30 at 4 04 57 PM"
src="https://github.com/user-attachments/assets/6f6104a1-b3e7-4d40-8af0-5c264f93f2dc"
/>


- [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-01 13:12:53 -07:00
jacobshandling
9ab0eb2acd
UI: Update conditional access on a per-policy basis (#28658)
## For #28049 , #28610

- **Implement front end ability to enable or disable conditional access
on a per-policy basis**
- **Update policy status UI to include new "action required" state,
representing a failed policy on a host with conditional access enabled**
- Additional improvements

<img width="1624" alt="Screenshot 2025-04-29 at 1 32 33 PM"
src="https://github.com/user-attachments/assets/960b3348-b0e2-48b8-bcff-28f91f64fd01"
/>

<img width="1624" alt="Screenshot 2025-04-29 at 12 15 39 PM"
src="https://github.com/user-attachments/assets/b0e0cf1f-a693-4e0b-b18a-a44ee258975f"
/>

<img width="1624" alt="Screenshot 2025-04-29 at 12 15 49 PM"
src="https://github.com/user-attachments/assets/15f7bea1-7338-4997-93bf-8baeb308e3f0"
/>

<img width="1400" alt="updated policies table headers"
src="https://github.com/user-attachments/assets/164fd84a-a9ee-4dfe-8d73-b4e82e27edbc"
/>

- [x] Changes file added for user-visible changes in `changes/`
- [ ] 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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-01 11:43:38 -07:00
Jordan Montgomery
87d05b3ed8
Display host certificate decimal serials in addition to hex for smaller values to match keychain (#28732)
For #27007 

# 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] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [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-01 14:29:11 -04:00
jacobshandling
2beed5a2ec
UI: Fix live policy response percentage rounding (#28719)
## For #27052 

- Use `round` instead of `ceil` and `floor`

<img width="144" alt="Screenshot 2025-04-30 at 10 20 09 PM"
src="https://github.com/user-attachments/assets/48a64558-6aca-4cd0-be9e-a526f9e6219d"
/>


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-01 10:03:23 -07:00
Sarah Gillespie
ee3872c2f5
Fix unreleased UI bug in org settings page (#28720) 2025-05-01 10:01:45 -05:00
RachelElysia
f0133008a1
Fleet UI: Fit placeholder text for host > software search (#28709) 2025-05-01 09:21:02 -04:00
RachelElysia
b737b3f681
Fleet UI: Prevent software card from disappearing when no vulns detected on software (#28708) 2025-05-01 09:20:33 -04:00
RachelElysia
9767cb5c91
Fleet UI: Fix host details > software vuln filter z index issue (#28655) 2025-05-01 09:19:22 -04:00
RachelElysia
55c7b54713
Fleet UI: Fix squished dropdown on safari (#28663) 2025-04-30 11:36:31 -04:00
RachelElysia
39df25e004
FE: Fix broken test (#28684) 2025-04-30 11:35:02 -04:00
Gabriel Hernandez
50af9e800e
disabled manual agent install checkbox when setup experience software and run script is already added (#28679)
For [#28629](https://github.com/fleetdm/fleet/issues/28629)

this disabled the manual agent install checkbox if the user has already
uploaded install software or a run script for setup experience


- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-04-30 16:22:24 +01:00
RachelElysia
ea165b65e2
Fleet Desktop: Self-service search, status, errors updates (#27731) 2025-04-30 10:02:09 -04:00
Scott Gress
4b5f8de637
Add syntax highlighting support for shell and powershell scripts (#28417)
# 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.

# Details

This PR adds syntax highlighting for shell scripts and Powershell
scripts. It switches highlighting mode based on the extension of the
file.

**Shell:**
<img width="775" alt="image"
src="https://github.com/user-attachments/assets/712ef7db-cf33-4bd7-b620-e4b55225ecf5"
/>

**Powershell:**
<img width="773" alt="image"
src="https://github.com/user-attachments/assets/8a9fedb8-d8e3-4285-9ae6-d6f17c760e52"
/>
2025-04-29 10:24:05 -05:00
Sarah Gillespie
9e535425cd
Handle wide logos in MDM setup experience and migration dialog on Apple devices (#28539) 2025-04-29 09:39:28 -05:00
Gabriel Hernandez
789b56000f
Add UI for enabling manual agent install of a bootstrap package (#28550)
For #[26070](https://github.com/fleetdm/fleet/issues/26070)

This adds the UI for enabling a manual agent install for a bootstrap
package. This includes:

**The new form option for enabling manual agent install of a bootstrap
package**


![image](https://github.com/user-attachments/assets/5d271136-e41b-4c03-bbd8-09450ded82dc)

**disabling adding install software and run script options when user has
enabled manual agent install**


![image](https://github.com/user-attachments/assets/24e3ce6e-8c8f-4987-91e6-8f3fa721d67b)


![image](https://github.com/user-attachments/assets/41be4090-b97f-4ffb-ad76-001232ccd434)


**improvements to the setup experience content styling. I've created a
`SetupExperienceContentContainer` component to centralise the styles for
the content of these sub sections.**

**updates to the preview sections copy and replacing the gifs with
videos**

- [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

---------

Co-authored-by: Sarah Gillespie <73313222+gillespi314@users.noreply.github.com>
2025-04-29 15:29:21 +01:00
jacobshandling
85e826a094
UI: Add ability to run scripts on batches of hosts (#28563)
## For #28159 

- Implement UI capability to run scripts on batches of hosts at a time
  - Add new hosts table `Run script` primary action, triggers
- new `RunScriptBatch` modal, allows running scripts on the selected
batch of hosts
- new `RunScriptBatchPaginatedList`, handles logic specific to this
modal, and utilizes the now more flexible `PaginatedList` component
- Widen capabilities of `PaginatedList` component to elegantly handle
more diverse applications, including this one
- Widen capabilities of `ScriptDetailsModal` component to elegantly
handle more diverse applications, including this one
- Streamline updating `state`s on manage hosts page
- Clearer, more concise naming

- [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-04-28 16:32:41 -07:00
RachelElysia
3b42be5571
Fleet UI: Device user/Host details page layout changing including split out host header and summary card (#28598) 2025-04-28 13:00:13 -04:00
Gabriel Hernandez
9ec9995560
add truncation and tooltip to host details host with long name (#28547)
For [#27198](https://github.com/fleetdm/fleet/issues/27198)

Adds truncation and conditional tooltip to the host name on the host
details page.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
2025-04-28 17:09:42 +01:00
Gabriel Hernandez
8a33a07cb1
Add keyboard accessibility controls to the activity items on host details and dashboard pages (#28433)
For [#26505](https://github.com/fleetdm/fleet/issues/26505)

This adds keyboard a11y controls to the activity items. We use a button
element for the clickable area around a button as this gives us all the
default keyboard control functionality out of the box.

https://www.loom.com/share/311d684c5df145d1b32b83c8c0285133

- [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
2025-04-25 10:21:56 +01:00
RachelElysia
0f2b5aa536
FE: Buttons clean up Part 2 (#28346) 2025-04-23 14:42:30 -04:00
github-actions[bot]
81c7801cf5
Fleet UI: Update osquery version options (#28316)
Automated update of MIN_OSQUERY_VERSION_OPTIONS with any new osquery
release. (Note: This automatic update is the solution to issue #21431)

Co-authored-by: RachelElysia <RachelElysia@users.noreply.github.com>
2025-04-16 19:12:48 -05:00
RachelElysia
3cf9202e39
Fleet UI: Added hover cursors to checkbox and radio components (#28113) 2025-04-16 13:29:08 -04:00
Dante Catalfamo
f59713b7ce
Removed indicator for background LUKS validation (#28218)
#25700
2025-04-16 12:25:41 -04:00
Scott Gress
03449b3a71
Remove button variant prop from Conditional Access page (#28290)
Support for this property was removed in
https://github.com/fleetdm/fleet/pull/28245, which merged just before
https://github.com/fleetdm/fleet/pull/27982. It's now causing linting
errors. I confirmed that the Save button looks the same without it.

<img width="793" alt="image"
src="https://github.com/user-attachments/assets/f3357cd2-1c4f-4c91-8c2e-e56797fb86e9"
/>
2025-04-16 10:58:25 -05:00
Scott Gress
183d0d8150
Update SQL parser to handle more modern syntax (#28211)
For #26366

# Checklist for submitter

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

# Details

This PR fixes an issue where the SQL parser in the UI doesn't recognize
window functions like `OVER()` and marks the SQL as having syntax
errors. The fix here is to update to a more modern parsing library. This
involved updating some AST-parsing code we have for determining which
tables are used in a query, for the purposes of feeding autocomplete and
determining query compatibility.

# Testing

I tested this with the query mentioned in #26366 in Chrome, Firefox and
Safari on MacOS. I also added new unit tests for our SQL helper
functions.

# Notes

During testing I discovered that we were bundling two versions of the
ACE editor into our frontend package. By upgrading one version by a
couple of patches to make the two dependencies equal, we chop out ~300k
from our bundle.
2025-04-16 10:10:52 -05:00
Scott Gress
dc3edfb3c7
Fx query page clearing selection after load (#28228)
# Checklist for submitter

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

# Details

This PR fixes an issue where any selection made in the table on the
Manage Queries page would be cleared a few seconds after the page
loaded. The issue was due to a re-render happening after the `staleTime`
period elapsed, coupled with an array that was being re-created on every
render.
2025-04-16 10:10:21 -05:00
Gabriel Hernandez
83a358f588
fix showing add user button on user card on host details page (#28279)
correctly conditionally show the "add user" button on the users card on
the host details page
2025-04-16 15:49:33 +01:00
RachelElysia
7f71866571
FE: Button renaming, better storybook view, remove unused code (#28245) 2025-04-16 09:56:09 -04:00
Gabriel Hernandez
a894d41c2f
refresh host details on cancling lock or wipe activities for linux (#28234)
quick fix to refresh host details for linux hosts for canceling lock or
wipe activities.
2025-04-16 10:18:01 +01:00
Gabriel Hernandez
97d0611b92
Fix host upcoming activites showing wrong created at date in tooltip (#28242)
For #27775

fixes an issue where the host upcoming activities were showing the
incorrect created at dates in the tooltip.

<!-- 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] Manual QA for all new/changed functionality
2025-04-16 10:17:48 +01:00
jacobshandling
f58519914b
UI: Conditional access - Microsoft Entra (#27982)
_Note - currently feature flagged. Build frontend with
`ALLOW_CONDITIONAL_ACCESS=true NODE_ENV=development yarn run webpack
--progress --watch` to enable this feature. Also, all of this
functionality depends on the new `config.license.managed_cloud` being
true, so you'll need to mock that data somehow. [This
branch](https://github.com/fleetdm/fleet/tree/27043-fake-data) has the
appropriate fake data for testing_

## For #27043, #27864

### Build front end for Fleet's integration with Microsoft Entra,
allowing conditional preventtion of single sign-on for hosts failing any
policies on a team

#### Trigger the integration

![trigger](https://github.com/user-attachments/assets/4578568a-f64a-4390-83d9-fbec751d4b14)

#### Triggered, but configuration still not verified
<img width="1348" alt="√ not-verified-return-to-prefilled-form"
src="https://github.com/user-attachments/assets/44d0c21f-2554-40a8-9158-d1107cff2d09"
/>

#### Verified, short and long tenant ids:

![ezgif-75f82492180d28](https://github.com/user-attachments/assets/015f3605-81e8-463a-be74-07bab99d9724)

#### Verified –> Deleted
![√ verified - delete -
deleted](https://github.com/user-attachments/assets/44b8ba70-49c9-43e7-be54-8474756a5b50)

#### Enable for policies of a team
![√
enable-for-team](https://github.com/user-attachments/assets/9454b0da-059d-4991-a3ff-14e74257a3a7)

#### Activities
<img width="886" alt="√ activities"
src="https://github.com/user-attachments/assets/d21e6185-c2f2-40b2-9c69-9b92fab58766"
/>

#### Unavailable for self-hosted Fleet instances:

![no-access-self-hosted](https://github.com/user-attachments/assets/56213522-b721-472f-9174-c8dac0df61f3)

#### Premium only
![√
premium-only](https://github.com/user-attachments/assets/97373960-6b38-458b-be37-4c3868469182)


- [x] Changes file added for user-visible changes in `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)
- [ ] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-04-15 13:55:07 -07:00
RachelElysia
c70c00cedc
Fleet UI: More truncation fixes after QA (#28209) 2025-04-14 14:41:09 -04:00
Scott Gress
a7a80273aa
Fix double "Target" heading in Save Query modal (#28171)
For #28170

Before:
<img width="416" alt="image"
src="https://github.com/user-attachments/assets/03663571-cad2-44f5-bd4d-c94a14e4957b"
/>

---

After:

<img width="382" alt="image"
src="https://github.com/user-attachments/assets/f14a032a-85c8-4d1e-b4fc-617c6e5223ac"
/>
2025-04-14 09:12:07 -05:00
RachelElysia
aa5d668893
Fleet UI (unreleased bugs): Related to code fields in modals (#28173) 2025-04-11 15:52:38 -04:00
Dante Catalfamo
94f6127edc
Orbit for Windows ARM64 (#27882)
#27275 and #27274

- [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 automated tests
- [x] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [x] Make sure fleetd is compatible with the latest released version of
Fleet (see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/fleetd-development-and-release-strategy.md)).
- [x] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [x] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).

---------

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2025-04-11 10:18:28 -04:00
Konstantin Sykulev
82c0491b51
Refactoring ListHostSoftware (#27490)
# Checklist for submitter

https://github.com/fleetdm/fleet/issues/27003

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] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated automated tests
- [ ] 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: Ian Littman <iansltx@gmail.com>
2025-04-10 17:29:15 -05:00
RachelElysia
00c3611712
Fleet UI: Table improvements (tooltips, tab-ability) (#27986) 2025-04-10 15:42:10 -04:00
Victor Lyuboslavsky
df71307eeb
Added scim/details endpoint (#28007)
For #27281

This PR adds `/api/{version}/fleet/scim/details` endpoint, along with
some frontend fixes.

# Checklist for submitter
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [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-04-10 14:08:45 -05:00
Gabriel Hernandez
453ddecf93
dont show add user button when idp already set up for host (#28089) 2025-04-10 17:50:31 +01:00
RachelElysia
ae94bc88c6
Fleet UI: Add textarea variant 'code' and apply to various modals (#27930) 2025-04-10 11:25:28 -04:00
RachelElysia
a8d9839bba
Fleet UI: Move view all host link onto host count (#28042) 2025-04-10 09:14:28 -04:00
Gabriel Hernandez
1f9244ef8e
Fix UI cancel error message lock wipe (#28071)
For #28018

some fixes for the UI of cancel activities including:

- showing proper error message
- correct permission checking for allowing users to cancel activity
- refresh all host details after lock or wipe command to get updated
host status.
2025-04-10 14:12:47 +01:00
Gabriel Hernandez
2d45272bc8
show user card when needed on host details and my device page (#28073)
Quick change to show the user card with user data on host details and my
device page
2025-04-10 14:01:06 +01:00
Martin Angers
e33b2b0a41
Cancel UA: Make wiped activity a host-specific activity so it can be deleted when canceled (#28034)
For #27409  (unreleased bug)

# Checklist for submitter

- [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
See
https://drive.google.com/file/d/1xg8DM97UJITA0vGUyoOd2esZRfehEgW7/view?usp=drive_link
2025-04-10 12:25:03 +01:00
RachelElysia
335b302cd9
Fleet UI: Dashboard responsiveness tweaks (#27990) 2025-04-09 09:54:16 -04:00
Gabriel Hernandez
a80d806087
add error message for cancel activities (#27937)
For #27410

add error messages for cancel activities.
2025-04-08 15:03:09 +01:00
Gabriel Hernandez
4e653472f1
integrate with api data for host details/my details pages idp feature (#27932)
For #27783

integrate with API for idp feature on host details and my details pages
2025-04-08 15:02:25 +01:00
Allen Houchins
c57fc2d03e
Fixed policy check for macOS - Disable guest account (#27531)
I created and tested the fix before seeing the [comment in this
issue](https://github.com/fleetdm/fleet/issues/24417).

Feel free to merge the fix or close this out but I made this pull
request since we had another customer report this issue today.
2025-04-08 08:52:05 -05:00
Scott Gress
d0a47fb25e
Update save/edit query forms to be consistent with save/edit policy (#27821)
For #27601 

## Details

A couple of updates to the save/edit Query screens to bring them in line
with how save/edit Policy screens work, as described in [the
Figma](https://www.figma.com/design/LzGmucdJQgbQCuHMZhGKCM/-24097-Custom-targets--labels--for-policies?node-id=2-130&p=f&t=9iFB2FRnIkn98NSg-0):

* Moved platform selector out from under Advanced
* Use checkboxes for selecting platforms
* Disable Save button when no platforms are selected
* In the "Save new query" modal, pre-select the platforms that are
compatible with the query

## Testing

1. Add a new query with the SQL "SELECT * FROM privacy_preferences;".
Verify that only ChromeOS is checked in the modal when you click Save.
2. Verify that if you deselect ChromeOS (so that no platforms are
selected), the save button is disabled in the modal.
3. Select one or more platforms and save the query.
4. After saving the query, edit it and verify that the platforms you
selected are checked.
5. Verify that deselecting all platforms disables the edit button on the
Edit Query screen.
6. Select different platforms, save, and refresh to verify that the
platforms you selected were persisted.
2025-04-08 08:31:58 -05:00
RachelElysia
df61e6b7f5
Fleet UI: Fix platform resetting on pagination of OS table (#27896) 2025-04-07 09:45:45 -04:00
Gabriel Hernandez
fc63a2c237
add cancel upcoming host activities in the UI (#27879)
For #27410

add UI for canceling upcoming host activities and displaying canceled
activities in global and past activity feeds. This includes:

**ability to cancel upcoming activity**


![image](https://github.com/user-attachments/assets/1fdafb05-dc0c-4025-8389-e9a0b9da2673)

**Confirmation modal to cancel activity**


![image](https://github.com/user-attachments/assets/e765c60b-2b5e-43ca-a31b-2a7af0d64247)

**new global activities when upcoming activities are canceled**


![image](https://github.com/user-attachments/assets/04f368cb-f66c-4802-b3fb-79fd5f7b06bb)

**new past activities when upcoming activities are canceled**


![image](https://github.com/user-attachments/assets/b2d0a50e-58e8-4677-84bd-9c645651b9ab)


<!-- 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
- [x] Manual QA for all new/changed functionality
2025-04-07 12:11:24 +01:00
Gabriel Hernandez
d7629b08ea
Feat UI idp host details (#27730)
For #27283

This includes the work to add the new users card on host details and
show the new idp information as well as google profiles and other
emails.

This includes:

**new user card on the host details and my device page**


![image](https://github.com/user-attachments/assets/f02badbf-85a2-4198-a30c-ace0e08ac843)


**rework of the grid layout on the host page**

**removal of unneeded device mapping code on host details and my device
page**



I've changed how we are using the grid layout in CSS to better support
dynamic rendering content


<!-- 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`.
- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-04-04 15:46:22 +01:00
RachelElysia
e5ba365201
Fleet UI: Unify manage automations > paginated list footer styling (#27841) 2025-04-03 13:07:57 -04:00
Scott Gress
d6eaa0913a
Add ability to target labels on policies (#27599)
For #27276 

# Details

This PR adds the ability to select labels when saving or editing a query
in the UI, so that the query will only target hosts with those labels.
It follows the API design from
https://github.com/fleetdm/fleet/pull/27196, utilizing the
labels_include_any and labels_exclude_any fields. The expectation is
that when creating or updating a query, labels_include_any and
labels_exclude_any are arrays of label names, and when fetching a single
query, they are arrays of objects with a name and an id key.

Other updates in this PR:

* Removed colons from various headings on the Save Policy Modal and Edit
Policy form
* Updated the "Delete label" text
* Removed "Policy runs on all hosts with these platforms." subheading
underneath the platform selector
* TargetLabelSelector component now has `suppressTitle` flag to turn off
the "Target" title.
2025-04-02 16:31:03 -05:00
RachelElysia
8957b66c55
Fleet UI: Add premium tooltip (#27794) 2025-04-02 14:00:29 -04:00
RachelElysia
f2872c4dab
Fleet UI: Disable Next when items on the page match exact page size (#27743) 2025-04-02 09:10:08 -04:00
Gabriel Hernandez
94037e5e56
fix not sending upn correctly to api when editing cert authority (#27726)
For #27570

fixes issue where upn was not sent back correctly when editing digicert
cert authority
2025-04-01 15:59:36 +01:00
Ian Littman
0293d99800
Remove default EXE install/uninstall scripts, require entering install/uninstall scripts on EXE upload (#27268)
For #27267.

Below is what's shown immediately after selecting an EXE:

<img width="1254" alt="image"
src="https://github.com/user-attachments/assets/a28d8565-de88-448a-bdbc-92aefc34ad55"
/>


TODO:

* Tests
* GitOps requirements changes
* Disabling add button/adding errors when required scripts aren't
specified

# 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/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] 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: Luke Heath <luke@fleetdm.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: RachelElysia <rachel@fleetdm.com>
2025-03-31 13:52:06 -05:00
Gabriel Hernandez
8f056c83d1
small fixes to CA story (#27679)
For #27678

adds another error message to UI for custom profiles.

also fixes an issue with the wrong link for private key, and also
2025-03-31 16:53:52 +01:00
RachelElysia
29034bb230
Fleet UI: Pagination follow-up (#27428) 2025-03-31 11:44:04 -04:00
RachelElysia
f11a73dd53
Fleet UI: Responsive accommodations for 7 cards (#27644) 2025-03-28 16:57:25 -04:00
RachelElysia
f7853ddbef
Fleet UI: Tweaks to improve styling on low widths (#27397) 2025-03-28 11:31:50 -04:00
Gabriel Hernandez
007cdc9efa
fixes for editing certificate authorities in UI. (#27583)
For #27581, #27584, #27612

contains a couple of fixes with editing CAs in UI:

- fix for only removing API token, password, or challenge inputs when
the user has not yet made a change to those fields.
- fix for sending empty array when UPN input is empty
- fix for error for private key
- fix when editing a digicert CA when UPN is set from gitops and is null

- [x] Manual QA for all new/changed functionality
2025-03-28 15:22:21 +00:00
RachelElysia
eaa3ce071c
Fleet UI: Fix dropdown from changing when vuln filters change (#27620) 2025-03-28 10:46:22 -04:00
Gabriel Hernandez
626ff8a467
add new idp section on integrations page and show the users idp connection with fleet (#27566)
For #27282

add new idp section on the integration page. This page will show the
different statuses for the users idp connection with fleet.

**not connected**


![image](https://github.com/user-attachments/assets/13fb46c6-64ca-43fa-a259-e7cf3fdb82b1)

**successful connection**


![image](https://github.com/user-attachments/assets/de80eea5-8d76-4b50-8024-5f702e85f88a)

**failed connection**


![image](https://github.com/user-attachments/assets/bbfcfcf8-51aa-4c08-b57f-cb0c2842313a)

<!-- 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.
- [ ] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-03-28 11:23:07 +00:00
jacobshandling
748b5bcd51
Full-stack: Make "Server url" validation conditions consistent across Fleet, update Web Address form validation and submission logic per Fleet best practices (frontend/docs/patterns.md) (#27455)
## For #27454 

Consider Fleet web URL to be valid if it:

- (Front end and back end): uses “https://” or “http://” scheme
 and
- (Front end) accepts only valid or "localhost" hosts (e.g., "a.b.cc" or
"localhost", but not "a.b")
- (Back end) accepts any host (e.g., "localhost", "a.b.cc", or even
"a.b")


### Setup flow UI URL validation:

![setup](https://github.com/user-attachments/assets/34a428d2-5731-46f2-b708-c88b790e3667)

### Org settings UI URL validation:

![org-settings](https://github.com/user-attachments/assets/147916c8-9c5b-4ae7-9e14-625c65b42d0a)

### Server URL validation:
<img width="1464" alt="invalid-url-server"
src="https://github.com/user-attachments/assets/83a112e1-6318-4b09-864d-fe66a223835d"
/>

### Invalid Fleet server URL in DB error:

![invalid-url-in-db](https://github.com/user-attachments/assets/aae591fb-6cc3-49bd-8556-22129be4c2c4)


- [x] Changes file added for user-visible changes in `changes/`,
- [x] Added/updated automated tests
- [ ] 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-03-27 13:56:38 -07:00
Martin Angers
2bb5efd25b
Adjust delete host message for iDevices (#27513) 2025-03-25 15:33:24 -04:00
Gabriel Hernandez
5c56796403
update error message on os settings error details on host details (#27441)
For #27440

Updates showing the profile error message in os settings error cell to
show on a different error message from the API.

<!-- 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
2025-03-25 14:01:54 +00:00
Gabriel Hernandez
11dcb2dbf9
reset some form inputs if others are changed to force users to reenter their values (#27399)
For #26606

This makes a change to empty out the API token, Password, or Challange
inputs when other inputs on their form changes. This forces the user to
put in that value again so that their change can be authenticated.
2025-03-21 16:33:09 +00:00
Gabriel Hernandez
174c389aae
test and fixes for ca forms and modals (#27381)
For #26606

Test and fixes for CA forms

---------

Co-authored-by: Sarah Gillespie <73313222+gillespi314@users.noreply.github.com>
2025-03-21 15:00:30 +00:00
Victor Lyuboslavsky
e7e9f54071
Updated FileVault and BitLocker error messages (#27365)
For #24862

# 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
- [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-03-21 09:56:50 -05:00
Gabriel Hernandez
735328c1e7
UI cleanup for cert auth list header and list item descriptions (#27378) 2025-03-21 14:29:49 +00:00
RachelElysia
0271390b4e
Fleet UI: Do not allow clicking a button that doesn't work (#27364) 2025-03-21 09:35:59 -04:00
RachelElysia
ea37ad6df3
Fleet UI: Surface Windows FMA (#27068) 2025-03-21 09:33:06 -04:00
Gabriel Hernandez
af40739e90
add error for custom profile with wrong variable (#27375)
For #26606

add error message when custom profile contains variable that is not
supported
2025-03-20 22:47:35 +00:00
Gabriel Hernandez
c30d3ac03b
small changes to placeholder and hint text in CA forms (#27372)
For #26606

small changes to digicert and custom scep forms placeholders and help
text
2025-03-20 22:03:10 +00:00
Rachael Shaw
11e8ed27da
#24586 Use consistent language in error messages ("upload" -> "add") (#27316)
See #24586
2025-03-20 15:44:09 -05:00
Dante Catalfamo
e9f1d52f6a
Fix multi-row-select cell firing onClickRow twice (#27010)
#26564
2025-03-20 16:36:59 -04:00
Gabriel Hernandez
549c41e53d
fixes for various UI issues with cert authority feature (#27341)
For #26606

various fixes to the UI for the cert authority feature

- [x] Manual QA for all new/changed functionality
2025-03-20 19:10:48 +00:00
jacobshandling
bc7b3f75f5
A couple naming improvements and cleanups (#27321)
## For #24950 

- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-20 10:06:46 -07:00
RachelElysia
7f8073624a
FE: Refactor pagination to be a single component (#27224) 2025-03-20 12:40:43 -04:00
Gabriel Hernandez
69165966c8
add UI for adding, editing, deleting new NDES and custom scep cert authorities (#27270)
For #26607, #26608

This adds the ndes and custom scep forms to add those types of
certificate authorities. this includes:

**form for adding and editing ndes**


![image](https://github.com/user-attachments/assets/2effb143-d23b-4a87-948b-4732ddc5c29c)

**form for adding and editing custom scep**


![image](https://github.com/user-attachments/assets/212b496a-0f48-4b2b-aa72-aa482a4e0f6a)

This also contains the removal of the current ndes UI which was on the
mdm settings page

> NOTE: there will be another PR to handle the various error messages
and other polish to the UI.

- [ ] 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.
- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-03-20 16:14:53 +00:00
RachelElysia
3a04df2746
Fleet UI: Create consistent padding and headers styling for HDP (#27302) 2025-03-20 09:20:30 -04:00
RachelElysia
59d9cafbdd
Fleet UI: Make OS copies in dashboard are consistent (#27248) 2025-03-20 09:20:10 -04:00
RachelElysia
3d3c901d3c
Fleet UI: Disable unsupported auto install of .exe during add flow (#27315) 2025-03-20 09:16:37 -04:00
jacobshandling
c2df8703df
UI: Truncate MDM server url and serial number (#27175)
## For #26295 

<img width="965" alt="Screenshot 2025-03-14 at 4 10 31 PM"
src="https://github.com/user-attachments/assets/908772ef-a666-46ab-82f4-6dbceca17f70"
/>
<img width="965" alt="Screenshot 2025-03-14 at 4 10 26 PM"
src="https://github.com/user-attachments/assets/897c1174-7965-4c3b-8055-6bc2718c2110"
/>



- [x] Changes file added for user-visible changes in `changes/`
- [ ] 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-03-19 09:55:03 -07:00
jacobshandling
915cf416d6
Full-stack: Granular host count data for live queries/policies (#27258)
## For #24950 

- Track more granular host count data when running a live query/policy,
and return it in two new fields of each `"status"`-typed websocket
message
- On completion of live query/policy, display that granular data in a
tooltip in the UI
- Streamline and clarify frontend live query logic
- Update types and field names to better reflect the data they contain
and the sources from which that data is derived
- Add comments to clearly define what various fields of data represent
- Update heading copy rendered while live queries and policies are
running

###
[Demo](https://www.loom.com/share/ad1d64cf527f4fbc981df58ad581242f?sid=a0dc1269-a049-43c3-afdb-65c0bb946ece)

 

![ezgif-6ecb9c3895acd4](https://github.com/user-attachments/assets/02c3ad40-c874-4978-af28-bdaec098906a)



- [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-03-19 09:53:55 -07:00
Sarah Gillespie
dd99760ee6
Add UI tooltips for errors related to certificates feature in host MDM profiles (#27252) 2025-03-19 10:04:03 -05:00
Scott Gress
f3835e6d49
Allow team admins and team maintainers to manage labels (#27063)
For #27037 

# Checklist for submitter

- [ ] 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.

## Details

This PR updates the UI to allow team admins and maintainers to create
labels, and to edit or delete labels that they created. They will not be
able to edit or delete labels created by other team admins or
maintainers, or by global admins. Global admins will still be able to
edit or delete any label.

## Testing

1. Log in a global user and create a new label
1. Create a team admin user
1. Verify that the team admin user can create a label
2. Verify that the team admin user can edit their own label
2. Verify that the team admin user can delete their own label
2. Verify that the team admin user cannot edit or delete the label
created by the global user
3. Create a team maintainer user
1. Verify that the team maintainer user can create a label
2. Verify that the team maintainer user can edit their own label
2. Verify that the team maintainer user can delete their own label
2. Verify that the team maintainer user cannot edit or delete the label
created by the global user
2. Verify that the team maintainer user cannot edit or delete the label
created by the team admin user
3. Verify that the team admin user cannot edit or delete the label
created by the team maintainer user
2025-03-19 09:38:53 -05:00
RachelElysia
4c6a74eacd
Fleet Design: Add software icons into storybook (#27238) 2025-03-19 09:22:12 -04:00
jacobshandling
11307525d1
UI: Validate both org logo URLs, accept data URIs (#27160)
## For #26271 


![ezgif-582a8acaa8686e](https://github.com/user-attachments/assets/4284bbf7-8708-46f3-b020-f4039f8bd1b0)

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-18 12:57:07 -07:00
jacobshandling
7953fe2e2c
UI: Simplify New policy flow (#27173)
## For #26052 

- Remove add policy modal from flow
- Update "Schema" links
- Add "Examples" link


![add-policy](https://github.com/user-attachments/assets/69d60573-f6a6-45e8-92ff-4faa29f224a9)




- [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-03-18 12:56:05 -07:00
Sarah Gillespie
e9e0f7b7e3
Update activity log UI for certificate authority features (#27227) 2025-03-18 14:41:03 -05:00
RachelElysia
87cd06bf63
Fleet UI: Unreleased broken software dropdown (#27137) 2025-03-14 10:51:08 -04:00
Gabriel Hernandez
e85b46e915
add UI for editing digicert CA (#27103) 2025-03-13 19:41:22 +00:00
jacobshandling
6a2bbce4fa
UI - Restore accidentally removed GitOps mode compatibility (#27106)
## #27101 

<img width="1352" alt="Screenshot 2025-03-13 at 10 35 08 AM"
src="https://github.com/user-attachments/assets/c89c0d44-e0b8-48bd-98bf-4d9a1b1a908c"
/>

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-13 11:52:57 -07:00
Gabriel Hernandez
2f97fecf39
add and delete digicert (#27083)
For #26606

This adds the ability to add and delete digicert integrations in the
fleet UI. this includes:

**The delete modal**


![image](https://github.com/user-attachments/assets/11ab33eb-4db3-4445-8647-2a40436fe2fc)

**the add digicert modal**


![image](https://github.com/user-attachments/assets/c6ae27dc-5a38-4c99-bafa-ef5b9f832ffa)

**integration with API to perform these actions**

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

- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-03-13 16:46:10 +00:00
jacobshandling
f3924b9129
UI - make label chooser styling more flexible (#27054)
## Follow-up for https://github.com/fleetdm/fleet/pull/27019

Makes the styling of the label chooser more flexible, will allow
seamless merging of [incoming
changes](https://github.com/fleetdm/fleet/pull/26867)

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-12 16:07:10 -07:00
Scott Gress
096a747739
Ability to add labels to queries (front end) (#26867)
For #26649 

# Checklist for submitter

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

## Details

This PR adds the ability to select labels when saving or editing a query
in the UI, so that the query will only target hosts with those labels.
It follows the API design from
https://github.com/fleetdm/fleet/pull/26589, utilizing the
`labels_include_any` field. The expectation is that when creating or
updating a query, `labels_include_any` is an array of label names, and
when fetching a single query, `labels_include_any` is an array of
objects with a `name` and an `id` key.

As part of this work the `TargetLabelSelector` component is updated to
allow it to show a message in place of the dropdown when there are no
custom options (e.g. "include any", "include all", "exclude any") to
choose from.
2025-03-12 11:54:29 -07:00
Scott Gress
822fe3dd18
GitOps mode updates (#26733)
For #26719 

Set of updates based on feedback on the GitOps mode. 

- [X] On settings/teams/users, keep "Add user" button and "Actions"
dropdown enabled
- [X] Enable buttons on /settings/integrations/mdm/apple
- [x] Disable form fields (no tooltip) + save button (w/ tooltip) on
/controls/setup-experience/end-user-auth
- [x] Disable "Edit" and "Delete" actions w/ tooltip on software detail
page
- [x] Update Org Settings -> Advanced options to only disable items
available in gitops
  - Domain
  - Verify SSL certs
  - Enable STARTTLS
- [x] Disable adding fleet maintained apps
2025-03-12 11:03:12 -07:00
Scott Gress
20109fa7f8
Allow team admins to view inherited policy details (#26896)
## Details

Quick fix to an issue where when a team admin attempted to via an
inherited policy, they would encounter an eternal spinner / flickering
page. The issue stemmed from a reload cycle being set off by the stored
policy being returned with a team ID of `null`, and existing code that
works around the fact that the `useTeamId` hook modifies the router
state.

## Testing

1. Create an All Teams policy on an instance with at least one team
2. Create an admin for the team
3. Log in as the team admin
4. Go to Policies page, select the team from the dropdown, click on the
inherited policy in the list to view its details.

On main, the details never load.  On this branch, they do.
2025-03-12 10:30:32 -07:00
RachelElysia
dafb0c89f7
Host Software Table: Add vulnerability filters to API and UI (#26995) 2025-03-12 11:26:12 -04:00
jacobshandling
25a3835067
UI - Update label chooser empty state (#27019)
## For #23830 

No labels state –> label present state in 4 places:


![ezgif-38e21421995afd](https://github.com/user-attachments/assets/d71c6a41-ab13-45b1-b6a1-ec1de14fad96)

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-11 09:37:23 -07:00
Gabriel Hernandez
9484ac30bc
add UI for certificate authority list (#26955)
For #26605

This is the UI for the certificate authority list that shows the added
CAs. This includes:

**new CA section and list on integration page**


![image](https://github.com/user-attachments/assets/4159bd6d-632e-4adc-ae45-d83f824380ae)

**empty CA list state**


![image](https://github.com/user-attachments/assets/8f27cd8b-53b2-4cf3-ac64-8fa6ec0a2ae2)

**gitops mode on add CA card and CA list**


![image](https://github.com/user-attachments/assets/981a353c-f515-44ed-90d5-f55e412053ba)


![image](https://github.com/user-attachments/assets/286dc503-f2cd-4329-aa46-6301df75b826)


- [ ] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-03-11 14:31:02 +00:00
Dante Catalfamo
fd9664ce4d
Respect user input whitespace when previewing calendar event (#26920)
# 26689
2025-03-11 09:44:02 -04:00
Ian Littman
32143284f6
Force a user to click through to redeem MFA if they aren't on a browser that started the MFA process (#26980)
For #26976.

<img width="384" alt="image"
src="https://github.com/user-attachments/assets/8d057ec2-c3b0-45d1-bb8c-9745b426e27d"
/>

An example of such a browser would be an email link scanner, so this
*should* fix cases where link-scanning was redeeming the MFA link before
the intended user could get to it. Real users can still click through if
they wind up on this page, e.g. if they logged in with a different
browser than the one used to open the MFA link.

Users redeeming MFA with the same browser that initiated the login skp
the button and redeem/land on the dashboard automatically.

# 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] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [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: Rachael Shaw <r@rachael.wtf>
2025-03-10 13:56:25 -05:00
jacobshandling
93581e7cb6
Prevent GitOps mode tooltip on 'Cancel' button hover in policies automations modals (#26998)
## For #26997 

<img width="1001" alt="Screenshot 2025-03-10 at 10 16 04 AM"
src="https://github.com/user-attachments/assets/bf23a3b0-d5b9-4d3c-8df6-dc3ebcf93a6d"
/>

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-10 11:45:26 -07:00
RachelElysia
aad8d858cc
Fleet UI: Never truncate host count on Dashboard > Software table (#26777) 2025-03-10 14:02:13 -04:00
Gabriel Hernandez
20eb780ffd
add anroid enterprise deleted banner (#26685)
For #26207

added banner that shows when android enterprise has been deleted.

> TODO: this is only the frontend and will not work until BE work is
done. It will not show in the UI currently


![image](https://github.com/user-attachments/assets/842fd4d2-43fe-4b06-95ff-f2c7a43a8b9f)
2025-03-10 13:16:43 +00:00
Noah Talerman
07ea0508e8
Android BYOD enrollment: simplify language (#26970)
@marko-lisica what do you think?
2025-03-10 09:03:55 -04:00
Sarah Gillespie
e75ef8bc1c
Use server-side sort for host certificates (#26898) 2025-03-07 12:28:07 -06:00
Dante Catalfamo
98fb2f2d8b
Remove min-height from Upcoming/PastActivityFeed (#26783) 2025-03-06 13:31:55 -05:00
Rachael Shaw
6886365468
Fix typo in flash message (#26792)
"Failed ot" -> "Failed to"

![Screenshot 2025-03-03 at 5 38
16 PM](https://github.com/user-attachments/assets/3c9ab2b9-62a2-4eb8-bec5-94d159f2bcb9)
2025-03-05 15:16:02 -06:00
RachelElysia
88d4f8b4c6
Fleet UI: Surface policy automation scripts error messages (#26764) 2025-03-05 16:11:04 -05:00
RachelElysia
04104bdda1
My Device Page: Software link instead of view details hover link (#26885) 2025-03-05 15:54:12 -05:00
Ian Littman
f3cabe3ac3
Don't show custom package warning on auto-install checkbox for FMAs (#26871)
For #26856. Confirmed that this attribute only affects the warning
message so it's safe to remove here.

# 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
2025-03-05 11:41:52 -06:00
Gabriel Hernandez
a068d442e3
Remove cancel icon for all past activities and fix install vpp activity show details (#26846) 2025-03-05 17:28:14 +00:00
Sarah Gillespie
239a7a3994
Hide some host details cards for Android hosts (#26763) 2025-03-04 11:38:50 -06:00
Martin Angers
96fc994558
Bugfix: fix many small bugs in activity actor and activity formatting (#26779) 2025-03-03 16:33:42 -05:00
RachelElysia
452650c03a
My device page: Fix 'show details' to open software details modal (#26771) 2025-03-03 16:21:51 -05:00
Sarah Gillespie
2944d131be
Fix unreleased UI bugs related to host certificates issue (#26732) 2025-02-28 17:03:43 -06:00
Harrison Ravazzolo
3c2c3c6979
update in-app guide for windows mdm (#26612)
Deploying Windows MDM with a customer and ran into some snags and
documentation diff. Updating here but also plan to write and article
about this in greater detail.

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-02-28 14:55:39 -08:00
Rachael Shaw
ddd2834dc8
Sentence case fix in SMTP options form (#26730)
"Username and Password" -> "Username and password"
2025-02-28 15:29:39 -06:00
Scott Gress
3794fb5d67
allow disabling other workflows (#26717)
For #26711 

# Details

Fix for unreleased bug where you are enable to disable "Other
workflows", because after changing the slider from "enabled" to
"disabled" the save button would also be disabled.

The fix (easier to see [with whitespace disabled in the
diff](https://github.com/fleetdm/fleet/pull/26717/files?w=1)) is to pull
the PoliciesPaginatedList out of the `<div>` that gets the `__disabled`
class applied to it when the slider is turned off, and instead disable
it separately using its `disabled` property.

## Screenshota

Before (note disabled "save" button):
<img width="617" alt="image"
src="https://github.com/user-attachments/assets/f2e07969-7d05-4947-b94f-fb4ab144d348"
/>

After:
<img width="620" alt="image"
src="https://github.com/user-attachments/assets/ba104a48-bc68-4e1d-a05c-d477fff7af7a"
/>
2025-02-28 15:22:11 -06:00