Commit Graph

286 Commits

Author SHA1 Message Date
noahtalerman
d029ab18f9
Update add new host modal. (#94)
- The goal of this PR is to update the styles of the "Add new host" modal.
- Move the "Add new host" button from the hosts sidebar to the center column.
- Add max-width to the hosts list container and the hosts header.
2020-12-04 15:19:08 -05: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
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
a36bef6c16
Improve "Add New Host" dialog (#8)
- Allow download of enroll secret, server certificate, and flagfile.
- Hosts can now be added following instructions directly.
2020-11-04 17:07:58 -08:00
James Alseth
a2f49dd620
Add hostname to delete host confirmation modal (#2310)
Fixes #2233
2020-10-01 09:38:43 -07:00
Zachary Wasserman
7494513400 Clean up and comments before merge. 2020-07-21 14:05:46 -07:00
Zachary Wasserman
42bea2a144 Implement manual labels
"Manual" labels can be specified by hostname, allowing users to specify
the membership of a label without having to use a dynamic query. See the
included documentation.
2020-07-21 14:05:46 -07:00
Zachary Wasserman
b0595748f1 Implement pagination of hosts in the web UI
This commit takes advantage of the existing pagination APIs in the Fleet
server, and provides additional APIs to support pagination in the web
UI. Doing this dramatically reduces the response sizes for requests from
the UI, and limits the performance impact of UI clients on the Fleet and
MySQL servers.
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
c1aa8355cb
Add support for multiple enroll secrets (#2238)
- Support multiple enroll secrets
- Record name of enroll secret used when host enrolls
- Update fleetctl and UI to support these features
2020-05-29 09:12:39 -07:00
Zachary Wasserman
adf87140a7
Add ability to prefix Fleet URLs (#2112)
- Add the server_url_prefix flag for configuring this functionality
- Add prefix handling to the server routes
- Refactor JS to use appropriate paths from modules
- Use JS template to get URL prefix into JS environment
- Update webpack config to support prefixing

Thanks to securityonion.net for sponsoring the development of this feature.

Closes #1661
2019-10-16 16:40:45 -07:00
Zachary Wasserman
1344653412
Minor style fixes in frontend (#2084)
- Fix padding in query editor autocomplete box
- Hide cursor in read-only query editor
- Remove styling of active line in query editor (which does not update
  properly and is therefore distracting)
- Fix padding and reorder buttons in delete label modal
2019-07-31 12:05:10 -07:00
Zachary Wasserman
f3df07318c
Improve server and browser performance on host dashboard (#2061)
- Prevent a second (unnecessary) retrieval of all hosts when page loaded.
- Disable automatic reloading of hosts when over 100 hosts are present.

This is a stopgap solution to reduce the performance impact of
repeatedly loading many hosts. The final solution will be to implement
proper pagination.
2019-06-26 16:03:47 -04:00
Zachary Wasserman
992151fb8f
Clarify labels UI (#2012)
- Clarify language
- Add note about label queries being immutable

Closes #1384
2019-03-10 13:51:25 -07:00
Zachary Wasserman
c8229cc0d6
Replace uses of the term "Kolide" with "Fleet" (#1999)
Almost two years ago, we began referring to the project as Fleet, but there are
many occurences of the term "Kolide" throughout the UI and documentation. This
PR attempts to clear up those uses where it is easily achievable.

The term "Kolide" is used throughout the code as well, but modifying this would
be more likely to introduce bugs.
2019-01-24 09:39:32 -08: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
Caleb Coy
60bd9157b6 convert rocker button to standard buttons (#1906) 2018-08-29 10:38:43 -04:00
Kyle Knight
78b831a6d2 Hosts Pagination (#1594) 2017-11-07 12:54:56 -05:00
Kyle Knight
b23ab83336 Display loading icon until host details are saved (#1376) 2017-03-09 10:50:53 -05:00
Kyle Knight
14fa984bd3 Update All platform text to use Icon (#1363) 2017-03-08 08:40:02 -08: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
acd30332ec Render the spinner while hosts load (#1289) 2017-03-02 11:53:08 -05:00
Zachary Wasserman
4561aedd1f Fix inconsistencies with sidebar label counts (#1328)
- Fix a bug that caused hosts between 24 and 25 hours old to appear new
- Ensure "platform" labels use the count provided by the server

Fixes #1270
2017-03-01 10:50:09 -08:00
Kyle Knight
0d6aa52ce2 Remove extraneous flash success messages (#1226) 2017-02-23 09:49:16 -06:00
Mike Stone
6446fee2f4 Render label description or default description (#1215) 2017-02-21 17:40:59 -05:00
Mike Stone
ff74ba2233 Edit labels (#1207)
* Moves LabelForm outside of the QueryForm component

* Render LabelForm in ManageHostsPage

* API client to update labels

* Edit button styles
2017-02-15 09:51:19 -05:00
Mike Stone
545961ad5b Login user after setup (#1200) 2017-02-13 20:08:48 -05:00
Mike Stone
b32e489716 Fix JS test warnings (#1209) 2017-02-13 18:19:00 -05:00
Mike Stone
3120acf8f3 Send platform parameter when creating labels (#1179)
* Catches errors when polling for data on Manage Hosts Page

* Sends platform parameter to server on label create

* Remove unnecessary condition to format platform param

* Clean up scheduled query formData
2017-02-07 13:37:41 -05:00
Mike Stone
b3897d3d38 Silently poll for hosts on the Manage Hosts Page (#1141)
* Adds silentLoadAll action to entities

* Polls for hosts from the Manage Hosts Page
2017-02-01 17:34:07 -05:00
Mike Stone
1b54ce18ab Fetch hosts when a label is clicked in the Host Side Panel (#1124) 2017-01-30 15:14:15 -05:00
Mike Stone
e18f93de02 Wait for API calls to complete before rendering page (#1117) 2017-01-27 10:05:44 -05:00
Mike Stone
bc724388cb Poll for labels every 5 seconds (#1091)
* Poll for labels every 5 seconds

* Poll for host summaries
2017-01-25 12:27:58 -05:00
Kyle Knight
ac18b1e19e Stop Enroll Secret copy from adding new lines (#1096) 2017-01-25 10:58:28 -05:00
Kyle Knight
7e10847172 Update verbiage on Delete Hosts modal (#1095) 2017-01-25 09:28:40 -05:00
Mike Stone
378bf5571b connect new host enrollment (#1072) 2017-01-20 20:16:00 -05:00
Kyle Knight
3e3588706b Update Add Host Modal Styles & Tests (#1068) 2017-01-20 19:10:58 -05:00
Mike Stone
bc9273622c Add Query online hosts button (#1070) 2017-01-20 18:07:54 -05:00
Kyle Knight
197b729b61 Add New Host Modal (#1052) 2017-01-20 12:52:57 -05:00
Mike Stone
5b6d84e0ad Stop calculating new count on the client (#1060) 2017-01-20 10:30:30 -05:00
Mike Stone
3c6b59197d Allow users to delete hosts (#1028) 2017-01-19 18:39:06 -05:00
Kyle Knight
b1a3ee8927 Add "No Hosts" message for All Hosts label (#1045) 2017-01-19 18:12:37 -05:00
Kyle Knight
24ed16419f Add "No Hosts" message conditional for Custom Labels (#1042) 2017-01-19 16:45:03 -05:00
Mike Stone
c52ccbe74f Add “New” label to Hosts' page (#1018) 2017-01-19 16:29:49 -05:00
Kyle Knight
b83b244793 Add in message if label has no hosts (#1038) 2017-01-19 16:14:44 -05:00
Kyle Knight
2a6ccfe4f6 Remove Add Hosts page (#1035) 2017-01-19 14:44:35 -05:00
Kyle Knight
32c51d2be7 Add delete button to custom Host Labels (#1014) 2017-01-19 12:57:59 -05:00
Mike Stone
3659407160 Filters hosts by custom label (#978)
* Filters hosts by custom label

* display singular “Host” when host count is 1
2017-01-17 16:44:00 -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
Mike Stone
da27a44493 Filter hosts for “All Hosts”, platform hosts, and status hosts (#971) 2017-01-17 06:55:31 +08:00
Mike Stone
630ba45448 756 status labels (#967)
* API client to get status label summary

* Handle status label counts in state

* Display status counts in hosts side panel
2017-01-16 15:59:01 -05:00
Kyle Knight
a8b8e0fd50 Sort hosts cards alphabetically and by status (#941) 2017-01-12 20:18:23 -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
f3f6ff4010 Fixing some styling issues on New Label Query (#849)
* Fixing some styling issues on New Label Query

* Fix lint error:
2017-01-10 13:20:36 -06:00
Kyle Knight
73035877b3 Fixing spacing of manage packs header (#848)
* Fixing spacing of header

* Make h1 headers consistent
2017-01-10 10:27:10 -06:00
Kyle Knight
eaf0105c6c Some additional stylings to make New Packs a little more bester (#679) 2017-01-06 09:36:51 -06:00
Kyle Knight
a8947adf36 min-height on manage pages (#770) 2017-01-06 09:31:14 -06:00
Mike Stone
92d91fdebc Handle server errors (#730)
* consistent error handling

* Display server errors in InviteUserForm

* Handle errors in Form component

* Refactors query form

* creates KolideAce component

* Renders QueryForm from query page and manage hosts page

* Moves ace editor and select targets dropdown to query form

* Render base errors in Form HOC

* LoginPage and ForgotPasswordPage server errors

* Ensure unique key for user blocks

* Adds base error to login form and forgot password form

* Adds base error to query form

* Adds base error to Pack Form

* Adds errors to confirm invite form

* Adds clearErrors action

* clear errors when confirm invite page unmounts

* Handle errors in the App Setting page

* Handle server errors in the User Settings Page

* Handle server errors in the User Management Page
2017-01-05 19:01:17 -05:00
Kyle Knight
1d560c004e Host Details cards cleanup (#700) 2017-01-05 12:08:50 -06:00
Kyle Knight
8f07fe2ed2 Fixing bug in Query Table sidebar dropdown (#691) 2016-12-22 13:26:18 -06:00
Kyle Knight
8baffbc97e Refactor A Few Rendering Issues (#656) 2016-12-21 12:39:40 -06:00
Mike Stone
608cca4910 Removes unused sidebar code (#660) 2016-12-20 09:13:50 -05:00
Kyle Knight
8ad731e8fb Refactor form fields (#636) 2016-12-16 09:54:49 -06:00
Kyle Knight
0b70f58614 Styling Manage Hosts [Grid View] (#602) 2016-12-15 08:44:45 -06:00
Mike Stone
0753510cc3 Makes items routable on the Manage Hosts Sidebar (#592)
* Makes items routable on the Manage Hosts Sidebar

* slugify active label
2016-12-12 11:48:50 -05:00
Kyle Knight
d9754bde20 Cleanup add host page (#546) 2016-12-09 17:30:32 -05:00
Kyle Knight
bbad316bae Theming AceEditor (#591) 2016-12-08 10:08:21 -06:00
Kyle Knight
21ec1ed1b1 Resolve lots of absolute and fixed positioning issues (#571) 2016-12-06 11:55:48 -05:00
Mike Stone
a896b1fd99 Manage hosts fixes (#566)
* Add New Label link adds to browser history

* Updates title of New Label page
2016-12-05 10:21:03 -05:00
Kyle Knight
9e6a8eae56 Styling User Registration (#529) 2016-12-01 13:57:19 -05:00
Kyle Knight
7acec77303 Render Icons with component (#533) 2016-11-28 13:20:15 -06:00
Mike Stone
57d959b5ea Display hosts as table (#509)
* Display hosts as table

* adds Rocker button to ManageHostsPage

* Defaults to grid selected
2016-11-21 11:26:58 -05:00
Mike Stone
8bb2a39d86 Improves re-usability of the SelectTargetsDropdown (#518)
* Improves re-usability of the SelectTargetsDropdown
2016-11-21 10:38:23 -05:00
Kyle Knight
cb6c840776 Removing hardcoded icons and replacing with icon font (#506) 2016-11-17 12:16:09 -06:00
Mike Stone
bb62993ea5 Hosts side panel (#472)
* Host side panel

* Query form handles labels

* QueryComposer handles labels

* ManageHostsPage add label transitions

* Stop preventing default on click outside of ellipsis menu

* get labels from API

* use real label data in hosts side panel

* create label on label form submit

* adds platform dropdown

* Validate query text

* Label header

* validate presence of query text
2016-11-17 12:12:41 -05:00
Kyle Knight
cd2981e76b Updating styles on Admin User Management (#463) 2016-11-11 08:42:23 -06:00
Kyle Knight
cd68b27715 Renaming button classes to be modifiers instead of elements (#449) 2016-11-08 08:20:35 -06:00
Kyle Knight
ca33d238d8 Converting JS/Radium styles to SCSS (#360) 2016-11-03 14:40:54 -05:00
Mike Stone
ee3d96eb53 Update eslint (#337)
* Updates eslint packages

* Expected parentheses around arrow function argument having a body with curly braces

* Prop type `object` is forbidden

* Visible, non-interactive elements should not have mouse or keyboard event listeners

* Prop type is defined but not used

* Unexpected use of file extension "jsx"

* Expected 'this' to be used by class method

* HTML entities must be escaped

* Prevent default behavior on more options button click
2016-10-21 19:13:41 -04:00
Mike Arpaia
c07702330d Cleaning JavaScript imports and if statements (#327)
* Moving entityGetter to utility folder

* Import whitespace and if statement braces

* newlines between multi-line if's
2016-10-19 16:22:18 -04:00
Mike Stone
1acd011ca9 Show hosts page (#311)
* Adds manage hosts page and improves side bar functionality

* API client get hosts

* Adds hosts to redux state

* Adds host details component

* Manage hosts page renders host details

* ElipsisMenu component

* Add ElipsisMenu to HostDetails

* Adds HOC to detect clicks outside component

* clicks outside ElipsisMenu close the tooltip

* Adds icons to host details component
2016-10-17 14:55:03 -04:00
Mike Stone
58c3733524 Add hosts (#294)
* New hosts route

* Adds source code pro font

* New Host Page

* make Icons clickable

* Adds clipboard icon

* highlight icon & show helper text when text copied

* Method 2 text

* Fixes Firefox bug

* Fix spelling error
2016-10-11 12:10:41 -04:00