Commit graph

188 commits

Author SHA1 Message Date
Gabriel Hernandez
3c2e4b8f4a
update UI to react 18 (#17471) 2024-03-13 19:09:16 +00:00
Gabriel Hernandez
2d1caa84d4
rollup the mdm solutions by name on the dashboard page (#17297)
relates to #16837 

This rolls up the mdm solutions by name so that we only see one instance
of the mdm name. Clicking on this will then open a modal that shows the
server URLs and # of hosts for the mdm solution.

**Before:**

<img width="759" alt="image"
src="https://github.com/fleetdm/fleet/assets/1153709/2e8e6187-d987-42c3-8b8f-aa0552869578">

**After:**

<img width="768" alt="image"
src="https://github.com/fleetdm/fleet/assets/1153709/ff92199a-a9f8-4e42-8bb7-b626979c79d5">

**New modal:**

<img width="822" alt="image"
src="https://github.com/fleetdm/fleet/assets/1153709/88891630-352a-4aa6-999c-e25907a27ad0">


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-03-04 13:14:50 +00:00
Sarah Gillespie
e0cb59d4cb
Surface MDM devices where DEP assignment failed (#16973) 2024-03-01 10:52:19 -06:00
RachelElysia
7158df1a85
[tiny released bug] Fleet UI: Fix live query/policy host search icon (#17082) 2024-02-29 08:49:36 -05: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
RachelElysia
afb4b872b0 Frontend: Move probabilityofexploit to own component (#16667) 2024-02-15 10:35:43 -07:00
RachelElysia
0ec010976a Frontend : Vulnerability changes to existing pages (#16601) 2024-02-15 10:35:05 -07:00
Gabriel Hernandez
f0cb1017b6
Feat UI improve troubleshooting profile messaging (#16590)
related to #16417

Improve the error messages for windows mdm profile errors.

This will now format the errors in the UI tooltip


![image](https://github.com/fleetdm/fleet/assets/1153709/a3f69d84-639f-47e9-b361-1cd7be238235)
2024-02-08 13:28:26 -03:00
RachelElysia
e52dc6d8fc
Fleet UI: Disable tooltip on default value (#16371) 2024-01-29 09:20:41 -05:00
Jacob Shandling
026c012d6b
UI - add missing 'No report' copy (#16339)
## Addresses [this missing
copy](https://github.com/fleetdm/fleet/issues/15707#issuecomment-1906595805)

<img width="1109" alt="image"
src="https://github.com/fleetdm/fleet/assets/61553566/a8b8bf17-ec42-401b-ae2c-99b8bbdbd26e">


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-01-25 18:20:26 +00:00
RachelElysia
82887fc90c
Frontend: Cleanup 42 js warnings (#16219) 2024-01-23 09:16:10 -05:00
Jahziel Villasana-Espinoza
2833c80cfe
feat: add option to disable scripts (#15815)
> 📜 Related issue: https://github.com/fleetdm/fleet/issues/14500

# 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/` 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
2024-01-03 10:42:08 -05:00
Victor Lyuboslavsky
348bcd4263
Added tooltip to Policies page stating when policy counts were last updated. (#15784)
Added tooltip to Policies page stating when policy counts were last
updated.
#15323

# 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/` 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-03 07:47:43 -06:00
Jacob Shandling
e58f1bbc22
Adjust paginated button icon alignment (#15795)
## Addresses #15032 

<img width="431" alt="Screenshot 2023-12-20 at 4 58 51 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/89b856f8-f2bb-4c00-a8b7-7a115eb1de23">

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

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-12-21 09:23:45 -08:00
Jacob Shandling
1fa5004428
UI – Add and update performance impact features to uitilize metrics that include live query runs (#15642)
Merging during freeze with approval from all stakeholders, including verbal approval from @sharon-fdm 

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-12-14 11:49:56 -08: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
Jacob Shandling
bb56e288e5
UI – 14415 frontend - host details (#15437)
## Addresses the first major part of #15011 (item 2) – Host Details >
Queries tab

<img width="1274" alt="Screenshot 2023-12-04 at 1 09 31 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/47075ebb-eb98-48f5-82ab-af4022932376">
<img width="678" alt="Screenshot 2023-12-04 at 1 09 57 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/db48ca6d-e73b-4a90-b782-f9ee265927f1">

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-12-05 13:58:02 -08:00
Luke Heath
557b53e5df
Set filter cell input background to transparent (#15321) 2023-11-27 14:36:00 -06:00
Jacob Shandling
e709357ca2
UI – Restore clickability to entirety of sort headers except in filter text inputs (#15260)
## Addresses #14519 

- Applies anywhere there is a sort header, including the query results
and query report tables


https://github.com/fleetdm/fleet/assets/61553566/5bf0db8f-3d13-434d-b811-914fdded02df



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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-21 13:49:41 -08:00
Jacob Shandling
376be83062
UI – Add support for Windows powershell scripts (#15128)
## Addresses #14752
### (see issue for detailed list of features implemented)

![script list
alpha](https://github.com/fleetdm/fleet/assets/61553566/1b35da72-5ff9-47e2-9d4b-0e0334e2c2b8)


![details-scripts-mac](https://github.com/fleetdm/fleet/assets/61553566/6ccad298-d4bd-47fa-bd0b-193f87b68881)

![details-scripts-windows](https://github.com/fleetdm/fleet/assets/61553566/208bb2c4-eaf8-45c4-8a9b-dfd7590f2117)

![error](https://github.com/fleetdm/fleet/assets/61553566/c0f1ad90-345b-4356-922a-ad76da96db0e)

- Also addresses #15140:

![fixed-dropdown-table-issue](https://github.com/fleetdm/fleet/assets/61553566/6a0d951d-156a-4d86-a1ab-9b00cd731e94)
- Align host details > scripts > Status cells' icon alignments (see
misaligned "pending" icon above):
![Screenshot 2023-11-14 at 4 08
01 PM](https://github.com/fleetdm/fleet/assets/61553566/a354d8c4-f56a-4cf0-8d58-1fc0ad662180)

## Checklist for submitter

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-15 11:28:57 -08:00
Jacob Shandling
1a5633e716
UI – Truncate long query results cells (#15079) 2023-11-10 13:31:11 -08:00
Jacob Shandling
29b3da14f3
UI – Replace overflow-x: scroll with ...auto; remove redundant local declarations (#15054)
## Addresses #11753 

Fixed:
![Screenshot 2023-11-08 at 5 45
09 PM](https://github.com/fleetdm/fleet/assets/61553566/55570f5b-eb7d-4974-96e3-0304eef30b87)
(Was also occurring on queries page)
![Screenshot 2023-11-08 at 5 45
16 PM](https://github.com/fleetdm/fleet/assets/61553566/139d1ac6-e1e7-4b22-87d5-8cb43d00005d)

## 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>
2023-11-09 09:16:22 -08:00
Jacob Shandling
bf8504a028
Refactor Tooltip Wrapper (#13845) 2023-11-07 13:15:49 -08:00
Jacob Shandling
cc129d61b1
UI - Use flex properties for issues cell (#14967)
Instead of less flexible `margin`

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-07 09:16:52 -08:00
Jacob Shandling
9d628d9e0f
UI - align issues icons on manage hosts page (#14962)
<img width="135" alt="Screenshot 2023-11-06 at 9 53 05 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/b42eb365-d246-40c3-b08d-0a093bd18db7">

## Checklist for submitter

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

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-11-06 10:34:06 -08:00
RachelElysia
2a22c40345
Fleet UI: Icon alignment (#14860) 2023-11-03 07:41:13 -04:00
RachelElysia
f0d3760784
Fleet UI: Changing pages, filters, or search query clears checkbox selections (#14902) 2023-11-03 07:40:19 -04: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
Jacob Shandling
70e0182e4d Merge branch 'main' into 7766-main-merge 2023-10-11 12:56:52 -07:00
Roberto Dip
9ffa11c25d
Feat: saved scripts (#14409)
For #9537
2023-10-10 19:00:45 -03:00
RachelElysia
c541409ba4
Fleet UI: Small fixes (e.g. hiding last_fetched filter, hide Edit query button for observers) (#14410) 2023-10-10 12:46:51 -04:00
RachelElysia
8f6368da4e
Fleet UI: Fix vertical alignment of truncated cell (#14096) 2023-09-22 15:55:35 -04:00
RachelElysia
858092f137
Fleet UI: [tiny bug fixes] Table text cell vertical alignment [released], fix first letter capitalization [unreleased] (#14086) 2023-09-22 10:48:21 -04:00
Jacob Shandling
46b1db7850
UI: Update tooltip/link structure & functionality in Software tables (#13893) 2023-09-13 10:19:56 -07:00
RachelElysia
17e581b916
Fleet UI: [small released styling bugs] Fix live query icons (size, alignment, style, color) (#13593) 2023-09-01 10:18:29 -04:00
RachelElysia
32031a5b75
Fleet UI: More icons updated (#13270) 2023-08-28 13:09:21 -04:00
RachelElysia
96da9fc353
Fleet UI: Fix custom query frequency on manage automations modal (#13511) 2023-08-25 13:00:14 -04:00
RachelElysia
38c5c58f8a
Fleet UI: [feature] All table links can open in a new tab (#13349) 2023-08-22 09:20:40 -04:00
RachelElysia
970b3c3962
Fleet UI: [bug fix] Text cells in all tables no longer overflow into next column (#13241) 2023-08-10 09:27:54 -04:00
RachelElysia
fafea94dba
Fleet UI: Dropdown arrows updated, on hover button icon color, etc (#13129) 2023-08-07 09:25:32 -04:00
Jacob Shandling
c69bba6d0e Merge branch '7765-frontend' into 7765-combined-schedules-and-queries 2023-07-27 13:35:07 -07:00
Jacob Shandling
1daf6f02c6 Revert "Merge front-end changes into 7765 Master Dev branch (#12905)"
This reverts commit 7bff7447b0.
2023-07-27 13:32:24 -07:00
Jacob Shandling
266e9bf2e0
UI – Update platforms column to only display compatible platforms (#13003)
## Addresses #12999 

<img width="1282" alt="Screenshot 2023-07-27 at 11 59 01 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/b60d3b41-3d7b-4550-ba7c-8615bae085a6">


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-27 12:10:22 -07:00
Juan Fernandez
7bff7447b0
Merge front-end changes into 7765 Master Dev branch (#12905)
Front-end changes for combined schedules and queries.
2023-07-24 09:47:05 -04:00
Jacob Shandling
2faa476272
UI: 2 Query name styling issues (#12885)
## Addresses #12883 and #12877 

- Truncate long query names such that the name itself is truncated with
ellipses while the "Observer can run" icon and associated tooltip, if
present, remain visible.
- Address lower-case "p"s in query name getting cutoff.

<img width="944" alt="Screenshot 2023-07-20 at 2 21 16 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/09c141e8-a6bf-4380-8bd2-cdcc57019f73">

## QA
@xpkoala –The style that was removed here to address the text cutoff
issue is a far-reaching change, since this problem may be happening
elsewhere the TextCell component is used. I did manually QA this, but
please take a careful look at other tables to double check that other
text cells are still styled correctly.


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-20 14:45:25 -07:00
Jacob Shandling
27a1bfd805
UI - Restore host details Query action and Schedule tab (#12832)
## Addresses a conversation in which we decided _not_ to remove the host
details page's Query action and Schedule tab after all. @zhumo
@rachaelshaw, related to #12636

### Restores these features

<img width="758" alt="Screenshot 2023-07-18 at 4 17 41 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/6a7ce26a-6ee2-4c3d-b2a3-524b90e417f8">

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-19 11:02:53 -07:00
Jacob Shandling
53f57c44db
UI - Queries page updates, pt.1 (#12784)
## Addresses #12636 – follow-up work for PR #12713

- Update Platforms column to render the user-selected platforms for a
query if any, otherwise those that are compatible
<img width="686" alt="Screenshot 2023-07-14 at 6 03 06 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/abd1f079-bdfe-45be-b1dd-58eb903672ef">

  - Clean up typing and names around this column 
- Encapsulate logic for query automations column cells into new
QueryAutomationsStatusIndicator component
  - Increase modularity and decrease coupling of StatusIndicator
- Cleanly handle overflowing queries table due to very long query name
<img width="512" alt="Screenshot 2023-07-14 at 6 07 20 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/6e970038-0aac-4f71-b21d-ececfa66b94f">

- Small copy and layout fixes

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-17 14:09:12 -07:00
Jacob Shandling
7ff4b77fb9
UI: Merge scheduling functionality into queries page (#12713)
## Addresses #12636 

### See issue for list work done
![Screenshot 2023-07-12 at 6 47 04
PM](https://github.com/fleetdm/fleet/assets/61553566/47e3e5b2-0195-4f54-a377-8e5c03313acf)


![Frame-12-07-2023-06-43-32](https://github.com/fleetdm/fleet/assets/61553566/f72f2d41-609f-4409-8595-5f3e4f06d9bb)


### Notes for review:
- Because other work is based on this branch, TODOs / fixes are noted
here until the team comes to a strategy for merging all of the work:
- Add missing space in the Performance impact column "Undetermined"
tooltip text
- I'm having trouble confirming that the inherited queries table is
working right with the mock hard-coded data, though I did see it working
correctly previously. There's an issue with the page reverting to "All
teams" when trying to show the inherited table, though it does show the
table before re-rendering.

- This work is organized clearly by commit, so that might be a
manageable way to go through this code.
- Since the updated API for this work is not yet complete, this work can
be manually tested by either:
    - Using mock API infrastructure, or
- in `ManageQueriesPage.tsx`, comment out the two `useQuery` calls and
add appropriate mock data. You can then modify any fields of interest to
test their related UI functionality. For example, lines 119 -242 might
read:
```
// const {
  //   data: curTeamEnhancedQueries,
  //   error: curTeamQueriesError,
  //   isFetching: isFetchingCurTeamQueries,
  //   refetch: refetchCurTeamQueries,
  // } = useQuery<IListQueriesResponse, Error, IEnhancedQuery[]>(
  //   [{ scope: "queries", teamId: teamIdForApi }],
  //   () => queriesAPI.loadAll(teamIdForApi),
  //   {
  //     refetchOnWindowFocus: false,
  //     enabled: isRouteOk,
  //     select: (data) => data.queries.map(enhanceQuery),
  //   }
  // );

  // // If a team is selected, fetch inherited global queries as well
  // const {
  //   data: globalEnhancedQueries,
  //   error: globalQueriesError,
  //   isFetching: isFetchingGlobalQueries,
  //   refetch: refetchGlobalQueries,
  // } = useQuery<IListQueriesResponse, Error, IEnhancedQuery[]>(
  //   [{ scope: "queries", teamId: -1 }],
  //   () => queriesAPI.loadAll(),
  //   {
  //     refetchOnWindowFocus: false,
  //     enabled: isRouteOk && isAnyTeamSelected,
  //     select: (data) => data.queries.map(enhanceQuery),
  //   }
  // );

  const [
    curTeamEnhancedQueries,
    curTeamQueriesError,
    isFetchingCurTeamQueries,
    refetchCurTeamQueries,
  ] = useMemo(() => {
    return [
      [
        {
          created_at: "2023-06-08T15:31:35Z",
          updated_at: "2023-06-08T15:31:35Z",
          id: 2,
          name: "test",
          description: "",
          query: "SELECT * FROM osquery_info;",
          team_id: 43,
          platform: "darwin",
          min_osquery_version: "",
          automations_enabled: true,
          logging: "snapshot",
          saved: true,
          // interval: 300,
          interval: 0,
          observer_can_run: false,
          author_id: 1,
          author_name: "Jacob",
          author_email: "jacob@fleetdm.com",
          packs: [],
          stats: {
            // system_time_p50: 1,
            // system_time_p95: null,
            // user_time_p50: 1,
            // user_time_p95: null,
            // total_executions: 1,
          },
          performance: "Undetermined",
          platforms: ["darwin"],
        },
      ] as IEnhancedQuery[],
      undefined,
      false,
      () => {
        console.log("got the new queries");
      },
    ];
  }, []);

  const [
    globalEnhancedQueries,
    globalQueriesError,
    isFetchingGlobalQueries,
    refetchGlobalQueries,
  ] = useMemo(() => {
    return [
      [
        {
          created_at: "2023-06-08T15:31:35Z",
          updated_at: "2023-06-08T15:31:35Z",
          id: 200,
          name: "test",
          description: "",
          query: "SELECT * FROM osquery_info;",
          team_id: null,
          platform: "darwin",
          min_osquery_version: "",
          automations_enabled: true,
          logging: "snapshot",
          saved: true,
          // interval: 300,
          interval: 0,
          observer_can_run: false,
          author_id: 1,
          author_name: "Jacob",
          author_email: "jacob@fleetdm.com",
          packs: [],
          stats: {
            // system_time_p50: 1,
            // system_time_p95: null,
            // user_time_p50: 1,
            // user_time_p95: null,
            // total_executions: 1,
          },
          performance: "Undetermined",
          platforms: ["darwin"],
        },
      ] as IEnhancedQuery[],
      undefined,
      false,
      () => {
        console.log("got the new inherited queries");
      },
    ];
  }, []);
```

- [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>
2023-07-13 12:11:11 -07:00
Jacob Shandling
48156009fa
Frontend – clean up breakpoints (#12711)
## Improve breakpoint variables to be useful "sm", "md", etc. instead of
the pixel widths they are set to

Also made sure all media queries are using these variables instead of
hard-coded values.

See @lukeheath's previous to-do in `frontend > styles > var >
breakpoints.scss`

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-12 15:45:49 -07:00