Commit graph

3305 commits

Author SHA1 Message Date
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
Scott Gress
b7d320250e
Fix height of masthead on device details page (#26707)
For #26697 

This was using the wrong class (maybe outdated?) for the masthead,
leading to incorrect margins and too much height. Changing it to use the
same class as the main Fleet nav fixes it.

Before:
<img width="1006" alt="image"
src="https://github.com/user-attachments/assets/2c3171de-4d63-4817-a185-b1f492c230b6"
/>

After:
<img width="1008" alt="image"
src="https://github.com/user-attachments/assets/cc4d9237-f82d-4b2a-b8b7-178553d97e7e"
/>
2025-02-28 11:13:46 -06:00
RachelElysia
37b54d1c38
Fleet UI: Team user table overflow unreleased (#26684) 2025-02-28 09:35:53 -05:00
RachelElysia
45015b01e8
Fleet UI: Update hover and focus states for dropdowns and inputfields (#26506) 2025-02-28 08:46:00 -05:00
RachelElysia
a3e92d0f93
Fleet UI: Fix policy software automation fail to report as failing (#26044) 2025-02-28 08:45:33 -05:00
Gabriel Hernandez
a4a218282d
fix for getting android enrollment url (#26667)
quick fix for getting android enrollment url
2025-02-27 20:12:26 +00:00
RachelElysia
f2ad368463
Fleet UI: Hide auto install tag if null (#26660) 2025-02-27 15:09:05 -05:00
Gabriel Hernandez
0da4826480
Feat UI byod landing page (#26592)
For #26211 and #26210

Add Android to byod enrollment landing page. this includes:

**new android section in add hosts modal:**


![image](https://github.com/user-attachments/assets/f951df0c-4654-4434-8c95-8b57634d4921)

**messaging when visiting from non android, ios, ipad device:**


![image](https://github.com/user-attachments/assets/169903a9-8d5e-4e3b-9b78-378a0e791b22)

**enroll into android mdm UI:**


![image](https://github.com/user-attachments/assets/79c9c116-e003-4a80-b0e9-8fbe8775a82c)

**various error states (secret is invalid, android or mac os mdm not
enabled):**


![image](https://github.com/user-attachments/assets/bc0035ac-b2ed-47e5-8e25-8716fc642e70)


![image](https://github.com/user-attachments/assets/87b8ca87-3352-47fe-8dbf-1bc2a49553b1)


![image](https://github.com/user-attachments/assets/5a378f5f-84d3-4738-aab3-0f68760d317d)

- [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-02-27 19:35:42 +00:00
Gabriel Hernandez
44f2858769
hook up SSE for UI android sse (#26656)
For #26207

add server side event setup for the UI when turning on android MDM.

- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
2025-02-27 18:45:41 +00:00
Scott Gress
973fe46c5e
Add pagination to manage automations (#26414)
For #23243 

# Checklist for submitter

<!-- 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)
- [x] Manual QA for all new/changed functionality

## Details

This PR updates the policy Manage Automations modals to support
pagination. Previously, these modals received a list of policies from
the main Manage Policies page, which is itself paginated, so that a user
could only add automations to whatever policies were currently listed on
the Manage Automations page. This PR does some refactoring via the
creation of a new PaginatedList component which:

* accepts a `fetchPage` property it can call to get a page of data, 
* renders the data in a list with checkboxes and optional custom markup
(e.g. dropdowns)
* keeps track of changed ("dirty") items in the list, even across page
changes
* allows parent components to access the list of dirty items via a React
`ref`

For this specific use case, there's also a new `PoliciesPaginatedList`
which implements the `fetchPage` for getting a page of policies, and
adds Save and Cancel buttons. Each of the updated modals uses
`PoliciesPaginatedList` to replace its current code for rendering
policies in a list, and delegates much of the logic around change
tracking to the new components.
2025-02-27 12:43:38 -06:00
Sarah Gillespie
f43fb9538a
Merge branch 'main' into feat-23235-host-certificates 2025-02-27 11:41:34 -06:00
Gabriel Hernandez
7af26ea140
fix single row click issue and pagination (#26644)
For #25464

quick fix for clicking rows and adding errors and pagination to UI
2025-02-27 16:57:41 +00:00
Sarah Gillespie
208d4e704d
Update instructions for manually turning on MDM (#26557) 2025-02-27 10:36:23 -06:00
RachelElysia
769154b821
Fleet UI: Fix several team ids that were dropping in certain flows (#26590) 2025-02-27 10:53:34 -05:00
RachelElysia
73a368a200
Fleet UI: Clean up TabNav and TargetChipSelector components (#26256) 2025-02-27 10:48:08 -05:00
Scott Gress
75bbbf6731
Fix issue with policy details modal causing 500 error page (#26628)
For #26604 

This PR fixes the way we import DOMPurify, so that we can access its
`sanitize` method.

I'm not sure why this popped up now -- the last release was a month ago.
Perhaps a new release of webpack or a related dependency in our build
chain?

**Before:**

![26604-broken](https://github.com/user-attachments/assets/629567a6-d989-45e2-a90c-eca8f69b1105)

---

**After:**

![26604-fixed](https://github.com/user-attachments/assets/4ec580f1-d189-4692-80d2-fee1d3ed8207)
2025-02-27 09:43:34 -06:00
Gabriel Hernandez
1a655bf89a
UI activites for android mdm (#26647) 2025-02-27 14:07:34 +00:00
Sarah Gillespie
ecaea6104d
Add host certificates refetch to UI (#26630)
Fix unreleased UI bugs
2025-02-27 11:33:49 +00:00
RachelElysia
8c7a543571
Fleet UI: Hide more options button when at larger widths (#26632) 2025-02-26 16:07:59 -05:00
RachelElysia
8a531a65d4
Fleet UI: Move learn more link for auto install warning (#26629) 2025-02-26 16:00:54 -05:00
RachelElysia
7b7fa2fcd1
Fleet UI: Component fixes (styling bugs and code cleanup) (#26149) 2025-02-26 13:47:28 -05:00