Commit Graph

54 Commits

Author SHA1 Message Date
Gabriel Hernandez
04712c0426 Merge master into teams 2021-04-14 17:52:15 +01:00
Gabe Hernandez
efb35b537a
add prettier and have it format all fleet application code (#625)
* add prettier and have it format all js code except website:
:

* trying running prettier check in CI

* fix runs on in CI

* change CI job name

* fix prettier erros and fix CI
2021-04-12 14:32:25 +01:00
noahtalerman
cdf43a79bd
Align Fleet UI with Figma (spacing and fonts) (#628)
This if the 2nd PR as part of the of the Align components in Fleet UI with design system in Figma #539

These changes **refactor the spacing and font sizes** used by the frontend. 

- Change the scss variables in `padding.scss` and `fonts.scss`. 
- Replace custom styles with the new variables throughout all stylesheets.
2021-04-09 17:30:42 -07:00
noahtalerman
c2700ee5c6
Align Fleet UI colors with Figma components (#615)
- This if the 1st PR as part of the of the Align components in Fleet UI with design system in Figma #539
- These changes replace all the color variables in /styles/var/colors.scss with new colors and naming convention used in Figma.
2021-04-09 12:04:11 -07:00
Gabe Hernandez
3546b7d41a
adding typescript and updating linting to work with it (#356)
* updated typescript version and tsconfig in project

* updated eslint version

* change from experimental export to supported export

* removed accidentally added script

* turn off buggy jsx-a11y eslint rules

* remove unused tslint.json

* fix wrong jsx-a11y depedency

* use correct eslint-plugin-jsx-a11y version

* fix rest of linting errors

* move back js-yaml version to 3 major
2021-03-01 07:48:51 +00:00
Gabe Hernandez
310b8522dd
Improve UI contrast for select values in multi input (#261) 2021-02-02 17:10:10 +00:00
noahtalerman
4e8c5e7f86
Add Host details page (#238)
This PR adds a new Host details page as part of the Hosts UI project #162

Summary of changes:
- New component <HostDetailsPage />
- Move "Query" and "Delete" buttons from the hosts list to the Host details page
- Add new button variants label and text-link
- Add react-tooltip package to the project (v4.2.13)
2021-01-28 12:44:48 -08:00
noahtalerman
8b1c6dd7eb
Complete front end QA (#181)
- Conduct complete visual QA for recent icon changes merged in #128
- Edit styles to vertically align the "copy" and "reveal" icons in EnrollSecretTable
- Clean up unused <KolideIcon /> properties in <SelectTargetsDropdown />
- Add min-height to left side navigation. At window heights under 500px, the user can now vertically scroll to reveal the remainder of the nav options.
- Edit 500 page styles by moving the "Show error" button above the link to "File an issue"
2021-01-07 12:35:45 -08:00
noahtalerman
0c921fe032
Fix missing image assets in SelectTargetsDropdown. (#172)
- Add back <KolideIcon /> to SelectTargetsDropdown. <KolideIcon /> was prematurely replaced.
- Edit styles to allow SelectTargetsDropdown to vertically scroll on overflow.
Fixes #168
2021-01-04 17:22:02 -08:00
noahtalerman
573097c2a3
Close UI Refresh. Update button styles. Edit status labels for hosts list and users list. (#139)
The final PR for the UI Refresh #38.

- Complete UI issues caught during the Dec. 09 QA pass.
- Update button and color styles, including hover and active states, to align with the mockups.
- Update status labels in the hosts list and users list. The status label now includes a colored circle along with a text description.
- Fixes #138.
2020-12-18 17:36:39 -08:00
noahtalerman
49e71e4ed6
Add new icons for Hosts page. Fix hosts list width on wide screens. (#128)
- Add new PNG files for the new icons in the left side navigation and the right side labels on the Hosts page.
- Rename the old `<Icon />` component to `<KolideIcon />` and create a new `<Icon />` component. The ultimate goal is to get rid of the `<KolideIcon />` and `<PlatformIcon />` components and use the encompassing `<Icon />` component for all icons. The full transition will be made when we have icon assets to replace all the kolide icons and platform icons. Currently, we don't.
- Rename the `icon_name_for_label.js` utility to `icon_name.js` because the utility now includes `iconNameForLabel()` and `iconNameForPlatform()` functions.
- Fixes issue #127.
2020-12-14 18:24:16 -08:00
noahtalerman
1b23b7b74f
Add style fixes caught during QA. Add favicon. (#119)
Changes include style fixes that were caught during a QA pass.
2020-12-10 13:09:05 -08:00
noahtalerman
5dd9b75e9c
Update query page (edit, new, manage) and packs page (edit, new, manage) styles. (#106)
The goal of this PR is to update the style across the query and packs pages so they are consistent with the latest global styles (colors, buttons, and fonts).
2020-12-08 12:07:54 -08:00
noahtalerman
028b968ff5
New styles for label creation form. (#101)
The goal of this PR is to update the styles of the LabelForm component.
Also include global style changes for form components (FormField, LabelForm, and others).
2020-12-07 15:08:59 -08:00
Zach Wasserman
0670db66c4
Migrate JS tests to Jest and update libraries (#74)
- Move from Mocha to Jest for JS testing (Jest seems to have better support for
 'watching' tests and a more active community these days).
- Codemod existing tests to Jest syntax (using https://github.com/skovhus/jest-codemods)
- Fix some errors in tests that were previously hidden.
- Update Babel.
2020-12-01 10:15:12 -08:00
noahtalerman
3953afb0b0
New styles and layout for hosts page. Remove grid view. (#73)
The goal of these changes is to update the main content (center column) of the /hosts page.

What is included in these changes:
- Removing the grid view for hosts. This required removing the actions, reducers, and props using to toggle the display between grid and table view. The toggle buttons in the UI are also removed.
- Adding host_cpu, memory, and uptime columns to the table. This increases the table's width which is now horizontally scrollable.
- Removing the HostDetails component used in the grid view. Moving the helpers.js file to HostTable. Adjusting JS tests to account for these changes.
- Updating pagination styles.
2020-11-30 13:23:58 -05:00
noahtalerman
51cfb07f64
Implement global colors. Add italic font. (#64)
The goal of this PR was to insert new colors, remove legacy colors, and update only the styles accordingly. The Nunito Sans Italic font was also added.

Later PRs will include layout, copy, and style change to individual components. These later changes will more exactly resemble the current mockups.
2020-11-24 08:59:03 -08:00
Zach Wasserman
6dccabb5b0
Clean up output of JS test errors (#63)
- Output easy to parse stack traces during run of tests
- Fix some spurious warnings and errors in tests
- Add --exit flag to Mocha invocation to fix hang due to timers in ACE editor
2020-11-24 08:25:52 -08:00
noahtalerman
23ce98ec51
Add Nunito Sans font and update global styles. (#59)
This is the first PR as a part of the Fleet UI Refresh #38.

Changes include:

- Add Nunito Sans font files and modify global styles to reflect the font change.
- Modify global font variables to reflect new sizing and weight naming conventions.
-- New sizing and naming conventions:
--- SIZE: xx-small: 12px, x-small: 14px, small: 16px, medium: 20px, large: 24px, x-large: 28px
--- WEIGHT: regular: 400, bold: 700
- Remove the old Oxygen font files.

Changes to other style sheets reflect the changes to the new font sizing and weight naming conventions for global variables. The changes don't necessarily use the correct size (as illustrated by mockups). Those "up to spec" sizing changes are to come.
2020-11-19 16:51:22 -08:00
Zachary Wasserman
96fc090723 Improve server performance for host operations
- Debounce frontend to reduce number of target searches in live query.
- More efficiently calculate label counts in live query and hosts
  dashboard. Instead of using the (slow) CountHostsInTargets function,
  retrieve the host counts while looking up the labels.
- Optimize targets search query. Removing the nested query retrieves the
  same logical result set, but substantially optimizes MySQL CPU usage.
  Testing indicates about a 50% reduction in MySQL CPU usage for the
  frontend targets search API call after applying this change.
2020-07-21 14:05:46 -07:00
Zachary Wasserman
ea93843203 Store only primary IP and MAC for hosts
Fleet used significant resources storing the full network interface
information for each host. This data was unused, except to get the
IP and MAC of the primary interface. With these changes, only those
pieces of data are stored.

- Calculate and store primary IP and MAC
- Remove transaction for storing full interfaces
- Update targets search to use new IP and MAC columns
- Update frontend to use new new columns
2020-07-21 14:05:46 -07:00
Zachary Wasserman
ccc8581229
Upgrade eslint and dependencies (#2255)
Updates configuration and fixes issues introduced
2020-07-06 19:31:48 -07:00
Zachary Wasserman
6767369d48
Upgrade React to version 16 (#1983)
- Update all associated dependencies
- Very minimal changes to components
- Extensive refactoring for broken tests

Closes #1978
2019-01-14 13:45:28 -08:00
Zachary Wasserman
dc4b97d15f
Fix React deprecation warnings (#1976)
- Refactor imports of PropTypes to use the prop-types package
- Upgrade dependencies that were setting off deprecation warnings
2019-01-06 17:25:33 -08:00
Zachary Wasserman
759a69b5b7
Upgrade Bourbon to 5.1.0 and fix deprecation warnings (#1973)
- Replace uses of deprecated Bourbon helpers with raw CSS
- Add autoprefixer into the build chain to prefix the now removed helpers

This process was achieved by running through each of the deprecation warnings and using the following bash function to replace it in all files:

```
function bourbon-deprecate() {
    grep -rl "@include $1" ./frontend --exclude-dir=.git | xargs sed -i '' -E "s/@include $1[(](.*)[)]/$1: \1/g"
}
```

For some helpers, this did not result in valid CSS, so manual modifications were made.

Closes #1189 #1274
2019-01-03 12:46:55 -08:00
Kyle Knight
61973ecceb Fix up styles in IE11 (#1391)
* Fix up styles in IE11

* Getting check marks to show
2017-06-18 12:38:16 -06:00
Kyle Knight
3544535e1d Make % online round to two decimal places (#1427) 2017-04-07 07:50:11 -07:00
Kyle Knight
14fa984bd3 Update All platform text to use Icon (#1363) 2017-03-08 08:40:02 -08:00
Kyle Knight
95b9e2c7d5 Fetch Targets after component is mounted (#1362) 2017-03-07 13:27:29 -05:00
Kyle Knight
facab79954 Update UI styles for Host Details card (#1317) 2017-03-06 10:37:06 -05:00
Mike Stone
7a7fb9eac9 Select targets tests (#1307)
* Adds tests for the TargetDetails component

* Adds tests for Select Targets Menu

* Rename target_stub to target_mock

* Adds tests for the SelectTargetsDropdown & minor refactor
2017-03-03 10:05:03 -05:00
Mike Stone
d747a471af Refactor API client (#1335)
* Isolate each API entity
* Improve code structure in API client and request mocks
* Standardize on a request mock structure
* Use helper for creating request mocks
* Adds Request class to handle API requests
2017-03-02 17:07:01 -05:00
Kyle Knight
89ee5b3aed Remove "All hosts" section in target selector when chosen (#1326) 2017-03-02 11:52:31 -05:00
Kyle Knight
169535afab Fix max-height issue with Full Screen Query Results (#1323) 2017-03-01 13:11:09 -06:00
Kyle Knight
6c6fb33915 Prevent Select Target dropdown from colliding with footer (#1303) 2017-02-24 17:52:42 -05:00
Kyle Knight
4aaf847edc Add Double Click event to Packs & Query tables (#1306) 2017-02-24 17:47:32 -05:00
Kyle Knight
0951cbfe1b Update Target Select UI (#1297) 2017-02-24 14:11:33 -05:00
Kyle Knight
eb82856ae4 Output proper percentage of online hosts (#1071) 2017-01-20 18:08:35 -05:00
Mike Stone
e56e94b86e Add host details throughout app (#973) 2017-01-20 12:02:13 -05:00
Mike Stone
dd74d37033 Send changed params in patch requests (#1005)
* PATCH packs with updated attributes only

* PATCH queries with updated attributes only

* PATCH user updates with updated attributes only

* Prevent setting state on unmounted component

* Load all packs on the manage packs page

* Do not send target info to server if unchanged
2017-01-18 12:10:37 -05:00
Mike Stone
0dbe94573f Don’t allow user to run query without selected targets (#1000) 2017-01-18 09:38:52 -05:00
Kyle Knight
f28bd803c4 Manage Hosts filtered icons (#987)
* Cleaning up rendered icons on hosts page

* Fixing lint
2017-01-17 12:55:19 -06:00
Kyle Knight
427235b837 Select Targets disabled adding padding to right side (#925) 2017-01-12 11:32:41 -05:00
Kyle Knight
7a44c269a9 Prevent default queries from rendering (#862)
* Prevent default queries from rendering

* Small styling tweaks
2017-01-11 13:08:27 -06:00
Kyle Knight
8f07fe2ed2 Fixing bug in Query Table sidebar dropdown (#691) 2016-12-22 13:26:18 -06:00
Mike Stone
f099b2ae22 Create packs (#516)
* Creates new PackComposerPage at /packs/new

* Creates PackForm component

* Adds PackForm to PackComposerPage

* Creates QueriesListItem

* Creates QueriesList

* Creates QueriesListWrapper

* Get all queries when the Packs Composer Page loads

* Form HOC handles updates to formData prop

* Creates form to configure scheduled queries

* QueriesListWrapper renders ConfigurePackQueryForm

* search queries input filters queries list

* Empty state text

* create pack when user submits the new pack form

* Adds Edit pack page to /packs/:pack_id/edit

* API client - get scheduled queries for a pack

* API client - create scheduled query

* Redux config for scheduled queries

* Remove scheduled queries from packs

* Add labels to pack on create

* Add disabled state to the select targets dropdown

* Adds edit route and pushes to new route on edit click

* Adds cancel button to edit pack form

* Adds Checkbox that selects all scheduled queries in table
2016-12-21 12:25:54 -05:00
Mike Stone
8567cc458c Run query (#549)
* Adds campaigns to redux state

* Update campaign with web socket data

* Destroy the current campaign when creating a new one

* close the socket when leaving the page or creating a new campaign

* Allow stopping a running query

* Update campaign with query results

* Adds QueryResultsTable

* Display flash message if campaign can't be created

* Allow filtering query results

* Adds filter icon

* Prevent query text updates when the query is running
2016-12-21 12:07:13 -05:00
Kyle Knight
bbad316bae Theming AceEditor (#591) 2016-12-08 10:08:21 -06:00
Mike Stone
854bc5bd1c Moves "All Hosts" label to it's own section in the dropdown (#573) 2016-12-05 17:48:46 -05:00
Kyle Knight
9e6a8eae56 Styling User Registration (#529) 2016-12-01 13:57:19 -05:00