Commit graph

39 commits

Author SHA1 Message Date
Ian Littman
c797fb73c2
Delete pending script executions when the underlying script is edited or deleted (#23520)
#21888 

# 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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-11-06 18:15:52 -06:00
Noah Talerman
93b51f3ff3
Controls > Setup experience > Setup assistant: add space (#23384)
For the following bug:
- #23383
2024-10-31 09:28:55 -04:00
Gabriel Hernandez
f73cb371bc
fix not showing install software when there was software titles (#23352)
relates to #23321

fix that shows the add install software UI when there is software to
install.
2024-10-29 18:52:09 +00:00
Gabriel Hernandez
489035ef2b
Various setup exp UI fixes (#23328)
relates to #23321, #23322, #23323

This contains three UI fixes:

1. fix when we show the empty state for install software. We were
expecting an empty array but the response from `GET
/setup_experience/software` sends null when no software has been added


![image](https://github.com/user-attachments/assets/0300fffa-5586-4073-a6df-491e844516c9)

2. fix to add responsive style to install software and run script panels
that matches the other setup experience panels.


![image](https://github.com/user-attachments/assets/5494146f-583d-4816-9c1b-6227bb520108)


![image](https://github.com/user-attachments/assets/a2e3c43d-64bf-4695-9870-029482080172)

3. Fix and clean up the copy of the first three setup experience panels
to match the new ones. Also, update the alt text on the images to be
more descriptive.

- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-10-29 14:29:05 +00:00
Gabriel Hernandez
ef45cedfca cleanup warnings 2024-10-25 13:34:19 +01:00
Gabriel Hernandez
8af926a78c
Fix UI download set script (#23227)
quick fix to allow downloading setup script
2024-10-25 13:33:40 +01:00
Gabriel Hernandez
2d7f9a342f
various quick updates to UI for setup experience feature (#23226) 2024-10-25 13:05:40 +01:00
Gabriel Hernandez
990206c782
Fix issues around selecting software to install (#23223)
relates to #23180

fixes up some issues with showing the correct number of selected
software to install and also with the table row selection behaviour.

We've had to create a couple new props on the `TableContainer`
component; one called `defaultSelectedRows` and the other
`persistSelectedRows`.


`defaultSelectedRows` will allow you to specify the default rows that
are selected in the table on the initial render. This is done with an
object with the key being the index of the row and the value being a
boolean.

```tsx
// the first and third rows will be selected in this case
<TableContainer
  defaultSelectedRows={{0: true, 2: true}}
  ...
/>
```

`persistSelectedRows` will allow the row selections to persist across
search query changes. This defaults to false.

---------

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
2024-10-25 11:27:44 +01:00
Gabriel Hernandez
d5e11a212b
Fix UI build (#23129)
quick fix to fix the ui build failing
2024-10-23 17:30:54 +01:00
Gabriel Hernandez
68cdcde4eb
fix to PUT /setup_experience/software and GET /setup_experience/software endpoints (#23074)
This PR fixes two issues:

1. `PUT /setup_experience/software` will now take the correct json body
of `software_title_ids` to update the software to install during setup
experience

2. include the `install_during_setup` attribute on the software titles
software package results from `GET /setup_experience` endpoint
2024-10-23 15:57:02 +01:00
Gabriel Hernandez
d5689dd0fe Merge branch 'main' into feat-setup-experience 2024-10-21 12:36:50 +01:00
Gabriel Hernandez
dae2977d12
better messaging for setup experience when mdm is turned off (#23008)
relates to #18508

add better messaging when apple mdm is disabled don't he setup
experience tab. This feature is currently only macos only so we have
better messaging for users about this.

<img width="841" alt="image"
src="https://github.com/user-attachments/assets/9e2c9cec-b272-4acd-8058-6d04eab055d8">

- [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
2024-10-21 12:28:44 +01:00
RachelElysia
a2e7010ee2
Fleet UI: Add SCEP integration to MDM settings (#22275) 2024-10-15 09:23:59 -04:00
Gabriel Hernandez
d953350621
UI tests for setup experience (#22861)
set of tests for some important UI flows of the setup experience install
software and scripts.
2024-10-14 13:01:56 +01:00
Gabriel Hernandez
3468adf408
Feat UI api integration setup experieince (#22856)
relates to #22817

API integration and some polish for the UI of the setup experience
feature.
2024-10-11 15:10:27 +01:00
Gabriel Hernandez
d03468314e
add UI for uploading setup experience script (#22691)
relates to #22374

> NOTE: we still need integration with the API which will be done in
another PR.

>NOTE: Please review https://github.com/fleetdm/fleet/pull/22651 first,
as this PR is based off of that branch.

This adds the UI for uploading a setup experience script. this includes:

**setup experience script uploader:**


![image](https://github.com/user-attachments/assets/bec00594-9519-48a9-bce5-d90d282ad5fb)

**script card:**


![image](https://github.com/user-attachments/assets/35549f1c-c280-4293-8e4e-e36e2a3df16c)

**delete script modal:**


![image](https://github.com/user-attachments/assets/90be6bd3-6807-4adb-8709-2ec5893f7fad)

**script run preview:**


![image](https://github.com/user-attachments/assets/cb874986-e0eb-4e6e-bab3-b8325394894c)



<!-- 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 tests
- [x] Manual QA for all new/changed functionality
2024-10-10 13:19:32 +01:00
Gabriel Hernandez
3729b4b98d
Install software setup experience UI (#22651)
relates to #22373

This implements the UI for the install software setup experience in the
UI. This includes:

**updating the nav sidebar**


![image](https://github.com/user-attachments/assets/91928a23-13cc-430b-b207-ba226df32b86)

**creating a new install software card**


![image](https://github.com/user-attachments/assets/8b4a9495-4119-4360-9f31-53ac41b83316)

**select software modal for selecting which software to install**


![image](https://github.com/user-attachments/assets/a3b4b786-ab8e-42b2-8feb-4b2a83e69af9)**


- [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
2024-10-09 16:09:38 +01:00
Jahziel Villasana-Espinoza
385da248cb
feat: validate profile with apple (#21862)
> Related issue: #17558

# 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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-09-10 18:44:58 -04:00
Jahziel Villasana-Espinoza
a00559e732
feat: enable multiple ABM and VPP tokens (#21693)
> Related issue: #9956 

# 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] Added/updated tests
- [x] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes
- [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] Manual QA for all new/changed functionality

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
Co-authored-by: Roberto Dip <rroperzh@gmail.com>
Co-authored-by: Sarah Gillespie <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: Dante Catalfamo <43040593+dantecatalfamo@users.noreply.github.com>
Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
2024-08-29 18:51:46 -04:00
Sarah Gillespie
80137dfcc6
Update UI for software self-service features (#19244)
Issues https://github.com/fleetdm/fleet/issues/17587,
https://github.com/fleetdm/fleet/issues/18836,
https://github.com/fleetdm/fleet/issues/18837,
https://github.com/fleetdm/fleet/pull/18339, and
https://github.com/fleetdm/fleet/pull/18340

# TODOS
- Integrate backend
- Unit/integration tests
- Various todos noted in comments
- Cleanup styles and organization of components (de-duplicating and
consolidating where possible)
- Activity feed updates (if any)

# Checklist for submitter

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

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

- [ ] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] 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.
- [ ] Added/updated tests
- [ ] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [ ] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).

---------

Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2024-05-31 11:09:53 +01:00
RachelElysia
184c41fbb6
Fleet UI: Fix reversed accordion text (#18767) 2024-05-08 15:55:18 -04:00
Roberto Dip
9186bf4070 add missing GIF for setup experience 2024-03-29 13:00:56 -03:00
Gabriel Hernandez
a292e704de
add startup assistant to the UI (#17731)
relates to #9147

add the setup assistant page to the UI. This includes:

- new setup assistant page
- uploaded profile and release device manually form
- preview for setup assistant flow

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

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2024-03-26 14:46:33 +00:00
Gabriel Hernandez
1ca3e3e7ff
remove unneeded table boarders on mdm page (#17492)
remove unneeded header boarders on mdm pages.

**before:**


![image](https://github.com/fleetdm/fleet/assets/1153709/6fd93f49-1218-468c-a83b-aa80ca7b0384)


**after:**


![image](https://github.com/fleetdm/fleet/assets/1153709/ad885532-c88e-474e-b88c-90155c5416e3)


- [x] Manual QA for all new/changed functionality
2024-03-08 15:46:38 +00:00
Victor Lyuboslavsky
64e76f6f10
15919 vulnerabilities page (#17047)
#15919 

This is a feature branch. All PRs into this branch have already been
reviewed.
2024-02-23 11:00:31 -06:00
RachelElysia
2a6e94a55e
Frontend tech debt: Cleanup {} around strings (#16592) 2024-02-23 09:57:18 -05:00
Jacob Shandling
1cf7362968 Merge branch 'main' into 15919-vulnerabilities-page 2024-02-21 10:58:58 -08:00
RachelElysia
0f727001d7
[Styling released bugs] Fleet UI: Consistent capitalization, consistent empty state header (#16883) 2024-02-15 13:32:55 -05:00
RachelElysia
0ec010976a Frontend : Vulnerability changes to existing pages (#16601) 2024-02-15 10:35:05 -07:00
Gabriel Hernandez
ce01ca32ce
Feat UI changes to controls page (#16379)
relates to #16046

updates to various UI changes for the controls page.

includes:

- changes to header styles,
- changing layout of the os updates
- remove accordion and add tabs for os update targets
- various style fixes

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-01-26 18:41:35 +00:00
Jacob Shandling
67c45d5417
UI – refactor forms and form fields (#16159)
## Addresses #15325 

- Define shared global styles for forms (`form` and `.form`s) and
`.form-field`s
- Sweep through the app, updating each form from being locally styled to
first prioritizing the global styles and only defining local styles
where needed for custom behavior
- Remove lots of unnecessary nesting of elements
- Other small bug fixes and improvements

### Samples, before (L) | after (R):
**Save query modal**
![Screenshot 2024-01-17 at 11 49
14 AM](https://github.com/fleetdm/fleet/assets/61553566/14f209fb-31db-41ef-8e63-e0d8994698c1)

**Edit query form**
![Screenshot 2024-01-17 at 11 50
35 AM](https://github.com/fleetdm/fleet/assets/61553566/b07e70ea-3095-4e4f-be73-95a3c499839b)

**Add hosts modal**
![Screenshot 2024-01-17 at 11 51
48 AM](https://github.com/fleetdm/fleet/assets/61553566/4ef1f410-a823-41d1-b2f6-ea8eb5231f93)


## QA Plan:
@xpkoala here's the same list from the issue, freshly de-checked for you
to use if it's helpful:
* Please check error states of each field

#### Specified by issue:
##### In "Save query" modal:
- [ ] Reduce space between checkboxes and their help text to 8px/0.5rem
for the following fields:
   - [ ] Observers can run
   - [ ] Discard data 
- [ ] Update the following checkbox labels to have normal font weight
(not bold):
   - [ ]  Discard data

##### On "Edit query" page:
- [ ] Update the following checkbox labels to have normal font weight
(not bold):
   - [ ] Observers can run
   - [ ] Discard data

##### In "Add hosts" modal, for copy text fields: 
- [ ]  match typical form form field styles
- [ ] Adjust the positioning of the copy icon to keep it from being too
far down

##### Further locations to check
- [ ] ChangeEmailForm.jsx 
- [ ] ChangePasswordForm.jsx 
- [ ] ConfirmInviteForm.jsx 
- [ ] ConfirmSSOInviteForm.jsx
- [ ] EnrollSecretModal.tsx
- [ ] ForgotPasswordForm.jsx
- [ ] LoginForm.tsx
- [ ] EditPackForm.tsx
- [ ] (New)PackForm.tsx
- [ ] AdminDetails.jsx
- [ ] ConfirmationPage.tsx
- [ ] FleetDetails.jsx
- [ ] OrgDetails.jsx
- [ ] ResetPasswordForm.tsx
- [ ] UserSettingsForm.jsx
- [ ] EditTeamModal.tsx
- [ ] IdpSection.tsx 
- [ ] DeleteIntegrationModal.tsx
- [ ] IntegrationForm.tsx 
- [ ] EndUserMigrationSection.tsx
- [ ] RequestCSRModal.tsx
- [ ] Advanced.tsx 
- [ ] Agents.tsx 
- [ ] FleetDesktop.tsx
- [ ] HostStatusWebhook.tsx front
- [ ] Info.tsx 
- [ ] Smtp.tsx 
- [ ] Sso.tsx 
- [ ] Statistics.tsx
- [ ] WebAddress.tsx
- [ ] CreateTeamModal.tsx
- [ ] DeleteTeamModal.tsx
- [ ] EditTeamModal.tsx
- [ ] AgentOptionsPage.tsx
- updated the layout of this page to align with the rest of the forms in
the UI – can easily revert if it's not what we want
- [ ] AddMemberModal.tsx
- [ ] RemoveMemberModal.tsx
- [ ] UserForm.tsx 
  - Used by both `EditUserModal` and `CreateUserModal`
  - A few different conditions that cause different rendering behavior 
- [ ] DeleteHostModal.tsx
- [ ] TransferHostModal.tsx
- [ ] LabelForm.tsx
- [ ] MacOSTargetForm.tsx
- [ ] WindowsTargetForm.tsx 
- [ ] BootstrapPackageListltem.ts
- [ ] EndUserAuthForm.tsx
- [ ] PackQueryEditorModal.tsx
- [ ] PolicyForm.tsx 
- [ ] SaveNewPolicyModal.tsx
- [ ] ConfirmSaveChangesModal.tsx
- [ ] Query automations modal
- [ ] Policy automations modal - addresses #16010 
- [ ] SoftwareAutomationsModal

## Checklist for submitter
- [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>
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
2024-01-18 10:48:44 -05:00
Gabriel Hernandez
80c574298e
Add free tier UI states os updates and setup experience pages (#16160)
relates to #16031

This adds and makes consistent the free UI states for the os updates and
setup experience pages.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-01-18 10:54:51 +00:00
Jacob Shandling
333674b051
UI – Host query report page (#15511)
## Addresses second major part of #15011  (item 3) – Host query report

_Note for reviewers: The most important files here are:_
- HostQueryReport.tsx
- HQRTable.tsx
- HQRTableConfig.tsx

_The rest are associated API services, interfaces, helpers, routes,
styles, and miscellanious code improvements I made along the way._

____________

### See linked issue for enumeration of feature-related tasks

<img width="1230" alt="Screenshot 2023-12-08 at 4 23 50 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/4ae4b41b-9209-4afa-ae50-8844d01ff8fd">

<img width="1230" alt="collecting"
src="https://github.com/fleetdm/fleet/assets/61553566/061ac2bc-899f-4b29-91ba-36ebecf5ce58">

<img width="1230" alt="Screenshot 2023-12-08 at 4 24 39 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/f8b25e01-fe3b-47e6-b980-eba9538b1a01">

<img width="1230" alt="Screenshot 2023-12-08 at 4 25 01 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/46360274-8500-494c-8fb7-3a1d45347ce0">

Re-routes to host details > queries if:
- query reports are globally disabled:

https://github.com/fleetdm/fleet/assets/61553566/ac67da8c-57bc-4d9b-96be-daf3b198e704

- query has `Discard data` enabled:

https://github.com/fleetdm/fleet/assets/61553566/b797dd24-9893-4360-bf40-b80298848864

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-12-08 16:54:24 -08:00
Martin Angers
f5f66ebe63
Unify profiles database identifier to profile_uuid for macOS and Windows profiles. (#15297) 2023-12-04 10:04:06 -05:00
Martin Angers
2f927df4f0
Implement Windows OS Updates (feature branch). (#15359) 2023-11-29 11:07:24 -05:00
Gabriel Hernandez
da20214938
Create new ListItem and FileUploader component and use on controls page (#15103)
This adds a new ListItem component and FileUploader component and
updates the Custom settings and scripts page to use this new ListItem
component.

This List component centralises where the markup and styles live. We
still need to update the bootstrap list item and eula upload list item
but will do that in the future.

- [x] Manual QA for all new/changed functionality
2023-11-13 15:30:22 -08:00
Marko Lisica
8162d052bf
Icons improvements (making frontend consistent with Figma component library) (#14185)
# Checklist for submitter

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

- [ ] Manual QA for all new/changed functionality

---------

Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2023-10-31 16:06:38 +00:00
Noah Talerman
9c7079f50c
Windows MDM docs: turn on Windows MDM (#13943)
- Add new "Windows setup" page to "Device Management" section of docs
- Rename "MDM setup"  page to "macOS setup." Update links and add redirect
- Rename existing "macOS setup" page to "macOS setup experience." Update links. Did not add redirect because of conflict with "macOS setup" page
- Remove "MDM" from all MDM doc page titles
2023-10-04 15:39:09 -04:00
Gabriel Hernandez
fa252e4977
Update controls tabs to show mdm disabled UI state per tab (#13794)
relates to #9831

Update Controls page to individually show the mdm disabled UI state per
tab. Before this was done across the entire control page:


![image](https://github.com/fleetdm/fleet/assets/1153709/67a88cf4-c489-46aa-a802-58c4ef61ac5a)


Also, refactors the code to be less specific to mac OS.


- [x] Manual QA for all new/changed functionality
2023-09-11 12:52:24 +01:00